@usecontextlayer/ctxs 0.5.19 → 0.5.20

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/cli.mjs CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="0754644f-54bd-56a7-9982-f7d23c77f345")}catch(e){}}();
3
+ !function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="f07e0a11-1747-5207-9a3b-ec0d57abd3ca")}catch(e){}}();
4
4
  import { createRequire } from "node:module";
5
5
  import * as Sentry from "@sentry/node";
6
6
  import * as fs$2 from "node:fs/promises";
@@ -744,7 +744,7 @@ const string$6 = (params) => {
744
744
  };
745
745
  const integer = /^-?\d+$/;
746
746
  const number$5 = /^-?\d+(?:\.\d+)?$/;
747
- const boolean$2 = /^(?:true|false)$/i;
747
+ const boolean$4 = /^(?:true|false)$/i;
748
748
  const _null$2 = /^null$/i;
749
749
  const lowercase$1 = /^[^A-Z]*$/;
750
750
  const uppercase$1 = /^[^a-z]*$/;
@@ -1544,9 +1544,9 @@ const $ZodNumberFormat = /*@__PURE__*/ $constructor$1("$ZodNumberFormat", (inst,
1544
1544
  $ZodCheckNumberFormat.init(inst, def);
1545
1545
  $ZodNumber.init(inst, def);
1546
1546
  });
