Skip to content

Cover files-mode prompt-shaped raw stdout#60

Merged
t-kalinowski merged 2 commits into
mainfrom
source-aware-files-echo-cleanup
May 8, 2026
Merged

Cover files-mode prompt-shaped raw stdout#60
t-kalinowski merged 2 commits into
mainfrom
source-aware-files-echo-cleanup

Conversation

@t-kalinowski
Copy link
Copy Markdown
Member

@t-kalinowski t-kalinowski commented May 8, 2026

Summary

Adds a files-mode regression showing that raw child stdout matching a later R input echo is kept visible, and only the matching echo produced by the R interpreter is elided.

No runtime code changed; the existing files-mode cleanup already uses framed readline_result facts for this case.

Public Facing Changes

  • No intentional user-visible output contract changes.

Internal Changes

  • Added a public repl surface regression in files mode.
  • Stabilized a Python idle-respawn regression so the detached writer is released only after the setup reply returns.
  • Updated the active R output IPC plan to mark this slice complete.

Diff Composition

  • Runtime code: none
  • Tests: one repl_surface regression and one Python lifecycle test synchronization fix
  • Docs/plans: active plan status update

Validation

  • cargo test python_idle_exit_preserves_detached_tail_before_respawn --test python_backend -- --nocapture
  • cargo test --test python_backend
  • cargo check
  • cargo build
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo test
  • cargo +nightly fmt
  • review-loop against origin/main

Cover the files-mode case where raw child stdout exactly matches a later R prompt/input echo. The existing source-aware echo collapse already preserves that raw output, so this records the behavior and marks the corresponding plan phase complete without changing runtime code.

Validation:
- cargo check
- cargo build
- cargo clippy --all-targets --all-features -- -D warnings
- cargo test
- cargo +nightly fmt
Make python_idle_exit_preserves_detached_tail_before_respawn release the detached writer only after the setup reply has returned. The old sleep-based ordering let the tail be emitted during the arming request on slower CI runners, so the follow-up assertion could miss output that had already been delivered.

Validation:
- cargo test python_idle_exit_preserves_detached_tail_before_respawn --test python_backend -- --nocapture
- cargo test --test python_backend
- cargo check
- cargo build
- cargo clippy --all-targets --all-features -- -D warnings
- cargo test
- cargo +nightly fmt
@t-kalinowski t-kalinowski merged commit 04dc7b3 into main May 8, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant