@chatlychat/cli 0.5.1 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/commands/deliveries.d.ts +18 -0
  2. package/dist/commands/deliveries.d.ts.map +1 -0
  3. package/dist/commands/deliveries.js +46 -0
  4. package/dist/commands/deliveries.js.map +1 -0
  5. package/dist/commands/integrations.d.ts.map +1 -1
  6. package/dist/commands/integrations.js +12 -1
  7. package/dist/commands/integrations.js.map +1 -1
  8. package/dist/commands/workspace-as-code.d.ts +2 -15
  9. package/dist/commands/workspace-as-code.d.ts.map +1 -1
  10. package/dist/commands/workspace-as-code.js +40 -17
  11. package/dist/commands/workspace-as-code.js.map +1 -1
  12. package/dist/help.d.ts +1 -1
  13. package/dist/help.d.ts.map +1 -1
  14. package/dist/help.js +6 -0
  15. package/dist/help.js.map +1 -1
  16. package/dist/run.d.ts.map +1 -1
  17. package/dist/run.js +4 -1
  18. package/dist/run.js.map +1 -1
  19. package/dist/wac/apply.d.ts.map +1 -1
  20. package/dist/wac/apply.js +4 -1
  21. package/dist/wac/apply.js.map +1 -1
  22. package/dist/wac/diff-warnings.d.ts.map +1 -1
  23. package/dist/wac/diff-warnings.js +2 -1
  24. package/dist/wac/diff-warnings.js.map +1 -1
  25. package/dist/wac/diff.d.ts.map +1 -1
  26. package/dist/wac/diff.js +25 -1
  27. package/dist/wac/diff.js.map +1 -1
  28. package/dist/wac/document-key.d.ts.map +1 -1
  29. package/dist/wac/document-key.js +7 -0
  30. package/dist/wac/document-key.js.map +1 -1
  31. package/dist/wac/document.d.ts +2 -2
  32. package/dist/wac/document.js +2 -2
  33. package/dist/wac/load.d.ts +3 -1
  34. package/dist/wac/load.d.ts.map +1 -1
  35. package/dist/wac/load.js +40 -39
  36. package/dist/wac/load.js.map +1 -1
  37. package/dist/wac/resource-def.d.ts +4 -0
  38. package/dist/wac/resource-def.d.ts.map +1 -1
  39. package/dist/wac/resource-def.js.map +1 -1
  40. package/dist/wac/resources.d.ts +9 -11
  41. package/dist/wac/resources.d.ts.map +1 -1
  42. package/dist/wac/resources.js +93 -27
  43. package/dist/wac/resources.js.map +1 -1
  44. package/dist/wac/values.d.ts +13 -0
  45. package/dist/wac/values.d.ts.map +1 -1
  46. package/dist/wac/values.js +30 -0
  47. package/dist/wac/values.js.map +1 -1
  48. package/package.json +4 -3
package/dist/wac/diff.js CHANGED
@@ -49,7 +49,7 @@
49
49
  */
50
50
  import { sectionWarnings } from './diff-warnings.js';
51
51
  import { normalizedKey, projected, routeForField, } from './resources.js';
52
- import { isRedacted, narrowTo, REDACTED, sameValue } from './values.js';
52
+ import { isRedacted, narrowTo, REDACTED, sameValue, splitRedacted } from './values.js';
53
53
  export { isRedacted, REDACTED, sameValue } from './values.js';
54
54
  export { vocabularyWarnings } from './diff-warnings.js';
