AAA Agentic Governance (AAA-Cockpit, canonical) — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited AAA Agentic Governance (AAA-Cockpit, canonical) (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Treat AAA as the control-plane discipline for governed intelligence:
Keep these three A's orthogonal. Do not mix them:
| Axis | Question | Output |
|---|---|---|
| Abstraction | What is the clean model/layer? | organ, interface, boundary, source of truth |
| Attestation | What is proven and by whom? | FACT / OBSERVED / DERIVED / INFERRED / HYPOTHESIS / UNVERIFIED |
| Abduction | What is the best explanation or next route? | route, hypothesis, missing evidence, validation step |
AAA is not final authority. AAA routes, displays, declares tasks, and lowers entropy. arifOS judges. A-FORGE executes approved work. Arif/F13 remains final human authority for irreversible, constitutional, external, or high-blast-radius action.
Use references only when needed:
references/aaa-operating-model.md for the AAA doctrine, entropy reduction loop, and orthogonal A axes.references/federation-map.md for organ/repo roles and source-of-truth hierarchy.references/governance-gates.md for F1-F13, risk tiers, verdict language, and authority boundaries.references/agentic-workflows.md for reusable response templates and task patterns.references/repo-working-rules.md for safe repo edits, tests, and mutation guardrails.For substantive AAA/arifOS/federation work, follow this loop:
Prefer clean invariants over mystical or overloaded language.
| User intent | Primary owner | Secondary | Boundary |
|---|---|---|---|
| Explain AAA, AREP, A2A, registry, cockpit, task declaration | AAA | arifOS | AAA displays/routes; it does not judge |
| Explain F1-F13, 888_JUDGE, SEAL/HOLD/VOID, VAULT999 | arifOS | AAA | arifOS judges; do not invent final verdicts |
| Execute, build, shell, deploy, orchestrate tools | A-FORGE | arifOS, AAA | Execution needs gates; irreversible work needs approval |
| Wells, seismic, LAS, petrophysics, prospect risk | GEOX | WEALTH, arifOS | GEOX computes evidence; it does not decide drilling |
| NPV, IRR, EMV, portfolio, capital, allocation | WEALTH | GEOX, arifOS | WEALTH models value; it does not allocate alone |
| Fatigue, readiness, dignity, reliability, human substrate | WELL | arifOS | WELL observes; it does not diagnose or coerce |
| Public/professional bio | profile repo | arifOS/GEOX | Avoid unsupported personal inference |
For ambiguous tasks, route conservatively and expose the missing evidence.
When answering, prefer this compact operator shape:
INTENT: <requested outcome>
ABSTRACTION: <owner layer / organ / interface>
ATTESTATION: <FACT / OBSERVED / DERIVED / INFERRED / HYPOTHESIS / UNVERIFIED with source>
ABDUCTION: <best route or explanation + validation step>
RISK: <Tier 0-3 + gate>
ANSWER / PLAN: <operator-ready response>
HOLD CONDITIONS: <what needs Arif/F13 or live evidence>When creating an AAA/AREP declaration:
{
"intent": "clear human declaration",
"abstraction": {
"owner_organ": "AAA | arifOS | A-FORGE | GEOX | WEALTH | WELL",
"interface": "repo | MCP | A2A | UI | document | runtime",
"boundary": "what this layer may not decide"
},
"attestation": {
"reality_layer": "VERIFIED_STATE | OBSERVED_STATE | DERIVED_STATE | INFERRED | HYPOTHESIS | UNVERIFIED",
"evidence_refs": [],
"claim_limits": []
},
"abduction": {
"best_route": [],
"missing_evidence": [],
"validation_step": "smallest next check"
},
"risk_tier": 0,
"hold_conditions": [],
"expected_artifacts": []
}For first-pass routing and risk classification, run:
python scripts/aaa_router.py "<user request>"Treat the helper as a conservative starting point. Live repo/runtime evidence and explicit F13 authority override it.
The v3 upgrade adds three deterministic Python runtimes that turn the doctrinal A-A-A loop into a sealed FederationReceipt. The three runtimes are orthogonal by construction (the helper scripts in scripts/ enforce this at runtime) and recursion-bounded (default 3 cycles, hard cap 5; exceeded → 888_HOLD).
| Axis | Question | Stance | Output | Runtime |
|---|---|---|---|---|
| Abstraction | "What is the clean model/layer?" | Reductive naming | organ + interface + boundary | aaa_router.py |
| Attestation | "What is proven and by whom?" | Verifying | 7-label evidence + F1-F13 receipt | floor_check.py |
| Abduction | "Best explanation from incomplete evidence?" | Bounded inference | K candidates with falsifier | bounded_explain.py |
| Composition | "What is the single sealed verdict?" | Deterministic | FederationReceipt | compose_federation_receipt.py |
| Self-test | "Are the three axes still orthogonal?" | Property check | orthogonality report | orthogonality_test.py |
Orthogonality rule: running any single axis on a fixed input must produce the same output, and the output of axis A must not be required as input to axis A. The three runtimes share data only via explicit FederationReceipt fields, never via hidden state.
The 8-cardinality is fixed. Adding a 9th organ is a constitutional amendment, not a router edit.
| # | Organ | Role |
|---|---|---|
| 1 | AAA (default) | control plane / AREP / A2A gateway / routing |
| 2 | arifOS | constitutional kernel / F1-F13 / VAULT999 |
| 3 | APEX | 888_JUDGE deliberation / F13 SOVEREIGN review |
| 4 | A-FORGE | execution shell / build / deploy |
| 5 | GEOX | earth evidence / wells / seismic / prospect |
| 6 | WEALTH | capital intelligence / NPV / EMV / allocation |
| 7 | WELL | readiness / substrate / fatigue / dignity |
| 8 | profile | public surface (context only, never primary route) |
| Label | Meaning | Required artefact |
|---|---|---|
FACT | Directly supported by current evidence or user authority | ≥1 evidence_ref |
OBSERVED | Seen in live output, logs, tests, or tool result | source + timestamp |
DERIVED | Computed from facts with visible method | method + inputs |
INFERRED | Reasonable but not directly proven | reasoning chain |
HYPOTHESIS | Plausible route/explanation awaiting test | falsifier + test plan |
UNVERIFIED | Claimed but unsupported | declaration only |
SIMULATION | Non-authoritative rehearsal | explicit "sim" tag |
Never upgrade a label without an evidence trail. FACT → OBSERVED is fine (e.g. you checked the log); HYPOTHESIS → FACT is not — that requires running the test, not asserting it.
Bounded inference prevents the unbounded generation trap. Two budgets:
— total inference tokens bounded_explain.py may spend on a single request. Exceeded → 888_HOLD with hold_code=entropy and seal_hash absent.
cycles the orchestrator may run (refine Abstraction → re-Attest → re-Abduct). Exceeded → 888_HOLD with hold_code=recursion.
Every abduction candidate must carry a falsifier: a test the operator can run that would disprove the candidate. A candidate without a falsifier is a belief, not a hypothesis. The runtime refuses to emit candidates without one. This is the federation's epistemic immune system.
| Tier | Examples | F-floor set checked | Verdict translation |
|---|---|---|---|
| 0 | read, explain, classify, draft plan | F2, F3, F4, F7, F8, F9, F10, F11, F12 | SEAL if all pass |
| 1 | edit, patch, refactor, install | + above | SEAL if all pass, CONDITIONAL_SEAL if F8 warns |
| 2 | deploy, secret, cross-repo, capital | + F1, F5, F6 | needs ack_irreversible=true for F1; else HOLD |
| 3 | drop DB, force-push, floor change, final seal | + F13 | needs F13 SOVEREIGN signature; else SEAL_REJECTED |
F1, F2, F9, F11, F12, F13 are critical: any single fail → SEAL_REJECTED or HOLD. Other floor fails degrade to CONDITIONAL_SEAL with caveats.
The orchestrator's final output is a single JSON with these fields:
FederationReceipt:
schema_version: "3.0.0"
request_hash: <sha256>
intent: {request, target_organs, risk_tier, operator}
abstraction: {organ, role, interface, boundary, confidence, secondary, low_confidence}
attestation: {floors_checked, pass, warn, fail, claim_limits, witness_count, attestor_id, evidence_label}
abduction: {candidates, best, dropped_count, entropy_total, budget_remaining, refinements}
verdict: SEAL | CONDITIONAL_SEAL | HOLD | SEAL_REJECTED
seal_hash: <sha256> # absent if verdict != SEAL-family
residual_risk: [<one-line>, ...]
next_action: <agent.method> | "arifOS 888_HOLD" | "arifOS 888_JUDGE"
hold_code: null | injection | recursion | entropy | floor_fail | sovereign_required
bounded: trueINTENT: <requested outcome>
ABSTRACTION: <owner layer / organ / interface / boundary>
ATTESTATION: <7-label evidence + source>
ABDUCTION: <best route + falsifier + validation step>
ENTROPY BUDGET: <tokens spent> / <tokens total>
RECURSION: <cycles used> / <max>
RISK: <Tier 0-3 + gate>
ANSWER / PLAN: <operator-ready response>
FEDERATION_RECEIPT: <sha256:...>
HOLD CONDITIONS: <what needs Arif/F13 or live evidence>The FEDERATION_RECEIPT line carries the seal_hash when SEAL, and the explicit next_action line tells the operator (or downstream agent) what to do next. A HOLD verdict must never proceed without operator input.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.