- @pezkuwi/dev, dev-test, dev-ts ^0.86.3 in the root and in every
workspace package (they still asked for 0.84.3)
- tsconfig.base target ES2022, the @pezkuwi/dev default; it carries
the ErrorOptions type for `cause`
- rethrown errors carry the original as `cause`; rejections are
normalised to Error
- page/messaging: the typed subscriber is called directly, not as
`Function`
- chrome mock: constant results through Promise.resolve
- useLedger: drop a construction every branch below repeated
- InputWithLabel: onKeyDown instead of the deprecated onKeyPress
- Account: toggleActions + 1 instead of a pre-increment of a parameter
- optional chains where a guard tested the same value
- specs: mount<React.Component> so the wrappers are not `any`-typed
- AccountsStore.set keeps its async override of KeyringStore.set:
BaseStore.set handles its own failure, so it never rejects
- extension-chains keeps its ChainProperties assertion: the package's
own build does not load the type augmentation
- the existing React Compiler findings (37, react-hooks rules only)
are recorded in eslint-suppressions.json; a new one fails lint
pr-any.yml ran lint, test and build with continue-on-error: true, so every
PR showed success while main had 41 lint errors and 19 of 61 tests failing.
The flag is removed and the failures are fixed:
- TypeScript 5.5.4 -> 5.9. @pezkuwi/util and friends ship declarations
with Uint8Array<ArrayBufferLike>, which 5.5 cannot read, so every such
value was typed `any` here (the 16 wrapBytes errors). The pin dates from
a styled-components declaration problem that went away with the move
back to styled-components 5; build and lint pass on 5.9.
- State.ts: the stored security log is parsed through a function that
returns an empty log for anything that is not a JSON array, instead of
letting `any` flow on; fire-and-forget logging uses .catch(console.error)
like the rest of the codebase; object keys sorted.
- buildHierarchy.spec.ts: a rename had replaced the genesis hashes with
0x..01 / 0x..02, which resolve to no network name, so sorting by network
had nothing to sort on. The test now takes two real entries from
chains.ts by name.
- scripts/*.cjs is in the lint project (it failed to parse); header and
key order fixed in postbuild-cleanup.cjs.
- temp_ff_validate/ (43 build files) and pezkuwi-chrome-0.62.22.zip were
committed by accident in f5495f7; removed and ignored.
16 of the 19 failing tests are not fixed here: they fail because
@pezkuwi/wasm-crypto 7.5.18 stubs ed25519, secp256k1 and sr25519
derivation. With the 7.5.19 build from pezkuwi-wasm#2 installed locally,
lint is clean and all 61 tests pass. Until 7.5.19 is published and
picked up here, those 16 stay red on this PR, which is the point.
The ui-settings LANGUAGE_DEFAULT is 'default' but no locale folder exists for it.
This caused i18n to fail loading translations, breaking the entire UI including
wallet creation screen (showed <unknown> instead of text).
Fix normalizes 'default' language to 'en' in the i18n Backend.
Added PEZKUWI_USER_EXTENSIONS with AuthorizeCall to the signing request
registry. This ensures proper transaction signing for PezkuwiChain
networks even when chain metadata is not available.
Without this fix, transactions fail with "bad signature" errors
because the AuthorizeCall extension is not properly included in
the signed payload.
All genesis hashes now from live chains:
- PezkuwiChain: 0xbb4a61ab0c4b8c12f5eab71d0c86c482e03a275ecdafee678dea712474d33d75
- Asset Hub: 0x00d0e1d0581c3cd5c5768652d52f4520184018b44f56a2ae1e0dc9d65c00c948
- People Chain: 0x58269e9c184f721e0309332d90cafc410df1519a5dc27a5fd9b3bf5fd2d129f8
- Zagros Testnet: 0x96eb58af1bb7288115b5e4ff1590422533e749293f231974536dc6672417d06f
- Update all copyright headers from 2025 to 2026
- Fix @polkadot references to @pezkuwi in config files
- Fix eslint.config.js import path
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Update @pezkuwi/react-identicon, ui-shared, ui-settings, ui-keyring, react-qr to ^3.17.1
- Fix westendMetadata → zagrosMetadata imports in test files
- Remove backward compatibility for polkadot/substrate themes in Identicon.tsx
- Add proper Network[] type annotation to legerChains.ts
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Replace Polkadot/Kusama/Westend with Pezkuwi/Dicle/Zagros
- Update genesis hashes to Pezkuwi network hashes
- Update icon themes from polkadot/substrate to pezkuwi/bizinikiwi
- Update URLs from polkadot.org to pezkuwichain.io
- Update account names from "My Polkadot Account" to "My Pezkuwi Account"
- Update Identicon.tsx to use pezkuwi theme instead of jdenticon fallback
- Update Ledger app references from Polkadot to Pezkuwi
- Update translation file for Ledger text