@camstack/types 1.2.107 → 1.2.109

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/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
2
  const require_event_category = require("./event-category-EY0GNjV9.js");
3
- const require_sleep = require("./sleep-CUuoW-kk.js");
3
+ const require_sleep = require("./sleep-BJTBu5cu.js");
4
4
  const require_canonical_hash = require("./canonical-hash-DNV8S5ET.js");
5
5
  const require_enums = require("./enums.js");
6
6
  const require_err_msg = require("./err-msg-COpsHMw2.js");
@@ -4349,7 +4349,18 @@ var addonPagesSourceCapability = {
4349
4349
  scope: "system",
4350
4350
  mode: "collection",
4351
4351
  internal: true,
4352
- methods: { listPages: require_sleep.method(zod.z.void(), zod.z.array(AddonPageDeclarationSchema).readonly()) }
4352
+ methods: {
4353
+ /**
4354
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
4355
+ * `data-store-provider`) — this was reachable on the AppRouter by ANY
4356
+ * authenticated session at the default `auth: 'protected'`. The only
4357
+ * consumer, the `addon-pages-aggregator` builtin, reads it via
4358
+ * `ctx.capabilities.getCollection('addon-pages-source')` — LOCAL-PROCESS
4359
+ * only, never tRPC (per `ctx.capabilities` seeing only the local
4360
+ * process). The public, enriched listing admin-ui actually consumes is
4361
+ * the separate `addon-pages` cap, unaffected by this change.
4362
+ */
4363
+ listPages: require_sleep.method(zod.z.void(), zod.z.array(AddonPageDeclarationSchema).readonly(), { auth: "admin" }) }
4353
4364
  };
4354
4365
  //#endregion
4355
4366
  //#region src/capabilities/addon-routes.cap.ts
@@ -4652,7 +4663,20 @@ var addonWidgetsSourceCapability = {
4652
4663
  scope: "system",
4653
4664
  mode: "collection",
4654
4665
  internal: true,
4655
- methods: { listWidgets: require_sleep.method(zod.z.void(), zod.z.array(WidgetMetadataSchema).readonly()) }
4666
+ methods: {
4667
+ /**
4668
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
4669
+ * `data-store-provider`) — this was reachable on the AppRouter by ANY
4670
+ * authenticated session at the default `auth: 'protected'`. The only
4671
+ * consumer, the `addon-widgets-aggregator` builtin, reads it via
4672
+ * `ctx.capabilities.getCollection('addon-widgets-source')` — LOCAL-PROCESS
4673
+ * only, never tRPC. The public, enriched listing admin-ui actually
4674
+ * consumes is the separate `addon-widgets` cap (`listWidgets` there is
4675
+ * gated separately, and a `preAuth: true` widget is surfaced through the
4676
+ * PUBLIC `auth.listLoginMethods` contribution channel instead) —
4677
+ * neither is affected by this change.
4678
+ */
4679
+ listWidgets: require_sleep.method(zod.z.void(), zod.z.array(WidgetMetadataSchema).readonly(), { auth: "admin" }) }
4656
4680
  };
4657
4681
  //#endregion
4658
4682
  //#region src/capabilities/addon-widgets.cap.ts
