Skip to content

Remove check surface-routing; bind checks to prose via source#202

Draft
nahiyankhan wants to merge 1 commit into
ghost/12-inventory-lensfrom
ghost/13-checks-no-routing
Draft

Remove check surface-routing; bind checks to prose via source#202
nahiyankhan wants to merge 1 commit into
ghost/12-inventory-lensfrom
ghost/13-checks-no-routing

Conversation

@nahiyankhan

Copy link
Copy Markdown
Collaborator

What

Removes check surface-routing and replaces the check↔graph link with a soft source: pointer.

In the agent-check flow, every check always fires — the agent judges relevance. So the routing gate that surface: fed had no live consumer. This removes:

  • the check surface: frontmatter field
  • selectChecksForSurfaces, RoutedCheck, CheckRelevance (public exports)
  • route.ts and check-route.test.ts

review and checks now offer every check; --surface survives but only grounds the named surfaces (feeds resolveGraphSlice), never filters.

Adds an optional source: pointer on the check — node > Heading (e.g. checkout/payment > Confirmation) — the check's only binding to the graph. review surfaces it (— enforces ...) so a finding can cite the prose it enforces. Soft by design: an unresolved source: is a warning, never an error (OKF-style tolerance), mirroring Vercel's Source: copy.md > Actionable.

Why

This branch is the tail of a triage (recorded in docs/ideas/composition-graph-gaps.md) that evaluated three proposed schema additions against a single lens — does this earn schema an LLM doesn't need? Two were rejected (typed edges, anchors[]); the third (surface: path-routing) was superseded by deleting routing entirely once it became clear checks always fire.

Net: −152 lines, one subsystem removed, one small soft pointer added.

Breaking

major — removes public exports (selectChecksForSurfaces, RoutedCheck, CheckRelevance) and the check surface: field. Changeset included.

Verification

build ✓ · 115 tests ✓ · biome ✓ · typecheck ✓ · CLI manifest in sync ✓ · terminology ✓

Checks always fire in the agent-check flow, so the routing gate had no
live consumer. Remove the check surface: field, selectChecksForSurfaces,
RoutedCheck, and CheckRelevance. review/checks now offer every check and
the agent judges relevance; --surface only grounds the named surfaces.

Add an optional check source: pointer (node > Heading) — the check's only
binding to the graph — which review surfaces so a finding can cite the
fingerprint prose it enforces. Soft: an unresolved source is a warning.

Records the full triage (Gaps 1-3, OKF/Vercel lens) in
docs/ideas/composition-graph-gaps.md.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant