zuwasi/FiniteState-change_logs-for_LTS

GitHub: zuwasi/FiniteState-change_logs-for_LTS

自动化追踪Finite State SBOM平台的变更日志,生成版本化快照和差异报告。

Stars: 0 | Forks: 0

# FiniteState LTS 变更日志 [Finite State](https://finitestate.io) SBOM 平台的自动化变更日志追踪器——监控所有公开资源并维护带版本号的变更日志快照。 ## 功能说明 `finitestate_changelog_tracker.py` 脚本会执行以下操作: 1. **首次运行** —— 提示您选择创建两个文件夹的位置: - `change_logs_text_documents/` —— 存放带版本号的变更日志快照 - `change_logs_diffs/` —— 存放版本间的差异文件 2. **加载 URL** —— 从 `sources.json` 文件读取(脚本中没有硬编码任何 URL) 3. **验证** 每个链接 —— 如果链接失效,将打印错误信息并指出需要修复的**文件名和行号** 4. **比较** 当前扫描结果与最近的本地基线版本 5. **报告** 结果: - `✅ 自上一文档以来无变更` - 显示**统一的差异文件**,并询问是否创建新版本 ## 文件结构 ``` ├── finitestate_changelog_tracker.py # Main script (no URLs embedded) ├── run_tracker.bat # Double-click launcher ├── sources.json # URL registry — all links maintained here ├── config.json # Auto-created on first run (folder paths) ├── change_logs_text_documents/ # Versioned changelog snapshots │ └── Finitestate_SBOM_TOOL_V1.0.0_*.txt ├── change_logs_diffs/ # Diffs between versions │ └── DIFF_V1.0.0_to_V1.0.1_*.txt ├── README.md └── LICENSE ``` ## 首次运行 首次运行时,脚本会询问您在哪里创建这两个文件夹: ``` ============================================================ FIRST-RUN SETUP ============================================================ 📄 Changelog documents folder: [default: ...\change_logs_text_documents] > 📋 Diff files folder: [default: ...\change_logs_diffs] > ✅ Created: ...\change_logs_text_documents ✅ Created: ...\change_logs_diffs 💾 Config saved: ...\config.json ============================================================ ``` 按回车键接受默认路径,或输入自定义路径。 ## URL 注册表(`sources.json`) 所有源 URL 都存放在 `sources.json` 中。**切勿在 Python 脚本中编辑 URL。** 每个条目包含: - `url` —— 需要获取的端点 - `type` —— `html`(网页)或 `github_api`(GitHub Releases API) - `label` —— 人类可读的名称 - `description` —— 此源提供的内容 ### 失效链接处理 如果某个 URL 失效或无法访问,脚本将打印: ``` !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ⛔ BROKEN LINK: finite-state-actions GitHub Action !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! URL: https://api.github.com/repos/... Error: HTTP 404 Not Found ▸ To fix: open the URL registry file and update the URL: File: ...\sources.json Line: 36 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ``` ## 用法 ``` # 双击 bat 文件,或从终端运行: python finitestate_changelog_tracker.py ``` ## 版本方案 ``` Finitestate_SBOM_TOOL_V.._.txt ``` - **基线**:`V1.0.0` —— 在首次运行时创建 - 每次变更递增**补丁**版本号 - 差异文件保存为:`DIFF_V1.0.0_to_V1.0.1_2026-05-20.txt` ## 系统要求 - Python 3.10+(仅使用标准库——无需安装 pip 包) - 网络访问 ## 许可证 [MIT](LICENSE)
标签:DNS解析, Finite State, JSON配置, SBOM平台, 发布笔记, 变更日志管理, 多引擎聚合, 安全可观测性, 差异比较, 开源项目, 批处理启动, 版本快照, 版本控制, 监控系统, 链接验证