本卡屬 FR-155(母卡 CM-2977 https://app.notion.com/p/FR-155-RBAC-tab-4-11-400346da4cd081c1b7ffce63ec77390d),第 5 批 T-5.0:合回與套件版號。第 5 批其餘兩張等它;它是收口第一張。
前 11 張卡的後端改動都在一條工作分支 ws-CM-2977(14 個 commit),前端與套件的改動卻已經在主開發分支 feature/FR-139。現在開 DEV 會看到前端新版配舊後端,專案頁會壞。這一棒把後端合回主開發分支,四個被改到的套件版號往上加(還不發布),後端改用本機套件源碼起來,讓 DEV 8000 能完整跑新功能。
BE:branch ws-CM-2977(da17210c4~fc57460d4,14 commits)→ 合進 feature/FR-139。首腦 2026-10-22 已用 git merge-tree 試算:0 衝突。
套件(四支都在 feature/FR-139,已 commit 未 bump):
~/Projects/Jedicogy/module/jedi-python-package/jedi-iam(1.6.0 → 1.7.0;Role 加 kind/is_default_owner、列表依 kind 篩、建租戶建四角色)
~/Projects/Jedicogy/module/jedi-python-package/jedi-task-platform(1.3.3 → 1.4.0;五 model 加 project_role_id、ParticipantAdapters 新增必填參數=破壞性,minor)
~/Projects/Jedicogy/module/jedi-python-package/jedi-compliance-audit(1.3.8 → 1.4.0;守門改能力點、準備度檢核插座)
~/Projects/Jedicogy/module/jedi-python-package/jedi-survey(1.2.5 → 1.3.0;守門改能力點)
BE pyproject.toml:118-128 path dependency 註解行;:64-76 pin
git status 乾淨後,在 feature/FR-139 上 git merge --no-ff ws-CM-2977 -m "merge(FR-155): ws-CM-2977 合回——T-1.1~T-4.3 後端 14 commits"。合完 git log --oneline -3 貼進回寫。不刪 ws-CM-2977 branch(刪 branch 是禁止操作)。pyproject.toml bump 版號(上面括號內),每支一個 commit(chore(release): jedi-xxx X.Y.Z——FR-155 ...),不 publish、不推 Nexus(等決策者明示)。pyproject.toml:四支 pin 改成新版號(jedi-iam==1.7.0 等),同時把 :118/:123/:124/:125 的 path dependency 註解行打開(開發期用源碼);poetry update jedi-iam jedi-task-platform jedi-compliance-audit jedi-survey。pin 改動 commit、path 打開不 commit(commit 前把 path 行 git checkout -p 排除,或用 git add -p)。驗 .venv 四支是 editable 指向源碼:poetry run pip show jedi-iam | grep Location。python main.py 不炸、curl localhost:8000/swagger-ui/ 200;另起 RUN_MODE=worker。DEV 登入若被 Turnstile 擋,看 .env 有沒有 DEV 關閉開關(grep TURNSTILE),有就關、回寫註明;沒有就只用 curl 帶既有 token 驗。GET /roles?kind=project 四列;GET /project-roles 四列;GET /projects/<uid> 有 my_capabilities;開既有專案流程設定原樣存 200;設計器送 main_role="auditor" 400 GRC_400185。feature/FR-139(BE ~/Projects/Billows/Audit-Manager/compliance-manager-be、FE ~/Projects/Billows/Audit-Manager/compliance-manager-fe、套件 ~/Projects/Jedicogy/module/jedi-python-package),在當前 branch 工作、不切 branch;動 git 前先 git status,有不是自己的改動就停下回報。pyproject.toml:118-128 對應註解行打開、poetry update <套件名>);path 改動不 commit、不發版、不推 Nexus。common/authz/、common/code/flow_control_error_code.py、docs/claude/domain-capabilities.md)。localhost:5432,密碼看 .env 的 DB_PASSWORD),用 cmmgr:psql --single-transaction -v ON_ERROR_STOP=1 -f <檔>;絕不碰 STG/POC。pytest test/test_module_boundaries.py test/test_project_role_literal_guard.py test/test_project_caps_not_in_tenant_expansion.py -q。不跑全量 pytest。git add <檔名>(禁 -am)commit(做了什麼/為什麼/怎麼驗/踩了什麼坑)→ 本卡 append 白話回寫(含 commit hash、手測清單)→ 狀態改「修正待驗證」。不等令。push 等決策者明示。