v1.0.53

MinishLab/model2vecv1.0.53Sep 9, 2026by github-actions[bot]

Upgrading?

AI Summary

A major update focusing on Copilot enhancements, workflow retry logic, and enterprise features like passkey 2FA gating, alongside significant refinements to Task V3 execution.

Key Highlights

  • Gate passkey 2FA behind the enterprise plan with a visible upsell
  • Add workflow retry policy settings and attempt-aware run views
  • Improve recording fidelity and prerequisite action preservation
  • Refine Task V3 selection and visibility reporting capabilities
  • Allow Copilot proposals to persist across server restarts

New Features

  • Passkey 2FA enterprise gating
  • Workflow retry policy implementation
  • Recording refinement tools
  • Task V3 set-valued selection
  • Copilot proposal persistence

Full Release Notes

## What's Changed

Version bumped from 1.0.52 to 1.0.53

### Recent Changes
- fix(webeye): allow raw-CDP screenshot rescue on persistent-context browsers (#8588) (24d08f8ad)
- Gate passkey 2FA behind the enterprise plan with a visible book-a-demo upsell tile (SKY-14535) (#8587) (92976292e)
- Run each Copilot build test in a browser that matches where the test starts (SKY-16164) (#8586) (a93ad7831)
- Give type's forced click the same focus fallback as the plain click (SKY-16451) (#8585) (f4b56073d)
- SKY-16029 / SKY-16325: Add FDE hours and payment terms to organization pricing (#8583) (b8d86f041)
- Class the file-attached-no-request upload result apart from a failed upload, and accept an upload control that is not the input (SKY-16449) (#8582) (f0e263bc4)
- Task V3: hide signed URLs rendered into the goal, system guidance or starting URL behind opaque tokens (SKY-16412) (#8581) (955d8b972)
- Make unset authenticator keys directly editable (#8580) (92ad57709)
- Raise AWS-only 0.5vcpu fairness lane CPU request to 625m (Hetzner stays 575m) (#8579) (896de61fe)
- Name the blocks the copilot is drafting while it writes them (SKY-12830) (#8578) (5f9f7fc16)
- Refuse every fill tool in a Task V3 extraction block (SKY-16398) (#8575) (026c3c001)
- Delete the unused drafting-gap timer and phase-checklist code from the copilot chat (SKY-13002) (#8574) (bfb2a8312)
- Report which visibility check dropped each hidden control in Task V3 observe (SKY-16393) (#8573) (a8b488c66)
- Scope WorkflowService background-task set per instance to fix cross-event-loop CI flake (SKY-15698) (#8572) (55136ecaf)
- Let Task V3 hold and report a set-valued selection (SKY-16270) (#8570) (d655dbf07)
- Validate Bitwarden items before accepting CLI advisories (SKY-16319) (#8569) (73fecfa5e)
- Let a page larger than one read be gathered across reads (#8568) (0e42bf0cc)
- Retry a no-policy initializer failure in process before failing the run, and route the sequential-credential rejection through the helper (SKY-16388) (#8567) (63113be5e)
- Deliver the run webhook when a run without an attempt row fails before execution (SKY-16380) (#8566) (64b59479c)
- Copilot keeps the turn when Skyvern's own proxy tunnel fails (SKY-15738) (#8565) (000d8a303)
- Use the download directory as a fallback, not a second opinion (SKY-16322 follow-up) (#8564) (14e2592c4)
- Show saved logins at the Copilot credential checkpoint, not just create-new (SKY-15784) (#8563) (345ff6083)
- Remove browser stream transport badge (#8562) (659932986)
- Fix four workflow-retry follow-ups: durable no-policy failures, Batch attempt resume, download dedupe cutoff, analyzer retry state (SKY-15922) (#8560) (e76ed6644)
- Preserve interaction fidelity when refining recordings (#8559) (9728e2488)
- Add workflow retry policy settings and attempt-aware run views (SKY-15802) (#8558) (cf65e535b)
- Retry a workflow run under the same run id when it ends in a chosen status or error code (SKY-15802) (#8557) (5fe4810b1)
- Serve the saved clear-browsing-data page on the secure code-block runner (SKY-16259) (#8556) (5c0a10481)
- Accept page.on('dialog', handler) on the secure CodeBlock runner by replaying it into the dialog policy (SKY-16258) (#8555) (6585581ae)
- Add controlled CDP-first screenshot experiment (#8554) (a1a40f779)
- Log screenshot capture-deadline timeouts at warning, not error (#8553) (59ea3a27b)
- Run a task's skipped terminal cleanup once when its handler could not fail the row (SKY-15729) (#8552) (678dda704)
- Preserve prerequisite actions in recording refinement (#8551) (ab00bff79)
- Add user-selectable browser type for workflows and runs (backend) (#8550) (3135143fc)
- Add provider download polling lifecycle logs (#8548) (ba206b0e6)
- Improve screenshot capture failure observability (#8547) (4822876e8)
- Fix recording refinement tool surface (#8546) (71fc88d2c)
- Run a new non-enterprise workflow's task blocks on Task V3 by default (SKY-16293) (#8545) (fcc14e827)
- Alert when the weekly test-durations refresh stops landing (SKY-16225) (#8544) (26bd1d2cc)
- Send a refused combobox back to the rows the tool named (SKY-16261) (#8543) (bb33e9593)
- Release the copilot turn's cached browser driver when the turn exits (SKY-16220) (#8541) (9870858fe)
- Record Browser: intent-aware refinement of code-first recordings (#8540) (57a697ce2)
- Re-check run status at the block execute handoff so canceled runs stop before any effect (SKY-16168) (#8539) (5604d8c4c)
- Copilot writes the saved-credential login when the page it scouted was already signed in (SKY-15656) (#8537) (ce942f4b7)
- Admit verification-URL blocks into the workflow-block engine A/B (SKY-14816) (#8536) (412c83324)
- Flag a nested helper's `global` on a block-local name and repair it as one scope defect (SKY-16213) (#8535) (34d0393e2)
- Tell Copilot how to read a saved generic secret in a code block (SKY-16181) (#8533) (12f052832)
- Return the producer-output facts the copilot binds against (SKY-15900) (#8532) (1402a0c7a)
- Name the branch behind each solve_captcha ok on the record (SKY-16237) (#8531) (e3ecbcbe1)
- Fix Agents header layout on narrow screens (#8530) (68d20bf70)
- SKY-15844: Publish blog categories and unblock content builds (#8529) (76ea4ee88)
- Keep a Copilot proposal across a server restart (SKY-15853) (#8528) (8d1391954)
- Stop appending the run ID to Send Email subjects (SKY-16062) (#8527) (f748fcc3b)
- Pass persisted failure reasons to user-defined error detection (#8526) (1aeb4e1f1)
- Raise whole-display recorder startup ACK deadline to 15s (SKY-15708) (#8525) (b7cf856db)
- Stop the agents-list Edit action from inverting against the theme (SKY-16087) (#8524) (b340c6a82)
- SKY-9971: capture delayed download 5xx responses (#8523) (d1b3c3ec3)
- Say which criterion wins when both describe the page (SKY-16193) (#8522) (bb59c6ea4)
- Name the click hit class for what it measures, and time the probe where production calls it (#8521) (89c9148ec)
- Report no success rate instead of 0% when an analytics window has no final runs (SKY-16218) (#8520) (9355f4744)
- Recreate a wiped browser console-log directory instead of dropping the page's output (SKY-15843) (#8519) (615c3e922)
- Evict detached CodeBlock frames on every page operation, not only in the frame report (SKY-15626) (#8518) (4f233c013)
- SKY-16064: Fix Recipes docs navigation, API-key auth, and cookbook (#8517) (d0c84407f)
- SKY-16169: Give the scrolling screenshot one millisecond budget covering capture, fallback and restore (#8516) (ce5f97bc7)
- Name the typeahead row-listing refusals on the error_class facet (SKY-16149) (#8515) (5e9a25365)
- Report session identity and dispatch facts when a copilot browser call dies mid-protocol (SKY-15786) (#8513) (68e6f1ad2)
- Declare one safe-namespace contract for both CodeBlock executors (SKY-14776) (#8512) (2ca614c8e)
- Make the blocked-inline recovery timeout test assert the bound, not the scheduler (#8511) (1ad3fe1cd)
- Account for the error_class values the source census cannot read (SKY-16131) (#8510) (be7007f45)
- Carry the billing tier into Task V3's engine-routing experiments (SKY-16082) (#8508) (1c3af4c96)
- SKY-15740 Use question-response URLs for credential handoff (#8507) (6a7472179)
- Stop re-asking for a credential the user already approved (SKY-15795) (#8506) (1b0cbe043)
- Record how each Task V3 tool call addressed its target, and why it failed (#8505) (f1a1d8eac)
- Backfill the docs changelog for July 2 to September 7, 2026 (SKY-15824) (#8504) (bea8fffd0)
- Record each run's resolved browser family and proxy vendor in a cloud-only sidecar table (SKY-14593) (#8499) (7cd6e8400)
- Stop a non-owning broker daemon from clobbering the live daemon's state and control socket (SKY-15846) (#8497) (35cfb314f)
- Admit a blog route removal only behind a reviewed 301 redirect (SKY-15847) (#8496) (46fc8f0d8)
- Keep a run's repairable block failure when a later record concludes nothing (SKY-15902) (#8495) (491da1619)
- Hold a give-up while verification-code polling budget is still unspent (SKY-15918) (#8494) (d0615cbe5)
- Report a draft test's repair against the snapshot the run executed (SKY-15658) (#8493) (3098ea04f)
- SKY-15889: Record CAPTCHA helper attempts across code executors (#8492) (f31ddd138)
- Reuse saved credentials and recover login selection in Copilot (SKY-15796) (#8491) (fa5bd084e)
- Keep the recording mouse follower visible through page changes (#8490) (fa66df6f3)
- Avoid replaying ordinary JavaScript ReferenceErrors (SKY-15778) (#8489) (eaf994227)
- Guard the browser console-log append against a wiped log directory (SKY-15843) (#8487) (709f804d7)
- SKY-15908: Let Copilot edit pending workflow drafts (#8485) (90dee482f)
- Bump version to 1.0.53 (#8484) (a2a928b39)
- Record keypress gestures in Record Browser (#8481) (5eb8e45ca)
- Declare beautifulsoup4 as a server runtime dependency so services stop crash-looping at import (SKY-15788) (#8468) (1c978f338)
- Add a web search helper for code blocks and the Copilot so lead-discovery workflows stop scraping Google and Bing (SKY-15737) (#8464) (35cb497c9)
- Close a crashed browser tab so the next attach reaches a live target (SKY-15735) (#8463) (45941d646)
- Phase 0 W1: typed decomposition of the v3 loop/bootstrap — byte-identical refactor (#8462) (79288cff5)
- Log scrape-retry exhaustion at warning, not error (SKY-15724) (#8461) (7ef6e8bc2)
- Remove the Copilot terminal envelope and its render flag (SKY-15676) (#8460) (eeaaa6f95)
- Recognize JS-wired submit controls in the explicit-submit click bypass (SKY-15195) (#8459) (287867e72)
- Drop the wall-clock bound from the download-drain timeout test (#8458) (84d634421)
- Let Copilot read and act on the page a credential run left instead of refusing on taint (SKY-15502) (#8456) (b37c56c49)
- Grant the Estuary CDC role SELECT on three app tables missing from the warehouse mirror (SKY-15607) (#8449) (6c15069e8)
- security: upgrade react-router-dom to 7.18.2 (#8287) (f84345978)
- Drop error-code entries that render unusable, matching the guard CodeBlock already applies (#8448) (c348877af)
- Give every question part a field it can be answered in (SKY-15616) (#8447) (7f1312827)
- Re-read a finalized run's timeline instead of latching a stale snapshot (SKY-15614) (#8446) (dadc9f1c3)
- Name vendor browser-creation failures so the log carries the attribution (SKY-15571) (#8445) (9cfa3c762)
- Renew the browser-session activity lease from the attached run (SKY-15568) (#8444) (4f92d545a)
- Let Task V3 choose its own user-defined error code instead of having one matched on (#8443) (543464883)
- Task V3 combobox collapse: node-keyed veto maps and refusal refinements (SKY-15514) (#8441) (1076d3fed)
- Remember perception states for the whole run, not the last eight (SKY-14998) (#8440) (7e6c631a4)
- Sidebar: replace the Getting started nav row with a progress card (SKY-15526) (#8438) (ef5afc07b)
- Recover a copilot reply when the chat stream drops without a final message (SKY-15412) (#8437) (8c759de53)
- Compile the attach worker's two wheel-less C extensions in a builder stage (#8436) (8eacacc60)
- SKY-15308 Tell a repeat failing repair attempt whether its own code changed (#8435) (73785dba8)
- Show the billing error and a Go to Billing link when Discover hits a 402 (SKY-15589) (#8434) (c25fc3fc5)
- Let the screenshot supply a value the page can then address by that value (SKY-15537) (#8433) (2b850d10c)
- Persist a terminal decision row for budget-exhausted and loop-error Task V3 deaths (#8432) (7e376a918)
- SKY-15406: Record which gesture cancelled a copilot turn, and stop asserting the user did it (#8431) (e90c6b18b)
- Release the studio Stop button and block controls when the focused run goes away (SKY-15507) (#8430) (8abdfa95c)
- Honor set_default_timeout on the secure CodeBlock runner (#8429) (5474aa9fb)
- Carry the denying CodeBlock guard onto the block output production actually persists (SKY-15570) (#8428) (feb4f115a)
- SKY-15561 follow-up: a failed arm read logs unknown, not never-resolved (#8427) (083979203)
- Apply the PBS startup-timeout composite retune and stop the duplicate 504 ticket stream (SKY-14223) (#8426) (cc1509eae)
- Commit a single filtered AngularJS ui-select match during text input (#8425) (36f58c78f)
- Grade Google connection health on granted scopes, not requested (SKY-15422) (#8424) (9276e5b4e)
- Route prompt-branch condition evaluation through the workflow engine A/B (#8423) (f1935f6f1)
- Add organization IDs to invalid custom LLM warnings (SKY-15488) (#8422) (603963f14)
- Task V3: grant one final observed turn at every budget cap trip (SKY-15420) (#8421) (1ce1fd44d)
- Let copilot ask for a login credential with a tool that opens the in-chat card (SKY-15409) (#8420) (827b70a2a)
- Render a Copilot crash exit as a crash, not as a browser-operation failure (SKY-15512) (#8419) (994c73a6f)
- Remove the dead Task V3 auto-observe code path (#8418) (204083037)
- Stop frontend session pollers on 401/403 instead of retrying every second (#8417) (f6da47b67)
- Finish the page-analysis deadline downgrade that #15988 started (#8416) (1c68c19b1)
- Demote the duplicate error log on the final degraded page reload (#8415) (c144bcb15)
- Workflow editor: expose the Skyvern 3.0 engine on validation blocks and the default engine list (SKY-15523) (#8414) (ca7ef9999)
- SKY-15416 Keep tested workflow outputs available for Copilot repairs (#8413) (7e6dbf641)
- Resolve a Google connection named in the request to its stored id (SKY-15324) (#8412) (b1a5c66fd)
- Report handled post-action artifact timeouts at warning instead of error (#8411) (1a6630352)
- Task V3: persist the finish verdict as the terminal decision action so v3 blocks show step details (SKY-15346) (#8410) (6390dd93a)
- Task V3: collapse duplicate-rendered combobox suggestion rows to one candidate (SKY-15388) (#8409) (5f71204b2)
- Pin TLS minimum version on test HTTPS server fixtures (#8407) (8e9df0a4f)
- Log cede-control with no VNC channel at info, keep take-control at warning (#8405) (653ef4a1f)
- Add the engine discriminator and loop wall-clock to the task duration telemetry (SKY-15499) (#8404) (52eef687e)
- SKY-15418 Make output policy block reasons countable (#8403) (146e654a0)
- SKY-15407 Report whether a copilot workflow edit is staged for review or accepted automatically (#8402) (53875e962)
- Recover the pre-block screenshot over raw CDP when the page capture fails (SKY-15378) (#8401) (560d336eb)
- Log the Playwright call-log stage on screenshot timeout (SKY-15447) (#8400) (841f045b5)
- Record why a browser session was closed so an aborted one is not counted as completed (#8399) (1126ec96f)
- Carry the organization id on the questionnaire reservation response (#8398) (c29df453c)
- Add data export to the extraction block (SKY-15396) (#8397) (d30239036)
- Show the second-workflow credit offer as a "Run a second agent" row on the Getting started track (SKY-15362) (#8396) (70e9b6f87)
- Report the keys that were available when a block template reference fails (SKY-15419) (#8395) (c6a991dc9)
- SKY-15316: Commit the Copilot build-test run outcome before post-run browser enrichment (#8394) (b6813d6c9)
- fix(SKY-15371): clean up confirmed download popups at the action seam (#8393) (2008985cd)
- fix(mcp): return a structured error for out-of-schema workflow_run_list arguments (#8392) (dccf52e46)
- Show new organizations a Getting started track in the cloud sidebar (SKY-15298) (#8391) (0479adc96)
- Delete 30 test files that catch no production regression (#8390) (3fbfcf603)
- fix: log FailedToNavigateToUrl at warning not error (#8389) (0d63b0b26)
- Route data-scrubber cron schedule to fairness generation queue (SKY-13661) (#8388) (0919c6892)
- Upload PR screenshot evidence with gh --attach (#8387) (b102fb11c)
- Classify flag evaluability in the SDK's pre-filter order (follow-up to #16461) (#8386) (fddaaf058)
- Task V3: canonical progress tracker, Phase A log-only (SKY-15379) (#8385) (84e8dfbd2)
- test(SKY-15375): pin fcntl high-word denial and bare-globals divergence (#8384) (23d97e942)
- Revert "Replace per-page local recordings with one 720p display recording (SKY-13472)" (#16079) (#8382) (b4436490d)
- Stop heartbeat timeouts from killing live runs on pegged worker nodes (SKY-15399) (#8380) (43b7c1ba5)
- docs(datadog): record P0 legacy workflow-run canary fix on monitor 19652478 (SKY-9558) (#8379) (f97702d96)
- Stop marking an artifact scrubbed when its object is still in S3 (#8378) (a3f2b7031)
- Secure CodeBlock: close MatchClass policy bypass, default-deny child seccomp (SKY-15318) (#8377) (90a98b6f4)
- Stop hard-blocking Copilot replies that name a run id or internal tool (SKY-15313) (#8376) (11de5f6be)
- feat(landing): carry first-touch UTM into app CTA links (SKY-15370) (#8375) (df8739a51)
- Make second-workflow credit claims recoverable and rerun-safe (#8374) (d371ed063)
- Wrap long Copilot messages inside the chat pane (#8373) (8521ac222)
- Return browser session unchanged on a transient Temporal query rejection (#8372) (6ecf87b75)
- Inherit block TOTP config when a static-script run signature omits it (SKY-15221) (#8371) (0acca7abe)
- Task V3: tier-1 semantic commit read — decisive-accept-only ARIA/value probe ahead of the shape heuristics (SKY-15322) (#8370) (839791835)
- fix: close two FE error-tracking noise-filter gaps (SKY-15333, SKY-15334) (#8369) (bc6c80c88)
- Add schema-directed Parquet workflow exports (#8368) (1f0454a8d)
- Replace per-page local recordings with one 720p display recording (SKY-13472) (#8367) (3f2628117)
- Treat a terminating worker tail as committed and let lone replicas migrate (#8366) (0a0dbc9d7)
- Declare a JSON type for the skyvern_finish output param in the MCP schema (#8365) (ffac27991)
- Surface the provider's reasoning summary on Task V3 action rows where available (#8364) (4fb1aff30)
- Task V3: detect undeclared drill-down categories, verify pill/opaque/async combobox commits, and stop refusing already-committed fields (#8363) (60fbf0808)
- Keep Copilot outcome status in the activity feed (SKY-15293) (#8362) (65707eae3)
- SKY-15277: Evaluate the active browser frame, not the main document (#8361) (e43c4976e)
- Flag-gated ATS eligibility-defaults guidance for Task V3 (#8360) (48bd76dd2)
- SKY-15287 Let Copilot use explicit access-link destinations (#8359) (52bb91661)
- SKY-15305: Bind delayed session downloads into build-test output (#8358) (1e61a8b9c)
- SKY-15304 Keep Copilot test runs on Live (#8356) (cdf320b7c)
- Remove the biased workflow_status log field in favour of workflow_run_status (#8355) (d9dbcba2a)
- Persist the model's turn reasoning on Task V3 action rows (#8354) (bde7e27b3)
- SKY-15214: replace the Studio run failure card with a strip line (#8353) (52491e7ef)
- SKY-15268 Copilot account state names each saved credential's tested site and authenticator (#8352) (c10d7f50e)
- SKY-15269 Preserve current-page inspection after credential runs (#8351) (791be964b)
- Preserve Copilot drafts after build-test connection failures (SKY-15148) (#8350) (f19c46700)
- SKY-15270: Show Copilot only the arguments each browser tool accepts (#8349) (9693986ec)

**Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v1.0.52...v1.0.53


## What's Changed
* SKY-15270: Show Copilot only the arguments each browser tool accepts by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8349
* Preserve Copilot drafts after build-test connection failures (SKY-15148) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8350
* SKY-15269 Preserve current-page inspection after credential runs by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8351
* SKY-15268 Copilot account state names each saved credential's tested site and authenticator by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8352
* SKY-15214: replace the Studio run failure card with a strip line by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8353
* Persist the model's turn reasoning on Task V3 action rows by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8354
* Remove the biased workflow_status log field in favour of workflow_run_status by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8355
* SKY-15304 Keep Copilot test runs on Live by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8356
* SKY-15305: Bind delayed session downloads into build-test output by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8358
* SKY-15287 Let Copilot use explicit access-link destinations by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8359
* Flag-gated ATS eligibility-defaults guidance for Task V3 by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8360
* SKY-15277: Evaluate the active browser frame, not the main document by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8361
* Keep Copilot outcome status in the activity feed (SKY-15293) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8362
* Task V3: detect undeclared drill-down categories, verify pill/opaque/async combobox commits, and stop refusing already-committed fields by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8363
* Surface the provider's reasoning summary on Task V3 action rows where available by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8364
* Declare a JSON type for the skyvern_finish output param in the MCP schema by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8365
* Treat a terminating worker tail as committed and let lone replicas migrate by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8366
* Replace per-page local recordings with one 720p display recording (SKY-13472) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8367
* Add schema-directed Parquet workflow exports by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8368
* fix: close two FE error-tracking noise-filter gaps (SKY-15333, SKY-15334) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8369
* Task V3: tier-1 semantic commit read — decisive-accept-only ARIA/value probe ahead of the shape heuristics (SKY-15322) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8370
* Inherit block TOTP config when a static-script run signature omits it (SKY-15221) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8371
* Return browser session unchanged on a transient Temporal query rejection by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8372
* Wrap long Copilot messages inside the chat pane by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8373
* Make second-workflow credit claims recoverable and rerun-safe by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8374
* feat(landing): carry first-touch UTM into app CTA links (SKY-15370) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8375
* Stop hard-blocking Copilot replies that name a run id or internal tool (SKY-15313) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8376
* Secure CodeBlock: close MatchClass policy bypass, default-deny child seccomp (SKY-15318) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8377
* Stop marking an artifact scrubbed when its object is still in S3 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8378
* docs(datadog): record P0 legacy workflow-run canary fix on monitor 19652478 (SKY-9558) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8379
* Stop heartbeat timeouts from killing live runs on pegged worker nodes (SKY-15399) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8380
* Revert "Replace per-page local recordings with one 720p display recording (SKY-13472)" (#16079) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8382
* test(SKY-15375): pin fcntl high-word denial and bare-globals divergence by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8384
* Task V3: canonical progress tracker, Phase A log-only (SKY-15379) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8385
* Classify flag evaluability in the SDK's pre-filter order (follow-up to #16461) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8386
* Upload PR screenshot evidence with gh --attach by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8387
* Route data-scrubber cron schedule to fairness generation queue (SKY-13661) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8388
* fix: log FailedToNavigateToUrl at warning not error by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8389
* Delete 30 test files that catch no production regression by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8390
* Show new organizations a Getting started track in the cloud sidebar (SKY-15298) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8391
* fix(mcp): return a structured error for out-of-schema workflow_run_list arguments by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8392
* fix(SKY-15371): clean up confirmed download popups at the action seam by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8393
* SKY-15316: Commit the Copilot build-test run outcome before post-run browser enrichment by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8394
* Report the keys that were available when a block template reference fails (SKY-15419) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8395
* Show the second-workflow credit offer as a "Run a second agent" row on the Getting started track (SKY-15362) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8396
* Add data export to the extraction block (SKY-15396) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8397
* Carry the organization id on the questionnaire reservation response by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8398
* Record why a browser session was closed so an aborted one is not counted as completed by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8399
* Log the Playwright call-log stage on screenshot timeout (SKY-15447) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8400
* Recover the pre-block screenshot over raw CDP when the page capture fails (SKY-15378) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8401
* SKY-15407 Report whether a copilot workflow edit is staged for review or accepted automatically by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8402
* SKY-15418 Make output policy block reasons countable by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8403
* Add the engine discriminator and loop wall-clock to the task duration telemetry (SKY-15499) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8404
* Log cede-control with no VNC channel at info, keep take-control at warning by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8405
* Pin TLS minimum version on test HTTPS server fixtures by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8407
* Task V3: collapse duplicate-rendered combobox suggestion rows to one candidate (SKY-15388) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8409
* Task V3: persist the finish verdict as the terminal decision action so v3 blocks show step details (SKY-15346) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8410
* Report handled post-action artifact timeouts at warning instead of error by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8411
* Resolve a Google connection named in the request to its stored id (SKY-15324) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8412
* SKY-15416 Keep tested workflow outputs available for Copilot repairs by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8413
* Workflow editor: expose the Skyvern 3.0 engine on validation blocks and the default engine list (SKY-15523) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8414
* Demote the duplicate error log on the final degraded page reload by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8415
* Finish the page-analysis deadline downgrade that #15988 started by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8416
* Stop frontend session pollers on 401/403 instead of retrying every second by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8417
* Remove the dead Task V3 auto-observe code path by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8418
* Render a Copilot crash exit as a crash, not as a browser-operation failure (SKY-15512) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8419
* Let copilot ask for a login credential with a tool that opens the in-chat card (SKY-15409) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8420
* Task V3: grant one final observed turn at every budget cap trip (SKY-15420) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8421
* Add organization IDs to invalid custom LLM warnings (SKY-15488) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8422
* Route prompt-branch condition evaluation through the workflow engine A/B by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8423
* Grade Google connection health on granted scopes, not requested (SKY-15422) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8424
* Commit a single filtered AngularJS ui-select match during text input by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8425
* Apply the PBS startup-timeout composite retune and stop the duplicate 504 ticket stream (SKY-14223) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8426
* SKY-15561 follow-up: a failed arm read logs unknown, not never-resolved by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8427
* Carry the denying CodeBlock guard onto the block output production actually persists (SKY-15570) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8428
* Honor set_default_timeout on the secure CodeBlock runner by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8429
* Release the studio Stop button and block controls when the focused run goes away (SKY-15507) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8430
* SKY-15406: Record which gesture cancelled a copilot turn, and stop asserting the user did it by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8431
* Persist a terminal decision row for budget-exhausted and loop-error Task V3 deaths by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8432
* Let the screenshot supply a value the page can then address by that value (SKY-15537) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8433
* Show the billing error and a Go to Billing link when Discover hits a 402 (SKY-15589) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8434
* SKY-15308 Tell a repeat failing repair attempt whether its own code changed by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8435
* Compile the attach worker's two wheel-less C extensions in a builder stage by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8436
* Recover a copilot reply when the chat stream drops without a final message (SKY-15412) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8437
* Sidebar: replace the Getting started nav row with a progress card (SKY-15526) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8438
* Remember perception states for the whole run, not the last eight (SKY-14998) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8440
* Task V3 combobox collapse: node-keyed veto maps and refusal refinements (SKY-15514) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8441
* Let Task V3 choose its own user-defined error code instead of having one matched on by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8443
* Renew the browser-session activity lease from the attached run (SKY-15568) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8444
* Name vendor browser-creation failures so the log carries the attribution (SKY-15571) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8445
* Re-read a finalized run's timeline instead of latching a stale snapshot (SKY-15614) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8446
* Give every question part a field it can be answered in (SKY-15616) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8447
* Drop error-code entries that render unusable, matching the guard CodeBlock already applies by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8448
* security: upgrade react-router-dom to 7.18.2 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8287
* Grant the Estuary CDC role SELECT on three app tables missing from the warehouse mirror (SKY-15607) by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/8449
* Let Copilot read and act on the page a credential run left instead of refusing on taint (SKY-15502) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8456
* Drop the wall-clock bound from the download-drain timeout test by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8458
* Recognize JS-wired submit controls in the explicit-submit click bypass (SKY-15195) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/8459
* Remove the Copilot terminal envelope and its render flag (SKY-15676) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8460
* Log scrape-retry exhaustion at warning, not error (SKY-15724) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8461
* Phase 0 W1: typed decomposition of the v3 loop/bootstrap — byte-identical refactor by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/8462
* Close a crashed browser tab so the next attach reaches a live target (SKY-15735) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8463
* Add a web search helper for code blocks and the Copilot so lead-discovery workflows stop scraping Google and Bing (SKY-15737) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/8464
* Declare beautifulsoup4 as a server runtime dependency so services stop crash-looping at import (SKY-15788) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/8468
* Record keypress gestures in Record Browser by @cindehaa in https://github.com/Skyvern-AI/skyvern/pull/8481
* Bump version to 1.0.53 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/8484


**Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v1.0.52...v1.0.53

Related Repositories