@@ -6840,6 +6864,44 @@ function objectInputDeclaresAddonId(schema) {
6840
6864
  function resolveDefShape(defShape) {
6841
6865
  return typeof defShape === "function" ? defShape() : defShape;
6842
6866
  }
6867
+ /**
6868
+ * Effective auth for a cap method — the `internal: true` floor (Task 7.5c).
6869
+ *
6870
+ * `internal: true` on a cap def is a DECLARATION that its methods are for
6871
+ * in-process (`ctx.api`) consumption only. Nothing enforced that:
6872
+ * `resolveCapMount` never reads `internal` (an internal cap still gets a
6873
+ * full tRPC router), and a method that omitted an explicit `auth` used to
6874
+ * default — permanently, at `method()`-call time — to `'protected'`,
6875
+ * reachable by any authenticated session regardless of `internal`. That
6876
+ * silent default is how 45 procedures across 13 internal caps ended up
6877
+ * exposed, including `ssoBridge.signBridgeToken`: it accepted
6878
+ * caller-supplied claims (including `isAdmin`), was reachable by any
6879
+ * authenticated session, and its token is redeemed at
6880
+ * `/api/auth/sso/finish` to mint a session — a full privilege escalation.
6881
+ * See `docs/decisions/adr-0240-an-internal-cap-floors-its-unannotated-methods-to-admin.md`
6882
+ * (D240) for the record.
6883
+ *
6884
+ * The floor, exactly: an `internal` cap's method with NO explicit `auth`
6885
+ * resolves to `'admin'` instead of `'protected'`. A method that DELIBERATELY
6886
+ * declares an explicit `auth` — public, protected, or admin — keeps it
6887
+ * unconditionally; the author already said what they meant, and an
6888
+ * annotation that happens to agree with the floor is documentation, not
6889
+ * redundancy. A non-`internal` cap's un-annotated method is unaffected
6890
+ * (still `'protected'`). This is a FLOOR, not a hard `mount: 'skip'` — that
6891
+ * would also override a deliberate `auth: 'public'`/`'protected'` choice,
6892
+ * which is not the defect being closed.
6893
+ *
6894
+ * `method()` (`capability-definition.ts`) deliberately leaves `auth`
6895
+ * UNSET when the caller omits it (rather than defaulting there) so the
6896
+ * "was this explicit" bit survives to this single resolution point. Single
6897
+ * source of truth shared by the runtime builder (`cap-router-builder.ts`)
6898
+ * and the codegen (`generate-cap-routers.ts`, `gen-api-reference.ts`) — the
6899
+ * two must never disagree, a documented failure mode in this repo.
6900
+ */
6901
+ function resolveMethodAuth(def, method) {
6902
+ if (method.auth !== void 0) return method.auth;
6903
+ return def.internal === true ? "admin" : "protected";
6904
+ }
6843
6905
  /** Auth level → base-procedure key. `superAdmin` collapses to `admin`. */
6844
6906
  function procedureAuthKey(auth) {
6845
6907
  if (auth === "public") return "public";
@@ -7101,7 +7163,17 @@ var customModelRegistryCapability = {
7101
7163
  scope: "system",
7102
7164
  mode: "collection",
7103
7165
  internal: true,
7104
- methods: { listModels: require_sleep.method(zod.z.void(), zod.z.array(CustomModelDescriptorSchema).readonly()) }
7166
+ methods: {
7167
+ /**
7168
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
7169
+ * `data-store-provider`) — this was reachable on the AppRouter by ANY
7170
+ * authenticated session at the default `auth: 'protected'`. The only
7171
+ * consumer, the detection-pipeline's model resolution
7172
+ * (`addon-pipeline/src/detection-pipeline/provider.ts`), calls
7173
+ * `ctx.api.customModelRegistry.listModels.query()` — UDS/Moleculer,
7174
+ * never tRPC — so `auth: 'admin'` costs it nothing.
7175
+ */
7176
+ listModels: require_sleep.method(zod.z.void(), zod.z.array(CustomModelDescriptorSchema).readonly(), { auth: "admin" }) }
7105
7177
  };
7106
7178
  //#endregion
7107
7179
  //#region src/capabilities/settings-store.cap.ts
@@ -9522,13 +9594,20 @@ var embeddingEncoderCapability = {
9522
9594
  mode: "collection",
9523
9595
  internal: true,
9524
9596
  methods: {
9597
+ /**
9598
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
9599
+ * `data-store-provider`) — every method below was reachable on the
9600
+ * AppRouter by ANY authenticated session at the default
9601
+ * `auth: 'protected'`. Consumers reach the encoder via `ctx.api` from
9602
+ * `addon-post-analysis`, never tRPC.
9603
+ */
9525
9604
  encode: require_sleep.method(zod.z.object({
9526
9605
  crop: zod.z.instanceof(Uint8Array),
9527
9606
  width: zod.z.number(),
9528
9607
  height: zod.z.number()
9529
- }), EmbeddingResultSchema),
9530
- encodeText: require_sleep.method(zod.z.object({ text: zod.z.string() }), EmbeddingResultSchema),
9531
- getInfo: require_sleep.method(zod.z.void(), EmbeddingInfoSchema)
9608
+ }), EmbeddingResultSchema, { auth: "admin" }),
9609
+ encodeText: require_sleep.method(zod.z.object({ text: zod.z.string() }), EmbeddingResultSchema, { auth: "admin" }),
9610
+ getInfo: require_sleep.method(zod.z.void(), EmbeddingInfoSchema, { auth: "admin" })
9532
9611
  }
9533
9612
  };
