FR-155 STATE(living,只描述此刻)

FR-155 STATE

母卡 CM-2977;子卡 CM-2978~2988。更新:2026-10-22。沿革見 FR-155-LOG.md 與 git log。

§1 現況

  • 母卡 CM-2977 與 16 張子卡(CM-2978~2988、CM-3010~3014)決策者 2026-10-22 裁 Done。
  • BE 全部合回 feature/FR-139:前 11 張由 CM-3010 合(bc92f1b67),收口五張由首腦合(74bb09f76,9 支衝突已解)+重產產物(f90e601d2)。ws-CM-2977 branch 留著不刪。
  • 套件已發 Nexus:jedi-iam 1.7.1(1.7.0 先發、收口審查 I1 再發 1.7.1)、jedi-task-platform 1.4.0、jedi-compliance-audit 1.4.0、jedi-survey 1.3.0;BE pin 已切回 Nexus、path 行已註解回去(536752fa3、2fa3f9467)。三 repo feature/FR-139 已 push。
  • DEV DB 已套三支 fr155 migration:capabilities 多 15 個 proj.*(design 寫 14,T-1.2 加 proj.round.manage);租戶 1、102 各四個範例專案角色、負責人為預設;project_participants 19 列全部回填;stage_objects 六站預設已是能力點名。
  • 出貨基線已重產(CM-3013 + 首腦合回後重產 f90e601d2):02 有 roles.kind/五張表 project_role_id,04 有 13 顆 proj.*+CM-3006 的 grc.summary-report.export,99 蓋 fr155 兩支。

§2 決策者裁示(2026-10-22,11 項全照首腦建議)

# 題目 裁示 落地卡
R1 proj.stage.advance 刪 T-5.1
R2 proj.job.execute 刪 T-5.1
R3 流程設計器「主要角色」下拉 只列 proj.review.approve/proj.audit.judge/proj.stage.advance-any T-5.2(FE)+T-5.1(BE 設計器存檔同清單)
R4 列表「負責人」欄 跟 is_default_owner 角色;稽核員欄跟 proj.audit.judge 排除預設負責人 T-5.1
R5 流程站沒填主責,進站通知不寄 改成與推進判定一致:退回站預設 T-5.1
R6 任務佐證新增/修改/刪除任一參與者都能做 改「被指派人 ∪ proj.job.manage」 T-5.1
R7 摘要報告還原到某版任一參與者都能做 改要 proj.report.manage T-5.1
R8 不綁專案的標準答案匯入看「任一專案負責人」 改租戶層 evidence.classification.update T-5.1
R9 問卷歷史前端對審核者隱藏 拿掉前端特例 T-5.2
R10 控制項層單獨降級能力不存在 接受;design D5 改寫為「專案層指派;子層表保留欄位但無寫入路徑」 T-6.2
R11 zh-cn error-code.json 不補 —

§2a 小尾巴(併入 T-5.1)

  • 套件參與者直連 API resolve_for_write 補 assert_roles_belong_to_tenant。
  • apply_default_owner 設預設又停用時改拋 PreconditionFailedError(GRC_412078)。

§3 收口拆卡(第 5 批 T-5.0~5.2、第 6 批 T-6.1~6.2,2026-10-22 建卡,狀態 Not started)

編號 批 做什麼 卡號
T-5.0 5 ws-CM-2977 合回 feature/FR-139(試算 0 衝突);四套件 bump(iam 1.7.0/task-platform 1.4.0/compliance-audit 1.4.0/survey 1.3.0,不 publish);BE pin+path 開發;DEV 8000 起得來 CM-3010
T-5.1 5 BE 裁示落地 R1~R8+小尾巴 A/B(新增主線 migration 1 支:刪兩能力點) CM-3011
T-5.2 5 FE:設計器下拉只列三個、問卷歷史特例拿掉、常數檔重產 CM-3012
T-6.1 6 出貨基線重產(寫 188 基線庫,決策者已裁) CM-3013
T-6.2 6 收口審查、design D5 改寫、SPEC 三頁、手冊、release note 草稿 CM-3014
  • 收口審查 §2 九條:I1~I6 已修(2fa3f9467+jedi-iam e104a8b3+FE 1b4c08fb);I7、I8 決策者同意不修;I9 隨發版解掉。

仍待:決策者本人手測(角色頁兩籤、指派頁下拉不再出現專案角色、參與者下拉、各角色按鈕、流程存檔三情境、專案啟動信角色名);e2e 到 test repo。

§4 跨 arc 提醒(請決策者轉達)

  • FR-156:manifest.tsv 三支 fr156 migration 標 phase=active,但 188 基線庫未套(實查 source_scans.agent_uid 不存在)。gen_stamp_sql.sh 只抄 manifest 不查庫,任何人重產 99-stamp 都會把它們蓋成「已收進基線」。首腦這次手動拿掉那三行;FR-156 做基線重產時要先套再產。
  • 守衛紅兩條(非 FR-155):test_module_boundaries 的 test_package_imports_only_lower_layers/test_all_jedi_packages_are_in_plugins_or_exempt,原因 jedi_api_log/error_tracking/masking.py:10 → jedi_masking 未登記 PACKAGE_LAYERS。merge 前 f039b6dd1 已紅。
  • .venv 與 FR-156 程式脫節:core/plugins/detection.py、remote_agent.py 吃未發版的 jedi-detection/jedi-remote-agent 新介面,.venv 仍舊 pin,collect_route_guards.py 與 BE 啟動都要整個 monorepo 上 PYTHONPATH。

舊清單(供對照)

  1. ws-CM-2977 合回 feature/FR-139(14 commits,no conflict 預期;合前 git status 要乾淨)。
  2. 四支套件發版+BE pin bump(jedi-task-platform 的 ParticipantAdapters 新增必填參數屬破壞性變更,minor bump)。
  3. 出貨基線重產(寫 188 基線庫,決策者裁)。
  4. 上版綁定:T-2.2(migration)與 T-3.3(推進判定)必須同版。
  5. 收口審查:ddd-compliance-reviewer 掃 arc diff、守衛全跑、arc-review、SPEC 三頁、使用手冊、release note、e2e 到 test repo。
  6. 小尾巴:套件參與者直連 API 補 assert_roles_belong_to_tenant;apply_default_owner 409 帶 412 碼改 PreconditionFailedError;zh-cn error-code.json 要不要補。
  7. 決策者手測:角色頁兩籤、參與者下拉、各角色按鈕、流程存檔三情境(首腦與小弟皆未實際開畫面,DEV 登入被 Turnstile 擋)。