Part of the ADR-0003 epic #1105. Plan: docs/operations/proposals/advisor-qp-direct-retrieval.md (PR #1104). Decision: ADR-0003.
Goal: Give the QP first-class inbound auth — it is unauthenticated today, and direct consumption removes GraphQL's X-API-Key gate.
Scope:
- Add
ApiKeyAuthMiddleware (as GraphQL/mdr-api, bases/lif/api_graphql/core.py:59) or the composite cognito_auth brick to query_planner_restapi.
- Issue an internal QP key held by semantic-search (mirrors
LIF_GRAPHQL_API_KEY).
- Validate the orchestrator's already-sent bearer token (
lif_job.py:249-250).
Size: M · Depends on: —
Part of the ADR-0003 epic #1105. Plan:
docs/operations/proposals/advisor-qp-direct-retrieval.md(PR #1104). Decision: ADR-0003.Goal: Give the QP first-class inbound auth — it is unauthenticated today, and direct consumption removes GraphQL's
X-API-Keygate.Scope:
ApiKeyAuthMiddleware(as GraphQL/mdr-api,bases/lif/api_graphql/core.py:59) or the compositecognito_authbrick toquery_planner_restapi.LIF_GRAPHQL_API_KEY).lif_job.py:249-250).Size: M · Depends on: —