fix(validation): bound compiler diagnostic failure recovery - #176
Merged
Merged
Conversation
Preserve the original failed diagnostic and admit one fixed read-only WSL receipt recovery. Keep its reservation and lifetime unresolved until reviewed. Add a bounded failure frame to the dormant dispatcher without authorizing another diagnostic invocation. Refs: #108
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
The original compiler/native-input diagnostic returned exit 1 with empty output. Preserve that failure and authorize one fixed read-only recovery of three WSL execution records. Add a bounded failure frame to the dormant dispatcher for future diagnosis.
Authorization and Governing Records
Issue #108; the accepted Windows Slice Delivery Wave and experiment policy. The protocol amendment remains subject to merge and independent exact invocation admission.
Scope and Non-Goals
Read only the optional
started.json,reservation-failure.json, andresult.jsonin the exact failed action's WSL directory. No new compiler invocation, Windows process, account interaction, cleanup, or final publication is authorized.Record-System Impact
Update the existing Windows Slice validation protocol and its implementing tools. No new record family, control, product contract, or Wave effects boundary.
Evidence and Reasoning
The original tool response is a completed exit-1 failure with empty output and no yielded session. Reservation, debit, subject reach, and inner lifetime remain unknown. Source review separately found that a handled reservation-call exception can lose its diagnostic when the caller emits only the exit code; this does not establish the actual failure cause.
The recovery copies raw bytes and records exact absence/continuity observations under finite limits. Its original outcome and private copies require independent acceptance before interpretation.
Identity and Security Effects
Credential-free WSL file reads, one nonblocking lease on the existing shared lock, and a dedicated private output directory. No Windows-root, account, token, cache, consent, telemetry, or authenticated network operation. Raw receipt content is not printed or committed.
Validation
Full
hk check --allpassed, including all 32 public-build runner conformance groups; the existing ShellCheck 0.11.0 was selected explicitly because the ambient shim had no configured version. Both Python sources passed syntax-only parsing without import or execution. No recovery or repeated diagnostic has run.Review and Disposition
Independent reviewer
/root/lifetime_triageaccepted the recovery source/protocol, and/root/wave_reviewaccepted the dispatcher source plus research/record routing: no remaining material findings. Reviews bind the exact files below. The source observability finding was independently triaged by/root/wave_review; the collector's redundant absence recheck was independently triaged by/rootand corrected without enlarging its read selection. No owner risk decision or recheck-registry change is required within the accepted Wave boundary.e1dfb0a88352e35c97dbfa329b8f7042165b0eb83516cbf0f8174ed047a5a1cd5cdd43b8c4fce2ca8a509e949683a551998bc85aebd547b6c1b895a41f38ff089743a7b21d50f7bf1062ae772f55bb7543cda54d2a05d96b02ff7d379ee5be7fUpstream Provenance
Derived from the repository's accepted fixed receipt-copy and dispatcher mechanisms at
a578b7cb7da9f80860817ca782519941ebb11395. No external code acquisition.