@seams/wallet-server 0.55.0 → 0.56.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/artifact-manifest.json +11 -11
- package/cloudflare-router-ab/build/deriver-a/build-stamp.json +1 -1
- package/cloudflare-router-ab/build/deriver-b/build-stamp.json +1 -1
- package/cloudflare-router-ab/build/local-tools/linux-x64/router_ab_local_init +0 -0
- package/cloudflare-router-ab/build/router/build-stamp.json +1 -1
- package/cloudflare-router-ab/build/signing-worker/build-stamp.json +1 -1
- package/cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json +1 -1
- package/dist/esm/router/domains/speakToSign/speakToSignVerify.js +6 -3
- package/dist/types/wallet-server/src/router/domains/speakToSign/speakToSignVerify.d.ts +4 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,17 +4,17 @@ This package owns the reusable signer server surface: route adapters,
|
|
|
4
4
|
WebAuthn verification policy, threshold signing services, signer storage
|
|
5
5
|
adapters, and server wasm bindings.
|
|
6
6
|
|
|
7
|
-
The package version is `@seams/wallet-server@0.
|
|
8
|
-
`@seams/wallet@0.
|
|
7
|
+
The package version is `@seams/wallet-server@0.56.1`. Pair it with
|
|
8
|
+
`@seams/wallet@0.56.1` and matching hosted assets. Use `@seams/wallet-cli@0.29.0`.
|
|
9
9
|
The wallet iframe protocol is **23.0.0**.
|
|
10
10
|
|
|
11
11
|
```sh
|
|
12
|
-
pnpm add @seams/wallet-server@0.
|
|
12
|
+
pnpm add @seams/wallet-server@0.56.1
|
|
13
13
|
```
|
|
14
14
|
|
|
15
15
|
## Google BYO authentication
|
|
16
16
|
|
|
17
|
-
Version 0.
|
|
17
|
+
Version 0.56.1 verifies a configured application's signed session assertion or the app's Google ID token or exchanges it for a browser-bound handoff.
|
|
18
18
|
An environment-specific Google client configuration and an owner-approved wallet association are required.
|
|
19
19
|
Apply the packaged signer migrations before enabling the feature.
|
|
20
20
|
External sessions grant settings reads and remain separate from owner and signing credentials.
|
package/artifact-manifest.json
CHANGED
|
@@ -3,17 +3,17 @@
|
|
|
3
3
|
"walletSecurityPolicy": "scoped_seals_and_owner_proofs_v1",
|
|
4
4
|
"package": {
|
|
5
5
|
"name": "@seams/wallet-server",
|
|
6
|
-
"version": "0.
|
|
6
|
+
"version": "0.56.1"
|
|
7
7
|
},
|
|
8
8
|
"workers": {
|
|
9
9
|
"router": {
|
|
10
10
|
"entry": "cloudflare-router-ab/build/router/worker/shim.mjs",
|
|
11
|
-
"fingerprint": "
|
|
11
|
+
"fingerprint": "af1cd9764fc7119d1b4a3e05b4282fef18ed6034da4df6ea541fb80bed33e092",
|
|
12
12
|
"files": [
|
|
13
13
|
{
|
|
14
14
|
"path": "cloudflare-router-ab/build/router/build-stamp.json",
|
|
15
15
|
"bytes": 119,
|
|
16
|
-
"sha256": "
|
|
16
|
+
"sha256": "a18fc437703896613cf0c7f2032236046cc985731ef1c5287f1dfadfa27266b5"
|
|
17
17
|
},
|
|
18
18
|
{
|
|
19
19
|
"path": "cloudflare-router-ab/build/router/index.js",
|
|
@@ -39,12 +39,12 @@
|
|
|
39
39
|
},
|
|
40
40
|
"deriver-a": {
|
|
41
41
|
"entry": "cloudflare-router-ab/build/deriver-a/worker/shim.mjs",
|
|
42
|
-
"fingerprint": "
|
|
42
|
+
"fingerprint": "0e5b097d9416071eae56c3bfbad8f2127827eb6f0dc97f54232ddd00cc473593",
|
|
43
43
|
"files": [
|
|
44
44
|
{
|
|
45
45
|
"path": "cloudflare-router-ab/build/deriver-a/build-stamp.json",
|
|
46
46
|
"bytes": 122,
|
|
47
|
-
"sha256": "
|
|
47
|
+
"sha256": "e0c44988fad9c8b10b7a4eac46583ba6c5cd3e20b2128c1d1cf1bbcfcfdd8c03"
|
|
48
48
|
},
|
|
49
49
|
{
|
|
50
50
|
"path": "cloudflare-router-ab/build/deriver-a/index.js",
|
|
@@ -70,12 +70,12 @@
|
|
|
70
70
|
},
|
|
71
71
|
"deriver-b": {
|
|
72
72
|
"entry": "cloudflare-router-ab/build/deriver-b/worker/shim.mjs",
|
|
73
|
-
"fingerprint": "
|
|
73
|
+
"fingerprint": "3c40ff3288bf11ba108647ff40ca1d8c96f21927a54a1c362a04820e64835a25",
|
|
74
74
|
"files": [
|
|
75
75
|
{
|
|
76
76
|
"path": "cloudflare-router-ab/build/deriver-b/build-stamp.json",
|
|
77
77
|
"bytes": 122,
|
|
78
|
-
"sha256": "
|
|
78
|
+
"sha256": "2badc5ac2fe247bf125215c268813077b67c25e5acd018de9f286aad8cef3d70"
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
"path": "cloudflare-router-ab/build/deriver-b/index.js",
|
|
@@ -101,12 +101,12 @@
|
|
|
101
101
|
},
|
|
102
102
|
"signing-worker": {
|
|
103
103
|
"entry": "cloudflare-router-ab/build/signing-worker/worker/shim.mjs",
|
|
104
|
-
"fingerprint": "
|
|
104
|
+
"fingerprint": "20fa13bf1271609f246616a7328b59aa4991acd369d54ab302e82c28b4981fdf",
|
|
105
105
|
"files": [
|
|
106
106
|
{
|
|
107
107
|
"path": "cloudflare-router-ab/build/signing-worker/build-stamp.json",
|
|
108
108
|
"bytes": 127,
|
|
109
|
-
"sha256": "
|
|
109
|
+
"sha256": "7a5d98d388f3a1139abaae3f595378c710dcfda081df949c351048507df37309"
|
|
110
110
|
},
|
|
111
111
|
{
|
|
112
112
|
"path": "cloudflare-router-ab/build/signing-worker/index.js",
|
|
@@ -132,12 +132,12 @@
|
|
|
132
132
|
},
|
|
133
133
|
"tenant-root-control-plane": {
|
|
134
134
|
"entry": "cloudflare-router-ab/build/tenant-root-control-plane/worker/shim.mjs",
|
|
135
|
-
"fingerprint": "
|
|
135
|
+
"fingerprint": "65411ddde652581a7a70c27360845b29a4c0ea9a98d4854d6474c256ace2e9cd",
|
|
136
136
|
"files": [
|
|
137
137
|
{
|
|
138
138
|
"path": "cloudflare-router-ab/build/tenant-root-control-plane/build-stamp.json",
|
|
139
139
|
"bytes": 139,
|
|
140
|
-
"sha256": "
|
|
140
|
+
"sha256": "37d2d823304d1468b486d0e8bdd9466a3ef1661c049c913402dccc756590fac0"
|
|
141
141
|
},
|
|
142
142
|
{
|
|
143
143
|
"path": "cloudflare-router-ab/build/tenant-root-control-plane/index.js",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"profile":"release","wallet_objects":true,"features":"strict-worker-deriver-a-entrypoint","started_at_ms":
|
|
1
|
+
{"profile":"release","wallet_objects":true,"features":"strict-worker-deriver-a-entrypoint","started_at_ms":1794173880646}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"profile":"release","wallet_objects":true,"features":"strict-worker-deriver-b-entrypoint","started_at_ms":
|
|
1
|
+
{"profile":"release","wallet_objects":true,"features":"strict-worker-deriver-b-entrypoint","started_at_ms":1794174029253}
|
|
Binary file
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"profile":"release","wallet_objects":true,"features":"strict-worker-router-entrypoint","started_at_ms":
|
|
1
|
+
{"profile":"release","wallet_objects":true,"features":"strict-worker-router-entrypoint","started_at_ms":1794174166843}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"profile":"release","wallet_objects":true,"features":"strict-worker-signing-worker-entrypoint","started_at_ms":
|
|
1
|
+
{"profile":"release","wallet_objects":true,"features":"strict-worker-signing-worker-entrypoint","started_at_ms":1794173648545}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"profile":"release","wallet_objects":false,"features":"strict-worker-tenant-root-control-plane-entrypoint","started_at_ms":
|
|
1
|
+
{"profile":"release","wallet_objects":false,"features":"strict-worker-tenant-root-control-plane-entrypoint","started_at_ms":1794174327409}
|
|
@@ -7,8 +7,11 @@ import { defineRoute } from "../../framework/routeDefinitions.js";
|
|
|
7
7
|
import { resolveWalletSessionAuthorizationV2Admission } from "../signingOperations/walletExecutionAdmission.js";
|
|
8
8
|
//#region src/router/domains/speakToSign/speakToSignVerify.ts
|
|
9
9
|
const SPEAK_TO_SIGN_VERIFY_PATH = "/speak-to-sign/v1/verify";
|
|
10
|
-
/**
|
|
11
|
-
|
|
10
|
+
/**
|
|
11
|
+
* An enrollment carries three clips. 8 s of 16 kHz PCM16 is 256,000 bytes, about 341 KB in
|
|
12
|
+
* base64, so three clips are about 1,000 KB, with room for the fields.
|
|
13
|
+
*/
|
|
14
|
+
const SPEAK_TO_SIGN_VERIFY_MAX_BODY_BYTES = 1100 * 1024;
|
|
12
15
|
/** The verifier calls two remote models; the whole flow has a 10 s budget. */
|
|
13
16
|
const OUTLAYER_TIMEOUT_MS = 2e4;
|
|
14
17
|
const OUTLAYER_RESOURCE_LIMITS = Object.freeze({
|
|
@@ -84,7 +87,7 @@ var SpeakToSignVerifyRoutes = class {
|
|
|
84
87
|
rationale: "The handler requires a live Wallet Session operation credential of the owner."
|
|
85
88
|
},
|
|
86
89
|
metering: { kind: "none" },
|
|
87
|
-
summary: "Run the pinned OutLayer voice verifier for a spoken payment"
|
|
90
|
+
summary: "Run the pinned OutLayer voice verifier for a spoken payment or an enrollment"
|
|
88
91
|
})];
|
|
89
92
|
now;
|
|
90
93
|
constructor(config, dependencies) {
|
|
@@ -2,7 +2,10 @@ import type { WalletId } from '../../../../../shared-ts/src/utils/domainIds';
|
|
|
2
2
|
import type { RouterApiAuthorizationSessionService, RouterApiWalletRegistrationService } from '../../framework/authServicePort';
|
|
3
3
|
import type { RouterApiRouteExtension } from '../../framework/routeExtensions';
|
|
4
4
|
export declare const SPEAK_TO_SIGN_VERIFY_PATH = "/speak-to-sign/v1/verify";
|
|
5
|
-
/**
|
|
5
|
+
/**
|
|
6
|
+
* An enrollment carries three clips. 8 s of 16 kHz PCM16 is 256,000 bytes, about 341 KB in
|
|
7
|
+
* base64, so three clips are about 1,000 KB, with room for the fields.
|
|
8
|
+
*/
|
|
6
9
|
export declare const SPEAK_TO_SIGN_VERIFY_MAX_BODY_BYTES: number;
|
|
7
10
|
/** The route exists only when the server configuration holds every field. */
|
|
8
11
|
export type SpeakToSignVerifyConfig = Readonly<{
|