55
55
  function indexLive(def, rows) {
@@ -275,6 +275,30 @@ function planUpdate(def, row, liveRow, notes, resolved, pathParams, dependsOn, o
275
275
  */
276
276
  return;
277
277
  }
278
+ if (def.mergeFields?.includes(name) === true && !def.opaque.includes(name)) {
279
+ /*
280
+ * A merge field holding credentials (a channel's `config`) is split
281
+ * per leaf: the redacted leaves are write-only, everything else is
282
+ * diffed, so drift shows. Left alone unless `--write-only`, which
283
+ * sends the whole value — the same contract as an opaque field.
284
+ */
285
+ const s = splitRedacted(liveRow[name], desired);
286
+ if (s.redacted) {
287
+ const route = routeForField(def, name);
288
+ if (opts.writeOnly === true) {
289
+ changes.push({ name, from: undefined, to: desired, route });
290
+ extra.push(`${name} holds redacted credentials; --write-only sends it without a comparison.`);
291
+ }
292
+ else {
293
+ extra.push(`${name} holds credentials that read back as \`${REDACTED}\`, so those are not ` +
294
+ 'diffed and are left alone unless `--write-only` is passed; the rest is compared.');
295
+ if (!sameValue(s.live, s.desired)) {
296
+ changes.push({ name, from: s.live, to: s.desired, route });
297
+ }
298
+ }
299
+ return;
300
+ }
301
+ }
278
302
  // A MERGE-written field is compared on the keys the document names only.
279
303
  const live = def.mergeFields?.includes(name) === true ? narrowTo(liveRow[name], desired) : liveRow[name];
280
304
  const unreadable = def.opaque.includes(name)
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/wac/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/wac/diff.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"document-key.d.ts","sourceRoot":"","sources":["../../src/wac/document-key.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C,8EAA8E;AAC9E,wBAAgB,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,CAKzD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,KAAK,CACnB,MAAM,EAAE,KAAK,EAAE,EACf,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CAmDpB"}
1
+ {"version":3,"file":"document-key.d.ts","sourceRoot":"","sources":["../../src/wac/document-key.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAa,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAE3C,8EAA8E;AAC9E,wBAAgB,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,MAAM,CAKzD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,KAAK,CACnB,MAAM,EAAE,KAAK,EAAE,EACf,GAAG,EAAE,WAAW,EAChB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,IAAI,EAAE,MAAM,GACX,MAAM,GAAG,SAAS,CA0DpB"}
@@ -75,6 +75,13 @@ export function keyOf(issues, def, row, path) {
75
75
  });
76
76
  return undefined;
77
77
  }
78
+ if (def.keyPattern !== undefined && !def.keyPattern.test(keyValue)) {
79
+ issues.push({
80
+ path: `${path}.${def.naturalKey}`,
81
+ message: `\`${def.naturalKey}\` "${keyValue}" must match ${String(def.keyPattern)}.`,
82
+ });
83
+ return undefined;
84
+ }
78
85
  return keyValue;
79
86
  }
80
87
  //# sourceMappingURL=document-key.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-key.js","sourceRoot":"","sources":["../../src/wac/document-key.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,SAAS,EAAoB,MAAM,mBAAmB,CAAC;AAIhE,8EAA8E;AAC9E,MAAM,UAAU,IAAI,CAAC,KAA4B;IAC/C,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,KAAK,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AACnF,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,KAAK,CACnB,MAAe,EACf,GAAgB,EAChB,GAA4B,EAC5B,IAAY;IAEZ,sEAAsE;IACtE,MAAM,SAAS,GAAG,CAAC,IAAY,EAAU,EAAE,CACzC,GAAG,CAAC,WAAW;QACb,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,sCAAsC,IAAI,4CAA4C;YACtF,sCAAsC,CAAC;IAE7C,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;QAC7C,MAAM,WAAW,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,KAAK,KAAK,aAAa,IAAI,6BAA6B,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,wBAAwB,CAAC,CAAC;QACtD,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI;gBACJ,OAAO,EACL,SAAS,GAAG,CAAC,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,qCAAqC;oBAC9E,gBAAgB,QAAQ,4BAA4B,GAAG,CAAC,KAAK,qBAAqB;oBAClF,GAAG,QAAQ,6CAA6C;oBACxD,SAAS,CAAC,GAAG,KAAK,EAAE,GAAG,QAAQ,GAAG,GAAG,QAAQ,EAAE,CAAC;aACnD,CAAC,CAAC;YACH,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1D;;;;WAIG;QACH,MAAM,CAAC,IAAI,CAAC;YACV,IAAI,EAAE,GAAG,IAAI,IAAI,GAAG,CAAC,UAAU,EAAE;YACjC,OAAO,EACL,SAAS,GAAG,CAAC,KAAK,YAAY,GAAG,CAAC,UAAU,oCAAoC;gBAChF,+EAA+E;gBAC/E,wEAAwE;gBACxE,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC;SAC5B,CAAC,CAAC;QACH,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"document-key.js","sourceRoot":"","sources":["../../src/wac/document-key.ts"],"names":[],"mappings":"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"}
