交接 Prompt — SSP 匯入匯出 Phase 2(2026-05-21 bugfix session 2 收尾後)

貼到下個 session 開頭,讓 Claude 快速接手。


§1

目前狀態(2026-05-21 收口)

Track A(Excel 匯入):全部 shipped ✅

A0 → A0.1 → A1 → A2 → A3 → A4 → A5 全完成。

A5 smoke 驗收後連環 bugfix 兩個 session(2026-05-21)修補 14 個問題,詳見:

  • docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-21-bug-reference.md(14 bug 根因 + 修法)
  • docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-21-bugfix-session2-SUMMARY.md(commits 清單)

Track B(SSP 匯出):全部 pending

B1(Docx 樣板)→ B6(UI)尚未開始。


§2

最新 Commits

BE(feature/ssp-import-export-phase2

f072777  docs: bugfix session 2 SUMMARY + bug reference 文件
5adb550  fix(module-frame): template-edit bugfix session 2 — parties/AO/SSP resources/project prefill
5aac0d5  docs: bugfix session 1 SUMMARY + 交接 prompt
ca8842b  perf(module-frame): list_parties 改 batch fetch

FE(feature/ssp-import-export-phase2

16faada  fix(module-frame): template-edit bugfix session 2 — parties/devices/info-systems picker UX + project prefill
926dd34  tweak(module-frame): 4 個 entity panel UI 統一

§3

重要規範(避免踩坑)

statement_identifier 雙格式

module_frame_control_objective_defaults.statement_identifier 有兩種格式:

  • UUID(UI 手動儲存路徑)
  • (a)/(b) letter key(Excel/docx import 路徑)

任何 SQL JOIN 或 Python 查詢都要雙格式支援。 詳見 app/module_frame/service/module_frame_template_copy_service.py Step 2 的 CTE task_map pattern。

不能用 BaseRepoImpl.update(),一律用 idempotent return(查存在 → skip,不存在 → add)。

PrimeVue 3.53 Dropdown 空 options 不觸發 event

任何依賴 Dropdown @update:modelValue 的流程,options 必須在互動前預載(onMounted)。

apply=False marshal_with 需手動 .dump()

裝飾器只當文件用,返回前要顯式呼叫 Schema(...).dump(data)


§4

待辦 Follow-up

項目 說明
BE 重啟 bugfix session 2 的 BE 修補(5adb550)需重啟 server 才生效
新建專案驗收 選有 AO 資料的資源庫 → 受評範圍設備/資訊系統 + AO 實施狀態應正確帶入
Track B 開始 B1 Docx 樣板 → B2 內容組裝 → B3 Export API → B4 PDF/ODT → B5 OSCAL JSON/XML/YAML → B6 UI
jedi-oscal 發版 整個 feature 完工後一次性 bump version + 推 Nexus(目前 dev path dep,pyproject.toml 不 commit)
pyproject.toml dev path dep jedi-oscal path dep 是 dev-only,不要 commit,feature 完工才還原 pin 版號
cucumber E2E A1 T7 / A3 follow-up — compliance-manager-test repo,待環境配齊後跑

§5

關鍵文件路徑

文件 路徑
Phase tracker docs/features/FR-011.2-2605-ssp-import-export-phase2/README.md
DB schema 對照 docs/claude/database-schema.md
bug 14 個根因參考 docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-21-bug-reference.md
Session 1 bugfix SUMMARY docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-21-bugfix-SUMMARY.md
Session 2 bugfix SUMMARY docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-21-bugfix-session2-SUMMARY.md
BE log log/app.log(行為異常先看這裡)

§6

跨 repo 路徑

BE:   ~/Projects/Billows/Audit-Manager/compliance-manager-be/
FE:   ~/Projects/Billows/Audit-Manager/compliance-manager-fe/
jedi: ~/Projects/Jedicogy/module/jedi-python-package/jedi-oscal/
test: ~/Projects/Billows/Audit-Manager/compliance-manager-test/

所有 repo 目前在 feature/ssp-import-export-phase2 branch。


§7

建議下個 session 開工方式

  1. 確認 BE 已重啟(5adb550 修補生效)
  2. 驗收「新建專案 AO 帶入」功能
  3. 若驗收通過 → 開始 Track B B1(Docx 樣板 + generator 骨架)
  4. 開工前先讀 docs/features/FR-011.2-2605-ssp-import-export-phase2/README.md tracker 確認 phase 狀態