Commit Graph

5 Commits

Author SHA1 Message Date
q792602257 71a3a85b26 fix(mcp): code review I2 — admin expires_at must be future + Part 3 tx TODO + scope JSON round-trip tests
- IssueAdmin now rejects past/now ExpiresAt with CodeMcpTokenExpiresRequired
- TestIssueAdmin_ExpiresMustBeFuture covers the new path
- IssueSystemToken doc comment notes pgRepo currently ignores ctx tx; Part 3
  must add Repository.WithTx for true same-transaction guarantee with
  acp_sessions (spec §6.1)
- New scope_test.go (whitebox) verifies JSON round-trip preserves nil-vs-empty
  semantics on Tools / ProjectIDs and exercises AllowsTool / AllowsProject
  edges that Authenticate / future tool gating depend on
2026-05-08 08:30:26 +08:00
q792602257 7d9cd4bf6b feat(mcp): TokenService.Revoke + RevokeBySession (with audit) 2026-05-08 08:02:11 +08:00
q792602257 796e1e0d4c feat(mcp): TokenService.Authenticate (hash lookup + revoked/expired check + async last_used) 2026-05-08 08:00:35 +08:00
q792602257 0081ad6e49 feat(mcp): TokenService.IssueSystemToken (with default scope + 24h TTL) 2026-05-08 07:59:00 +08:00
q792602257 d1573bde09 feat(mcp): TokenService skeleton + IssueAdmin 2026-05-08 07:57:17 +08:00