本卡屬 FR-182(母卡 CM-3609 https://app.notion.com/p/FR-182-Agent-Agent-P1-License-Center-4-3-410346da4cd0816ea5e2c4757ebc4fbb),P3 主系統端,卡 P3-3b,Stage 6(P1 LC 端已 Done 上 188/189;P2 Agent 端 CM-3621~3623 Stage 4)。只改 FE。依賴:P2-3。
主控台「授權」頁(P2-3 做的)在尚未開通/已過期時多一區「線上開通」:輸入原廠給的序號、按一下,成功就變已授權;失敗顯示原因(序號錯、已被用過、嘗試太多次被鎖、主系統連不到 License Center、原廠服務暫停)。旁邊一句提醒:封閉網路請改走離線(把上面的機器碼交給原廠)。
extend(接 P2-3 的檔):console/views/License.vue 尚未開通/已過期/mismatch 的卡下方加「線上開通」區——輸入序號+「線上開通」按鈕(主系統連不上時仍顯示,點了回 LC_UNREACHABLE 那句);成功 toast+重拉 GET;失敗紅框對 i18n reject.<reason>;console/licenseApi.js 加 activateOnline: (code) => request('POST', '/api/license/activate-online', { activation_code: code });agent-console-license.json(zh-tw、en)補 online.title/online.code/online.button/online.hint(「封閉網路請改走離線:把機器碼交給原廠」)與 reject.<code_not_found|code_used|locked|lc_unreachable|lc_unavailable|remote_error>。不自訂字級、禁 border-left、上下疊。
repo:~/Projects/Billows/Audit-Manager/compliance-manager-fe
改既有:console/views/License.vue
改既有:console/licenseApi.js
改既有:src/config/locales/i18n/zh-tw/agent-console-license.json
改既有:src/config/locales/i18n/en/agent-console-license.json
console/views/License.vue、licenseApi.js、agent-console-license.json;FE CLAUDE.md;guidant-design-system skill。License.vue:在 missing/expired/mismatch 狀態的上傳卡上方加「線上開通」卡:一個 InputText(序號)+ Button「線上開通」(loading 狀態)+ hint 一句;submit → licenseApi.activateOnline(code) → 成功 toast online.success、重拉 GET;失敗紅框 reject.<reason>(API 回的 reason),remote_error 顯示 API 帶回的 msg。licenseApi.js 加 activateOnline;i18n 兩份補鍵(見 ren)。中文白話、不晶晶體。npm run build:CONSOLE、lint。npm run build:CONSOLE、lint 無新 error;vitest:mock 各 reason 顯示對應句;grep -c border-left console/views/License.vue 為 0。手測(headless)等 P3-3 合回:輸入 LC DEV 序號 → 已授權
~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-182-2611-agent-license/design.md(D6 不擋啟動但不起 sync、D8 用既有 integrity 驗章、§4.2 照 payload、§4.8 Agent 端);討論稿 ~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-182-2611-agent-license/discussion.md §2.2 Agent 端盤點、§2.4 與 FR-181/FR-179 接點、§3.7 狀態表~/Projects/Billows/Audit-Manager/compliance-manager-be/docs/features/FR-182-2611-agent-license/prototype/agent-console-license.html(七場景;P2-3 對照刻,P2-1/P2-2 看資料要長什麼樣)~/Projects/Billows/Audit-Manager/evidence-agent/CLAUDE.md、docs/ARCHITECTURE.md(模組分工、依賴方向、守衛)~/Projects/Billows/Audit-Manager/license_center(branch feature/FR-172)CLI agent-issue/agent-activate/agent-verify;export PYTHONPATH=src; env -u VIRTUAL_ENV poetry run python -m license_center.cli.main agent-issue --help;passphrase 走 LC .envcards_p3.py 檔頭有核對清單——181 套件工作區 .worktrees/CM-3595 動的檔本案不碰;FR-181 母卡 CM-3595