Terminology

May 11, 2026 · View on GitHub

ripr uses plain language on its public surfaces (storefront, README, Quickstart, editor) and a precise internal vocabulary in its specs, schemas, JSON, and report artifacts. This page is the bridge between the two, so the internal model stays teachable instead of leaked.

If you only care about the day-to-day language, the plain-language column is all you need. If you are reading JSON, writing fixtures, or working on the analyzer itself, you will want the internal term.

Bridge

Public / first-hour phraseInternal termMeaning
changed code where the nearby tests may not actually catch the behaviorseam / findingthe location ripr is worried about
assertion or check that would catch the changed behaviordiscriminatorthe test evidence ripr is looking for
nearby test to imitaterelated testcandidate test context used to suggest the next focused test
the evidence got better after adding a testmovementbefore/after static change observed by ripr outcome
top test gaptop actionable seamthe highest-priority seam in the current pilot/report
no focused test gap foundno-actionable-seamstable status ID emitted when analysis ran cleanly but produced no actionable recommendation
recommended next testfirst-useful-actionthe advisory target/ripr/reports/first-useful-action.json projection
static classifications: exposed, weak, unrevealed, no static path, unknownexposed / weakly_exposed / reachable_unrevealed / no_static_path / infection_unknown / propagation_unknown / static_unknownconservative static-exposure labels — ripr does not use mutation-runtime words such as killed or survived outside calibration reports
ripr's view of how well a behavior is testedgrip (seam-grip class)seam-native classification across the five RIPR stages, surfaced as SeamGripClass in JSON
identity for a behavior gap (so it does not move when line numbers change)canonical gap identityhash of owner / kind / flow sink / missing discriminator / assertion shape used by ledgers, baselines, and gate comparison
PR review summarypr-review front-panel / report packet indexcomposed advisory CI artifact summarizing PR guidance, first useful action, assistant proof, ledger, baseline, gate, calibration, coverage/grip, and receipt
agent proof statusassistant-loop healthadvisory summary of existing assistant proof reports
receipt for a focused testagent receiptprovenance plus bounded next-action guidance for one focused test
under-the-hood modelRIPR: Reachability, Infection, Propagation, Revealabilitythe four stages ripr evaluates statically per probe / seam

Where the precise vocabulary lives

The internal terms are stable in:

Renaming the public-facing copy of any of these terms does not rename the JSON field, status ID, command, schema, or spec it maps to.

When to use which

Use the plain-language column in:

  • the marketplace storefront and editors/vscode/README.md,
  • the root README.md first screen,
  • Quickstart,
  • Editor extension status copy and first-use steps,
  • generated CI advisory summary headings (work in progress).

Use the internal column in:

  • docs/specs/**,
  • docs/OUTPUT_SCHEMA.md,
  • metrics, fixtures, and report schemas,
  • implementation docs and campaign notes,
  • CHANGELOG.md entries that describe internal contracts.

Linking this page from a spec is unnecessary — specs are already the authority on internal terms.