1547
- const $ZodBoolean = /*@__PURE__*/ $constructor$1("$ZodBoolean", (inst, def) => {
1547
+ const $ZodBoolean$1 = /*@__PURE__*/ $constructor$1("$ZodBoolean", (inst, def) => {
1548
1548
  $ZodType$1.init(inst, def);
1549
- inst._zod.pattern = boolean$2;
1549
+ inst._zod.pattern = boolean$4;
1550
1550
  inst._zod.parse = (payload, _ctx) => {
1551
1551
  if (def.coerce) try {
1552
1552
  payload.value = Boolean(payload.value);
@@ -2812,7 +2812,7 @@ function _int(Class, params) {
2812
2812
  });
2813
2813
  }
2814
2814
  // @__NO_SIDE_EFFECTS__
2815
- function _boolean(Class, params) {
2815
+ function _boolean$1(Class, params) {
2816
2816
  return new Class({
2817
2817
  type: "boolean",
2818
2818
  ...normalizeParams$1(params)
@@ -3388,7 +3388,7 @@ const numberProcessor = (schema, ctx, _json, _params) => {
3388
3388
  else if (typeof maximum === "number") json.maximum = maximum;
3389
3389
  if (typeof multipleOf === "number") json.multipleOf = multipleOf;
3390
3390
  };
3391
- const booleanProcessor = (_schema, _ctx, json, _params) => {
3391
+ const booleanProcessor$1 = (_schema, _ctx, json, _params) => {
3392
3392
  json.type = "boolean";
3393
3393
  };
3394
3394
  const bigintProcessor = (_schema, ctx, _json, _params) => {
@@ -3718,7 +3718,7 @@ const lazyProcessor = (schema, ctx, _json, params) => {
3718
3718
  const allProcessors = {
3719
3719
  string: stringProcessor$1,
3720
3720
  number: numberProcessor,
3721
- boolean: booleanProcessor,
3721
+ boolean: booleanProcessor$1,
3722
3722
  bigint: bigintProcessor,
3723
3723
  symbol: symbolProcessor,
3724
3724
  null: nullProcessor,
@@ -4273,13 +4273,13 @@ const ZodNumberFormat = /*@__PURE__*/ $constructor$1("ZodNumberFormat", (inst, d
4273
4273
  function int(params) {
4274
4274
  return _int(ZodNumberFormat, params);
4275
4275
  }
4276
- const ZodBoolean$1 = /*@__PURE__*/ $constructor$1("ZodBoolean", (inst, def) => {
4277
- $ZodBoolean.init(inst, def);
4276
+ const ZodBoolean$2 = /*@__PURE__*/ $constructor$1("ZodBoolean", (inst, def) => {
4277
+ $ZodBoolean$1.init(inst, def);
4278
4278
  ZodType$2.init(inst, def);
4279
- inst._zod.processJSONSchema = (ctx, json, params) => booleanProcessor(inst, ctx, json, params);
4279
+ inst._zod.processJSONSchema = (ctx, json, params) => booleanProcessor$1(inst, ctx, json, params);
4280
4280
  });
4281
- function boolean$1(params) {
4282
- return _boolean(ZodBoolean$1, params);
4281
+ function boolean$3(params) {
4282
+ return _boolean$1(ZodBoolean$2, params);
4283
4283
  }
4284
4284
  const ZodNull$1 = /*@__PURE__*/ $constructor$1("ZodNull", (inst, def) => {
4285
4285
  $ZodNull.init(inst, def);
@@ -4410,7 +4410,7 @@ function object$4(shape, params) {
4410
4410
  ...normalizeParams$1(params)
4411
4411
  });
4412
4412
  }
4413
- function strictObject(shape, params) {
4413
+ function strictObject$1(shape, params) {
4414
4414
  return new ZodObject$2({
4415
4415
  type: "object",
4416
4416
  shape,
@@ -4788,7 +4788,7 @@ function normalizedKey(event) {
4788
4788
 
4789
4789
  //#endregion
4790
4790
  //#region package.json
4791
- var version$1 = "0.5.19";
4791
+ var version$1 = "0.5.20";
4792
4792
 
4793
4793
  //#endregion
4794
4794
  //#region sentry.ts
@@ -6537,6 +6537,7 @@ const string$1$1 = (params) => {
6537
6537
  return new RegExp(`^${regex}$`);
6538
6538
  };
6539
6539
  const number$2 = /^-?\d+(?:\.\d+)?$/;
6540
+ const boolean$1 = /^(?:true|false)$/i;
6540
6541
  const lowercase = /^[^A-Z]*$/;
6541
6542
  const uppercase = /^[^a-z]*$/;
6542
6543
  const $ZodCheck = /*@__PURE__*/ $constructor("$ZodCheck", (inst, def) => {
@@ -7160,6 +7161,24 @@ const $ZodJWT = /*@__PURE__*/ $constructor("$ZodJWT", (inst, def) => {
7160
7161
  });
7161
7162
  };
7162
7163
  });
7164
+ const $ZodBoolean = /*@__PURE__*/ $constructor("$ZodBoolean", (inst, def) => {
7165
+ $ZodType.init(inst, def);
7166
+ inst._zod.pattern = boolean$1;
7167
+ inst._zod.parse = (payload, _ctx) => {
7168
+ if (def.coerce) try {
7169
+ payload.value = Boolean(payload.value);
7170
+ } catch (_) {}
7171
+ const input = payload.value;
7172
+ if (typeof input === "boolean") return payload;
7173
+ payload.issues.push({
7174
+ expected: "boolean",
7175
+ code: "invalid_type",
7176
+ input,
7177
+ inst
7178
+ });
7179
+ return payload;
7180
+ };
7181
+ });
7163
7182
  const $ZodUnknown = /*@__PURE__*/ $constructor("$ZodUnknown", (inst, def) => {
7164
7183
  $ZodType.init(inst, def);
7165
7184
  inst._zod.parse = (payload) => payload;
@@ -8279,6 +8298,13 @@ function _isoDuration(Class, params) {
8279
8298
  });
8280
8299
  }
8281
8300
  // @__NO_SIDE_EFFECTS__
8301
+ function _boolean(Class, params) {
8302
+ return new Class({
8303
+ type: "boolean",
8304
+ ...normalizeParams(params)
8305
+ });
8306
+ }
8307
+ // @__NO_SIDE_EFFECTS__
8282
8308
  function _unknown(Class) {
8283
8309
  return new Class({ type: "unknown" });
8284
8310
  }
@@ -8756,6 +8782,9 @@ const stringProcessor = (schema, ctx, _json, _params) => {
8756
8782
  }))];
8757
8783
  }
8758
8784
  };
8785
+ const booleanProcessor = (_schema, _ctx, json, _params) => {
8786
+ json.type = "boolean";
8787
+ };
8759
8788
  const neverProcessor = (_schema, _ctx, json, _params) => {
8760
8789
  json.not = {};
8761
8790
  };
@@ -9341,6 +9370,14 @@ const ZodJWT = /*@__PURE__*/ $constructor("ZodJWT", (inst, def) => {
9341
9370
  $ZodJWT.init(inst, def);
9342
9371
  ZodStringFormat.init(inst, def);
9343
9372
  });
9373
+ const ZodBoolean$1 = /*@__PURE__*/ $constructor("ZodBoolean", (inst, def) => {
9374
+ $ZodBoolean.init(inst, def);
9375
+ ZodType$1.init(inst, def);
9376
+ inst._zod.processJSONSchema = (ctx, json, params) => booleanProcessor(inst, ctx, json, params);
9377
+ });
9378
+ function boolean$2(params) {
9379
+ return /* @__PURE__ */ _boolean(ZodBoolean$1, params);
9380
+ }
9344
9381
  const ZodUnknown$1 = /*@__PURE__*/ $constructor("ZodUnknown", (inst, def) => {
9345
9382
  $ZodUnknown.init(inst, def);
9346
9383
  ZodType$1.init(inst, def);
@@ -9454,6 +9491,14 @@ function object$3(shape, params) {
9454
9491
  ...normalizeParams(params)
9455
9492
  });
9456
9493
  }
9494
+ function strictObject(shape, params) {
9495
+ return new ZodObject$1({
9496
+ type: "object",
9497
+ shape,
9498
+ catchall: never(),
9499
+ ...normalizeParams(params)
9500
+ });
9501
+ }
9457
9502
  const ZodUnion$1 = /*@__PURE__*/ $constructor("ZodUnion", (inst, def) => {
9458
9503
  $ZodUnion.init(inst, def);
9459
9504
  ZodType$1.init(inst, def);
@@ -9779,94 +9824,101 @@ function superRefine(fn, params) {
9779
9824
  }
9780
9825
  },
9781
9826
  root: "detail"
9782
- } }, null, " ")}`, `${JSON.stringify({ render: {
9783
- elements: {
9784
- freshness: {
9785
- props: {
9786
- text: { $concat: ["Updated ", { $relativeDate: {
9787
- now: { $state: "/now" },
9788
- value: { $maxBy: {
9789
- field: "last_updated",
9790
- items: { $state: "/items" }
9791
- } }
9792
- } }] },
9793
- variant: "muted"
9827
+ } }, null, " ")}`, `${JSON.stringify({
9828
+ defaultWorkspaceView: true,
9829
+ render: {
9830
+ elements: {
9831
+ freshness: {
9832
+ props: {
9833
+ text: { $concat: ["Updated ", { $relativeDate: {
9834
+ now: { $state: "/now" },
9835
+ value: { $maxBy: {
9836
+ field: "last_updated",
9837
+ items: { $state: "/items" }
9838
+ } }
9839
+ } }] },
9840
+ variant: "muted"
9841
+ },
9842
+ type: "Text",
9843
+ visible: { $state: "/items/0" }
9794
9844
  },
9795
- type: "Text",
9796
- visible: { $state: "/items/0" }
9797
- },
9798
- page: {
9799
- children: ["freshness", "table"],
9800
- props: {
9801
- align: "stretch",
9802
- className: "p-8",
9803
- direction: "vertical",
9804
- gap: "md"
9845
+ page: {
9846
+ children: ["freshness", "table"],
9847
+ props: {
9848
+ align: "stretch",
9849
+ className: "p-8",
9850
+ direction: "vertical",
9851
+ gap: "md"
9852
+ },
9853
+ type: "Stack"
9805
9854
  },
9806
- type: "Stack"
9807
- },
9808
- table: {
9809
- props: {
9810
- columns: [
9811
- {
9812
- key: "client",
9813
- label: "Client",
9814
- variant: "strong",
9815
- width: 15
9816
- },
9817
- {
9818
- key: "title",
9819
- label: "Update",
9820
- truncate: true,
9821
- width: 35
9822
- },
9823
- {
9824
- component: "badge",
9825
- key: "kind",
9826
- label: "Kind",
9827
- variantOverride: {
9828
- call: "outline",
9829
- followup: "warning",
9830
- release: "success"
9855
+ table: {
9856
+ props: {
9857
+ columns: [
9858
+ {
9859
+ key: "client",
9860
+ label: "Client",
9861
+ variant: "strong",
9862
+ width: 15
9831
9863
  },
9832
- width: 12
9833
- },
9834
- {
9835
- component: "badge",
9836
- key: "lane",
9837
- label: "Lane",
9838
- truncate: true,
9839
- variantOverride: { "Needs a lane": "warning" },
9840
- width: 25
9864
+ {
9865
+ key: "title",
9866
+ label: "Update",
9867
+ truncate: true,
9868
+ width: 35
9869
+ },
9870
+ {
9871
+ component: "badge",
9872
+ key: "kind",
9873
+ label: "Kind",
9874
+ variantOverride: {
9875
+ call: "outline",
9876
+ followup: "warning",
9877
+ release: "success"
9878
+ },
9879
+ width: 12
9880
+ },
9881
+ {
9882
+ component: "badge",
9883
+ key: "lane",
9884
+ label: "Lane",
9885
+ truncate: true,
9886
+ variantOverride: { "Needs a lane": "warning" },
9887
+ width: 25
9888
+ },
9889
+ {
9890
+ key: "occurred_on",
9891
+ label: "Activity",
9892
+ type: "date",
9893
+ variant: "muted",
9894
+ width: 13
9895
+ }
9896
+ ],
9897
+ emptyText: "No updates match",
9898
+ filterable: ["kind", "client"],
9899
+ groupable: [
9900
+ "lane",
9901
+ "client",
9902
+ "kind"
9903
+ ],
9904
+ initialSort: {
9905
+ desc: true,
9906
+ key: "occurred_on"
9841
9907
  },
9842
- {
9843
- key: "occurred_on",
9844
- label: "Activity",
9845
- type: "date",
9846
- variant: "muted",
9847
- width: 13
9848
- }
9849
- ],
9850
- emptyText: "No updates match",
9851
- filterable: ["kind", "client"],
9852
- groupable: [
9853
- "lane",
9854
- "client",
9855
- "kind"
9856
- ],
9857
- initialSort: {
9858
- desc: true,
9859
- key: "occurred_on"
9908
+ rowLink: "path",
9909
+ rows: { $state: "/items" }
9860
9910
  },
9861
- rowLink: "path",
9862
- rows: { $state: "/items" }
9863
- },
9864
- type: "Table"
9865
- }
9866
- },
9867
- root: "page"
9868
- } }, null, " ")}`;
9911
+ type: "Table"
9912
+ }
9913
+ },
9914
+ root: "page"
9915
+ }
9916
+ }, null, " ")}`;
9869
9917
  string$4().min(1, "a doc path must be non-empty").refine((docPath) => !docPath.startsWith("/"), { message: "a doc path must be root-relative, not absolute" }).refine((docPath) => !docPath.split("/").includes(".."), { message: "a doc path must not contain a '..' segment" });
9918
+ strictObject({
9919
+ params: record$1(string$4().min(1), strictObject({ default: string$4().min(1) })).optional(),
9920
+ render: unknown$2().refine((value) => value !== void 0, "render is required")
9921
+ }).extend({ defaultWorkspaceView: boolean$2().optional() });
9870
9922
  const segmentSchema$1 = string$4().min(1, "a repoId segment must be non-empty").refine((s) => s !== "." && s !== ".." && !s.includes("/"), { message: "a repoId segment must not be '.'/'..' or contain '/'" });
9871
9923
  function segment$1(value, label) {
9872
9924
  const result = segmentSchema$1.safeParse(value);
@@ -12861,18 +12913,18 @@ let logging$1;
12861
12913
 
12862
12914
  //#endregion
12863
12915
  //#region ../base-schemas/dist/index.mjs
12864
- const apiKeyAuthSchema = strictObject({
12916
+ const apiKeyAuthSchema = strictObject$1({
12865
12917
  api_key: string$5().trim().min(1),
12866
12918
  type: literal("api_key")
12867
12919
  }).meta({ title: "ApiKeyAuth" });
12868
- const authenticatedAccountRefSchema = strictObject({
12920
+ const authenticatedAccountRefSchema = strictObject$1({
12869
12921
  account_id: string$5().trim().min(1),
12870
12922
  provider_id: string$5().trim().min(1),
12871
12923
  type: literal("authenticated_account")
12872
12924
  }).meta({ title: "AuthenticatedAccountRef" });
12873
12925
  const authenticatedAccountIdentitySchema = authenticatedAccountRefSchema.omit({ type: true }).meta({ title: "AuthenticatedAccountIdentity" });
12874
- const bindingAuthNoneSchema = strictObject({ type: literal("none") }).meta({ title: "BindingAuthNone" });
12875
- const clientCredentialsAuthSchema = strictObject({
12926
+ const bindingAuthNoneSchema = strictObject$1({ type: literal("none") }).meta({ title: "BindingAuthNone" });
12927
+ const clientCredentialsAuthSchema = strictObject$1({
12876
12928
  client_id: string$5().trim().min(1),
12877
12929
  client_secret: string$5().trim().min(1),
12878
12930
  type: literal("client_credentials")
@@ -12887,11 +12939,11 @@ const MODES = ["dagster"];
12887
12939
  const modeSchema = _enum$1(MODES);
12888
12940
  const generatedAtSchema = string$5().datetime({ offset: true });
12889
12941
  const bindingModelNameSchema = string$5().trim().min(1).meta({ title: "BindingModelName" });
12890
- const bindingModelsSchema = strictObject({
12942
+ const bindingModelsSchema = strictObject$1({
12891
12943
  active: array$1(bindingModelNameSchema).optional(),
12892
12944
  filter: string$5().trim().min(1).describe("DEPRECATED — unused, retained dormant. A `<path.py>:<callable>` row-filter ref; no binding sets it and per-row filtering is unwired. Use `active` for stream selection.").optional()
12893
12945
  }).meta({ title: "BindingModels" });
12894
- const dagsterAllPlanBindingSchema = strictObject({
12946
+ const dagsterAllPlanBindingSchema = strictObject$1({
12895
12947
  auth: bindingAuthSchema,
12896
12948
  binding_id: string$5().uuid(),
12897
12949
  config: record$2(string$5(), unknown$3()),
@@ -12899,7 +12951,7 @@ const dagsterAllPlanBindingSchema = strictObject({
12899
12951
  models: bindingModelsSchema.optional(),
12900
12952
  plugin_id: string$5().trim().min(1)
12901
12953
  }).meta({ title: "PlanBinding" }).extend({ mode: literal("dagster") }).meta({ title: "DagsterAllPlanBinding" });
12902
- const dagsterBindingPlanAllSchema = strictObject({
12954
+ const dagsterBindingPlanAllSchema = strictObject$1({
12903
12955
  bindings: array$1(dagsterAllPlanBindingSchema),
12904
12956
  generated_at: generatedAtSchema,
12905
12957
  version: literal(1)
@@ -12908,7 +12960,7 @@ const dagsterPluginPlanBindingSchema = dagsterAllPlanBindingSchema.omit({
12908
12960
  mode: true,
12909
12961
  plugin_id: true
12910
12962
  }).meta({ title: "DagsterPluginPlanBinding" });
12911
- const dagsterBindingPlanPluginSchema = strictObject({
12963
+ const dagsterBindingPlanPluginSchema = strictObject$1({
12912
12964
  bindings: array$1(dagsterPluginPlanBindingSchema),
12913
12965
  generated_at: generatedAtSchema,
12914
12966
  mode: literal("dagster"),
@@ -12928,22 +12980,22 @@ const RUN_STATUSES = [
12928
12980
  ];
12929
12981
  const runStatusSchema = _enum$1(RUN_STATUSES).meta({ title: "RunStatus" });
12930
12982
  const stateTimestampSchema = string$5().datetime({ offset: true });
12931
- const bindingStateSchema = strictObject({
12983
+ const bindingStateSchema = strictObject$1({
12932
12984
  frontier: stateTimestampSchema.nullable(),
12933
12985
  last_run: stateTimestampSchema.nullable(),
12934
12986
  last_run_status: union$2([runStatusSchema, _null()]),
12935
12987
  plugin_id: string$5().trim().min(1)
12936
12988
  }).meta({ title: "BindingState" });
12937
- const bindingStateResponseSchema = strictObject({
12989
+ const bindingStateResponseSchema = strictObject$1({
12938
12990
  bindings: record$2(string$5().uuid(), bindingStateSchema),
12939
12991
  version: literal(1)
12940
12992
  }).meta({ title: "BindingStateResponse" });
12941
- const pluginAuthNoneSchema = strictObject({ type: literal("none") }).meta({ title: "PluginAuthNone" });
12942
- const pluginAuthApiKeySchema = strictObject({ type: literal("api_key") }).meta({ title: "PluginAuthApiKey" });
12943
- const pluginAuthClientCredentialsSchema = strictObject({ type: literal("client_credentials") }).meta({ title: "PluginAuthClientCredentials" });
12944
- const pluginOAuthSchema = strictObject({
12993
+ const pluginAuthNoneSchema = strictObject$1({ type: literal("none") }).meta({ title: "PluginAuthNone" });
12994
+ const pluginAuthApiKeySchema = strictObject$1({ type: literal("api_key") }).meta({ title: "PluginAuthApiKey" });
12995
+ const pluginAuthClientCredentialsSchema = strictObject$1({ type: literal("client_credentials") }).meta({ title: "PluginAuthClientCredentials" });
12996
+ const pluginOAuthSchema = strictObject$1({
12945
12997
  provider_id: string$5().trim().min(1),
12946
- requires_oauth_app_id: boolean$1().optional(),
12998
+ requires_oauth_app_id: boolean$3().optional(),
12947
12999
  scopes: array$1(string$5().trim().min(1)),
12948
13000
  type: literal("oauth")
12949
13001
  }).meta({ title: "PluginOAuth" });
@@ -12953,21 +13005,21 @@ const pluginAuthSchema = discriminatedUnion("type", [
12953
13005
  pluginAuthClientCredentialsSchema,
12954
13006
  pluginOAuthSchema
12955
13007
  ]).meta({ title: "PluginAuth" });
12956
- const pluginMcpEnabledToolSchema = strictObject({ autoAllow: boolean$1().optional() });
13008
+ const pluginMcpEnabledToolSchema = strictObject$1({ autoAllow: boolean$3().optional() });
12957
13009
  const pluginMcpEnabledToolsSchema = record$2(string$5().min(1), pluginMcpEnabledToolSchema).refine((tools) => Object.keys(tools).length > 0, { message: "enabledTools must declare at least one tool" }).meta({ title: "PluginMcpEnabledTools" });
12958
- const pluginMcpHttpServerSchema = strictObject({
13010
+ const pluginMcpHttpServerSchema = strictObject$1({
12959
13011
  enabledTools: pluginMcpEnabledToolsSchema,
12960
13012
  type: literal("http"),
12961
13013
  url: url()
12962
13014
  }).meta({ title: "PluginMcpHttpServer" });
12963
- const pluginMcpModuleServerSchema = strictObject({
13015
+ const pluginMcpModuleServerSchema = strictObject$1({
12964
13016
  enabledTools: pluginMcpEnabledToolsSchema,
12965
13017
  module: string$5().trim().min(1),
12966
13018
  type: literal("module")
12967
13019
  }).meta({ title: "PluginMcpModuleServer" });
12968
13020
  const pluginMcpServerSchema = discriminatedUnion("type", [pluginMcpHttpServerSchema, pluginMcpModuleServerSchema]).meta({ title: "PluginMcpServer" });
12969
13021
  const mcpServerNameSchema = string$5().regex(/^[a-z0-9]+(?:_[a-z0-9]+)*$/);
12970
- const pluginManifestSchema = strictObject({
13022
+ const pluginManifestSchema = strictObject$1({
12971
13023
  auth: pluginAuthSchema,
12972
13024
  mcpServers: record$2(mcpServerNameSchema, pluginMcpServerSchema).optional(),
12973
13025
  mode: modeSchema,
@@ -14749,95 +14801,103 @@ export default async ({ docs }) => {
14749
14801
  return { items }
14750
14802
  }
14751
14803
  `,
14752
- "docs/views/inbox.render-spec.json": `${JSON.stringify({ render: {
14753
- elements: {
14754
- freshness: {
14755
- props: {
14756
- text: { $concat: ["Updated ", { $relativeDate: {
14757
- now: { $state: "/now" },
14758
- value: { $maxBy: {
14759
- field: "last_updated",
14760
- items: { $state: "/items" }
14761
- } }
14762
- } }] },
14763
- variant: "muted"
14804
+ "docs/views/inbox.render-spec.json": `${JSON.stringify({
14805
+ defaultWorkspaceView: true,
14806
+ render: {
14807
+ elements: {
14808
+ freshness: {
14809
+ props: {
14810
+ text: { $concat: ["Updated ", { $relativeDate: {
14811
+ now: { $state: "/now" },
14812
+ value: { $maxBy: {
14813
+ field: "last_updated",
14814
+ items: { $state: "/items" }
14815
+ } }
14816
+ } }] },
14817
+ variant: "muted"
14818
+ },
14819
+ type: "Text",
14820
+ visible: { $state: "/items/0" }
14764
14821
  },
14765
- type: "Text",
14766
- visible: { $state: "/items/0" }
14767
- },
14768
- page: {
14769
- children: ["freshness", "table"],
14770
- props: {
14771
- align: "stretch",
14772
- className: "p-8",
14773
- direction: "vertical",
14774
- gap: "md"
14822
+ page: {
14823
+ children: ["freshness", "table"],
14824
+ props: {
14825
+ align: "stretch",
14826
+ className: "p-8",
14827
+ direction: "vertical",
14828
+ gap: "md"
14829
+ },
14830
+ type: "Stack"
14775
14831
  },
14776
- type: "Stack"
14777
- },
14778
- table: {
14779
- props: {
14780
- columns: [
14781
- {
14782
- key: "client",
14783
- label: "Client",
14784
- variant: "strong",
14785
- width: 15
14786
- },
14787
- {
14788
- key: "title",
14789
- label: "Update",
14790
- truncate: true,
14791
- width: 35
14792
- },
14793
- {
14794
- component: "badge",
14795
- key: "kind",
14796
- label: "Kind",
14797
- variantOverride: {
14798
- call: "outline",
14799
- followup: "warning",
14800
- release: "success"
14832
+ table: {
14833
+ props: {
14834
+ columns: [
14835
+ {
14836
+ key: "client",
14837
+ label: "Client",
14838
+ variant: "strong",
14839
+ width: 15
14801
14840
  },
14802
- width: 12
14803
- },
14804
- {
14805
- component: "badge",
14806
- key: "lane",
14807
- label: "Lane",
14808
- truncate: true,
14809
- variantOverride: { "Needs a lane": "warning" },
14810
- width: 25
14841
+ {
14842
+ key: "title",
14843
+ label: "Update",
14844
+ truncate: true,
14845
+ width: 35
14846
+ },
14847
+ {
14848
+ component: "badge",
14849
+ key: "kind",
14850
+ label: "Kind",
14851
+ variantOverride: {
14852
+ call: "outline",
14853
+ followup: "warning",
14854
+ release: "success"
14855
+ },
14856
+ width: 12
14857
+ },
14858
+ {
14859
+ component: "badge",
14860
+ key: "lane",
14861
+ label: "Lane",
14862
+ truncate: true,
14863
+ variantOverride: { "Needs a lane": "warning" },
14864
+ width: 25
14865
+ },
14866
+ {
14867
+ key: "occurred_on",
14868
+ label: "Activity",
14869
+ type: "date",
14870
+ variant: "muted",
14871
+ width: 13
14872
+ }
14873
+ ],
14874
+ emptyText: "No updates match",
14875
+ filterable: ["kind", "client"],
14876
+ groupable: [
14877
+ "lane",
14878
+ "client",
14879
+ "kind"
14880
+ ],
14881
+ initialSort: {
14882
+ desc: true,
14883
+ key: "occurred_on"
14811
14884
  },
14812
- {
14813
- key: "occurred_on",
14814
- label: "Activity",
14815
- type: "date",
14816
- variant: "muted",
14817
- width: 13
14818
- }
14819
- ],
14820
- emptyText: "No updates match",
14821
- filterable: ["kind", "client"],
14822
- groupable: [
14823
- "lane",
14824
- "client",
14825
- "kind"
14826
- ],
14827
- initialSort: {
14828
- desc: true,
14829
- key: "occurred_on"
14885
+ rowLink: "path",
14886
+ rows: { $state: "/items" }
14830
14887
  },
14831
- rowLink: "path",
14832
- rows: { $state: "/items" }
14833
- },
14834
- type: "Table"
14835
- }
14836
- },
14837
- root: "page"
14838
- } }, null, " ")}\n`
14888
+ type: "Table"
14889
+ }
14890
+ },
14891
+ root: "page"
14892
+ }
14893
+ }, null, " ")}\n`
14839
14894
  };
14840
14895
  const docPathSchema = string$5().min(1, "a doc path must be non-empty").refine((docPath) => !docPath.startsWith("/"), { message: "a doc path must be root-relative, not absolute" }).refine((docPath) => !docPath.split("/").includes(".."), { message: "a doc path must not contain a '..' segment" });
14896
+ const renderSpecSchema = strictObject$1({
14897
+ params: record$2(string$5().min(1), strictObject$1({ default: string$5().min(1) })).optional(),
14898
+ render: unknown$3().refine((value) => value !== void 0, "render is required")
14899
+ });
14900
+ const viewRenderSpecSchema = renderSpecSchema.extend({ defaultWorkspaceView: boolean$3().optional() });
14841
14901
  const segmentSchema = string$5().min(1, "a repoId segment must be non-empty").refine((s) => s !== "." && s !== ".." && !s.includes("/"), { message: "a repoId segment must not be '.'/'..' or contain '/'" });
14842
14902
  function segment(value, label) {
14843
14903
  const result = segmentSchema.safeParse(value);
@@ -39699,7 +39759,10 @@ const WorkspacePlan = object$1({
39699
39759
  synthesizerImage: property("synthesizer_image", string$2()),
39700
39760
  tick: string$2()
39701
39761
  });
39702
- const WorkspaceViews = object$1({ views: list$1(string$2()) });
39762
+ const WorkspaceViews = object$1({
39763
+ defaultViews: list$1(string$2()),
39764
+ views: list$1(string$2())
39765
+ });
39703
39766
  var PlanClient = class {
39704
39767
  _options;
39705
39768
  constructor(options) {
@@ -40398,10 +40461,10 @@ const OAuthProtectedResourceMetadataSchema = looseObject({
40398
40461
  resource_documentation: string$5().optional(),
40399
40462
  resource_policy_uri: string$5().url().optional(),
40400
40463
  resource_tos_uri: string$5().url().optional(),
40401
- tls_client_certificate_bound_access_tokens: boolean$1().optional(),
40464
+ tls_client_certificate_bound_access_tokens: boolean$3().optional(),
40402
40465
  authorization_details_types_supported: array$1(string$5()).optional(),
40403
40466
  dpop_signing_alg_values_supported: array$1(string$5()).optional(),
40404
- dpop_bound_access_tokens_required: boolean$1().optional()
40467
+ dpop_bound_access_tokens_required: boolean$3().optional()
40405
40468
  });
40406
40469
  /**
40407
40470
  * RFC 8414 OAuth 2.0 Authorization Server Metadata
@@ -40425,7 +40488,7 @@ const OAuthMetadataSchema = looseObject({
40425
40488
  introspection_endpoint_auth_methods_supported: array$1(string$5()).optional(),
40426
40489
  introspection_endpoint_auth_signing_alg_values_supported: array$1(string$5()).optional(),
40427
40490
  code_challenge_methods_supported: array$1(string$5()).optional(),
40428
- client_id_metadata_document_supported: boolean$1().optional()
40491
+ client_id_metadata_document_supported: boolean$3().optional()
40429
40492
  });
40430
40493
  /**
40431
40494
  * OpenID Connect Discovery 1.0 Provider Metadata
@@ -40461,13 +40524,13 @@ const OpenIdProviderMetadataSchema = looseObject({
40461
40524
  service_documentation: string$5().optional(),
40462
40525
  claims_locales_supported: array$1(string$5()).optional(),
40463
40526
  ui_locales_supported: array$1(string$5()).optional(),
40464
- claims_parameter_supported: boolean$1().optional(),
40465
- request_parameter_supported: boolean$1().optional(),
40466
- request_uri_parameter_supported: boolean$1().optional(),
40467
- require_request_uri_registration: boolean$1().optional(),
40527
+ claims_parameter_supported: boolean$3().optional(),
40528
+ request_parameter_supported: boolean$3().optional(),
40529
+ request_uri_parameter_supported: boolean$3().optional(),
40530
+ require_request_uri_registration: boolean$3().optional(),
40468
40531
  op_policy_uri: SafeUrlSchema.optional(),
40469
40532
  op_tos_uri: SafeUrlSchema.optional(),
40470
- client_id_metadata_document_supported: boolean$1().optional()
40533
+ client_id_metadata_document_supported: boolean$3().optional()
40471
40534
  });
40472
40535
  /**
40473
40536
  * OpenID Connect Discovery metadata that may include OAuth 2.0 fields
@@ -40935,7 +40998,7 @@ const ImplementationSchema = BaseMetadataSchema.extend({
40935
40998
  */
40936
40999
  description: string$5().optional()
40937
41000
  });
40938
- const FormElicitationCapabilitySchema = intersection$1(object$4({ applyDefaults: boolean$1().optional() }), record$2(string$5(), unknown$3()));
41001
+ const FormElicitationCapabilitySchema = intersection$1(object$4({ applyDefaults: boolean$3().optional() }), record$2(string$5(), unknown$3()));
40939
41002
  const ElicitationCapabilitySchema = preprocess$1((value) => {
40940
41003
  if (value && typeof value === "object" && !Array.isArray(value)) {
40941
41004
  if (Object.keys(value).length === 0) return { form: {} };
@@ -41025,7 +41088,7 @@ const ClientCapabilitiesSchema = object$4({
41025
41088
  /**
41026
41089
  * Whether the client supports issuing notifications for changes to the roots list.
41027
41090
  */
41028
- listChanged: boolean$1().optional() }).optional(),
41091
+ listChanged: boolean$3().optional() }).optional(),
41029
41092
  /**
41030
41093
  * Present if the client supports task creation.
41031
41094
  */
@@ -41074,7 +41137,7 @@ const ServerCapabilitiesSchema = object$4({
41074
41137
  /**
41075
41138
  * Whether this server supports issuing notifications for changes to the prompt list.
41076
41139
  */
41077
- listChanged: boolean$1().optional() }).optional(),
41140
+ listChanged: boolean$3().optional() }).optional(),
41078
41141
  /**
41079
41142
  * Present if the server offers any resources to read.
41080
41143
  */
@@ -41082,11 +41145,11 @@ listChanged: boolean$1().optional() }).optional(),
41082
41145
  /**
41083
41146
  * Whether this server supports clients subscribing to resource updates.
41084
41147
  */
41085
- subscribe: boolean$1().optional(),
41148
+ subscribe: boolean$3().optional(),
41086
41149
  /**
41087
41150
  * Whether this server supports issuing notifications for changes to the resource list.
41088
41151
  */
41089
- listChanged: boolean$1().optional()
41152
+ listChanged: boolean$3().optional()
41090
41153
  }).optional(),
41091
41154
  /**
41092
41155
  * Present if the server offers any tools to call.
@@ -41095,7 +41158,7 @@ listChanged: boolean$1().optional() }).optional(),
41095
41158
  /**
41096
41159
  * Whether this server supports issuing notifications for changes to the tool list.
41097
41160
  */
41098
- listChanged: boolean$1().optional() }).optional(),
41161
+ listChanged: boolean$3().optional() }).optional(),
41099
41162
  /**
41100
41163
  * Present if the server supports task creation.
41101
41164
  */
@@ -41494,7 +41557,7 @@ const PromptArgumentSchema = object$4({
41494
41557
  /**
41495
41558
  * Whether this argument must be provided.
41496
41559
  */
41497
- required: optional$3(boolean$1())
41560
+ required: optional$3(boolean$3())
41498
41561
  });
41499
41562
  /**
41500
41563
  * A prompt or prompt template that the server offers.
@@ -41712,7 +41775,7 @@ const ToolAnnotationsSchema = object$4({
41712
41775
  *
41713
41776
  * Default: false
41714
41777
  */
41715
- readOnlyHint: boolean$1().optional(),
41778
+ readOnlyHint: boolean$3().optional(),
41716
41779
  /**
41717
41780
  * If true, the tool may perform destructive updates to its environment.
41718
41781
  * If false, the tool performs only additive updates.
@@ -41721,7 +41784,7 @@ const ToolAnnotationsSchema = object$4({
41721
41784
  *
41722
41785
  * Default: true
41723
41786
  */
41724
- destructiveHint: boolean$1().optional(),
41787
+ destructiveHint: boolean$3().optional(),
41725
41788
  /**
41726
41789
  * If true, calling the tool repeatedly with the same arguments
41727
41790
  * will have no additional effect on the its environment.
@@ -41730,7 +41793,7 @@ const ToolAnnotationsSchema = object$4({
41730
41793
  *
41731
41794
  * Default: false
41732
41795
  */
41733
- idempotentHint: boolean$1().optional(),
41796
+ idempotentHint: boolean$3().optional(),
41734
41797
  /**
41735
41798
  * If true, this tool may interact with an "open world" of external
41736
41799
  * entities. If false, the tool's domain of interaction is closed.
@@ -41739,7 +41802,7 @@ const ToolAnnotationsSchema = object$4({
41739
41802
  *
41740
41803
  * Default: true
41741
41804
  */
41742
- openWorldHint: boolean$1().optional()
41805
+ openWorldHint: boolean$3().optional()
41743
41806
  });
41744
41807
  /**
41745
41808
  * Execution-related properties for a tool.
@@ -41840,7 +41903,7 @@ const CallToolResultSchema = ResultSchema.extend({
41840
41903
  * server does not support tool calls, or any other exceptional conditions,
41841
41904
  * should be reported as an MCP error response.
41842
41905
  */
41843
- isError: boolean$1().optional()
41906
+ isError: boolean$3().optional()
41844
41907
  });
41845
41908
  /**
41846
41909
  * CallToolResultSchema extended with backwards compatibility to protocol version 2024-10-07.
@@ -41886,7 +41949,7 @@ const ListChangedOptionsBaseSchema = object$4({
41886
41949
  *
41887
41950
  * @default true
41888
41951
  */
41889
- autoRefresh: boolean$1().default(true),
41952
+ autoRefresh: boolean$3().default(true),
41890
41953
  /**
41891
41954
  * Debounce time in milliseconds for list changed notification processing.
41892
41955
  *
@@ -42002,7 +42065,7 @@ const ToolResultContentSchema = object$4({
42002
42065
  toolUseId: string$5().describe("The unique identifier for the corresponding tool call."),
42003
42066
  content: array$1(ContentBlockSchema).default([]),
42004
42067
  structuredContent: object$4({}).loose().optional(),
42005
- isError: boolean$1().optional(),
42068
+ isError: boolean$3().optional(),
42006
42069
  /**
42007
42070
  * See [MCP specification](https://github.com/modelcontextprotocol/modelcontextprotocol/blob/47339c03c143bb4ec01a26e721a1b8fe66634ebe/docs/specification/draft/basic/index.mdx#general-fields)
42008
42071
  * for notes on _meta usage.
@@ -42167,7 +42230,7 @@ const BooleanSchemaSchema = object$4({
42167
42230
  type: literal("boolean"),
42168
42231
  title: string$5().optional(),
42169
42232
  description: string$5().optional(),
42170
- default: boolean$1().optional()
42233
+ default: boolean$3().optional()
42171
42234
  });
42172
42235
  /**
42173
42236
  * Primitive schema definition for string fields.
@@ -42386,7 +42449,7 @@ const ElicitResultSchema = ResultSchema.extend({
42386
42449
  content: preprocess$1((val) => val === null ? void 0 : val, record$2(string$5(), union$2([
42387
42450
  string$5(),
42388
42451
  number$4(),
42389
- boolean$1(),
42452
+ boolean$3(),
42390
42453
  array$1(string$5())
42391
42454
  ])).optional())
42392
42455
  });
@@ -42462,7 +42525,7 @@ const CompleteResultSchema = ResultSchema.extend({ completion: looseObject({
42462
42525
  /**
42463
42526
  * Indicates whether there are additional completion options beyond those provided in the current response, even if the exact total is unknown.
42464
42527
  */
42465
- hasMore: optional$3(boolean$1())
42528
+ hasMore: optional$3(boolean$3())
42466
42529
  }) });
42467
42530
  /**
42468
42531
  * Represents a root directory or file that the server can operate on.
@@ -58901,7 +58964,7 @@ function createScheduleApiClient(config) {
58901
58964
  })
58902
58965
  };
58903
58966
  }
58904
- const SERVER_VERSION = "0.5.19";
58967
+ const SERVER_VERSION = "0.5.20";
58905
58968
  /** The most operations one OperationSet will carry. The service's own ceiling. */
58906
58969
  const MAX_OPERATIONS = 200;
58907
58970
  /**
@@ -58915,7 +58978,7 @@ const MAX_OPERATIONS = 200;
58915
58978
  * here silently fails every real write at argument validation. `guid()` still
58916
58979
  * enforces the 8-4-4-4-12 shape. Do not tighten.
58917
58980
  */
58918
- const existing = (what, idColumn) => strictObject({
58981
+ const existing = (what, idColumn) => strictObject$1({
58919
58982
  id: guid$1().describe(`${what} GUID from the synced Postgres tables (${idColumn})`),
58920
58983
  name: string$5().min(1).describe(`${what} name, for the human approving this action`)
58921
58984
  });
@@ -58927,13 +58990,13 @@ const existing = (what, idColumn) => strictObject({
58927
58990
  * model to mint GUIDs and keep them unique, the caller names the new record and this
58928
58991
  * file mints the id — returning the mapping in the receipt.
58929
58992
  */
58930
- const pending = strictObject({ ref: string$5().min(1).describe("The `ref` of a record created in this same submission — how a task names a bucket that does not exist yet") });
58993
+ const pending = strictObject$1({ ref: string$5().min(1).describe("The `ref` of a record created in this same submission — how a task names a bucket that does not exist yet") });
58931
58994
  const reference = (what, idColumn) => union$2([existing(what, idColumn), pending]);
58932
58995
  /** Require a full UTC timestamp because date-only input can land on a different working day. */
58933
58996
  const instant = datetime$2().regex(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?Z$/, "must be a full UTC timestamp like 2026-08-28T17:00:00Z — a bare date is read as midnight and lands on the previous working day");
58934
58997
  const taskRef = () => reference("task", "msdyn_projecttaskid");
58935
58998
  const bucketRef = () => reference("bucket", "msdyn_projectbucketid");
58936
- const taskCreate = strictObject({
58999
+ const taskCreate = strictObject$1({
58937
59000
  bucket: bucketRef().describe("The bucket the task goes in"),
58938
59001
  description: string$5().optional().describe("Body text for the task, shown under its name"),
58939
59002
  finish: instant.optional().describe("When the task is due"),
@@ -58945,23 +59008,23 @@ const taskCreate = strictObject({
58945
59008
  ref: string$5().min(1).optional().describe("Name this task so other operations here can reference it, and so the receipt returns its id"),
58946
59009
  start: instant.optional().describe("When work on the task starts")
58947
59010
  });
58948
- const bucketCreate = strictObject({
59011
+ const bucketCreate = strictObject$1({
58949
59012
  kind: literal("bucket"),
58950
59013
  name: string$5().min(1).describe("The new bucket's name"),
58951
59014
  ref: string$5().min(1).optional().describe("Name this bucket so tasks in this same submission can go into it")
58952
59015
  });
58953
- const taskLabelCreate = strictObject({
59016
+ const taskLabelCreate = strictObject$1({
58954
59017
  kind: literal("task_label"),
58955
59018
  label: existing("label", "msdyn_projectlabelid").describe("The label to put on the task"),
58956
59019
  task: taskRef().describe("The task getting the label")
58957
59020
  });
58958
- const assignmentCreate = strictObject({
59021
+ const assignmentCreate = strictObject$1({
58959
59022
  kind: literal("assignment"),
58960
59023
  member: existing("project team member", "msdyn_projectteamid").describe("The team member to assign, from msdyn_projectteams"),
58961
59024
  name: string$5().min(1).describe("A label for the assignment, shown on the approval card"),
58962
59025
  task: taskRef().describe("The task to assign. A task that has subtasks CANNOT be assigned to — the service refuses it.")
58963
59026
  });
58964
- const taskUpdate = strictObject({
59027
+ const taskUpdate = strictObject$1({
58965
59028
  bucket: bucketRef().optional().describe("Move the task to this bucket, in the same project"),
58966
59029
  description: string$5().optional(),
58967
59030
  duration: number$4().optional().describe("Working days. Writing this moves the finish."),
@@ -58975,25 +59038,25 @@ const taskUpdate = strictObject({
58975
59038
  start: instant.optional(),
58976
59039
  task: taskRef().describe("The task to change")
58977
59040
  }).refine((input) => input.bucket !== void 0 || input.description !== void 0 || input.duration !== void 0 || input.effort !== void 0 || input.finish !== void 0 || input.name !== void 0 || input.parent_task !== void 0 || input.priority !== void 0 || input.progress !== void 0 || input.start !== void 0, { message: "Nothing to update — a task update needs at least one changed field." });
58978
- const bucketUpdate = strictObject({
59041
+ const bucketUpdate = strictObject$1({
58979
59042
  bucket: bucketRef().describe("The bucket to change"),
58980
59043
  kind: literal("bucket"),
58981
59044
  name: string$5().min(1).describe("Rename the bucket to this")
58982
59045
  });
58983
- const labelUpdate = strictObject({
59046
+ const labelUpdate = strictObject$1({
58984
59047
  kind: literal("label"),
58985
59048
  label: existing("label", "msdyn_projectlabelid"),
58986
59049
  text: string$5().describe("The label's name. A project's labels start unnamed; clearing the text retires one.")
58987
59050
  });
58988
- const taskDelete = strictObject({
59051
+ const taskDelete = strictObject$1({
58989
59052
  kind: literal("task"),
58990
59053
  task: existing("task", "msdyn_projecttaskid")
58991
59054
  });
58992
- const taskLabelDelete = strictObject({
59055
+ const taskLabelDelete = strictObject$1({
58993
59056
  kind: literal("task_label"),
58994
59057
  link: existing("task-label link", "msdyn_projecttasktolabelid")
58995
59058
  });
58996
- const assignmentDelete = strictObject({
59059
+ const assignmentDelete = strictObject$1({
58997
59060
  assignment: existing("assignment", "msdyn_resourceassignmentid"),
58998
59061
  kind: literal("assignment")
58999
59062
  });
@@ -59020,7 +59083,7 @@ const deleteOperationSchema = discriminatedUnion("kind", [
59020
59083
  * drift. The refinements enforce cross-field and service-boundary invariants that the
59021
59084
  * individual field schemas cannot express.
59022
59085
  */
59023
- const submissionSchema = strictObject({
59086
+ const submissionSchema = strictObject$1({
59024
59087
  creates: array$1(createOperationSchema).default([]).describe("Records to create"),
59025
59088
  deletes: array$1(deleteOperationSchema).default([]).describe("Records to remove. Buckets cannot be deleted here — removing one takes every task in it."),
59026
59089
  description: string$5().min(1).describe("What this set does, in the words of the person approving it"),
@@ -59188,7 +59251,7 @@ function createMcpServer() {
59188
59251
  });
59189
59252
  server.registerTool("wait_for_operation_set", {
59190
59253
  description: "Find out what became of a submitted set. Takes the operation_set_id returned by submit_operation_set and reads it once. While the status is executing, it polls until the set becomes terminal or the window closes; any other status returns immediately. Reports the scheduling service's own status: completed, failed (with its reason), executing, open, or abandoned. Note that 'completed' means the service applied the set without error — it is not a promise that a field holds the value you sent.",
59191
- inputSchema: strictObject({
59254
+ inputSchema: strictObject$1({
59192
59255
  operation_set_id: string$5().min(1).describe("The operation_set_id returned by submit_operation_set"),
59193
59256
  seconds: number$4().int().min(0).max(45).describe(`How long to wait, 0-45. 0 reads once and returns whatever the service says. If it still reports 'executing' when the window closes, call again.`)
59194
59257
  })
@@ -97871,7 +97934,7 @@ function osUsername() {
97871
97934
  }
97872
97935
 
97873
97936
  //#endregion
97874
- //#region ../slate-bridge/dist/goldens-BXSCnOsM.mjs
97937
+ //#region ../slate-bridge/dist/goldens-B0dg2qgu.mjs
97875
97938
  const nonEmptyStringSchema = string$5().trim().min(1);
97876
97939
  const portSchema = number$3().int().min(0).max(65535).default(7777);
97877
97940
  const envSchema = object$4({
@@ -97880,7 +97943,7 @@ const envSchema = object$4({
97880
97943
  CTX_PLATFORM_URL: url().default("http://127.0.0.1:3010").transform((url) => url.replace(/\/+$/, "")),
97881
97944
  CTX_WEB_URL: url().default("http://localhost:3000").transform((url) => url.replace(/\/+$/, "")),
97882
97945
  CTXS_BRIDGE_PORT: portSchema,
97883
- CTXS_CLAUDE_IMAGE: nonEmptyStringSchema.default("ghcr.io/usecontextlayer/ctx-sandbox:0.5.19"),
97946
+ CTXS_CLAUDE_IMAGE: nonEmptyStringSchema.default("ghcr.io/usecontextlayer/ctx-sandbox:0.5.20"),
97884
97947
  CTXS_CLAUDE_MODEL: nonEmptyStringSchema.default("opus"),
97885
97948
  CTXS_HOST_CLAUDE_JSON_PATH: nonEmptyStringSchema.default(() => path.join(os.homedir(), ".claude.json")),
97886
97949
  NODE_ENV: _enum$1([
@@ -98429,10 +98492,6 @@ const RESERVED_STATE_KEYS = [
98429
98492
  "params",
98430
98493
  "workspaceId"
98431
98494
  ];
98432
- const renderSpecSchema = strictObject({
98433
- params: record$2(string$5().min(1), strictObject({ default: string$5().min(1) })).optional(),
98434
- render: unknown$3().refine((value) => value !== void 0, "render is required")
98435
- });
98436
98495
  async function runWorkspaceView(opts) {
98437
98496
  if (!VIEW_NAME.test(opts.view)) throw new Error(`views/run: invalid view name "${opts.view}"`);
98438
98497
  return runSurfacePair({
@@ -98440,6 +98499,7 @@ async function runWorkspaceView(opts) {
98440
98499
  missingLoader: `views/run: view "${opts.view}" has no loader (expected docs/views/${opts.view}.loader.js)`,
98441
98500
  rawParams: opts.rawParams,
98442
98501
  resolveDsn: opts.resolveDsn,
98502
+ schema: viewRenderSpecSchema,
98443
98503
  stem: `docs/views/${opts.view}`
98444
98504
  });
98445
98505
  }
@@ -98454,14 +98514,15 @@ async function runWorkspaceDoc(opts) {
98454
98514
  missingLoader: `docs/run: type "${doc.type}" has no loader (expected docs/types/${slug}.loader.js)`,
98455
98515
  rawParams: opts.rawParams,
98456
98516
  resolveDsn: opts.resolveDsn,
98517
+ schema: renderSpecSchema,
98457
98518
  stem: `docs/types/${slug}`
98458
98519
  });
98459
98520
  }
98460
98521
  async function runSurfacePair(opts) {
98461
98522
  const base = path.join(opts.docs.root, opts.stem);
98462
98523
  const loaderSource = await readLoaderSource(`${base}.loader.js`, opts.missingLoader);
98463
- const def = renderSpecSchema.parse(JSON.parse(await fs$2.readFile(`${base}.render-spec.json`, "utf8")));
98464
- const { defaults, effective } = resolveParams(def.params ?? {}, opts.rawParams);
98524
+ const envelope = opts.schema.parse(JSON.parse(await fs$2.readFile(`${base}.render-spec.json`, "utf8")));
98525
+ const { defaults, effective } = resolveParams(envelope.params ?? {}, opts.rawParams);
98465
98526
  const sqlRunner = createSqlRunner(opts.resolveDsn);
98466
98527
  try {
98467
98528
  return {
@@ -98473,7 +98534,7 @@ async function runSurfacePair(opts) {
98473
98534
  }),
98474
98535
  paramDefaults: defaults,
98475
98536
  params: effective,
98476
- spec: def.render
98537
+ spec: envelope.render
98477
98538
  };
98478
98539
  } finally {
98479
98540
  await sqlRunner.end();
@@ -98609,7 +98670,7 @@ const CHAT_HOME_CONFIG = {
98609
98670
  restore: true,
98610
98671
  watch: HOME_WATCH_CONFIG
98611
98672
  };
98612
- const CHAT_SESSION_PATH_SCHEMA = strictObject({
98673
+ const CHAT_SESSION_PATH_SCHEMA = strictObject$1({
98613
98674
  sessionId: string$5().uuid(),
98614
98675
  workspaceId: string$5().uuid()
98615
98676
  });
@@ -103142,4 +103203,4 @@ runCli().catch((error) => {
103142
103203
  //#endregion
103143
103204
  export { createProgram, runCli };
103144
103205
  //# sourceMappingURL=cli.mjs.map
103145
- //# debugId=0754644f-54bd-56a7-9982-f7d23c77f345
103206
+ //# debugId=f07e0a11-1747-5207-9a3b-ec0d57abd3ca