🚀 Release web-v1.100.0
📊 Release Statistics
- Total commits: 154
- Features: 30
- Bug fixes: 65
- Mobile changes: 0
- Breaking changes: 0
✨ Features
| Change | PR/Commit | Author |
|---|---|---|
| feat(safe-pro): Update Open API files for monetization endpoints | #8680 | Yago Pérez Vázquez |
| feat: allow proposer to swap | #8669 | dsh |
| feat: admin renames write to the workspace address book (WA-3258) | #8563 | valleXYZ |
| feat: do not show the logout toast outside of Spaces | #8651 | V. |
| feat(safe-pro): announce the Workspaces move to Pro | #8587 | Zalens |
| Feat: Add step up auth | #8574 | Tim Daubenschütz |
| feat(policies): add the shared Safe Account selector for policy flows | #8580 | Tim |
| feat(policies): build the empty-state policy catalogue with four tiles | #8585 | Tim |
| feat(policies): add the Policies route and Space sidebar entry | #8528 | Tim |
| feat: wire Playwright into CI | #8558 | dsh |
| feat(safenet): split UNAVAILABLE into no-check and read-failed copy | #8573 | Fbartoli |
| feat(spaces): add full Mixpanel coverage for workspace | #8506 | Zalens |
| feat(web): show transaction note in nonce replacement label | #8179 | TenderDeve |
| feat(safenet): support the relaunched protocol contracts and drop the dead generations | #8547 | Fbartoli |
| feat(web): Record which blockchain provider failed when a connection breaks | #8519 | Clóvis Neto |
| feat: inline validation for on-chain reverts and GS013 custom-error decoding (WA-3005) | #8512 | Clóvis Neto |
| feat: Use rhinestone as relayer | #8338 | Yago Pérez Vázquez |
| feat(safenet): queue-row status and Safe Shield check section | #8522 | Fbartoli |
| feat(safenet): surface the check as an audit-log step with attestation link | #8485 | Fbartoli |
| feat: UI fixes post shadcn migration | #8514 | dsh |
| feat: Header icons CSS | #8503 | dsh |
| feat: show on-chain (GS) error messages clearly (WA-3005) | #8484 | Clóvis Neto |
| feat(web): support 1.5.0 in multichain creation and add-network (WA-2930) | #8493 | Tong Yao |
| feat(web): recognise Safe 1.5.0 as a known, trusted version (WA-2860, WA-2862) | #8458 | Tong Yao |
| feat(web): hide relaying UI until relaying is live | #8467 | Zalens |
| feat: disable adding a Safe as a proposer | #8496 | Varya |
| feat(web): developer-only feature flag editor | #8288 | Tim |
| feat(safenet): add the useSafenetCheck polling hook | #8483 | Fbartoli |
| feat(safenet): expose check state through the store | #8482 | Fbartoli |
| feat(safenet): verify attestations against the coordinator group key | #8469 | Fbartoli |
🐛 Bug Fixes
| Change | PR/Commit | Author |
|---|---|---|
| fix(safe-pro): design inconsistencies and cypress setup | #8679 | Zalens |
| fix: [WA-3502] preserve CGW status in message-signing errors | #8675 | Clóvis Neto |
| fix: explain Hypernative approval instead of a generic revert error (WA-1219) | #8650 | Clóvis Neto |
| fix: keep expected gateway responses out of Datadog (WA-2991) | #8608 | Clóvis Neto |
| fix: refetch workspace lists after a replayed step-up mutation | #8654 | Tim Daubenschütz |
| fix: stop duplicated Error Surfaced Mixpanel events at source and at the emitter | #8652 | Clóvis Neto |
| fix: Compact table view | #8655 | dsh |
| fix: keep the tx dialog close button clear of the Safe Shield widget (WA-3478) | #8644 | Tim Daubenschütz |
| fix: Unify Tables across the app | #8613 | dsh |
| fix: request notification permission within the user gesture and surface registration errors | #8571 | dsh |
| fix: Safe Apps permissions modal alignment | #8606 | dsh |
| fix(UI/UX): minor UI fixes (layouts, icon replacement); Spaces List error state | #8607 | V. |
| fix: Native app card leaves empty cell | #8604 | dsh |
| fix(UI): Security Hub UI | #8601 | V. |
| fix(ui): invite flow elements alignment | #8598 | dsh |
| fix(UI): Spending Limits UI for Safes with 0 balance | #8596 | V. |
| fix: build the CSS-visible layout for the Assets table between 600–767px (WA-3437) | #8584 | Guilherme Fekete Endres |
| fix: accordion colors | #8594 | dsh |
| fix: network name, alignment and backdrop in the Add manually dialog (WA-3438) | #8589 | Guilherme Fekete Endres |
| fix: Replace wrong icons and reduce icon stroke width | #8583 | dsh |
| fix(proposers): keep proposer names on the device, never send them to the backend | #8511 | Zalens |
| fix(safenet): canonical read aim and coverage-gated absent-check claim | #8579 | Fbartoli |
| fix: show the backend reason when a Safe is banned | #8569 | Clóvis Neto |
| fix(UI): restyle acknowledgment box and Account recovery layout; refactor: add a new grey Card instead of hardcoded sections | #8578 | Varya |
| fix: Restore nonce visibility for bulk and conflicting txn | #8576 | dsh |
| fix(safenet): harden check verification and lifecycle | #8577 | Fbartoli |
| fix(UI): transaction flow regressions after the shadcn migration (WA-3230) | #8552 | Guilherme Fekete Endres |
| fix(UI): Settings / Spending Limits and Add Funds popup layout | #8575 | Varya |
| fix: break the address in Safe Shield to make it fully visible | #8570 | Varya |
| fix(UI): unify input fields after Shadcn migration | #8567 | Varya |
| fix: message details overflow and confirmation styling after shadcn migration | #8566 | dsh |
| fix(web): restore version-upgrade indicators for 1.5.0 migrations (WA-3261) | #8557 | Tong Yao |
fix: add a new env var NEXT_PUBLIC_SAFENET_EXPLORER_URL
| #8565 | Varya |
| fix: remove underline from headers | #8564 | dsh |
| fix: Tx Queue CSS regression | #8551 | dsh |
| fix: align 2FA status badge colours and tooltip copy with the Figma spec | #8550 | Tim Daubenschütz |
| fix: align Airdrop icon | #8556 | dsh |
| fix(UI): restore copy animation, links styling, Add Safe flow layout fixes | #8554 | Varya |
| fix: date entry mangles the year and crashes the calendar (WA-3231) | #8543 | Guilherme Fekete Endres |
| fix: nested-safe amount field lost its styling, plus hero-size consistency | #8539 | Guilherme Fekete Endres |
| fix: restore execution status stepper layout | #8537 | Guilherme Fekete Endres |
| fix(UI): align buttons positioning | #8546 | Varya |
| fix(errors): reduce ENS resolution noise in error reports | #8501 | Varya |
| fix: Address comments in design QA | #8544 | Tim Daubenschütz |
| fix: give every popup the same blurred background | #8542 | Guilherme Fekete Endres |
| fix(UI): adjust alert colors as per the latest design | #8545 | Varya |
| fix(UI): Restore color scheme for alerts, warnings, info and toasts | #8534 | Varya |
| fix: drop CSP-blocked third-party eval() errors from RUM (WA-2952) | #8518 | Clóvis Neto |
| fix: propagate nonce to SafeTxContext on reset and blur recovery | #8536 | Guilherme Fekete Endres |
| fix: send funds form alerts and input error styling | #8538 | Guilherme Fekete Endres |
| fix: File Import Card CSS | #8535 | dsh |
| fix: batch sidebar shows empty rows when opened before the SDK is ready | #8502 | Guilherme Fekete Endres |
| fix: address book suggestions don't show while typing | #8498 | Guilherme Fekete Endres |
| fix: update multichain help article link | #8521 | Rudy |
| fix: footer CSS | #8530 | dsh |
| fix: match staking promo banner border radius to dashboard cards (WA-2883) | #8471 | Guilherme Fekete Endres |
| fix(web): count only known feature flags in the override badge | #8531 | Tim |
| fix(UI): multiple UI fixes after Shadcn migration: Notifications, Members, Tx-flow, Owners, WC, color coding, etc. | #8525 | Varya |
| fix(UI): WalletConnect popup issues after Shadcn migration | #8515 | Varya |
| fix: Sidebar regression in TX Builder | #8513 | dsh |
| fix(UI): UI fixes after Shadcn migration - pt. 2 | #8505 | Varya |
| fix: double-navigation in usePreventNavigation | #8510 | dsh |
| fix(accessibility): keyboard handlers | #8504 | Varya |
| fix(e2e): Argos Visual Regression tests | #8488 | Varya |
| fix: broken error copy in web and mobile (quick wins) | #8450 | Clóvis Neto |
🔧 Chores & Maintenance
| Change | PR/Commit | Author |
|---|---|---|
| chore: update @safe-global dependencies for chain 936485 | #8661 | Zalens |
| chore(deps): bump softprops/action-gh-release from 3.0.2 to 3.0.3 | #8667 | dependabot[bot] |
| chore(deps): bump anthropics/claude-code-action from 1.0.199 to 1.0.213 | #8666 | dependabot[bot] |
| chore(deps): bump docker/setup-qemu-action from 4.2.0 to 4.3.0 | #8665 | dependabot[bot] |
| chore(deps): bump aws-actions/configure-aws-credentials | #8664 | dependabot[bot] |
| chore(deps): bump linear/linear-release-action from 0.17.1 to 0.17.2 | #8663 | dependabot[bot] |
| chore: add Dependabot cooldown and run CI on lockfile changes | #8660 | Daniel Dimitrov |
| chore(deps): bump browserslist from 4.24.3 to 4.28.8 | #8641 | dependabot[bot] |
| chore(deps): bump @xmldom/xmldom from 0.8.13 to 0.8.15 | #8637 | dependabot[bot] |
| chore(deps): bump @humanfs/node from 0.16.6 to 0.16.8 | #8628 | dependabot[bot] |
| chore(deps): bump js-yaml from 3.15.1 to 3.15.2 | #8627 | dependabot[bot] |
| chore(deps): bump hono from 4.12.32 to 4.13.5 | #8625 | dependabot[bot] |
| chore(deps): bump postcss-selector-parser from 7.0.0 to 7.1.5 | #8624 | dependabot[bot] |
| chore(deps): bump svgo from 3.3.4 to 3.3.5 | #8622 | dependabot[bot] |
| chore(deps): bump docker/setup-buildx-action from 4.2.0 to 4.3.0 | #8618 | dependabot[bot] |
| chore(deps): bump linear/linear-release-action from 0.14.6 to 0.17.1 | #8617 | dependabot[bot] |
| chore(deps): bump actions/attest from 4.1.0 to 4.2.2 | #8481 | dependabot[bot] |
| chore(deps): bump fast-uri from 3.1.5 to 3.1.6 | #8629 | dependabot[bot] |
| chore(deps): bump nanoid from 3.3.17 to 3.3.18 | #8620 | dependabot[bot] |
| chore(deps): bump shogo82148/actions-upload-release-asset | #8616 | dependabot[bot] |
| chore(deps): bump CatChen/eslint-suggestion-action from 4.1.32 to 4.1.35 | #8560 | dependabot[bot] |
| chore(deps): bump actions/checkout from 7.0.0 to 7.0.1 | #8561 | dependabot[bot] |
| ci(e2e): allow running a suite or named specs from the on-demand regression workflow | #8599 | Tong Yao |
| chore(deps): bump MishaKav/jest-coverage-comment from 1.0.34 to 1.0.36 | #8478 | dependabot[bot] |
| chore(deps): bump anthropics/claude-code-action from 1.0.187 to 1.0.199 | #8562 | dependabot[bot] |
| chore: drop outdated MUI references from AGENTS.md and web docs | #8553 | Tim Daubenschütz |
| chore(CI): pass enumerated secrets to CI actions instead of dumping all toJSON | #8533 | Varya |
| chore(deps): bump actions/setup-python from 6.2.0 to 7.0.0 | #8480 | dependabot[bot] |
| chore(deps): bump docker/build-push-action from 7.2.0 to 7.3.0 | #8479 | dependabot[bot] |
| chore(deps): bump anthropics/claude-code-action from 1.0.183 to 1.0.187 | #8477 | dependabot[bot] |
| chore(deps): bump fast-uri from 3.1.4 to 3.1.5 | #8475 | dependabot[bot] |
| chore(deps): bump js-yaml from 3.15.0 to 3.15.1 | #8473 | dependabot[bot] |
| chore(deps): bump brace-expansion from 1.1.17 to 1.1.18 | #8466 | dependabot[bot] |
| chore(deps): bump nanoid from 3.3.8 to 3.3.17 | #8491 | dependabot[bot] |
| chore: bump tx-builder version to 2.1.0 | #8508 | Zalens |
| chore: update @safe-global/protocol-kit to ^8.0.6 | #8507 | Tong Yao |
| chore: UI fixes (Sidebar, Welcome card) | #8500 | dsh |
| chore: back-merge main to dev after release web-v1.98.0 | c9b7d88ff
| GH Signer Bot |
| chore(deps): bump safe-deployments to 1.37.62 for WA-2918 chains (WA-2936) | #8470 | Tong Yao |
| chore: tx-builder E2E fix | #8495 | dsh |
| chore(ci): pass GITHUB_TOKEN via env and pin bundle-analysis version | #8461 | Agustin Gonzalez Nicolini |
📦 Other Changes
| Change | PR/Commit | Author |
|---|---|---|
| tests: scope step-up auth toast assertions past the Next route announcer | #8677 | Tim Daubenschütz |
| Keep Back and the primary action on one row in tx flows and onboarding | #8649 | Tim Daubenschütz |
| docs: update AGENTS.md files; add CLAUDE.md with symlinks | #8593 | V. |
| Validate spending limit form before submission | #8643 | Tim Daubenschütz |
| [WA-3243] Hardware-wallet errors reach users as "unknown": preserve and translate Ledger device errors (web) | #8568 | Clóvis Neto |
| [WA-3252] Show CGW errors clearly: map known response states to agreed UI copy | #8592 | Clóvis Neto |
| test(e2e): fix e2e assertions broken by Safe 1.5.0 rollout and stale UI copy (WA-3404) | #8582 | Tong Yao |
| Tidy safenet event docs and golden attestation builder | #8572 | Fbartoli |
| [WA-2303] UI stuck in execution state with Speed Up after tx reverts with low gas | #8526 | Clóvis Neto |
| [WA-2949] Fix loading errors in private browsing and in-app browsers | #8520 | Clóvis Neto |
| refactor(spaces): remove the unused legacy space sidebar | #8532 | Tim |
| [WA-2305] Spending limits UI stuck at transaction creation | #8527 | Clóvis Neto |
| UI inconsistencies | #8524 | dsh |
| refactor(web): migrate from MUI/Emotion to shadcn/ui + Tailwind | #8040 | Guilherme Fekete Endres |
| refactor(safenet): trim read-layer comments and remove dead code | #8472 | Fbartoli |
Generated from main..dev on 2026-09-09 12:23:30 UTC