Skip to content

Wait for fixture writers before deleting test sandboxes - #250

Merged
raiseCatError merged 103 commits into
docs/v08-continuation-acceptancefrom
test/208-fixture-writers
Oct 3, 2026
Merged

raiseCatError merged 103 commits into
docs/v08-continuation-acceptancefrom
test/208-fixture-writers

Conversation

@raiseCatError

Copy link
Copy Markdown
Owner

Closes the remaining test-fixture teardown race observed in Node 22 CI: a GNU screen outer PTY can exit before its frontend finishes journal writes. LiveSandbox now verifies no process holds its subtree (including cwd references, so writers between file opens are covered) before deleting it. The existing lsof fixture tool is used only in test teardown; no product watcher, cleanup or execution behavior changes. The barrier also exposed an intentionally started background sleep left behind by the live-status fixture; that fixture now records and kills its own PID during teardown.

Regression coverage launches an untracked late writer in the sandbox and proves disposal keeps its directory until the writer exits successfully. This addresses the actual ENOTEMPTY failure rather than relying on successful reruns.

Refs #208. Depends on #249. Review/integrate after that acceptance snapshot; final acceptance evidence follows on top. All PRs remain unmerged.

Validation: focused lifecycle/mux/temp tests; build, typecheck, full suite 733/733, diff check. Earlier #248 Node 22 failure was this fixture race; its Node 26 matrix and #249 cumulative Node 22/26 matrix passed. No physical QA required for this test-only follow-up.

fix: post-QA hardening for the v0.13 portability stack
…tance

docs: v0.13 portability acceptance and deferred physical QA
…ardening

Harden bootstrap paths and portability diagnostics
Establish Linux runtime and canonical CI baseline
…tance

v0.12 cumulative development acceptance and physical QA handoff
…hardening

Harden cumulative presentation lifecycle and configuration
…ects

Bounded transient effects and shared presentation clock
…ents

Chroma treatments for owned presentation surfaces
…tance

Document v0.11 cumulative development acceptance
Harden shell intelligence helper lifecycle and completion insertion
…gence-parity

Improve native zsh alias, function and syntax awareness
…mpletion

Bridge configured zsh completion knowledge into NMSh
Document v0.10 development acceptance and deferred physical QA
…ening

Harden terminal mode replay and attachment cleanup
…-harness

CLI and TUI compatibility harness with tmux coverage
Add iTerm2 Kitty and WezTerm capability profiles
v0.10: isolate enhanced host integration from core
v0.10: Terminal.app baseline and Chroma fallback
…ties

v0.10: frontend terminal capabilities and bounded probes
Finalize v0.9 development acceptance and additive physical QA
Add session presets with explicit startup acknowledgement
Add optional mise project awareness and explicit task discovery
Add optional tools browser and consent-based installation
…-config

Add supported tool configuration review
…me-adapters

Add curated external welcome presets
…age-colors

Add offline GitHub Linguist language colors
…l-verification

Record final v0.8 continuation acceptance evidence
@raiseCatError
raiseCatError merged commit 41a79aa into docs/v08-continuation-acceptance Oct 3, 2026
4 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