[rush-daemon][WS2.4][3/9] Route phased requests - #5962
Merged
Sean Larkin (TheLarkInn) merged 4 commits intoAug 26, 2026
Merged
Conversation
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Adds opt-in routing of caller-resolved phased requests through a reusable Rush daemon operation graph.
Changes:
- Adds phased request protocol contracts and public router APIs.
- Implements serialized execution, cancellation, event/output forwarding, and result collection.
- Adds focused tests, documentation, API reports, dependency metadata, and change files.
Reviewed changes
Copilot reviewed 16 out of 17 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
libraries/rush-daemon/src/PhasedRequestRouter.ts |
Routes requests through the warm graph. |
libraries/rush-daemon/src/PhasedRequestEventSink.ts |
Forwards scoped events and output. |
libraries/rush-daemon/src/PhasedRequestEventMultiplexer.ts |
Multiplexes workspace and request sinks. |
libraries/rush-daemon/src/PhasedRequestClient.ts |
Defines the client boundary. |
libraries/rush-daemon/src/index.ts |
Exports routing APIs. |
libraries/rush-daemon/src/test/PhasedRequestRouterTestUtilities.ts |
Provides routing test fixtures. |
libraries/rush-daemon/src/test/PhasedRequestRouter.test.ts |
Tests routing and failure scenarios. |
libraries/rush-daemon/README.md |
Documents phased routing. |
libraries/rush-daemon/package.json |
Adds the terminal dependency. |
libraries/rush-daemon-protocol/src/DaemonPhasedRequest.ts |
Defines phased request contracts. |
libraries/rush-daemon-protocol/src/index.ts |
Exports protocol contracts. |
libraries/rush-daemon-protocol/README.md |
Documents protocol support. |
common/reviews/api/rush-daemon.api.md |
Updates daemon API reports. |
common/reviews/api/rush-daemon-protocol.api.md |
Updates protocol API reports. |
common/config/subspaces/default/pnpm-lock.yaml |
Updates the workspace importer. |
common/changes/@rushstack/rush-daemon/mojazayeri-route-phased-requests_2026-08-21-17-24.json |
Records the daemon change. |
common/changes/@rushstack/rush-daemon-protocol/mojazayeri-phased-request-contracts_2026-08-21-17-24.json |
Records the protocol change. |
Files not reviewed (1)
- common/config/subspaces/default/pnpm-lock.yaml: Generated file
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Sean Larkin (TheLarkInn)
approved these changes
Aug 26, 2026
Sean Larkin (TheLarkInn)
enabled auto-merge (squash)
August 26, 2026 05:10
Sean Larkin (TheLarkInn)
deleted the
mojazayeri-microsoft-rushd-ws2-route-phased-upstream
branch
August 26, 2026 05:15
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.
Summary
Routes caller-resolved phased requests through the warm Rush daemon workspace graph, including request-scoped event and output forwarding, cancellation, result collection, and safe enabled-state selection.
This PR supersedes mojaza#2 and follows the merged #5949. It references #5897 and PBI https://onedrive.visualstudio.com/EFun/_workitems/edit/3216020.
Details
@rushstack/rush-daemon-protocol.@rushstack/rush-daemon.Limitations
#5895 remains open and limits this layer: the upstream engine prerequisites are not yet complete, notably host-controlled per-iteration persistent versus one-shot runner lifetime. Shared-build merging, broader admission scheduling, and final daemon cutover remain follow-up work under #5897.
This draft awaits human review and is not ready to merge.
How it was tested
node common/scripts/install-run-rush.js install --from @rushstack/rush-daemonnode common/scripts/install-run-rush.js test --to @rushstack/rush-daemonnode common/scripts/install-run-rush.js test --only @rushstack/rush-daemon@rushstack/rush-daemoncompleted cleanly on the final run.