Repository navigation
refactor(daemon): require composed router capabilities - #3639
Conversation
There was a problem hiding this comment.
All reported issues were addressed across 5 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
Size Report
Startup median (7 runs, lower is better):
|
|
The code in 5591c28 looks right to me. The router now requires its composed capabilities, and I found no construction site that still omits them. I did not run tsc or the test suites. I relied on a search of every createRequestHandler and RequestRouterDeps user at that commit. CI is still pending. Six checks (Lint & Format, Repo Guards, Integration, Smoke, Coverage and one more) are queued, and none has failed. Those lanes exercise the router type, the daemon-runtime Pick type and the test fixtures, so a missed construction site would show up there. Not blocking: in test-device-runtime-gateway.ts, androidObservation and platformResourceCleanup are defaulted before ...rest, while the other four optional fields are defaulted by destructuring. An explicit undefined would now reach the production router with no fallback. Moving both defaults into the destructuring would give one rule for all six fields. Take it or leave it. The open inline thread on that wrapper (#3639 (comment)) still stands. It is the same default-ordering point, and no caller passes undefined today. Before merge, the CI lanes need to finish green. |
5591c28 to
6b69d4b
Compare
|
Investigated the size job at head
The comparison base is |
|
Investigated the Android smoke failure at The fixture opened successfully. The first 10-second wait spent 4,085 ms installing the missing snapshot helper, then the request diagnostic recorded This explicit UiAutomation startup failure qualifies for the repository's single infrastructure retry. Reran only the failing Android job once; no source or timeout change. A repeated failure will be investigated as a finding rather than retried again. Merge readiness remains pending. |
|
The PR is ready as of 6b69d4b. The earlier findings from 5591c28 are fixed, and the router no longer has the throwing fallbacks. Not blocking, and you can take or leave these: the harness in test/integration/provider-scenarios/harness.ts spreads The cubic-dev-ai thread on test-device-runtime-gateway.ts (#3639 (comment)) is fixed at this head: both fields now default in the destructuring before I read the diff but ran no tests or type checks. The fixture and type completeness rests on reading the code and your base-vs-head table. CI is pending: the only checks not yet passing are three Smoke Tests, all queued and none failed, so the daemon start, open and close lane has not run on this head. I did not check your Android smoke failure analysis. No conflicts. The three Smoke Tests need to finish green on 6b69d4b before merge. |
Summary
Require Android observation and platform-resource cleanup at router construction, where root composition supplies both. Delete throwing substitutes and retain test-owned defaults and overrides.
Five files changed. Review follow-up applies defaults during destructuring so explicit
undefinedbehaves like omission. Cleanup mechanics and session lifecycle are unchanged.Validation
Tested head:
6b69d4b21e91b5c5438ad29d7197f020618f8bbd; rebased onto22ae872676including the shared Coverage-gate repair from #3653.pnpm check:affected --base 22ae872676 --head 6b69d4b21e --run: passed.close releases the session leaseregression, with new cases retained:bbc51ba900default order6b69d4b21eFresh review found no actionable production issue. The prior iOS job failed during daemon startup before command dispatch; the new head will rerun its real smoke lane. CI checks must pass before merge.