Skip to content

test(integrity-guard): pin the recursive merge-integrity and renumber guards - #98

Open
49115566 wants to merge 4 commits into
mainfrom
test/0015-recursive-workflow-guards+0004-recursive-integrity-guard
Open

49115566 wants to merge 4 commits into
mainfrom
test/0015-recursive-workflow-guards+0004-recursive-integrity-guard

Conversation

@49115566

Copy link
Copy Markdown
Owner

Summary

Adds a committed, fixture-based agreement area (tests/checks/91-integrity-guard.sh, suite token AC30) that pins the recursive merge-integrity invariant set and the recursive renumbering procedure at every node, with fixtures under tests/fixtures/recursive-integrity/. Ref: 0015-recursive-workflow-guards/0004-recursive-integrity-guard.

Changes

  • New area tests/checks/91-integrity-guard.sh — a genuine recursive scan (the top level and every decomposing node independently) with named sub-areas per-node-eval, structural-graph, spelling-drift, report-only, renumber-sweep, fixture-existence, read-only-contract, mutation-staging, no-duplication.
  • New fixture root tests/fixtures/recursive-integrity/ — a depth-three tree, a colliding grandchild, graph faults (MISSING-CHILD, UNLISTED-CHILD, DANGLING-DEP) with a deliberate withdrawal, dual manifest spellings, and a completed whole-subtree renumber.
  • Renamed the area off the collided 89- stem (sibling 89-recursive-status-guards.sh on main) to the free 91- stem; the AC30 token and sub-area labels are unchanged.
  • Narrowed tests/checks/80-cycle-fixture.sh AC13 whole-set alias assertion to exclude only the documented deliberate drift fixture, keeping any stray third alias fatal.
  • Added the new fixture root to tests/mutation.sh stage_copy().

Testing

  • bash tests/run.sh -> 727 passed, 0 failed, 0 skipped
  • Acceptance criteria covered: AC1–AC12 (see verify.md)

Conflict detection

  • Committed-ref dry-run (git merge-tree --write-tree --name-only HEAD origin/main) reported no conflicted paths: HEAD was an ancestor of origin/main.
  • Item-side overlap with origin/main: [TEXTUAL-CONFLICT] (a) tests/mutation.sh — both branches append a line to stage_copy().
  • No class (b) work/ artifact conflict, no class (c) sequence collision, no class (d) drift.

Reconcile

  • Result: reconciled (merge-forward, one class (a) conflict)
  • Resolved paths:
    • tests/mutation.sh — unioned both staged-copy lines (recursive-structure from origin/main, recursive-integrity from this item); neither side dropped.
  • Re-verification: bash tests/run.sh -> 727 passed, 0 failed, 0 skipped; post-merge integrity pass found no duplicate prefix, no per-parent MMMM collision, and no manifest graph fault.

Risks

  • The AC8 committed sensitivity (a registered mutation job) is deferred to 0005-guard-registration-sweep by design; sensitivity was confirmed in a scratch copy (verify.md M8). Documented residual.

Artifacts

  • Spec: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard/spec.md
  • Design: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard/design.md
  • Verification: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard/verify.md
  • Review: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard/review.md

…tegrity fixture

The recursive-integrity fixture deliberately carries a second roadmap.md (9203-spelling-both) to exercise manifest-spelling drift, which the AC13 whole-set assertion previously rejected. The assertion now excludes only that documented path and keeps exact-equality against the retained cyclic alias, so any stray third alias still fails.

Refs: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard
… guards

Add the AC30 agreement area tests/checks/91-integrity-guard.sh with committed fixtures under tests/fixtures/recursive-integrity/: a depth-three tree, nested graph faults, manifest-spelling drift, a deepest-level duplicate, and a completed whole-subtree renumber whose old reference appears nowhere. Rename the area off the collided 89- stem to the free 91- stem and stage the new fixture root in tests/mutation.sh.

Refs: work/0015-recursive-workflow-guards/0004-recursive-integrity-guard
…-workflow-guards/0004-recursive-integrity-guard

Commit the item's tasks, backtracks, verification, and review artifacts alongside the tests so the paths linked from the pull request resolve on the branch.
…orkflow-guards+0004-recursive-integrity-guard

# Conflicts:
#	tests/mutation.sh
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