@@ -102,8 +102,8 @@ export declare class DocumentError extends Error {
102
102
  /**
103
103
  * The workspace document: `chatly.json`, nine resource types, a `ck_` key.
104
104
  *
105
- * `channels` is NOT in `refusedKeys` and that is deliberate — its refusal is
106
- * driven by `keySource: 'server'` on the definition and the message is
105
+ * A resource whose `keySource` is `'server'` is refused by name (none is, now
106
+ * that channels match on `key`); that refusal is driven by the definition and the message is
107
107
  * assembled from the definition's own route and key names, which is richer
108
108
  * than a constant string could be. Leaving it where it is also keeps this
109
109
  * schema's behaviour byte-identical to what it was before the schema existed.
@@ -171,8 +171,8 @@ function interpolate(value, env, missing, used) {
171
171
  /**
172
172
  * The workspace document: `chatly.json`, nine resource types, a `ck_` key.
173
173
  *
174
- * `channels` is NOT in `refusedKeys` and that is deliberate — its refusal is
175
- * driven by `keySource: 'server'` on the definition and the message is
174
+ * A resource whose `keySource` is `'server'` is refused by name (none is, now
175
+ * that channels match on `key`); that refusal is driven by the definition and the message is
176
176
  * assembled from the definition's own route and key names, which is richer
177
177
  * than a constant string could be. Leaving it where it is also keeps this
178
178
  * schema's behaviour byte-identical to what it was before the schema existed.
@@ -10,6 +10,8 @@ export interface LoadOptions {
10
10
  /** `plan` for the workspace document, `platform plan` for the other. */
11
11
  readonly command: string;
12
12
  }
13
- /** Read, refuse YAML, parse as JSON, validate against the schema. */
13
+ /** By extension; anything else (stdin, no extension) by sniffing for a leading `{`. */
14
+ export declare function isYaml(path: string, raw: string): boolean;
15
+ /** Read, parse as JSON or YAML by extension (stdin: by sniffing), validate against the schema. */
14
16
  export declare function loadFrom(args: ParsedArgs, env: NodeJS.ProcessEnv, opts: LoadOptions): WacDocument;
15
17
  //# sourceMappingURL=load.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/wac/load.ts"],"names":[],"mappings":"AA+BA,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAO,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,oDAAoD;IACpD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA4BD,qEAAqE;AACrE,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAiCjG"}
1
+ {"version":3,"file":"load.d.ts","sourceRoot":"","sources":["../../src/wac/load.ts"],"names":[],"mappings":"AA6BA,OAAO,EAAiB,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAO,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAElD,MAAM,WAAW,WAAW;IAC1B,mDAAmD;IACnD,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7C,oDAAoD;IACpD,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,mEAAmE;IACnE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AA4BD,uFAAuF;AACvF,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAQzD;AAaD,kGAAkG;AAClG,wBAAgB,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,GAAG,WAAW,CAcjG"}
package/dist/wac/load.js CHANGED
@@ -2,21 +2,17 @@
2
2
  * Getting a document off disk, for both `chatly plan` and
3
3
  * `chatly platform plan`.
4
4
  *
5
- * ═══ JSON, NOT YAML ═══════════════════════════════════════════════════════
5
+ * ═══ JSON AND YAML ════════════════════════════════════════════════════════
6
6
  *
7
- * The decision and its reasoning are in `commands/workspace-as-code.ts`'s
8
- * header and they are unchanged: `yaml` is in the monorepo lockfile only as a
9
- * transitive devDependency of `lint-staged`, it is not reachable from
10
- * `apps/cli`, CLAUDE.md §2 forbids adding a dependency to a published CLI
11
- * without approval, and a hand-rolled YAML subset that is 95% right loads a
12
- * document meaning something other than what it says — which is worse than
13
- * one that will not load.
7
+ * `.yaml` / `.yml` parse as YAML, `.json` as JSON, and `--file -` is sniffed:
8
+ * JSON if the first non-space character is `{`, YAML otherwise. The owner
9
+ * approved `yaml` (zero dependencies) as the CLI's only runtime dependency on
10
+ * 2026-10-26. Both paths produce a plain value that goes through the SAME
11
+ * `parseDocument` validation; there is nothing YAML-specific past the parser.
14
12
  *
