@wootsup/yt-builder-mcp 1.9.0 → 1.11.0

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 (111) hide show
  1. package/README.md +19 -10
  2. package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
  3. package/dist/gateway/advanced-read-tool.js +14 -2
  4. package/dist/gateway/advanced-read-tool.js.map +1 -1
  5. package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
  6. package/dist/gateway/advanced-tool/domains.js +5 -0
  7. package/dist/gateway/advanced-tool/domains.js.map +1 -1
  8. package/dist/gateway/advanced-tool/execute.d.ts +7 -1
  9. package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
  10. package/dist/gateway/advanced-tool/execute.js +58 -4
  11. package/dist/gateway/advanced-tool/execute.js.map +1 -1
  12. package/dist/server.d.ts +14 -11
  13. package/dist/server.d.ts.map +1 -1
  14. package/dist/server.js +14 -11
  15. package/dist/server.js.map +1 -1
  16. package/dist/sites/tools/sites-list.d.ts.map +1 -1
  17. package/dist/sites/tools/sites-list.js +22 -2
  18. package/dist/sites/tools/sites-list.js.map +1 -1
  19. package/dist/tools/elements/builders.d.ts.map +1 -1
  20. package/dist/tools/elements/builders.js +69 -31
  21. package/dist/tools/elements/builders.js.map +1 -1
  22. package/dist/tools/elements/handlers-write.d.ts +2 -0
  23. package/dist/tools/elements/handlers-write.d.ts.map +1 -1
  24. package/dist/tools/elements/handlers-write.js +132 -9
  25. package/dist/tools/elements/handlers-write.js.map +1 -1
  26. package/dist/tools/elements/handlers.d.ts +7 -4
  27. package/dist/tools/elements/handlers.d.ts.map +1 -1
  28. package/dist/tools/elements/handlers.js +49 -8
  29. package/dist/tools/elements/handlers.js.map +1 -1
  30. package/dist/tools/elements/schema-validation.d.ts +18 -0
  31. package/dist/tools/elements/schema-validation.d.ts.map +1 -1
  32. package/dist/tools/elements/schema-validation.js +49 -5
  33. package/dist/tools/elements/schema-validation.js.map +1 -1
  34. package/dist/tools/format/sources-format.d.ts +12 -5
  35. package/dist/tools/format/sources-format.d.ts.map +1 -1
  36. package/dist/tools/format/sources-format.js +31 -6
  37. package/dist/tools/format/sources-format.js.map +1 -1
  38. package/dist/tools/health.d.ts.map +1 -1
  39. package/dist/tools/health.js +18 -5
  40. package/dist/tools/health.js.map +1 -1
  41. package/dist/tools/inspection.d.ts.map +1 -1
  42. package/dist/tools/inspection.js +81 -12
  43. package/dist/tools/inspection.js.map +1 -1
  44. package/dist/tools/layout-flatten.d.ts +7 -1
  45. package/dist/tools/layout-flatten.d.ts.map +1 -1
  46. package/dist/tools/layout-flatten.js +24 -13
  47. package/dist/tools/layout-flatten.js.map +1 -1
  48. package/dist/tools/library.d.ts +23 -0
  49. package/dist/tools/library.d.ts.map +1 -1
  50. package/dist/tools/library.js +213 -15
  51. package/dist/tools/library.js.map +1 -1
  52. package/dist/tools/local-content/builders.js +11 -11
  53. package/dist/tools/local-content/builders.js.map +1 -1
  54. package/dist/tools/local-content/handlers.d.ts.map +1 -1
  55. package/dist/tools/local-content/handlers.js +34 -5
  56. package/dist/tools/local-content/handlers.js.map +1 -1
  57. package/dist/tools/local-content/schemas.d.ts +9 -4
  58. package/dist/tools/local-content/schemas.d.ts.map +1 -1
  59. package/dist/tools/local-content/schemas.js +14 -6
  60. package/dist/tools/local-content/schemas.js.map +1 -1
  61. package/dist/tools/multi-items/builders.d.ts.map +1 -1
  62. package/dist/tools/multi-items/builders.js +11 -8
  63. package/dist/tools/multi-items/builders.js.map +1 -1
  64. package/dist/tools/pages/builders.d.ts.map +1 -1
  65. package/dist/tools/pages/builders.js +122 -46
  66. package/dist/tools/pages/builders.js.map +1 -1
  67. package/dist/tools/pages/handlers-audit.d.ts +129 -0
  68. package/dist/tools/pages/handlers-audit.d.ts.map +1 -0
  69. package/dist/tools/pages/handlers-audit.js +704 -0
  70. package/dist/tools/pages/handlers-audit.js.map +1 -0
  71. package/dist/tools/pages/handlers-read.d.ts +8 -3
  72. package/dist/tools/pages/handlers-read.d.ts.map +1 -1
  73. package/dist/tools/pages/handlers-read.js +172 -25
  74. package/dist/tools/pages/handlers-read.js.map +1 -1
  75. package/dist/tools/pages/handlers-write.d.ts +17 -3
  76. package/dist/tools/pages/handlers-write.d.ts.map +1 -1
  77. package/dist/tools/pages/handlers-write.js +79 -26
  78. package/dist/tools/pages/handlers-write.js.map +1 -1
  79. package/dist/tools/pages/index.d.ts +5 -1
  80. package/dist/tools/pages/index.d.ts.map +1 -1
  81. package/dist/tools/pages/index.js +5 -1
  82. package/dist/tools/pages/index.js.map +1 -1
  83. package/dist/tools/pages/schemas.d.ts +319 -1
  84. package/dist/tools/pages/schemas.d.ts.map +1 -1
  85. package/dist/tools/pages/schemas.js +340 -4
  86. package/dist/tools/pages/schemas.js.map +1 -1
  87. package/dist/tools/pages/target.d.ts +162 -0
  88. package/dist/tools/pages/target.d.ts.map +1 -0
  89. package/dist/tools/pages/target.js +239 -0
  90. package/dist/tools/pages/target.js.map +1 -0
  91. package/dist/tools/shared-schemas.d.ts +22 -0
  92. package/dist/tools/shared-schemas.d.ts.map +1 -1
  93. package/dist/tools/shared-schemas.js +22 -0
  94. package/dist/tools/shared-schemas.js.map +1 -1
  95. package/dist/tools/sources/builders.d.ts.map +1 -1
  96. package/dist/tools/sources/builders.js +46 -28
  97. package/dist/tools/sources/builders.js.map +1 -1
  98. package/dist/tools/sources/handlers-bind.d.ts +7 -8
  99. package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
  100. package/dist/tools/sources/handlers-bind.js +106 -7
  101. package/dist/tools/sources/handlers-bind.js.map +1 -1
  102. package/dist/tools/sparse-fields.d.ts +12 -0
  103. package/dist/tools/sparse-fields.d.ts.map +1 -1
  104. package/dist/tools/sparse-fields.js +34 -2
  105. package/dist/tools/sparse-fields.js.map +1 -1
  106. package/dist/tools/tool-builder/results.d.ts.map +1 -1
  107. package/dist/tools/tool-builder/results.js +114 -0
  108. package/dist/tools/tool-builder/results.js.map +1 -1
  109. package/manifest.json +1 -1
  110. package/package.json +1 -1
  111. package/skills/yt-builder-mcp/SKILL.md +735 -44