9534
9613
  //#endregion
@@ -9869,7 +9948,23 @@ var llmRuntimeCapability = {
9869
9948
  mode: "singleton",
9870
9949
  internal: true,
9871
9950
  methods: {
9872
- complete: require_sleep.method(LlmRuntimeCompleteInputSchema, LlmGenerateResultSchema, { kind: "mutation" }),
9951
+ /**
9952
+ * `complete`, `status`, `listLocalModels` and `getDiskUsage` had NO
9953
+ * `auth` override — `internal: true` did not gate the mount (see the
9954
+ * 2026-08-26 note on `data-store-provider`), so they were reachable on
9955
+ * the AppRouter by ANY authenticated session at the default
9956
+ * `auth: 'protected'`, inconsistent with the rest of this cap (already
9957
+ * `auth: 'admin'`) and with this file's own docblock: "the operator
9958
+ * reaches this only through the `llm` cap's methods." The sole caller,
9959
+ * `addon-ai`'s `runtime-client.ts`, reaches every method here via
9960
+ * `ctx.api` + `nodePin` — never tRPC — so `auth: 'admin'` costs it
9961
+ * nothing; the public `llm` cap (which end users and non-admin sessions
9962
+ * legitimately call for chat/generation) is untouched.
9963
+ */
9964
+ complete: require_sleep.method(LlmRuntimeCompleteInputSchema, LlmGenerateResultSchema, {
9965
+ kind: "mutation",
9966
+ auth: "admin"
9967
+ }),
9873
9968
  ensureStarted: require_sleep.method(zod.z.object({ runtime: ManagedRuntimeConfigSchema }), LlmRuntimeStatusSchema, {
9874
9969
  kind: "mutation",
9875
9970
  auth: "admin"
@@ -9878,7 +9973,7 @@ var llmRuntimeCapability = {
9878
9973
  kind: "mutation",
9879
9974
  auth: "admin"
9880
9975
  }),
9881
- status: require_sleep.method(zod.z.object({}), LlmRuntimeStatusSchema),
9976
+ status: require_sleep.method(zod.z.object({}), LlmRuntimeStatusSchema, { auth: "admin" }),
9882
9977
  installModel: require_sleep.method(zod.z.object({ model: ManagedModelRefSchema }), zod.z.void(), {
9883
9978
  kind: "mutation",
9884
9979
  auth: "admin"
@@ -9887,8 +9982,8 @@ var llmRuntimeCapability = {
9887
9982
  kind: "mutation",
9888
9983
  auth: "admin"
9889
9984
  }),
9890
- listLocalModels: require_sleep.method(zod.z.object({}), zod.z.array(LlmNodeModelSchema)),
9891
- getDiskUsage: require_sleep.method(zod.z.object({}), LlmRuntimeDiskUsageSchema)
9985
+ listLocalModels: require_sleep.method(zod.z.object({}), zod.z.array(LlmNodeModelSchema), { auth: "admin" }),
9986
+ getDiskUsage: require_sleep.method(zod.z.object({}), LlmRuntimeDiskUsageSchema, { auth: "admin" })
9892
9987
  }
9893
9988
  };
9894
9989
  //#endregion
@@ -14666,7 +14761,17 @@ var oauthIntegrationCapability = {
14666
14761
  scope: "system",
14667
14762
  mode: "collection",
14668
14763
  internal: true,
14669
- methods: { getDescriptor: require_sleep.method(zod.z.void(), OauthIntegrationDescriptorSchema) }
14764
+ methods: {
14765
+ /**
14766
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
14767
+ * `data-store-provider`) — `getDescriptor` was reachable on the AppRouter
14768
+ * by ANY authenticated session at the default `auth: 'protected'`. The
14769
+ * real caller is `/api/oauth2/authorize` and `/api/oauth2/integrations`
14770
+ * (`oauth2-routes.ts`), which resolve the provider directly off the
14771
+ * capability registry — never through tRPC. `auth: 'admin'` closes the
14772
+ * tRPC surface without touching that path.
14773
+ */
14774
+ getDescriptor: require_sleep.method(zod.z.void(), OauthIntegrationDescriptorSchema, { auth: "admin" }) }
14670
14775
  };
14671
14776
  //#endregion
14672
14777
  //#region src/capabilities/pipeline-analytics.cap.ts
@@ -19679,6 +19784,20 @@ var ssoBridgeCapability = {
19679
19784
  mode: "singleton",
19680
19785
  internal: true,
19681
19786
  methods: {
19787
+ /**
19788
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
19789
+ * `data-store-provider`) — `signBridgeToken` was reachable on the
19790
+ * AppRouter by ANY authenticated session at the default
19791
+ * `auth: 'protected'`. The claims (including `isAdmin`) are CALLER-
19792
+ * SUPPLIED: an unprivileged session could have minted its own
19793
+ * `isAdmin: true` bridge token and redeemed it at
19794
+ * `/api/auth/sso/finish` to become admin — a full privilege escalation
19795
+ * through the exact surface this cap exists to close (see the module
19796
+ * docblock). Every real caller (`oauth-grants.ts`, `main.ts`
19797
+ * registration, the OIDC/magic-link addons) reaches this through
19798
+ * `ctx.api` / the in-process registry — never through tRPC — so
19799
+ * `auth: 'admin'` costs those callers nothing.
19800
+ */
19682
19801
  signBridgeToken: require_sleep.method(zod.z.object({
19683
19802
  claims: SsoBridgeClaimsSchema,
19684
19803
  /**
@@ -19691,8 +19810,8 @@ var ssoBridgeCapability = {
19691
19810
  * linking rather than produce an eternal token.
19692
19811
  */
19693
19812
  ttlSec: zod.z.union([zod.z.number().int().positive(), zod.z.literal("never")]).optional()
19694
- }), zod.z.object({ token: zod.z.string() })),
19695
- verifyBridgeToken: require_sleep.method(zod.z.object({ token: zod.z.string() }), SsoBridgeClaimsSchema.nullable())
19813
+ }), zod.z.object({ token: zod.z.string() }), { auth: "admin" }),
19814
+ verifyBridgeToken: require_sleep.method(zod.z.object({ token: zod.z.string() }), SsoBridgeClaimsSchema.nullable(), { auth: "admin" })
19696
19815
  }
