PR #260 removed CliOptions.passthrough from @polyengine/wasi's cli() as "set by nobody". It had one consumer: polymorph-iroh's endpoint exam (host-polyengine/src/harness.ts) set it from the EXAM_GUEST_LOGS=1 knob to stream guest stdout/stderr to the console while the long-running scenarios execute — the only way to watch a hang in progress, since captured.stdoutText() is only readable after the fact.
polymorph-iroh#103 (the 0.6.3 adoption) deleted the knob rather than vendor a replacement, so nothing is blocked. Filing so the consumer record is accurate and the design question is on the table.
The removal rationale also called the old implementation buggy (newline-injecting console.log per chunk). If a live sink comes back, a chunk callback is the honest shape — no console formatting, the application decides:
cli({ stdout?: (chunk: Uint8Array) => void, stderr?: (chunk: Uint8Array) => void })
invoked alongside the capture push on both the 0.2 OutputStream and the 0.3 write-via-stream paths. Consumer: polymorph-iroh (EXAM_GUEST_LOGS). No urgency.
PR #260 removed
CliOptions.passthroughfrom@polyengine/wasi'scli()as "set by nobody". It had one consumer: polymorph-iroh's endpoint exam (host-polyengine/src/harness.ts) set it from theEXAM_GUEST_LOGS=1knob to stream guest stdout/stderr to the console while the long-running scenarios execute — the only way to watch a hang in progress, sincecaptured.stdoutText()is only readable after the fact.polymorph-iroh#103 (the 0.6.3 adoption) deleted the knob rather than vendor a replacement, so nothing is blocked. Filing so the consumer record is accurate and the design question is on the table.
The removal rationale also called the old implementation buggy (newline-injecting
console.logper chunk). If a live sink comes back, a chunk callback is the honest shape — no console formatting, the application decides:invoked alongside the capture push on both the 0.2
OutputStreamand the 0.3write-via-streampaths. Consumer: polymorph-iroh (EXAM_GUEST_LOGS). No urgency.