@@ -0,0 +1,239 @@
1
+ /**
2
+ * `pages/target` — the shared SEMANTIC-TARGET wire helper (Task A-6 of the
3
+ * single-page-audit plan, 2026-07-22-02).
4
+ *
5
+ * `pages_audit` and `pages_resolve` both accept the same `target` object —
6
+ * exactly ONE of `template_id` | `post_id` | `url` | `special` | `title` — and
7
+ * both must put it on the wire in the ONE encoding the PHP side parses:
8
+ * BRACKET query params (`target[special]=home`). WordPress
9
+ * (`WP_REST_Request['target']`) and Joomla (`Input::get`) both inflate
10
+ * `target%5Bspecial%5D=home` into a nested array natively, and the native
11
+ * transports receive the structured object as-is — one name, byte-identical
12
+ * parity across all three transports.
13
+ *
14
+ * TWO rules are encoded here rather than in the Zod schema, deliberately:
15
+ *
16
+ * 1. NORMALIZATION mirrors PHP `PageQuery::normalizeTarget()` verbatim —
17
+ * non-scalar and blank members are DROPPED, so `{special: ''}` is "no
18
+ * target", not "an empty special". Without this the two sides disagree
19
+ * about how many targets were supplied.
20
+ * 2. EXACTLY-ONE-OF is validated in the HANDLER, never as a zod `.refine`.
21
+ * This is the F205 lesson (`gateway/advanced-read-tool.ts`): an
22
+ * SDK-level schema rejection surfaces as a raw `-32602` and bypasses
23
+ * every piece of typed steering the tool provides. A typed
24
+ * `too_many_targets` result keeps the agent in the loop.
25
+ *
26
+ * @license MIT
27
+ */
28
+ import { RestError } from '../../errors.js';
29
+ import { errorResult } from '../tool-builder.js';
30
+ import { TARGET_KEYS } from './schemas.js';
31
+ /**
32
+ * Drop non-scalar / blank members and stringify the rest — the TS mirror of
33
+ * PHP `PageQuery::normalizeTarget()`. An absent target and an all-blank target
34
+ * both normalize to `{}`, which every caller reads as "no target ⇒ site sweep".
35
+ */
36
+ export function normalizeTarget(target) {
37
+ if (target === undefined)
38
+ return {};
39
+ const out = {};
40
+ for (const key of TARGET_KEYS) {
41
+ const value = target[key];
42
+ if (typeof value !== 'string' && typeof value !== 'number')
43
+ continue;
44
+ const str = String(value).trim();
45
+ if (str === '')
46
+ continue;
47
+ out[key] = str;
48
+ }
49
+ return out;
50
+ }
51
+ /** The keys actually supplied, in canonical order (0 = no target). */
52
+ export function targetKeysOf(target) {
53
+ return TARGET_KEYS.filter((key) => target[key] !== undefined);
54
+ }
55
+ /**
56
+ * BUG-4 — the typed "you SENT a target, but none of it survived normalisation"
57
+ * failure, or `null` when there is nothing to complain about. The TS half of
58
+ * PHP `PageQuery::malformedTargetError()`, with the SAME predicate, the SAME
59
+ * code and the SAME status, so the rule reads identically wherever it fires.
60
+ *
61
+ * {@see normalizeTarget} deliberately DROPS blank and non-scalar members, so
62
+ * `{special: ''}`, `{title: ' '}` and `{post_id: null}` all normalise to
63
+ * `{}`. Every caller reads `{}` as "no target ⇒ site sweep" — which for
64
+ * `pages_audit` meant answering a plainly single-page request with a 200 over
65
+ * the WHOLE SITE, carrying no scope marker and no error. The version-skew guard
66
+ * could not catch it either: that guard is itself gated on `hasTarget`, which
67
+ * this input makes false. An agent templating `target: { title: pageName }`
68
+ * where `pageName` resolved to `''` got the whole site back and presented it as
69
+ * the audit of the page it meant — the exact wrong-findings-wrong-page class
70
+ * `serverTooOldError` exists to prevent.
71
+ *
72
+ * An EMPTY OBJECT is NOT malformed: `target: {}` means "no target" by
73
+ * documented contract (PHP returns null for `$raw === []`, and a test pins it).
74
+ * Only a bag that HAS members, none of which is a usable address, is flagged.
75
+ *
76
+ * Kept next to `normalizeTarget` — the two belong together, and a per-handler
77
+ * copy is exactly the drift the shared front door exists to prevent.
78
+ *
79
+ * @param raw The caller's target bag, BEFORE normalisation.
80
+ * @param normalized The {@see normalizeTarget} result for that bag.
81
+ */
82
+ export function malformedTargetError(raw, normalized, opts) {
83
+ if (raw === undefined)
84
+ return null;
85
+ const suppliedKeys = Object.keys(raw);
86
+ if (suppliedKeys.length === 0)
87
+ return null;
88
+ if (targetKeysOf(normalized).length > 0)
89
+ return null;
90
+ return errorResult({
91
+ error: new RestError({
92
+ status: 400,
93
+ code: 'yootheme_builder_mcp.pages.no_target',
94
+ message: `A "target" was supplied (${suppliedKeys.join(', ')}) but none of its members is `
95
+ + 'a usable address. Each member must be a NON-EMPTY SCALAR — target:{special:"home"} '
96
+ + '— never an empty/blank string, null, or a nested object. Provide exactly one of: '
97
+ + 'template_id, post_id, url, special, title.',
98
+ body: null,
99
+ }),
100
+ context: opts.context,
101
+ hint: opts.hint,
102
+ });
103
+ }
104
+ /**
105
+ * Append the normalized target to a querystring as BRACKET params —
106
+ * `target[special]=home`. `URLSearchParams` percent-encodes the brackets
107
+ * (`target%5Bspecial%5D`); PHP url-decodes a parameter NAME before splitting
108
+ * it on `[`, so both CMSes inflate it into the nested array the controllers
109
+ * read.
110
+ */
111
+ export function appendTargetParams(qs, target) {
112
+ for (const key of TARGET_KEYS) {
113
+ const value = target[key];
114
+ if (value !== undefined)
115
+ qs.set(`target[${key}]`, value);
116
+ }
117
+ }
118
+ /**
119
+ * The namespace EVERY semantic target failure the two CMS controllers emit is
120
+ * coded under — `title_no_match`, `title_ambiguous`, `blog_ambiguous`,
121
+ * `special_not_supported`, `special_not_resolvable`, `template_not_found`,
122
+ * `post_not_found`, `url_no_match`, `no_target`, `too_many_targets`,
123
+ * `types_conflicts_with_target`, and whatever token is added next
124
+ * (`SpecialTargetAmbiguousException::errorCode()` DERIVES codes mechanically,
125
+ * so the set is open by design).
126
+ *
127
+ * Matching on the PREFIX rather than an enumerated list is deliberate: a code
128
+ * this build has never heard of is still, unambiguously, an answer ABOUT THE
129
+ * ADDRESS — and answering it with a connectivity steer would be exactly as
130
+ * wrong as it is for the codes we do know.
131
+ */
132
+ const PAGES_TARGET_ERROR_PREFIX = 'yootheme_builder_mcp.pages.';
133
+ /**
134
+ * Is this thrown value a TYPED target failure from the host's pages domain?
135
+ *
136
+ * Distinguishes a request-SHAPE answer (the address matched nothing / several
137
+ * things / an unsupported role) from a transport or capability failure. A WP
138
+ * `rest_no_route` 404 (the route does not exist — the plugin predates the
139
+ * feature) is deliberately NOT one of these: it carries WordPress's own code,
140
+ * not ours, so the "update the plugin" gate keeps firing for it.
141
+ */
142
+ export function isTypedTargetError(e) {
143
+ return e instanceof RestError && e.code !== undefined && e.code.startsWith(PAGES_TARGET_ERROR_PREFIX);
144
+ }
145
+ /**
146
+ * BUG-3 / MM-5 — the ONE recovery hint for a typed target failure, shared by
147
+ * `pages_resolve` and `pages_audit`.
148
+ *
149
+ * Hoisted here because the two tools answer the SAME error family and used to
150
+ * disagree: `pages_resolve` branched on `hasTarget` and said this, while
151
+ * `pages_audit` sent every typed failure into its generic catch — "Run
152
+ * yootheme_builder_diagnose to verify auth + that the host plugin is
153
+ * reachable". That points an agent at a connectivity problem when the fault is
154
+ * its own request shape (the failure mode `typesConflictsWithTargetError`'s
155
+ * docblock was written to prevent), costs a round-trip on a diagnose that comes
156
+ * back green, and leaves no steer toward the actual fix.
157
+ */
158
+ export const TARGET_FAILURE_HINT = 'Verify the target addresses one existing page. A `special` may have no '
159
+ + 'template on this site (special_not_resolvable); a `title` may match zero '
160
+ + 'or several pages — use yootheme_builder_pages_list to pick one.';
161
+ /**
162
+ * The typed "you addressed more than one page" failure (F205: a handler
163
+ * error, never a schema rejection). Shared so `pages_audit` and
164
+ * `pages_resolve` fail with the SAME code and the same steer.
165
+ *
166
+ * `status: 400` is the status the PHP controllers return for the identical
167
+ * clash, so a caller that keys on status sees one contract whether the check
168
+ * fired locally or upstream.
169
+ */
170
+ export function tooManyTargetsError(opts) {
171
+ return errorResult({
172
+ error: new RestError({
173
+ status: 400,
174
+ code: 'yootheme_builder_mcp.pages.too_many_targets',
175
+ message: `A target addresses exactly ONE page, but ${String(opts.supplied.length)} were given ` +
176
+ `(${opts.supplied.join(', ')}).`,
177
+ body: null,
178
+ }),
179
+ context: opts.context,
180
+ hint: 'Pass exactly one of target.template_id / target.post_id / target.url / ' +
181
+ 'target.special / target.title. Use target.title (or yootheme_builder_pages_list) ' +
182
+ 'when you only know the page by name.',
183
+ });
184
+ }
185
+ /**
186
+ * The typed "a single-target audit cannot also filter by `types`" failure
187
+ * (Key decision 11 — fail-explicit, never a silent winner).
188
+ *
189
+ * PHP `PageAuditService::audit()` refuses the same clash, so without a local
190
+ * pre-check the request went out, came back 400, and landed in the caller's
191
+ * GENERIC catch — whose hint reads "Run yootheme_builder_diagnose to verify
192
+ * auth + that the host plugin is reachable". That points an agent at a
193
+ * connectivity problem when the fault is its own request shape, and burns a
194
+ * round-trip to do it. Code and status mirror the PHP side exactly so a caller
195
+ * sees ONE contract wherever the check fired.
196
+ */
197
+ export function typesConflictsWithTargetError(opts) {
198
+ return errorResult({
199
+ error: new RestError({
200
+ status: 400,
201
+ code: 'yootheme_builder_mcp.pages.types_conflicts_with_target',
202
+ message: 'A single-target audit cannot also filter by "types" — a target already ' +
203
+ 'names exactly one page, so there is nothing left for a type filter to narrow.',
204
+ body: null,
205
+ }),
206
+ context: opts.context,
207
+ hint: 'Drop `types` to audit the targeted page, or drop `target` to sweep the ' +
208
+ 'whole site filtered by those types.',
209
+ });
210
+ }
211
+ /**
212
+ * The typed "this host predates single-target addressing" failure.
213
+ *
214
+ * The 404 capability gate does NOT cover this case: a host plugin that
215
+ * predates the feature IGNORES the unknown `target` query params and answers
216
+ * HTTP 200 with a FULL SITE SWEEP. Handing that back would report whole-site
217
+ * findings as "the audit of your homepage" — wrong findings attributed to the
218
+ * wrong page. So the caller REQUIRES positive proof of scoping and routes
219
+ * everything else here.
220
+ *
221
+ * `status: 426` (Upgrade Required) is SYNTHETIC — the transport call itself
222
+ * succeeded; the status names what has to happen, mirroring how the 404 gate
223
+ * turns a route-absent response into an update-the-plugin steer.
224
+ */
225
+ export function serverTooOldError(opts) {
226
+ return errorResult({
227
+ error: new RestError({
228
+ status: 426,
229
+ code: 'yootheme_builder_mcp.pages.server_too_old',
230
+ message: opts.message,
231
+ body: null,
232
+ }),
233
+ context: opts.context,
234
+ hint: 'This site\'s YT Builder MCP host plugin predates single-target addressing ' +
235
+ '(`target`). Update the plugin on this site, then retry. Until then, omit ' +
236
+ '`target` — the site-wide sweep works on every version.',
237
+ });
238
+ }
239
+ //# sourceMappingURL=target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target.js","sourceRoot":"","sources":["../../../src/tools/pages/target.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,28 @@ export declare const TEMPLATE_ID_OPTIONAL: z.ZodOptional<z.ZodString>;
13
13
  export declare const POST_ID: z.ZodOptional<z.ZodNumber>;
