Skip to content

Update release - #1394

Open
zzggo wants to merge 83 commits into
release/extension-3.1.14from
dev
Open

zzggo wants to merge 83 commits into
release/extension-3.1.14from
dev

Conversation

@zzggo

@zzggo zzggo commented Mar 26, 2026

Copy link
Copy Markdown
Contributor

🔗 Related Issues

Linked automatically from the branch name. If incorrect, edit:

Self-Checklist

  • I read through my own diff
  • I ran at least one manual check
  • No mock / debug code left in production code

📝 Description

📸 Screenshots/Videos

caosbad and others added 30 commits March 20, 2026 17:12
…e-send-workflow-will-cause-the-transaction-to-fail

fix: eth sign with address
- EVMTokenBalanceProvider: replace isLoading guard with Task deduplication
  so concurrent callers await the same fetch instead of getting empty data
- ProfileLoginHandler: only poll for new profiles, skip for existing
  accounts where data is already on-chain
- Remove debug log in WalletAccount

Closes #1374
- SideMenuViewModel: propagate manual hiding from main account to all
  accounts in the same group (COA, child)
- CadenceAccountView: hide show/hide toggle for current main account
  to prevent users from hiding the active account
- AccountListView: remove redundant isHidden filter in AccountInfoCard

Closes #1374
Remove ClaimNFTDetail route and redirect all claim items
(both token and NFT) through ClaimTokenDetailScreen, which
has the complete claim transaction logic (claimNft/claimFt).
This matches the extension behavior and fixes NFT claim
not executing the on-chain transaction.

Closes #1374
…not-displayed-on-side-menu

313/1374 bug ios coa account is not displayed on side menu
Aliserag and others added 19 commits April 22, 2026 20:54
docs: fix deprecated URLs, brand voice and add Flow ecosystem footer
… exists

When the keyring vault is booted but locked (e.g. stale state after an
uninstall/reinstall, or a previous registration that failed after booting),
the create-account flow could never succeed: registerNewProfile verifies
the new password against the existing vault and browser-passworder throws
'Incorrect password', which SetPassword showed verbatim - baffling to a
user creating a brand-new wallet.

- Register view: when booted && !unlocked, show an 'Existing wallet found'
  notice signposting Unlock and Reset instead of the registration steps
- verifyPasswordIfBooted: rethrow a contextual error explaining an existing
  wallet is present and the password must match it (covers import flows too)
- Add focused tests for verifyPasswordIfBooted
- Add Existing_Wallet_Found / Existing_Wallet_Found_Description i18n keys
  (en, ja, ru, zh_CN)

Closes #1428
resetKeyRing cleared the vault but left the encrypted 'booted' state
behind (noted in a resetPwd comment as a known issue). After an in-app
wallet reset, isBooted() kept returning true: the user was routed back to
the unlock screen asking for the password they had just reset because
they forgot it, and new-account creation kept failing verification
against the stale ciphertext. Only a full reinstall (storage wipe)
recovered. Clear booted on reset, matching the existing convention in
the removeProfile/removePublicKey paths.

Closes #1428
…all sites

removeProfile and removePublicKey already cleared booted manually after
resetKeyRing; now that resetKeyRing does it itself, remove the duplicate
writes so there is one convention.

Closes #1428
fix(extension): block create-account flow when a locked vault already exists
Trigger on release/ext-* tags: build production bundle (mirroring the
extension-build workflow), validate manifest/package version matches the
tag, zip dist, upload + publish via the Chrome Web Store Publish API
(chrome-webstore-upload-cli), then create a GitHub release with the zip
attached (chains release-notes.yml).

Publish runs in the chrome-webstore GitHub environment; required
reviewers on that environment keep a human gate before submission.
Beta listing support is a follow-up.

Closes #1430
_raw/manifest.json is gitignored and generated by prepareManifest, which
injects the package.json version at build time; the checked-in
manifest.pro.json version is stale and ignored. Validating against the
generated file would fail on every fresh checkout.

Closes #1430
The bundle consumes LATEST_TAG/REPO_URL/COMMIT_SHA/BRANCH_NAME via
dotenv-webpack (build-indicator, About page); fetch full history and
compute the previous release tag so the release artifact matches what
the existing CI build embeds.

Closes #1430
ci(extension): Chrome Web Store release pipeline
v4 removed the --client-id/--client-secret/--refresh-token flags
(fregante/chrome-webstore-upload-cli#80); the first release run failed on
them. Pass CLIENT_ID/CLIENT_SECRET/REFRESH_TOKEN/EXTENSION_ID via env.

Closes #1430
fix(ci): pass CWS auth via env vars (upload-cli v4 removed flags)
…lient

The underlying chrome-webstore-upload APIClient requires publisherId
(new CWS API addresses items as publishers/{publisherId}/items/{itemId}).
Passed as PUBLISHER_ID env from a new CWS_PUBLISHER_ID secret; the ID is
visible in the devconsole URL after /devconsole/.

Closes #1430
fix(ci): add PUBLISHER_ID for CWS API client
- Add chrome-webstore-upload-cli 4.0.1 as a pinned devDependency and
  invoke via pnpm exec in the publish job (installs with the lockfile
  instead of npx fetching a mutable major tag at release time; upgrades
  now go through dependency-review on PRs)
- Rewrite build/release.ts: takes the version as an argument (no
  interactive prompt), creates a release/ext-x.y.z branch, bumps
  package.json (the version source of truth; the old script wrote the
  gitignored generated manifest), opens a PR, and prints the tag commands
  for after merge. Drops the stale origin-master push and v{x.y.z} tag
  convention. Supports --dry-run.
- Remove dead deps (enquirer, shelljs, zip-dir), unused since the rewrite

Closes #1434
ci(extension): vendor CWS upload CLI, rewrite release script
Picks up the targetSdk 36 change (onflow/FRW-Android#3352) so the
monorepo Android build compiles the API-36-compliant tree. Done manually;
the submodule-update workflow is broken (heredoc output bug).

Closes #1438
chore(react-native): bump Android submodule to release/r3.1.0 tip

This branch had an error being deployed

1 failed (outdated) and 2 active deployments
production — c059260a Deployed Sep 29, 2026 by lmcmz via android #928
development — c059260a Deployed Aug 11, 2026 by Kay-Zee via test (22.x) #2830
chrome-webstore — 72c945d1 Deployed Aug 5, 2026 by Kay-Zee via publish #3
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

7 participants