FR-069 第四階段發版清單(定案,CM-1499 執行)

第四階段發版清單(定案)

2026-09-01 首腦盤點;同日 user 六連裁後定案,執行卡=CM-1499(含前置退役清理)。 已裁定:三包名終版(task-platform/compliance-audit/flow-engine 不動);task-platform 0.1.0; 發版前清 jedi-flow-engine 死碼(hi_*+command_log)再發 0.0.36;主專案殭屍 OscalAuditService 併前置清理。 「三個結」現況:①依賴環——CM-1493 已斷根 task-platform→survey/device(發前仍畫圖確認);②③已裁如上。

§1

一、要發的套件(自 CM-1473 後動過的)

依賴順序排(被依賴的先發):

順序 套件 現版 建議發 為什麼要發 依賴誰(jedi-*)
1 jedi-flow-engine 0.0.35 0.0.36 BPMN generator+topology validator 歸建(CM-1492);補 defusedxml 宣告 common
2 jedi-participant 0.0.1(首發) 0.0.1 P12 新抽(CM-1477) common / iam / flow-engine / task-platform⚠️
3 jedi-survey 0.0.32 0.1.0 P11 合併 task_survey 作答層(CM-1482)——結構大改建議 minor common / iam / participant / flow-engine / device
4 jedi-task-platform 0.0.9(沿 jedi-project 版號) 0.1.0 改名+吸收任務層+申報制插槽——新 dist 名首發,建議直接 0.1.0 起跳與舊 jedi-project 0.0.9 區隔 common / iam / survey / device
5 jedi-evidence-classification 0.0.1(首發) 0.0.1 P10 新抽(CM-1481) common
6 jedi-detection 0.0.1(首發) 0.0.1 P9 新抽(CM-1489) common / remote-agent / flow-engine / file-upload / iam
7 jedi-compliance-audit 0.0.1(首發) 0.0.1 flow_control 分家稽核半(CM-1487/1488/1490/1492) common / iam / flow-engine / task-platform / participant / survey / oscal-v2 / device

不用發:jedi-common 0.0.33(沒動)、jedi-iam 0.1.0(沒動)。

§2

二、⚠️ 發版前必先解的三個結

  1. 循環依賴要拆或確認:task-platform 依賴 survey/device(pyproject 註解自承「方向是反的」), 而 survey 又依賴 task-platform 的世界(participant→task-platform)。若 poetry 解析成環會裝不了。 發版棒開工第一件事:畫一次真實依賴圖確認無環;有環就得先把 task-platform 對 survey/device 的依賴收 port(本來就是欠的債)。
  2. 三包名字最後確認(user 註「可能再調」):task-platform/compliance-audit 一上 Nexus, 改名成本從「mv+改 import」變成「發轉發殼+退役流程」。發版前是最後免費窗口
  3. task-platform 版號起點:沿用 0.0.9→0.0.10 或新名首發 0.1.0,一句話裁定即可(草稿建議 0.1.0)。
§3

三、主專案 pin 還原(發版同批)

發完後把 pyproject.toml 的 path override 還原成 pin(行號現況見 pyproject.toml 165–178):

  • jedi-participant → ==0.0.1
  • jedi-survey → ==0.1.0(新增 pin——原本走 Nexus 0.0.32,這次併入後必須 pin 新版)
  • jedi-task-platform → ==0.1.0(原 jedi-project pin 已由改名棒移除)
  • jedi-evidence-classification → ==0.0.1
  • jedi-detection → ==0.0.1
  • jedi-compliance-audit → ==0.0.1
  • jedi-flow-engine → ==0.0.36

然後 poetry update(禁 poetry lock)→ symlink 驗證(site-packages 無殘留 .pth 指本地)→ 煙測(守衛+重啟 8000+實打一支 API+log 無 ERROR)→ commit(只收 pyproject.toml+poetry.lock)。

§4

四、pyproject 歷史託付帳(發版棒一併清)

STATE 記的三批 working tree 帳,實查 2026-09-01 現況:大部分已由 CM-1473 收掉, 現在 git diff pyproject.toml 只剩一行未收——CM-1482 的 jedi-survey path override (照規矩開發期不 commit,發版時隨 pin 還原自然消掉)。無其他欠帳。

§5

五、發版後續動作(同棒或緊接)

  • Notion 各卡補發版紀錄
  • STATE「現況清單」版號表更新
  • 架構手冊 modularization-roadmap 族譜節:進行中段搬「已完成」(收官棒待辦 #2)
  • 出貨基線 scripts/init/02-schema.sql regenerate(CM-1474 遺留註記——project_extensions 已 drop 但基線 SQL 未重產,走 gen_schema_sql.sh