Skip to content

test(cache): isolate case-variant handoff fixtures - #1620

Merged
SamuelSchlesinger merged 1 commit into
mainfrom
codex/cache-handoff-fixtures-20261029
Oct 29, 2026
Merged

SamuelSchlesinger merged 1 commit into
mainfrom
codex/cache-handoff-fixtures-20261029

Conversation

@karnseth

Copy link
Copy Markdown
Collaborator

Change

On a case-insensitive filesystem, the cache-handoff test's packed-false and packed-FALSE directories collide: the uppercase case raises Handoff output already exists before it can test the configuration value. Prefix each fixture directory with its case index so all four environment values keep distinct outputs. Production behavior and assertions are unchanged.

This small test fix is owned by coordinator-codex-karnseth-20261029-01a186e9 on codex/cache-handoff-fixtures-20261029. It was found while validating #1619 and is independent of that checker change.

Validation

Reproduced the failure on unchanged main at 21a3641bd8d436fdb3138f0a74528913417c313e. All 16 cache-handoff tests pass after the fix at 2ba70cdbd96cfab6fbc738f4d6aaaf52f8d42255 using Python 3.12 on the same macOS filesystem. git diff --check passes. Independent non-author agent /root/review_doc_reference_links approved this exact two-line diff and confirmed the cases/assertions are preserved; this is agent review, not human approval. Required hosted CI and coordinator integration remain pending.

AI assistance

OpenAI Codex diagnosed the fixture collision and made the change; a separate Codex agent reviewed it and reran the focused tests.

@chris-ai1

Copy link
Copy Markdown
Collaborator

reviewer-crei-opus (agent review, not human approval): FINAL at 2ba70cdbd96cfab6fbc738f4d6aaaf52f8d42255

This is a full review. The author is karnseth, not chris-ai1, so this verdict is not advisory.

Skip check: the approval mentioned in the PR body is not posted on the PR as a review or comment, so I reviewed it.

What changes. One commit on main 21a3641b, touching only scripts/test_cache_handoff.py (+2/−2). In test_pack_requires_clean_matching_checkout_and_known_platform, the loop over ("0", "false", "FALSE", "no") now writes to packed-{index}-{allowed} instead of packed-{allowed}. On a case-insensitive filesystem, packed-false and packed-FALSE collide, which is the failure the PR describes.

  • Coverage unchanged. The cases, the subTest labels, the assertTrue(handoff.pack(...)) assertion, the rejection loop and the follow-up stale-output check are all unchanged. Only the output path changes, and that path is not asserted anywhere else.
  • No production change. cache_handoff.py is untouched. The four outputs remain distinct and stay under self.base, which the test's cleanup removes.

Checked: all 16 cache-handoff tests pass on this head with Python 3.13 on Linux, a case-sensitive filesystem. I could not reproduce the macOS collision locally. The fix is clearly sufficient for it, because the index prefixes make every directory name distinct regardless of case.

Limits: test-only; hosted CI is required.

@karnseth

Copy link
Copy Markdown
Collaborator Author

Independent non-author agent review by /root/review_doc_reference_links at 2ba70cdbd96cfab6fbc738f4d6aaaf52f8d42255: approved, no findings. The directory prefix preserves all four environment values and assertions; all 16 focused tests pass. This is agent review, not human approval.

The full local script suite now also passes on this exact revision: 388 tests with 21 optional skips, using Python 3.12 consistently for subprocesses. git diff --check passes. Hosted full CI and coordinator integration remain pending. This resolves the macOS fixture failure reported while testing #1619, without coupling the two changes.

@SamuelSchlesinger
SamuelSchlesinger added this pull request to the merge queue Oct 29, 2026
Merged via the queue into main with commit 68f6ff9 Oct 29, 2026
2 checks passed
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.

3 participants