dsh-zen-remote 2.3.2 → 2.3.4

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.
Files changed (73) hide show
  1. package/README.md +178 -282
  2. package/README.zh-CN.md +179 -283
  3. package/docs/interface.md +1 -1
  4. package/docs/plugin-bridge.md +14 -7
  5. package/docs/remote-access.en.md +8 -8
  6. package/docs/remote-access.md +10 -10
  7. package/lib/adapters/dsh-better-sidebar/index.js +30 -10
  8. package/lib/adapters/dsh-better-sidebar/index.js.map +1 -1
  9. package/lib/adapters/dsh-better-sidebar/surface.js +79 -0
  10. package/lib/adapters/dsh-better-sidebar/surface.js.map +1 -0
  11. package/lib/client.js +1 -1
  12. package/lib/index.js +103 -10
  13. package/lib/index.js.map +1 -1
  14. package/lib/intercept.js +23 -1
  15. package/lib/intercept.js.map +1 -1
  16. package/lib/merge-streams.js +29 -2
  17. package/lib/merge-streams.js.map +1 -1
  18. package/lib/plugin-adapter-core.js +69 -13
  19. package/lib/plugin-adapter-core.js.map +1 -1
  20. package/lib/plugin-bridge.js +179 -12
  21. package/lib/plugin-bridge.js.map +1 -1
  22. package/lib/plugin-route-intercept.js +631 -79
  23. package/lib/plugin-route-intercept.js.map +1 -1
  24. package/lib/plugin-tunnel.js +84 -12
  25. package/lib/plugin-tunnel.js.map +1 -1
  26. package/lib/relay-server.js +65 -47
  27. package/lib/relay-server.js.map +1 -1
  28. package/lib/types/adapters/dsh-better-sidebar/index.d.ts +1 -1
  29. package/lib/types/adapters/dsh-better-sidebar/index.d.ts.map +1 -1
  30. package/lib/types/adapters/dsh-better-sidebar/surface.d.ts +23 -0
  31. package/lib/types/adapters/dsh-better-sidebar/surface.d.ts.map +1 -0
  32. package/lib/types/adapters/types.d.ts +14 -3
  33. package/lib/types/adapters/types.d.ts.map +1 -1
  34. package/lib/types/index.d.ts +2 -2
  35. package/lib/types/index.d.ts.map +1 -1
  36. package/lib/types/intercept.d.ts +19 -0
  37. package/lib/types/intercept.d.ts.map +1 -1
  38. package/lib/types/merge-streams.d.ts +12 -0
  39. package/lib/types/merge-streams.d.ts.map +1 -1
  40. package/lib/types/plugin-adapter-core.d.ts +24 -11
  41. package/lib/types/plugin-adapter-core.d.ts.map +1 -1
  42. package/lib/types/plugin-bridge.d.ts +93 -5
  43. package/lib/types/plugin-bridge.d.ts.map +1 -1
  44. package/lib/types/plugin-route-intercept.d.ts +52 -3
  45. package/lib/types/plugin-route-intercept.d.ts.map +1 -1
  46. package/lib/types/plugin-tunnel.d.ts +27 -3
  47. package/lib/types/plugin-tunnel.d.ts.map +1 -1
  48. package/lib/types/relay-server.d.ts +2 -25
  49. package/lib/types/relay-server.d.ts.map +1 -1
  50. package/lib/types/upload-limits.d.ts +67 -0
  51. package/lib/types/upload-limits.d.ts.map +1 -0
  52. package/lib/types/wizard/proxy-snippets.d.ts +4 -3
  53. package/lib/types/wizard/proxy-snippets.d.ts.map +1 -1
  54. package/lib/upload-limits.js +67 -0
  55. package/lib/upload-limits.js.map +1 -0
  56. package/lib/wizard/proxy-snippets.js +5 -4
  57. package/lib/wizard/proxy-snippets.js.map +1 -1
  58. package/package.json +14 -14
  59. package/scripts/check-upload-limits.mjs +167 -0
  60. package/src/adapters/dsh-better-sidebar/index.ts +30 -11
  61. package/src/adapters/dsh-better-sidebar/surface.ts +90 -0
  62. package/src/adapters/types.ts +14 -3
  63. package/src/client-data/wizard.ts +1 -1
  64. package/src/index.ts +99 -12
  65. package/src/intercept.ts +47 -1
  66. package/src/merge-streams.ts +41 -1
  67. package/src/plugin-adapter-core.ts +69 -14
  68. package/src/plugin-bridge.ts +228 -14
  69. package/src/plugin-route-intercept.ts +677 -82
  70. package/src/plugin-tunnel.ts +95 -13
  71. package/src/relay-server.ts +60 -48
  72. package/src/upload-limits.ts +69 -0
  73. package/src/wizard/proxy-snippets.ts +5 -4
