@arcforgelabs/flow 2026.10.53 → 2026.11.2
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 +1 -0
- package/SECURITY.md +7 -4
- package/npm-shrinkwrap.json +442 -4
- package/package.json +8 -3
- package/server/agents/auth-worker.js +7 -0
- package/server/agents/auth.js +50 -0
- package/server/agents/gate.js +138 -0
- package/server/agents/grants.js +51 -0
- package/server/agents/reads.js +47 -0
- package/server/agents/server.js +74 -0
- package/server/agents/settings.js +24 -0
- package/server/api/invoicing.js +27 -10
- package/server/app.js +9 -0
- package/server/core/invoice-rules.js +25 -10
- package/server/core/job-board.js +12 -4
- package/server/core/ledger.js +110 -22
- package/server/core/line-mapping.js +9 -5
- package/server/core/read-before-act.js +2 -2
- package/server/core/reconcile.js +15 -1
- package/server/core/sending.js +33 -9
- package/server/db/migrations/0025_powerful_leopardon.sql +1 -0
- package/server/db/migrations/0026_bitter_sersi.sql +38 -0
- package/server/db/migrations/meta/0025_snapshot.json +4709 -0
- package/server/db/migrations/meta/0026_snapshot.json +4926 -0
- package/server/db/migrations/meta/_journal.json +14 -0
- package/server/db/schema.js +38 -1
- package/server/index.js +9 -1
- package/server/integrations/port.js +1 -0
- package/server/integrations/seazona/history/backfill.js +3 -1
- package/server/integrations/seazona/history/index.js +4 -7
- package/server/integrations/seazona/index.js +5 -1
- package/server/integrations/seazona/lanes.js +44 -27
- package/server/integrations/seazona/ledger.js +17 -6
- package/server/integrations/seazona/reconcile.js +12 -0
- package/server/rate-limit.js +2 -1
- package/server/ui/app.js +76 -64
- package/server/ui/flow.css +43 -8
- package/server/ui/invoice-rules.js +24 -3
- package/server/ui/invoicing.js +76 -13
- package/server/ui/job-board.js +12 -7
- package/server/ui/job-change.js +63 -15
- package/server/ui/jobs.js +4 -4
- package/server/ui/mobile.js +17 -0
- package/server/ui/routes.js +1 -1
- package/server/ui/sync-status.js +67 -0
package/README.md
CHANGED
|
@@ -54,6 +54,7 @@ run a lab.
|
|
|
54
54
|
| `docs/AI_BOTS.md` | The AI bots: ClawSweeper reviews and the Docs Agent, their ClawRouter budget and cost, and setup |
|
|
55
55
|
| `docs/LOW_RISK_MERGE.md` | The low-risk merge lane: which pull requests merge themselves when green, with ClawSweeper's risk labels |
|
|
56
56
|
| `docs/RELEASING.md` | Versions and channels, the release workflows, how to cut and roll back a release, and the one-time setup |
|
|
57
|
+
| `docs/AGENT_ACCESS.md` | The off-by-default native MCP read tools, grants, host gates and stock OpenClaw setup |
|
|
57
58
|
| `docs/SELF_HOSTING.md` | Running a Flow release with Docker, Node or Replit, the update notice, and Clerk sign-in |
|
|
58
59
|
| `docs/REPLIT.md` | A Replit workspace of this repository that follows a release channel (`FLOW_DEPLOY_REF`) |
|
|
59
60
|
| `docs/INTEGRATIONS.md` | How an integration adapter is built, turned on and off, and owns its tables |
|
package/SECURITY.md
CHANGED
|
@@ -25,9 +25,12 @@ paste a credential, in full or in part.
|
|
|
25
25
|
role gets no access, and an installation is invitation only by default.
|
|
26
26
|
Owner-only actions need a verified owner sign-in (`docs/SELF_HOSTING.md`,
|
|
27
27
|
"Sign-in (Clerk)").
|
|
28
|
-
- **Machine access.** The
|
|
29
|
-
|
|
30
|
-
|
|
28
|
+
- **Machine access.** The native `/mcp` door is off by default. It accepts
|
|
29
|
+
Clerk OAuth access tokens for its exact resource, never browser sessions.
|
|
30
|
+
Each request also needs a current active Flow person and their explicit
|
|
31
|
+
person/client/organisation read grant. The first slice exposes four bounded read tools
|
|
32
|
+
(`docs/AGENT_ACCESS.md`). The reserved `/api/flow/v1` stub still refuses all
|
|
33
|
+
requests. It does not implement connector keys.
|
|
31
34
|
- **Integrations.** Seazona, Xero and every later adapter reach the core only
|
|
32
35
|
through the integration port. Their credentials are stored per
|
|
33
36
|
organisation, encrypted, and are write-only in Settings.
|
|
@@ -53,7 +56,7 @@ paste a credential, in full or in part.
|
|
|
53
56
|
- No account has a built-in or fallback password, in any environment.
|
|
54
57
|
- Sign-in, API and integration routes are rate limited per client
|
|
55
58
|
(`server/rate-limit.js`): the sign-in page and its config 30 requests a
|
|
56
|
-
minute, `/api` 120, and the Clerk proxy 300. A client over the limit gets
|
|
59
|
+
minute, `/api` and `/mcp` 120, and the Clerk proxy 300. A client over the limit gets
|
|
57
60
|
`429` with `Retry-After`.
|
|
58
61
|
- Session cookies are `Secure`, `HttpOnly` and `SameSite`.
|
|
59
62
|
- Flow stores no clinical notes or scans, and keeps a patient reference only
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@arcforgelabs/flow",
|
|
3
|
-
"version": "2026.
|
|
3
|
+
"version": "2026.11.2",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@arcforgelabs/flow",
|
|
9
|
-
"version": "2026.
|
|
9
|
+
"version": "2026.11.2",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@clerk/backend": "3.25.0",
|
|
13
|
+
"@clerk/express": "2.1.6",
|
|
14
|
+
"@clerk/mcp-tools": "0.9.0",
|
|
13
15
|
"@fontsource-variable/atkinson-hyperlegible-next": "5.3.0",
|
|
14
16
|
"@fontsource-variable/dm-sans": "5.3.0",
|
|
15
17
|
"@fontsource-variable/geist": "5.3.0",
|
|
@@ -21,13 +23,15 @@
|
|
|
21
23
|
"@fontsource-variable/playfair-display": "5.3.0",
|
|
22
24
|
"@fontsource-variable/plus-jakarta-sans": "5.3.0",
|
|
23
25
|
"@fontsource-variable/space-grotesk": "5.3.0",
|
|
26
|
+
"@modelcontextprotocol/sdk": "1.32.1",
|
|
24
27
|
"@sentry/node": "11.8.0",
|
|
25
28
|
"drizzle-orm": "0.45.4",
|
|
26
29
|
"express": "5.3.0",
|
|
27
30
|
"express-rate-limit": "8.7.1",
|
|
28
31
|
"lucide-static": "1.59.0",
|
|
29
32
|
"pdfkit": "0.20.2",
|
|
30
|
-
"pg": "8.23.1"
|
|
33
|
+
"pg": "8.23.1",
|
|
34
|
+
"zod": "4.6.7"
|
|
31
35
|
},
|
|
32
36
|
"bin": {
|
|
33
37
|
"flow-server": "server/flow-server.js"
|
|
@@ -36,7 +40,8 @@
|
|
|
36
40
|
"@axe-core/playwright": "4.13.0",
|
|
37
41
|
"@playwright/test": "1.56.1",
|
|
38
42
|
"drizzle-kit": "0.31.11",
|
|
39
|
-
"esbuild": "0.25.12"
|
|
43
|
+
"esbuild": "0.25.12",
|
|
44
|
+
"light-my-request": "6.8.0"
|
|
40
45
|
},
|
|
41
46
|
"engines": {
|
|
42
47
|
"node": ">=24"
|
|
@@ -69,6 +74,73 @@
|
|
|
69
74
|
"node": ">=20.9.0"
|
|
70
75
|
}
|
|
71
76
|
},
|
|
77
|
+
"node_modules/@clerk/express": {
|
|
78
|
+
"version": "2.1.6",
|
|
79
|
+
"resolved": "https://registry.npmjs.org/@clerk/express/-/express-2.1.6.tgz",
|
|
80
|
+
"integrity": "sha512-612cGi+JDj8nYhtwZXbFZclAN7Bz3ax4DTuHgYtsz+CVJ0gEBJsSMOZPsLZNUjXL/xvFcPBauZHGPz28G7aj2A==",
|
|
81
|
+
"license": "MIT",
|
|
82
|
+
"dependencies": {
|
|
83
|
+
"@clerk/backend": "^3.2.14",
|
|
84
|
+
"@clerk/shared": "^4.8.3",
|
|
85
|
+
"tslib": "2.8.1"
|
|
86
|
+
},
|
|
87
|
+
"engines": {
|
|
88
|
+
"node": ">=20.9.0"
|
|
89
|
+
},
|
|
90
|
+
"peerDependencies": {
|
|
91
|
+
"express": "^4.17.0 || ^5.0.0"
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"node_modules/@clerk/mcp-tools": {
|
|
95
|
+
"version": "0.9.0",
|
|
96
|
+
"resolved": "https://registry.npmjs.org/@clerk/mcp-tools/-/mcp-tools-0.9.0.tgz",
|
|
97
|
+
"integrity": "sha512-JyX2ny3y6Lve8A66rLEr2jM2P//ONkyBznVMpT5UyzJ21kgqPJ+FjCQEQGXku+Vq2zi1Hihv5pU4Wvn+G2+KHQ==",
|
|
98
|
+
"license": "MIT",
|
|
99
|
+
"dependencies": {
|
|
100
|
+
"@modelcontextprotocol/sdk": "^1.29.0"
|
|
101
|
+
},
|
|
102
|
+
"peerDependencies": {
|
|
103
|
+
"@clerk/express": "^2.1.5",
|
|
104
|
+
"@clerk/hono": "^0.1.0",
|
|
105
|
+
"@clerk/nextjs": "^7.2.3",
|
|
106
|
+
"better-sqlite3": "^8.7.0",
|
|
107
|
+
"express": "^5.0.0",
|
|
108
|
+
"hono": "^4.0.0",
|
|
109
|
+
"next": "^15.2.8 || ^15.3.8 || ^15.4.10 || ^15.5.9 || ^15.6.0-0 || ^16.0.10 || ^16.1.0-0",
|
|
110
|
+
"pg": "^8.11.0",
|
|
111
|
+
"redis": "^4.0.0",
|
|
112
|
+
"zod": "^3.25 || ^4.0"
|
|
113
|
+
},
|
|
114
|
+
"peerDependenciesMeta": {
|
|
115
|
+
"@clerk/express": {
|
|
116
|
+
"optional": true
|
|
117
|
+
},
|
|
118
|
+
"@clerk/hono": {
|
|
119
|
+
"optional": true
|
|
120
|
+
},
|
|
121
|
+
"@clerk/nextjs": {
|
|
122
|
+
"optional": true
|
|
123
|
+
},
|
|
124
|
+
"better-sqlite3": {
|
|
125
|
+
"optional": true
|
|
126
|
+
},
|
|
127
|
+
"express": {
|
|
128
|
+
"optional": true
|
|
129
|
+
},
|
|
130
|
+
"hono": {
|
|
131
|
+
"optional": true
|
|
132
|
+
},
|
|
133
|
+
"next": {
|
|
134
|
+
"optional": true
|
|
135
|
+
},
|
|
136
|
+
"pg": {
|
|
137
|
+
"optional": true
|
|
138
|
+
},
|
|
139
|
+
"redis": {
|
|
140
|
+
"optional": true
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
},
|
|
72
144
|
"node_modules/@clerk/shared": {
|
|
73
145
|
"version": "4.40.0",
|
|
74
146
|
"resolved": "https://registry.npmjs.org/@clerk/shared/-/shared-4.40.0.tgz",
|
|
@@ -569,6 +641,23 @@
|
|
|
569
641
|
"node": ">=18"
|
|
570
642
|
}
|
|
571
643
|
},
|
|
644
|
+
"node_modules/@fastify/deepmerge": {
|
|
645
|
+
"version": "3.2.4",
|
|
646
|
+
"resolved": "https://registry.npmjs.org/@fastify/deepmerge/-/deepmerge-3.2.4.tgz",
|
|
647
|
+
"integrity": "sha512-kc8GQq5gX9RRhw0rov3DMrN8wS8yRlxJRdDzsYwwdBV/wazuVgc/1K7CKL90tlvu3RlHan6Y0R0aE3nJtBz2eQ==",
|
|
648
|
+
"dev": true,
|
|
649
|
+
"funding": [
|
|
650
|
+
{
|
|
651
|
+
"type": "github",
|
|
652
|
+
"url": "https://github.com/sponsors/fastify"
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"type": "opencollective",
|
|
656
|
+
"url": "https://opencollective.com/fastify"
|
|
657
|
+
}
|
|
658
|
+
],
|
|
659
|
+
"license": "MIT"
|
|
660
|
+
},
|
|
572
661
|
"node_modules/@fontsource-variable/atkinson-hyperlegible-next": {
|
|
573
662
|
"version": "5.3.0",
|
|
574
663
|
"resolved": "https://registry.npmjs.org/@fontsource-variable/atkinson-hyperlegible-next/-/atkinson-hyperlegible-next-5.3.0.tgz",
|
|
@@ -668,12 +757,73 @@
|
|
|
668
757
|
"url": "https://github.com/sponsors/ayuhito"
|
|
669
758
|
}
|
|
670
759
|
},
|
|
760
|
+
"node_modules/@hono/node-server": {
|
|
761
|
+
"version": "2.1.6",
|
|
762
|
+
"resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.6.tgz",
|
|
763
|
+
"integrity": "sha512-p/KH9MnfNcsm3sR6x4lNgm5j+QN4Et8srKredl9DZfXiyZ1UQ3aQ2YVpFLbqktYN5JI+DB+VZFKM2PqE5hLKjQ==",
|
|
764
|
+
"license": "MIT",
|
|
765
|
+
"engines": {
|
|
766
|
+
"node": ">=20"
|
|
767
|
+
},
|
|
768
|
+
"peerDependencies": {
|
|
769
|
+
"hono": "^4 || ^5.0.0-0"
|
|
770
|
+
}
|
|
771
|
+
},
|
|
671
772
|
"node_modules/@jridgewell/sourcemap-codec": {
|
|
672
773
|
"version": "1.6.0",
|
|
673
774
|
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.6.0.tgz",
|
|
674
775
|
"integrity": "sha512-T7jf+5zgsZHwNJ4lvQ7/aezbyk0nNX+zJVWpmHA7VYsEx7a7qr5Rg5IbtJFqkgze5Y2sruq1RUY8Q837Od7iFw==",
|
|
675
776
|
"license": "MIT"
|
|
676
777
|
},
|
|
778
|
+
"node_modules/@modelcontextprotocol/sdk": {
|
|
779
|
+
"version": "1.32.1",
|
|
780
|
+
"resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.32.1.tgz",
|
|
781
|
+
"integrity": "sha512-2DdE+SJDtzLEEWzY1ZjY7Q+VcPhcV1KisD3zI4u0XZyktsjHum1mwbMI+JaulUBi2OZk+KJAi2uPXzxichPkdw==",
|
|
782
|
+
"license": "MIT",
|
|
783
|
+
"dependencies": {
|
|
784
|
+
"@hono/node-server": "^1.19.9 || ^2.0.5",
|
|
785
|
+
"ajv": "^8.17.1",
|
|
786
|
+
"ajv-formats": "^3.0.1",
|
|
787
|
+
"content-type": "^1.0.5",
|
|
788
|
+
"cors": "^2.8.5",
|
|
789
|
+
"cross-spawn": "^7.0.5",
|
|
790
|
+
"eventsource": "^3.0.2",
|
|
791
|
+
"eventsource-parser": "^3.0.0",
|
|
792
|
+
"express": "^5.2.1",
|
|
793
|
+
"express-rate-limit": "^8.2.1",
|
|
794
|
+
"hono": "^4.11.4",
|
|
795
|
+
"jose": "^6.1.3",
|
|
796
|
+
"json-schema-typed": "^8.0.2",
|
|
797
|
+
"pkce-challenge": "^5.0.0",
|
|
798
|
+
"raw-body": "^3.0.0",
|
|
799
|
+
"zod": "^3.25 || ^4.0",
|
|
800
|
+
"zod-to-json-schema": "^3.25.1"
|
|
801
|
+
},
|
|
802
|
+
"engines": {
|
|
803
|
+
"node": ">=18"
|
|
804
|
+
},
|
|
805
|
+
"peerDependencies": {
|
|
806
|
+
"@cfworker/json-schema": "^4.1.1",
|
|
807
|
+
"zod": "^3.25 || ^4.0"
|
|
808
|
+
},
|
|
809
|
+
"peerDependenciesMeta": {
|
|
810
|
+
"@cfworker/json-schema": {
|
|
811
|
+
"optional": true
|
|
812
|
+
},
|
|
813
|
+
"zod": {
|
|
814
|
+
"optional": false
|
|
815
|
+
}
|
|
816
|
+
}
|
|
817
|
+
},
|
|
818
|
+
"node_modules/@modelcontextprotocol/sdk/node_modules/content-type": {
|
|
819
|
+
"version": "1.0.5",
|
|
820
|
+
"resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
|
|
821
|
+
"integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
|
|
822
|
+
"license": "MIT",
|
|
823
|
+
"engines": {
|
|
824
|
+
"node": ">= 0.6"
|
|
825
|
+
}
|
|
826
|
+
},
|
|
677
827
|
"node_modules/@noble/ciphers": {
|
|
678
828
|
"version": "1.3.0",
|
|
679
829
|
"resolved": "https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz",
|
|
@@ -1214,6 +1364,39 @@
|
|
|
1214
1364
|
"node": ">= 0.6"
|
|
1215
1365
|
}
|
|
1216
1366
|
},
|
|
1367
|
+
"node_modules/ajv": {
|
|
1368
|
+
"version": "8.20.0",
|
|
1369
|
+
"resolved": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz",
|
|
1370
|
+
"integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==",
|
|
1371
|
+
"license": "MIT",
|
|
1372
|
+
"dependencies": {
|
|
1373
|
+
"fast-deep-equal": "^3.1.3",
|
|
1374
|
+
"fast-uri": "^3.0.1",
|
|
1375
|
+
"json-schema-traverse": "^1.0.0",
|
|
1376
|
+
"require-from-string": "^2.0.2"
|
|
1377
|
+
},
|
|
1378
|
+
"funding": {
|
|
1379
|
+
"type": "github",
|
|
1380
|
+
"url": "https://github.com/sponsors/epoberezkin"
|
|
1381
|
+
}
|
|
1382
|
+
},
|
|
1383
|
+
"node_modules/ajv-formats": {
|
|
1384
|
+
"version": "3.0.1",
|
|
1385
|
+
"resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz",
|
|
1386
|
+
"integrity": "sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==",
|
|
1387
|
+
"license": "MIT",
|
|
1388
|
+
"dependencies": {
|
|
1389
|
+
"ajv": "^8.0.0"
|
|
1390
|
+
},
|
|
1391
|
+
"peerDependencies": {
|
|
1392
|
+
"ajv": "^8.0.0"
|
|
1393
|
+
},
|
|
1394
|
+
"peerDependenciesMeta": {
|
|
1395
|
+
"ajv": {
|
|
1396
|
+
"optional": true
|
|
1397
|
+
}
|
|
1398
|
+
}
|
|
1399
|
+
},
|
|
1217
1400
|
"node_modules/axe-core": {
|
|
1218
1401
|
"version": "4.13.0",
|
|
1219
1402
|
"resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.13.0.tgz",
|
|
@@ -1396,6 +1579,37 @@
|
|
|
1396
1579
|
"node": ">=6.6.0"
|
|
1397
1580
|
}
|
|
1398
1581
|
},
|
|
1582
|
+
"node_modules/cors": {
|
|
1583
|
+
"version": "2.8.6",
|
|
1584
|
+
"resolved": "https://registry.npmjs.org/cors/-/cors-2.8.6.tgz",
|
|
1585
|
+
"integrity": "sha512-tJtZBBHA6vjIAaF6EnIaq6laBBP9aq/Y3ouVJjEfoHbRBcHBAHYcMh/w8LDrk2PvIMMq8gmopa5D4V8RmbrxGw==",
|
|
1586
|
+
"license": "MIT",
|
|
1587
|
+
"dependencies": {
|
|
1588
|
+
"object-assign": "^4",
|
|
1589
|
+
"vary": "^1"
|
|
1590
|
+
},
|
|
1591
|
+
"engines": {
|
|
1592
|
+
"node": ">= 0.10"
|
|
1593
|
+
},
|
|
1594
|
+
"funding": {
|
|
1595
|
+
"type": "opencollective",
|
|
1596
|
+
"url": "https://opencollective.com/express"
|
|
1597
|
+
}
|
|
1598
|
+
},
|
|
1599
|
+
"node_modules/cross-spawn": {
|
|
1600
|
+
"version": "7.0.6",
|
|
1601
|
+
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz",
|
|
1602
|
+
"integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==",
|
|
1603
|
+
"license": "MIT",
|
|
1604
|
+
"dependencies": {
|
|
1605
|
+
"path-key": "^3.1.0",
|
|
1606
|
+
"shebang-command": "^2.0.0",
|
|
1607
|
+
"which": "^2.0.1"
|
|
1608
|
+
},
|
|
1609
|
+
"engines": {
|
|
1610
|
+
"node": ">= 8"
|
|
1611
|
+
}
|
|
1612
|
+
},
|
|
1399
1613
|
"node_modules/debug": {
|
|
1400
1614
|
"version": "4.4.3",
|
|
1401
1615
|
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz",
|
|
@@ -1710,6 +1924,27 @@
|
|
|
1710
1924
|
"node": ">= 0.6"
|
|
1711
1925
|
}
|
|
1712
1926
|
},
|
|
1927
|
+
"node_modules/eventsource": {
|
|
1928
|
+
"version": "3.0.7",
|
|
1929
|
+
"resolved": "https://registry.npmjs.org/eventsource/-/eventsource-3.0.7.tgz",
|
|
1930
|
+
"integrity": "sha512-CRT1WTyuQoD771GW56XEZFQ/ZoSfWid1alKGDYMmkt2yl8UXrVR4pspqWNEcqKvVIzg6PAltWjxcSSPrboA4iA==",
|
|
1931
|
+
"license": "MIT",
|
|
1932
|
+
"dependencies": {
|
|
1933
|
+
"eventsource-parser": "^3.0.1"
|
|
1934
|
+
},
|
|
1935
|
+
"engines": {
|
|
1936
|
+
"node": ">=18.0.0"
|
|
1937
|
+
}
|
|
1938
|
+
},
|
|
1939
|
+
"node_modules/eventsource-parser": {
|
|
1940
|
+
"version": "3.1.1",
|
|
1941
|
+
"resolved": "https://registry.npmjs.org/eventsource-parser/-/eventsource-parser-3.1.1.tgz",
|
|
1942
|
+
"integrity": "sha512-EKN1vKAMcZ8MlYMpaNuxN6R9yakzH6uajHcHVTqWJzvu5pWw9DyhbP35HH8MVBQ+dZjAfDxk+A8NiR9KWaXiyQ==",
|
|
1943
|
+
"license": "MIT",
|
|
1944
|
+
"engines": {
|
|
1945
|
+
"node": ">=18.0.0"
|
|
1946
|
+
}
|
|
1947
|
+
},
|
|
1713
1948
|
"node_modules/express": {
|
|
1714
1949
|
"version": "5.3.0",
|
|
1715
1950
|
"resolved": "https://registry.npmjs.org/express/-/express-5.3.0.tgz",
|
|
@@ -1784,6 +2019,22 @@
|
|
|
1784
2019
|
"integrity": "sha512-n11RGP/lrWEFI/bWdygLxhI+pVeo1ZYIVwvvPkW7azl/rOy+F3HYRZ2K5zeE9mmkhQppyv9sQFx0JM9UabnpPQ==",
|
|
1785
2020
|
"license": "Unlicense"
|
|
1786
2021
|
},
|
|
2022
|
+
"node_modules/fast-uri": {
|
|
2023
|
+
"version": "3.1.9",
|
|
2024
|
+
"resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.9.tgz",
|
|
2025
|
+
"integrity": "sha512-hS/0Wt3Ya043oKXs0sIxrMpKQITXhMLIrVAKKXi4gozGC9v7YRWVnXIZzjNPTO02M9BdxLCWqK1yRXgNziVyJQ==",
|
|
2026
|
+
"funding": [
|
|
2027
|
+
{
|
|
2028
|
+
"type": "github",
|
|
2029
|
+
"url": "https://github.com/sponsors/fastify"
|
|
2030
|
+
},
|
|
2031
|
+
{
|
|
2032
|
+
"type": "opencollective",
|
|
2033
|
+
"url": "https://opencollective.com/fastify"
|
|
2034
|
+
}
|
|
2035
|
+
],
|
|
2036
|
+
"license": "BSD-3-Clause"
|
|
2037
|
+
},
|
|
1787
2038
|
"node_modules/fflate": {
|
|
1788
2039
|
"version": "0.8.3",
|
|
1789
2040
|
"resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.3.tgz",
|
|
@@ -1988,6 +2239,15 @@
|
|
|
1988
2239
|
"node": ">= 0.4"
|
|
1989
2240
|
}
|
|
1990
2241
|
},
|
|
2242
|
+
"node_modules/hono": {
|
|
2243
|
+
"version": "4.13.16",
|
|
2244
|
+
"resolved": "https://registry.npmjs.org/hono/-/hono-4.13.16.tgz",
|
|
2245
|
+
"integrity": "sha512-AOLOEhvrV+iH92xXCnFr/5+3KjPKcI3xP63XJtX5spAnkznPdHijlIsUTpi7/9EhWqrTCekw5c5zh1K+YsVw7A==",
|
|
2246
|
+
"license": "MIT",
|
|
2247
|
+
"engines": {
|
|
2248
|
+
"node": ">=16.9.0"
|
|
2249
|
+
}
|
|
2250
|
+
},
|
|
1991
2251
|
"node_modules/http-errors": {
|
|
1992
2252
|
"version": "2.0.1",
|
|
1993
2253
|
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.1.tgz",
|
|
@@ -2054,12 +2314,76 @@
|
|
|
2054
2314
|
"integrity": "sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ==",
|
|
2055
2315
|
"license": "MIT"
|
|
2056
2316
|
},
|
|
2317
|
+
"node_modules/isexe": {
|
|
2318
|
+
"version": "2.0.0",
|
|
2319
|
+
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
|
|
2320
|
+
"integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
|
|
2321
|
+
"license": "ISC"
|
|
2322
|
+
},
|
|
2323
|
+
"node_modules/jose": {
|
|
2324
|
+
"version": "6.2.15",
|
|
2325
|
+
"resolved": "https://registry.npmjs.org/jose/-/jose-6.2.15.tgz",
|
|
2326
|
+
"integrity": "sha512-qdF6ewcZARtef63fJ9AKKZPgxw+t7USH6HLXYcD4CrdmSvDp79rpJSPFEKc90QBeGS63u1KQtN2MZQHC0yDIzA==",
|
|
2327
|
+
"license": "MIT",
|
|
2328
|
+
"funding": {
|
|
2329
|
+
"url": "https://github.com/sponsors/panva"
|
|
2330
|
+
}
|
|
2331
|
+
},
|
|
2057
2332
|
"node_modules/js-cookie": {
|
|
2058
2333
|
"version": "3.0.8",
|
|
2059
2334
|
"resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.8.tgz",
|
|
2060
2335
|
"integrity": "sha512-yeJd4aNAdYZQjaon2bpD/Gb0B/omw7HQOsynXXcOiWVCacbBcPlgn8S/d1X6blFSaHao7ozqtW7NZW19xpCtIw==",
|
|
2061
2336
|
"license": "MIT"
|
|
2062
2337
|
},
|
|
2338
|
+
"node_modules/json-schema-traverse": {
|
|
2339
|
+
"version": "1.0.0",
|
|
2340
|
+
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
|
|
2341
|
+
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
|
|
2342
|
+
"license": "MIT"
|
|
2343
|
+
},
|
|
2344
|
+
"node_modules/json-schema-typed": {
|
|
2345
|
+
"version": "8.0.2",
|
|
2346
|
+
"resolved": "https://registry.npmjs.org/json-schema-typed/-/json-schema-typed-8.0.2.tgz",
|
|
2347
|
+
"integrity": "sha512-fQhoXdcvc3V28x7C7BMs4P5+kNlgUURe2jmUT1T//oBRMDrqy1QPelJimwZGo7Hg9VPV3EQV5Bnq4hbFy2vetA==",
|
|
2348
|
+
"license": "BSD-2-Clause"
|
|
2349
|
+
},
|
|
2350
|
+
"node_modules/light-my-request": {
|
|
2351
|
+
"version": "6.8.0",
|
|
2352
|
+
"resolved": "https://registry.npmjs.org/light-my-request/-/light-my-request-6.8.0.tgz",
|
|
2353
|
+
"integrity": "sha512-5Q8PjoSEdtGIB8fikZsTem5vgRo4F2mR6vUKTDW/H1g6MtAt8e3duQbg/QxL5yzg6BZhor2KOUm3hhWMWLTZwg==",
|
|
2354
|
+
"dev": true,
|
|
2355
|
+
"funding": [
|
|
2356
|
+
{
|
|
2357
|
+
"type": "github",
|
|
2358
|
+
"url": "https://github.com/sponsors/fastify"
|
|
2359
|
+
},
|
|
2360
|
+
{
|
|
2361
|
+
"type": "opencollective",
|
|
2362
|
+
"url": "https://opencollective.com/fastify"
|
|
2363
|
+
}
|
|
2364
|
+
],
|
|
2365
|
+
"license": "BSD-3-Clause",
|
|
2366
|
+
"dependencies": {
|
|
2367
|
+
"@fastify/deepmerge": "^3.1.0",
|
|
2368
|
+
"cookie": "^2.0.0",
|
|
2369
|
+
"process-warning": "^5.0.0",
|
|
2370
|
+
"set-cookie-parser": "^3.0.1"
|
|
2371
|
+
}
|
|
2372
|
+
},
|
|
2373
|
+
"node_modules/light-my-request/node_modules/cookie": {
|
|
2374
|
+
"version": "2.0.2",
|
|
2375
|
+
"resolved": "https://registry.npmjs.org/cookie/-/cookie-2.0.2.tgz",
|
|
2376
|
+
"integrity": "sha512-SL0cVuEdETEp7pN0FuZb01toc3vnODEfVUCooxG1SJN0yIirh7JMb9X9bvfCFf0vzzbT68RdbKDHYTiWy7a7iw==",
|
|
2377
|
+
"dev": true,
|
|
2378
|
+
"license": "MIT",
|
|
2379
|
+
"engines": {
|
|
2380
|
+
"node": ">=22"
|
|
2381
|
+
},
|
|
2382
|
+
"funding": {
|
|
2383
|
+
"type": "opencollective",
|
|
2384
|
+
"url": "https://opencollective.com/express"
|
|
2385
|
+
}
|
|
2386
|
+
},
|
|
2063
2387
|
"node_modules/linebreak": {
|
|
2064
2388
|
"version": "1.1.0",
|
|
2065
2389
|
"resolved": "https://registry.npmjs.org/linebreak/-/linebreak-1.1.0.tgz",
|
|
@@ -2208,6 +2532,15 @@
|
|
|
2208
2532
|
"url": "https://opencollective.com/express"
|
|
2209
2533
|
}
|
|
2210
2534
|
},
|
|
2535
|
+
"node_modules/object-assign": {
|
|
2536
|
+
"version": "4.1.1",
|
|
2537
|
+
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
|
|
2538
|
+
"integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
|
|
2539
|
+
"license": "MIT",
|
|
2540
|
+
"engines": {
|
|
2541
|
+
"node": ">=0.10.0"
|
|
2542
|
+
}
|
|
2543
|
+
},
|
|
2211
2544
|
"node_modules/object-inspect": {
|
|
2212
2545
|
"version": "1.13.4",
|
|
2213
2546
|
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
|
|
@@ -2292,6 +2625,15 @@
|
|
|
2292
2625
|
"node": ">= 0.8"
|
|
2293
2626
|
}
|
|
2294
2627
|
},
|
|
2628
|
+
"node_modules/path-key": {
|
|
2629
|
+
"version": "3.1.1",
|
|
2630
|
+
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
|
|
2631
|
+
"integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
|
|
2632
|
+
"license": "MIT",
|
|
2633
|
+
"engines": {
|
|
2634
|
+
"node": ">=8"
|
|
2635
|
+
}
|
|
2636
|
+
},
|
|
2295
2637
|
"node_modules/path-scurry": {
|
|
2296
2638
|
"version": "2.0.2",
|
|
2297
2639
|
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.2.tgz",
|
|
@@ -2421,6 +2763,15 @@
|
|
|
2421
2763
|
"split2": "^4.1.0"
|
|
2422
2764
|
}
|
|
2423
2765
|
},
|
|
2766
|
+
"node_modules/pkce-challenge": {
|
|
2767
|
+
"version": "5.0.1",
|
|
2768
|
+
"resolved": "https://registry.npmjs.org/pkce-challenge/-/pkce-challenge-5.0.1.tgz",
|
|
2769
|
+
"integrity": "sha512-wQ0b/W4Fr01qtpHlqSqspcj3EhBvimsdh0KlHhH8HRZnMsEa0ea2fTULOXOS9ccQr3om+GcGRk4e+isrZWV8qQ==",
|
|
2770
|
+
"license": "MIT",
|
|
2771
|
+
"engines": {
|
|
2772
|
+
"node": ">=16.20.0"
|
|
2773
|
+
}
|
|
2774
|
+
},
|
|
2424
2775
|
"node_modules/playwright": {
|
|
2425
2776
|
"version": "1.56.1",
|
|
2426
2777
|
"resolved": "https://registry.npmjs.org/playwright/-/playwright-1.56.1.tgz",
|
|
@@ -2529,6 +2880,23 @@
|
|
|
2529
2880
|
"node": ">=0.10.0"
|
|
2530
2881
|
}
|
|
2531
2882
|
},
|
|
2883
|
+
"node_modules/process-warning": {
|
|
2884
|
+
"version": "5.1.1",
|
|
2885
|
+
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-5.1.1.tgz",
|
|
2886
|
+
"integrity": "sha512-oCkNVj4OKnKEcocVBcDfiIugN1/cE6rgfT3nCtzeqZPA8+rIxMaQ0xXzIkGP8Gj2qUaP1UR7uhJ1VD8lUCpzCg==",
|
|
2887
|
+
"dev": true,
|
|
2888
|
+
"funding": [
|
|
2889
|
+
{
|
|
2890
|
+
"type": "github",
|
|
2891
|
+
"url": "https://github.com/sponsors/fastify"
|
|
2892
|
+
},
|
|
2893
|
+
{
|
|
2894
|
+
"type": "opencollective",
|
|
2895
|
+
"url": "https://opencollective.com/fastify"
|
|
2896
|
+
}
|
|
2897
|
+
],
|
|
2898
|
+
"license": "MIT"
|
|
2899
|
+
},
|
|
2532
2900
|
"node_modules/proxy-addr": {
|
|
2533
2901
|
"version": "2.0.8",
|
|
2534
2902
|
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.8.tgz",
|
|
@@ -2590,6 +2958,15 @@
|
|
|
2590
2958
|
"node": ">= 0.10"
|
|
2591
2959
|
}
|
|
2592
2960
|
},
|
|
2961
|
+
"node_modules/require-from-string": {
|
|
2962
|
+
"version": "2.0.2",
|
|
2963
|
+
"resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
|
|
2964
|
+
"integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
|
|
2965
|
+
"license": "MIT",
|
|
2966
|
+
"engines": {
|
|
2967
|
+
"node": ">=0.10.0"
|
|
2968
|
+
}
|
|
2969
|
+
},
|
|
2593
2970
|
"node_modules/resolve-pkg-maps": {
|
|
2594
2971
|
"version": "1.0.0",
|
|
2595
2972
|
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
|
|
@@ -2685,12 +3062,40 @@
|
|
|
2685
3062
|
"url": "https://opencollective.com/express"
|
|
2686
3063
|
}
|
|
2687
3064
|
},
|
|
3065
|
+
"node_modules/set-cookie-parser": {
|
|
3066
|
+
"version": "3.2.2",
|
|
3067
|
+
"resolved": "https://registry.npmjs.org/set-cookie-parser/-/set-cookie-parser-3.2.2.tgz",
|
|
3068
|
+
"integrity": "sha512-df017qMeYuXo4emL09nlyMpi2i2MtEIKS/6jtXH3vmjFgIRsOi852/5RmhJ4EkvN3ZF8jXadM/EkTPXgc8yPIw==",
|
|
3069
|
+
"dev": true,
|
|
3070
|
+
"license": "MIT"
|
|
3071
|
+
},
|
|
2688
3072
|
"node_modules/setprototypeof": {
|
|
2689
3073
|
"version": "1.2.0",
|
|
2690
3074
|
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
|
|
2691
3075
|
"integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
|
|
2692
3076
|
"license": "ISC"
|
|
2693
3077
|
},
|
|
3078
|
+
"node_modules/shebang-command": {
|
|
3079
|
+
"version": "2.0.0",
|
|
3080
|
+
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
|
|
3081
|
+
"integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
|
|
3082
|
+
"license": "MIT",
|
|
3083
|
+
"dependencies": {
|
|
3084
|
+
"shebang-regex": "^3.0.0"
|
|
3085
|
+
},
|
|
3086
|
+
"engines": {
|
|
3087
|
+
"node": ">=8"
|
|
3088
|
+
}
|
|
3089
|
+
},
|
|
3090
|
+
"node_modules/shebang-regex": {
|
|
3091
|
+
"version": "3.0.0",
|
|
3092
|
+
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
|
|
3093
|
+
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
|
|
3094
|
+
"license": "MIT",
|
|
3095
|
+
"engines": {
|
|
3096
|
+
"node": ">=8"
|
|
3097
|
+
}
|
|
3098
|
+
},
|
|
2694
3099
|
"node_modules/side-channel": {
|
|
2695
3100
|
"version": "1.1.1",
|
|
2696
3101
|
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.1.tgz",
|
|
@@ -3407,6 +3812,21 @@
|
|
|
3407
3812
|
"node": ">= 0.8"
|
|
3408
3813
|
}
|
|
3409
3814
|
},
|
|
3815
|
+
"node_modules/which": {
|
|
3816
|
+
"version": "2.0.2",
|
|
3817
|
+
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
|
3818
|
+
"integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
|
|
3819
|
+
"license": "ISC",
|
|
3820
|
+
"dependencies": {
|
|
3821
|
+
"isexe": "^2.0.0"
|
|
3822
|
+
},
|
|
3823
|
+
"bin": {
|
|
3824
|
+
"node-which": "bin/node-which"
|
|
3825
|
+
},
|
|
3826
|
+
"engines": {
|
|
3827
|
+
"node": ">= 8"
|
|
3828
|
+
}
|
|
3829
|
+
},
|
|
3410
3830
|
"node_modules/wrappy": {
|
|
3411
3831
|
"version": "1.0.2",
|
|
3412
3832
|
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
|
@@ -3421,6 +3841,24 @@
|
|
|
3421
3841
|
"engines": {
|
|
3422
3842
|
"node": ">=0.4"
|
|
3423
3843
|
}
|
|
3844
|
+
},
|
|
3845
|
+
"node_modules/zod": {
|
|
3846
|
+
"version": "4.6.7",
|
|
3847
|
+
"resolved": "https://registry.npmjs.org/zod/-/zod-4.6.7.tgz",
|
|
3848
|
+
"integrity": "sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==",
|
|
3849
|
+
"license": "MIT",
|
|
3850
|
+
"funding": {
|
|
3851
|
+
"url": "https://github.com/sponsors/colinhacks"
|
|
3852
|
+
}
|
|
3853
|
+
},
|
|
3854
|
+
"node_modules/zod-to-json-schema": {
|
|
3855
|
+
"version": "3.25.2",
|
|
3856
|
+
"resolved": "https://registry.npmjs.org/zod-to-json-schema/-/zod-to-json-schema-3.25.2.tgz",
|
|
3857
|
+
"integrity": "sha512-O/PgfnpT1xKSDeQYSCfRI5Gy3hPf91mKVDuYLUHZJMiDFptvP41MSnWofm8dnCm0256ZNfZIM7DSzuSMAFnjHA==",
|
|
3858
|
+
"license": "ISC",
|
|
3859
|
+
"peerDependencies": {
|
|
3860
|
+
"zod": "^3.25.28 || ^4"
|
|
3861
|
+
}
|
|
3424
3862
|
}
|
|
3425
3863
|
}
|
|
3426
3864
|
}
|