本卡屬 FR-167(母卡 CM-3241),卡 P2-5,階段 P2 更新站、批 1。只改 License Center(license_center)。依賴:無。
授權檔多一個欄位「這把授權是哪個主版號的」(預設 1)。更新站靠它判斷客戶能不能拿 2.0。既有授權檔不補簽,缺欄位當 1。
一欄
extend:modules/licensing 的 payload 組裝加一欄;既有照不補簽,更新站把缺欄視為 1
repo:~/Projects/Billows/Audit-Manager/license_center
改既有:src/license_center/modules/licensing/service.py
改既有:src/license_center/modules/licensing/models.py
改既有:alembic migration
細節在 design.md §5 對應段(~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-167-2610-online-update-channel/design.md,開 design.html 看導覽);本段只列本卡要做到的點:
modules/licensing/models.py 與 service.py payload 組裝加 product_major: int = 1;alembic migration 加欄;簽發畫面與 CLI 帶欄位(預設 1)。新簽的照 payload 有 product_major: 1;舊照驗章照過;LC 畫面顯示欄位
對照雛形:~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-167-2610-online-update-channel/prototype/index.html(上方「跟著走」)。
docs/claude/domain-capabilities.md。三擇一、預設不新增:reuse → extend 加參數 → 都沒有才新增。回寫列出 reuse 了哪些、新增了哪些、為什麼不能 reuse。XxxV2、同一行為兩條路徑。回寫列出哪些 extend、哪些 new 及為什麼。