19697
19816
  };
19698
19817
  //#endregion
@@ -19845,8 +19964,15 @@ var storageEvictableCapability = {
19845
19964
  mode: "collection",
19846
19965
  internal: true,
19847
19966
  methods: {
19967
+ /**
19968
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
19969
+ * `data-store-provider`) — this was reachable on the AppRouter by ANY
19970
+ * authenticated session at the default `auth: 'protected'`. The only
19971
+ * consumer is the orchestrator's `StoragePressureManager`, which calls
19972
+ * `ctx.api` — never tRPC — so `auth: 'admin'` costs it nothing.
19973
+ */
19848
19974
  /** Bytes this provider holds on the given location — drives proportional fan-out. */
19849
- getEvictableUsage: require_sleep.method(zod.z.object({ locationId: zod.z.string() }), EvictableUsageSchema),
19975
+ getEvictableUsage: require_sleep.method(zod.z.object({ locationId: zod.z.string() }), EvictableUsageSchema, { auth: "admin" }),
19850
19976
  /**
19851
19977
  * Free approximately `targetBytes` of this provider's OWN least-valuable
19852
19978
  * data on the location (oldest footage, expired clips, …). Returns what it
@@ -19855,7 +19981,10 @@ var storageEvictableCapability = {
19855
19981
  evict: require_sleep.method(zod.z.object({
19856
19982
  locationId: zod.z.string(),
19857
19983
  targetBytes: zod.z.number().int().positive()
19858
- }), EvictResultSchema, { kind: "mutation" })
19984
+ }), EvictResultSchema, {
19985
+ kind: "mutation",
19986
+ auth: "admin"
19987
+ })
19859
19988
  }
19860
19989
  };
19861
19990
  //#endregion
@@ -19962,43 +20091,82 @@ var storageProviderCapability = {
19962
20091
  mode: "collection",
19963
20092
  internal: true,
19964
20093
  methods: {
20094
+ /**
20095
+ * Every method below except `testLocation` had NO `auth` override —
20096
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
20097
+ * `data-store-provider`), so this was reachable on the AppRouter by ANY
20098
+ * authenticated session at the default `auth: 'protected'`: arbitrary
20099
+ * read/write/delete/list against any storage location the operator has
20100
+ * configured, keyed only by a caller-supplied `location` + `relativePath`
20101
+ * — the same "public consumers never see this cap" claim that was false
20102
+ * for `data-store-provider`, here gating raw file I/O instead of raw
20103
+ * settings rows. The only legitimate caller,
20104
+ * `addon-registry.service.ts`'s `activeStorageProvider`, calls the
20105
+ * provider object directly (in-process) — never tRPC — so `auth: 'admin'`
20106
+ * on every method costs it nothing. Public consumers already go through
20107
+ * the separate `storage` singleton cap.
20108
+ */
19965
20109
  /** Self-description for the "Add location" wizard. */
19966
- getProviderInfo: require_sleep.method(zod.z.void(), ProviderInfoSchema),
20110
+ getProviderInfo: require_sleep.method(zod.z.void(), ProviderInfoSchema, { auth: "admin" }),
19967
20111
  /** Validate config + probe connectivity. Called on add and on edit. */
19968
20112
  testLocation: require_sleep.method(zod.z.object({ config: zod.z.record(zod.z.string(), zod.z.unknown()) }), TestLocationResultSchema, { auth: "admin" }),
19969
20113
  resolve: require_sleep.method(zod.z.object({
19970
20114
  location: StorageLocationSchema,
19971
20115
  relativePath: zod.z.string()
19972
- }), zod.z.string()),
20116
+ }), zod.z.string(), { auth: "admin" }),
19973
20117
  write: require_sleep.method(zod.z.object({
19974
20118
  location: StorageLocationSchema,
19975
20119
  relativePath: zod.z.string(),
19976
20120
  data: zod.z.instanceof(Uint8Array)
19977
- }), zod.z.void(), { kind: "mutation" }),
20121
+ }), zod.z.void(), {
20122
+ kind: "mutation",
20123
+ auth: "admin"
20124
+ }),
19978
20125
  read: require_sleep.method(zod.z.object({
19979
20126
  location: StorageLocationSchema,
19980
20127
  relativePath: zod.z.string()
19981
- }), zod.z.instanceof(Uint8Array)),
20128
+ }), zod.z.instanceof(Uint8Array), { auth: "admin" }),
19982
20129
  exists: require_sleep.method(zod.z.object({
19983
20130
  location: StorageLocationSchema,
19984
20131
  relativePath: zod.z.string()
19985
- }), zod.z.boolean()),
20132
+ }), zod.z.boolean(), { auth: "admin" }),
19986
20133
  list: require_sleep.method(zod.z.object({
19987
20134
  location: StorageLocationSchema,
19988
20135
  prefix: zod.z.string().optional()
19989
- }), zod.z.array(zod.z.string()).readonly()),
20136
+ }), zod.z.array(zod.z.string()).readonly(), { auth: "admin" }),
19990
20137
  delete: require_sleep.method(zod.z.object({
19991
20138
  location: StorageLocationSchema,
19992
20139
  relativePath: zod.z.string()
19993
- }), zod.z.void(), { kind: "mutation" }),
19994
- getAvailableSpace: require_sleep.method(zod.z.object({ location: StorageLocationSchema }), zod.z.number().nullable()),
19995
- beginUpload: require_sleep.method(BeginUploadInputSchema, BeginUploadResultSchema, { kind: "mutation" }),
19996
- writeChunk: require_sleep.method(WriteChunkInputSchema, zod.z.void(), { kind: "mutation" }),
19997
- finalizeUpload: require_sleep.method(FinalizeUploadInputSchema, zod.z.void(), { kind: "mutation" }),
19998
- abortUpload: require_sleep.method(AbortUploadInputSchema, zod.z.void(), { kind: "mutation" }),
19999
- beginDownload: require_sleep.method(BeginDownloadInputSchema, BeginDownloadResultSchema, { kind: "mutation" }),
20000
- readChunk: require_sleep.method(ReadChunkInputSchema, zod.z.instanceof(Uint8Array)),
20001
- endDownload: require_sleep.method(EndDownloadInputSchema, zod.z.void(), { kind: "mutation" })
20140
+ }), zod.z.void(), {
20141
+ kind: "mutation",
20142
+ auth: "admin"
20143
+ }),
20144
+ getAvailableSpace: require_sleep.method(zod.z.object({ location: StorageLocationSchema }), zod.z.number().nullable(), { auth: "admin" }),
20145
+ beginUpload: require_sleep.method(BeginUploadInputSchema, BeginUploadResultSchema, {
20146
+ kind: "mutation",
20147
+ auth: "admin"
20148
+ }),
20149
+ writeChunk: require_sleep.method(WriteChunkInputSchema, zod.z.void(), {
20150
+ kind: "mutation",
20151
+ auth: "admin"
20152
+ }),
20153
+ finalizeUpload: require_sleep.method(FinalizeUploadInputSchema, zod.z.void(), {
20154
+ kind: "mutation",
20155
+ auth: "admin"
20156
+ }),
20157
+ abortUpload: require_sleep.method(AbortUploadInputSchema, zod.z.void(), {
20158
+ kind: "mutation",
20159
+ auth: "admin"
20160
+ }),
20161
+ beginDownload: require_sleep.method(BeginDownloadInputSchema, BeginDownloadResultSchema, {
20162
+ kind: "mutation",
20163
+ auth: "admin"
20164
+ }),
20165
+ readChunk: require_sleep.method(ReadChunkInputSchema, zod.z.instanceof(Uint8Array), { auth: "admin" }),
20166
+ endDownload: require_sleep.method(EndDownloadInputSchema, zod.z.void(), {
20167
+ kind: "mutation",
20168
+ auth: "admin"
20169
+ })
20002
20170
  }
