Repository navigation
v0.5.0
What's Changed
- Stop OAuthHandler from refreshing for an already cancelled request by @kblok in #342
- Show the selected text of a focused field in the agent snapshot by @kblok in #344
- Fix the whitespace that the format check rejects in Screen.cs by @kblok in #349
- Add a Contents list to long skill references by @kblok in #350
- Release browsers, drivers, and processes when a start or a dispose fails by @kblok in #351
- Fix replay-cache and test-adapter correctness defects by @kblok in #352
- Add a checklist for reviewing .NET and C# code by @kblok in #355
- Check vendor and user text before it reaches the terminal, the browser, or a recording by @kblok in #353
- Surface a caller's cancel as a cancel, and return a malformed tool call to the model by @kblok in #354
- Document that a cancelled model call stops waiting for a token refresh by @kblok in #356
- Read the first recognized ARIA role token by @kblok in #357
- Read OPENCODE_API_KEY in e2e models opencode-console by @kblok in #358
- Print the e2e login URL on one copyable line by @kblok in #359
- Name the failed end-state checks in end-mismatch details by @kblok in #360
- Omit the Next.js route announcer from observations by @kblok in #361
- Hold keys and modifiers with Keyboard.DownAsync and UpAsync by @kblok in #362
- Let E2E_CACHE_DIR replace cache.dir by @kblok in #363
- Define an atomic ActAsync goal and route each job to one reference in the skill by @kblok in #365
- Locator reads wait for their match until the action timeout by @kblok in #366
- Point a locate role name that matches nothing at the node's text by @kblok in #367
- Keep mobile device commands on the selected device after closeApp by @kblok in #368
- Document the Limrun provider in the setup reference by @kblok in #377
- Split an act step into its harness and an executor by @kblok in #375
- Pin agent-device 0.21.25 so Android emulators can fold by @kblok in #374
- Stop the settle tests from hanging on a lost timer advance by @kblok in #378
- Let model requests carry images by @kblok in #373
- Name the action in the cache detail when a replay stops at an action by @kblok in #372
- Redact secrets in poll, screenshot, waitFor, soft-failure and cause messages by @kblok in #371
- Evict a replayed cache entry when a later assertion fails on the app by @kblok in #370
- Emulate dark mode and reduced motion in the web engine by @kblok in #369
- Let judgments read a masked screenshot by @kblok in #379
- Rename partial tests that keep an upstream name by @kblok in #389
- Let a test project bring its own step executor by @kblok in #380
- Record the windowed-list row key as not applicable by @kblok in #390
- Add the create-verification-skill skill by @kblok in #391
- Name STEP_NOT_AWAITED as not applicable; negation window already ported by @kblok in #392
- Extract the functions upstream's tests call, and review every PR by @kblok in #393
- Extract SerializeLedger from the act context by @kblok in #395
- Extract CreateGrammarTools and CreateVerdictTool by @kblok in #394
- Extract NodeReading and ReadingShape and port the reading tests against them by @kblok in #396
- Extract replayTrace and ReplayHost from the act harness by @kblok in #398
- Keep replay's secret and scroll-to-text handling as before the extraction by @kblok in #404
- Ship the Limrun provider as its own package, E2E.Limrun by @kblok in #406
- Lease hosted browsers through an IBrowserProvider by @kblok in #408
- Ship the EAS provider as its own package, E2E.Eas by @kblok in #407
- Let a browser provider serve downloads and record the browser by @kblok in #409
- Add E2E.TestMu: TestMu AI hosted browsers by @kblok in #410
- Add an Appium device client for TestMu mobile devices by @kblok in #411
- Connect to the TestMu grid with the Playwright protocol by @kblok in #413
- Add E2E.Kernel: run web targets in Kernel's hosted Chromium by @kblok in #412
- Fix Limrun devices refusing every command with LEASE_SCOPE_MISMATCH by @kblok in #414
- Run the MobileApp sample tests on a Limrun iOS simulator by @kblok in #415
- Keep the prepare failure when the hosted device release fails by @kblok in #416
- Pack the Release build in CI instead of building ten more times by @kblok in #417
- Explain how to pick a device when several simulators match by @kblok in #418
- Fix the MobileApp sample on Limrun without E2E_MOBILE_APP_PATH by @kblok in #419
- Add Explore.ExploreAsync: explore an app toward a goal by @kblok in #422
- Read the iOS screen title from the bar identifier only when the bar shows it by @kblok in #421
- Decide trace replay in one place, as upstream does by @kblok in #420
- Add a mobile reference to the e2e-dotnet skill by @kblok in #423
- Extract StepTraceSession and port the step-cache tests against it by @kblok in #425
- Record steps through TraceRecorder, as upstream does by @kblok in #424
- Hold modifier keys on agent tap and double tap by @kblok in #430
- Add the e2e explore command by @kblok in #433
- Accept trace and video settings in the config by @kblok in #434
- Record the steps of an attempt and bound the step ledger by @kblok in #437
- Time the phases of a test with E2E_DEBUG by @kblok in #435
- Record every model call with E2E_AI_TRACE by @kblok in #438
- Stop the throwing-read poll test from failing on a busy machine by @kblok in #439
- Record video on the web engine by @kblok in #436
- Collect the screen after an action and the environment on the web engine by @kblok in #442
- Trace calls to the DevFlow agent, and pack the package on release by @kblok in #441
- Drive a MAUI app through the DevFlow agent by @kblok in #440
Full Changelog: v0.4.1...v0.5.0