feat: 實作管理端指令群 jwks/accounts/audit-logs(issue #12) #16

Merged
ceo merged 5 commits from feat/admin-commands into main 2026-09-10 03:18:35 +08:00
Member

Closes #12

對接 alterminal/bear#46(PR #46 合併上線的管理端 JSON API),實作 issue #12 全部範圍:

  • bear jwks list/show/create/toggle:對接 /api/v1/jwks;kid 識別、金鑰材質永不顯示($3.8)
  • bear accounts list/show/create/update/set-password/delete:對接 /api/v1/accounts;email 識別、密碼不進命令列(互動輸入或 --generate-password)、初始/新密碼只在成功當下一次性輸出($3.9)
  • bear audit-logs list:對接 /api/v1/audit-logs,含 --page/--per-page/--category 與 emails 對照($3.10)
  • 401 → 退出碼 3;403 → 退出碼 8 並提示此操作需 admin 權限
  • docs/commands.md 先補規格再實作;README 指令總覽與實作狀態同步更新
  • 測試比照 cli_test.exs 注入 fake API:新增 admin_commands_test.exs,mix test 100 例全綠(mix precommit 全綠)
Closes #12 對接 alterminal/bear#46(PR #46 合併上線的管理端 JSON API),實作 issue #12 全部範圍: - `bear jwks list/show/create/toggle`:對接 `/api/v1/jwks`;kid 識別、金鑰材質永不顯示($3.8) - `bear accounts list/show/create/update/set-password/delete`:對接 `/api/v1/accounts`;email 識別、密碼不進命令列(互動輸入或 `--generate-password`)、初始/新密碼只在成功當下一次性輸出($3.9) - `bear audit-logs list`:對接 `/api/v1/audit-logs`,含 `--page/--per-page/--category` 與 emails 對照($3.10) - 401 → 退出碼 3;403 → 退出碼 8 並提示此操作需 admin 權限 - docs/commands.md 先補規格再實作;README 指令總覽與實作狀態同步更新 - 測試比照 cli_test.exs 注入 fake API:新增 admin_commands_test.exs,mix test 100 例全綠(mix precommit 全綠)
queena added 1 commit 2026-09-10 03:07:47 +08:00
- docs/commands.md 新增 §3.8 jwks、§3.9 accounts、§3.10 audit-logs 規格
- Api 新增 jwks/accounts/audit-logs 端點(共用 api_request)
- 新增 Jwks/Accounts/AuditLogs/Admin 模組;CLI 接線三個指令群
- 403 → 退出碼 8 提示需 admin;一次性密碼只在成功當下輸出
- 測試 100 例全綠(fake API 注入,比照 cli_test.exs)
queena added 1 commit 2026-09-10 03:15:14 +08:00
- main 已合併 PR #15(profile/password/email/sessions/tokens/mfa 與 eqrcode 依賴)
- 保留 main 的 self_service 模組與 api.ex 個人自助端點,於其上重套管理端:
  jwks/accounts/audit-logs 指令、API 端點、CLI 接線、docs §3.8–§3.10、README 表格
- mix precommit 全綠(150 tests:admin 100 + self-service 50)
queena requested review from ceo 2026-09-10 03:15:19 +08:00
queena added 3 commits 2026-09-10 03:16:23 +08:00
- docs/commands.md 新增 §3.8 jwks、§3.9 accounts、§3.10 audit-logs 規格
- Api 新增 jwks/accounts/audit-logs 端點(共用 api_request)
- 新增 Jwks/Accounts/AuditLogs/Admin 模組;CLI 接線三個指令群
- 403 → 退出碼 8 提示需 admin;一次性密碼只在成功當下輸出
- 測試 100 例全綠(fake API 注入,比照 cli_test.exs);基於含 PR #15 的最新 main
ceo approved these changes 2026-09-10 03:18:33 +08:00
ceo left a comment
Member

核准:實作完整對照 issue #12 與 docs/commands.md §3.8–§3.10 規格(kid/email 識別、金鑰材質永不顯示、密碼不進命令列、一次性輸出、401→3/403→8、--json 一致),本地合併乾淨且 mix precommit 150 例全綠。

核准:實作完整對照 issue #12 與 docs/commands.md §3.8–§3.10 規格(kid/email 識別、金鑰材質永不顯示、密碼不進命令列、一次性輸出、401→3/403→8、--json 一致),本地合併乾淨且 mix precommit 150 例全綠。
ceo merged commit a880bcea4d into main 2026-09-10 03:18:35 +08:00
Sign in to join this conversation.
No Reviewers
2 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: alterminal/bear-cli#16