feat(ai): add zero-downtime gateway HMAC key rotation - #113
Conversation
|
Caution Review failedThe pull request is closed. ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (24)
📝 WalkthroughWalkthroughAI 게이트웨이 인증이 단일 시크릿에서 keyId 기반 v2 HMAC 키링으로 변경되었습니다. 웹 게이트웨이는 활성 키로 서명하고, AI 서비스는 활성 키 또는 이전 키를 선택해 검증합니다. 키 회전 운영 문서와 테스트도 갱신되었습니다. ChangesAI 게이트웨이 키 로테이션
Estimated code review effort: 4 (Complex) | ~60 minutes Sequence Diagram(s)sequenceDiagram
participant WebBFF
participant AiService
participant AiGatewayKeyring
participant AiProposalController
WebBFF->>WebBFF: 활성 키로 v2 HMAC 생성
WebBFF->>AiService: keyId 헤더와 서명된 컨텍스트 전송
AiService->>AiGatewayKeyring: keyId로 검증 키 선택
AiGatewayKeyring-->>AiService: 활성 또는 이전 키 반환
AiService->>AiProposalController: 검증된 컨텍스트 전달
AiProposalController-->>WebBFF: 제안 또는 감사 응답 반환
✨ Finishing Touches 💡 1⚔️ Resolve merge conflicts 💡
📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
|
@coderabbitai review |
✅ Action performedReview finished.
|
|
@coderabbitai review |
|
|
@coderabbitai review |
|
|
@coderabbitai review |
|
|
@coderabbitai review |
|
Buyer-visible outcome
Private web-to-AI service authentication can rotate HMAC credentials without rejecting valid in-flight requests during a bounded deployment overlap, while compromised or retired keys can still be rejected immediately.
Implemented contract
life-os.ai-context.v2canonical HMAC inputx-life-os-context-key-idEvidence
CHANGELOG.md, capability evidence, formatting contracts, and runtime documentation updatedMerge gate
Formatting, lint, type checking, complete tests, build, Compose validation, AppGuardrail, Semgrep, Security Scan, Commercial Readiness, CodeRabbit, and every actionable human/security review thread must pass on the exact current head before squash merge.
Closes #112.
Refs #109 and #46.
Summary by CodeRabbit
새 기능
문서
보안