|
208 | 208 | }, |
209 | 209 | { |
210 | 210 | "name": "@bsv/wallet-toolbox", |
211 | | - "publishedVersion": "2.14.7", |
212 | | - "releaseType": "patch", |
213 | | - "summary": "Preserves the existing empty attempted-TXID sentinel when storage detects an explicit-input double spend before constructing an action. Requires one doubleSpend result, empty send results, no constructed transaction fields and bounded nonempty competing evidence; other empty identifiers remain invalid. Confirmed internalizeAction resolves the block header before the storage writer opens, so IndexedDB stores a valid mined AtomicBEEF after an asynchronous header lookup. Invalid proofs and missing or malformed headers still reject with no partial proven-transaction, transaction, or output records. Adds restart-safe WAB registration checkpoints that preserve the original root across interrupted faucet redemption and UMP publication; retries recover the prior faucet action instead of creating a second root. CWIStyleWalletManager commits added or deleted profiles only when the replacement UMP token is published. Failed factor retrieval or publication preserves the previous profile list and permits retry; failed active-profile deletion attempts to restore that profile while preserving the update error. Pending case-insensitive profile names are reserved until creation settles, preventing overlapping duplicate names. A failure restoring the active wallet after publication retains the committed token and profile list. internalizeAction stores basket customInstructions with one metadata encryption when encryptWalletMetadata is enabled, including a normal basket on a call that also carries a registered permission-module label.", |
214 | | - "migration": "For pre-construction conflict recovery, upgrade the wallet parser with an application SDK that validates competing evidence against requested inputs. Use the existing JSON error transport; binary framing is unchanged. Parsing alone does not authorize retry or prove competing transaction validity. For confirmed IndexedDB internalization, upgrade active storage, including the browser client; no API, wire or schema migration is required. For restart-safe WAB registration, persist token bytes through pendingRegistrationTokenSaver before funding, load them with loadPendingRegistrationToken before authentication after restart, and retain them until an authenticated snapshot is saved and hasPendingRegistrationToken returns false. Recover older pending registrations without checkpoints using the original wallet state; do not redeem again with a new root. No public API, wire, database, or consumer migration is required. Upgrade the wallet manager package used by the host. This fixes failed-update bookkeeping, not the underlying factor-decryption error. After a post-publication profile-restoration error, inspect listProfiles before retrying: the profile change has already committed. A failed restoration may leave the default profile active. Newly internalized normal-basket customInstructions are encrypted once, matching createAction. Values already stored under the previous double encryption remain ciphertext after one listOutputs decrypt." |
| 211 | + "publishedVersion": "2.14.8", |
| 212 | + "releaseType": "minor", |
| 213 | + "summary": "Adds a regtest Chain for Teranode regression-network deployments: the canonical regtest genesis header, ChainTracks clients that accept the service's 'regtest' chain name, REGTEST_ARCADE_URL and REGTEST_CHAINTRACKS_URL endpoint configuration, and no WhatsOnChain provider. Header proof-of-work and chain-work checks take an optional chain, and proofOfWorkLimitBits(chain) reports its limit: only 'regtest' raises it to 0x207fffff; every other chain, and every check that names no chain, keeps the mainnet limit of 0x1d00ffff, so no existing validation is relaxed.", |
| 214 | + "migration": "Chain gains the 'regtest' member, so a consumer with an exhaustive switch over Chain needs a case for it. Header validation helpers gain an optional trailing chain parameter; omitting it keeps the mainnet limit, and the 'tstn' chain is unchanged. No API or schema migration is required." |
215 | 215 | }, |
216 | 216 | { |
217 | 217 | "name": "@bsv/wallet-toolbox-client", |
218 | | - "publishedVersion": "2.14.7", |
219 | | - "releaseType": "patch", |
220 | | - "summary": "Preserves the existing empty attempted-TXID sentinel when storage detects an explicit-input double spend before constructing an action. Requires one doubleSpend result, empty send results, no constructed transaction fields and bounded nonempty competing evidence; other empty identifiers remain invalid. Confirmed internalizeAction resolves the block header before the storage writer opens, so IndexedDB stores a valid mined AtomicBEEF after an asynchronous header lookup. Invalid proofs and missing or malformed headers still reject with no partial proven-transaction, transaction, or output records. Adds restart-safe WAB registration checkpoints that preserve the original root across interrupted faucet redemption and UMP publication; retries recover the prior faucet action instead of creating a second root. CWIStyleWalletManager commits added or deleted profiles only when the replacement UMP token is published. Failed factor retrieval or publication preserves the previous profile list and permits retry; failed active-profile deletion attempts to restore that profile while preserving the update error. Pending case-insensitive profile names are reserved until creation settles, preventing overlapping duplicate names. A failure restoring the active wallet after publication retains the committed token and profile list. internalizeAction stores basket customInstructions with one metadata encryption when encryptWalletMetadata is enabled, including a normal basket on a call that also carries a registered permission-module label.", |
221 | | - "migration": "For pre-construction conflict recovery, upgrade the wallet parser with an application SDK that validates competing evidence against requested inputs. Use the existing JSON error transport; binary framing is unchanged. Parsing alone does not authorize retry or prove competing transaction validity. For confirmed IndexedDB internalization, upgrade active storage, including the browser client; no API, wire or schema migration is required. For restart-safe WAB registration, persist token bytes through pendingRegistrationTokenSaver before funding, load them with loadPendingRegistrationToken before authentication after restart, and retain them until an authenticated snapshot is saved and hasPendingRegistrationToken returns false. Recover older pending registrations without checkpoints using the original wallet state; do not redeem again with a new root. No public API, wire, database, or consumer migration is required. Upgrade the wallet manager package used by the host. This fixes failed-update bookkeeping, not the underlying factor-decryption error. After a post-publication profile-restoration error, inspect listProfiles before retrying: the profile change has already committed. A failed restoration may leave the default profile active. Newly internalized normal-basket customInstructions are encrypted once, matching createAction. Values already stored under the previous double encryption remain ciphertext after one listOutputs decrypt." |
| 218 | + "publishedVersion": "2.14.8", |
| 219 | + "releaseType": "minor", |
| 220 | + "summary": "Adds a regtest Chain for Teranode regression-network deployments: the canonical regtest genesis header, ChainTracks clients that accept the service's 'regtest' chain name, REGTEST_ARCADE_URL and REGTEST_CHAINTRACKS_URL endpoint configuration, and no WhatsOnChain provider. Header proof-of-work and chain-work checks take an optional chain, and proofOfWorkLimitBits(chain) reports its limit: only 'regtest' raises it to 0x207fffff; every other chain, and every check that names no chain, keeps the mainnet limit of 0x1d00ffff, so no existing validation is relaxed.", |
| 221 | + "migration": "Chain gains the 'regtest' member, so a consumer with an exhaustive switch over Chain needs a case for it. Header validation helpers gain an optional trailing chain parameter; omitting it keeps the mainnet limit, and the 'tstn' chain is unchanged. No API or schema migration is required." |
222 | 222 | }, |
223 | 223 | { |
224 | 224 | "name": "@bsv/wallet-toolbox-mobile", |
225 | | - "publishedVersion": "2.14.7", |
226 | | - "releaseType": "patch", |
227 | | - "summary": "Preserves the existing empty attempted-TXID sentinel when storage detects an explicit-input double spend before constructing an action. Requires one doubleSpend result, empty send results, no constructed transaction fields and bounded nonempty competing evidence; other empty identifiers remain invalid. Confirmed internalizeAction resolves the block header before the storage writer opens, so IndexedDB stores a valid mined AtomicBEEF after an asynchronous header lookup. Invalid proofs and missing or malformed headers still reject with no partial proven-transaction, transaction, or output records. Adds restart-safe WAB registration checkpoints that preserve the original root across interrupted faucet redemption and UMP publication; retries recover the prior faucet action instead of creating a second root. CWIStyleWalletManager commits added or deleted profiles only when the replacement UMP token is published. Failed factor retrieval or publication preserves the previous profile list and permits retry; failed active-profile deletion attempts to restore that profile while preserving the update error. Pending case-insensitive profile names are reserved until creation settles, preventing overlapping duplicate names. A failure restoring the active wallet after publication retains the committed token and profile list. internalizeAction stores basket customInstructions with one metadata encryption when encryptWalletMetadata is enabled, including a normal basket on a call that also carries a registered permission-module label.", |
228 | | - "migration": "For pre-construction conflict recovery, upgrade the wallet parser with an application SDK that validates competing evidence against requested inputs. Use the existing JSON error transport; binary framing is unchanged. Parsing alone does not authorize retry or prove competing transaction validity. For confirmed IndexedDB internalization, upgrade active storage, including the browser client; no API, wire or schema migration is required. For restart-safe WAB registration, persist token bytes through pendingRegistrationTokenSaver before funding, load them with loadPendingRegistrationToken before authentication after restart, and retain them until an authenticated snapshot is saved and hasPendingRegistrationToken returns false. Recover older pending registrations without checkpoints using the original wallet state; do not redeem again with a new root. No public API, wire, database, or consumer migration is required. Upgrade the wallet manager package used by the host. This fixes failed-update bookkeeping, not the underlying factor-decryption error. After a post-publication profile-restoration error, inspect listProfiles before retrying: the profile change has already committed. A failed restoration may leave the default profile active. Newly internalized normal-basket customInstructions are encrypted once, matching createAction. Values already stored under the previous double encryption remain ciphertext after one listOutputs decrypt." |
| 225 | + "publishedVersion": "2.14.8", |
| 226 | + "releaseType": "minor", |
| 227 | + "summary": "Adds a regtest Chain for Teranode regression-network deployments: the canonical regtest genesis header, ChainTracks clients that accept the service's 'regtest' chain name, REGTEST_ARCADE_URL and REGTEST_CHAINTRACKS_URL endpoint configuration, and no WhatsOnChain provider. Header proof-of-work and chain-work checks take an optional chain, and proofOfWorkLimitBits(chain) reports its limit: only 'regtest' raises it to 0x207fffff; every other chain, and every check that names no chain, keeps the mainnet limit of 0x1d00ffff, so no existing validation is relaxed.", |
| 228 | + "migration": "Chain gains the 'regtest' member, so a consumer with an exhaustive switch over Chain needs a case for it. Header validation helpers gain an optional trailing chain parameter; omitting it keeps the mainnet limit, and the 'tstn' chain is unchanged. No API or schema migration is required." |
229 | 229 | }, |
230 | 230 | { |
231 | 231 | "name": "create-bsv-app", |
|
0 commit comments