Repository navigation
Conversation
Size Report
Startup median (7 runs, lower is better):
|
a3aba45 to
14de349
Compare
There was a problem hiding this comment.
All reported issues were addressed across 8 files
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
|
I reviewed 14de349. The approach looks right, but the open Cubic thread on launch-only flags still applies, so this needs one more change before merge: #3555 (comment)
Not blocking: open-target-resolution.ts:28 is a third hand-built resolve-activity plus The 19 checks are green, and the hosted Android job exercises the changed route. There are no conflicts. I did not run the lookup on a device, and the AOSP claim is from reading, not from a test. |
There was a problem hiding this comment.
All reported issues were addressed across 5 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
|
The 14de349 findings are now fixed in part: resolution no longer receives the launch-only flags, and the regression test asserts the stripped argv. Commit 2309542 still needs a live run, and the Coverage check fails on the eager-closure budget. Smoke Tests is still queued, so I can't attribute its result yet. Nothing else in the code blocks this. The delta changes what reaches Coverage fails because eager-closure-budgets now names mechanics.ts -> app-lifecycle.ts -> intent-arguments.ts. That edge is the new static import at app-lifecycle.ts:10, so this PR causes the failure. Could intent-arguments.ts return only the resolution arguments (for example Not blocking: the same move also keeps one module and 11 statements out of the mechanics.ts eager closure, and you can take it or leave it. On the open threads: the cubic-dev-ai thread on resolution arguments is fixed at this head, so please resolve it (thread). The malformed Two limits on this review. I checked the AOSP grammar claims (option arities, |
|
Thanks for the update. Since the earlier review (#3555 (comment)), the intent open now sends the verbatim launch args to Not blocking, take or leave: app-lifecycle.ts#L292 now lazy-loads the 186-line grammar module on every intent launch only to read Of the two open inline threads, I think neither applies. The Android Smoke fails at |
dc4d7ee to
ce26013
Compare
|
At ce26013 the earlier typed-value and launch-only-flag threads are fixed, but one check from the first review at 91b9fad is still missing. I could not tell from the code whether Not blocking: the new java-int validator in intent-arguments.ts is a 15-line Unicode Of the open inline threads, the launch-only flags thread and the malformed integer thread are fixed at this commit, so please resolve them. The selector MIME thread does not apply, because keeping data and type across The failing check is the iOS smoke preflight, where |
|
I ran one targeted private workflow against published source API36 job / raw artifact: actual source CLI command was: node --experimental-strip-types src/bin.ts open settings --relaunch --launch-args -S --launch-args -R --launch-args 1 --launch-args --display --launch-args 0 --platform android --serial emulator-5554 --session pr3555-round30-api36 --state-dir /home/runner/work/agent-device/agent-device/.tmp/pr3555-round30-api36-state --jsonCLI exit0, The subsequent snapshot reports API23 job / raw artifact: both source helper manifests declare minSdk23/targetSdk36, and device Exit0 on this older adb shell does not establish command support. No Settings component was returned. The owning resolver ( Limitations retained: the API36 cleanup harness incorrectly supplied |
|
Thanks for running both images. At ce26013, the API 36 run proves the fix: The API 23 run shows the gap is real on the lowest supported image. The failing Smoke Tests check is reported separately and does not change this verdict. |
|
The API 23 result exposed an unsafe admission case, beyond the missing proof: when the owner query cannot produce a package, relaunch could still close the hardcoded Settings alias. Fixed in The new regression failed on old production (1 failed / 10 passed), then passed (11 passed). Known vendor-owner and explicit-package controls verify close targets. Full exact-head affected gates pass: 529 files / 4,064 tests. The broader gate also exposed ownership-free test fixtures and a close-failure test that could pass before reaching close; the owning fixtures and actual close-dispatch assertion are repaired. CLI/MCP help and session docs describe the requirement. The earlier native proof retains its |
There was a problem hiding this comment.
All reported issues were addressed across 7 files (changes from recent commits).
Reply with feedback, questions, or to request a fix.
View guided diff | Turn on auto-fix | Re-trigger cubic
|
|
This round did not obtain the requested live proof. I verified PR #3555's remote head as The API23 job aborted at a private harness prerequisite: it required the owned state directory to be absent after preparation had already created it. The requested public The API23 failure artifact is retained: its archive digest matches GitHub and all 25 file digests verify. Cleanup records show no sessions or device claims, clean graceful daemon shutdown with no pending releases, and emulator process exit followed by device-not-found. No alias close was issued. The observer was never installed; ADB start/end hashes and subject request/native records were not captured. API36 positive ownership and API23 explicit refusal remain unverified by this round. It does not establish successful minimum-API ownership or a compatibility fallback. Historical round30 evidence is not substituted for the pinned head. |
b69a342 to
22dc288
Compare
|
Completed the private native audit on immutable runtime
API 23 artifact and API 36 artifact: both archive SHA256 hashes and all 242 inner digests verified. One dispatch; no source changes, fallback, redispatch, or merge. Current-head verification remains outstanding; the harness cleanup and measurement-deadline boundaries need repair before another measurement. |
|
The current-head private verification run, targeting The gap was in the private harness: the first deadline-guarded query could reject before emulator identity was recorded, leaving cleanup unable to stop its owned emulator. The unpublished repair records identity before measurement and retains it through failure. The same controlled late-entry case now refuses measurement and proves owned stop/serial unavailability. Independent harness review is underway before any further measurement. The run is terminal with no child work. No hosted sessions, daemons, claims or observers were created; local preflight processes and daemon were cleaned. Shipping source and branches were untouched. Earlier successful refusal evidence remains attributed to |
Summary
ADB intent opens retain the requested handler's package for session identity and close admission. Launch controls reach native launch unchanged; bounded lookup projects complete intent arguments and validates native integer controls.
open settings --relaunch --launch-args -S --launch-args -R --launch-args 1 --launch-args --display --launch-args 0keeps the resolved owner. Unknown ownership now fails with typed reasonandroid-relaunch-owner-unresolvedbefore closing or launching; use the exact installed package. Ordinary opens retain optional lookup.Sixteen layer files; depends on #3554, related to #3077. Updated CLI/MCP help and session documentation.
Validation
Head:
22dc288c6174048e78c7750aea1f46b3150fac3a; parentf660374ef. Rebased onto main15cfe9fa2, including merged #3590; all eight layer commits remain unchanged.Same lifecycle regression command:
pnpm exec vitest run --project unit-core packages/platform-android/src/lifecycle.test.ts.ce260138b, regression addedAlias-runner mutation fails the new identity assertion while the prior test passes. Frozen install/build and exact-head affected gates: pass (522 Vitest files / 4,053 tests). Independent review clear; review threads resolved. Integration passed; Coverage and smoke checks remain pending.
Native audit, source
b69a3421a, proves API 23 typed owner refusal with zero native lifecycle effects. API 36's operation followed the deadline and is excluded from bounded proof. Cleanup remains incomplete: an expected stale claim and unverified emulator shutdown. Current-head proof is outstanding; private harness deadline, restoration and ownership gaps are under repair before measurement. Original iOS daemon-start failure is unexplained. Current size: +5.2 kB; independent review justified ownership design.