@@ -23,19 +23,19 @@
23
23
  */
24
24
  import { createHash } from 'node:crypto';
25
25
  import { isVirtual, fromVirtual } from './virtual-id.js';
26
+ import { MAX_UPLOAD_BYTES } from './upload-limits.js';
26
27
  import { BRIDGE_METHODS, DEFAULT_ROUTE_BODY_BYTES } from './plugin-bridge.js';
27
28
  export { fromVirtual };
28
29
  /** The npm package name of an adapter's target, same shape the cooperative
29
30
  * declarations validate. */
30
31
  const PLUGIN_PATTERN = /^(?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*$/u;
31
32
  const MAX_ROUTES = 64;
32
- /** The body cap an ADAPTER route may declare: 500 MiB — the relay's own
33
- * upload budget (lib/relay-server.js `MAX_UPLOAD_BYTES`), which the
34
- * better-sidebar upload route rides. Wider than the cooperative
35
- * declaration's 64 MiB because raw media uploads are exactly what an
36
- * adapter exists to carry; test/adapter-better-sidebar.test.cjs pins the
37
- * two numbers together. */
38
- export const MAX_ADAPTER_BODY_BYTES = 500 * 1024 * 1024;
33
+ /** The body cap an ADAPTER route may declare: the relay's own upload
34
+ * budget (`MAX_UPLOAD_BYTES` in upload-limits.ts), which the better-sidebar
35
+ * upload route rides. The same 500 MiB the cooperative declaration's
36
+ * maxBody allows — both read the one constant since PB-20; raw media
37
+ * uploads are exactly what an adapter exists to carry. */
38
+ export const MAX_ADAPTER_BODY_BYTES = MAX_UPLOAD_BYTES;
39
39
  function isRecord(value) {
40
40
  return typeof value === 'object' && value !== null && !Array.isArray(value);
41
41
  }
@@ -49,14 +49,20 @@ function fail(field, detail) {
49
49
  * absolute paths, off the host-owned `/_dsh/` and `/api` prefixes) — an
50
50
  * adapter must not be able to reach anything a declaration cannot. The
51
51
  * installed version must be listed EXACTLY (`versions` are what the
52
- * adapter was written against); anything else refuses the adapter whole.
52
+ * adapter was written against) — with ONE out (PB-19): a version outside
53
+ * the list is admitted anyway when `options.surfaceDigest` — the wiring's
54
+ * extraction of the INSTALLED build's wire surface — is a key of the
55
+ * adapter's `surfaces` table; the registration then carries the installed
56
+ * version with the usual route-table digest, so two machines on the same
57
+ * unlisted-but-surface-identical release still agree. A miss refuses with
58
+ * the digest and the table's size in the message, for the logs.
53
59
  * @throws with a field-naming message on any illegal shape.
54
60
  */
