Multi-agent system
The eleven specialist roles, typed artifact handoffs, activation rules, guardrails, model tiers, and adjudication flow.
Agents collaborate through validated artifacts—not hidden chain-of-thought. Every artifact records its agent definition version, model, context hash, evidence IDs, confidence, usage, latency, and decision summary.
scope + stage decisions
bounded evidence packs
citation + contradiction checks
technical findings
boundaries + structural risk
canonical result
Role registry
| Role | Primary responsibility | Typical tier |
|---|---|---|
| Audit Coordinator | scope, activation, stage and retry decisions | Luna |
| Context Curator | assemble bounded ContextPacks | Luna |
| Evidence Verifier | reject unsupported claims and contradictions | Luna |
| Security Engineer | technical vulnerabilities and control failures | Terra |
| Security Architect | boundaries, reachability, blast radius, structural weakness | Terra |
| Cloud/IaC Analyst | infrastructure entities, policy, network, identity | Terra |
| CI/CD Analyst | pipeline, artifact, deployment, and provenance relationships | Terra |
| Threat Modeler | assets, actors, paths, abuse cases, mitigations | Terra |
| Remediation Engineer | deterministic patch proposal and static rescan plan | Terra |
| Diagram Architect | safe views of the canonical graph | Terra |
| Report Synthesizer / Adjudicator | reconcile artifacts into canonical JSON | Terra |
Sol-class models are reserved for an explicitly approved deep review. They are never selected merely because another agent failed.
YAML definitions
Definitions under backend/llm/prompts, backend/llm/skills, and backend/llm/workflows are versioned and validated at startup. Each definition declares:
- role and activation rules;
- model tier and bounded tools;
- Pydantic input and output schemas;
- token, latency, and cost limits;
- memory policy and evidence requirements;
- prompt-injection, secret, and unsupported-claim guardrails.
Unknown tools, invalid schemas, unsafe dynamic imports, or missing versions fail startup and CI.
Evidence adjudication
An observation becomes canonical only after the verifier can resolve every cited evidence ID in the same audit and workspace. Unsupported claims remain hypotheses. Conflicting agent artifacts are retained and sent to adjudication with the underlying evidence—not resolved by majority vote.