NameLast commit messageLast commit date
..
cliRemove the custom apps plugin (it'll come back but better) (#1476)3 months ago
cloudCap resident MCP session runtimes with LRU eviction (#1842)2 months ago
cloudflareFix Cloudflare native elicitation routing (#1522)3 months ago
deskDeveloper-session e2e: chat-theater recordings, focus timeline, one-mp4 films (#962)4 months ago
desktopAdd update-available notifications across the CLI, web shell, and desktop app (#1182)4 months ago
desktop-packagedDesktop boot: show window immediately, self-heal stale launchd state, fix boot-path latency (#1303)4 months ago
desktop-vmRemove the custom apps plugin (it'll come back but better) (#1476)3 months ago
localDiscover local Codex plugins as stdio MCP presets (#1837)2 months ago
mcp-appsAdd the Artifacts console pages (#1472)3 months ago
notes[codex] Fix desktop black screen fallback (#1051)4 months ago
recordingsApps console: source management UI and e2e coverage (#1365)4 months ago
scenariosDeflake dialog outside-dismiss: sync clicks with Radix arming (#1847)2 months ago
scriptsStop CI failing on waits that were never about the product (#1707)2 months ago
selfhostfix(oauth): route DCR reconnect through registration flow (#1559)2 months ago
setupCap resident MCP session runtimes with LRU eviction (#1842)2 months ago
srcMove Team to per-member pricing with unlimited executions (#1806)2 months ago
targetsFail closed on the org selector for org-scoped reads (#1488)3 months ago
viewerRuns viewer: live session player with URL bar, trace rail, self-hosted trace viewer (#980)4 months ago
.gitignoreFix self-host data loss on restart (WAL split-brain) + production-image e2e target (#993)4 months ago
AGENTS.mdTrim agent instructions (#1433)3 months ago
CHANGELOG.mdVersion Packages (#1811)2 months ago
package.jsonVersion Packages (#1811)2 months ago
RUNNING.mdTrim agent instructions (#1433)3 months ago
tsconfig.jsone2e scenarios declare dependencies via Effect DI (#942)4 months ago
vitest.config.tsMake the test suite parallel-safe and speed up CI (#1273)4 months ago
AGENTS.md

E2E policy

Detailed target setup, commands, ports, desktop VM operation, endpoint discovery, viewer usage, and recording workflows live in RUNNING.md. Read only the relevant section for the task.

Scenario structure

  • Put cross-target scenarios in scenarios/*.test.ts; target-specific suites stay under their target directory.
  • Declare capabilities by yielding services from src/services.ts (Target, Api, Browser, Mcp, Billing, Cli, Telemetry, and others). Do not add a separate capability list. Unsupported targets skip and record why.
  • Create fresh identities and organizations through Target. Never depend on shared state or customer-derived fixtures.
  • Clean up created resources with Effect.ensuring; trailing cleanup statements are insufficient because mid-test failures must not leak state.
  • Assert through the real typed API, browser, MCP, CLI, emulator ledger, or exported telemetry surface. Do not reach into implementation internals to make a scenario pass.

Browser and telemetry

  • Wrap browser work in browser.session(identity, ...) and use step labels phrased as user actions. Prefer role-based locators and wait for navigation or network settling after actions that change pages.
  • Browser sessions produce screenshots, video, and a Playwright trace. Do not add separate recording machinery for ordinary scenarios.
  • Telemetry assertions target spans that reached the motel store, not values stamped only inside application memory. Export is eventually consistent, so use the provided polling helpers.

Isolation and quality

  • Never hardcode ports or attach to an arbitrary existing server. Use the checkout's claimed port block or explicit E2E_<TARGET>_URL attachment.
  • Test the user-visible contract and important failure path, not selectors or implementation details alone.
  • Run the narrowest relevant target while iterating. Before handoff, provide the viewer/run URL, recording or trace, and the exact outcome to inspect.
  • Do not weaken, skip, or rewrite a failing assertion merely to make the suite green. Fix the product, fixture, or scenario contract.