@wootsup/yt-builder-mcp 1.1.7 → 1.3.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.
- package/README.md +14 -10
- package/bin/yt-builder-mcp.js +55 -40
- package/dist/auth.d.ts +18 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +18 -0
- package/dist/auth.js.map +1 -1
- package/dist/catalog/build-catalog.d.ts +63 -0
- package/dist/catalog/build-catalog.d.ts.map +1 -0
- package/dist/catalog/build-catalog.js +166 -0
- package/dist/catalog/build-catalog.js.map +1 -0
- package/dist/cli/invocation-decision.d.ts +57 -0
- package/dist/cli/invocation-decision.d.ts.map +1 -0
- package/dist/cli/invocation-decision.js +86 -0
- package/dist/cli/invocation-decision.js.map +1 -0
- package/dist/client.d.ts +28 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +40 -1
- package/dist/client.js.map +1 -1
- package/dist/clients/claude-code.d.ts.map +1 -1
- package/dist/clients/claude-code.js +3 -1
- package/dist/clients/claude-code.js.map +1 -1
- package/dist/clients/claude-desktop.d.ts.map +1 -1
- package/dist/clients/claude-desktop.js +3 -1
- package/dist/clients/claude-desktop.js.map +1 -1
- package/dist/clients/cline.d.ts.map +1 -1
- package/dist/clients/cline.js +3 -1
- package/dist/clients/cline.js.map +1 -1
- package/dist/clients/codex-cli.d.ts +1 -1
- package/dist/clients/codex-cli.d.ts.map +1 -1
- package/dist/clients/codex-cli.js +98 -0
- package/dist/clients/codex-cli.js.map +1 -1
- package/dist/clients/continue.d.ts.map +1 -1
- package/dist/clients/continue.js +70 -1
- package/dist/clients/continue.js.map +1 -1
- package/dist/clients/cursor.d.ts.map +1 -1
- package/dist/clients/cursor.js +3 -1
- package/dist/clients/cursor.js.map +1 -1
- package/dist/clients/gemini-cli.d.ts.map +1 -1
- package/dist/clients/gemini-cli.js +3 -1
- package/dist/clients/gemini-cli.js.map +1 -1
- package/dist/clients/index.d.ts +104 -0
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +141 -0
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/roo-code.d.ts.map +1 -1
- package/dist/clients/roo-code.js +3 -1
- package/dist/clients/roo-code.js.map +1 -1
- package/dist/clients/zed.d.ts.map +1 -1
- package/dist/clients/zed.js +3 -1
- package/dist/clients/zed.js.map +1 -1
- package/dist/gateway/advanced-read-tool.d.ts +37 -0
- package/dist/gateway/advanced-read-tool.d.ts.map +1 -0
- package/dist/gateway/advanced-read-tool.js +156 -0
- package/dist/gateway/advanced-read-tool.js.map +1 -0
- package/dist/gateway/advanced-tool/domains.d.ts +18 -3
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +28 -9
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/register.js +43 -11
- package/dist/gateway/advanced-tool/register.js.map +1 -1
- package/dist/gateway/essentials.d.ts +14 -4
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +55 -5
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/gateway/test-support.d.ts +3 -3
- package/dist/gateway/test-support.js +3 -3
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -1
- package/dist/index.js.map +1 -1
- package/dist/install-skill.js +1 -1
- package/dist/proxy/bridge.d.ts +36 -0
- package/dist/proxy/bridge.d.ts.map +1 -0
- package/dist/proxy/bridge.js +129 -0
- package/dist/proxy/bridge.js.map +1 -0
- package/dist/proxy/mode.d.ts +10 -0
- package/dist/proxy/mode.d.ts.map +1 -0
- package/dist/proxy/mode.js +20 -0
- package/dist/proxy/mode.js.map +1 -0
- package/dist/server.d.ts +6 -4
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +14 -4
- package/dist/server.js.map +1 -1
- package/dist/setup-cli.d.ts +41 -0
- package/dist/setup-cli.d.ts.map +1 -1
- package/dist/setup-cli.js +163 -1
- package/dist/setup-cli.js.map +1 -1
- package/dist/setup-prompts.d.ts +23 -0
- package/dist/setup-prompts.d.ts.map +1 -1
- package/dist/setup-prompts.js +76 -1
- package/dist/setup-prompts.js.map +1 -1
- package/dist/setup-wizard.d.ts.map +1 -1
- package/dist/setup-wizard.js +7 -0
- package/dist/setup-wizard.js.map +1 -1
- package/dist/sites/bootstrap.d.ts +41 -0
- package/dist/sites/bootstrap.d.ts.map +1 -0
- package/dist/sites/bootstrap.js +58 -0
- package/dist/sites/bootstrap.js.map +1 -0
- package/dist/sites/client-pool.d.ts +33 -0
- package/dist/sites/client-pool.d.ts.map +1 -1
- package/dist/sites/client-pool.js +69 -1
- package/dist/sites/client-pool.js.map +1 -1
- package/dist/sites/registry.d.ts +30 -0
- package/dist/sites/registry.d.ts.map +1 -1
- package/dist/sites/registry.js.map +1 -1
- package/dist/sites/store.d.ts +8 -1
- package/dist/sites/store.d.ts.map +1 -1
- package/dist/sites/store.js +17 -2
- package/dist/sites/store.js.map +1 -1
- package/dist/sites/tools/index.d.ts.map +1 -1
- package/dist/sites/tools/index.js +9 -1
- package/dist/sites/tools/index.js.map +1 -1
- package/dist/sites/tools/use-site.d.ts +47 -0
- package/dist/sites/tools/use-site.d.ts.map +1 -0
- package/dist/sites/tools/use-site.js +203 -0
- package/dist/sites/tools/use-site.js.map +1 -0
- package/dist/tools/bind-guidance.d.ts +80 -0
- package/dist/tools/bind-guidance.d.ts.map +1 -0
- package/dist/tools/bind-guidance.js +95 -0
- package/dist/tools/bind-guidance.js.map +1 -0
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +75 -18
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/handlers-write.d.ts +20 -3
- package/dist/tools/elements/handlers-write.d.ts.map +1 -1
- package/dist/tools/elements/handlers-write.js +372 -10
- package/dist/tools/elements/handlers-write.js.map +1 -1
- package/dist/tools/elements/handlers.d.ts +6 -1
- package/dist/tools/elements/handlers.d.ts.map +1 -1
- package/dist/tools/elements/handlers.js +77 -10
- package/dist/tools/elements/handlers.js.map +1 -1
- package/dist/tools/elements/layout-hierarchy-rules.d.ts +62 -0
- package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +1 -0
- package/dist/tools/elements/layout-hierarchy-rules.js +154 -0
- package/dist/tools/elements/layout-hierarchy-rules.js.map +1 -0
- package/dist/tools/format/elements-format.d.ts +35 -0
- package/dist/tools/format/elements-format.d.ts.map +1 -1
- package/dist/tools/format/elements-format.js +134 -12
- package/dist/tools/format/elements-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +29 -0
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +99 -22
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +7 -0
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts +8 -0
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +10 -0
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +24 -0
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inspection.d.ts +24 -0
- package/dist/tools/inspection.d.ts.map +1 -1
- package/dist/tools/inspection.js +297 -5
- package/dist/tools/inspection.js.map +1 -1
- package/dist/tools/layout-flatten.d.ts +11 -8
- package/dist/tools/layout-flatten.d.ts.map +1 -1
- package/dist/tools/layout-flatten.js +17 -6
- package/dist/tools/layout-flatten.js.map +1 -1
- package/dist/tools/multi-items/builders.d.ts.map +1 -1
- package/dist/tools/multi-items/builders.js +18 -3
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +1 -1
- package/dist/tools/multi-items/clean-implode-handler.js +2 -2
- package/dist/tools/multi-items/clean-implode-handler.js.map +1 -1
- package/dist/tools/multi-items/format/inspection-format.d.ts +41 -0
- package/dist/tools/multi-items/format/inspection-format.d.ts.map +1 -0
- package/dist/tools/multi-items/format/inspection-format.js +64 -0
- package/dist/tools/multi-items/format/inspection-format.js.map +1 -0
- package/dist/tools/multi-items/inspect-handler.d.ts +50 -2
- package/dist/tools/multi-items/inspect-handler.d.ts.map +1 -1
- package/dist/tools/multi-items/inspect-handler.js +237 -10
- package/dist/tools/multi-items/inspect-handler.js.map +1 -1
- package/dist/tools/multi-items/inspection-cache.d.ts +85 -0
- package/dist/tools/multi-items/inspection-cache.d.ts.map +1 -0
- package/dist/tools/multi-items/inspection-cache.js +126 -0
- package/dist/tools/multi-items/inspection-cache.js.map +1 -0
- package/dist/tools/pages/builders.d.ts +31 -2
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +173 -17
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/handlers-read.d.ts +6 -2
- package/dist/tools/pages/handlers-read.d.ts.map +1 -1
- package/dist/tools/pages/handlers-read.js +228 -26
- package/dist/tools/pages/handlers-read.js.map +1 -1
- package/dist/tools/pages/handlers-write.d.ts +143 -7
- package/dist/tools/pages/handlers-write.d.ts.map +1 -1
- package/dist/tools/pages/handlers-write.js +215 -11
- package/dist/tools/pages/handlers-write.js.map +1 -1
- package/dist/tools/pages/index.d.ts +1 -1
- package/dist/tools/pages/index.d.ts.map +1 -1
- package/dist/tools/pages/index.js +1 -1
- package/dist/tools/pages/index.js.map +1 -1
- package/dist/tools/pages/schemas.d.ts +166 -0
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +347 -0
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/shared-schemas.d.ts.map +1 -1
- package/dist/tools/shared-schemas.js +26 -11
- package/dist/tools/shared-schemas.js.map +1 -1
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +64 -6
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/handlers-bind.d.ts +13 -1
- package/dist/tools/sources/handlers-bind.d.ts.map +1 -1
- package/dist/tools/sources/handlers-bind.js +219 -5
- package/dist/tools/sources/handlers-bind.js.map +1 -1
- package/dist/tools/sources/handlers.d.ts +3 -0
- package/dist/tools/sources/handlers.d.ts.map +1 -1
- package/dist/tools/sources/handlers.js +45 -8
- package/dist/tools/sources/handlers.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +23 -0
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +29 -0
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/sublayout/builders.d.ts +23 -0
- package/dist/tools/sublayout/builders.d.ts.map +1 -0
- package/dist/tools/sublayout/builders.js +54 -0
- package/dist/tools/sublayout/builders.js.map +1 -0
- package/dist/tools/sublayout/index.d.ts +13 -0
- package/dist/tools/sublayout/index.d.ts.map +1 -0
- package/dist/tools/sublayout/index.js +13 -0
- package/dist/tools/sublayout/index.js.map +1 -0
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +95 -0
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +1 -0
- package/dist/tools/sublayout/inspect-sublayout-handler.js +181 -0
- package/dist/tools/sublayout/inspect-sublayout-handler.js.map +1 -0
- package/dist/tools/tool-builder/results.d.ts +31 -0
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +95 -4
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/dist/uninstall-skill.d.ts +52 -0
- package/dist/uninstall-skill.d.ts.map +1 -0
- package/dist/uninstall-skill.js +146 -0
- package/dist/uninstall-skill.js.map +1 -0
- package/dist/uninstall.d.ts +73 -0
- package/dist/uninstall.d.ts.map +1 -0
- package/dist/uninstall.js +82 -0
- package/dist/uninstall.js.map +1 -0
- package/icon.png +0 -0
- package/manifest.json +10 -10
- package/package.json +7 -3
- package/skills/yt-builder-mcp/SKILL.md +157 -88
|
@@ -15,10 +15,27 @@ import { type HandlerExtra, type ToolResult } from '../tool-builder.js';
|
|
|
15
15
|
import type { ElementsHandlerDeps } from './handlers.js';
|
|
16
16
|
export declare function handleElementAdd({ client }: ElementsHandlerDeps, input: {
|
|
17
17
|
template_id: string;
|
|
18
|
-
parent_path
|
|
19
|
-
element_type
|
|
18
|
+
parent_path?: string;
|
|
19
|
+
element_type?: string;
|
|
20
|
+
type_name?: string;
|
|
20
21
|
props?: Record<string, unknown>;
|
|
21
22
|
children?: Record<string, unknown>[];
|
|
23
|
+
index?: number;
|
|
24
|
+
position?: number;
|
|
25
|
+
etag: string;
|
|
26
|
+
}, extra?: HandlerExtra): Promise<ToolResult>;
|
|
27
|
+
/**
|
|
28
|
+
* `scaffold_section` — POST /pages/{template_id}/elements/scaffold-section.
|
|
29
|
+
*
|
|
30
|
+
* Create a VALID `section → row → column` hull (optionally N columns) in ONE
|
|
31
|
+
* atomic call and return the column pointer(s) to drop content into. This is
|
|
32
|
+
* the positive-steering counterpart to the server-side hierarchy guard: it
|
|
33
|
+
* makes the correct structure the cheapest path, so the guard rarely fires.
|
|
34
|
+
* The whole hull lands in a single server-side transaction (one ETag bump).
|
|
35
|
+
*/
|
|
36
|
+
export declare function handleScaffoldSection({ client }: ElementsHandlerDeps, input: {
|
|
37
|
+
template_id: string;
|
|
38
|
+
columns?: number;
|
|
22
39
|
etag: string;
|
|
23
40
|
}, extra?: HandlerExtra): Promise<ToolResult>;
|
|
24
41
|
export declare function handleElementUpdateSettings({ client }: ElementsHandlerDeps, input: {
|
|
@@ -44,6 +61,6 @@ export declare function handleElementDelete({ client, elicitation }: ElementsHan
|
|
|
44
61
|
template_id: string;
|
|
45
62
|
element_path: string;
|
|
46
63
|
etag: string;
|
|
47
|
-
confirm?: boolean;
|
|
64
|
+
confirm?: boolean | 'true' | 'false' | 0 | 1;
|
|
48
65
|
}, extra?: HandlerExtra): Promise<ToolResult>;
|
|
49
66
|
//# sourceMappingURL=handlers-write.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers-write.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;
|
|
1
|
+
{"version":3,"file":"handlers-write.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,OAAO,EAKH,KAAK,YAAY,EACjB,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAiRzD,wBAAsB,gBAAgB,CAClC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,KAAK,EAAE;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACrC,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;CAChB,EACD,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CAkErB;AAID;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACvC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,KAAK,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC9D,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAID,wBAAsB,2BAA2B,CAC7C,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,KAAK,EAAE;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CAChB,EACD,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CAkCrB;AAID,wBAAsB,iBAAiB,CACnC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,KAAK,EAAE;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CAChB,EACD,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CAqBrB;AAID,wBAAsB,kBAAkB,CACpC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,KAAK,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAClE,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CAmBrB;AAkED,wBAAsB,mBAAmB,CACrC,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,mBAAmB,EAC5C,KAAK,EAAE;IACH,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;CAChD,EACD,KAAK,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,UAAU,CAAC,CA4BrB"}
|
|
@@ -12,16 +12,301 @@
|
|
|
12
12
|
* @license MIT
|
|
13
13
|
*/
|
|
14
14
|
import { elicitConfirmation } from '@getimo/mcp-toolkit';
|
|
15
|
-
import { encodeElementPath } from '../../client.js';
|
|
15
|
+
import { encodeElementPath, encodeTemplateId } from '../../client.js';
|
|
16
|
+
import { BIND_VIA_GATEWAY_EXAMPLE, BIND_VIA_GATEWAY_HINT } from '../bind-guidance.js';
|
|
16
17
|
import { PHASE_CONFIRM, PHASE_SEND } from '../progress-phases.js';
|
|
17
18
|
import { confirmGuard, createProgressReporter, errorResult, jsonResult, } from '../tool-builder.js';
|
|
19
|
+
// ─── Wave-7 (2026-05-29): props validation ──────────────────────────
|
|
20
|
+
//
|
|
21
|
+
// Cold-AI #5 hand-authored `props.source` / `props.source_extended` via
|
|
22
|
+
// element_update_settings({props:{source}}). YT-Pro's render-side then
|
|
23
|
+
// silently ignored the binding because `source` is not a leaf prop — it
|
|
24
|
+
// lives as a SIBLING of `props` on the element node. The agent had no
|
|
25
|
+
// signal that the call was a no-op until visual verification failed.
|
|
26
|
+
//
|
|
27
|
+
// These keys MUST go through yootheme_builder_element_bind_source (which
|
|
28
|
+
// writes them at the correct nesting level). Reject hand-authored attempts
|
|
29
|
+
// up-front so the agent gets a structured error instead of a silent broken
|
|
30
|
+
// render.
|
|
31
|
+
const RESERVED_BINDING_KEYS = new Set([
|
|
32
|
+
'source',
|
|
33
|
+
'source_extended',
|
|
34
|
+
// YT-Pro UI-only placeholders that customers paste from
|
|
35
|
+
// Inspect/Copy in the visual builder. They never resolve outside the
|
|
36
|
+
// builder runtime so they're useless inside a stored layout.
|
|
37
|
+
'source_node',
|
|
38
|
+
]);
|
|
39
|
+
// Wave-7 (2026-05-29): common cold-AI prop-key typos. The PHP backend
|
|
40
|
+
// silently drops unknown props, so a typo like `title` on a headline (real
|
|
41
|
+
// key is `content`) renders an empty headline. We surface a fix suggestion
|
|
42
|
+
// up-front for the small fixed set of high-frequency mistakes.
|
|
43
|
+
//
|
|
44
|
+
// Format: typo → { element_type → canonical_key }
|
|
45
|
+
// element_type === '*' applies to any element where the typo is known to be
|
|
46
|
+
// a typo on every type that has it.
|
|
47
|
+
const COMMON_PROP_TYPOS = {
|
|
48
|
+
title: {
|
|
49
|
+
headline: 'content',
|
|
50
|
+
subtitle: 'content',
|
|
51
|
+
text: 'content',
|
|
52
|
+
quote: 'content',
|
|
53
|
+
button_item: 'content',
|
|
54
|
+
// Wave-9 F9 (cold-AI #8): `button` accepts `content` at runtime
|
|
55
|
+
// even though the UI-tab fieldset omits it (see
|
|
56
|
+
// Inspector::knownAcceptedButHiddenFields). `title` is the most
|
|
57
|
+
// common cold-AI typo for the button label.
|
|
58
|
+
button: 'content',
|
|
59
|
+
},
|
|
60
|
+
text: {
|
|
61
|
+
headline: 'content',
|
|
62
|
+
text: 'content',
|
|
63
|
+
quote: 'content',
|
|
64
|
+
// Wave-9 F9: same rationale as `title` above — agents reading
|
|
65
|
+
// documentation often type `text` for the button label.
|
|
66
|
+
button: 'content',
|
|
67
|
+
},
|
|
68
|
+
label: {
|
|
69
|
+
button_item: 'content',
|
|
70
|
+
// Wave-9 F9: `label` is a common cold-AI alias for button text.
|
|
71
|
+
button: 'content',
|
|
72
|
+
},
|
|
73
|
+
url: {
|
|
74
|
+
button_item: 'link',
|
|
75
|
+
// Wave-9 F9 (cold-AI #8): `button` accepts `link` at runtime.
|
|
76
|
+
button: 'link',
|
|
77
|
+
},
|
|
78
|
+
href: {
|
|
79
|
+
// Wave-9 F9: HTML-native authors reach for `href` first.
|
|
80
|
+
button_item: 'link',
|
|
81
|
+
button: 'link',
|
|
82
|
+
},
|
|
83
|
+
button_text: {
|
|
84
|
+
button_item: 'content',
|
|
85
|
+
button: 'content',
|
|
86
|
+
},
|
|
87
|
+
button_link: {
|
|
88
|
+
button_item: 'link',
|
|
89
|
+
button: 'link',
|
|
90
|
+
},
|
|
91
|
+
style: {
|
|
92
|
+
button_item: 'button_style',
|
|
93
|
+
},
|
|
94
|
+
size: {
|
|
95
|
+
button_item: 'button_size',
|
|
96
|
+
},
|
|
97
|
+
};
|
|
98
|
+
function detectPropTypos(props, elementType) {
|
|
99
|
+
if (props === undefined || props === null)
|
|
100
|
+
return [];
|
|
101
|
+
const findings = [];
|
|
102
|
+
for (const key of Object.keys(props)) {
|
|
103
|
+
const map = COMMON_PROP_TYPOS[key];
|
|
104
|
+
if (map === undefined)
|
|
105
|
+
continue;
|
|
106
|
+
const suggested = map[elementType];
|
|
107
|
+
if (suggested !== undefined) {
|
|
108
|
+
findings.push({ typo: key, suggested });
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
return findings;
|
|
112
|
+
}
|
|
113
|
+
function rejectOnPropTypos(props, elementType) {
|
|
114
|
+
const findings = detectPropTypos(props, elementType);
|
|
115
|
+
if (findings.length === 0)
|
|
116
|
+
return null;
|
|
117
|
+
// F14 (2026-06-09): name the CANONICAL prop explicitly + imperatively
|
|
118
|
+
// (`use \`content\` instead of \`title\``) rather than only posing it
|
|
119
|
+
// as a question. A cold agent that hit `element_add headline {title}`
|
|
120
|
+
// got the element rendered empty because YT-Pro silently drops the
|
|
121
|
+
// unknown alias; the error must state the right key so the agent can
|
|
122
|
+
// self-correct in one step without a schema round-trip.
|
|
123
|
+
const summary = findings
|
|
124
|
+
.map((f) => `use \`${f.suggested}\` instead of \`${f.typo}\``)
|
|
125
|
+
.join('; ');
|
|
126
|
+
// Lead with the single most-likely fix so the canonical key is the
|
|
127
|
+
// first concrete token the agent reads.
|
|
128
|
+
const primary = findings[0];
|
|
129
|
+
const rename = primary !== undefined
|
|
130
|
+
? `Rename \`${primary.typo}\` → \`${primary.suggested}\`. `
|
|
131
|
+
: '';
|
|
132
|
+
return errorResult({
|
|
133
|
+
error: new Error(`Unknown prop(s) for element type \`${elementType}\`: ${summary}. ` +
|
|
134
|
+
rename +
|
|
135
|
+
'YT-Pro silently drops unknown props server-side, so the element would render empty. ' +
|
|
136
|
+
'Call yootheme_builder_element_type_get_schema to see the canonical prop keys.'),
|
|
137
|
+
context: {
|
|
138
|
+
element_type: elementType,
|
|
139
|
+
findings,
|
|
140
|
+
},
|
|
141
|
+
hint: `Re-try with the canonical key (e.g. \`${primary?.suggested ?? 'content'}\`), ` +
|
|
142
|
+
'or fetch the schema first: ' +
|
|
143
|
+
`yootheme_builder_element_type_get_schema({ element_type: "${elementType}" }).`,
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
function validatePropsForReservedKeys(props, elementType) {
|
|
147
|
+
if (props === undefined || props === null)
|
|
148
|
+
return null;
|
|
149
|
+
const offending = [];
|
|
150
|
+
for (const key of Object.keys(props)) {
|
|
151
|
+
if (RESERVED_BINDING_KEYS.has(key)) {
|
|
152
|
+
offending.push(key);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
if (offending.length === 0)
|
|
156
|
+
return null;
|
|
157
|
+
return errorResult({
|
|
158
|
+
error: new Error(`Reserved binding key(s) ${offending
|
|
159
|
+
.map((k) => `\`${k}\``)
|
|
160
|
+
.join(', ')} are NOT valid props for element type \`${elementType}\`. ` +
|
|
161
|
+
`Source binding lives as a SIBLING of \`props\` on the element node, ` +
|
|
162
|
+
`NOT nested inside props. Set the source via the gateway: ` +
|
|
163
|
+
`${BIND_VIA_GATEWAY_EXAMPLE} — it writes the binding at the correct ` +
|
|
164
|
+
`nesting level (the bind tool is advanced, not in tools/list). ` +
|
|
165
|
+
`For per-prop leaf bindings (headline.content, etc.) pass the prop name ` +
|
|
166
|
+
`inside the \`field_mappings\` argument of that same call. ` +
|
|
167
|
+
// F97 (2026-06-10): a FILTERED prop (e.g. a `_condition` that
|
|
168
|
+
// renders a row only when a field is non-empty) is the most
|
|
169
|
+
// common reason an agent reaches for a raw `source` here. The
|
|
170
|
+
// theme-canonical, validated path is the field_mappings OBJECT
|
|
171
|
+
// form on element_bind_source — name it so the agent never has
|
|
172
|
+
// to hand-author a dead `source` blob nor build pre-filtered
|
|
173
|
+
// flows as a workaround.
|
|
174
|
+
`For a FILTERED prop (e.g. a \`_condition\` that shows a row only when a ` +
|
|
175
|
+
`field is set) use the field_mappings OBJECT form: ` +
|
|
176
|
+
`field_mappings: { _condition: { name: "<field>", filters: { condition: "!!" } } } ` +
|
|
177
|
+
`(\`"!!"\` = render only when non-empty, \`"!"\` = only when empty; a bare ` +
|
|
178
|
+
`_condition with no filters operator renders ALWAYS). Date-format leaves use ` +
|
|
179
|
+
`{ name: "<field>", filters: { date: "D, d.m.y" } }.`),
|
|
180
|
+
context: { element_type: elementType, offending_keys: offending },
|
|
181
|
+
hint: 'Run yootheme_builder_element_type_get_schema to see the binding contract ' +
|
|
182
|
+
`(do_not section lists this anti-pattern). Then ${BIND_VIA_GATEWAY_HINT} ` +
|
|
183
|
+
'For filtered props pass the field_mappings object form ' +
|
|
184
|
+
'({ <prop>: { name, filters } }) on element_bind_source.',
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
// ─── children-tree guard (F132, Wave 4a) ─────────────────────────────
|
|
188
|
+
//
|
|
189
|
+
// `element_add` accepts a `children` array of arbitrary element objects.
|
|
190
|
+
// Before Wave 4a only the top-level `props` were validated, so a cold agent
|
|
191
|
+
// building a grid+grid_item tree in ONE element_add could smuggle the exact
|
|
192
|
+
// forbidden shapes through the children:
|
|
193
|
+
//
|
|
194
|
+
// children: [{ type:'grid_item', source:{query:…}, props:{title:…} }]
|
|
195
|
+
//
|
|
196
|
+
// `source` is a SIBLING of `props` on YT-Pro element nodes; hand-authoring it
|
|
197
|
+
// (or `source_extended` / `source_node`) never resolves in a stored layout —
|
|
198
|
+
// the render silently produces 0 rows while element_add returns success. The
|
|
199
|
+
// same applies to per-prop typos (`title` on a headline → empty headline).
|
|
200
|
+
//
|
|
201
|
+
// This walks the whole children subtree and applies the SAME two guards that
|
|
202
|
+
// protect top-level props, plus a sibling-`source` rejection per node.
|
|
203
|
+
function elementTypeOfChild(node) {
|
|
204
|
+
const t = node.type;
|
|
205
|
+
if (typeof t === 'string' && t !== '')
|
|
206
|
+
return t;
|
|
207
|
+
const et = node.element_type;
|
|
208
|
+
if (typeof et === 'string' && et !== '')
|
|
209
|
+
return et;
|
|
210
|
+
return '<child>';
|
|
211
|
+
}
|
|
212
|
+
function rejectSourceSiblingOnChild(node, elementType) {
|
|
213
|
+
const offending = [...RESERVED_BINDING_KEYS].filter((k) => k in node);
|
|
214
|
+
if (offending.length === 0)
|
|
215
|
+
return null;
|
|
216
|
+
return errorResult({
|
|
217
|
+
error: new Error(`Hand-authored binding key(s) ${offending
|
|
218
|
+
.map((k) => `\`${k}\``)
|
|
219
|
+
.join(', ')} found on a \`children\` node (element type \`${elementType}\`). ` +
|
|
220
|
+
`A source binding must NOT be hand-authored inside an element_add tree — ` +
|
|
221
|
+
`the stored layout silently renders 0 rows. Add the bare container/child ` +
|
|
222
|
+
`structure first, then bind with \`yootheme_builder_element_bind_source\`, ` +
|
|
223
|
+
`which writes the binding at the correct nesting level.`),
|
|
224
|
+
context: { element_type: elementType, offending_keys: offending },
|
|
225
|
+
hint: 'Remove `source` / `source_extended` / `source_node` from the children tree. ' +
|
|
226
|
+
'Build the structure, then call yootheme_builder_element_bind_source. See ' +
|
|
227
|
+
'yootheme_builder_element_type_get_schema (do_not section).',
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Recursively validate a `children` array: each node's own `props` is run
|
|
232
|
+
* through the reserved-key + prop-typo guards, the node itself is checked
|
|
233
|
+
* for a hand-authored `source` sibling, and nested `children` recurse.
|
|
234
|
+
* Returns the FIRST rejection found, or null when the whole tree is clean.
|
|
235
|
+
*/
|
|
236
|
+
function validateChildrenTree(children) {
|
|
237
|
+
if (!Array.isArray(children))
|
|
238
|
+
return null;
|
|
239
|
+
for (const raw of children) {
|
|
240
|
+
if (raw === null || typeof raw !== 'object')
|
|
241
|
+
continue;
|
|
242
|
+
const node = raw;
|
|
243
|
+
const elementType = elementTypeOfChild(node);
|
|
244
|
+
const sourceRejection = rejectSourceSiblingOnChild(node, elementType);
|
|
245
|
+
if (sourceRejection !== null)
|
|
246
|
+
return sourceRejection;
|
|
247
|
+
const props = node.props !== null && typeof node.props === 'object'
|
|
248
|
+
? node.props
|
|
249
|
+
: undefined;
|
|
250
|
+
const propsRejection = validatePropsForReservedKeys(props, elementType);
|
|
251
|
+
if (propsRejection !== null)
|
|
252
|
+
return propsRejection;
|
|
253
|
+
const typoRejection = rejectOnPropTypos(props, elementType);
|
|
254
|
+
if (typoRejection !== null)
|
|
255
|
+
return typoRejection;
|
|
256
|
+
const nested = validateChildrenTree(node.children);
|
|
257
|
+
if (nested !== null)
|
|
258
|
+
return nested;
|
|
259
|
+
}
|
|
260
|
+
return null;
|
|
261
|
+
}
|
|
18
262
|
// ─── element_add ─────────────────────────────────────────────────────
|
|
19
263
|
export async function handleElementAdd({ client }, input, extra) {
|
|
20
|
-
|
|
264
|
+
// Union of F165 (type_name → element_type alias) and F70 (position →
|
|
265
|
+
// index alias). Both aliases are folded onto their canonical keys and
|
|
266
|
+
// stripped so they never leak into the REST body. The canonical key
|
|
267
|
+
// wins when both are supplied.
|
|
268
|
+
const { template_id, etag, type_name, index, position, ...rest } = input;
|
|
269
|
+
const elementType = typeof rest.element_type === 'string' && rest.element_type !== ''
|
|
270
|
+
? rest.element_type
|
|
271
|
+
: typeof type_name === 'string'
|
|
272
|
+
? type_name
|
|
273
|
+
: '';
|
|
274
|
+
if (elementType === '') {
|
|
275
|
+
return errorResult({
|
|
276
|
+
error: new Error('element_type is required.'),
|
|
277
|
+
context: { template_id },
|
|
278
|
+
hint: 'Provide `element_type` (e.g. "grid"; `type_name` is accepted as an ' +
|
|
279
|
+
'alias). Use yootheme_builder_element_types_list for the catalogue.',
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
// F70: index wins over the position alias; absent → body carries no
|
|
283
|
+
// index (server appends), preserving the historical append request.
|
|
284
|
+
const resolvedIndex = index ?? position;
|
|
285
|
+
const body = {
|
|
286
|
+
parent_path: typeof rest.parent_path === 'string' ? rest.parent_path : '',
|
|
287
|
+
element_type: elementType,
|
|
288
|
+
...(rest.props !== undefined ? { props: rest.props } : {}),
|
|
289
|
+
...(rest.children !== undefined ? { children: rest.children } : {}),
|
|
290
|
+
...(resolvedIndex !== undefined ? { index: resolvedIndex } : {}),
|
|
291
|
+
};
|
|
292
|
+
// Wave-7: guard against hand-authored source/source_extended in props.
|
|
293
|
+
const propsRejection = validatePropsForReservedKeys(input.props, elementType);
|
|
294
|
+
if (propsRejection !== null)
|
|
295
|
+
return propsRejection;
|
|
296
|
+
// Wave-7: guard against common prop-key typos (title→content etc.).
|
|
297
|
+
const typoRejection = rejectOnPropTypos(input.props, elementType);
|
|
298
|
+
if (typoRejection !== null)
|
|
299
|
+
return typoRejection;
|
|
300
|
+
// F132 (Wave 4a): the same guards must reach the `children` subtree —
|
|
301
|
+
// otherwise a single element_add can smuggle a forbidden source/typo
|
|
302
|
+
// through a nested child and silently render 0 rows.
|
|
303
|
+
const childrenRejection = validateChildrenTree(input.children);
|
|
304
|
+
if (childrenRejection !== null)
|
|
305
|
+
return childrenRejection;
|
|
21
306
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
22
307
|
await progress?.report(0, 2, PHASE_SEND);
|
|
23
308
|
try {
|
|
24
|
-
const data = await client.post(`/pages/${
|
|
309
|
+
const data = await client.post(`/pages/${encodeTemplateId(template_id)}/elements`, { body, etag });
|
|
25
310
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
26
311
|
return jsonResult(data);
|
|
27
312
|
}
|
|
@@ -34,9 +319,45 @@ export async function handleElementAdd({ client }, input, extra) {
|
|
|
34
319
|
});
|
|
35
320
|
}
|
|
36
321
|
}
|
|
322
|
+
// ─── scaffold_section (WF2 Option C) ─────────────────────────────────
|
|
323
|
+
/**
|
|
324
|
+
* `scaffold_section` — POST /pages/{template_id}/elements/scaffold-section.
|
|
325
|
+
*
|
|
326
|
+
* Create a VALID `section → row → column` hull (optionally N columns) in ONE
|
|
327
|
+
* atomic call and return the column pointer(s) to drop content into. This is
|
|
328
|
+
* the positive-steering counterpart to the server-side hierarchy guard: it
|
|
329
|
+
* makes the correct structure the cheapest path, so the guard rarely fires.
|
|
330
|
+
* The whole hull lands in a single server-side transaction (one ETag bump).
|
|
331
|
+
*/
|
|
332
|
+
export async function handleScaffoldSection({ client }, input, extra) {
|
|
333
|
+
const { template_id, columns, etag } = input;
|
|
334
|
+
const progress = extra ? createProgressReporter(extra) : null;
|
|
335
|
+
await progress?.report(0, 2, PHASE_SEND);
|
|
336
|
+
try {
|
|
337
|
+
const body = columns !== undefined ? { columns } : {};
|
|
338
|
+
const data = await client.post(`/pages/${encodeTemplateId(template_id)}/elements/scaffold-section`, { body, etag });
|
|
339
|
+
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
340
|
+
return jsonResult(data);
|
|
341
|
+
}
|
|
342
|
+
catch (e) {
|
|
343
|
+
return errorResult({
|
|
344
|
+
error: e,
|
|
345
|
+
context: { template_id, columns },
|
|
346
|
+
hint: 'On 412 refresh via yootheme_builder_get_etag and retry. The response ' +
|
|
347
|
+
'`column_paths` are valid parents for yootheme_builder_element_add — ' +
|
|
348
|
+
'drop your content elements into those columns.',
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
}
|
|
37
352
|
// ─── element_update_settings ─────────────────────────────────────────
|
|
38
353
|
export async function handleElementUpdateSettings({ client }, input, extra) {
|
|
39
354
|
const { template_id, element_path, props, merge, etag } = input;
|
|
355
|
+
// Wave-7: guard against hand-authored source/source_extended in props.
|
|
356
|
+
// element_path is the only identity we have at this layer; the agent gets
|
|
357
|
+
// a clear message anyway because the offending key is named explicitly.
|
|
358
|
+
const propsRejection = validatePropsForReservedKeys(props, `<at ${element_path}>`);
|
|
359
|
+
if (propsRejection !== null)
|
|
360
|
+
return propsRejection;
|
|
40
361
|
const encoded = encodeElementPath(element_path);
|
|
41
362
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
42
363
|
await progress?.report(0, 2, PHASE_SEND);
|
|
@@ -48,7 +369,7 @@ export async function handleElementUpdateSettings({ client }, input, extra) {
|
|
|
48
369
|
if (merge === true) {
|
|
49
370
|
body.merge = true;
|
|
50
371
|
}
|
|
51
|
-
const data = await client.put(`/pages/${
|
|
372
|
+
const data = await client.put(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/settings`, { body, etag });
|
|
52
373
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
53
374
|
return jsonResult(data);
|
|
54
375
|
}
|
|
@@ -69,7 +390,7 @@ export async function handleElementMove({ client }, input, extra) {
|
|
|
69
390
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
70
391
|
await progress?.report(0, 2, PHASE_SEND);
|
|
71
392
|
try {
|
|
72
|
-
const data = await client.post(`/pages/${
|
|
393
|
+
const data = await client.post(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/move`, { body: { to_parent_path, to_index }, etag });
|
|
73
394
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
74
395
|
return jsonResult(data);
|
|
75
396
|
}
|
|
@@ -89,7 +410,7 @@ export async function handleElementClone({ client }, input, extra) {
|
|
|
89
410
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
90
411
|
await progress?.report(0, 2, PHASE_SEND);
|
|
91
412
|
try {
|
|
92
|
-
const data = await client.post(`/pages/${
|
|
413
|
+
const data = await client.post(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}/clone`, { etag });
|
|
93
414
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
94
415
|
return jsonResult(data);
|
|
95
416
|
}
|
|
@@ -105,13 +426,50 @@ export async function handleElementClone({ client }, input, extra) {
|
|
|
105
426
|
//
|
|
106
427
|
// Wave G.4.1 — destructive confirm via MCP elicitation. Progress
|
|
107
428
|
// reports (Wave G.5) only start AFTER the confirm gate clears.
|
|
429
|
+
// Wave-6 R4 (2026-05-29): Defensive truthiness for the confirm gate.
|
|
430
|
+
// Cold-AI #4 reported the gate kept firing despite `confirm:true`. The Zod
|
|
431
|
+
// schema already coerces only strict booleans (anything non-boolean is
|
|
432
|
+
// rejected upstream as invalid_arguments), but we widen the in-handler
|
|
433
|
+
// check to accept the literal string `"true"` / numeric `1` as a safety net
|
|
434
|
+
// in case a future wrapper round-trips the arg through JSON re-encoding.
|
|
435
|
+
function isConfirmedTrue(v) {
|
|
436
|
+
if (v === true)
|
|
437
|
+
return true;
|
|
438
|
+
if (typeof v === 'string' && v.toLowerCase() === 'true')
|
|
439
|
+
return true;
|
|
440
|
+
if (typeof v === 'number' && v === 1)
|
|
441
|
+
return true;
|
|
442
|
+
return false;
|
|
443
|
+
}
|
|
444
|
+
function isConfirmedFalse(v) {
|
|
445
|
+
if (v === false)
|
|
446
|
+
return true;
|
|
447
|
+
if (typeof v === 'string' && v.toLowerCase() === 'false')
|
|
448
|
+
return true;
|
|
449
|
+
if (typeof v === 'number' && v === 0)
|
|
450
|
+
return true;
|
|
451
|
+
return false;
|
|
452
|
+
}
|
|
108
453
|
async function resolveDeleteConfirm(elicitation, template_id, element_path, confirm) {
|
|
109
|
-
|
|
454
|
+
// Wave-6 R4: explicit truthy check — confirm:true (any form) bypasses
|
|
455
|
+
// the elicitation/preview path immediately.
|
|
456
|
+
if (isConfirmedTrue(confirm))
|
|
110
457
|
return null;
|
|
111
|
-
if (confirm
|
|
458
|
+
if (isConfirmedFalse(confirm) || !elicitation) {
|
|
112
459
|
return confirmGuard({
|
|
113
460
|
operation: 'delete element',
|
|
114
|
-
details: {
|
|
461
|
+
details: {
|
|
462
|
+
template_id,
|
|
463
|
+
element_path,
|
|
464
|
+
// R4: echo back what was received so the agent can compare.
|
|
465
|
+
// Wave-7 (2026-05-29): force-encode undefined to null so the
|
|
466
|
+
// key survives JSON.stringify in the agent-facing payload.
|
|
467
|
+
// Without this the agent saw NO received_confirm field at all
|
|
468
|
+
// (key dropped by serializer) and could not diff sent vs
|
|
469
|
+
// received — looked like the value was accepted.
|
|
470
|
+
received_confirm: confirm === undefined ? null : confirm,
|
|
471
|
+
expected: 'confirm: true (boolean)',
|
|
472
|
+
},
|
|
115
473
|
});
|
|
116
474
|
}
|
|
117
475
|
const accepted = await elicitConfirmation(elicitation, `Permanently delete element at "${element_path}" in template ` +
|
|
@@ -132,7 +490,11 @@ export async function handleElementDelete({ client, elicitation }, input, extra)
|
|
|
132
490
|
const progress = extra ? createProgressReporter(extra) : null;
|
|
133
491
|
await progress?.report(0, 2, PHASE_SEND);
|
|
134
492
|
try {
|
|
135
|
-
|
|
493
|
+
// Wave-12 / Cold-AI #5 F13 (restored Wave-13 post-merge): forward
|
|
494
|
+
// `{confirm:true}` as JSON body so the PHP confirm-guard accepts the
|
|
495
|
+
// delete. Without it the guard returns `requires_confirm:true` and
|
|
496
|
+
// the caller loops forever.
|
|
497
|
+
const data = await client.delete(`/pages/${encodeTemplateId(template_id)}/elements/${encoded}`, { etag, body: { confirm: true } });
|
|
136
498
|
await progress?.report(2, 2, PHASE_CONFIRM);
|
|
137
499
|
return jsonResult(data);
|
|
138
500
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers-write.js","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"handlers-write.js","sourceRoot":"","sources":["../../../src/tools/elements/handlers-write.ts"],"names":[],"mappings":"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"}
|
|
@@ -27,6 +27,8 @@ export declare const ELEMENT_LIST_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
27
27
|
parent_path: z.ZodOptional<z.ZodString>;
|
|
28
28
|
label: z.ZodOptional<z.ZodString>;
|
|
29
29
|
has_binding: z.ZodOptional<z.ZodBoolean>;
|
|
30
|
+
source: z.ZodOptional<z.ZodUnknown>;
|
|
31
|
+
binding_summary: z.ZodOptional<z.ZodString>;
|
|
30
32
|
}, z.core.$loose>>;
|
|
31
33
|
total: z.ZodNumber;
|
|
32
34
|
template_id: z.ZodString;
|
|
@@ -34,6 +36,7 @@ export declare const ELEMENT_LIST_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
34
36
|
projected_fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
35
37
|
available_fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
36
38
|
unknown_fields: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
39
|
+
projection_warning: z.ZodOptional<z.ZodString>;
|
|
37
40
|
}, z.core.$strip>;
|
|
38
41
|
export declare const ELEMENT_GET_OUTPUT_SCHEMA: z.ZodObject<{
|
|
39
42
|
template_id: z.ZodString;
|
|
@@ -42,6 +45,8 @@ export declare const ELEMENT_GET_OUTPUT_SCHEMA: z.ZodObject<{
|
|
|
42
45
|
label: z.ZodOptional<z.ZodString>;
|
|
43
46
|
props: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
44
47
|
children_count: z.ZodNumber;
|
|
48
|
+
source: z.ZodOptional<z.ZodUnknown>;
|
|
49
|
+
binding_summary: z.ZodOptional<z.ZodString>;
|
|
45
50
|
}, z.core.$strip>;
|
|
46
51
|
export interface ElementsHandlerDeps {
|
|
47
52
|
readonly client: RestClient;
|
|
@@ -66,5 +71,5 @@ export declare function handleElementGet({ client }: ElementsHandlerDeps, { temp
|
|
|
66
71
|
template_id: string;
|
|
67
72
|
element_path: string;
|
|
68
73
|
}): Promise<ToolResult>;
|
|
69
|
-
export { handleElementAdd, handleElementClone, handleElementDelete, handleElementMove, handleElementUpdateSettings, } from './handlers-write.js';
|
|
74
|
+
export { handleElementAdd, handleElementClone, handleElementDelete, handleElementMove, handleElementUpdateSettings, handleScaffoldSection, } from './handlers-write.js';
|
|
70
75
|
//# sourceMappingURL=handlers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,
|
|
1
|
+
{"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../../src/tools/elements/handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAuC,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEvF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAelE,OAAO,EAGH,KAAK,UAAU,EAClB,MAAM,oBAAoB,CAAC;AAI5B,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;iBAkFrC,CAAC;AAEH,eAAO,MAAM,yBAAyB;;;;;;;;;iBAYpC,CAAC;AAIH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;CACnD;AAsDD,wBAAsB,iBAAiB,CACnC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,EACI,WAAW,EACX,MAAM,EACN,SAAS,EACT,KAAK,EACL,KAAK,EACL,MAAM,GACT,EAAE;IACC,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,GACF,OAAO,CAAC,UAAU,CAAC,CA2IrB;AAID,wBAAsB,gBAAgB,CAClC,EAAE,MAAM,EAAE,EAAE,mBAAmB,EAC/B,EAAE,WAAW,EAAE,YAAY,EAAE,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAC7E,OAAO,CAAC,UAAU,CAAC,CAiFrB;AAGD,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,mBAAmB,EACnB,iBAAiB,EACjB,2BAA2B,EAC3B,qBAAqB,GACxB,MAAM,qBAAqB,CAAC"}
|