14
14
  export declare const RESOLVE_URL: z.ZodOptional<z.ZodString>;
15
15
  export declare const ELEMENT_PATH: z.ZodString;
16
+ /**
17
+ * Write-response ETag convention (SSOT — PAGES_LIBRARY_MEDIA-18 doc note).
18
+ *
19
+ * Every write tool's response carries the POST-WRITE state as its chainable
20
+ * ETag. Concretely, at the MCP boundary:
21
+ * - `etag` — the POST-WRITE current value (safe to chain straight into the
22
+ * next write's If-Match), IDENTICAL to `new_etag` where both are
23
+ * emitted.
24
+ * - `new_etag` — the post-write value too (kept for callers reading either name).
25
+ *
26
+ * This is the SOURCES_BINDING-16 decision: `element_set_source` / `template_set_type`
27
+ * emit a pre-write `etag` in their PHP body, and their TS handlers NORMALISE it to
28
+ * the post-write value so `etag` is ALWAYS chainable; `pages_create` / `pages_delete`
29
+ * already emit both fields at the post-write value. So an agent can chain `etag`
30
+ * OR `new_etag` from ANY write and it never 412s a first follow-up write.
31
+ *
32
+ * NOTE: PAGES_LIBRARY_MEDIA-18 proposed the OPPOSITE (`etag` = echo of the caller's
33
+ * input, `new_etag` = post-write). That was NOT adopted — it contradicts the shipped
34
+ * + tested SOURCES_BINDING-16 convention and would strand the caller's first chained
35
+ * write on a stale value. Any move to the echo convention needs Thomas's sign-off
36
+ * (it is a behavioural reversal, not a standardisation).
37
+ */
16
38
  export declare const ETAG: z.ZodString;
17
39
  export declare const PROPS: z.ZodRecord<z.ZodString, z.ZodUnknown>;