15
- * So a `.yaml` path is REFUSED with the one-line conversion rather than
16
- * half-parsed, `--file -` reads stdin, and that makes any converter a pipe.
17
- * CHT-F04 names the file `chatly.platform.yaml`; this implementation reads
18
- * `chatly.platform.json`, and when YAML is approved this file is the only one
19
- * that changes.
13
+ * Strict mode, unique keys, and any warning is an error — an unknown tag such
14
+ * as `!!js/function` only WARNS in `yaml`, and a document that loads while
15
+ * meaning something other than what it says is the failure we refuse.
20
16
  *
21
17
  * ═══ WHY IT MOVED HERE ════════════════════════════════════════════════════
22
18
  *
@@ -28,6 +24,7 @@
28
24
  * re-exports `loadDocument`, so nothing that imported it from there moved.
29
25
  */
30
26
  import { readFileSync } from 'node:fs';
27
+ import { parseDocument as parseYamlDocument } from 'yaml';
31
28
  import { parseDocument } from './document.js';
32
29
  import { str } from '../args.js';
33
30
  function readFile(path) {
@@ -54,37 +51,41 @@ function findDefault(opts) {
54
51
  `Pass one with --file, or --file - to read stdin.\n` +
55
52
  `There is a worked example at ${opts.docsUrl}`);
56
53
  }
