| 項目 | 內容 |
|---|---|
| 緣由 | FR-047 spec 手冊全站 67 頁 §12「已知坑」彙整成 508 條(docs/analysis/2026-07-07-spec-known-pits-inventory.md),逐桶處理。 |
| Living tracker | docs/analysis/2026-07-07-known-pits-remediation-tracker.md(一切定調/銷帳看這份,本 SUMMARY 是它的收口彙整) |
| branch | fix/v1.8.0-bugs(未 push) |
| 狀態 | 實作全數完成或定調;部署(push / jedi 發版 / POC migration / FE 同版)未執行,等 user 明示 |
508 條已知坑逐桶分族定調:真正動手的遠少於 508(~85% 是設計/行為告知 no-action)。安全守門衍生成獨立 feature FR-048;其餘桶逐條 live 驗證後,真缺陷修掉、誤報退回、告知類放生。
| 桶 | 條數 | 結果 |
|---|---|---|
| ① SEC 授權守門 | 75 | → FR-048(全站 373 端點統一守門,另有 SUMMARY);user 當時已逐項手測 |
| ② SCHEMA | 60 | DDL 5 項(冗餘索引 ×2 + UNIQUE ×3)已套 DEV+STG;告知類 ~55 no-action;升級 2 條(ssp-components#1 / device-manage#2)已修 |
| ③ UX | 47 | 未動(剩桶) |
| ④ ECODE | 39 | 真缺陷 7 條全修(見 §3);告知類 ~18 no-action |
| ⑤ STATE | 33 | 未動(剩桶) |
| ⑥ REPLACE | 33 | 未動(剩桶) |
| ⑦ DEAD | 30 | A 族死碼刪(BE+FE);C 族 5 bug 改桶;jedi-survey 死碼刪;B 族 topt_secret drop 待定調 |
| ⑧ 其他 | 204 | 三次複核:~175 no-action、25 可行動歸桶、1 誤報更正 |
主 repo compliance-manager-be(領先 origin 91 commits,含 FR-048 全批)
bedd8295(進度條) 7dee25ad(na 圓點) f5f26777(feedback TypeError) 2986fc7b(GitHub config) e9e42871(微量×2)e741d726(利用授權 Chip)2026-07-08-drop-dup-index-*.sql ×2 + 2026-07-08-add-unique-*.sql ×3(DEV+STG 已套)0f26a7f2(MAIL_SEND_FAILED + bulletin 404)d4b6ee6e(feedback 死碼) 2d085edf(v1 copy 鏈退役)jedi monorepo(領先 origin 7 commits;path override 在主 pyproject 未 commit)
60fbc12+9f85d80(role dup-check+409) 0412b9a(device 404) b124b5d(survey 死碼) 6adf125(system-menu 409) 90724d7(改密 400 + tenant 409) 490a187+2087b5a(info-system 裸字串+404) 1ad6cf9(bump 5 套件版號 — 見 §6 發版待決)FE compliance-manager-fe
79c0133(FR-048 4b signed-token) 7afeb49(DEAD 死碼刪) b7a9929(改密碼碼 AUTH_401009→AUTH_400003)| # | 坑 | 修法 | commit |
|---|---|---|---|
| 1 | smtp MAIL_SEND_FAILED 未定義→500 | 補碼 | 主 0f26a7f2 |
| 2 | bulletin GET 不存在 uid 缺 404 | 補 None→NotFound | 主 0f26a7f2 |
| 3 | system-menu 撞 UNIQUE 裸 500 | catch→ConflictError | jedi 6adf125 |
| 4 | 改密「新=舊」碼/型別/語意三重不符 | 碼 AUTH_400003 + BadRequestError + FE i18n | jedi 90724d7 + FE b7a9929 |
| 5 | info-system 裸字串 raise | 套件建 enum | jedi 490a187 |
| 6 | info-system PUT/DELETE 404 非 coded | 套件 raise 結構化 404 | jedi 2087b5a |
| 7 | 刪被引用租戶裸 500 | catch→ConflictError | jedi 90724d7 |
8 張翻 Done(完成日期 2026-07-08):GitHub config / 角色 409 / api-logs JWT / otp-qrcode / 專案摘要報表守門 / 問卷守門 / MAIL_SEND_FAILED / 選單 ConflictError。 系統管理 CRUD 傘狀案(6516)維持 完成待驗證(FR-048,待部署後翻 Done)。
0.0.9 / jedi-auth 0.1.24 / jedi-information-system 0.0.3 / jedi-survey 0.0.24 / jedi-device 0.0.12。主 pyproject 已還原 pin 新版(809ffd67),path override 全撤;BE poetry update + import smoke 通過。1ad6cf9+源碼)+ FE commits 全未 push。error-code.json(三語 AUTH_400003)。mfa_type、serializer 宣告 type→TOTP 使用者靜默走 email。Notion 維持 Not started。AUTH_401009 仍散在 docs/reference/error_code.json、docs/system-design/.../_all_error_codes.json、docs/specs/v1.8.0/auth|system-admin md/html/dot → spec-sync 待做。users.topt_secret drop(DEV 查乾淨,待 STG/POC 確認 + 拍板)。information_system_route.py:126 msg="Not found"):#6 只改 PUT/DELETE,GET 路徑同款可順手,低優先。