20003
20171
  };
20004
20172
  //#endregion
@@ -20337,9 +20505,28 @@ var userPasskeysCapability = {
20337
20505
  auth: "admin",
20338
20506
  access: "create"
20339
20507
  }),
20508
+ /**
20509
+ * The four methods below had NO `auth` override — `internal: true` did
20510
+ * not gate the mount (see the 2026-08-26 note on `data-store-provider`),
20511
+ * so they were reachable on the AppRouter at the default
20512
+ * `auth: 'protected'` (any authenticated session), inconsistent with
20513
+ * every other method on this cap (all already `auth: 'admin'`).
20514
+ *
20515
+ * ⚠ Checked before gating: these are also the PRE-AUTH login-ceremony
20516
+ * methods, so admin-gating them here must not break login for an
20517
+ * unauthenticated principal. It doesn't — the real login path is the
20518
+ * PUBLIC `auth.beginAuthentication` / `auth.finishAuthentication` /
20519
+ * `auth.beginDiscoverableAuthentication` / `auth.finishDiscoverableAuthentication`
20520
+ * procedures in `server/backend/src/api/core/auth.router.ts`, which call
20521
+ * `provider.beginAuthentication(...)` etc. directly against the
20522
+ * capability-registry-resolved provider — never through this cap's own
20523
+ * tRPC route. `auth: 'admin'` here only closes a redundant, unused
20524
+ * second entry point onto the same ceremony.
20525
+ */
20340
20526
  beginAuthentication: require_sleep.method(zod.z.object({ userId: zod.z.string().optional() }), zod.z.object({ optionsJSON: zod.z.record(zod.z.string(), zod.z.unknown()) }), {
20341
20527
  kind: "mutation",
20342
- access: "view"
20528
+ access: "view",
20529
+ auth: "admin"
20343
20530
  }),
