Handoff Prompt — A4 Session F / T11 only(task arc 收尾)

使用方式:把下方「交接 prompt 本體」整段貼到新 session 即可接手。 前置狀態:A4 BE T1-T9 全 ship(10 個 commit + 1 docs 收尾);working tree 乾淨(除 pre-existing pyproject.toml dev-path + 2 zip);T10 拍板跳過(GitLab CI 配齊度不明 + ROI 偏低)。


§1

交接 prompt 本體(從此貼到新 session)

我要進 SSP 匯入匯出 Phase 2 / A4 Session F / T11 — A4 task arc 收尾。

範圍簡述
========

T11 只做收尾文件,不動 production code、不動 test code。執行 5 個收尾任務:

1. **對話歷史 dump** 到 docs/conversation-history/2026-05-20/ssp-import-export-phase2-A4/
   - 拆 part-NN-of-NN-<sub-topic>.md(A 設計 / B plan / C reconciler /
     D reconciler-details / E write-pipeline / F test)
   - **不做格式化 / 不過濾 / 不二次加工** — 使用者匯出的原始對話直接寫入
   - 此步驟需要 user 提供 conversation export(zip / md);如未提供先 skip
     等 user 補資料
2. **SUMMARY 報告** → docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-20-a4-SUMMARY.md
   - A4 全 phase commits 清單(10 個 BE commit)+ test 累計 / 改動範圍 / 行為差異
   - 規範文件清單(design §11.1 / changelog / tracker / cucumber follow-up)
   - 已知 follow-up(F-A4-cucumber / A5 phase / 未來 refactor)
   - 部署 handover:jedi-oscal 仍 path-dep;feature 整體 ship 後 user 拍板才 bump 版本
3. **補 T9 changelog**(合併進 Session E 既有 changelog 或新開 1 個):
   - Option A: 新開 docs/changelog/2026-05-20-test-a4-boundary-and-integration.md
   - Option B: 把 T9 內容附加到既有
     docs/changelog/2026-05-20-feat-ssp-excel-import-phase2-a4-write-pipeline.md
   - 建議 Option A — type=tweak(補測試,行為一致;test 屬 tweak 範疇)
4. **Tracker README 更新** — docs/features/FR-011.2-2605-ssp-import-export-phase2/README.md
   A4 row commit chain 補 T9 commit 600f50a;狀態欄補「Session F-T9 ✅ /
   T10 follow-up F-A4-cucumber / T11 收尾」
5. **F-A4-cucumber follow-up 註記**(在 SUMMARY 內 Known Follow-up 段):
   - 撰寫前置條件:GitLab CI pipeline 配齊 + A4 fixture seed helper
     (device 'Web-01' / info_system 'ERP' / Party 'AWS GovCloud' / catalog 'AC-1')
   - 沿 A1/A2/A3 partial ship pattern;env 配齊那天可一次性補完 4 phase

前置狀態
========

Branch: feature/ssp-import-export-phase2(BE)

A4 完整 commit chain(10 個 BE commit):
- Session A (design-A4.md): 1de5f51
- Session B (implementation-plan-A4.md): 57bcb2e
- Session C T0+T1+T2: 57a9567 + 72ef229
- Session D T3+T4+T5: 7c2b860 + 8936aab + 9d7c102
- Session E T6+T7+T8: 40c4a12 + 579eb76 + 78118eb
- Session E 收尾 docs: 81073ef
- Session F T9: 600f50a

a3+a4+a2 ssp_excel 累計 282 test 全綠 0 regression(含 T9 補的
5 integration + 3 reconciler boundary + 4 WriteStrategy boundary)。

design §11.1 已含 Session C/D/E 共 16 條偏差紀錄(§11.1.1-11.1.16);
T9 沒新偏差,§11.1 不需再加。

