StellaOps Advisory AI

Advisory AI is the retrieval-augmented assistant that synthesizes advisory and VEX evidence into operator-ready summaries, conflict explanations, and remediation plans with strict provenance.

Responsibilities

Contributor quickstart

Key components

API surface

All business endpoints are served by the advisory-ai-web service under the /v1/advisory-ai/* prefix and authenticated via the gateway-signed identity envelope (verified by UseIdentityEnvelopeAuthentication(); raw X-User-Id/X-Tenant-Id/X-StellaOps-Scopes headers are stripped at inbound by InboundIdentityHeaderStripMiddleware). Endpoints attach named authorization policies from AdvisoryAIPolicies (StellaOps.AdvisoryAI.WebService/Security/AdvisoryAIPolicies.cs). All requests are also rate-limited under the advisory-ai policy (token bucket, 30 req/min per X-StellaOps-Client).

Scopes (canonical names in StellaOps.Auth.Abstractions/StellaOpsScopes.cs):

Endpoint families (verbs/paths grounded in WebService/Program.cs and the Endpoints/*.cs route groups):

Integrations & dependencies

Operational notes

Outputs & artefacts

NOT IMPLEMENTED (verify before relying): earlier drafts of this doc described an /ops/advisory-ai/runs NDJSON status stream, an advisory_ai_run_completed worker event, and an advisory-ai-bundle.tgz offline export. None of these were found in src/AdvisoryAI/. The canonical runs surface is /v1/advisory-ai/runs (not /ops/...); no advisory_ai_run_completed event emission or advisory-ai-bundle.tgz packaging exists in the worker. Treat these as roadmap/forward design until implemented.

Deployment & configuration

Stale reference (verify): a prior draft pointed at packaged manifests under ops/advisory-ai/; no such directory exists in the repo. The compose definition is under devops/compose/.

CLI usage

Implementation Status

Current Phase: Production-ready (Epic 8 - Advisory AI Assistant)

Completed Milestones:

Known gaps / not yet wired:

Active Workstreams:

Epic alignment