57
- /** Read, refuse YAML, parse as JSON, validate against the schema. */
54
+ /** By extension; anything else (stdin, no extension) by sniffing for a leading `{`. */
55
+ export function isYaml(path, raw) {
56
+ if (/\.ya?ml$/i.test(path)) {
57
+ return true;
58
+ }
59
+ if (/\.json$/i.test(path)) {
60
+ return false;
61
+ }
62
+ return !/^\s*\{/.test(raw);
63
+ }
64
+ function parseYaml(path, raw) {
65
+ const doc = parseYamlDocument(raw, { strict: true, uniqueKeys: true, prettyErrors: true });
66
+ const problem = doc.errors[0] ?? doc.warnings[0];
67
+ if (problem) {
68
+ const at = problem.linePos?.[0];
69
+ const where = at ? ` (line ${at.line}, column ${at.col})` : '';
70
+ throw new Error(`${path} is not valid YAML${where}: ${problem.message}`);
71
+ }
72
+ return doc.toJS();
73
+ }
74
+ /** Read, parse as JSON or YAML by extension (stdin: by sniffing), validate against the schema. */
58
75
  export function loadFrom(args, env, opts) {
59
76
  const path = str(args.flags, 'file') ?? findDefault(opts);
60
77
  const raw = readFile(path);
61
- if (/\.ya?ml$/i.test(path) || /^\s*(?:version|resources)\s*:/m.test(raw)) {
62
- /*
63
- * Refused, not half-parsed.
64
- *
65
- * The second half of that test catches a YAML document passed under a
66
- * `.json` name or through stdin, which is the shape of the mistake
67
- * somebody makes once. A YAML file handed to `JSON.parse` fails with
68
- * "Unexpected token v", which sends the reader looking for a syntax error
69
- * in their own file rather than at the one sentence they need.
70
- */
71
- throw new Error(`${path} looks like YAML, and this CLI reads JSON.\n\n` +
72
- 'YAML needs a parser, and adding a dependency to a published CLI is a decision this\n' +
73
- 'repo does not make casually (CLAUDE.md §2) — `yaml` is in the monorepo lockfile only\n' +
74
- 'as a transitive devDependency of lint-staged, so it is not something we already ship.\n' +
75
- 'A 95%-right hand-rolled YAML subset is worse than no YAML: it loads a document that\n' +
76
- 'means something other than what it says.\n\n' +
77
- 'Convert it and pipe it:\n' +
78
- ` npx js-yaml ${path} | chatly ${opts.command} --file -\n` +
79
- ' python3 -c "import sys,yaml,json;json.dump(yaml.safe_load(sys.stdin),sys.stdout)" \\\n' +
80
- ` < ${path} | chatly ${opts.command} --file -`);
81
- }
82
78
  let parsed;
83
- try {
84
- parsed = JSON.parse(raw);
79
+ if (isYaml(path, raw)) {
80
+ parsed = parseYaml(path, raw);
85
81
  }
86
- catch (err) {
87
- throw new Error(`${path} is not valid JSON: ${err instanceof Error ? err.message : '?'}`);
82
+ else {
83
+ try {
84
+ parsed = JSON.parse(raw);
85
+ }
86
+ catch (err) {
87
+ throw new Error(`${path} is not valid JSON: ${err instanceof Error ? err.message : '?'}`);
88
+ }
88
89
  }
89
90
  return parseDocument(parsed, env, opts.schema);
90
91
  }
@@ -1 +1 @@
1
- {"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/wac/load.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,aAAa,EAAyC,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,GAAG,EAAmB,MAAM,YAAY,CAAC;AAalD,SAAS,QAAQ,CAAC,IAAY;IAC5B,IAAI,CAAC;QACH,6DAA6D;QAC7D,OAAO,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,IAAiB;IACpC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1C,IAAI,CAAC;YACH,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,IAAI,KAAK,CACb,iCAAiC,KAAK,uBAAuB;QAC3D,oDAAoD;QACpD,gCAAgC,IAAI,CAAC,OAAO,EAAE,CACjD,CAAC;AACJ,CAAC;AAED,qEAAqE;AACrE,MAAM,UAAU,QAAQ,CAAC,IAAgB,EAAE,GAAsB,EAAE,IAAiB;IAClF,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC3B,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACzE;;;;;;;;WAQG;QACH,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,gDAAgD;YACrD,sFAAsF;YACtF,wFAAwF;YACxF,yFAAyF;YACzF,uFAAuF;YACvF,8CAA8C;YAC9C,2BAA2B;YAC3B,iBAAiB,IAAI,aAAa,IAAI,CAAC,OAAO,aAAa;YAC3D,0FAA0F;YAC1F,SAAS,IAAI,aAAa,IAAI,CAAC,OAAO,WAAW,CACpD,CAAC;IACJ,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,uBAAuB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,aAAa,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"load.js","sourceRoot":"","sources":["../../src/wac/load.ts"],"names":[],"mappings":"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"}
@@ -66,6 +66,10 @@ export interface ResourceDef {
66
66
  readonly keySource: 'authored' | 'server';
67
67
  /** True when the database enforces the key. False when only this file does. */
68
68
  readonly keyEnforced: boolean;
69
+ /** A shape the authored key must have, checked at parse time rather than on a 400 at apply. */
70
+ readonly keyPattern?: RegExp;
71
+ /** Appended to the "rows with no key" warning: how to give an existing row one. */
72
+ readonly keylessHint?: string;
69
73
  /** The server's own normalisation, applied to both sides before matching. */
70
74
  readonly normalizeKey?: (key: string) => string;
71
75
  readonly list: {
@@ -1 +1 @@
1
- {"version":3,"file":"resource-def.d.ts","sourceRoot":"","sources":["../../src/wac/resource-def.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-def.d.ts","sourceRoot":"","sources":["../../src/wac/resource-def.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"resource-def.js","sourceRoot":"","sources":["../../src/wac/resource-def.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAoKH,4EAA4E;AAC5E,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,QAAgB;IAC3D,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,GAAgB,EAAE,GAAW;IACzD,OAAO,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACtE,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,SAAS,CAAC,GAAgB,EAAE,GAA4B;IACtE,OAAO,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAgB,EAAE,KAAa;IAC3D,OAAO,CACL,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;QAC1D,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,qDAAqD,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC"}
1
+ {"version":3,"file":"resource-def.js","sourceRoot":"","sources":["../../src/wac/resource-def.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAwKH,4EAA4E;AAC5E,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,QAAgB;IAC3D,OAAO,GAAG,SAAS,IAAI,QAAQ,EAAE,CAAC;AACpC,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,GAAgB,EAAE,GAAW;IACzD,OAAO,GAAG,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACtE,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,SAAS,CAAC,GAAgB,EAAE,GAA4B;IACtE,OAAO,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,aAAa,CAAC,GAAgB,EAAE,KAAa;IAC3D,OAAO,CACL,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC;QAC1D,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,OAAO,qDAAqD,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3E,CAAC"}
@@ -30,7 +30,7 @@
30
30
  * triggers name NO CONSTRAINT
31
31
  * webhooks url NO CONSTRAINT
32
32
  * docsSources label NO CONSTRAINT
33
- * channels publicId UNIQUE — but minted by the server
33
+ * channels key UNIQUE (workspace_id, key) WHERE NOT NULL — nullable
34
34
  *
35
35
  * The first five are real: the database refuses a second row, so matching on
36
36
  * the key cannot pick the wrong one. The next four are a CONVENTION the
@@ -38,17 +38,15 @@
38
38
  * refuses to touch a key that appears twice on either side instead of
39
39
  * guessing, which is the only honest thing to do with a key that can repeat.
40
40
  *
41
- * ── The resource with no natural key at all ──────────────────────────────
41
+ * ── The resource that needed a key added ────────────────────────────────
42
42
  *
43
- * CHANNELS. `publicId` is required on create but it is a RESERVATION, not a
44
- * name you choose freely: `channels_public_id_unique` is global rather than
45
- * workspace-scoped, so another tenant may already hold `web`. `type` and
46
- * `publicId` are both immutable afterwards, `config` reads back with
47
- * `__redacted__` in every credential key, and the create response carries
48
- * per-provider webhook registration results that a diff cannot model. A
49
- * `channels:` section is therefore REFUSED by `document.ts`, by name, with
50
- * the reason — not half-supported. `chatly channels create|update` is the
51
- * way, and that is what the refusal says.
43
+ * CHANNELS. `publicId` is a RESERVATION, not a name: `channels_public_id_unique`
44
+ * is global, so another tenant may already hold `web`, and the server mints
45
+ * one when none is sent. Until 2026-10-26 a `channels:` section was refused for
46
+ * that reason. Migration 0680 added `channels.key`, a workspace-unique name the
47
+ * author chooses, and the section matches on it. `publicId` stays an OUTPUT
48
+ * (printed after `apply`); `type` is fixed at create; credentials inside
49
+ * `config` are write-only per leaf; and `--prune` never deletes one.
52
50
  *
53
51
  * ═══ VERIFIED AGAINST HANDLERS, NOT AGAINST NAMES ════════════════════════
54
52
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/wac/resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwFG;AAEH,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWrD;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,WAAW,CAibhD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,MAAM,CAAgC,CAAC;AAIlF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEjE"}
1
+ {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../src/wac/resources.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsFG;AAEH,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAEjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAWrD;;;;;;;GAOG;AACH,eAAO,MAAM,SAAS,EAAE,aAAa,CAAC,WAAW,CAwfhD,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,aAAa,CAAC,MAAM,CAAgC,CAAC;AAIlF,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEjE"}
@@ -30,7 +30,7 @@
30
30
  * triggers name NO CONSTRAINT
31
31
  * webhooks url NO CONSTRAINT
32
32
  * docsSources label NO CONSTRAINT
33
- * channels publicId UNIQUE — but minted by the server
33
+ * channels key UNIQUE (workspace_id, key) WHERE NOT NULL — nullable
34
34
  *
35
35
  * The first five are real: the database refuses a second row, so matching on
36
36
  * the key cannot pick the wrong one. The next four are a CONVENTION the
@@ -38,17 +38,15 @@
38
38
  * refuses to touch a key that appears twice on either side instead of
39
39
  * guessing, which is the only honest thing to do with a key that can repeat.
40
40
  *
41
- * ── The resource with no natural key at all ──────────────────────────────
41
+ * ── The resource that needed a key added ────────────────────────────────
42
42
  *
43
- * CHANNELS. `publicId` is required on create but it is a RESERVATION, not a
44
- * name you choose freely: `channels_public_id_unique` is global rather than
45
- * workspace-scoped, so another tenant may already hold `web`. `type` and
46
- * `publicId` are both immutable afterwards, `config` reads back with
47
- * `__redacted__` in every credential key, and the create response carries
48
- * per-provider webhook registration results that a diff cannot model. A
49
- * `channels:` section is therefore REFUSED by `document.ts`, by name, with
50
- * the reason — not half-supported. `chatly channels create|update` is the
51
- * way, and that is what the refusal says.
43
+ * CHANNELS. `publicId` is a RESERVATION, not a name: `channels_public_id_unique`
44
+ * is global, so another tenant may already hold `web`, and the server mints
45
+ * one when none is sent. Until 2026-10-26 a `channels:` section was refused for
46
+ * that reason. Migration 0680 added `channels.key`, a workspace-unique name the
47
+ * author chooses, and the section matches on it. `publicId` stays an OUTPUT
48
+ * (printed after `apply`); `type` is fixed at create; credentials inside
49
+ * `config` are write-only per leaf; and `--prune` never deletes one.
52
50
  *
53
51
  * ═══ VERIFIED AGAINST HANDLERS, NOT AGAINST NAMES ════════════════════════
54
52
  *
@@ -507,30 +505,98 @@ export const RESOURCES = [
507
505
  'collectionId',
508
506
  ],
509
507
  },
508
+ {
509
+ type: 'aiTools',
510
+ label: 'AI tool',
511
+ /*
512
+ * `name`: `ai_custom_tools_name_unique` is a partial unique index on
513
+ * (workspace_id, name) WHERE deleted_at IS NULL, so the database enforces
514
+ * it. `GET /v1/ai/tools` is `@PaginationExempt` — a bare array.
515
+ */
516
+ naturalKey: 'name',
517
+ keySource: 'authored',
518
+ keyEnforced: true,
519
+ list: { path: '/v1/ai/tools', paged: false },
520
+ idField: 'id',
521
+ create: { path: '/v1/ai/tools' },
522
+ // PATCH takes the create schema `.partial()`, so every settable field is changeable.
523
+ update: [{ method: 'PATCH', path: '/v1/ai/tools/{id}' }],
524
+ // 200 with `{ deleted: true }`.
525
+ remove: { path: '/v1/ai/tools/{id}' },
526
+ /*
527
+ * Both are write-only: the read carries `secretHeaderNames` and
528
+ * `signingSecretSet` instead of the values.
529
+ */
530
+ opaque: ['secretHeaders', 'signingSecret'],
531
+ secrets: [],
532
+ unwritable: [...SERVER_OWNED, 'secretHeaderNames', 'signingSecretSet'],
533
+ project: (row) => ({ ...row, secretHeaders: undefined, signingSecret: undefined }),
534
+ },
510
535
  {
511
536
  type: 'channels',
512
537
  label: 'channel',
513
538
  /*
514
- * Server-owned. See the header: `publicId` is a GLOBALLY unique
515
- * reservation rather than a name, `type` and `publicId` are immutable,
516
- * `config` reads back redacted, and the create response carries
517
- * provider-webhook registration results a diff cannot model. A
518
- * `channels:` section is refused by `document.ts`. The row stays here so
519
- * the refusal can name the type, the routes and the reason.
539
+ * `key` (migration 0680): a workspace-unique name the AUTHOR picks,
540
+ * enforced by a partial unique index. `publicId` cannot be the key — it is
541
+ * a globally unique reservation the server mints — so it is an OUTPUT:
542
+ * refused in a document (`unwritable`) and printed after `apply`.
543
+ * Channels that predate the column have no key and cannot be matched;
544
+ * `chatly channels set-key <id> <key>` adopts one.
520
545
  */
521
- naturalKey: 'publicId',
522
- keySource: 'server',
546
+ naturalKey: 'key',
547
+ keySource: 'authored',
523
548
  keyEnforced: true,
549
+ keyPattern: /^[a-z][a-z0-9-]{0,63}$/,
550
+ keylessHint: 'adopt one with `chatly channels set-key <id> <key>`, or a create here makes a second channel.',
524
551
  list: { path: '/v1/channels', paged: false },
525
552
  idField: 'id',
526
- create: null,
527
- update: [{ method: 'PATCH', path: '/v1/channels/{id}' }],
528
- // There IS a DELETE, on its own controller — 200 with
529
- // `{ deleted, id, type, detachedConversations }`.
530
- remove: { path: '/v1/channels/{id}' },
531
- opaque: ['config'],
532
- secrets: ['secret'],
533
- unwritable: [...SERVER_OWNED, 'type', 'publicId', 'originsRestricted', 'embed', 'brandId'],
553
+ create: { path: '/v1/channels' },
554
+ /*
555
+ * No catch-all: `type` is fixed at create, so a changed `type` is reported
556
+ * as un-appliable instead of sent to a PATCH that strips it. `config` is
557
+ * merged by the server (RFC 7396), so it is compared on the keys named.
558
+ */
559
+ update: [
560
+ {
561
+ method: 'PATCH',
562
+ path: '/v1/channels/{id}',
563
+ fields: [
564
+ 'name',
565
+ 'enabled',
566
+ 'config',
567
+ 'autoCreateTickets',
568
+ 'autoAcknowledge',
569
+ 'acknowledgeTemplate',
570
+ 'acknowledgeSubject',
571
+ ],
572
+ },
573
+ ],
574
+ updateBlocked: '`type` is fixed at create. Give the new channel another `key` (the old one then shows ' +
575
+ 'as on the server only) or delete it in the dashboard first.',
576
+ mergeFields: ['config'],
577
+ /*
578
+ * `DELETE /v1/channels/{id}` exists but is not key-accessible, and it
579
+ * detaches the channel's conversations. Not something `--prune` should do.
580
+ */
581
+ remove: null,
582
+ removeBlocked: 'a channel cannot be deleted with an API key, and deleting one detaches its conversations. ' +
583
+ 'Delete it in the dashboard; `--prune` never will.',
584
+ /*
585
+ * Credentials live inside `config` and read back as `__redacted__`; they
586
+ * are split out per leaf in `diff.ts` (write-only, `--write-only` to push).
587
+ */
588
+ opaque: [],
589
+ secrets: [],
590
+ unwritable: [
591
+ ...SERVER_OWNED,
592
+ 'publicId',
593
+ 'originsRestricted',
594
+ 'originWarnings',
595
+ 'embed',
596
+ 'brandId',
597
+ 'lastMessageAt',
598
+ 'staleEndpoints',
599
+ ],
534
600
  },
535
601
  ];
536
602
  export const RESOURCE_TYPES = RESOURCES.map((r) => r.type);
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/wac/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/wac/resources.ts"],"names":[],"mappings":"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"}
@@ -20,4 +20,17 @@ export declare function isRedacted(value: unknown): boolean;
20
20
  * the document names is the list it wants.
21
21
  */
22
22
  export declare function narrowTo(live: unknown, desired: unknown): unknown;
23
+ /**
24
+ * A MERGE-written object compared leaf by leaf, so one redacted credential
25
+ * hides itself and nothing else. `live` and `desired` come back with every
26
+ * path whose live value is `__redacted__` (or sits inside a redacted array)
27
+ * removed from BOTH; `redacted` says whether any was. Without this a single
28
+ * `identityVerification.secret` in a channel's `config` made the whole
29
+ * `config` unreadable, and drift on its other keys went unreported.
30
+ */
31
+ export declare function splitRedacted(live: unknown, desired: unknown): {
32
+ live: unknown;
33
+ desired: unknown;
34
+ redacted: boolean;
35
+ };
23
36
  //# sourceMappingURL=values.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../src/wac/values.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,uEAAuE;AACvE,eAAO,MAAM,QAAQ,iBAAiB,CAAC;AAIvC,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAyBzD;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAWlD;AAQD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAKjE"}
1
+ {"version":3,"file":"values.d.ts","sourceRoot":"","sources":["../../src/wac/values.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,uEAAuE;AACvE,eAAO,MAAM,QAAQ,iBAAiB,CAAC;AAIvC,iDAAiD;AACjD,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,GAAG,OAAO,CAyBzD;AAED,uEAAuE;AACvE,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAWlD;AAQD;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAKjE;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,OAAO,GACf;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAoBxD"}