@the-40-thieves/obsidian-tc-shared 1.0.1 → 1.2.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.
@@ -1 +1 @@
1
- {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.schema.d.ts","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,eAAO,MAAM,wBAAwB;;;;;iBAKnC,CAAC;AAMH,eAAO,MAAM,wBAAwB;;;;iBAInC,CAAC;AAMH,eAAO,MAAM,yBAAyB;;;iBAGpC,CAAC;AAOH,eAAO,MAAM,uBAAuB;;iBAElC,CAAC;AAOH,eAAO,MAAM,0BAA0B;;iBAErC,CAAC;AAEH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAiB5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,gBAAgB;;;;;;;iBASzB,CAAC;AAEL,eAAO,MAAM,aAAa;;;iBAGxB,CAAC;AAEH,eAAO,MAAM,eAAe;;;;;;;;;;iBAW1B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAMjC,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;iBAI3B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;iBAGjC,CAAC;AAEH,eAAO,MAAM,oBAAoB;;iBAE/B,CAAC;AAgBH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAelB,CAAC;AAChB,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AASlE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;iBA8BpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAU5E,eAAO,MAAM,gBAAgB;;;;;iBAK3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAa1D,eAAO,MAAM,0BAA0B;;;;;;;iBAOrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAqB9E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAS7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { z } from "zod";
2
+ import { isLoopbackHost } from "./net-host";
2
3
  // Per-vault plugin-bridge timeouts (M4 / THE-180, G2.2 §3.1 + §6). Inner fields
3
4
  // carry defaults; the whole block is optional so a vault that predates M4
4
5
  // validates unchanged (consumers read `vault.bridges?.x ?? <default>`).
@@ -47,6 +48,12 @@ export const VaultConfigSchema = z.object({
47
48
  path: z.string().min(1),
48
49
  restApiUrl: z.string().url().optional(),
49
50
  restApiKey: z.string().optional(),
51
+ // Headless mode selection (THE-255). Absent or `auto` probes the Local REST API once at
52
+ // startup: reachable -> live (full surface), else headless (direct-atomic-fs vault state;
53
+ // Tier-3 action tools degrade to requires_live_obsidian). `live`/`headless` force the mode
54
+ // and skip the probe. Optional, so a config predating THE-255 validates unchanged;
55
+ // resolveMode treats an absent mode as auto.
56
+ mode: z.enum(["live", "headless", "auto"]).optional(),
50
57
  bridges: VaultBridgesConfigSchema.optional(),
51
58
  plugins: VaultPluginsConfigSchema.optional(),
52
59
  commands: VaultCommandsConfigSchema.optional(),
@@ -55,7 +62,7 @@ export const VaultConfigSchema = z.object({
55
62
  });
56
63
  export const AuthConfigSchema = z
57
64
  .object({
58
- mode: z.enum(["none", "jwt", "oauth"]).default("none"),
65
+ mode: z.enum(["none", "jwt"]).default("none"),
59
66
  jwtSecret: z.string().min(32).optional(),
60
67
  tokenTtlSeconds: z.number().int().positive().default(86400),
61
68
  })
@@ -93,7 +100,7 @@ export const HttpConfigSchema = z.object({
93
100
  });
94
101
  export const TransportsConfigSchema = z.object({
95
102
  stdio: z.boolean().default(true),
96
- http: HttpConfigSchema.default({}),
103
+ http: HttpConfigSchema.prefault({}),
97
104
  });
98
105
  export const GovernorConfigSchema = z.object({
99
106
  maxResponseBytes: z.number().int().positive().default(1_000_000),
@@ -109,7 +116,7 @@ const throttleTier = (perMinute, burst) => z
109
116
  perMinute: z.number().int().positive().default(perMinute),
110
117
  burst: z.number().int().positive().default(burst),
111
118
  })
112
- .default({});
119
+ .prefault({});
113
120
  export const ThrottleConfigSchema = z
114
121
  .object({
115
122
  enabled: z.boolean().default(true),
@@ -117,14 +124,15 @@ export const ThrottleConfigSchema = z
117
124
  .object({
118
125
  read: throttleTier(600, 100),
119
126
  write: throttleTier(60, 20),
127
+ delete: throttleTier(60, 20),
120
128
  bulk: throttleTier(10, 3),
121
129
  execute: throttleTier(5, 1),
122
130
  admin: throttleTier(5, 1),
123
131
  })
124
- .default({}),
132
+ .prefault({}),
125
133
  maxConcurrentWritesPerVault: z.number().int().positive().default(16),
126
134
  })
127
- .default({});
135
+ .prefault({});
128
136
  // Observability config (G2.4 §Observability — finalized in M7/THE-183). Three opt-in
129
137
  // export streams plus retention, all fully defaulted so a config predating M7 validates
130
138
  // unchanged. OTEL is a no-op unless `otel.endpoint` is set; the Prometheus `/metrics`
@@ -138,30 +146,30 @@ export const ObservabilityConfigSchema = z.object({
138
146
  otel: z
139
147
  .object({
140
148
  endpoint: z.string().url().optional(),
141
- headers: z.record(z.string()).default({}),
149
+ headers: z.record(z.string(), z.string()).prefault({}),
142
150
  })
143
- .default({}),
151
+ .prefault({}),
144
152
  prometheus: z
145
153
  .object({
146
154
  enabled: z.boolean().default(false),
147
155
  port: z.number().int().min(0).max(65535).default(9464),
148
156
  bind: z.string().default("127.0.0.1"),
149
157
  })
150
- .default({}),
158
+ .prefault({}),
151
159
  morgiana: z
152
160
  .object({
153
161
  spool: z.boolean().default(true),
154
162
  httpEndpoint: z.string().url().optional(),
155
- httpHeaders: z.record(z.string()).default({}),
163
+ httpHeaders: z.record(z.string(), z.string()).prefault({}),
156
164
  })
157
- .default({}),
165
+ .prefault({}),
158
166
  retention: z
159
167
  .object({
160
168
  morgianaEventsDays: z.number().int().positive().default(90),
161
169
  tracesDays: z.number().int().positive().default(90),
162
170
  eventLogDays: z.number().int().positive().default(30),
163
171
  })
164
- .default({}),
172
+ .prefault({}),
165
173
  });
166
174
  // plur read-API proxy config (M5 / THE-181, G2.1 Domain 24). GLOBAL, not per-vault:
167
175
  // the plur engram store is global and the plur tools take no `vault` argument, so
@@ -177,18 +185,51 @@ export const PlurConfigSchema = z.object({
177
185
  apiPrefix: z.string().default(""),
178
186
  timeoutMs: z.number().int().positive().default(5000),
179
187
  });
180
- export const ServerConfigSchema = z.object({
188
+ // Static tool-visibility scoping (THE-219 — parity with turbovault's tool_visibility).
189
+ // Shapes the *advertised* tool surface at the Registry.listVisible()/dispatch chokepoints
190
+ // without rebuilding capability. Two strengths, with precedence disabled > hidden > listed:
191
+ // - hidden / hiddenTags / requireReadOnly / allowed: drop a tool from tools/list, but it
192
+ // stays callable by name (a lean default surface, not a security boundary).
193
+ // - disabled / disabledTags: drop it from tools/list AND reject it at dispatch, so it
194
+ // behaves as if unregistered.
195
+ // `allowed`, when present, is a name allowlist: only those tools are listed (absent = list
196
+ // all; an empty array lists none). `requireReadOnly` derives mutation from the required
197
+ // scopes (isMutatingScope), so it needs no per-tool annotation. Optional + fully defaulted:
198
+ // a config predating THE-219 validates unchanged and an absent block means ALLOW_ALL.
199
+ export const ToolVisibilityConfigSchema = z.object({
200
+ allowed: z.array(z.string()).optional(),
201
+ hidden: z.array(z.string()).default([]),
202
+ disabled: z.array(z.string()).default([]),
203
+ hiddenTags: z.array(z.string()).default([]),
204
+ disabledTags: z.array(z.string()).default([]),
205
+ requireReadOnly: z.boolean().default(false),
206
+ });
207
+ const ServerConfigObject = z.object({
181
208
  cacheDir: z.string().default(".obsidian-tc"),
182
209
  vaults: z.array(VaultConfigSchema).min(1),
183
210
  plur: PlurConfigSchema.optional(),
184
- auth: AuthConfigSchema.default({ mode: "none" }),
185
- acl: AclConfigSchema.default({}),
186
- embeddings: EmbeddingsConfigSchema.default({}),
187
- transports: TransportsConfigSchema.default({}),
188
- governor: GovernorConfigSchema.default({}),
211
+ auth: AuthConfigSchema.prefault({ mode: "none" }),
212
+ acl: AclConfigSchema.prefault({}),
213
+ embeddings: EmbeddingsConfigSchema.prefault({}),
214
+ transports: TransportsConfigSchema.prefault({}),
215
+ governor: GovernorConfigSchema.prefault({}),
216
+ toolVisibility: ToolVisibilityConfigSchema.optional(),
189
217
  throttle: ThrottleConfigSchema,
190
- observability: ObservabilityConfigSchema.default({}),
218
+ observability: ObservabilityConfigSchema.prefault({}),
191
219
  idempotencyTtlSeconds: z.number().int().positive().default(86400),
192
220
  elicitTtlSeconds: z.number().int().positive().default(300),
193
221
  });
222
+ // F2 fail-closed interlock: never run an unauthenticated server on a routable host. When the
223
+ // HTTP transport is enabled on a non-loopback host with auth.mode "none", every request would
224
+ // resolve to full wildcard scopes (see transports/http.ts resolveAuth) — refuse the config.
225
+ export const ServerConfigSchema = ServerConfigObject.superRefine((cfg, ctx) => {
226
+ const http = cfg.transports.http;
227
+ if (http.enabled && cfg.auth.mode === "none" && !isLoopbackHost(http.host)) {
228
+ ctx.addIssue({
229
+ code: z.ZodIssueCode.custom,
230
+ path: ["transports", "http", "host"],
231
+ message: `refusing to expose an unauthenticated server: transports.http.enabled is true with host "${http.host}" (non-loopback) while auth.mode is "none". Set auth.mode to "jwt" (with jwtSecret) or bind transports.http.host to a loopback address (127.0.0.1, ::1, localhost).`,
232
+ });
233
+ }
234
+ });
194
235
  //# sourceMappingURL=config.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.schema.js","sourceRoot":"","sources":["../src/config.schema.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type ErrorCode = "unauthorized" | "forbidden" | "validation_error" | "not_found" | "vault_not_found" | "conflict" | "idempotency_key_mismatch" | "idempotency_in_flight" | "elicit_required" | "elicit_invalid" | "overflow" | "throttled" | "read_only" | "plugin_unavailable" | "internal" | "note_not_found" | "path_invalid" | "path_ambiguous" | "acl_denied" | "read_only_mode" | "note_exists" | "concurrent_modification" | "invalid_input" | "internal_error" | "embedding_provider_error" | "operation_timeout" | "dql_error" | "jsonlogic_error" | "plugin_missing" | "plugin_unreachable" | "bases_syntax_error" | "execute_command_disabled" | "command_not_allowlisted";
1
+ export type ErrorCode = "unauthorized" | "forbidden" | "validation_error" | "not_found" | "vault_not_found" | "conflict" | "idempotency_key_mismatch" | "idempotency_in_flight" | "elicit_required" | "elicit_invalid" | "overflow" | "throttled" | "read_only" | "plugin_unavailable" | "internal" | "note_not_found" | "path_invalid" | "path_ambiguous" | "acl_denied" | "read_only_mode" | "note_exists" | "concurrent_modification" | "invalid_input" | "internal_error" | "embedding_provider_error" | "operation_timeout" | "dql_error" | "jsonlogic_error" | "plugin_missing" | "plugin_unreachable" | "bases_syntax_error" | "execute_command_disabled" | "command_not_allowlisted" | "requires_live_obsidian";
2
2
  export interface ErrorJSON {
3
3
  code: ErrorCode;
4
4
  message: string;
@@ -44,6 +44,7 @@ export declare const err: {
44
44
  readonly basesSyntaxError: Mk;
45
45
  readonly executeCommandDisabled: Mk;
46
46
  readonly commandNotAllowlisted: Mk;
47
+ readonly requiresLiveObsidian: Mk;
47
48
  };
48
49
  export {};
49
50
  //# sourceMappingURL=errors.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAEjB,cAAc,GACd,WAAW,GACX,kBAAkB,GAClB,WAAW,GACX,iBAAiB,GACjB,UAAU,GACV,0BAA0B,GAC1B,uBAAuB,GACvB,iBAAiB,GACjB,gBAAgB,GAChB,UAAU,GACV,WAAW,GACX,WAAW,GACX,oBAAoB,GACpB,UAAU,GAEV,gBAAgB,GAChB,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,aAAa,GACb,yBAAyB,GACzB,eAAe,GACf,gBAAgB,GAEhB,0BAA0B,GAC1B,mBAAmB,GACnB,WAAW,GACX,iBAAiB,GACjB,gBAAgB,GAChB,oBAAoB,GAEpB,oBAAoB,GAEpB,0BAA0B,GAC1B,yBAAyB,CAAC;AAe9B,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;gBAEhB,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAS/E,MAAM,IAAI,SAAS;CAQpB;AAED,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,eAAe,CAAC;AAMnF,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuCN,CAAC"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAEjB,cAAc,GACd,WAAW,GACX,kBAAkB,GAClB,WAAW,GACX,iBAAiB,GACjB,UAAU,GACV,0BAA0B,GAC1B,uBAAuB,GACvB,iBAAiB,GACjB,gBAAgB,GAChB,UAAU,GACV,WAAW,GACX,WAAW,GACX,oBAAoB,GACpB,UAAU,GAEV,gBAAgB,GAChB,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,gBAAgB,GAChB,aAAa,GACb,yBAAyB,GACzB,eAAe,GACf,gBAAgB,GAEhB,0BAA0B,GAC1B,mBAAmB,GACnB,WAAW,GACX,iBAAiB,GACjB,gBAAgB,GAChB,oBAAoB,GAEpB,oBAAoB,GAEpB,0BAA0B,GAC1B,yBAAyB,GAEzB,wBAAwB,CAAC;AAe7B,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,qBAAa,eAAgB,SAAQ,KAAK;IACxC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;gBAEhB,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAS/E,MAAM,IAAI,SAAS;CAQpB;AAED,KAAK,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,eAAe,CAAC;AAMnF,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CN,CAAC"}
package/dist/errors.js CHANGED
@@ -68,5 +68,7 @@ export const err = {
68
68
  // M4 — G2.1 Domain 26 command palette (deny-by-default command execution).
69
69
  executeCommandDisabled: mk("execute_command_disabled", "command execution is disabled for this vault"),
70
70
  commandNotAllowlisted: mk("command_not_allowlisted", "command is not in the vault allowlist"),
71
+ // M-headless (THE-255) — Tier-3 tools degrade to this headless (see vault/mode.ts assertLive).
72
+ requiresLiveObsidian: mk("requires_live_obsidian", "this operation requires a live Obsidian (Local REST API) connection"),
71
73
  };
72
74
  //# sourceMappingURL=errors.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
- export * from "./errors";
2
- export * from "./scopes";
3
- export * from "./result";
4
1
  export * from "./config.schema";
2
+ export * from "./errors";
5
3
  export * from "./morgiana.schema";
4
+ export * from "./net-host";
5
+ export * from "./result";
6
6
  export * from "./schemas/primitives";
7
+ export * from "./scopes";
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
- export * from "./errors";
2
- export * from "./scopes";
3
- export * from "./result";
4
1
  export * from "./config.schema";
2
+ export * from "./errors";
5
3
  export * from "./morgiana.schema";
4
+ export * from "./net-host";
5
+ export * from "./result";
6
6
  export * from "./schemas/primitives";
7
+ export * from "./scopes";
7
8
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC"}
@@ -1,7 +1,17 @@
1
1
  import { z } from "zod";
2
2
  /** The nine CloudEvents `type` values MORGIANA recognizes (G2.4 §Event types). */
3
3
  export declare const MORGIANA_EVENT_TYPES: readonly ["tc.tool.call.completed", "tc.acl.denied", "tc.elicit.requested", "tc.elicit.consumed", "tc.rate_limit.hit", "tc.governor.overflow", "tc.vault.cache_reset", "tc.server.start", "tc.server.shutdown"];
4
- export declare const MorgianaEventType: z.ZodEnum<["tc.tool.call.completed", "tc.acl.denied", "tc.elicit.requested", "tc.elicit.consumed", "tc.rate_limit.hit", "tc.governor.overflow", "tc.vault.cache_reset", "tc.server.start", "tc.server.shutdown"]>;
4
+ export declare const MorgianaEventType: z.ZodEnum<{
5
+ "tc.tool.call.completed": "tc.tool.call.completed";
6
+ "tc.acl.denied": "tc.acl.denied";
7
+ "tc.elicit.requested": "tc.elicit.requested";
8
+ "tc.elicit.consumed": "tc.elicit.consumed";
9
+ "tc.rate_limit.hit": "tc.rate_limit.hit";
10
+ "tc.governor.overflow": "tc.governor.overflow";
11
+ "tc.vault.cache_reset": "tc.vault.cache_reset";
12
+ "tc.server.start": "tc.server.start";
13
+ "tc.server.shutdown": "tc.server.shutdown";
14
+ }>;
5
15
  export type MorgianaEventType = z.infer<typeof MorgianaEventType>;
6
16
  /**
7
17
  * The CloudEvents `data` payload (G2.4 §Data shape). One uniform shape across all event types:
@@ -12,8 +22,12 @@ export declare const MorgianaEventDataSchema: z.ZodObject<{
12
22
  vault_id: z.ZodString;
13
23
  tool: z.ZodDefault<z.ZodNullable<z.ZodString>>;
14
24
  caller_hash: z.ZodDefault<z.ZodString>;
15
- scopes_required: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
16
- status: z.ZodDefault<z.ZodNullable<z.ZodEnum<["ok", "denied", "error"]>>>;
25
+ scopes_required: z.ZodDefault<z.ZodArray<z.ZodString>>;
26
+ status: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
27
+ ok: "ok";
28
+ error: "error";
29
+ denied: "denied";
30
+ }>>>;
17
31
  duration_ms: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
18
32
  elicit_token: z.ZodDefault<z.ZodNullable<z.ZodString>>;
19
33
  idempotency_key: z.ZodDefault<z.ZodNullable<z.ZodString>>;
@@ -22,62 +36,38 @@ export declare const MorgianaEventDataSchema: z.ZodObject<{
22
36
  error: z.ZodDefault<z.ZodNullable<z.ZodObject<{
23
37
  code: z.ZodString;
24
38
  message: z.ZodString;
25
- }, "strip", z.ZodTypeAny, {
26
- code: string;
27
- message: string;
28
- }, {
29
- code: string;
30
- message: string;
31
- }>>>;
39
+ }, z.core.$strip>>>;
32
40
  count: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
33
- }, "strip", z.ZodTypeAny, {
34
- status: "ok" | "denied" | "error" | null;
35
- vault_id: string;
36
- tool: string | null;
37
- caller_hash: string;
38
- scopes_required: string[];
39
- error: {
40
- code: string;
41
- message: string;
42
- } | null;
43
- duration_ms: number | null;
44
- elicit_token: string | null;
45
- idempotency_key: string | null;
46
- result_size: number | null;
47
- overflow_bytes: number | null;
48
- count: number | null;
49
- }, {
50
- vault_id: string;
51
- status?: "ok" | "denied" | "error" | null | undefined;
52
- tool?: string | null | undefined;
53
- caller_hash?: string | undefined;
54
- scopes_required?: string[] | undefined;
55
- error?: {
56
- code: string;
57
- message: string;
58
- } | null | undefined;
59
- duration_ms?: number | null | undefined;
60
- elicit_token?: string | null | undefined;
61
- idempotency_key?: string | null | undefined;
62
- result_size?: number | null | undefined;
63
- overflow_bytes?: number | null | undefined;
64
- count?: number | null | undefined;
65
- }>;
41
+ }, z.core.$strip>;
66
42
  export type MorgianaEventData = z.infer<typeof MorgianaEventDataSchema>;
67
43
  /** CloudEvents 1.0 envelope (G2.4 §Envelope). `source` is `obsidian-tc/<vault_id>`. */
68
44
  export declare const CloudEventSchema: z.ZodObject<{
69
45
  specversion: z.ZodLiteral<"1.0">;
70
46
  id: z.ZodString;
71
47
  source: z.ZodString;
72
- type: z.ZodEnum<["tc.tool.call.completed", "tc.acl.denied", "tc.elicit.requested", "tc.elicit.consumed", "tc.rate_limit.hit", "tc.governor.overflow", "tc.vault.cache_reset", "tc.server.start", "tc.server.shutdown"]>;
48
+ type: z.ZodEnum<{
49
+ "tc.tool.call.completed": "tc.tool.call.completed";
50
+ "tc.acl.denied": "tc.acl.denied";
51
+ "tc.elicit.requested": "tc.elicit.requested";
52
+ "tc.elicit.consumed": "tc.elicit.consumed";
53
+ "tc.rate_limit.hit": "tc.rate_limit.hit";
54
+ "tc.governor.overflow": "tc.governor.overflow";
55
+ "tc.vault.cache_reset": "tc.vault.cache_reset";
56
+ "tc.server.start": "tc.server.start";
57
+ "tc.server.shutdown": "tc.server.shutdown";
58
+ }>;
73
59
  datacontenttype: z.ZodDefault<z.ZodLiteral<"application/json">>;
74
60
  time: z.ZodString;
75
61
  data: z.ZodObject<{
76
62
  vault_id: z.ZodString;
77
63
  tool: z.ZodDefault<z.ZodNullable<z.ZodString>>;
78
64
  caller_hash: z.ZodDefault<z.ZodString>;
79
- scopes_required: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
80
- status: z.ZodDefault<z.ZodNullable<z.ZodEnum<["ok", "denied", "error"]>>>;
65
+ scopes_required: z.ZodDefault<z.ZodArray<z.ZodString>>;
66
+ status: z.ZodDefault<z.ZodNullable<z.ZodEnum<{
67
+ ok: "ok";
68
+ error: "error";
69
+ denied: "denied";
70
+ }>>>;
81
71
  duration_ms: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
82
72
  elicit_token: z.ZodDefault<z.ZodNullable<z.ZodString>>;
83
73
  idempotency_key: z.ZodDefault<z.ZodNullable<z.ZodString>>;
@@ -86,95 +76,9 @@ export declare const CloudEventSchema: z.ZodObject<{
86
76
  error: z.ZodDefault<z.ZodNullable<z.ZodObject<{
87
77
  code: z.ZodString;
88
78
  message: z.ZodString;
89
- }, "strip", z.ZodTypeAny, {
90
- code: string;
91
- message: string;
92
- }, {
93
- code: string;
94
- message: string;
95
- }>>>;
79
+ }, z.core.$strip>>>;
96
80
  count: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
97
- }, "strip", z.ZodTypeAny, {
98
- status: "ok" | "denied" | "error" | null;
99
- vault_id: string;
100
- tool: string | null;
101
- caller_hash: string;
102
- scopes_required: string[];
103
- error: {
104
- code: string;
105
- message: string;
106
- } | null;
107
- duration_ms: number | null;
108
- elicit_token: string | null;
109
- idempotency_key: string | null;
110
- result_size: number | null;
111
- overflow_bytes: number | null;
112
- count: number | null;
113
- }, {
114
- vault_id: string;
115
- status?: "ok" | "denied" | "error" | null | undefined;
116
- tool?: string | null | undefined;
117
- caller_hash?: string | undefined;
118
- scopes_required?: string[] | undefined;
119
- error?: {
120
- code: string;
121
- message: string;
122
- } | null | undefined;
123
- duration_ms?: number | null | undefined;
124
- elicit_token?: string | null | undefined;
125
- idempotency_key?: string | null | undefined;
126
- result_size?: number | null | undefined;
127
- overflow_bytes?: number | null | undefined;
128
- count?: number | null | undefined;
129
- }>;
130
- }, "strip", z.ZodTypeAny, {
131
- type: "tc.tool.call.completed" | "tc.acl.denied" | "tc.elicit.requested" | "tc.elicit.consumed" | "tc.rate_limit.hit" | "tc.governor.overflow" | "tc.vault.cache_reset" | "tc.server.start" | "tc.server.shutdown";
132
- time: string;
133
- id: string;
134
- specversion: "1.0";
135
- source: string;
136
- datacontenttype: "application/json";
137
- data: {
138
- status: "ok" | "denied" | "error" | null;
139
- vault_id: string;
140
- tool: string | null;
141
- caller_hash: string;
142
- scopes_required: string[];
143
- error: {
144
- code: string;
145
- message: string;
146
- } | null;
147
- duration_ms: number | null;
148
- elicit_token: string | null;
149
- idempotency_key: string | null;
150
- result_size: number | null;
151
- overflow_bytes: number | null;
152
- count: number | null;
153
- };
154
- }, {
155
- type: "tc.tool.call.completed" | "tc.acl.denied" | "tc.elicit.requested" | "tc.elicit.consumed" | "tc.rate_limit.hit" | "tc.governor.overflow" | "tc.vault.cache_reset" | "tc.server.start" | "tc.server.shutdown";
156
- time: string;
157
- id: string;
158
- specversion: "1.0";
159
- source: string;
160
- data: {
161
- vault_id: string;
162
- status?: "ok" | "denied" | "error" | null | undefined;
163
- tool?: string | null | undefined;
164
- caller_hash?: string | undefined;
165
- scopes_required?: string[] | undefined;
166
- error?: {
167
- code: string;
168
- message: string;
169
- } | null | undefined;
170
- duration_ms?: number | null | undefined;
171
- elicit_token?: string | null | undefined;
172
- idempotency_key?: string | null | undefined;
173
- result_size?: number | null | undefined;
174
- overflow_bytes?: number | null | undefined;
175
- count?: number | null | undefined;
176
- };
177
- datacontenttype?: "application/json" | undefined;
178
- }>;
81
+ }, z.core.$strip>;
82
+ }, z.core.$strip>;
179
83
  export type CloudEvent = z.infer<typeof CloudEventSchema>;
180
84
  //# sourceMappingURL=morgiana.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"morgiana.schema.d.ts","sourceRoot":"","sources":["../src/morgiana.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,kFAAkF;AAClF,eAAO,MAAM,oBAAoB,iNAUvB,CAAC;AAEX,eAAO,MAAM,iBAAiB,mNAA+B,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAalC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,uFAAuF;AACvF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAQ3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"morgiana.schema.d.ts","sourceRoot":"","sources":["../src/morgiana.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAOxB,kFAAkF;AAClF,eAAO,MAAM,oBAAoB,iNAUvB,CAAC;AAEX,eAAO,MAAM,iBAAiB;;;;;;;;;;EAA+B,CAAC;AAC9D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;iBAalC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,uFAAuF;AACvF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAQ3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Normalize a host string for binding and loopback comparison: trim, lowercase,
3
+ * and strip a single surrounding pair of IPv6 brackets. Node's bind layer expects
4
+ * the bare address ("::1"), not the bracketed URL form ("[::1]"), so the same
5
+ * normalization must feed both the loopback check and the actual bind call.
6
+ * Otherwise a bracketed host can clear the F2 safety gate yet fail to bind.
7
+ */
8
+ export declare function normalizeHostForBind(host: string): string;
9
+ /**
10
+ * True only for genuine loopback hosts: "localhost", the IPv4 loopback block
11
+ * 127.0.0.0/8 (octets validated), IPv6 "::1", and IPv4-mapped IPv6 loopback
12
+ * "::ffff:127.x.x.x". "0.0.0.0", "::", and any LAN or public address are
13
+ * intentionally NOT loopback (F2).
14
+ */
15
+ export declare function isLoopbackHost(host: string): boolean;
16
+ //# sourceMappingURL=net-host.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"net-host.d.ts","sourceRoot":"","sources":["../src/net-host.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEzD;AAYD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CASpD"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Normalize a host string for binding and loopback comparison: trim, lowercase,
3
+ * and strip a single surrounding pair of IPv6 brackets. Node's bind layer expects
4
+ * the bare address ("::1"), not the bracketed URL form ("[::1]"), so the same
5
+ * normalization must feed both the loopback check and the actual bind call.
6
+ * Otherwise a bracketed host can clear the F2 safety gate yet fail to bind.
7
+ */
8
+ export function normalizeHostForBind(host) {
9
+ return host.trim().toLowerCase().replace(/^\[/, "").replace(/\]$/, "");
10
+ }
11
+ // Strict dotted-quad IPv4 with every octet in 0-255. Kept dependency-free (no
12
+ // node:net) so this module stays usable from the isomorphic shared package.
13
+ // Rejects malformed values like "127.999.999.999" that a loose \d{1,3} regex
14
+ // would wrongly accept.
15
+ function isStrictIpv4(h) {
16
+ const m = /^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(h);
17
+ if (!m)
18
+ return false;
19
+ return m.slice(1).every((octet) => Number(octet) <= 255);
20
+ }
21
+ /**
22
+ * True only for genuine loopback hosts: "localhost", the IPv4 loopback block
23
+ * 127.0.0.0/8 (octets validated), IPv6 "::1", and IPv4-mapped IPv6 loopback
24
+ * "::ffff:127.x.x.x". "0.0.0.0", "::", and any LAN or public address are
25
+ * intentionally NOT loopback (F2).
26
+ */
27
+ export function isLoopbackHost(host) {
28
+ const h = normalizeHostForBind(host);
29
+ if (h === "localhost" || h === "::1")
30
+ return true;
31
+ if (isStrictIpv4(h))
32
+ return h.startsWith("127.");
33
+ if (h.startsWith("::ffff:")) {
34
+ const v4 = h.slice("::ffff:".length);
35
+ return isStrictIpv4(v4) && v4.startsWith("127.");
36
+ }
37
+ return false;
38
+ }
39
+ //# sourceMappingURL=net-host.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"net-host.js","sourceRoot":"","sources":["../src/net-host.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;AACzE,CAAC;AAED,8EAA8E;AAC9E,4EAA4E;AAC5E,6EAA6E;AAC7E,wBAAwB;AACxB,SAAS,YAAY,CAAC,CAAS;IAC7B,MAAM,CAAC,GAAG,8CAA8C,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IACrB,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACrC,IAAI,CAAC,KAAK,WAAW,IAAI,CAAC,KAAK,KAAK;QAAE,OAAO,IAAI,CAAC;IAClD,IAAI,YAAY,CAAC,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QACrC,OAAO,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -6,32 +6,20 @@ export declare const VaultId: z.ZodString;
6
6
  * and any ".." segment. Backslashes are tolerated on input and normalized by
7
7
  * the resolver; the byte-level guard stays conservative per G2.1.
8
8
  */
9
- export declare const VaultPath: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
9
+ export declare const VaultPath: z.ZodString;
10
10
  /** 32-char hex HITL elicit token (matches issueElicitToken: randomBytes(16).hex). */
11
11
  export declare const ElicitToken: z.ZodString;
12
12
  /** Cursor pagination inputs (G2.1 convention). */
13
13
  export declare const Pagination: z.ZodObject<{
14
14
  limit: z.ZodOptional<z.ZodNumber>;
15
15
  cursor: z.ZodOptional<z.ZodString>;
16
- }, "strip", z.ZodTypeAny, {
17
- limit?: number | undefined;
18
- cursor?: string | undefined;
19
- }, {
20
- limit?: number | undefined;
21
- cursor?: string | undefined;
22
- }>;
16
+ }, z.core.$strip>;
23
17
  export type PaginationInput = z.infer<typeof Pagination>;
24
18
  /** Shared write options. `idempotency_key` is accepted as a forward-compat
25
19
  * surface in M1 (replay lands with the Policy layer in a later milestone). */
26
20
  export declare const WriteOptions: z.ZodObject<{
27
21
  idempotency_key: z.ZodOptional<z.ZodString>;
28
22
  create_dirs: z.ZodDefault<z.ZodBoolean>;
29
- }, "strip", z.ZodTypeAny, {
30
- create_dirs: boolean;
31
- idempotency_key?: string | undefined;
32
- }, {
33
- idempotency_key?: string | undefined;
34
- create_dirs?: boolean | undefined;
35
- }>;
23
+ }, z.core.$strip>;
36
24
  export type WriteOptionsInput = z.infer<typeof WriteOptions>;
37
25
  //# sourceMappingURL=primitives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/schemas/primitives.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,yCAAyC;AACzC,eAAO,MAAM,OAAO,aAI0C,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,SAAS,yEAQnB,CAAC;AAEJ,qFAAqF;AACrF,eAAO,MAAM,WAAW,aAA+D,CAAC;AAExF,kDAAkD;AAClD,eAAO,MAAM,UAAU;;;;;;;;;EAGrB,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEzD;+EAC+E;AAC/E,eAAO,MAAM,YAAY;;;;;;;;;EAGvB,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"primitives.d.ts","sourceRoot":"","sources":["../../src/schemas/primitives.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,yCAAyC;AACzC,eAAO,MAAM,OAAO,aAI0C,CAAC;AAE/D;;;;GAIG;AACH,eAAO,MAAM,SAAS,aAQnB,CAAC;AAEJ,qFAAqF;AACrF,eAAO,MAAM,WAAW,aAA+D,CAAC;AAExF,kDAAkD;AAClD,eAAO,MAAM,UAAU;;;iBAGrB,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAC;AAEzD;+EAC+E;AAC/E,eAAO,MAAM,YAAY;;;iBAGvB,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}