55
- export function normalizeAdapter(input, installedVersion) {
61
+ export function normalizeAdapter(input, installedVersion, options) {
56
62
  if (!isRecord(input))
57
63
  fail('adapter', 'expected an object');
58
64
  for (const key of Object.keys(input)) {
59
- if (key !== 'plugin' && key !== 'versions' && key !== 'routes' && key !== 'client' && key !== 'server') {
65
+ if (key !== 'plugin' && key !== 'versions' && key !== 'routes' && key !== 'client' && key !== 'server' && key !== 'surfaces') {
60
66
  fail(key, 'unknown field (typo guard)');
61
67
  }
62
68
  }
@@ -67,8 +73,24 @@ export function normalizeAdapter(input, installedVersion) {
67
73
  if (!Array.isArray(versions) || versions.length === 0 || versions.some((v) => typeof v !== 'string' || v === '')) {
68
74
  fail('versions', 'must be a non-empty array of version strings');
69
75
  }
76
+ // The surfaces table is validated whenever present, listed version or not
77
+ // (a malformed credential must not lurk until the one version that needs it).
78
+ if (input.surfaces !== undefined) {
79
+ if (!isRecord(input.surfaces))
80
+ fail('surfaces', 'expected an object (digest16 → remark)');
81
+ for (const [key, value] of Object.entries(input.surfaces)) {
82
+ if (!/^[0-9a-f]{16}$/u.test(key))
83
+ fail(`surfaces.${key}`, 'the key must be a 16-hex surface digest');
84
+ if (typeof value !== 'string' || value === '')
85
+ fail(`surfaces.${key}`, 'the remark must be a non-empty string');
86
+ }
87
+ }
70
88
  if (!versions.includes(installedVersion)) {
71
- fail('versions', `installed version "${installedVersion}" is not among the adapter's versions`);
89
+ const surfaceDigest = options?.surfaceDigest;
90
+ const surfaces = input.surfaces;
91
+ if (!(surfaceDigest !== undefined && surfaces !== undefined && Object.hasOwn(surfaces, surfaceDigest))) {
92
+ fail('versions', `installed version "${installedVersion}" is not among the adapter's versions (surface ${surfaceDigest ?? 'not computed'} vs ${surfaces === undefined ? 0 : Object.keys(surfaces).length} listed)`);
93
+ }
72
94
  }
73
95
  if (!Array.isArray(routes) || routes.length === 0)
74
96
  fail('routes', 'must be a non-empty array');
@@ -229,13 +251,47 @@ export function adapterDigestOf(plugin, version, routes) {
229
251
  });
230
252
  return createHash('sha256').update(canonical, 'utf8').digest('hex').slice(0, 16);
231
253
  }
232
- /** The prefix-match rule, shared verbatim by both halves: equality or one
233
- * path segment deeper, on the RAW undecoded pathname. */
254
+ /** The prefix-match rule, shared verbatim by both halves: equality, or any
255
+ * deeper sub-path (`startsWith(path + '/')`), on the RAW undecoded pathname. */
234
256
  export function adapterPathMatches(route, pathname) {
235
257
  if (route.match === 'exact')
236
258
  return pathname === route.path;
237
259
  return pathname === route.path || pathname.startsWith(`${route.path}/`);
238
260
  }
261
+ /** The prefix TAIL's shape red line (PB-23b): the part of the RAW pathname
262
+ * AFTER a matched prefix path — the variable tail prefix matching admits —
263
+ * refuses `?`, `#`, `..` and whitespace. Exact equality inherited these
264
+ * declaration-side red lines structurally (the declared path itself passed
265
+ * them at registration); a prefix hit forwards an arbitrary tail straight
266
+ * into the loopback request line, so the tail carries them itself. A `?`
267
+ * would break the parse-once query discipline (the loopback appends ITS
268
+ * `?query`, and a host splits at the FIRST `?` — the unchecked part would
269
+ * ride in as query); a `#` is fragment garbage in the request line;
270
+ * whitespace mirrors the declaration rule. `..` is refused RAW and in its
271
+ * `%2e`/`%2E` encoding — ANY encoded dot, not just the `%2e%2e` pair, since
272
+ * a mixed form like `.%2e.` decodes to dot-dot and would slip a pair-only
273
+ * check. The verdict deliberately runs on the RAW bytes (reject-on-sight),
274
+ * not decode-then-check: `.` is RFC 3986-unreserved, so no legitimate
275
+ * encoder — including this module's own `encodeURIComponent` rewrite — ever
276
+ * produces `%2e`, while a decoded verdict would depend on the decode depth
277
+ * (`%252e%252e` survives one decode) and on malformed-escape handling,
278
+ * i.e. on exactly the host-decoder behavior this red line exists because it
279
+ * is NOT pinned. The check is tail-only because a declaration may legally
280
+ * carry `%` (only these four shapes are refused at registration) — judging
281
+ * the whole pathname would retro-illegalize blessed declarations. Both
282
+ * halves answer the refusal with 400 `bad-request`, the coordinate-shape
283
+ * code the entries already use (no client classifies on it). */
284
+ const TAIL_SHAPE_VIOLATION = /[?#\s]|\.\.|%2e/iu;
285
+ /** Whether {@link adapterPathMatches} hit via a deeper tail whose shape
286
+ * breaks the red line — `false` for a non-match (the caller's routing
287
+ * refusal answers first) and for an equality hit (no tail at all). */
288
+ export function adapterTailShapeViolation(route, pathname) {
289
+ if (!adapterPathMatches(route, pathname))
290
+ return false;
291
+ if (pathname === route.path)
292
+ return false;
293
+ return TAIL_SHAPE_VIOLATION.test(pathname.slice(route.path.length));
294
+ }
239
295
  /** The adapter route a forwarded request hit, or `undefined`. `local`
240
296
  * routes never match here — they stay on the sub-client's own machine in
241
297
  * both directions, so the server half must never see (nor serve) them. */
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-adapter-core.js","sourceRoot":"","sources":["../src/plugin-adapter-core.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-adapter-core.js","sourceRoot":"","sources":["../src/plugin-adapter-core.ts"],"names":[],"mappings":"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"}
@@ -11,18 +11,28 @@
11
11
  * ({@link createBridgeRegistry}), and the local-vs-server comparison that a
12
12
  * later task feeds handshake data into ({@link compareBridges}).
13
13
  *
14
- * Pure logic by design: no DSH imports, no I/O, no clocks — the digest is
14
+ * Pure logic by design: no DSH imports (the one exception is the
15
+ * pure-constants src/upload-limits.ts, itself zero-import), no I/O, no
16
+ * clocks — the digest is
15
17
  * the only place node:crypto appears, which is fine because this module only
16
18
  * ever runs in the backend process. Nothing here talks to the relay or the
17
19
  * network; the handshake side and the request rewrite side are later tasks
18
20
  * that consume a {@link BridgeRegistry} through src/index.ts.
19
21
  */
20
22
  import { createHash } from 'node:crypto';
23
+ import { MAX_UPLOAD_BYTES } from './upload-limits.js';
21
24
  /** The HTTP methods a bridged route may forward (PB-9). 2.1 accepted GET
22
25
  * only; the write methods arrived with the `methods` field. */
23
26
  export const BRIDGE_METHODS = ['GET', 'HEAD', 'POST', 'PUT', 'PATCH', 'DELETE'];
24
- /** The body cap a route may declare (`maxBody`), in bytes: 64 MiB. */
25
- export const MAX_ROUTE_BODY_BYTES = 64 * 1024 * 1024;
27
+ /** The body cap a route may declare (`maxBody`), in bytes. This is the SAME
28
+ * single 500 MiB ceiling {@link MAX_UPLOAD_BYTES} defines in
29
+ * src/upload-limits.ts, re-exported under the bridge-local name so existing
30
+ * consumers stay untouched: three ceilings that used to be three numbers —
31
+ * the relay's `/v1/upload` route, the sub-client's streaming upload forward
32
+ * (both reading upload-limits.ts directly) and this bridge `maxBody` cap
33
+ * (hand-copied 64 MiB before declaration-v2) — now share one definition, so
34
+ * they can never drift apart again. */
35
+ export { MAX_UPLOAD_BYTES as MAX_ROUTE_BODY_BYTES };
26
36
  /** The body cap a route gets when it declares none: 1 MiB. */
27
37
  export const DEFAULT_ROUTE_BODY_BYTES = 1024 * 1024;
28
38
  /** The effective upgrade mark of one normalized route. */
@@ -37,6 +47,36 @@ export function routeMethodsOf(route) {
37
47
  export function routeMaxBodyOf(route) {
38
48
  return route.maxBody ?? DEFAULT_ROUTE_BODY_BYTES;
39
49
  }
50
+ /** The effective session-id locator of one normalized route. A route that
51
+ * declared none keeps the 2.1 convention: the session id rides the query
52
+ * parameter named by `sessionParam`. */
53
+ export function routeLocatorOf(route) {
54
+ return route.locator ?? { in: 'query', name: route.sessionParam };
55
+ }
56
+ /** The effective prefix mark of one normalized route: does the route admit
57
+ * its variable path tail (sub-paths under `path`)? */
58
+ export function routePrefixOf(route) {
59
+ return route.prefix === true;
60
+ }
61
+ /** The effective remote-deny mark of one normalized route: must this route
62
+ * refuse to serve a REMOTE session (local-only data)? */
63
+ export function routeDeniesRemoteOf(route) {
64
+ return route.deny === true;
65
+ }
66
+ /** The effective id-rewrite mark of one normalized route: does the
67
+ * sub-client rewrite real↔virtual session ids while forwarding? Both
68
+ * `rewriteIds` forms enable it (`true` and `{ fields }` alike) — which form
69
+ * decides only whether the POSITION rewrite joins the value scan. */
70
+ export function routeRewritesIdsOf(route) {
71
+ return route.rewriteIds !== undefined;
72
+ }
73
+ /** The declared field paths of a `{ fields }`-form `rewriteIds` route
74
+ * (PB-25a) — where the response's NEWLY-CREATED session ids sit. `undefined`
75
+ * for a `true` route and for a route without the field: the position
76
+ * rewrite exists only when explicitly declared. */
77
+ export function routeRewriteFieldsOf(route) {
78
+ return typeof route.rewriteIds === 'object' ? route.rewriteIds.fields : undefined;
79
+ }
40
80
  /** Longest legal `plugin` — the npm package name cap. */
41
81
  const MAX_PLUGIN_LENGTH = 214;
42
82
  /** Most routes one declaration may carry. */
@@ -49,6 +89,12 @@ const MAX_ROUTES = 64;
49
89
  const PLUGIN_PATTERN = /^(?:@[a-z0-9][a-z0-9._-]*\/)?[a-z0-9][a-z0-9._-]*$/u;
50
90
  /** Query-parameter name carrying the session id. */
51
91
  const SESSION_PARAM_PATTERN = /^[A-Za-z][A-Za-z0-9_]{0,63}$/u;
92
+ /** One dot-path segment of a `rewriteIds: { fields }` declaration (PB-25a):
93
+ * `[A-Za-z0-9_-]`, non-empty. The full path splits on `.`; a segment of
94
+ * ONLY digits is an array index and refused separately below — array
95
+ * elements are the value deep-scan's business, and a declaration that could
96
+ * never match (the position rewrite walks objects only) must not register. */
97
+ const REWRITE_FIELD_SEGMENT_PATTERN = /^[A-Za-z0-9_-]+$/u;
52
98
  function isPlainObject(value) {
53
99
  return typeof value === 'object' && value !== null && !Array.isArray(value);
54
100
  }
@@ -98,11 +144,11 @@ export function normalizeDeclaration(input) {
98
144
  if (!isPlainObject(route))
99
145
  fail(`routes[${index}]`, 'expected an object');
100
146
  for (const key of Object.keys(route)) {
101
- if (key !== 'path' && key !== 'scope' && key !== 'sessionParam' && key !== 'stream' && key !== 'methods' && key !== 'maxBody' && key !== 'upgrade') {
147
+ if (key !== 'path' && key !== 'scope' && key !== 'sessionParam' && key !== 'stream' && key !== 'methods' && key !== 'maxBody' && key !== 'upgrade' && key !== 'locator' && key !== 'prefix' && key !== 'deny' && key !== 'rewriteIds') {
102
148
  fail(`routes[${index}].${key}`, 'unknown field (typo guard)');
103
149
  }
104
150
  }
105
- const { path, scope, sessionParam, stream, methods, maxBody, upgrade } = route;
151
+ const { path, scope, sessionParam, stream, methods, maxBody, upgrade, locator, prefix, deny, rewriteIds } = route;
106
152
  if (typeof path !== 'string' || path === '')
107
153
  fail(`routes[${index}].path`, 'must be a non-empty string');
108
154
  if (!path.startsWith('/'))
@@ -160,8 +206,8 @@ export function normalizeDeclaration(input) {
160
206
  // default.
161
207
  let normalizedMaxBody;
162
208
  if (maxBody !== undefined) {
163
- if (typeof maxBody !== 'number' || !Number.isInteger(maxBody) || maxBody <= 0 || maxBody > MAX_ROUTE_BODY_BYTES) {
164
- fail(`routes[${index}].maxBody`, `must be a positive integer up to ${MAX_ROUTE_BODY_BYTES}`);
209
+ if (typeof maxBody !== 'number' || !Number.isInteger(maxBody) || maxBody <= 0 || maxBody > MAX_UPLOAD_BYTES) {
210
+ fail(`routes[${index}].maxBody`, `must be a positive integer up to ${MAX_UPLOAD_BYTES}`);
165
211
  }
166
212
  normalizedMaxBody = maxBody;
167
213
  }
@@ -169,6 +215,16 @@ export function normalizeDeclaration(input) {
169
215
  // declaration, not a toggle), it cannot coexist with `stream` (a route
170
216
  // is one thing), and it is GET-only — an explicit `methods` naming
171
217
  // anything else cannot be an upgrade route.
218
+ // PB-20: `prefix` — a declaration that the route admits its variable
219
+ // path tail (sub-paths under `path`), required by a `path-segment`
220
+ // locator below and refused next to `upgrade` (checked in the upgrade
221
+ // block). Only `true` is legal — this is a declaration, not a toggle.
222
+ let normalizedPrefix;
223
+ if (prefix !== undefined) {
224
+ if (prefix !== true)
225
+ fail(`routes[${index}].prefix`, 'must be true or omitted');
226
+ normalizedPrefix = true;
227
+ }
172
228
  let normalizedUpgrade;
173
229
  if (upgrade !== undefined) {
174
230
  if (upgrade !== true)
@@ -178,17 +234,120 @@ export function normalizeDeclaration(input) {
178
234
  if (normalizedMethods !== undefined && normalizedMethods.some((entry) => entry !== 'GET')) {
179
235
  fail(`routes[${index}].upgrade`, 'upgrade routes are GET-only');
180
236
  }
237
+ if (normalizedPrefix === true) {
238
+ fail(`routes[${index}].prefix`, 'cannot be combined with upgrade — a WebSocket tunnel over a prefix route is left for when a need shows up');
239
+ }
181
240
  normalizedUpgrade = true;
182
241
  }
183
- return { path, scope, sessionParam: param, stream: streamFlag, methods: normalizedMethods, maxBody: normalizedMaxBody, upgrade: normalizedUpgrade };
242
+ // PB-20: `locator` — where the session id lives, REPLACING the
243
+ // query-parameter convention (so the two fields can never coexist; a
244
+ // route without one keeps `sessionParam`'s 2.1 semantics). Shapes and
245
+ // the path-segment/prefix pairing mirror the adapter core's locator
246
+ // (PB-11) so the two ends read identically.
247
+ let normalizedLocator;
248
+ if (locator !== undefined) {
249
+ if (sessionParam !== undefined) {
250
+ fail(`routes[${index}].locator`, 'cannot be combined with sessionParam — a route locates its session id one way');
251
+ }
252
+ if (!isPlainObject(locator))
253
+ fail(`routes[${index}].locator`, 'expected an object');
254
+ if (locator.in === 'query') {
255
+ if (typeof locator.name !== 'string' || !SESSION_PARAM_PATTERN.test(locator.name)) {
256
+ fail(`routes[${index}].locator.name`, `"${String(locator.name)}" must match ${SESSION_PARAM_PATTERN.source}`);
257
+ }
258
+ normalizedLocator = { in: 'query', name: locator.name };
259
+ }
260
+ else if (locator.in === 'path-segment') {
261
+ if (typeof locator.index !== 'number' || !Number.isInteger(locator.index) || locator.index < 0) {
262
+ fail(`routes[${index}].locator.index`, 'must be a non-negative integer');
263
+ }
264
+ if (normalizedPrefix !== true) {
265
+ fail(`routes[${index}].locator`, 'path-segment locating needs prefix: true (the id lives in the variable tail only a prefix route admits)');
266
+ }
267
+ normalizedLocator = { in: 'path-segment', index: locator.index };
268
+ }
269
+ else if (locator.in === 'json-body') {
270
+ if (!Array.isArray(locator.fields) || locator.fields.length === 0 || locator.fields.some((entry) => typeof entry !== 'string' || entry === '')) {
271
+ fail(`routes[${index}].locator.fields`, 'must be a non-empty array of field names');
272
+ }
273
+ normalizedLocator = { in: 'json-body', fields: [...locator.fields] };
274
+ }
275
+ else {
276
+ fail(`routes[${index}].locator.in`, 'must be "query", "path-segment" or "json-body"');
277
+ }
278
+ }
279
+ // PB-20: `deny` — the route must refuse a REMOTE session (its data is
280
+ // local-only). Only `true` is legal.
281
+ let normalizedDeny;
282
+ if (deny !== undefined) {
283
+ if (deny !== true)
284
+ fail(`routes[${index}].deny`, 'must be true or omitted');
285
+ normalizedDeny = true;
286
+ }
287
+ // PB-20/PB-25a: `rewriteIds` — the sub-client rewrites real↔virtual
288
+ // session ids while forwarding. Two forms: `true` (the 2.4 echo shape —
289
+ // the value deep-scan over the request's own ids) and `{ fields }`
290
+ // (PB-25a — adds the position rewrite where NEWLY-CREATED ids sit).
291
+ // Never legal on a stream route: a streaming response is never buffered,
292
+ // so there is nothing to rewrite. The two forms hash DIFFERENTLY (see
293
+ // the canonical form below); an old `true` declaration's digest is
294
+ // bit-for-bit what it always was.
295
+ let normalizedRewriteIds;
296
+ if (rewriteIds !== undefined) {
297
+ if (rewriteIds === true) {
298
+ normalizedRewriteIds = true;
299
+ }
300
+ else if (isPlainObject(rewriteIds)) {
301
+ for (const key of Object.keys(rewriteIds)) {
302
+ if (key !== 'fields')
303
+ fail(`routes[${index}].rewriteIds.${key}`, 'unknown field (typo guard)');
304
+ }
305
+ const { fields } = rewriteIds;
306
+ if (!Array.isArray(fields) || fields.length === 0 || fields.some((entry) => typeof entry !== 'string')) {
307
+ fail(`routes[${index}].rewriteIds.fields`, 'must be a non-empty array of dot paths');
308
+ }
309
+ for (const entry of fields) {
310
+ const segments = entry.split('.');
311
+ if (segments.some((segment) => !REWRITE_FIELD_SEGMENT_PATTERN.test(segment))) {
312
+ fail(`routes[${index}].rewriteIds.fields`, `"${entry}" must be a dot path of non-empty [A-Za-z0-9_-] segments`);
313
+ }
314
+ if (segments.some((segment) => /^\d+$/u.test(segment))) {
315
+ fail(`routes[${index}].rewriteIds.fields`, `"${entry}" must not carry an array index — array elements are the value deep-scan's business`);
316
+ }
317
+ }
318
+ normalizedRewriteIds = { fields: [...fields] };
319
+ }
320
+ else {
321
+ fail(`routes[${index}].rewriteIds`, 'must be true, { fields: [...] } or omitted');
322
+ }
323
+ if (streamFlag)
324
+ fail(`routes[${index}].rewriteIds`, 'cannot be combined with stream — a streaming response is never buffered, so there are no ids to rewrite');
325
+ }
326
+ // Explicit-only (digest rule): the four v2 fields attach to the
327
+ // normalized route ONLY when declared — an absent key, not an
328
+ // `undefined` one, so the canonical form and the deep-equality shape of
329
+ // 2.1-era routes stay byte-for-byte what they were.
330
+ return {
331
+ path,
332
+ scope,
333
+ sessionParam: param,
334
+ stream: streamFlag,
335
+ methods: normalizedMethods,
336
+ maxBody: normalizedMaxBody,
337
+ upgrade: normalizedUpgrade,
338
+ ...(normalizedLocator !== undefined && { locator: normalizedLocator }),
339
+ ...(normalizedPrefix && { prefix: normalizedPrefix }),
340
+ ...(normalizedDeny && { deny: normalizedDeny }),
341
+ ...(normalizedRewriteIds && { rewriteIds: normalizedRewriteIds }),
342
+ };
184
343
  });
185
344
  normalizedRoutes.sort((a, b) => (a.path < b.path ? -1 : a.path > b.path ? 1 : 0));
186
345
  // Fixed key order = the canonical form both ends hash; insertion order of
187
346
  // the object literal IS the contract, JSON.stringify never sorts. The
188
- // route entries carry `methods` / `maxBody` ONLY when the plugin declared
189
- // them — `JSON.stringify` drops `undefined` values, but the explicit
190
- // conditional documents the intent and keeps the PB-1 compatibility
191
- // visible instead of incidental.
347
+ // route entries carry `methods` / `maxBody` / `upgrade` and the four v2
348
+ // fields ONLY when the plugin declared them — `JSON.stringify` drops
349
+ // `undefined` values, but the explicit conditional documents the intent
350
+ // and keeps the PB-1 compatibility visible instead of incidental.
192
351
  const canonical = JSON.stringify({
193
352
  plugin,
194
353
  version,
@@ -205,6 +364,14 @@ export function normalizeDeclaration(input) {
205
364
  entry.maxBody = route.maxBody;
206
365
  if (route.upgrade !== undefined)
207
366
  entry.upgrade = route.upgrade;
367
+ if (route.locator !== undefined)
368
+ entry.locator = route.locator;
369
+ if (route.prefix !== undefined)
370
+ entry.prefix = route.prefix;
371
+ if (route.deny !== undefined)
372
+ entry.deny = route.deny;
373
+ if (route.rewriteIds !== undefined)
374
+ entry.rewriteIds = route.rewriteIds;
208
375
  return entry;
209
376
  }),
210
377
  });
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-bridge.js","sourceRoot":"","sources":["../src/plugin-bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-bridge.js","sourceRoot":"","sources":["../src/plugin-bridge.ts"],"names":[],"mappings":"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"}