Skip to content

fix(test): characterization fixture copy ignores polluted README_AI (#135 residual) - #170

Merged
dreamlx merged 1 commit into
masterfrom
fix/135-char-fixture-pollution
Aug 15, 2026
Merged

fix(test): characterization fixture copy ignores polluted README_AI (#135 residual)#170
dreamlx merged 1 commit into
masterfrom
fix/135-char-fixture-pollution

Conversation

@dreamlx

@dreamlx dreamlx commented Aug 15, 2026

Copy link
Copy Markdown
Owner

Problem

#135 was closed by #136 (option 2: gitignore tests/fixtures/char_graphbuffer/**/README_AI.md), which stops the pollution from being committed — but not from existing on local disk. A repo-root scan-all still regenerates those READMEs; being gitignored they are invisible to git status, yet test_graphbuffer_baseline._copy_fixture copytrees them into the scan target. GH #38's enrichment-preserve logic then carries the stale <!-- enrichment: ok --> marker across the structural rewrite → golden drift in structural_readmes.txt / enrich_prompts.txt.

Net effect: CI green, local permanently red (CI checkouts have no untracked files). This is the same failure observed pre-existing during PR #169's full-suite run.

Fix

One line: the fixture copy ignores README_AI.md — the characterization test now owns its pristine-input guarantee instead of depending on what a developer last ran.

shutil.copytree(FIXTURE, proj, ignore=shutil.ignore_patterns("README_AI.md"))

Also removed the 4 polluted READMEs from local disk (they were untracked/gitignored, so no repo change).

Verification

  • pytest tests/characterization/ → 4 passed (previously 2 failed)
  • Full suite → 1779 passed, 13 skipped (the 2 pre-existing failures are gone)

Re-lands the residual of #135.

…135 residual)

Repo-root scan-all generates README_AI.md inside tests/fixtures/
char_graphbuffer/ (gitignored by #136, but still on local disk). The
characterization copytree carried them into the scan; GH #38's
enrichment-preserve logic kept the stale '<!-- enrichment: ok -->'
markers across the structural rewrite and drifted the goldens. CI was
green (clean checkout has no untracked files) while local runs failed
permanently. ignore_patterns in the fixture copy makes the test own its
pristine-input guarantee.
@dreamlx
dreamlx merged commit 18e7863 into master Aug 15, 2026
8 checks passed
@dreamlx
dreamlx deleted the fix/135-char-fixture-pollution branch August 15, 2026 14:32
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