What's Changed
Version bumped from 1.0.56 to 1.0.57
Recent Changes
- Bump version to 1.0.57 (#9282) (c531db3)
- Describe browser provisioning generically in two engine docstrings (SKY-20032) (#9287) (58fa8b7)
- Accept a Power BI result that exactly fills the saved row limit (SKY-20044) (#9286) (aab78a4)
- Give data-only Copilot code blocks a Goal that opens with their returned values (SKY-19371) (#9285) (96492c7)
- Group Agent settings into six folding groups with change summaries (#9284) (c4e014f)
- Start the display recorder bridge without OTel auto-instrumentation (SKY-19682) (#9283) (3dd728e)
- Store Credentials-page secrets in AWS Secrets Manager on self-hosted AWS (#9281) (6c7d2ce)
- Stop telling every deployment that credentials need a Bitwarden server (#9280) (90152d0)
- Doc: shortcut hints in context, a grip beside each step, an insert line between steps (#9279) (e7e6135)
- Reword three test comments about downstream readers (SKY-20031) (#9278) (c5910f3)
- Copilot demonstration: keep a click that loads a new page (#9277) (b62114d)
- fix(SKY-20024): list Demonstrate task after the matching steps in the Doc picker (#9276) (3961e83)
- Start a task demonstration from the Doc's step menu (#9275) (3391b6d)
- Doc: plain failure line, Enter runs the input box, truthful run results (#9274) (a0de4b5)
- Make typing in the Doc behave like Notion: quiet new steps, Enter on empty makes a note, / renames or replaces (#9273) (88740f4)
- Report start page and uploads on agent step nested-agent results (SKY-19823) (#9272) (d5f03a7)
- Ask to add or move a login's site when Copilot's sign-in card would refuse it (SKY-19941) (#9271) (5e410cd)
- Stop the API rescanning every module on each Playwright call from a frozen frame (SKY-18774) (#9270) (b549074)
- Upgrade oauthlib to 4.0.1 in the cloud lockfile (SKY-20014) (#9269) (4b98af6)
- Move the Nango services into one package with a single import surface (#9268) (731c53c)
- Flag a Doc loop that goes through a whole step result instead of its list (SKY-19996) (#9267) (ffe6910)
- Let users demonstrate one block of an existing agent after its earlier blocks run (SKY-19879) (#9266) (91493f4)
- Release the save lock when the Doc's Run pre-save fails (SKY-19997) (#9265) (ccf3d21)
- Fill a demonstrated credential in the iframe its field lives in (#9264) (2e2ee03)
- Show what each Copilot test run cost and say why a test browser did not start (SKY-19921) (#9262) (473caf5)
- Give each live view its own stream id and close a viewer whose relay stops (SKY-19931) (#9261) (0ba5e66)
- Let Copilot take Word .docx SOPs from Upload SOP and the chat, and read them (SKY-19934) (#9260) (e6f31a5)
- Stop saving Chrome's regenerated extension rules in browser profile archives (#9259) (f90df89)
- Remove the ANALYTICS_DASHBOARD, onboarding_questionnaire_v1 and ENABLE_DISCOVER_COPILOT_HANDOFF flags now that they are on for everyone (SKY-4553) (#9258) (7248f4f)
- Show a failed code block's own error, page and Fix with Copilot, and carry it in the API (SKY-19918) (#9257) (8ecd47d)
- Wait for the browser to record a committed page before reloading it (SKY-19509) (#9256) (a75193a)
- Keep the step you are typing in on screen after Cmd+S in the Doc (#9255) (d215d2b)
- Count a tunnel failure as the site's when the proxy vendor could not reach the host (SKY-17599) (#9254) (027fe46)
- feat: simplify Power BI and Gmail sign-in (SKY-19899) (#9253) (1800c72)
- Document the receiver 503 and report owner_not_authorized for restricted credential_id triggers (SKY-18604) (#9252) (f1f938a)
- Let code blocks read the text of a downloaded document (SKY-19726) (#9251) (86217c8)
- Charge a code block's zero-action minimum once per label per run (SKY-19917) (#9250) (1be9cb2)
- Turn off Edge component updates in Linux worker and PBS profiles (SKY-19857) (#9249) (5991e56)
- Drop the internal doc link from the VNC keycode docstring (SKY-19952) (#9248) (950aaa2)
- List an href-less link beside the Task V3 card whose click misses it (SKY-18877) (#9247) (08d206a)
- Drop the global dependency override that rebuilt every request's dependency tree (SKY-18774) (#9246) (daf346d)
- Make Doc steps read like Notion: no box on step text, controls on hover, chips on the text line (#9245) (c56274b)
- Show the run-blocker list unless the Doc is actually on screen (#9244) (5983595)
- Recover a statement the browser refuses to frame on a Task V3 download block (SKY-19922) (#9243) (441d830)
- Keep a just-added Doc step quiet until you leave it, run or save (#9242) (92f1c17)
- Quieter single-step runs in the Doc: no debug toast, no empty screenshot box, asks for missing inputs (#9241) (6639608)
- Say a failed Doc step in plain words and offer Browser Task for multi-action Browser Actions (#9240) (86fca1e)
- Place a visible CAPTCHA refusal on the visit whose document showed it (#9239) (cb02d0e)
- Pipe the secret-mask test driver to node on stdin so CodeQL stops failing the OSS sync (SKY-14367) (#9238) (91c75f9)
- Upgrade follow-redirects, body-parser and qs in the frontend lockfile (SKY-19561, SKY-19383) (#9198) (73fbad9)
- Validate Bitwarden item ownership in Cloud (#9233) (4c948b2)
- Keep prompt and provider text out of text prompt block logs (#9232) (08aba25)
- Re-resolve a serialized run's saved profile at run start (SKY-19415) (#9231) (0024614)
- Route Power BI query execution through Nango (#9229) (e9dabaf)
- Run pre-commit and mypy as one 2-vCPU job, and check only the pushed range on main (SKY-19509) (#9228) (9ba3f1d)
- Gate the Estuary capture-stall monitor on a slot that stopped confirming WAL (SKY-19625) (#9225) (cbcd7c8)
- Run the CI pytest suite as 4 parallel shards (#9227) (57d1806)
- Upgrade pypa/gh-action-pypi-publish to v1.14.3 in the SDK release workflow (SKY-19487) (#9184) (a203cab)
- Upgrade qs to 6.16.1 and follow-redirects to 1.16.2 in the TypeScript SDK test lockfile (SKY-19244) (#9130) (139a954)
- Upgrade zod to 4.6.7 and @hookform/resolvers to 5.9.2 in the frontend (SKY-18966) (#9095) (fdd426c)
- Keep code-block action screenshots on responsive pages with slow PNG encodes (SKY-19607) (#9224) (5262f0a)
- Upgrade serialize-javascript to 7.1.4 in the TypeScript SDK client pnpm lockfile (SKY-19426) (#9173) (636925b)
- Keep the Stripe fence race test on one shared SQLite connection (#9223) (06f8809)
- Run only the blocking Semgrep rules on PRs; move the registry-pack scan to a weekly and manual workflow (#9222) (92fb313)
- Treat the ingress-off 404 as the dark state in the integration catalog (SKY-19523) (#9221) (5071938)
- A2A agent: a status question in a conversation that holds no run asks which run (#9220) (4d3351e)
- Hold a Task V3 type the same live dialog still refuses instead of retyping it (SKY-19408) (#9219) (b5681ee)
- Skip the second sign-out read in the bearer role lookup (SKY-19051) (#9218) (4c938a1)
- Offer an agent step login only from its own parameter_keys (SKY-19584) (#9217) (a7a75f4)
- Stop a finished task's background mouse movement before its browser closes (SKY-19594) (#9216) (f0e5a72)
- Enforce scoped API key permissions (#9215) (af5d1f7)
- Stop captcha frame probes from hanging when the page navigates mid-read (SKY-19570) (#9213) (38d3380)
- Let the Task V3 agent declare a job application in its first reply (off by default) (#9212) (27faf01)
- Seed RBAC roles from live Clerk memberships (#9211) (a9c34c1)
- Build the standalone tasks index test in a scratch database so an open snapshot elsewhere cannot hang it (SKY-19597) (#9210) (bed397d)
- Run self-contained slow tests only when their inputs change (#9209) (a7f236a)
- Record site-typed reCAPTCHA low-score rejections when the refused request is unambiguous (#9208) (b9ffcd0)
- SKY-18494: Treat a blank upload setting as unset in the secret check and proxied S3 uploads (#9207) (1943673)
- Show the browser Copilot is working in on the studio Browser pane (SKY-19459) (#9206) (db9a08a)
- fix(studio): show a block screenshot on a step-index miss in the run view (SKY-19458) (#9205) (5d3f0ef)
- Test the fork helper's timeout, exit-code and traceback paths (SKY-19532) (#9204) (b816a60)
- Run the npm-audit runner pick on Blacksmith instead of GitHub-hosted (SKY-19484) (#9203) (bffbe24)
- Add bounded Nango client and Power BI settings (#9202) (8ac4e0c)
- Add Power BI Nango connection storage (#9201) (40b26bd)
- Upgrade follow-redirects to 1.16.2 in the support agent lockfile (SKY-19561) (#9200) (3b11388)
- Keep the integrations catalog loading when the forwarding availability check fails (SKY-19523) (#9199) (b8dbe98)
- Record the application-context defaults ruling (SKY-18811) (#9196) (f86df26)
- Add email forwarding setup and inbox UI (SKY-14152) (#9195) (314ea80)
- Pin the select_combobox twin-row count and its unchanged-filter refusal (SKY-19549) (#9194) (d657191)
- Merge an input[role=combobox] with its accessibility entry in observe (SKY-19544) (#9193) (e8c7292)
- Clear an unverified secret field before failing closed (SKY-19543) (#9192) (4dde902)
- Reject reuse of revoked email forwarding addresses (SKY-14150) (#9191) (6a415d0)
- Receive and recover forwarded email 2FA codes (SKY-14151) (#9190) (eed9fa1)
- Add OSS email 2FA forwarding ingestion foundation (SKY-14150) (#9189) (5d74abe)
- Accept legacy Excel exports under .xls claims (#9188) (5023737)
- Give an agent step with no tool list no tools, and start new editor steps with nine (SKY-19261) (#9185) (c7cd36d)
- Normalize MCP workflow output summaries once instead of per nesting level (#9182) (5260ddd)
- Wait for the blocked navigation's error page in the egress monitor browser test (SKY-19066) (#9181) (daeedc3)
- Show the Browser pane in place of the Editor while demonstrating a task (SKY-19272) (#9180) (2720fe1)
- Stop Copilot reporting every replayed demonstration step as failed (SKY-19358) (#9179) (940558b)
- update worker config (#9178) (9d02837)
- Wait for the pytest template to go idle instead of failing on a brief session (SKY-19086) (#9177) (48efb4a)
- Create forced browser sessions only when the run starts (SKY-18937) (#9176) (dff1cd9)
- Show why a credit top-up was refused on the billing page (SKY-19447) (#9175) (c9d37b1)
- Doc editor slice 2: read-only Doc view behind WORKFLOW_DOC_EDITOR (SKY-18180) (#9170) (ff5b878)
- Doc editor slice 1: notes and descriptions on workflow steps (SKY-18180) (#9169) (92bd563)
- Bound workflow YAML block validation by dispatching on block_type (SKY-19396) (#9168) (d8e6ee8)
- Match a failed run's closed-recording network facts against the user's error codes once (SKY-19084) (#9167) (fbc32a8)
- Skip loading task extraction results when building run status (#9166) (80fa285)
- Keep ad click IDs with marketing consent and store them with new accounts (SKY-18021) (#9165) (f94a1cd)
- Add five SEO directories to the catalog as candidates (SKY-18055) (#9164) (0cd4567)
- Let Task V3 type into a field that already holds the caret under an invisible layer (SKY-19320) (#9161) (b804c6e)
- Cancel a trial by turning off the day-14 charge, keeping access to trial end (SKY-19338) (#9160) (7a30e0b)
- Start the safety screen's backup provider when the first one hangs (SKY-18431) (#9159) (0bb9753)
- Docs: sync with production (2026-10-28) (#9158) (123242a)
- Make inline workflow secrets write-only (#9157) (a6e17ca)
- Show signups by country group for each source in the marketing daily (SKY-19331) (#9156) (967fd75)
- Load the saved browser profile when the review card's Test end-to-end runs (SKY-19307) (#9155) (fa2c00f)
- Stop re-sending a failed run's screenshot to Copilot after a later run (SKY-19247) (#9154) (4c7249a)
- Add the LinkedIn signup campaign by week to the Sales daily (SKY-18742) (#9153) (06127da)
- Refuse block outcome writes from an execution that no longer owns the run (SKY-18224) (#9152) (4e144d4)
- Keep a refused final write from shielding a stale run, and deliver external cancels to the running owner (SKY-18224) (#9151) (37dd6c4)
- Keep a workflow run that won its terminal status write from being cancelled on lease loss (SKY-18224) (#9148) (97b82cb)
- Let Copilot's rejected-login card offer Sign in myself and report outcomes as facts (SKY-19306) (#9147) (ebc8d62)
- Save the pre-block export before Task V3's download baseline in its outside-hold test (SKY-18812) (#9146) (2e6d229)
- Name the missing reference when a CodeBlock template fails to render (SKY-19251) (#9145) (3abea10)
- Give saved-profile human-interaction runs a browser session the API can reach (SKY-18844) (#9144) (a57778d)
- Copilot: stop rewiring conditional workflows, report skipped blocks, order parallel edits, show time left (SKY-19245) (#9143) (36b30b0)
- Report anti-bot failures as system errors without a model call (SKY-19084) (#9140) (176dbde)
- Update changelog — Week of October 26, 2026 (#9139) (c14028e)
- Add Settings audit log page (SKY-18938) (#9138) (e633d4c)
- Show the cost per paying customer for each ad platform in the marketing daily (SKY-17621) (#9137) (f90c553)
- CASA 3.2.2 - Bind MCP OAuth redirect URIs to each registered client instead of a ChatGPT prefix (#9136) (1116b2a)
- Restore three Ashby replacement reCAPTCHA tokens as a protective rollback (SKY-19087) (#9135) (c0efd0b)
- Docs: sync with production (2026-10-27) (#9134) (d6a5255)
- Email paying orgs that have run nothing for 56 days (off by default) (#9133) (53f2368)
- Upgrade qs to 6.16.1 in the Claude Desktop bundle (SKY-19242) (#9132) (04e2c43)
- Install the exact Node version the version file names in every image (SKY-19222) (#9129) (11ca4e2)
- Reject invalid V1 browser-native downloads during finalization (#9128) (b58af52)
- Keep a reaped run's final status when the lease check itself fails (SKY-18224) (#9127) (a217ce1)
- SKY-19084 A2: own the final failure diagnostic only through this execution's conditional terminal write (#9126) (dbfd3a9)
- Finish the reaper's task v2 branch through the workflow service (SKY-18224) (#9125) (aa83f63)
- Refuse to start a child task once the run lease is lost (SKY-18224) (#9123) (bf79c97)
- Sync the runs list inline when the orphaned run reaper fails a task (#9122) (ea376c9)
- Pace run lease heartbeat retries after an exception (#9121) (3fbd655)
- Keep the custom proxy credential test from failing on timestamp digits (SKY-18224) (#9119) (5211589)
- Add agent step architecture docs, charter and routing skill (SKY-19145) (#9118) (7e23734)
- Let authors add the agent block in the workflow editor when its flag is on (SKY-19135) (#9117) (11675d2)
- Turn on posting for the Mon/Wed/Fri job application results report (SKY-19143) (#9116) (98b94e4)
- CASA 4.1.3 - Encrypt stored secrets with AES-256-GCM, part 1: read support and decrypt-and-compare API-key lookup (#9115) (8c1652e)
- Reject error pages on all download paths (#9114) (7a778ee)
- Fall back to the live element handle when the driver cannot resolve a Task V3 act marker (#9113) (3623c43)
- Send the card-required trial emails in production (turn off the dry run) (#9111) (d1b6258)
- Fail complete-on-download blocks on partial success (#SKY-18526) (#9110) (236e61d)
- Remove the PostHog HIPAA gate now that a BAA covers every PostHog product (#9109) (f629a2b)
- Add an agent block that calls this run's tools until it can return schema fields, behind one flag (SKY-19057) (#9108) (a13d1d9)
- Turn on trial auto-convert and dry-run trial emails in US production (#9107) (1ac8ab5)
- Send GPT's earlier reasoning back with its tool calls (SKY-19191) (#9106) (ba7169d)
- Check the hung rescue stage deadline without a wall-clock bound (SKY-19167) (#9105) (862fc81)
- Keep pre-launch customers on Free when they leave a paid plan under the card-required trial (#9104) (a096b41)
- Rebuild Patchright's selector scope tree when Chromium rejects a deep DOM describe (SKY-19055) (#9103) (77caed3)
- Stop reporting the built-in missing-one-time-code error beside the block's own code (SKY-19162) (#9102) (0399724)
- Keep a one-time code whole in a Task V3 field that drops typed keys (SKY-13943) (#9100) (dd76873)
- Keep split-PDF page excerpts within the planner input token budget (SKY-19153) (#9099) (64493bc)
- Replace Free plan copy with the 14-day card-required trial (#9097) (b04c3f7)
- Restore LLMConfigRegistry after test_openrouter_error_propagation so the Copilot route test is order-independent (#9096) (49e948e)
- Run Copilot on openai-agents 0.19.4 and openai 2.54 with no change in behavior (SKY-19058) (#9094) (46cb62b)
- SKY-18537: Make cron-worker the only event-trigger dispatcher (#9091) (1b2cb4a)
- Keep at least one vendor session worker running through node drains (SKY-19008) (#9084) (3caa168)
- Upgrade vite, vitest and fast-uri in the TypeScript SDK client lockfiles (SKY-18764) (#8994) (0cf31d7)
- Upgrade follow-redirects, vite and undici in the frontend lockfile (SKY-18764) (#8993) (7cbf78c)
- Answer a rejected Bitwarden master password on the items listing with 400, not 502 (SKY-19014) (#9083) (81d4d07)
- Build the step and task archive ZIPs on a thread so deflate does not block the event loop (#9080) (2094b01)
- Hold a Task V3 run's first terminated verdict once and ask for the source of the stop (SKY-18980) (#9079) (5c4d7d2)
- Look up a complete run or task ID by primary key in the runs list search (SKY-18408) (#9078) (46fcf74)
- Keep the agent's evaluate calls in the page's main world (SKY-18988) (#9077) (7708569)
- Mark the git blob SHA-1 in the copilot eval readiness test as not used for security (SKY-19002) (#9076) (c4022dd)
- Fix the failing one-time-code browser tests in test_multi_field_totp.py (SKY-18990) (#9075) (0c28401)
- Disable telemetry by default for self-hosted installs (#9073) (647b920)
- Read files from an SFTP server as a File Download source (SKY-18299) (#9072) (23bd8af)
- Read files from an SFTP server as a File Download source (SKY-18299) (#9071) (6329a81)
- State the file count in download-block framing before the model decides (SKY-18769) (#9070) (ac83fc1)
- Record impersonating staff in organization audit events (#9069) (d840fe7)
- Right-align the self-hosted OIDC sign-out button (#9068) (733ca58)
- Turn on the orphan-schedule sweep's backend deletes for the production cron worker (SKY-18564) (#9067) (9a5f750)
- Pass the required arguments in the adopted-session blob download tests (SKY-18972) (#9066) (a228959)
- Send Copilot tool schemas without generated titles on Claude and terra routes (SKY-18928) (#9065) (b8b7448)
- Upgrade zod, undici and fast-uri in the internal dashboard lockfile (SKY-18965) (#9064) (017fceb)
- Run finite warehouse curator dry runs locally (SKY-18921) (#9063) (7518239)
- fix(ui): keep runtime API lookup valid (#9061) (c408eda)
- Document round-one self-hosted identity QA results (#9060) (4bf9d1a)
- Strengthen OIDC and RBAC regression coverage (#9059) (d944fbc)
- On-prem admins can view signed-in members (#9058) (75fa163)
- Audit OIDC sign-ins (#9057) (cb612b4)
- Omit request bodies for restricted organizations (SKY-18935) (#9056) (7b0774b)
- Stop logging workflow request and parameter values (SKY-18935) (#9055) (d9cf542)
- Add OpenID Connect sign-in to the self-hosted UI (#9054) (b789378)
- Add OIDC principals to self-hosted RBAC (#9053) (ce716f9)
- Delete the Temporal schedules of deleted schedules in the orphan sweep, behind a flag (SKY-18564) (#9052) (98aeb9c)
- Upgrade undici to 7.30.1 and body-parser to 1.20.9 in the Claude Desktop bundle (SKY-18930) (#9051) (77d4cc5)
- Upgrade undici to 7.30.1 and vitest to 4.1.12 in the frontend lockfile (SKY-18931) (#9050) (af74f15)
- RBAC v2 slice 4b part 1: frontend API layer for role settings (SKY-18909) (#9049) (863ed96)
- RBAC v2 slice 6 part 1: detect the downgrade pause once (SKY-18910) (#9048) (ad49492)
- Apply an agent's configured proxy region to API runs that omit one (SKY-18884) (#9047) (5dea641)
- Save the page DOM on every Task V3 turn step of sampled runs, and flush each turn as it ends (SKY-18892) (#9046) (2455831)
- Correct the drift-reader Phase 1 plan shape to what production plans today (SKY-14983) (#9044) (a7500d3)
- Fix the Task V3 answer audit's quote check, dropdown and placeholder plumbing, and bound its holds per task (#9043) (c5bd690)
- Keep the country calling code in an international phone field, and stop reporting a wrong one as entered (SKY-18890) (#9042) (c819046)
- Record one step per Task V3 turn, with its model call and tool calls, without changing bills (SKY-18790) (#9041) (1b81905)
- Return every in-loop 404/410 to the Task V3 model, behind a run-arm flag (SKY-16206) (#9040) (02e54f4)
- Stop routing benchmark-flagged runs to the deleted Hetzner fleet and remove Hetzner code paths (SKY-18907) (#9039) (a903a05)
- Keep Task V3 turn steps out of the per-step pricing skill's step counts (SKY-18896) (#9038) (7399bab)
- Task V3 observe: name a Yes/No button pair's question on both buttons and echo it on click (SKY-18212) (#9037) (9e71516)
- Charter: Task V3 gates act on recorded state, with a dated exceptions register (SKY-18888) (#9036) (abaf3df)
- Assert the radio click gate agrees with the driver instead of naming one Playwright version's aria-disabled shapes (SKY-18878) (#9035) (7350bb5)
- Drive the registered-browser deadline tests with a frozen test clock (SKY-18881) (#9034) (dd1f938)
- Log which locator matches Copilot was shown as visible (SKY-18704) (#9033) (5eb5a79)
- Upgrade pypdf to 6.21.2 and map its moved size-limit checks (SKY-18829) (#9032) (95e90db)
- Let Copilot find and use logins from a connected Bitwarden vault (SKY-18784) (#9031) (c664b0a)
- Save the final screenshot for Task V3 workflow blocks (SKY-18862) (#9030) (eccc1c6)
- Let the Task V3 model select a replayed CSV instead of refusing it by shape (SKY-18752) (#9029) (76ab663)
- Test the radio click gate against the driver's enabled check, not one Playwright version's rule (SKY-18878) (#9028) (daa3fce)
- Align the real-Chromium tests with planned browser replacement, pinned Patchright, Playwright 1.56 and full-Chromium type-ahead (SKY-18752) (#9027) (c1e5a03)
- Stop re-entering an externally supplied one-time code; generated TOTP unchanged (SKY-18619) (#9026) (b872da0)
- Revert per-snapshot curator evidence admission (SKY-18507) (#9025) (b0cbc1c)
- Persist run-end HAR encounters and page identity (SKY-18366) (#9024) (e6cfd45)
- Upgrade Playwright and Patchright to 1.56.0 (#9023) (6cf38e4)
- Fail the run at the first unexpected browser connection loss (SKY-18726) (#9022) (e9477af)
- Upgrade graphql-core to 3.2.12 and nbconvert to 7.17.2 in the lockfile (SKY-18864) (#9021) (c7833a5)
- Register a session browser before its first goto so later blocks see it (SKY-18860) (#9020) (5802141)
- Log and alert when a saved workflow version adds a skyvern-1.0 engine pin (#9019) (e8f1028)
- Serve browser test pages locally instead of from the internet (SKY-18854) (#9018) (637ea80)
- Build a task run response when the task has no navigation goal (#9016) (e4be69c)
- Add 19 agent benchmark cases built from failing production Task V3 runs (#9015) (9f08b9a)
- A2A Agent: Implement A2UI cards (#9014) (8b57799)
- Refuse browser egress to a destination we cannot resolve (SKY-18836) (#9013) (10b8d82)
- Keep tests from downloading the public suffix and GuardDog package lists (SKY-18833) (#9012) (903d352)
- Upgrade follow-redirects to 1.16.1 in the SDK test lockfile (SKY-18764) (#9007) (ff6a475)
- Show Upload an SOP and Demonstrate task cards under the Home prompt box (SKY-18697) (#9011) (957faa9)
- Handle interrupted native downloads in Task V3 (SKY-18624) (#9009) (218cb0c)
- Label the anti-bot benchmark's API version as API service context with its sampling time (#9008) (0a786fe)
- Treat an Accept 422 as proof the Copilot proposal was not saved (#9006) (5d657e1)
- Count only the secure runner's own failures in the code block run-kill alert (SKY-18464) (#9005) (a59e8c4)
- Restrict member temporary cleanup to test-login credentials (#9004) (0f23931)
- Hold a v3 give-up once for the one permitted retry after a typed site rejection (SKY-17487) (#9003) (f94b4f6)
- Document an email-forwarding path for email-based 2FA (#9002) (7927d1b)
- Import the curator worker through its cloud package in the advisory boundary test (#9001) (98d0ef7)
- Fix CodeQL polynomial ReDoS in MCP feedback report redaction (#SKY-18789) (#9000) (c1489cb)
- SKY-18797: Retry event-trigger submissions that never reached Batch (#8999) (18b4a4d)
- Run 12 pytest shards and 3 Vitest shards to cut PR CI wall time (#8998) (84f8e36)
- Task V3: a code endpoint that answers without a code reads as "not yet", not an error (SKY-18390) (#8997) (5d647ec)
- SKY-18798: enforce advisory-only curator authorization (#8996) (35bb602)
- Require submit evidence (#8995) (6c486e7)
- SKY-17536: Let MCP agents send feedback reports to the Skyvern team (#8991) (a3fe64c)
- Bound the engine 1.0 element lookup so a frozen page cannot stall an action (#8990) (73e49ce)
- Add final Gate 2 QA report (#8989) (273cef5)
- Exercise late-loop diagnosis through the local Copilot agent loop (#8988) (d01583b)
- Deliver the driver probe's late reply after the caller gives up, not on a timer (SKY-18759) (#8987) (03734a6)
- Stop the PBS worker run-error test turning a slow run into TimeoutError (SKY-18760) (#8986) (3dcc567)
- Grant warehouse capture access to challenge solves (SKY-18363) (#8984) (453c564)
- Stop answer-tile clicks from being reported failed or toggled off (#8983) (63c6385)
- Stop a self-hosted run from starting or writing loop output when another server holds its lease (SKY-18224) (#8982) (00ad00f)
- Protect API-key creation and provision role fixture key (#8981) (9e0691c)
- fix: block Zillow first-party PX bootstrap (SKY-18052) (#8980) (5ba0c70)
- Default new navigation blocks to no model override and drop empty model names on save (#8979) (016df8c)
- Hold the leave dialog's Save and Copilot Save inputs while authoring owns the editor (SKY-17997) (#8978) (2d761e7)
- Let Copilot offer a one-click demonstration when the user says they'll show it (SKY-18725) (#8977) (fd35bea)
- Record element-to-element drags in demonstrations and add a Copilot drag tool (SKY-18727) (#8976) (7f47c20)
- Keep runner stalls from expiring broker test requests before they are forwarded (SKY-18688) (#8974) (3c758c9)
- Parameterize Copilot eval models and report driving costs (#8973) (132c84e)
- SKY-18729 Demonstrate task: keep a skipped sensitive-field step in the step list (#8972) (7f0edf3)
- Retry a refused LLM call once on the route's fallback, then fail it (SKY-18342) (#8971) (6a1de0c)
- Show Copilot the recorded error of a page call a completed block caught (SKY-18206) (#8970) (0fc4361)
- [HOLD] Prepare disabled curator production wiring (SKY-18657) (#8969) (926f472)
- SKY-18718 Demonstrate task card: clearer description copy (#8968) (e729b3f)
- Hide Edit for imported 1Password credentials (#8964) (079351c)
- Update API specifications with fern api update (#8904) (623eb57)
- Add curator rollout and inherited consent controls (SKY-18570) (#8963) (a4fe637)
- Demonstrate task: consistent naming and entry point (SKY-17916) (#8962) (2910995)
- Disable Save while an authoring action or Copilot change holds the editor (SKY-17997) (#8961) (2b9edf9)
- Run every Task V3 test through production's agent setup (SKY-18395) (#8959) (1822679)
- Copilot: size the history budget from each model's pricing and context window (SKY-18319) (#8958) (dee4a47)
- Wait for the test child to finish exec before the browser-process check (SKY-18575) (#8957) (0e75b6a)
- Copilot: keep the current screenshot when the token budget's last-resort prune runs (SKY-18319) (#8956) (edafdaa)
- Stop the older Copilot turn when a new turn starts in the same chat (SKY-18319) (#8955) (29271c4)
- Add 1Password credential import UI (#8953) (4e681d0)
- Import and refresh selected 1Password items (#8952) (e604ee3)
- Complete imported 1Password credential surface parity (#8951) (34400ad)
- Restrict access to credential folders (#8950) (1ae950b)
- Keep credentials and request bodies off cross-origin redirects, and internal errors out of workflow-create responses (SKY-12526) (#8949) (2e02161)
- Make MCP sign-ins use member-bound API keys (#8947) (45dc4a0)
- Classify job-recipe bot checks separately from login failures (SKY-18228) (#8946) (2d274fc)
- Put a space between monitor handles that ran together so their alerts reach Linear and Slack (SKY-18474) (#8945) (599e656)
- Raise the production 1vcpu patchright fairness lane to 450 pods and lower the 0.5-vCPU lane to 350 (SKY-17804) (#8944) (6468aa8)
- Remove two no-action monitors and replace the any-5xx alert with a per-route 5xx count (SKY-18419) (#8943) (9f30f1e)
- Arm the reconnect tests' 1 s guard once the stop under test starts (SKY-18498) (#8942) (0841e73)
- Mirror the billing ledger tables to the warehouse and declare the Stripe mirror as a dbt source (#8940) (d5d64c2)
- Fix the growth-funnel unit-test fixture so the nightly dbt build runs again (SKY-17880) (#8939) (98045a1)
- Add event trigger dispatcher (#SKY-18483) (#8938) (efa027d)
- Harden script sandbox validation (SKY-18441) (#8937) (31a64c1)
- SKY-18462 Add signed event trigger receiver (#8936) (0dfbd6c)
- Apply the merged-but-unapplied Datadog monitor definitions, and make route-5xx applyable (SKY-15449) (#8935) (8604b8d)
- Stop closing the Studio editor from marking a workflow unsaved (#8934) (88b7115)
- Add cloud event trigger management API (SKY-18463) (#8933) (1e5e185)
- Remove the credential-rejection confirmation gate (SKY-18359) (#8932) (ab88b56)
- Add trigger receipt tables and repositories (SKY-18377) (#8931) (da5a164)
- Delete the two captcha wall-clock tests that turned main red (SKY-18442) (#8930) (74ef06f)
- Switch on Flutter web accessibility semantics so both readers can see canvas-drawn apps (SKY-18263) (#8928) (d5e79eb)
- Give both concurrent-index migration tests a scratch database so an open transaction cannot stall the build (SKY-18402) (#8926) (e66c233)
- Fail runs orphaned by a crashed self-hosted server (SKY-7819) (#8925) (8e73b4d)
- feat: attribute builder integrations in run telemetry (#8924) (3b67204)
- Send Claude effort keys' effort on Task V1 and cache its repeated task text (SKY-18372) (#8923) (b6c6fae)
- Upgrade mcp to 1.30.0 in the lockfile (SKY-18400) (#8922) (bed2561)
- Merge the retention pod weekly report into the daily report (SKY-18314) (#8921) (e4a9145)
- Skip DataDragon ledger DDL when the schema is current so concurrent runs stop deadlocking (SKY-18309) (#8920) (010331f)
- prevent HIPAA organizations' browsers from sending anything to PostHog (SKY-18315) (#8913) (48ff7d7)
- Pin claude-code-action to v1.0.165 in the Claude workflows (SKY-18245) (#8916) (ee70e25)
- Upgrade ajv to 8.20 in the skyvern-ts client pnpm lockfile (#8914) (f6d0413)
- Docs: add Grok Build to MCP setup (#8912) (3d389a0)
- Record run.completed, plan on the organization, and upgrade starts on the portal route (SKY-18287) (#8911) (acbce16)
- Stop HIPAA organizations from sending anything to PostHog from server code (SKY-18286) (#8910) (268421b)
- Keep each run's LLM choices in its own context instead of the shared app (SKY-16970) (#8908) (7566558)
- Read organization_pricing.ended_at in the staged pricing model so ended contracts stop accruing revenue (SKY-18295) (#8907) (fa85868)
- Give a tokenless Copilot Accept an outcome the client can read back (SKY-17870) (#8906) (717519a)
Full Changelog: v1.0.56...v1.0.57
What's Changed
- Give a tokenless Copilot Accept an outcome the client can read back (SKY-17870) by @AronPerez in #8906
- Read organization_pricing.ended_at in the staged pricing model so ended contracts stop accruing revenue (SKY-18295) by @AronPerez in #8907
- Keep each run's LLM choices in its own context instead of the shared app (SKY-16970) by @wintonzheng in #8908
- Stop HIPAA organizations from sending anything to PostHog from server code (SKY-18286) by @wintonzheng in #8910
- Record run.completed, plan on the organization, and upgrade starts on the portal route (SKY-18287) by @wintonzheng in #8911
- Docs: add Grok Build to MCP setup by @wintonzheng in #8912
- Upgrade ajv to 8.20 in the skyvern-ts client pnpm lockfile by @wintonzheng in #8914
- Pin claude-code-action to v1.0.165 in the Claude workflows (SKY-18245) by @wintonzheng in #8916
- prevent HIPAA organizations' browsers from sending anything to PostHog (SKY-18315) by @wintonzheng in #8913
- Skip DataDragon ledger DDL when the schema is current so concurrent runs stop deadlocking (SKY-18309) by @wintonzheng in #8920
- Merge the retention pod weekly report into the daily report (SKY-18314) by @wintonzheng in #8921
- Upgrade mcp to 1.30.0 in the lockfile (SKY-18400) by @wintonzheng in #8922
- Send Claude effort keys' effort on Task V1 and cache its repeated task text (SKY-18372) by @andrewneilson in #8923
- feat: attribute builder integrations in run telemetry by @AronPerez in #8924
- Fail runs orphaned by a crashed self-hosted server (SKY-7819) by @wintonzheng in #8925
- Give both concurrent-index migration tests a scratch database so an open transaction cannot stall the build (SKY-18402) by @wintonzheng in #8926
- Switch on Flutter web accessibility semantics so both readers can see canvas-drawn apps (SKY-18263) by @LawyZheng in #8928
- Delete the two captcha wall-clock tests that turned main red (SKY-18442) by @wintonzheng in #8930
- Add trigger receipt tables and repositories (SKY-18377) by @AronPerez in #8931
- Remove the credential-rejection confirmation gate (SKY-18359) by @AronPerez in #8932
- Add cloud event trigger management API (SKY-18463) by @AronPerez in #8933
- Stop closing the Studio editor from marking a workflow unsaved by @AronPerez in #8934
- Apply the merged-but-unapplied Datadog monitor definitions, and make route-5xx applyable (SKY-15449) by @AronPerez in #8935
- SKY-18462 Add signed event trigger receiver by @AronPerez in #8936
- Harden script sandbox validation (SKY-18441) by @AronPerez in #8937
- Add event trigger dispatcher (#SKY-18483) by @AronPerez in #8938
- Fix the growth-funnel unit-test fixture so the nightly dbt build runs again (SKY-17880) by @wintonzheng in #8939
- Mirror the billing ledger tables to the warehouse and declare the Stripe mirror as a dbt source by @wintonzheng in #8940
- Arm the reconnect tests' 1 s guard once the stop under test starts (SKY-18498) by @wintonzheng in #8942
- Remove two no-action monitors and replace the any-5xx alert with a per-route 5xx count (SKY-18419) by @wintonzheng in #8943
- Normal Sync by @wintonzheng in #8944
- Put a space between monitor handles that ran together so their alerts reach Linear and Slack (SKY-18474) by @wintonzheng in #8945
- Classify job-recipe bot checks separately from login failures (SKY-18228) by @AronPerez in #8946
- Make MCP sign-ins use member-bound API keys by @AronPerez in #8947
- Keep credentials and request bodies off cross-origin redirects, and internal errors out of workflow-create responses (SKY-12526) by @AronPerez in #8949
- Restrict access to credential folders by @AronPerez in #8950
- Complete imported 1Password credential surface parity by @AronPerez in #8951
- Import and refresh selected 1Password items by @AronPerez in #8952
- Add 1Password credential import UI by @AronPerez in #8953
- Stop the older Copilot turn when a new turn starts in the same chat (SKY-18319) by @andrewneilson in #8955
- Copilot: keep the current screenshot when the token budget's last-resort prune runs (SKY-18319) by @andrewneilson in #8956
- Wait for the test child to finish exec before the browser-process check (SKY-18575) by @wintonzheng in #8957
- Copilot: size the history budget from each model's pricing and context window (SKY-18319) by @andrewneilson in #8958
- Run every Task V3 test through production's agent setup (SKY-18395) by @andrewneilson in #8959
- Disable Save while an authoring action or Copilot change holds the editor (SKY-17997) by @cindehaa in #8961
- Demonstrate task: consistent naming and entry point (SKY-17916) by @cindehaa in #8962
- Add curator rollout and inherited consent controls (SKY-18570) by @andrewneilson in #8963
- Update API specifications with fern api update by @wintonzheng in #8904
- Hide Edit for imported 1Password credentials by @AronPerez in #8964
- SKY-18718 Demonstrate task card: clearer description copy by @cindehaa in #8968
- [HOLD] Prepare disabled curator production wiring (SKY-18657) by @andrewneilson in #8969
- Show Copilot the recorded error of a page call a completed block caught (SKY-18206) by @andrewneilson in #8970
- Retry a refused LLM call once on the route's fallback, then fail it (SKY-18342) by @andrewneilson in #8971
- SKY-18729 Demonstrate task: keep a skipped sensitive-field step in the step list by @cindehaa in #8972
- Parameterize Copilot eval models and report driving costs by @andrewneilson in #8973
- Keep runner stalls from expiring broker test requests before they are forwarded (SKY-18688) by @wintonzheng in #8974
- Record element-to-element drags in demonstrations and add a Copilot drag tool (SKY-18727) by @cindehaa in #8976
- Let Copilot offer a one-click demonstration when the user says they'll show it (SKY-18725) by @cindehaa in #8977
- Hold the leave dialog's Save and Copilot Save inputs while authoring owns the editor (SKY-17997) by @cindehaa in #8978
- Default new navigation blocks to no model override and drop empty model names on save by @wintonzheng in #8979
- fix: block Zillow first-party PX bootstrap (SKY-18052) by @LawyZheng in #8980
- Protect API-key creation and provision role fixture key by @AronPerez in #8981
- Stop a self-hosted run from starting or writing loop output when another server holds its lease (SKY-18224) by @LawyZheng in #8982
- Stop answer-tile clicks from being reported failed or toggled off by @wintonzheng in #8983
- Grant warehouse capture access to challenge solves (SKY-18363) by @LawyZheng in #8984
- Stop the PBS worker run-error test turning a slow run into TimeoutError (SKY-18760) by @wintonzheng in #8986
- Deliver the driver probe's late reply after the caller gives up, not on a timer (SKY-18759) by @wintonzheng in #8987
- Exercise late-loop diagnosis through the local Copilot agent loop by @andrewneilson in #8988
- Add final Gate 2 QA report by @AronPerez in #8989
- Bound the engine 1.0 element lookup so a frozen page cannot stall an action by @AronPerez in #8990
- SKY-17536: Let MCP agents send feedback reports to the Skyvern team by @wintonzheng in #8991
- Require submit evidence by @AronPerez in #8995
- SKY-18798: enforce advisory-only curator authorization by @andrewneilson in #8996
- Task V3: a code endpoint that answers without a code reads as "not yet", not an error (SKY-18390) by @andrewneilson in #8997
- Run 12 pytest shards and 3 Vitest shards to cut PR CI wall time by @cindehaa in #8998
- SKY-18797: Retry event-trigger submissions that never reached Batch by @AronPerez in #8999
- Fix CodeQL polynomial ReDoS in MCP feedback report redaction (#SKY-18789) by @AronPerez in #9000
- Import the curator worker through its cloud package in the advisory boundary test by @LawyZheng in #9001
- Document an email-forwarding path for email-based 2FA by @AronPerez in #9002
- Hold a v3 give-up once for the one permitted retry after a typed site rejection (SKY-17487) by @LawyZheng in #9003
- Restrict member temporary cleanup to test-login credentials by @AronPerez in #9004
- Count only the secure runner's own failures in the code block run-kill alert (SKY-18464) by @wintonzheng in #9005
- Treat an Accept 422 as proof the Copilot proposal was not saved by @AronPerez in #9006
- Label the anti-bot benchmark's API version as API service context with its sampling time by @LawyZheng in #9008
- Handle interrupted native downloads in Task V3 (SKY-18624) by @LawyZheng in #9009
- Show Upload an SOP and Demonstrate task cards under the Home prompt box (SKY-18697) by @wintonzheng in #9011
- Upgrade follow-redirects to 1.16.1 in the SDK test lockfile (SKY-18764) by @wintonzheng in #9007
- Keep tests from downloading the public suffix and GuardDog package lists (SKY-18833) by @wintonzheng in #9012
- Refuse browser egress to a destination we cannot resolve (SKY-18836) by @AronPerez in #9013
- A2A Agent: Implement A2UI cards by @wintonzheng in #9014
- Add 19 agent benchmark cases built from failing production Task V3 runs by @cindehaa in #9015
- Build a task run response when the task has no navigation goal by @AronPerez in #9016
- Serve browser test pages locally instead of from the internet (SKY-18854) by @wintonzheng in #9018
- Log and alert when a saved workflow version adds a skyvern-1.0 engine pin by @pedrohsdb in #9019
- Register a session browser before its first goto so later blocks see it (SKY-18860) by @AronPerez in #9020
- Upgrade graphql-core to 3.2.12 and nbconvert to 7.17.2 in the lockfile (SKY-18864) by @wintonzheng in #9021
- Fail the run at the first unexpected browser connection loss (SKY-18726) by @LawyZheng in #9022
- Upgrade Playwright and Patchright to 1.56.0 by @LawyZheng in #9023
- Persist run-end HAR encounters and page identity (SKY-18366) by @LawyZheng in #9024
- Revert per-snapshot curator evidence admission (SKY-18507) by @andrewneilson in #9025
- Stop re-entering an externally supplied one-time code; generated TOTP unchanged (SKY-18619) by @LawyZheng in #9026
- Align the real-Chromium tests with planned browser replacement, pinned Patchright, Playwright 1.56 and full-Chromium type-ahead (SKY-18752) by @LawyZheng in #9027
- Test the radio click gate against the driver's enabled check, not one Playwright version's rule (SKY-18878) by @LawyZheng in #9028
- Let the Task V3 model select a replayed CSV instead of refusing it by shape (SKY-18752) by @LawyZheng in #9029
- Save the final screenshot for Task V3 workflow blocks (SKY-18862) by @pedrohsdb in #9030
- Let Copilot find and use logins from a connected Bitwarden vault (SKY-18784) by @andrewneilson in #9031
- Upgrade pypdf to 6.21.2 and map its moved size-limit checks (SKY-18829) by @wintonzheng in #9032
- Log which locator matches Copilot was shown as visible (SKY-18704) by @andrewneilson in #9033
- Drive the registered-browser deadline tests with a frozen test clock (SKY-18881) by @wintonzheng in #9034
- Assert the radio click gate agrees with the driver instead of naming one Playwright version's aria-disabled shapes (SKY-18878) by @AronPerez in #9035
- Charter: Task V3 gates act on recorded state, with a dated exceptions register (SKY-18888) by @pedrohsdb in #9036
- Task V3 observe: name a Yes/No button pair's question on both buttons and echo it on click (SKY-18212) by @wintonzheng in #9037
- Keep Task V3 turn steps out of the per-step pricing skill's step counts (SKY-18896) by @pedrohsdb in #9038
- Stop routing benchmark-flagged runs to the deleted Hetzner fleet and remove Hetzner code paths (SKY-18907) by @wintonzheng in #9039
- Return every in-loop 404/410 to the Task V3 model, behind a run-arm flag (SKY-16206) by @pedrohsdb in #9040
- Record one step per Task V3 turn, with its model call and tool calls, without changing bills (SKY-18790) by @wintonzheng in #9041
- Keep the country calling code in an international phone field, and stop reporting a wrong one as entered (SKY-18890) by @AronPerez in #9042
- Fix the Task V3 answer audit's quote check, dropdown and placeholder plumbing, and bound its holds per task by @pedrohsdb in #9043
- Correct the drift-reader Phase 1 plan shape to what production plans today (SKY-14983) by @wintonzheng in #9044
- Save the page DOM on every Task V3 turn step of sampled runs, and flush each turn as it ends (SKY-18892) by @pedrohsdb in #9046
- Apply an agent's configured proxy region to API runs that omit one (SKY-18884) by @AronPerez in #9047
- RBAC v2 slice 6 part 1: detect the downgrade pause once (SKY-18910) by @AronPerez in #9048
- RBAC v2 slice 4b part 1: frontend API layer for role settings (SKY-18909) by @AronPerez in #9049
- Upgrade undici to 7.30.1 and vitest to 4.1.12 in the frontend lockfile (SKY-18931) by @AronPerez in #9050
- Upgrade undici to 7.30.1 and body-parser to 1.20.9 in the Claude Desktop bundle (SKY-18930) by @wintonzheng in #9051
- Delete the Temporal schedules of deleted schedules in the orphan sweep, behind a flag (SKY-18564) by @wintonzheng in #9052
- Add OIDC principals to self-hosted RBAC by @AronPerez in #9053
- Add OpenID Connect sign-in to the self-hosted UI by @AronPerez in #9054
- Stop logging workflow request and parameter values (SKY-18935) by @AronPerez in #9055
- Omit request bodies for restricted organizations (SKY-18935) by @AronPerez in #9056
- Audit OIDC sign-ins by @AronPerez in #9057
- On-prem admins can view signed-in members by @AronPerez in #9058
- Strengthen OIDC and RBAC regression coverage by @AronPerez in #9059
- Document round-one self-hosted identity QA results by @AronPerez in #9060
- fix(ui): keep runtime API lookup valid by @AronPerez in #9061
- Run finite warehouse curator dry runs locally (SKY-18921) by @andrewneilson in #9063
- Upgrade zod, undici and fast-uri in the internal dashboard lockfile (SKY-18965) by @wintonzheng in #9064
- Send Copilot tool schemas without generated titles on Claude and terra routes (SKY-18928) by @andrewneilson in #9065
- Pass the required arguments in the adopted-session blob download tests (SKY-18972) by @wintonzheng in #9066
- Turn on the orphan-schedule sweep's backend deletes for the production cron worker (SKY-18564) by @wintonzheng in #9067
- Right-align the self-hosted OIDC sign-out button by @AronPerez in #9068
- Record impersonating staff in organization audit events by @AronPerez in #9069
- State the file count in download-block framing before the model decides (SKY-18769) by @andrewneilson in #9070
- Read files from an SFTP server as a File Download source (SKY-18299) by @AronPerez in #9071
- Read files from an SFTP server as a File Download source (SKY-18299) by @AronPerez in #9072
- Disable telemetry by default for self-hosted installs by @AronPerez in #9073
- Fix the failing one-time-code browser tests in test_multi_field_totp.py (SKY-18990) by @LawyZheng in #9075
- Mark the git blob SHA-1 in the copilot eval readiness test as not used for security (SKY-19002) by @wintonzheng in #9076
- Keep the agent's evaluate calls in the page's main world (SKY-18988) by @wintonzheng in #9077
- Look up a complete run or task ID by primary key in the runs list search (SKY-18408) by @wintonzheng in #9078
- Hold a Task V3 run's first terminated verdict once and ask for the source of the stop (SKY-18980) by @pedrohsdb in #9079
- Build the step and task archive ZIPs on a thread so deflate does not block the event loop by @pedrohsdb in #9080
- Answer a rejected Bitwarden master password on the items listing with 400, not 502 (SKY-19014) by @wintonzheng in #9083
- Upgrade follow-redirects, vite and undici in the frontend lockfile (SKY-18764) by @wintonzheng in #8993
- Upgrade vite, vitest and fast-uri in the TypeScript SDK client lockfiles (SKY-18764) by @wintonzheng in #8994
- Keep at least one vendor session worker running through node drains (SKY-19008) by @wintonzheng in #9084
- SKY-18537: Make cron-worker the only event-trigger dispatcher by @AronPerez in #9091
- Run Copilot on openai-agents 0.19.4 and openai 2.54 with no change in behavior (SKY-19058) by @andrewneilson in #9094
- Restore LLMConfigRegistry after test_openrouter_error_propagation so the Copilot route test is order-independent by @AronPerez in #9096
- Replace Free plan copy with the 14-day card-required trial by @wintonzheng in #9097
- Keep split-PDF page excerpts within the planner input token budget (SKY-19153) by @AronPerez in #9099
- Keep a one-time code whole in a Task V3 field that drops typed keys (SKY-13943) by @LawyZheng in #9100
- Stop reporting the built-in missing-one-time-code error beside the block's own code (SKY-19162) by @AronPerez in #9102
- Rebuild Patchright's selector scope tree when Chromium rejects a deep DOM describe (SKY-19055) by @LawyZheng in #9103
- Keep pre-launch customers on Free when they leave a paid plan under the card-required trial by @wintonzheng in #9104
- Check the hung rescue stage deadline without a wall-clock bound (SKY-19167) by @wintonzheng in #9105
- Send GPT's earlier reasoning back with its tool calls (SKY-19191) by @andrewneilson in #9106
- Turn on trial auto-convert and dry-run trial emails in US production by @wintonzheng in #9107
- Add an agent block that calls this run's tools until it can return schema fields, behind one flag (SKY-19057) by @andrewneilson in #9108
- Remove the PostHog HIPAA gate now that a BAA covers every PostHog product by @wintonzheng in #9109
- Fail complete-on-download blocks on partial success (#SKY-18526) by @AronPerez in #9110
- Send the card-required trial emails in production (turn off the dry run) by @wintonzheng in #9111
- Fall back to the live element handle when the driver cannot resolve a Task V3 act marker by @pedrohsdb in #9113
- Reject error pages on all download paths by @AronPerez in #9114
- CASA 4.1.3 - Encrypt stored secrets with AES-256-GCM, part 1: read support and decrypt-and-compare API-key lookup by @wintonzheng in #9115
- Turn on posting for the Mon/Wed/Fri job application results report (SKY-19143) by @wintonzheng in #9116
- Let authors add the agent block in the workflow editor when its flag is on (SKY-19135) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9117
- Add agent step architecture docs, charter and routing skill (SKY-19145) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9118
- Keep the custom proxy credential test from failing on timestamp digits (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9119
- Pace run lease heartbeat retries after an exception by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9121
- Sync the runs list inline when the orphaned run reaper fails a task by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9122
- Refuse to start a child task once the run lease is lost (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9123
- Finish the reaper's task v2 branch through the workflow service (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9125
- SKY-19084 A2: own the final failure diagnostic only through this execution's conditional terminal write by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9126
- Keep a reaped run's final status when the lease check itself fails (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9127
- Reject invalid V1 browser-native downloads during finalization by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9128
- Install the exact Node version the version file names in every image (SKY-19222) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9129
- Upgrade qs to 6.16.1 in the Claude Desktop bundle (SKY-19242) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9132
- Email paying orgs that have run nothing for 56 days (off by default) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9133
- Docs: sync with production (2026-10-27) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9134
- Restore three Ashby replacement reCAPTCHA tokens as a protective rollback (SKY-19087) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9135
- CASA 3.2.2 - Bind MCP OAuth redirect URIs to each registered client instead of a ChatGPT prefix by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9136
- Show the cost per paying customer for each ad platform in the marketing daily (SKY-17621) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9137
- Add Settings audit log page (SKY-18938) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9138
- Update changelog — Week of October 26, 2026 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9139
- Report anti-bot failures as system errors without a model call (SKY-19084) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9140
- Copilot: stop rewiring conditional workflows, report skipped blocks, order parallel edits, show time left (SKY-19245) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9143
- Give saved-profile human-interaction runs a browser session the API can reach (SKY-18844) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9144
- Name the missing reference when a CodeBlock template fails to render (SKY-19251) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9145
- Save the pre-block export before Task V3's download baseline in its outside-hold test (SKY-18812) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9146
- Let Copilot's rejected-login card offer Sign in myself and report outcomes as facts (SKY-19306) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9147
- Keep a workflow run that won its terminal status write from being cancelled on lease loss (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9148
- Keep a refused final write from shielding a stale run, and deliver external cancels to the running owner (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9151
- Refuse block outcome writes from an execution that no longer owns the run (SKY-18224) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9152
- Add the LinkedIn signup campaign by week to the Sales daily (SKY-18742) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9153
- Stop re-sending a failed run's screenshot to Copilot after a later run (SKY-19247) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9154
- Load the saved browser profile when the review card's Test end-to-end runs (SKY-19307) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9155
- Show signups by country group for each source in the marketing daily (SKY-19331) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9156
- Make inline workflow secrets write-only by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9157
- Docs: sync with production (2026-10-28) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9158
- Start the safety screen's backup provider when the first one hangs (SKY-18431) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9159
- Cancel a trial by turning off the day-14 charge, keeping access to trial end (SKY-19338) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9160
- Let Task V3 type into a field that already holds the caret under an invisible layer (SKY-19320) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9161
- Add five SEO directories to the catalog as candidates (SKY-18055) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9164
- Keep ad click IDs with marketing consent and store them with new accounts (SKY-18021) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9165
- Skip loading task extraction results when building run status by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9166
- Match a failed run's closed-recording network facts against the user's error codes once (SKY-19084) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9167
- Bound workflow YAML block validation by dispatching on block_type (SKY-19396) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9168
- Doc editor slice 1: notes and descriptions on workflow steps (SKY-18180) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9169
- Doc editor slice 2: read-only Doc view behind WORKFLOW_DOC_EDITOR (SKY-18180) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9170
- Show why a credit top-up was refused on the billing page (SKY-19447) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9175
- Create forced browser sessions only when the run starts (SKY-18937) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9176
- Wait for the pytest template to go idle instead of failing on a brief session (SKY-19086) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9177
- update worker config by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9178
- Stop Copilot reporting every replayed demonstration step as failed (SKY-19358) by @cindehaa in https://github.com/Skyvern-AI/skyvern/pull/9179
- Show the Browser pane in place of the Editor while demonstrating a task (SKY-19272) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9180
- Wait for the blocked navigation's error page in the egress monitor browser test (SKY-19066) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9181
- Normalize MCP workflow output summaries once instead of per nesting level by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9182
- Give an agent step with no tool list no tools, and start new editor steps with nine (SKY-19261) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9185
- Accept legacy Excel exports under .xls claims by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9188
- Add OSS email 2FA forwarding ingestion foundation (SKY-14150) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9189
- Receive and recover forwarded email 2FA codes (SKY-14151) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9190
- Reject reuse of revoked email forwarding addresses (SKY-14150) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9191
- Clear an unverified secret field before failing closed (SKY-19543) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9192
- Merge an input[role=combobox] with its accessibility entry in observe (SKY-19544) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9193
- Pin the select_combobox twin-row count and its unchanged-filter refusal (SKY-19549) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9194
- Add email forwarding setup and inbox UI (SKY-14152) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9195
- Record the application-context defaults ruling (SKY-18811) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9196
- Keep the integrations catalog loading when the forwarding availability check fails (SKY-19523) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9199
- Upgrade follow-redirects to 1.16.2 in the support agent lockfile (SKY-19561) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9200
- Add Power BI Nango connection storage by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9201
- Add bounded Nango client and Power BI settings by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9202
- Run the npm-audit runner pick on Blacksmith instead of GitHub-hosted (SKY-19484) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9203
- Test the fork helper's timeout, exit-code and traceback paths (SKY-19532) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9204
- fix(studio): show a block screenshot on a step-index miss in the run view (SKY-19458) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9205
- Show the browser Copilot is working in on the studio Browser pane (SKY-19459) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9206
- SKY-18494: Treat a blank upload setting as unset in the secret check and proxied S3 uploads by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9207
- Record site-typed reCAPTCHA low-score rejections when the refused request is unambiguous by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9208
- Run self-contained slow tests only when their inputs change by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9209
- Build the standalone tasks index test in a scratch database so an open snapshot elsewhere cannot hang it (SKY-19597) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9210
- Seed RBAC roles from live Clerk memberships by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9211
- Let the Task V3 agent declare a job application in its first reply (off by default) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/9212
- Stop captcha frame probes from hanging when the page navigates mid-read (SKY-19570) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9213
- Enforce scoped API key permissions by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9215
- Stop a finished task's background mouse movement before its browser closes (SKY-19594) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9216
- Offer an agent step login only from its own parameter_keys (SKY-19584) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9217
- Skip the second sign-out read in the bearer role lookup (SKY-19051) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9218
- Hold a Task V3 type the same live dialog still refuses instead of retyping it (SKY-19408) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9219
- A2A agent: a status question in a conversation that holds no run asks which run by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9220
- Treat the ingress-off 404 as the dark state in the integration catalog (SKY-19523) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9221
- Run only the blocking Semgrep rules on PRs; move the registry-pack scan to a weekly and manual workflow by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9222
- Keep the Stripe fence race test on one shared SQLite connection by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9223
- Upgrade serialize-javascript to 7.1.4 in the TypeScript SDK client pnpm lockfile (SKY-19426) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9173
- Keep code-block action screenshots on responsive pages with slow PNG encodes (SKY-19607) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9224
- Upgrade zod to 4.6.7 and @hookform/resolvers to 5.9.2 in the frontend (SKY-18966) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9095
- Upgrade qs to 6.16.1 and follow-redirects to 1.16.2 in the TypeScript SDK test lockfile (SKY-19244) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9130
- Upgrade pypa/gh-action-pypi-publish to v1.14.3 in the SDK release workflow (SKY-19487) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9184
- Run the CI pytest suite as 4 parallel shards by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9227
- Gate the Estuary capture-stall monitor on a slot that stopped confirming WAL (SKY-19625) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9225
- Run pre-commit and mypy as one 2-vCPU job, and check only the pushed range on main (SKY-19509) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9228
- Route Power BI query execution through Nango by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9229
- Re-resolve a serialized run's saved profile at run start (SKY-19415) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9231
- Keep prompt and provider text out of text prompt block logs by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/9232
- Validate Bitwarden item ownership in Cloud by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9233
- Upgrade follow-redirects, body-parser and qs in the frontend lockfile (SKY-19561, SKY-19383) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9198
- Pipe the secret-mask test driver to node on stdin so CodeQL stops failing the OSS sync (SKY-14367) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9238
- Place a visible CAPTCHA refusal on the visit whose document showed it by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9239
- Say a failed Doc step in plain words and offer Browser Task for multi-action Browser Actions by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9240
- Quieter single-step runs in the Doc: no debug toast, no empty screenshot box, asks for missing inputs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9241
- Keep a just-added Doc step quiet until you leave it, run or save by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9242
- Recover a statement the browser refuses to frame on a Task V3 download block (SKY-19922) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9243
- Show the run-blocker list unless the Doc is actually on screen by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9244
- Make Doc steps read like Notion: no box on step text, controls on hover, chips on the text line by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9245
- Drop the global dependency override that rebuilt every request's dependency tree (SKY-18774) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9246
- List an href-less link beside the Task V3 card whose click misses it (SKY-18877) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9247
- Drop the internal doc link from the VNC keycode docstring (SKY-19952) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9248
- Turn off Edge component updates in Linux worker and PBS profiles (SKY-19857) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9249
- Charge a code block's zero-action minimum once per label per run (SKY-19917) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9250
- Let code blocks read the text of a downloaded document (SKY-19726) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9251
- Document the receiver 503 and report owner_not_authorized for restricted credential_id triggers (SKY-18604) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9252
- feat: simplify Power BI and Gmail sign-in (SKY-19899) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9253
- Count a tunnel failure as the site's when the proxy vendor could not reach the host (SKY-17599) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9254
- Keep the step you are typing in on screen after Cmd+S in the Doc by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9255
- Wait for the browser to record a committed page before reloading it (SKY-19509) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9256
- Show a failed code block's own error, page and Fix with Copilot, and carry it in the API (SKY-19918) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9257
- Remove the ANALYTICS_DASHBOARD, onboarding_questionnaire_v1 and ENABLE_DISCOVER_COPILOT_HANDOFF flags now that they are on for everyone (SKY-4553) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9258
- Stop saving Chrome's regenerated extension rules in browser profile archives by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9259
- Let Copilot take Word .docx SOPs from Upload SOP and the chat, and read them (SKY-19934) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9260
- Give each live view its own stream id and close a viewer whose relay stops (SKY-19931) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9261
- Show what each Copilot test run cost and say why a test browser did not start (SKY-19921) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9262
- Fill a demonstrated credential in the iframe its field lives in by @cindehaa in https://github.com/Skyvern-AI/skyvern/pull/9264
- Release the save lock when the Doc's Run pre-save fails (SKY-19997) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/9265
- Let users demonstrate one block of an existing agent after its earlier blocks run (SKY-19879) by @cindehaa in https://github.com/Skyvern-AI/skyvern/pull/9266
- Flag a Doc loop that goes through a whole step result instead of its list (SKY-19996) by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/9267
- Move the Nango services into one package with a single import surface by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9268
- Upgrade oauthlib to 4.0.1 in the cloud lockfile (SKY-20014) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9269
- Stop the API rescanning every module on each Playwright call from a frozen frame (SKY-18774) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/9270
- Ask to add or move a login's site when Copilot's sign-in card would refuse it (SKY-19941) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9271
- Report start page and uploads on agent step nested-agent results (SKY-19823) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9272
- Make typing in the Doc behave like Notion: quiet new steps, Enter on empty makes a note, / renames or replaces by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9273
- Doc: plain failure line, Enter runs the input box, truthful run results by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9274
- Start a task demonstration from the Doc's step menu by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9275
- fix(SKY-20024): list Demonstrate task after the matching steps in the Doc picker by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/9276
- Copilot demonstration: keep a click that loads a new page by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9277
- Reword three test comments about downstream readers (SKY-20031) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9278
- Doc: shortcut hints in context, a grip beside each step, an insert line between steps by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9279
- Stop telling every deployment that credentials need a Bitwarden server by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9280
- Store Credentials-page secrets in AWS Secrets Manager on self-hosted AWS by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9281
- Start the display recorder bridge without OTel auto-instrumentation (SKY-19682) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9283
- Group Agent settings into six folding groups with change summaries by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9284
- Give data-only Copilot code blocks a Goal that opens with their returned values (SKY-19371) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/9285
- Accept a Power BI result that exactly fills the saved row limit (SKY-20044) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/9286
- Describe browser provisioning generically in two engine docstrings (SKY-20032) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9287
- Bump version to 1.0.57 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/9282
Full Changelog: v1.0.56...v1.0.57