test: add live web platform smoke#832
Conversation
|
Size Report
Startup median (7 runs, lower is better):
Top changed chunks: no changes in the largest emitted chunks. |
|
CI has two completed blockers right now:
Export
|
d55df75 to
3b01c50
Compare
3b01c50 to
e2dd0ab
Compare
|
After #833 merged into |
|
One remaining cleanup issue in |
thymikee
left a comment
There was a problem hiding this comment.
Nice, well-instrumented smoke — the failure-artifact capture (step history + last snapshot) will make CI triage much easier, and extracting the shared cli-json.ts helpers out of test-helpers.ts is a clean refactor.
A couple of non-blocking observations:
-
Cleanup can leak the fixture server and socket dir on failure. In
cleanupWebSmoke, theclose web sessionstep goes throughrunStep, which callsfailWithContext→assert.failwhenclosereturns non-zero. If that throws,closeServer(context.server)and the socket-dirrmSyncnever run, leaving a listening HTTP server and a/tmp/adw-*dir behind. Wrapping theclosestep in a try/finally (or try/catch) so server + socket teardown always runs would make cleanup robust even when the session fails to close. -
socketDiris hardcoded to/tmp. That's clearly deliberate to keep the agent-browser socket path short (the macOS sun_path limit that #833 worked around), and the lane only runs on Linux/macOS CI, so it's fine in practice — just flagging that it isn't portable to Windows runners if that ever becomes a target. A short comment noting why/tmpis used instead ofos.tmpdir()would save the next reader a double-take. -
The new file matches the existing
test:smokeglob (smoke-*.test.ts), so it'll be collected by the defaultpnpm test:smoketoo — harmless since it's gated behindAGENT_DEVICE_WEB_E2E=1and skips, just confirming that's intended.
None of these block; the core test logic and CI wiring look correct.
Generated by Claude Code
Summary
Add a gated live web platform smoke that runs on Node 24.13 in CI and exercises the public managed-backend path: web setup, web doctor, open, snapshot, get, is, wait, click, fill, screenshot, and close against a local fixture.
Closes #830
Touched files: 7. Scope stays in CI, maintainer testing docs, and integration-test utilities.
Validation
pnpm check:tooling
AGENT_DEVICE_WEB_E2E=1 pnpm test:smoke:web
pnpm check:quick