Parent: #5858
Blocked by: #5975, #5976
Goal
Deliver the first end-to-end, demoable Rush reporter path for direct rush build invocations, fully reversible behind opt-in controls.
Approach
Reuse the existing OperationGraph.eventSink/OperationExecutionRecord hooks to adapt scheduler activity into OperationStreamEmitter semantic events. Do not rewrite scheduling. While the opt-in is disabled, retain the exact StreamCollator path. While enabled, keep any collator plumbing needed internally but route its destination to a sink that cannot produce duplicate terminal output; the selected reporters become the sole visible presentation owners. Remove the primary-path collator only after parity is proven.
Scope
- Emit phase-aware operation registration, status transitions, raw stdout/stderr chunks, stream close, completion, and aggregate command-result events.
- Wire the built-in
default, plaintext, ai, json, file, and legacy reporters for the direct frontend path.
- Demonstrate the compact default reporter (spinner/activity/result) and always-on full-detail file.
- Preserve detailed grouping in plaintext/file reporters and keep problem-matcher input uncollated.
- Cover success, cache hit, warning, failure, blocked operation, cancellation, and watch iteration behavior.
Acceptance criteria
DAG
This is the demo milestone. Unblocks R7, R8, and R10.
Part of #5858.
Parent: #5858
Blocked by: #5975, #5976
Goal
Deliver the first end-to-end, demoable Rush reporter path for direct
rush buildinvocations, fully reversible behind opt-in controls.Approach
Reuse the existing
OperationGraph.eventSink/OperationExecutionRecordhooks to adapt scheduler activity intoOperationStreamEmittersemantic events. Do not rewrite scheduling. While the opt-in is disabled, retain the exactStreamCollatorpath. While enabled, keep any collator plumbing needed internally but route its destination to a sink that cannot produce duplicate terminal output; the selected reporters become the sole visible presentation owners. Remove the primary-path collator only after parity is proven.Scope
default,plaintext,ai,json,file, andlegacyreporters for the direct frontend path.Acceptance criteria
DAG
This is the demo milestone. Unblocks R7, R8, and R10.
Part of #5858.