Repository navigation
feat: connect interactive Zsh to one helper child - #144
Merged
Merged
Conversation
Add the selected complete descriptor snapshot and process handshakes, child-local startup, real waitpid routing and actual-argument helper entry. Preserve older startup/profile paths. Focused provider controls and separate peer review pass; whole linked fit, Rust controller integration and native execution remain open in #143.
Keep one filesystem client with shared parent and child descriptor views, route both peers, and order real wait delivery before child reclaim and parent input restoration. Focused positive, denial and containment controls and separate source review pass. The candidate remains unqualified: code and stack exceed the selected limits, and #143 still requires owner resource and verification choices before image or delivery.
Select the approved 72 KiB RX and three-page guarded stack only for the external Zsh composition. Preserve old parser, boot, mapping and inspector limits. Actual focused resource controls and separate review pass; fresh compiled Owner code/runtime/stack fit passes. The earlier aggregate-limit failure remains recorded. Native helper/status/prompt qualification and protected delivery remain open in #143.
7 tasks done
The early native start gate still used the old application parser, rejecting the approved larger Owner before reservation or startup. Select the external parser only for its existing validated build flag. Actual extracted-prefix red/green, old-boundary and omission controls pass with known cleanup; the failed native attempt remains preserved. A fresh image and reviewed candidate run remain required.
gonz0w
marked this pull request as ready for review
November 3, 2026 01:32
This was referenced Nov 3, 2026
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.
Interactive Zsh now runs one immutable helper child, collects its real exit status7 and returns to its prompt. The matched process path retains complete descriptor snapshots, fresh child bindings, Zsh’s synchronization pipe, checked exec/readiness and SIGCHLD/wait. Rust retains namespace custody; MODE/SIGINT remain parent-only, and known wait delivery precedes reclaim and input restoration.
The separately reviewed target trial passed in34.169s: helper exit7,
print -r -- $?produced7, fresh prompts, normal parent/engine exit and export,21 cleanup records and three reclamations. The Owner used33/96 requests with mode_cleanup0; halt was2884/6000ticks. Actual Screen/PTY and once-only staged inputs were observed, with all host holders and clients cleanly reaped. Earlier failed attempts remain preserved.Focused validation covers changed C/Rust/kernel contracts, capability denials and stale/unknown outcomes, prior-profile compatibility, actual loader/TLS/Owner fits and composed startup audits. The selected external profile uses the approved72KiB Owner RX ceiling and three guarded stack pages within existing128-page backing; other profiles retain their limits. The approved fixed-workload/scoped-delivery exception leaves full-root coverage open. Private SDK/qualified recipes supply target evidence; this is not a standalone public distribution.
No arbitrary filesystem execution, child job control, login, persistent shell write/reboot readback, packages or R1 acceptance follows.
Closes #143. Refs #142.