You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+21Lines changed: 21 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,24 @@
1
+
## 0.7.9 (2026-05-11)
2
+
3
+
### 🚀 Features
4
+
5
+
-**host-papp:** user attestation has moved off the Host and onto the paired Polkadot Mobile app. The Host no longer drives the attestation flow during sign-in — the mobile app handles it end-to-end as part of pairing.
6
+
-**host-papp:**`UserSession` gains a `createTransaction(payload)` method. The Host can now delegate product-account transaction signing to the paired Polkadot Mobile app via the new `CreateTransactionRequest` / `CreateTransactionResponse` SSO message pair (legacy-account signing stays Host-local).
7
+
-**product-sdk:** new top-level `accounts` singleton (`createAccountsProvider()` with the default sandbox transport) for products that don't need a custom transport.
8
+
-**product-sdk:** export `ProductAccountId` and `LegacyAccount` types.
9
+
10
+
### ⚠️ Breaking Changes
11
+
12
+
-**host-api:**`host_create_transaction` no longer takes a separate `account_id` parameter — the account is now part of the payload as a typed `signer` field.
13
+
-**host-api:**`TxPayloadV1.signer` is now required and typed (`ProductAccountId` or `AccountId`) instead of `Option<str>`.
14
+
-**host-api:** dropped the `context` field from `TxPayloadV1` (runtime metadata, token symbol/decimals, best block height). The signer derives these from the chain.
15
+
-**host-api:** removed the `VersionedTxPayload` envelope from `host_create_transaction*` — pass the payload directly.
16
+
-**product-sdk:**`getProductAccountSigner` now returns a `PolkadotSigner` whose `signTx` routes through `host_create_transaction` and returns the full signed extrinsic; `signBytes` routes through `host_sign_raw`. Previously `signTx` called `host_sign_payload` and returned a detached signature via `getPolkadotSignerFromPjs`. Callers no longer need to assemble the extrinsic themselves.
17
+
-**product-sdk:** the `Signer.createTransaction` payload shape changed to match the new `TxPayloadV1` (no `version`, no `context`, typed `signer`).
18
+
-**product-sdk:** new runtime dependency `@polkadot-api/substrate-bindings@^0.20.2` (used by `getProductAccountSigner` to decode metadata locally and pick `txExtVersion`).
19
+
20
+
> No compatibility shim. `host_create_transaction` had no production consumers and `host_create_transaction_with_legacy_account` is only reachable via `product-sdk`, which is bumped in lockstep.
Based on [https://github.com/polkadot-js/api/issues/6213](https://github.com/polkadot-js/api/issues/6213), but omitting the `version` field.\
769
-
This format is capable of supporting both V4 and V5 extrinsics.
770
-
There are two different methods for creating a transaction: `create_transaction` and `create_transaction_with_legacy_account`. `create_transaction` is bound to the Host API account model; `create_transaction_with_legacy_account`, on the other hand, can request signing with any legacy account, and the host should decide how to find or derive accounts for signing using the `signer` field as a reference.
766
+
Derived from [https://github.com/polkadot-js/api/issues/6213](https://github.com/polkadot-js/api/issues/6213) but trimmed for an online-signer topology: the `version` field is omitted, and the `context` block (runtime metadata, token symbol/decimals, best block height) is dropped — the signer (Host or Account Holder) is online and derives those from the chain identified by `CheckGenesis` rather than trusting a product-supplied blob.
767
+
768
+
The format is capable of supporting both V4 and V5 extrinsics.
769
+
770
+
There are two methods for creating a transaction: `create_transaction` and `create_transaction_with_legacy_account`. Both take a `TxPayloadV1<Signer>` parametrized by the signer-identifier type — `ProductAccountId` for product accounts and `AccountId` for legacy accounts. The `signer` field is required and typed; there is no separate `account_id` parameter.
771
771
772
772
```rust
773
773
enumCreateTransactionErr {
774
774
FailedToDecode,
775
775
Rejected,
776
+
// Unsupported payload version
776
777
// Failed to infer missing extensions, some extension is unsupported, etc.
0 commit comments