18
40
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"shared-schemas.d.ts","sourceRoot":"","sources":["../../src/tools/shared-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,WAAW,aAUnB,CAAC;AAaN,eAAO,MAAM,oBAAoB,4BAS5B,CAAC;AAEN,eAAO,MAAM,OAAO,4BASf,CAAC;AAEN,eAAO,MAAM,WAAW,4BASnB,CAAC;AAEN,eAAO,MAAM,YAAY,aAgBpB,CAAC;AAEN,eAAO,MAAM,IAAI,aAYZ,CAAC;AAEN,eAAO,MAAM,KAAK,wCAKb,CAAC;AAEN;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,4BAOtB,CAAC"}
1
+ {"version":3,"file":"shared-schemas.d.ts","sourceRoot":"","sources":["../../src/tools/shared-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,WAAW,aAUnB,CAAC;AAaN,eAAO,MAAM,oBAAoB,4BAS5B,CAAC;AAEN,eAAO,MAAM,OAAO,4BASf,CAAC;AAEN,eAAO,MAAM,WAAW,4BASnB,CAAC;AAEN,eAAO,MAAM,YAAY,aAgBpB,CAAC;AAEN;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,IAAI,aAYZ,CAAC;AAEN,eAAO,MAAM,KAAK,wCAKb,CAAC;AAEN;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,4BAOtB,CAAC"}
@@ -69,6 +69,28 @@ export const ELEMENT_PATH = z
69
69
  '`/children/0`); fully-qualified pointers also work. The arg is ' +
70
70
  '`element_path`; `element_rel_path` is only the list projection ' +
71
71
  'column, not an input arg.');
72
+ /**
73
+ * Write-response ETag convention (SSOT — PAGES_LIBRARY_MEDIA-18 doc note).
74
+ *
75
+ * Every write tool's response carries the POST-WRITE state as its chainable
76
+ * ETag. Concretely, at the MCP boundary:
77
+ * - `etag` — the POST-WRITE current value (safe to chain straight into the
78
+ * next write's If-Match), IDENTICAL to `new_etag` where both are
79
+ * emitted.
80
+ * - `new_etag` — the post-write value too (kept for callers reading either name).
81
+ *
82
+ * This is the SOURCES_BINDING-16 decision: `element_set_source` / `template_set_type`
83
+ * emit a pre-write `etag` in their PHP body, and their TS handlers NORMALISE it to
84
+ * the post-write value so `etag` is ALWAYS chainable; `pages_create` / `pages_delete`
85
+ * already emit both fields at the post-write value. So an agent can chain `etag`
86
+ * OR `new_etag` from ANY write and it never 412s a first follow-up write.
87
+ *
88
+ * NOTE: PAGES_LIBRARY_MEDIA-18 proposed the OPPOSITE (`etag` = echo of the caller's
89
+ * input, `new_etag` = post-write). That was NOT adopted — it contradicts the shipped
90
+ * + tested SOURCES_BINDING-16 convention and would strand the caller's first chained
91
+ * write on a stale value. Any move to the echo convention needs Thomas's sign-off
92
+ * (it is a behavioural reversal, not a standardisation).
93
+ */
72
94
  export const ETAG = z
73
95
  .string()
74
96
  .min(1)
