feat: add HTTP bearer authentication - #48
Conversation
🤖 Automated Review PanelReviewer A — gpt-5.6-terraAPPROVE. No release-blocking issues: middleware covers all registered routes except exact Reviewer B — Gemini 3 FlashAPPROVE. Confirmed global route coverage, 401 behavior, token comparison, and deployment-agnostic non-public binding policy. No Tailscale-specific behavior introduced. |
Auto-Merge GateVerdict: MERGE (squash) — confidence 0.90 Rationale: PR implements COD-429 exactly: optional static Checks observed (all green): Test, Format Check, Clippy, Secret Scan, Dependency Audit, Creed context drift. Independent local verification (disposable clone, TechGodHQ/iris @ 759bda9): Scope limits: Auth feature addition per linked ticket; no secrets exposed, rotated, or deleted; no production cutover in this merge (published images follow release tags). Linked Linear COD-429 scanned for manual-review markers — none. |
Summary
GET /healthwith optional staticIRIS_API_TOKENbearer authenticationVerification
cargo build --all-targetscargo test --all-targetscargo clippy --all-targets -- -D warningscargo fmt --all -- --checkcargo run -p iris-codegen --bin iris-codegen -- checkAgent acceptance
curl -H "Authorization: Bearer ${IRIS_API_TOKEN}" http://127.0.0.1:9876/providers