20344
20531
  finishAuthentication: require_sleep.method(zod.z.object({
20345
20532
  /** Required — the user the assertion belongs to (verified). */
@@ -20348,11 +20535,13 @@ var userPasskeysCapability = {
20348
20535
  response: zod.z.record(zod.z.string(), zod.z.unknown())
20349
20536
  }), zod.z.object({ verified: zod.z.boolean() }), {
20350
20537
  kind: "mutation",
20351
- access: "view"
20538
+ access: "view",
20539
+ auth: "admin"
20352
20540
  }),
20353
20541
  beginDiscoverableAuthentication: require_sleep.method(zod.z.object({}), zod.z.object({ optionsJSON: zod.z.record(zod.z.string(), zod.z.unknown()) }), {
20354
20542
  kind: "mutation",
20355
- access: "view"
20543
+ access: "view",
20544
+ auth: "admin"
20356
20545
  }),
20357
20546
  finishDiscoverableAuthentication: require_sleep.method(zod.z.object({
20358
20547
  /** AuthenticationResponseJSON from the browser. */
@@ -20361,7 +20550,8 @@ response: zod.z.record(zod.z.string(), zod.z.unknown()) }), zod.z.object({
20361
20550
  userId: zod.z.string().nullable()
20362
20551
  }), {
20363
20552
  kind: "mutation",
20364
- access: "view"
20553
+ access: "view",
20554
+ auth: "admin"
20365
20555
  }),
20366
20556
  listPasskeys: require_sleep.method(zod.z.object({ userId: zod.z.string() }), zod.z.array(PasskeySummarySchema), { auth: "admin" }),
20367
20557
  removePasskey: require_sleep.method(zod.z.object({
@@ -20541,6 +20731,14 @@ var VectorStatsResultSchema = zod.z.object({
20541
20731
  /** False when the backend ranks approximately. */
20542
20732
  exact: zod.z.boolean()
20543
20733
  });
20734
+ /**
20735
+ * `internal: true` did not gate the mount (see the 2026-08-26 note on
20736
+ * `data-store-provider`) — every method below was reachable on the AppRouter
20737
+ * by ANY authenticated session at the default `auth: 'protected'`. The only
20738
+ * consumers (`addon-post-analysis`'s embedding stores) reach this cap via
20739
+ * `ctx.api` — UDS/Moleculer, never tRPC — so `auth: 'admin'` on every method
20740
+ * costs them nothing. No client (viewer or admin-ui) calls `vectorStore.*`.
20741
+ */
20544
20742
  var vectorStoreCapability = {
20545
20743
  name: "vector-store",
20546
20744
  scope: "system",
@@ -20548,14 +20746,26 @@ var vectorStoreCapability = {
20548
20746
  internal: true,
20549
20747
  methods: {
20550
20748
  /** Idempotent. Re-declaring with a different `dim` is an error, not a wipe. */
20551
- declareIndex: require_sleep.method(VectorDeclareIndexInputSchema, zod.z.void(), { kind: "mutation" }),
20552
- upsert: require_sleep.method(VectorUpsertInputSchema, VectorUpsertResultSchema, { kind: "mutation" }),
20553
- query: require_sleep.method(VectorQueryInputSchema, VectorQueryResultSchema),
20749
+ declareIndex: require_sleep.method(VectorDeclareIndexInputSchema, zod.z.void(), {
20750
+ kind: "mutation",
20751
+ auth: "admin"
20752
+ }),
20753
+ upsert: require_sleep.method(VectorUpsertInputSchema, VectorUpsertResultSchema, {
20754
+ kind: "mutation",
20755
+ auth: "admin"
20756
+ }),
20757
+ query: require_sleep.method(VectorQueryInputSchema, VectorQueryResultSchema, { auth: "admin" }),
20554
20758
  /** Metadata by id, no vectors — see {@link VectorGetResultSchema}. */
20555
- getByIds: require_sleep.method(VectorGetInputSchema, VectorGetResultSchema),
20556
- deleteByIds: require_sleep.method(VectorDeleteInputSchema, VectorDeleteResultSchema, { kind: "mutation" }),
20557
- deleteByFilter: require_sleep.method(VectorDeleteByFilterInputSchema, VectorDeleteResultSchema, { kind: "mutation" }),
20558
- stats: require_sleep.method(VectorStatsInputSchema, VectorStatsResultSchema)
20759
+ getByIds: require_sleep.method(VectorGetInputSchema, VectorGetResultSchema, { auth: "admin" }),
20760
+ deleteByIds: require_sleep.method(VectorDeleteInputSchema, VectorDeleteResultSchema, {
20761
+ kind: "mutation",
20762
+ auth: "admin"
20763
+ }),
20764
+ deleteByFilter: require_sleep.method(VectorDeleteByFilterInputSchema, VectorDeleteResultSchema, {
20765
+ kind: "mutation",
20766
+ auth: "admin"
20767
+ }),
20768
+ stats: require_sleep.method(VectorStatsInputSchema, VectorStatsResultSchema, { auth: "admin" })
20559
20769
  }
20560
20770
  };
20561
20771
  //#endregion
@@ -48919,6 +49129,7 @@ exports.resolveDeviceProfile = resolveDeviceProfile;
48919
49129
  exports.resolveEgressDecodeHwAccel = resolveEgressDecodeHwAccel;
48920
49130
  exports.resolveFormat = resolveFormat;
48921
49131
  exports.resolveHydratedFieldValue = require_sleep.resolveHydratedFieldValue;
49132
+ exports.resolveMethodAuth = resolveMethodAuth;
48922
49133
  exports.resolveModelFormat = resolveModelFormat;
48923
49134
  exports.resolveMutate = resolveMutate;
48924
49135
  exports.resolvePoolMemoryPolicy = resolvePoolMemoryPolicy;