Skip to content

fix(tools): retain conflict markers around invalid UTF-8 - #2129

Open
j0s3lu1555 wants to merge 2 commits into
limitlessprojects:mainfrom
j0s3lu1555:main
Open

j0s3lu1555 wants to merge 2 commits into
limitlessprojects:mainfrom
j0s3lu1555:main

Conversation

@j0s3lu1555

@j0s3lu1555 j0s3lu1555 commented Oct 28, 2026 •

Copy link
Copy Markdown

Conflict-marker scans currently return an empty result if any byte in a scanned file fails UTF-8 decoding. A file containing ordinary ASCII conflict markers plus an unrelated malformed byte therefore looks clean.

Decode with replacement in both readers so the structural marker lines remain available to the existing scanner. Add regressions for malformed bytes before and after a marker block, a workflow structural check preceded by a malformed byte, and controls for marker-free text and out-of-scope binary files. The scanner remains a heuristic; this does not make a claim about compiler acceptance or security.

Closes #2124.

Validation: 30 focused conflict-marker tests pass; the test-registration guard and the conflict-marker guard pass. The expanded focused suite reproduced three failures before the fix. Base revision: 1f0ff978f4deff78c77bca96db0e3e46f32de71b. The full compiler/runtime pipeline also passed on the fork’s standard Ubuntu runners: CI run 40703957271, commit ddf076593772adb24e7a91b2ebefb2b6b9bf289a (both quick and compiler successful). That includes the workspace tests, checker corpus, differential loop, runtime hygiene and end-to-end examples. These broader checks ran in the fork, not on the memory-constrained Mac. Upstream CI approval, review and merge remain the maintainer’s decision.

AI-assisted contribution by Jose’s Codex assistant, submitted through the existing authorized account.

@j0s3lu1555
j0s3lu1555 marked this pull request as ready for review October 28, 2026 14:30
@github-actions github-actions Bot added bot:land-candidate Shepherd: fresh, gate-clean, verifiable (set from classify()) bot:stale-base Shepherd: behind main beyond threshold labels Oct 30, 2026
@github-actions github-actions Bot added the bot:conflict Shepherd: merge conflicts vs main label Oct 31, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bot:conflict Shepherd: merge conflicts vs main bot:land-candidate Shepherd: fresh, gate-clean, verifiable (set from classify()) bot:stale-base Shepherd: behind main beyond threshold

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Tooling] Invalid UTF-8 makes conflict-marker scans silently discard ASCII evidence

1 participant