Files
alert-contract-expiring-hr/CHANGELOG.md
taojianmin 06c053d7d7 v1.1.0: 实现核心业务逻辑(扫描/任务书/派发/状态机)
新增(scripts/ 分层完整实现):
- scripts/util/{constants,date_util,runtime_paths,logging_setup}.py
- scripts/db/{connection,seed_data,repository}.py(SQLite + 5 张表 + 50 份样例合同)
- scripts/service/{scanner,task_generator,dispatcher,html_renderer}.py
- scripts/cli/app.py(argparse 子命令)
- scripts/templates/task.html.j2(Jinja2 渲染,无 jinja2 时降级到 str.replace)
- examples/{contracts_sample,performance_sample}.csv(本地样例数据)

修改:
- scripts/main.py:argparse + jiangchang_skill_core 降级
- SKILL.md:version 1.0.1 → 1.1.0
- CHANGELOG.md:加 v1.1.0 条目
- .env.example:加 DB_PATH / HTML_OUTPUT_DIR / JIANGCHANG_DATA_DIR

本地验证(9 个 CLI 命令全部 exit code = 0):
- health / version / config-path / init-db:基础 4 命令
- scan-expiring-contracts --thresholds 90,60,30:42 份可续聘 → 红 10 / 橙 10 / 黄 10,生成 30 任务
- render-html:写 output/<task_id>.html(4.9 KB)
- generate-renewal-task:单份合同任务书生成
- mark-contract-renewed:状态机更新 + 关闭 open alerts
- dispatch-task-notice:按单位/月份派发 payload(dry-run 模式)

业务规则(AI 续聘建议本地版,规则顺序判断):
1. 师德 < 60 → non_renew
2. 近 3 年考核有不合格(< 60)→ observe
3. 全部 >= 80 且逐年上升 → renew
4. 其他 → observe

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-09-14 14:17:43 +08:00

29 lines
2.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Changelog
本文件对应技能市场 **「更新日志」** Tab。
## 1.1.0
- 实现核心业务逻辑(9 个 CLI 命令全部可运行)
- 新增 `scripts/cli/app.py`:argparse 子命令分发
- 新增 `scripts/util/{constants,date_util,runtime_paths,logging_setup}.py`
- 新增 `scripts/db/{connection,seed_data,repository}.py`:SQLite + 5 张表 + 50 份样例合同 + 150 条业绩记录
- 新增 `scripts/service/scanner.py`:扫描核心(90/60/30 三级预警 + 写 alerts + 生成任务)
- 新增 `scripts/service/task_generator.py`:规则版 AI 续聘建议(师德/考核/趋势三规则)
- 新增 `scripts/service/dispatcher.py`:按单位/月份派发 payload(dry-run 模式)
- 新增 `scripts/service/html_renderer.py`:Jinja2 任务书 HTML 渲染(无 jinja2 时降级到 str.replace)
- 新增 `scripts/templates/task.html.j2`:任务书模板(基于 assets/html/example-report.html)
- 新增 `examples/{contracts_sample,performance_sample}.csv`:本地样例数据
- `scripts/main.py`:重写为降级模式(jiangchang_skill_core 可选)
- `.env.example`:新增 `DB_PATH` / `HTML_OUTPUT_DIR` / `JIANGCHANG_DATA_DIR`
- 验收:本地 `python scripts/main.py <cmd>` 9 个命令全部 exit code = 0
## 1.0.1
- 初版:基于匠厂 skill-template 主仓 v1.0.108 派生
- 实现核心业务:合同到期智能预警与续聘辅助(每日定时扫描 + 三级预警 + 个人版任务书 + 单位版清单 + 自动抄送)
- 输出形态:合同台账表状态更新 + 预警记录表 + 个人版 HTML 任务书 + 单位版 PDF 清单 + 派发日志
- 预期提效:因合同逾期未续签导致的劳动纠纷降为 0;人事处年终集中突击签合同的工作量减少 60%
- 业务行生命周期:可预警 → 预警中 → 已续签 / 已驳回 / 已过期
- 占位说明:本版仅完成骨架与文档,业务实现细节(`scripts/` 下 Python 模块、人事系统 API 对接、定时调度)由开发者后续按 `development/REQUIREMENTS.md` 补全