@@ -1 +1 @@
1
- {"version":3,"file":"shared-schemas.js","sourceRoot":"","sources":["../../src/tools/shared-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACvB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ;AACL,+DAA+D;AAC/D,qEAAqE;AACrE,sEAAsE;AACtE,uEAAuE;AACvE,kEAAkE;IAC9D,yEAAyE,CAChF,CAAC;AAEN,oEAAoE;AACpE,qEAAqE;AACrE,qEAAqE;AACrE,+DAA+D;AAC/D,kEAAkE;AAClE,mEAAmE;AACnE,qBAAqB;AACrB,yEAAyE;AACzE,yEAAyE;AACzE,0EAA0E;AAC1E,uEAAuE;AACvE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAChC,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,EAAE;KACV,QAAQ,CACL,6EAA6E;IACzE,oEAAoE;IACpE,wEAAwE;IACxE,iDAAiD,CACxD,CAAC;AAEN,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACnB,MAAM,EAAE;KACR,GAAG,EAAE;KACL,QAAQ,EAAE;KACV,QAAQ,EAAE;KACV,QAAQ,CACL,wEAAwE;IACpE,iEAAiE;IACjE,8DAA8D,CACrE,CAAC;AAEN,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACvB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,EAAE;KACV,QAAQ,CACL,8EAA8E;IAC1E,6EAA6E;IAC7E,qEAAqE;IACrE,4CAA4C,CACnD,CAAC;AAEN,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KACxB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ;AACL,oEAAoE;AACpE,oEAAoE;AACpE,sEAAsE;AACtE,yDAAyD;AACzD,+DAA+D;AAC/D,sDAAsD;AACtD,gDAAgD;IAC5C,8DAA8D;IAC9D,6DAA6D;IAC7D,iEAAiE;IACjE,iEAAiE;IACjE,2BAA2B,CAClC,CAAC;AAEN,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAChB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,CACL,mEAAmE;IAC/D,sEAAsE;IACtE,2DAA2D;IAC3D,oEAAoE;IACpE,mEAAmE;IACnE,uEAAuE;IACvE,kEAAkE;IAClE,qCAAqC,CAC5C,CAAC;AAEN,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC;KACjB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KAC/B,QAAQ,CACL,qEAAqE;IACjE,0EAA0E,CACjF,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,EAAE;KACnC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;KACd,KAAK,CAAC,kBAAkB,EAAE,kDAAkD,CAAC;KAC7E,QAAQ,EAAE;KACV,QAAQ,CACL,+DAA+D;IAC/D,4DAA4D,CAC/D,CAAC"}
1
+ {"version":3,"file":"shared-schemas.js","sourceRoot":"","sources":["../../src/tools/shared-schemas.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACvB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ;AACL,+DAA+D;AAC/D,qEAAqE;AACrE,sEAAsE;AACtE,uEAAuE;AACvE,kEAAkE;IAC9D,yEAAyE,CAChF,CAAC;AAEN,oEAAoE;AACpE,qEAAqE;AACrE,qEAAqE;AACrE,+DAA+D;AAC/D,kEAAkE;AAClE,mEAAmE;AACnE,qBAAqB;AACrB,yEAAyE;AACzE,yEAAyE;AACzE,0EAA0E;AAC1E,uEAAuE;AACvE,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC;KAChC,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,EAAE;KACV,QAAQ,CACL,6EAA6E;IACzE,oEAAoE;IACpE,wEAAwE;IACxE,iDAAiD,CACxD,CAAC;AAEN,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC;KACnB,MAAM,EAAE;KACR,GAAG,EAAE;KACL,QAAQ,EAAE;KACV,QAAQ,EAAE;KACV,QAAQ,CACL,wEAAwE;IACpE,iEAAiE;IACjE,8DAA8D,CACrE,CAAC;AAEN,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC;KACvB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,EAAE;KACV,QAAQ,CACL,8EAA8E;IAC1E,6EAA6E;IAC7E,qEAAqE;IACrE,4CAA4C,CACnD,CAAC;AAEN,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KACxB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ;AACL,oEAAoE;AACpE,oEAAoE;AACpE,sEAAsE;AACtE,yDAAyD;AACzD,+DAA+D;AAC/D,sDAAsD;AACtD,gDAAgD;IAC5C,8DAA8D;IAC9D,6DAA6D;IAC7D,iEAAiE;IACjE,iEAAiE;IACjE,2BAA2B,CAClC,CAAC;AAEN;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC;KAChB,MAAM,EAAE;KACR,GAAG,CAAC,CAAC,CAAC;KACN,QAAQ,CACL,mEAAmE;IAC/D,sEAAsE;IACtE,2DAA2D;IAC3D,oEAAoE;IACpE,mEAAmE;IACnE,uEAAuE;IACvE,kEAAkE;IAClE,qCAAqC,CAC5C,CAAC;AAEN,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC;KACjB,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;KAC/B,QAAQ,CACL,qEAAqE;IACjE,0EAA0E,CACjF,CAAC;AAEN;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,EAAE;KACnC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;KACd,KAAK,CAAC,kBAAkB,EAAE,kDAAkD,CAAC;KAC7E,QAAQ,EAAE;KACV,QAAQ,CACL,+DAA+D;IAC/D,4DAA4D,CAC/D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,EAMH,KAAK,iBAAiB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIH,KAAK,kBAAkB,EAM1B,MAAM,eAAe,CAAC;AAQvB,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,UAAU,EAChB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACnC,SAAS,iBAAiB,EAAE,CA2gB9B"}
1
+ {"version":3,"file":"builders.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAI7D,OAAO,EAMH,KAAK,iBAAiB,EACzB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAIH,KAAK,kBAAkB,EAM1B,MAAM,eAAe,CAAC;AAQvB,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,UAAU,EAChB,IAAI,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACnC,SAAS,iBAAiB,EAAE,CAiiB9B"}
@@ -69,12 +69,11 @@ export function buildSourcesTools(pool, deps) {
69
69
  description: 'Introspect ONE data source: its query methods + arguments + RELATIONS ' +
70
70
  '(e.g. Term→Posts: categoryFaqs.taxonomyCategoryFaq → field "faq") + a ' +
71
71
  'provides_archive_context flag (id:0 = current archive term, auto-scoped). ' +
72
- 'Each argument may carry `enum_values` (allowed values, e.g. ' +
73
- '["asc","desc"]); pick from those, don\'t guess. ' +
74
- 'CALL BEFORE binding on an archive/category template turns a ~25-call ' +
75
- 'code-dive into one. Keywords: source schema, relations, archive context, ' +
76
- 'enum values. Get `name` from yootheme_builder_sources_list. ' +
77
- 'Operates on the default site unless site_id is provided.',
72
+ 'SOME arguments carry `enum_values` (the allowed values); when an arg has none it ' +
73
+ 'is a free string — pick from enum_values when present, never invent values. ' +
74
+ 'CALL BEFORE binding on an archive/category template. Keywords: source schema, ' +
75
+ 'relations, archive context, enum values. Get `name` from ' +
76
+ 'yootheme_builder_sources_list. Operates on the default site unless site_id is provided.',
78
77
  inputSchema: {
79
78
  site_id: SITE_ID_SCHEMA,
80
79
  name: z
@@ -91,9 +90,10 @@ export function buildSourcesTools(pool, deps) {
91
90
  }),
92
91
  defineTool({
93
92
  name: 'yootheme_builder_element_get_binding',
94
- description: 'Read the source binding attached to an element the bound source name, ' +
95
- 'the field-mappings (which source field feeds which element prop) and the ' +
96
- 'query arguments/directives. Returns the empty object if the element is not bound. ' +
93
+ description: 'Read the source binding attached to an element. Always returns {template_id, ' +
94
+ 'element_path, binding, has_binding, field_mapping_count, warning?}: `binding` is ' +
95
+ 'the raw source binding (bound source name, field-mappings, query args/directives); ' +
96
+ '`has_binding` is false and `field_mapping_count` 0 when the element is not bound. ' +
97
97
  'Operates on the default site unless site_id is provided.',
98
98
  inputSchema: {
99
99
  site_id: SITE_ID_SCHEMA,
@@ -162,6 +162,16 @@ export function buildSourcesTools(pool, deps) {
162
162
  'non-empty — used on a `_condition` prop), ' +
163
163
  '{condition:"!"} (only when empty), ' +
164
164
  '{date:"D, d.m.y"} (format an ISO date).'),
165
+ // SOURCES_BINDING-17: per-mapping GraphQL
166
+ // arguments for the bound source-field —
167
+ // persisted under source.props.<prop>.arguments
168
+ // (e.g. an image size / a sub-query filter).
169
+ arguments: z
170
+ .record(z.string(), z.unknown())
171
+ .optional()
172
+ .describe('Optional GraphQL arguments for this source-field, ' +
173
+ 'written to source.props.<prop>.arguments ' +
174
+ '(e.g. {width:1200,height:800} on an image field).'),
165
175
  })
166
176
  .strict(),
167
177
  ]))
@@ -271,14 +281,14 @@ export function buildSourcesTools(pool, deps) {
271
281
  // source + the native item-level source_extended.props carrier
272
282
  // bind_source cannot write, at a pointer, ETag-locked.
273
283
  'Surgically SET a precomposed `source` (+ optional ' +
274
- '`source_extended.props`) on ONE element at a pointer, ETag-locked, ' +
275
- 'leaving every OTHER node unchanged (no 14 KB page_save). Use this ' +
276
- 'not element_bind_source — when you have the exact source shape OR need ' +
277
- '`source_extended.props`, the native Multi-Items item-mapping carrier ' +
278
- 'bind_source cannot write. E.g. an FAQ accordion scoped to the term: ' +
279
- 'source.query.name="categoryFaqs.taxonomyCategoryFaq", field={name:' +
280
- '"faq"}, source_extended.props maps title/content to #node. ETag req. ' +
281
- 'Operates on the default site unless site_id is provided.',
284
+ '`source_extended.props`) on ONE element at a pointer, ETag-locked ' +
285
+ '(blast-radius 0). Use this not element_bind_source when you have ' +
286
+ 'the exact source shape OR need `source_extended.props`, the native ' +
287
+ 'Multi-Items item-mapping carrier bind_source cannot write. E.g. FAQ ' +
288
+ 'accordion scoped to term: query.name="categoryFaqs.taxonomyCategoryFaq"' +
289
+ ', field={name:"faq"}, source_extended.props→#node. Element-prop keys ' +
290
+ 'the type does not render echo back as `unknown_prop_keys` (non-fatal). ' +
291
+ 'ETag req. Operates on the default site unless site_id is provided.',
282
292
  inputSchema: {
283
293
  site_id: SITE_ID_SCHEMA,
284
294
  template_id: TEMPLATE_ID,
@@ -383,13 +393,13 @@ export function buildSourcesTools(pool, deps) {
383
393
  description:
384
394
  // N1 (Glöckle HANDOFF-5) — template-wide source/field rename.
385
395
  'Template-wide RENAME of a source / type / field name across EVERY ' +
386
- 'binding in a template, in ONE ETag-locked write (not a whole-layout ' +
387
- 'page_save) — preserving each binding\'s arguments, props and ' +
388
- 'field_mappings. Use after a taxonomy/CPT rename (faq→help) breaks ' +
389
- 'every bound layout. Pass `from`/`to` for one source, and/or ' +
390
- '`source_map`/`field_map` to rename a relation + its field tokens ' +
391
- 'together; the dotted "<source>.<relation>" form is rewritten ' +
392
- 'segment-by-segment. Returns {replaced_count, changed_paths, new_etag}. ' +
396
+ 'binding in a template, in ONE ETag-locked write preserving each ' +
397
+ 'binding\'s arguments, props and field_mappings. Use after a ' +
398
+ 'taxonomy/CPT rename (faq→help) breaks every bound layout. Pass ' +
399
+ '`from`/`to` for one source, and/or `source_map`/`field_map` to ' +
400
+ 'rename a relation + its field tokens together; the dotted ' +
401
+ '"<source>.<relation>" form is rewritten segment-by-segment. Returns ' +
402
+ '{replaced_count, changed_paths, new_etag}. Preview with dry_run:true. ' +
393
403
  'ETag req. Operates on the default site unless site_id is provided.',
394
404
  inputSchema: {
395
405
  site_id: SITE_ID_SCHEMA,
@@ -425,6 +435,14 @@ export function buildSourcesTools(pool, deps) {
425
435
  '"help_title", faq_body:"help_body"}). Filters + sibling keys ' +
426
436
  'are preserved.'),
427
437
  etag: ETAG,
438
+ // SOURCES_BINDING-15: preflight the template-wide rename.
439
+ dry_run: z
440
+ .boolean()
441
+ .optional()
442
+ .describe('Preflight ONLY. When true, compute the template-wide rename ' +
443
+ 'and return {replaced_count, changed_paths, would_change, ' +
444
+ 'dry_run:true} WITHOUT persisting — nothing is written ' +
445
+ '(etag == new_etag, still chainable into the real call).'),
428
446
  },
429
447
  outputSchema: RENAME_SOURCE_OUTPUT_SCHEMA,
430
448
  annotations: mutating('Rename Source'),
@@ -432,10 +450,10 @@ export function buildSourcesTools(pool, deps) {
432
450
  }),
433
451
  defineTool({
434
452
  name: 'yootheme_builder_element_unbind_source',
435
- description: 'Remove the source binding from an element. Clears `props.source`. Destructive ' +
436
- 'in the sense that it may break dynamic-content rendering always ask the ' +
437
- 'user to confirm. Requires ETag. ' +
438
- 'Operates on the default site unless site_id is provided.',
453
+ description: 'Remove the source binding from an element. Clears the element\'s canonical ' +
454
+ 'top-level `source` key AND the legacy `props.source`. Destructive in the sense ' +
455
+ 'that it may break dynamic-content rendering — always ask the user to confirm. ' +
456
+ 'Requires ETag. Operates on the default site unless site_id is provided.',
439
457
  inputSchema: {
440
458
  site_id: SITE_ID_SCHEMA,
441
459
  template_id: TEMPLATE_ID,
@@ -1 +1 @@
1
- {"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../src/tools/sources/builders.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACvF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EACH,UAAU,EACV,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,YAAY,GAEf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACH,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAE3B,uBAAuB,EACvB,uBAAuB,EACvB,yBAAyB,EACzB,qBAAqB,EACrB,iBAAiB,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACH,gCAAgC,EAChC,2BAA2B,EAC3B,sBAAsB,EACtB,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,UAAU,iBAAiB,CAC7B,IAAgB,EAChB,IAAkC;IAElC,0DAA0D;IAC1D,+DAA+D;IAC/D,gCAAgC;IAChC,MAAM,WAAW,GAAG,IAAI,EAAE,WAAW,CAAC;IACtC,MAAM,QAAQ,GAAG,CAAC,UAAwC,EAAsB,EAAE,CAC9E,CAAC,WAAW,KAAK,SAAS;QACtB,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,EAAE;QACrC,CAAC,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;IAElC,OAAO;QACH,UAAU,CAAC;YACP,IAAI,EAAE,+BAA+B;YACrC,WAAW,EACP,6EAA6E;gBAC7E,+EAA+E;gBAC/E,0FAA0F;gBAC1F,gEAAgE;gBAChE,0FAA0F;gBAC1F,mFAAmF;gBACnF,uDAAuD;gBACvD,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,GAAG,EAAE;qBACL,GAAG,CAAC,CAAC,CAAC;qBACN,GAAG,CAAC,GAAG,CAAC;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,4FAA4F,CAAC;gBAC3G,MAAM,EAAE,CAAC;qBACJ,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,gFAAgF,CAAC;gBAC/F,aAAa,EAAE,CAAC;qBACX,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,gFAAgF,CAAC;gBAC/F,KAAK,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,8EAA8E,CAAC;gBAC7F,IAAI,EAAE,CAAC;qBACF,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CAAC,0FAA0F,CAAC;gBACzG,SAAS,EAAE,SAAS;aACvB;YACD,YAAY,EAAE,0BAA0B;YACxC,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC;YACrC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAChD,YAAY,CAAC,MAAM,iBAAiB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAC/E,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,oCAAoC;YAC1C,WAAW,EACP,wEAAwE;gBACxE,wEAAwE;gBACxE,4EAA4E;gBAC5E,8DAA8D;gBAC9D,kDAAkD;gBAClD,yEAAyE;gBACzE,2EAA2E;gBAC3E,8DAA8D;gBAC9D,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,IAAI,EAAE,CAAC;qBACF,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,CACL,6DAA6D;oBACzD,iEAAiE;oBACjE,wBAAwB,CAC/B;gBACL,SAAS,EAAE,SAAS;aACvB;YACD,YAAY,EAAE,2BAA2B;YACzC,WAAW,EAAE,QAAQ,CAAC,mBAAmB,CAAC;YAC1C,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAChD,YAAY,CAAC,MAAM,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACnF,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,sCAAsC;YAC5C,WAAW,EACP,0EAA0E;gBAC1E,2EAA2E;gBAC3E,oFAAoF;gBACpF,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,YAAY;aAC7B;YACD,YAAY,EAAE,qBAAqB;YACnC,WAAW,EAAE,QAAQ,CAAC,oBAAoB,CAAC;YAC3C,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAChD,YAAY,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACrF,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,sCAAsC;YAC5C,WAAW,EACP,8EAA8E;gBAC9E,sEAAsE;gBACtE,mCAAmC;gBACnC,gEAAgE;gBAChE,kEAAkE;gBAClE,kEAAkE;gBAClE,8DAA8D;gBAC9D,kEAAkE;gBAClE,mEAAmE;gBACnE,oEAAoE;gBACpE,+EAA+E;gBAC/E,wEAAwE;gBACxE,wCAAwC;gBACxC,gDAAgD;gBAChD,2EAA2E;gBAC3E,gCAAgC;gBAChC,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,YAAY;gBAC1B,WAAW,EAAE,CAAC;qBACT,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,CACL,yDAAyD;oBACrD,yCAAyC,CAChD;gBACL,SAAS,EAAE,CAAC;qBACP,MAAM,EAAE;qBACR,QAAQ,EAAE;qBACV,QAAQ,CACL,0DAA0D;oBACtD,iDAAiD,CACxD;gBACL,cAAc,EAAE,CAAC;qBACZ,MAAM,CACH,CAAC,CAAC,MAAM,EAAE;gBACV,sDAAsD;gBACtD,kDAAkD;gBAClD,iDAAiD;gBACjD,uDAAuD;gBACvD,sCAAsC;gBACtC,wCAAwC;gBACxC,wDAAwD;gBACxD,CAAC,CAAC,KAAK,CAAC;oBACJ,CAAC,CAAC,MAAM,EAAE;oBACV,CAAC;yBACI,MAAM,CAAC;wBACJ,IAAI,EAAE,CAAC;6BACF,MAAM,EAAE;6BACR,GAAG,CAAC,CAAC,CAAC;6BACN,QAAQ,CAAC,wCAAwC,CAAC;wBACvD,OAAO,EAAE,CAAC;6BACL,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;6BAC/B,QAAQ,EAAE;6BACV,QAAQ,CACL,yCAAyC;4BACrC,kDAAkD;4BAClD,4CAA4C;4BAC5C,qCAAqC;4BACrC,yCAAyC,CAChD;qBACR,CAAC;yBACD,MAAM,EAAE;iBAChB,CAAC,CACL;qBACA,QAAQ,EAAE;qBACV,QAAQ,CACL,wEAAwE;oBACpE,2DAA2D;oBAC3D,6DAA6D;oBAC7D,oEAAoE;oBACpE,qEAAqE;oBACrE,mEAAmE;oBACnE,mEAAmE;oBACnE,uEAAuE;oBACvE,wEAAwE;oBACxE,sEAAsE;oBACtE,kEAAkE;oBAClE,+CAA+C;oBAC/C,+DAA+D;oBAC/D,8DAA8D;oBAC9D,+DAA+D;oBAC/D,gEAAgE;oBAChE,qEAAqE;oBACrE,oEAAoE;oBACpE,oEAAoE;oBACpE,wCAAwC;oBACxC,oEAAoE;oBACpE,oEAAoE;oBACpE,kCAAkC,CACzC;gBACL,YAAY,EAAE,CAAC;qBACV,IAAI,CAAC,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,CAAC;qBACnC,QAAQ,EAAE;qBACV,QAAQ,CACL,2EAA2E;oBACvE,wEAAwE;oBACxE,wEAAwE;oBACxE,0DAA0D,CACjE;gBACL,gEAAgE;gBAChE,8DAA8D;gBAC9D,qEAAqE;gBACrE,mEAAmE;gBACnE,kEAAkE;gBAClE,oEAAoE;gBACpE,iEAAiE;gBACjE,QAAQ,EAAE,CAAC;qBACN,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,EAAE;qBACV,QAAQ,CACL,gEAAgE;oBAC5D,qEAAqE;oBACrE,oEAAoE;oBACpE,uEAAuE;oBACvE,yEAAyE,CAChF;gBACL,KAAK,EAAE,CAAC;qBACH,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,EAAE;qBACV,QAAQ,CACL,oEAAoE;oBAChE,wDAAwD;oBACxD,0DAA0D;oBAC1D,wEAAwE;oBACxE,0DAA0D,CACjE;gBACL,SAAS,EAAE,CAAC;qBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;qBAC/B,QAAQ,EAAE;qBACV,QAAQ,CACL,2EAA2E;oBACvE,6EAA6E;oBAC7E,yEAAyE,CAChF;gBACL,UAAU,EAAE,CAAC;qBACR,KAAK,CACF,CAAC;qBACI,MAAM,CAAC;oBACJ,IAAI,EAAE,CAAC;yBACF,MAAM,EAAE;yBACR,GAAG,CAAC,CAAC,CAAC;yBACN,QAAQ,CAAC,0CAA0C,CAAC;oBACzD,SAAS,EAAE,CAAC;yBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;yBAC/B,QAAQ,EAAE;yBACV,QAAQ,CAAC,uCAAuC,CAAC;iBACzD,CAAC;qBACD,MAAM,EAAE,CAChB;qBACA,QAAQ,EAAE;qBACV,QAAQ,CACL,2EAA2E;oBACvE,oEAAoE;oBACpE,wBAAwB,CAC/B;gBACL,gEAAgE;gBAChE,4DAA4D;gBAC5D,sEAAsE;gBACtE,iEAAiE;gBACjE,oEAAoE;gBACpE,qEAAqE;gBACrE,eAAe,EAAE,CAAC;qBACb,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;qBAC/B,QAAQ,EAAE;qBACV,QAAQ,CACL,wEAAwE;oBACpE,uEAAuE;oBACvE,oEAAoE;oBACpE,0EAA0E;oBAC1E,uEAAuE;oBACvE,wDAAwD,CAC/D;gBACL,IAAI,EAAE,IAAI;aACb;YACD,WAAW,EAAE,QAAQ,CAAC,aAAa,CAAC;YACpC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,sCAAsC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAC7F,YAAY,CAAC,MAAM,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACrF,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,qCAAqC;YAC3C,WAAW;YACP,oEAAoE;YACpE,+DAA+D;YAC/D,uDAAuD;YACvD,oDAAoD;gBACpD,qEAAqE;gBACrE,sEAAsE;gBACtE,yEAAyE;gBACzE,uEAAuE;gBACvE,sEAAsE;gBACtE,oEAAoE;gBACpE,uEAAuE;gBACvE,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,YAAY;gBAC1B,iEAAiE;gBACjE,gDAAgD;gBAChD,MAAM,EAAE,CAAC;qBACJ,MAAM,CAAC;oBACJ,KAAK,EAAE,CAAC;yBACH,MAAM,CAAC;wBACJ,IAAI,EAAE,CAAC;6BACF,MAAM,EAAE;6BACR,GAAG,CAAC,CAAC,CAAC;6BACN,QAAQ,CACL,wDAAwD;4BACpD,kDAAkD;4BAClD,yDAAyD;4BACzD,sCAAsC;4BACtC,qCAAqC,CAC5C;wBACL,KAAK,EAAE,CAAC;6BACH,MAAM,CAAC;4BACJ,IAAI,EAAE,CAAC;iCACF,MAAM,EAAE;iCACR,GAAG,CAAC,CAAC,CAAC;iCACN,QAAQ,CAAC,oDAAoD,CAAC;4BACnE,SAAS,EAAE,CAAC;iCACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;iCAC/B,QAAQ,EAAE;iCACV,QAAQ,CACL,uCAAuC;gCACnC,+CAA+C,CACtD;4BACL,UAAU,EAAE,CAAC;iCACR,KAAK,CACF,CAAC;iCACI,MAAM,CAAC;gCACJ,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;gCACvB,SAAS,EAAE,CAAC;qCACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;qCAC/B,QAAQ,EAAE;6BAClB,CAAC;iCACD,MAAM,EAAE,CAChB;iCACA,QAAQ,EAAE;iCACV,QAAQ,CACL,wCAAwC;gCACpC,yCAAyC,CAChD;yBACR,CAAC;6BACD,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CACL,6DAA6D;4BACzD,6BAA6B,CACpC;wBACL,SAAS,EAAE,CAAC;6BACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;6BAC/B,QAAQ,EAAE;6BACV,QAAQ,CAAC,qCAAqC,CAAC;qBACvD,CAAC;yBACD,QAAQ,CAAC,8CAA8C,CAAC;oBAC7D,KAAK,EAAE,CAAC;yBACH,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;yBAC/B,QAAQ,EAAE;yBACV,QAAQ,CACL,gEAAgE;wBAC5D,qDAAqD;wBACrD,kCAAkC,CACzC;iBACR,CAAC;qBACD,QAAQ,EAAE;qBACV,QAAQ,CACL,kEAAkE;oBAC9D,kEAAkE;oBAClE,2CAA2C,CAClD;gBACL,sEAAsE;gBACtE,eAAe,EAAE,CAAC;qBACb,MAAM,CAAC;oBACJ,KAAK,EAAE,CAAC;yBACH,MAAM,CACH,CAAC,CAAC,MAAM,EAAE,EACV,CAAC;yBACI,MAAM,CAAC;wBACJ,KAAK,EAAE,CAAC;6BACH,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;6BACnC,QAAQ,EAAE;6BACV,QAAQ,CACL,mDAAmD;4BAC/C,oBAAoB,CAC3B;wBACL,IAAI,EAAE,CAAC;6BACF,MAAM,EAAE;6BACR,QAAQ,EAAE;6BACV,QAAQ,CAAC,qDAAqD,CAAC;wBACpE,OAAO,EAAE,CAAC;6BACL,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;6BAC/B,QAAQ,EAAE;6BACV,QAAQ,CAAC,uCAAuC,CAAC;qBACzD,CAAC;yBACD,MAAM,EAAE,CAChB;yBACA,QAAQ,CACL,wCAAwC;wBACpC,8CAA8C;wBAC9C,iDAAiD,CACxD;iBACR,CAAC;qBACD,QAAQ,EAAE;qBACV,QAAQ,EAAE;qBACV,QAAQ,CACL,8DAA8D;oBAC1D,qEAAqE;oBACrE,uCAAuC,CAC9C;gBACL,IAAI,EAAE,IAAI;aACb;YACD,YAAY,EAAE,gCAAgC;YAC9C,WAAW,EAAE,QAAQ,CAAC,YAAY,CAAC;YACnC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,qCAAqC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAC5F,YAAY,CAAC,MAAM,sBAAsB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACpF,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,gCAAgC;YACtC,WAAW;YACP,8DAA8D;YAC9D,oEAAoE;gBACpE,sEAAsE;gBACtE,+DAA+D;gBAC/D,oEAAoE;gBACpE,8DAA8D;gBAC9D,mEAAmE;gBACnE,+DAA+D;gBAC/D,yEAAyE;gBACzE,oEAAoE;YACxE,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,WAAW;gBACxB,oEAAoE;gBACpE,oEAAoE;gBACpE,qCAAqC;gBACrC,IAAI,EAAE,CAAC;qBACF,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,EAAE;qBACV,QAAQ,CACL,6DAA6D;oBACzD,gDAAgD,CACvD;gBACL,EAAE,EAAE,CAAC;qBACA,MAAM,EAAE;qBACR,GAAG,CAAC,CAAC,CAAC;qBACN,QAAQ,EAAE;qBACV,QAAQ,CAAC,oEAAoE,CAAC;gBACnF,UAAU,EAAE,CAAC;qBACR,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBAC5C,QAAQ,EAAE;qBACV,QAAQ,CACL,6DAA6D;oBACzD,4DAA4D;oBAC5D,uDAAuD;oBACvD,yDAAyD;oBACzD,sCAAsC,CAC7C;gBACL,SAAS,EAAE,CAAC;qBACP,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBAC5C,QAAQ,EAAE;qBACV,QAAQ,CACL,4DAA4D;oBACxD,+CAA+C;oBAC/C,0DAA0D;oBAC1D,+DAA+D;oBAC/D,gBAAgB,CACvB;gBACL,IAAI,EAAE,IAAI;aACb;YACD,YAAY,EAAE,2BAA2B;YACzC,WAAW,EAAE,QAAQ,CAAC,eAAe,CAAC;YACtC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,gCAAgC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CACvF,YAAY,CAAC,MAAM,kBAAkB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAChF,CAAC;QAEF,UAAU,CAAC;YACP,IAAI,EAAE,wCAAwC;YAC9C,WAAW,EACP,gFAAgF;gBAChF,4EAA4E;gBAC5E,kCAAkC;gBAClC,0DAA0D;YAC9D,WAAW,EAAE;gBACT,OAAO,EAAE,cAAc;gBACvB,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,YAAY;gBAC1B,IAAI,EAAE,IAAI;gBACV,OAAO,EAAE,CAAC;qBACL,OAAO,EAAE;qBACT,QAAQ,EAAE;qBACV,QAAQ,CACL,qEAAqE;oBACjE,iEAAiE;oBACjE,wDAAwD,CAC/D;aACR;YACD,WAAW,EAAE,WAAW,CAAC,eAAe,CAAC;YACzC,OAAO,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,CACpC,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,wCAAwC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAC/F,YAAY,CAAC,MAAM,yBAAyB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACvF,CAAC;KACL,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"builders.js","sourceRoot":"","sources":["../../../src/tools/sources/builders.ts"],"names":[],"mappings":"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"}
@@ -11,17 +11,10 @@
11
11
  import { z } from 'zod';
12
12
  import { type ToolResult } from '../tool-builder.js';
13
13
  import type { SourcesHandlerDeps } from './handlers.js';
14
- /**
15
- * A single `field_mappings` value. F96/F82 (2026-06-10): EITHER a plain
16
- * source-field name string, OR a structured `{name, filters?}` object that
17
- * carries an explicit YT5 filters operator (e.g. `{condition: '!!'}` on a
18
- * `_condition` prop, or `{date: 'D, d.m.y'}` for a date format). Mirrors the
19
- * `field_mappings` union in `./builders.ts`. The handler forwards the value
20
- * verbatim — the PHP SourcesController normalises + persists it.
21
- */
22
14
  export type FieldMappingValue = string | {
23
15
  name: string;
24
16
  filters?: Record<string, unknown>;
17
+ arguments?: Record<string, unknown>;
25
18
  };
26
19
  /**
27
20
  * B5 (Glöckle onboarding, 2026-06-27) — a GraphQL directive on the relation
@@ -71,6 +64,9 @@ export declare const ELEMENT_SET_SOURCE_OUTPUT_SCHEMA: z.ZodObject<{
71
64
  new_etag: z.ZodString;
72
65
  changed_paths: z.ZodArray<z.ZodString>;
73
66
  changed_rel_paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
67
+ unknown_prop_keys: z.ZodOptional<z.ZodArray<z.ZodString>>;
68
+ unknown_prop_keys_hint: z.ZodOptional<z.ZodString>;
69
+ unknown_prop_keys_did_you_mean: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
74
70
  }, z.core.$strip>;
75
71
  /**
76
72
  * One YT-Pro `source_extended.props` field-mapping (the native item-level
@@ -128,6 +124,8 @@ export declare const RENAME_SOURCE_OUTPUT_SCHEMA: z.ZodObject<{
128
124
  changed_paths: z.ZodArray<z.ZodString>;
129
125
  etag: z.ZodString;
130
126
  new_etag: z.ZodString;
127
+ dry_run: z.ZodOptional<z.ZodBoolean>;
128
+ would_change: z.ZodOptional<z.ZodBoolean>;
131
129
  }, z.core.$strip>;
132
130
  /**
133
131
  * N1 — TEMPLATE-WIDE rename every matching binding's source-name + field-name
@@ -145,5 +143,6 @@ export declare function handleRenameSource({ client }: SourcesHandlerDeps, input
145
143
  to?: string;
146
144
  source_map?: Record<string, string>;
147
145
  field_map?: Record<string, string>;
146
+ dry_run?: boolean;
148
147
  }): Promise<ToolResult>;
149
148
  //# sourceMappingURL=handlers-bind.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handlers-bind.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/handlers-bind.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers-bind.d.ts","sourceRoot":"","sources":["../../../src/tools/sources/handlers-bind.ts"],"names":[],"mappings":"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"}