diff --git a/.husky/pre-commit b/.husky/pre-commit index 7c1a7fad..bd56732a 100755 --- a/.husky/pre-commit +++ b/.husky/pre-commit @@ -18,9 +18,18 @@ else fi # fallow — block the commit on new findings in the changes you're staging. -# --health-baseline grandfathers the same known-complex functions CI does -# (.github/workflows/fallow.yml), so editing a file that merely CONTAINS a -# pre-existing god-function doesn't false-RED; genuinely new complexity (not in -# the baseline) still blocks. Keeps local === CI. +# Keep both commands aligned with .github/workflows/fallow.yml: audit catches +# dead code/duplication and the dedicated production health pass enforces the +# same complexity threshold that gates pull requests. The staged diff keeps +# unrelated working-tree edits out of the line-level verdict. echo "› fallow" -npx fallow audit --base HEAD --health-baseline .fallow/health-baseline.json +FALLOW_STAGED_DIFF="$(mktemp)" +trap 'rm -f "$FALLOW_STAGED_DIFF"' EXIT HUP INT TERM +git diff --cached --unified=0 -- . > "$FALLOW_STAGED_DIFF" +npx --no-install fallow audit --base HEAD --health-baseline .fallow/health-baseline.json +npx --no-install fallow health \ + --production \ + --baseline .fallow/health-baseline.json \ + --changed-since HEAD \ + --diff-file "$FALLOW_STAGED_DIFF" \ + --fail-on-issues diff --git a/CHANGELOG.md b/CHANGELOG.md index b7d1d149..a81c4943 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,16 @@ this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm ## [Unreleased] +### Fixed + +- **Report-only correspondence can no longer erase reviewable certification + evidence and render a false “all surfaces identical” result.** If unique path + pairing collapses every presentation finding while the raw differ still has + reviewable DOM/style/state evidence, `reportConsistency` now fails closed as + `presentation_collapsed_while_raw_reviewable`. The report explains the + contradiction and the Action maps it to `CERTIFICATION_FAILED`, which visual + approval cannot clear. + ## [4.7.5] - 2026-08-06 ### Fixed diff --git a/README.md b/README.md index f7f5d587..7e52f4c8 100644 --- a/README.md +++ b/README.md @@ -1087,7 +1087,7 @@ Non-visual and framework-injected elements (``/`