[BUG] Cleanup-frame CI selects a disassembler symlink rejected by intake #5
Labels
No labels
bug
ci
docs
duplicate
enhancement
help wanted
invalid
performance
phase-6
question
refactor
security
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
erix/exsh#5
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
The cleanup-frame CI step selects
/usr/bin/objdump, while the checker requires a regular selected executable and rejects symlink inputs. In the CI container this fails with errno 40 before disassembly, preventing the intended artifact evidence from being collected.Reproduction
Run the maintained Exsh workflow at
9d1981caac57e3a0f146509282f27c8e4134ec40in its selected container. Push run 219 and PR run 220 each invoke the checker with--objdump /usr/bin/objdumpfor optimized runtime and all-feature ELFs.Expected and actual behavior
Expected: CI explicitly selects the installed disassembler's resolved regular executable and collects its actual ELF findings under the existing bounded intake policy.
Actual: both configurations in each run report
OSError: [Errno 40] Too many levels of symbolic links: '/usr/bin/objdump', followed by incomplete evidence. This tool-intake error precedes actual frame analysis. The separately unresolved ordinary-source and direct-path proof remains a distinct limitation; correcting tool selection must not turn that incomplete proof into a pass.Environment and identity
9d1981caac57e3a0f146509282f27c8e4134ec40, push219/API9045 and PR220/API9046.rust:latestCI container installs binutils and selects the x86_64 freestanding optimized runtime/all-feature builds.Evidence and prior checks
Complete run metadata and both terminal job logs are retained. The local final-checker artifact replays used an admitted regular executable and remain separate evidence; they do not validate this container's selected pathname. No unchanged CI retry or tool-policy relaxation is used to classify the failure.
The correction should resolve the already selected installed tool explicitly before invocation, verify the resulting regular executable, and retain that resolved path and byte identity in the existing checker receipt. Preserve missing-tool failure, all original proof limits and the current incomplete-domain result.
Published correction: signed
7f9552abf3507b464921361fb985853525aef12dresolves the explicitly installed objdump path before the workflow invokes the unchanged checker. Local selected-symlink, missing-tool, workflow syntax and Markdown checks pass. All Rust sources and original frame limits are unchanged; current-head CI 221 and 222 now reach actual analysis with no objdump intake error after 957 Rust and 59 Python tests pass. Both still fail on the separately incomplete frame proof. This issue remains open for final review; the tool-selection failure is no longer observed at this head.Tracking
Related emitted-proof issue: Exsh #4. Implementation: WIP PR #3. Tool-selection correction is separate from proving optimized source membership, indirect calls or complete stack safety.
Original terminal-graph CI classification — 21 September 2026:
Signed
0d5d5ad9aff082ca75ec79dbc9c29d73f799d8edreaches actual analysis in both original CI 275/276. Each passes 976 unit tests and 355 checker controls before the required frame gate fails. Each run retains four incomplete reports: 101 unresolved runtime observations in both profiles and 68 all-feature observations in both profiles. All four workspace mappings pass separately. These CI artifact observations differ from local 97/63 results and are not interchangeable proof.All four terminal logs are complete and hash-verified (319,902 bytes), with zero warnings. The disassembler intake correction reaches the real proof boundary; tool-selection issue 5 is resolved. Complete frame issue 4 and local release compiler issue 9 remain open. No workflow restart, bound change or conversion of incomplete evidence to a pass occurred.
erikinkinen referenced this issue2026-09-12 15:42:02 +02:00