Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Implementation Status

This page maps the deployed behavioral specs to the commands and capabilities that implement them. Each row is a scenario in a spec; if ah check passes, that behavior is verified in CI.

Deployed specs

gate — Core verification engine (13 scenarios)

Covers what ah check does: scenario discovery, contract correspondence, test execution, and JSON output.

ScenarioWhat it verifies
Scenario Discoveryah check finds all scenarios from spec headings
Sidecar Contract Correspondenceevery scenario has a contract; every contract has a scenario
Contract SchemaTOML contracts validate against the schema
Test Runner Executiondeclared tests are executed and results captured
JSON Findingsoutput is a stable JSON envelope with scope/summary/findings
Change Overlay Scope--changes adds staged scenarios to scope
Non-Regression ArchetypeNR contracts are checked without special treatment
Deterministic Scope Boundaryscope is stable across repeated runs
JSON finding schema includes agent-action fieldsfindings carry suggested_action and playbook_command
Quality measurement capabilitiesquality-* findings are emitted and informational
Quality contract schemaquality fields validate in the contract schema
Conformance coverage matrixall finding kinds are covered by at least one contract
apply_command is conditionally presentapply_command appears only when applicable

cli — Command surface (15 scenarios)

Covers the full ah command interface: init, check, doctor, report, explain, type, scenario, archive, upgrade.

ScenarioWhat it verifies
CLI Command Namebinary is named ah
Project Initializationah init creates .espectacular/ and hook integration
Correspondence Check Commandah check validates specs and runs tests
Health Check Commandah doctor diagnoses config, paths, hooks, archetypes
Archetype Documentation Commandsah type lists and explains archetypes
Scenario Lifecycle Commandsah scenario new and ah scenario supersede
Archive Companion Commandah archive promotes staged contracts
Upgrade Commandah upgrade detects and reports tool-version drift
Doctor enable flagah doctor --enable <capability> writes config blocks
Explain subcommandah explain prints guidance for finding kinds and actions
Coverage report commandah report displays a conformance coverage matrix
Recommendation findingsah doctor emits recommendations for detected-but-unconfigured adapters
Recommendation findings as JSONah doctor --json emits structured recommendation findings
Report JSON outputah report --json emits a machine-readable conformance matrix
Report exit codesah report exits 0 when coverage is complete, 1 when gaps exist

adapters — Language adapter dispatch (6 scenarios)

Covers how ah check maps test types to runners and normalizes output.

ScenarioWhat it verifies
Adapter detection precedenceconfig > manifest > binary on PATH
Python pytest adapterpytest detection, invocation, failure normalization
Rust cargo test adaptercargo detection, invocation, failure normalization
TypeScript vitest adaptervitest detection, invocation, failure normalization
No-adapter-configured pathmissing-runner finding when type has no runner
Custom runner plugin protocolcustom runners emit JSON envelopes parsed by ah check

explain — Playbook system (7 scenarios)

Covers the ah explain topic system and its compile-time completeness guarantee.

ScenarioWhat it verifies
Playbook is compile-enforcedevery finding kind has an ah explain topic at compile time
Topic coverageall finding kinds and suggested actions are covered
Structured JSON output--json emits a machine-readable topic list
Topic listing--list enumerates all topics
Unknown topic handlingunknown topics exit 1 with “did you mean” suggestions
Quality finding kind topicsquality-* finding kinds have topics
Adapter topics ship with adaptersadapter-specific topics exist for each adapter

In progress

add-spec-quality-checksah lint command (0/21 tasks)

Adds spec quality linting: ah lint checks spec files for vague qualifiers, imperative steps, conjunctive bloat, missing negative scenarios, missing non-goals, and unresolved ambiguities.

ScenarioStatus
Spec Lint Commandplanned
Vague Qualifier Detectionplanned
Imperative Step Detectionplanned
Conjunctive Step Bloat Detectionplanned
Missing Negative Scenario Detectionplanned
Missing Non-Goals Detectionplanned
Unresolved Ambiguity Detectionplanned
Lint Finding Schemaplanned

How to read this page

  • Deployed means the scenario has a passing contract in ah check on main.
  • Planned means the scenario is staged in an OpenSpec change but not yet implemented.
  • Run ah check locally to see current pass/fail state.
  • Spec source lives in openspec/specs/.