跳 T10 拍板理由:
- GitLab CI pipeline 配齊時程 user 不清楚 → 寫 cucumber 也只是 dead code
- A1/A2/A3 cucumber 都 partial ship / pending — 同期 4 phase 都等 env 配齊
- 留 follow-up F-A4-cucumber:env 配齊那天一次性補 4 phase

jedi-oscal 仍 path-dep;pyproject.toml dev-path 改動未 commit。

開工 SOP
========

第一步:必讀文件(順序)

1. 本 handoff prompt
2. docs/features/FR-011.2-2605-ssp-import-export-phase2/handoff/2026-05-20-a4-e-to-f.md
   (Session E 結束 → F 開工的整體指引;T11 範圍同此 doc 內描述但縮 scope)
3. docs/changelog/2026-05-20-feat-ssp-excel-import-phase2-a4-write-pipeline.md
   (Session E 完整 ship 紀錄;T9 changelog 寫法可參考結構)
4. docs/features/FR-011.2-2605-ssp-import-export-phase2/design-A4.md §11.1 末段 + §12
   (了解 A4 偏差紀錄 + session 切分)
5. docs/features/FR-011.2-2605-ssp-import-export-phase2/README.md
   (tracker A4 row 現況 — 看哪些欄位需要補)
6. 如 user 提供 conversation export → 讀檔案了解結構

讀完後給「我看完了,準備 T11 開工」確認。

第二步:T11 執行順序

不需照 1-5 順序,可平行:
- a. 等 user 提供 conversation export(如有)→ dump 到 conversation-history/
  若沒提供,跳過此步驟在 SUMMARY 內註記「conversation history dump pending」
- b. 寫 T9 changelog(2026-05-20-test-a4-boundary-and-integration.md)
- c. 更新 README tracker A4 row
- d. 寫 SUMMARY 報告(最重要的單一文件)
- e. 全部 commit

第三步:Commit 結構

兩個 commit:
1. **docs commit**:包含 changelog + tracker + SUMMARY + 對話歷史(如有)
   - Message: docs(ssp-import-export-phase2): A4 Session F / T11 收尾 -
     SUMMARY + tracker + T9 changelog
2. 不需第二個(除非 conversation history 太大 user 想分開 commit)

第四步:完工後

A4 task arc 完整收口。下一步給 user 選:
- 走 A5 phase(預覽 UI + Confirm 寫入)
- 跳 Track B(SSP 匯出 — B1-B6)
- 暫停評估其他 priorities

鐵律
====

1. 顯式 git add <file>,禁 -am / -A
2. jedi-oscal 維持 path-dep,不 bump 版本
3. pyproject.toml dev-path 改動不該 commit
4. T11 不動 production code、不動 test code — 純文件
5. 對話歷史 dump **不做格式化 / 不過濾 system-reminder / 不二次加工**
6. SUMMARY 報告風格:直接給 user 看的彙整,不只是表格列檔名 — 要說
   「為何做」「行為差異」「待辦」
7. Handoff 文件統一放 docs/features/<feature>/handoff/
8. 階段性 commit 不用問
9. SUMMARY 要含 follow-up F-A4-cucumber(撰寫前置條件 + partial ship pattern)

Session F 預估規模
==================

- T11: 0.5d(4 個收尾任務)
- 若 user 提供 conversation export,可能多 0.5d 整理時間(純複製貼上不
  加工,所以時間主要看 export 檔案數量)

不在 T11 範圍
==============

- A5 phase 任何工作
- jedi-oscal 版本 bump
- BE / FE / test 跨 repo merge
- T10 cucumber(拍板跳過,留 follow-up)

謝謝。

§2

收口清單(A4 F-T9 → F-T11 端)

本 handoff prompt commit 後,新 session 接手即可:

  1. 讀 6 個必讀文件
  2. T11 4 個收尾任務(對話歷史 / SUMMARY / changelog / tracker)
  3. 1 個 docs commit
  4. A4 task arc 完整收口;user 拍板下一個 phase