tianyu.chu 6936460ac3 chore: 新增 io/ops/pm/dq/sync/tests 占位骨架;删 bin/excel_to_hive.py;publish.sh 挪入 bin 2 тижнів тому
..
README.md 6936460ac3 chore: 新增 io/ops/pm/dq/sync/tests 占位骨架;删 bin/excel_to_hive.py;publish.sh 挪入 bin 2 тижнів тому
__init__.py 6936460ac3 chore: 新增 io/ops/pm/dq/sync/tests 占位骨架;删 bin/excel_to_hive.py;publish.sh 挪入 bin 2 тижнів тому

README.md

dw_base/pm — 项目管理工具集成

职责

调用项目管理工具 API(TAPD / Jira),根据 git 提交记录生成任务 / 更新任务状态,打通"代码提交 → 任务闭环"。

典型触发链:

  1. git log / CI 钩子拿到本轮提交
  2. 按 commit message 约定(如 feat(scope): xxx #TASK-123)解析出任务号与动作
  3. 调 TAPD / Jira API 创建任务或推进状态(开发中 → 待测 → 完成)

对外接口概要(规划中)

  • TapdClient(conf) / JiraClient(conf) —— API wrapper(封装鉴权 + 常用动作)
  • parse_git_log(since_commit, pattern) -> list[TaskOp] —— 解析 git log → 任务操作序列
  • sync_tasks(ops: list[TaskOp]) —— 批量推送到对应 PM 工具
  • 入口脚本 bin/git-sync-task.py本批不建,后续实现时再加)

依赖

  • requests(HTTP 调 TAPD / Jira API)
  • git(子进程调用或 gitpython
  • configparser(读 conf 里的非敏感配置:API base URL、projectId 等)
  • 账密:TAPD / Jira token 走 datasource/pm/<tool>/<env>.ini(高敏不入库,见 project_templates_and_config 记忆 + kb/00-项目架构.md §6)

状态

骨架(未启动)。需先与用户对齐:

  • 公司用的是 TAPD 还是 Jira?两家 API 不同,先做主要那一家,另一家作二期
  • commit message 里任务号的约定格式(Conventional Commits scope 段?footer 段?)
  • 状态机:哪些 commit 动作推哪个状态(feat 推"开发完成"?fix 推"修复中"?)

kb/90-重构路线.md 聚簇 D。