fix(tests): repair the bootstrap fixture to a clean scan (todo.bootstrap-fixture-repair-or-delete) - #535
Conversation
|
Warning Review limit reached
Next review available in: 45 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (29)
📝 WalkthroughSummary by CodeRabbit
WalkthroughThe bootstrap fixture is converted to a declaration-only corpus that scans clean. Contracts, provenance records, maps, gate assertions, and warning-mode tests are updated, while related todo statuses document the completed repair and reopened evaluation work. ChangesBootstrap fixture repair
Estimated code review effort: 3 (Moderate) | ~25 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
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. Comment |
There was a problem hiding this comment.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md (1)
3-19: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winUpdate the completed todo’s stale context.
After this repair, the six contracts resolve and the clean-scan gate expects zero missing-contract findings. Rewrite the “currently” statements as historical context or add a completion note so the
donetodo no longer describes the pre-repair state as present.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md` around lines 3 - 19, Update the completed todo’s Context section to describe the six unresolved contracts and CAIRN_CONTRACT_MISSING findings as historical pre-repair state, or add a clear completion note stating that all six now resolve and the clean scan reports zero missing-contract findings. Preserve the existing completion criteria and contract references.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@tests/fixtures/cairn-bootstrap/meta/contracts/kernel/cli.md`:
- Line 16: In the CLI error-handling statement in cli.md, replace the incorrect
phrase “at a user” with “to a user,” preserving the rest of the wording
unchanged.
In `@tests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.md`:
- Around line 17-41: Update the decision record’s prose to describe the
declaration-only fixture and its repaired map with paths: [] rather than
claiming modules reconcile real src/ directories; revise the contract
consequence to acknowledge the contracts added by this PR, and rename every
dec.dsl-as-current-state reference to dec.blueprint-as-current-state. Replace
new DSL/.dsl terminology with blueprint/.blueprint while preserving the intended
taxonomy and module-name changes.
In `@tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md`:
- Around line 30-35: Restore the required machine-readable provenance in the
frontmatter of tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md
(lines 30-35) by adding informed_by: [src.review-adversarial-1], and in
tests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.md (lines
35-42) by adding informed_by: [res.related-work-survey,
src.review-adversarial-1].
---
Outside diff comments:
In `@tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md`:
- Around line 3-19: Update the completed todo’s Context section to describe the
six unresolved contracts and CAIRN_CONTRACT_MISSING findings as historical
pre-repair state, or add a clear completion note stating that all six now
resolve and the clean scan reports zero missing-contract findings. Preserve the
existing completion criteria and contract references.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 48fc1715-a2a2-4b91-9e4c-3c00d3b963ea
📒 Files selected for processing (28)
AGENTS.mdmeta/decisions/bootstrap-fixture-corpus-split.mdmeta/research/bootstrap-fixture-repair.mdmeta/sources/pr-528-w10-ratification.mdmeta/todos/todo.blueprint-authorability-eval.mdmeta/todos/todo.bootstrap-fixture-repair-or-delete.mdmeta/todos/todo.example-corpus-scan-assertions.mdtests/examples_gate.rstests/fixtures/cairn-bootstrap/cairn-with-demo.blueprinttests/fixtures/cairn-bootstrap/cairn.blueprinttests/fixtures/cairn-bootstrap/expected-findings.jsontests/fixtures/cairn-bootstrap/map.jsontests/fixtures/cairn-bootstrap/map.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/artefacts.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/changes.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/cli.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/hooks.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/query.mdtests/fixtures/cairn-bootstrap/meta/contracts/summariser.mdtests/fixtures/cairn-bootstrap/meta/decisions/blueprint-as-current-state.mdtests/fixtures/cairn-bootstrap/meta/decisions/change-directories.mdtests/fixtures/cairn-bootstrap/meta/decisions/contradiction-classes.mdtests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.mdtests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.mdtests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.mdtests/fixtures/cairn-bootstrap/meta/research/related-work-survey.mdtests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.mdtests/phase_7_7_ux_foundation.rs
💤 Files with no reviewable changes (1)
- tests/fixtures/cairn-bootstrap/expected-findings.json
|
|
||
| - **Input.** A parsed argument vector naming one subcommand and its flags. | ||
| - **Output.** Human-readable text on stdout by default; stable JSON under `--json`. Exit code 0 on success, non-zero when a blocking condition is found. | ||
| - **Errors.** Unknown subcommands, unresolvable ids, and missing files report a single actionable message; the CLI never prints a stack trace at a user. |
There was a problem hiding this comment.
📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Correct the user-facing wording.
Change “the CLI never prints a stack trace at a user” to “the CLI never prints a stack trace to a user.”
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@tests/fixtures/cairn-bootstrap/meta/contracts/kernel/cli.md` at line 16, In
the CLI error-handling statement in cli.md, replace the incorrect phrase “at a
user” with “to a user,” preserving the rest of the wording unchanged.
|
|
||
| ## Provenance | ||
|
|
||
| Informed by the adversarial structural review `src.review-adversarial-1` | ||
| (meta/sources/review-adversarial-1.md), cited in prose because meta/sources/ | ||
| stays unclaimed by the blueprint (see the cairn.blueprint header note). |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
Restore machine-readable provenance links in both decisions.
The prose citations do not satisfy the repository’s required informed_by evidence contract.
tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md#L30-L35: restoreinformed_by: [src.review-adversarial-1]in frontmatter.tests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.md#L35-L42: restoreinformed_by: [res.related-work-survey, src.review-adversarial-1]in frontmatter.
📍 Affects 2 files
tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md#L30-L35(this comment)tests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.md#L35-L42
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md` around lines 30
- 35, Restore the required machine-readable provenance in the frontmatter of
tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md (lines 30-35) by
adding informed_by: [src.review-adversarial-1], and in
tests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.md (lines
35-42) by adding informed_by: [res.related-work-survey,
src.review-adversarial-1].
Source: Coding guidelines
There was a problem hiding this comment.
Caution
Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.
Actionable comments posted: 3
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md (1)
3-19: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winUpdate the completed todo’s stale context.
After this repair, the six contracts resolve and the clean-scan gate expects zero missing-contract findings. Rewrite the “currently” statements as historical context or add a completion note so the
donetodo no longer describes the pre-repair state as present.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md` around lines 3 - 19, Update the completed todo’s Context section to describe the six unresolved contracts and CAIRN_CONTRACT_MISSING findings as historical pre-repair state, or add a clear completion note stating that all six now resolve and the clean scan reports zero missing-contract findings. Preserve the existing completion criteria and contract references.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@tests/fixtures/cairn-bootstrap/meta/contracts/kernel/cli.md`:
- Line 16: In the CLI error-handling statement in cli.md, replace the incorrect
phrase “at a user” with “to a user,” preserving the rest of the wording
unchanged.
In `@tests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.md`:
- Around line 17-41: Update the decision record’s prose to describe the
declaration-only fixture and its repaired map with paths: [] rather than
claiming modules reconcile real src/ directories; revise the contract
consequence to acknowledge the contracts added by this PR, and rename every
dec.dsl-as-current-state reference to dec.blueprint-as-current-state. Replace
new DSL/.dsl terminology with blueprint/.blueprint while preserving the intended
taxonomy and module-name changes.
In `@tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md`:
- Around line 30-35: Restore the required machine-readable provenance in the
frontmatter of tests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.md
(lines 30-35) by adding informed_by: [src.review-adversarial-1], and in
tests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.md (lines
35-42) by adding informed_by: [res.related-work-survey,
src.review-adversarial-1].
---
Outside diff comments:
In `@tests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.md`:
- Around line 3-19: Update the completed todo’s Context section to describe the
six unresolved contracts and CAIRN_CONTRACT_MISSING findings as historical
pre-repair state, or add a clear completion note stating that all six now
resolve and the clean scan reports zero missing-contract findings. Preserve the
existing completion criteria and contract references.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro Plus
Run ID: 48fc1715-a2a2-4b91-9e4c-3c00d3b963ea
📒 Files selected for processing (28)
AGENTS.mdmeta/decisions/bootstrap-fixture-corpus-split.mdmeta/research/bootstrap-fixture-repair.mdmeta/sources/pr-528-w10-ratification.mdmeta/todos/todo.blueprint-authorability-eval.mdmeta/todos/todo.bootstrap-fixture-repair-or-delete.mdmeta/todos/todo.example-corpus-scan-assertions.mdtests/examples_gate.rstests/fixtures/cairn-bootstrap/cairn-with-demo.blueprinttests/fixtures/cairn-bootstrap/cairn.blueprinttests/fixtures/cairn-bootstrap/expected-findings.jsontests/fixtures/cairn-bootstrap/map.jsontests/fixtures/cairn-bootstrap/map.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/artefacts.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/changes.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/cli.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/hooks.mdtests/fixtures/cairn-bootstrap/meta/contracts/kernel/query.mdtests/fixtures/cairn-bootstrap/meta/contracts/summariser.mdtests/fixtures/cairn-bootstrap/meta/decisions/blueprint-as-current-state.mdtests/fixtures/cairn-bootstrap/meta/decisions/change-directories.mdtests/fixtures/cairn-bootstrap/meta/decisions/contradiction-classes.mdtests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.mdtests/fixtures/cairn-bootstrap/meta/decisions/stable-ids.mdtests/fixtures/cairn-bootstrap/meta/decisions/two-chain-authority.mdtests/fixtures/cairn-bootstrap/meta/research/related-work-survey.mdtests/fixtures/cairn-bootstrap/meta/todos/todo.backfill-contracts.mdtests/phase_7_7_ux_foundation.rs
💤 Files with no reviewable changes (1)
- tests/fixtures/cairn-bootstrap/expected-findings.json
🛑 Comments failed to post (1)
tests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.md (1)
17-41: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick win
Align this decision with the declaration-only fixture.
Lines 17-19 and 23-40 say fixture modules reconcile real
src/paths, but the repaired map deliberately haspaths: []. Line 41 also says kernel contracts are missing, although this PR adds them. Update this record to describe the declaration-only corpus, and renamedec.dsl-as-current-statetodec.blueprint-as-current-state.As per coding guidelines, use
blueprintand.blueprint, notDSLand.dsl, in new prose and identifiers.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@tests/fixtures/cairn-bootstrap/meta/decisions/module-path-mapping.md` around lines 17 - 41, Update the decision record’s prose to describe the declaration-only fixture and its repaired map with paths: [] rather than claiming modules reconcile real src/ directories; revise the contract consequence to acknowledge the contracts added by this PR, and rename every dec.dsl-as-current-state reference to dec.blueprint-as-current-state. Replace new DSL/.dsl terminology with blueprint/.blueprint while preserving the intended taxonomy and module-name changes.Source: Coding guidelines
a20d7b8 to
33ce67e
Compare
…rap-fixture-repair-or-delete) Executes the maintainer-ratified REPAIR verdict (PR #528 sheet W10): flatten the nested pointer directories into flat slug-named decisions and research, drop the nine phantom src/* paths (declaration-only corpus), populate the six missing contracts, delete the expected-findings.json burn-down, and fold the bootstrap case in tests/examples_gate.rs into a direct clean-scan assertion. The fixture's evidence corpus (meta/sources/, meta/research/) stays deliberately unclaimed so the smoke-test corpus premise holds; the corpus split is recorded in dec.bootstrap-fixture-corpus-split (proposed) with evidence in res.bootstrap-fixture-repair. The two scan --strict exit-code tests own an inline warning-only project instead of borrowing fixture dirt. Success criterion: a temp-copy scan of tests/fixtures/cairn-bootstrap reports zero findings, asserted by test_bootstrap_fixture_scans_clean; fixtures_smoke stays green; the root scan gains no finding.
33ce67e to
3ad5fb3
Compare
Executes the maintainer-ratified REPAIR verdict (PR #528 sheet W10) for
todo.bootstrap-fixture-repair-or-delete.What changed
cairn.blueprint,cairn-with-demo.blueprint): nested per-moduledecisions/researchpointer directories replaced by System-level flat pointers; the nine phantomsrc/*paths dropped (declaration-only corpus); header documents the deliberate evidence-corpus split.dec.dsl-as-current-state.mdrenamed toblueprint-as-current-state.mdto match itsid:); provenance kept in prose where machine refs could not stay resolvable.todo.backfill-contractsprop; two fixture decisions extended to anchorcairn.kernel.cliandcairn.summariser(clearsCAIRN_PROVENANCE_NO_DECISION).meta/sources/(smoke-test corpus premise,todo.artefact-filename-test-fixtures) andmeta/research/(a loaded research artefact must cite loaded sources) gain no pointer; recorded as proposeddec.bootstrap-fixture-corpus-splitwith evidence inres.bootstrap-fixture-repairand sourcesrc.pr-528-w10-ratification.expected-findings.jsondeleted;test_bootstrap_fixture_scans_cleanasserts an empty finding set on a temp copy. Helper split intoscan_fixture_copy+assert_scan_matches_baseline(demo keeps its[]baseline).scan --strictexit-code tests inphase_7_7_ux_foundation.rsbuild an inline warning-only project (CAIRN_RECONCILE_LANGUAGE_UNKNOWN, verified: one Warning, strict exit 1, plain exit 0) instead of borrowing fixture dirt.todo.example-corpus-scan-assertionsclosed done (its close condition landed here);todo.blueprint-authorability-evalopened with the substrate constraint; AGENTS.md fixture row updated (still 'may lag', no longer 'only smoke-parsed').Verification
cairn --file tests/fixtures/cairn-bootstrap/cairn.blueprint scan --json); demo variant surfaces exactly its two intended demonstrators.cargo test --test examples_gate --test fixtures_smoke: green (acceptance).cargo test: green;cargo clippy --all-targets --all-features -- -D warnings: clean.cairn scan --strictexit 0,cairn hook allexit 0; root finding set identical to pre-unit state (no new finding).