Skip to content

test(review): block #1819/#1915 acceptance until the evidence foundation ships - #276

Open
Alan-TheGentleman wants to merge 2 commits into
feat/wave1-diagnostics-recoveryfrom
feat/wave1-acceptance-evidence
Open

test(review): block #1819/#1915 acceptance until the evidence foundation ships#276
Alan-TheGentleman wants to merge 2 commits into
feat/wave1-diagnostics-recoveryfrom
feat/wave1-acceptance-evidence

Conversation

@Alan-TheGentleman

Copy link
Copy Markdown
Collaborator

Final slice of Wave 1, stacked on #275. Completes #2028 host behavior.

This PR intentionally adds one failing test. Please do not silence it.

The final-acceptance check for #1819 and #1915 runs against the foundation's evidence harness, which lives in the sibling change consume-gentle-ai-release-artifacts and has not shipped into this repository yet.

Absent qualifying evidence must block. A silent skip would record a false success for behavior nobody verified — the exact failure this spec exists to prevent. So the test fails, loudly, with a message that explains it is the correct fail-closed state, names the two conditions that turn it green, and asks the reader not to add a skip or delete it.

It fails in both directions: if the harness is missing it fails saying so, and if the harness appears but the real check has not been wired, it fails demanding that work. It cannot pass by accident.

Its failure is scoped to itself via a dynamic import rather than a top-level one, so it does not abort the rest of the file.

Confirmed the only intentional failure Wave 1 adds: the suite reports 1062 pass and 4 fail — this one plus the three pre-existing receipt-driven-development-disabled failures, byte-identical to the pre-W3 baseline.

Pi asserts outcomes. It never rebuilds provider algorithms.

#1819 and #1915 are provider-owned: corrected-delivery topology and receipt discovery, retry-successor authority and evidence-graph validation. A static guard proves Wave 1 introduced no delivery-topology or authority-graph symbols into lib/ or extensions/.

The guard scans declaration sites only, not bare substrings, because a naive scan false-positived on two legitimate strings: a --squash git-commit flag in an allowlist, and an echoed provider capability name. Matching those would have made the guard noise.

#2074 and #910 are proven by asserting absence

Prose cannot fail, and a fixture would manufacture the false coverage claim the plan warns about. So the tests assert the surfaces genuinely do not exist: no Claude user-registry write path, no PowerShell fallback ladder, no fixture or journey named for either issue, and the coverage enumeration lists both as no-action rather than as covered.

All passed on first run. The surfaces really are absent.

The receipt-driven-development boundary is asserted, not assumed

Global and effective mode is checked as off before and after the file runs, against the real installed binary rather than a fake, and delivery evidence reports disabled/unmanaged.

Rollback

Delete the two new files. Nothing depends on them, and the foundation harness is untouched because it does not exist here.

…no-action absence

Wave 1's final work unit (W3). Adds tests/native-review-parity-issue-evidence.test.ts
and its pure support module tests/support/provider-behavior-evidence.ts:

- evaluateProviderBehaviorAssertion: a pure evaluator proving Pi asserts only
  transport and outcome for #1819 (corrected-delivery topology) and #1915
  (retry-successor authority) -- both provider-owned. A development/bootstrap
  evidence class never reaches "pass"; absent evidence always reports
  blocked, naming consume-gentle-ai-release-artifacts as the missing
  dependency; a mutable-build evidence class is refused at runtime, not only
  by the TS union type.
- The #1819/#1915 final-acceptance test against the real foundation harness
  (tests/evidence/**, not present in this repository yet) is DELIBERATELY
  FAILING. This is the correct fail-closed state for "Qualifying evidence
  absent at verification" -- there is no test.skip, no early return, and no
  swallowed exception. Its failure message explains why the red result is
  correct and exactly what has to ship before it turns green.
- scanForReconstructionSymbols: a static guard proving lib/ and extensions/
  declare no delivery-topology or authority-graph symbol. It scans
  declaration sites only (function/class/interface/type/const/let/enum
  names), not bare substrings, so it does not false-positive on the two
  pre-existing legitimate occurrences of "squash" (a --squash git commit
  flag) and "receipt_discovery" (an echoed provider capability name).
- #2074 (Claude user-registry migration) and #910 (PowerShell fallback
  ladder) are proven no-action by asserting the surfaces genuinely do not
  exist in lib/, extensions/, or scripts/, that no other test file names
  either issue, and that the Wave 1 coverage enumeration lists both as
  no-action rather than as passing fixtures.
- The RDD boundary is asserted at both the start and the end of this file's
  run against the real installed binary: global/effective mode stays off,
  and review validate's delivery evidence reports disabled/unmanaged.

pnpm test: 1067 tests, 1062 pass, 4 fail (the 3 pre-existing RDD-off
failures in tests/native-review-parity-runtime.test.ts, unchanged from
baseline, plus this file's one deliberately-failing acceptance test).
All 11 W3 tasks (W3.1-11) checked off. Wave 1 (#2028 Pi-host behavior) is
now complete: W1 (capture/admission/transport), W2 (diagnostics/relaunch/
lost-output/cleanup), and W3 (evidence consumption + no-action assertions)
are all implemented.
@coderabbitai

coderabbitai Bot commented Aug 1, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 0c7a8f14-0fc8-43a1-83d9-297304968c48

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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