Problem
repo_tests/test_ci_import_smoke_paths_14252.py::test_every_extracted_program_parses
fails on Dev_new_gui at 14b7e6be5, before any local change:
AssertionError: inline python that the extractor could not parse — its imports
are checked against nothing:
[('phase_validation.yml', 'import json; r=json.load(open("phase_validation_results.json')]
The extractor pulls inline Python out of workflow YAML so its imports can be
checked. One program in phase_validation.yml is truncated mid-literal by the
extraction, so it does not parse — and an unparseable program has its imports
checked against nothing, which is the failure mode this assertion exists to
prevent.
Reproduce
python3 -m pytest repo_tests/test_ci_import_smoke_paths_14252.py::test_every_extracted_program_parses -q
Run from a clean checkout of Dev_new_gui with no local modifications.
Why it matters
The guard is the thing that keeps inline workflow Python honest about its
imports. While one program does not parse, that program's imports are unchecked
— and the guard reports the gap as a failure rather than a silent skip, which is
correct, but it means the check is red and the coverage is absent.
Root-cause is most likely the extractor's handling of a multi-line YAML scalar
or an embedded quote, rather than the workflow itself being wrong.
Discovered during
The #13149/#14892 path-resolution work, running the root-resolution consumer
smoke set. Unrelated to that defect class, so filed rather than folded in.
Acceptance criteria
Problem
repo_tests/test_ci_import_smoke_paths_14252.py::test_every_extracted_program_parsesfails on
Dev_new_guiat14b7e6be5, before any local change:The extractor pulls inline Python out of workflow YAML so its imports can be
checked. One program in
phase_validation.ymlis truncated mid-literal by theextraction, so it does not parse — and an unparseable program has its imports
checked against nothing, which is the failure mode this assertion exists to
prevent.
Reproduce
Run from a clean checkout of
Dev_new_guiwith no local modifications.Why it matters
The guard is the thing that keeps inline workflow Python honest about its
imports. While one program does not parse, that program's imports are unchecked
— and the guard reports the gap as a failure rather than a silent skip, which is
correct, but it means the check is red and the coverage is absent.
Root-cause is most likely the extractor's handling of a multi-line YAML scalar
or an embedded quote, rather than the workflow itself being wrong.
Discovered during
The #13149/#14892 path-resolution work, running the root-resolution consumer
smoke set. Unrelated to that defect class, so filed rather than folded in.
Acceptance criteria
construct it cannot handle and why
test_every_extracted_program_parsespasses onDev_new_gui