fix(ci): enforce compile-fail diagnostic contract#1053
Draft
agourakis82 wants to merge 2 commits into
Draft
Conversation
Contributor
|
CI Watch: GREEN Run: 29554999248 Next action: All selected checks passed; ready for merge subject to repository policy. This watcher observes CI only. It cannot merge, edit code, or decide scientific semantics. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
//@ error-patternin the v2 compile-fail runner.Fixes #444.
Root Cause
The v2 runner's error-pattern extraction regex left the pattern list empty. It also reset every non-timeout nonzero compile status to success, so an exit 139 SIGSEGV could satisfy a compile-fail fixture even when no compiler diagnostic had been validated.
Validation
bash scripts/ci/compile_fail_harness_contract_gate.shbash scripts/dev/check_workflow_script_refs.shbash -n scripts/dev/run_sio_test_suite_v2.shbash -n scripts/ci/compile_fail_harness_contract_gate.shpython3 -c 'import yaml; yaml.safe_load(open(".github/workflows/ci.yml", encoding="utf-8")); print("ci.yml parsed")'SOUNIO_TEST_JOBS=1 bash scripts/run_sio_test_suite.sh --filter-exact parser_rust_let_mut.sio --verbose --jobs 1git diff --checkResidual Diagnostic Backlog
The first remote full-suite run exposed 27 compile-fail/UI fixtures whose stage2-native compiler output does not contain their declared diagnostic text. They are now explicit xfails in
tests/known_failures/hardened_diagnostics_full_suite.txt; the harness remains strict and must not be weakened to make them pass.Blocker Record