@wootsup/yt-builder-mcp 1.12.0 → 2.0.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 +128 -30
- package/bin/node-floor.d.ts +28 -0
- package/bin/node-floor.js +123 -0
- package/bin/yt-builder-mcp.js +51 -10
- package/dist/auth.d.ts +3 -121
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +40 -170
- package/dist/auth.js.map +1 -1
- package/dist/catalog/build-catalog.d.ts +4 -49
- package/dist/catalog/build-catalog.d.ts.map +1 -1
- package/dist/catalog/build-catalog.js +15 -126
- package/dist/catalog/build-catalog.js.map +1 -1
- package/dist/catalog/json-schema.d.ts +3 -0
- package/dist/catalog/json-schema.d.ts.map +1 -0
- package/dist/catalog/json-schema.js +68 -0
- package/dist/catalog/json-schema.js.map +1 -0
- package/dist/catalog/output-shapes.d.ts +6 -0
- package/dist/catalog/output-shapes.d.ts.map +1 -0
- package/dist/catalog/output-shapes.js +89 -0
- package/dist/catalog/output-shapes.js.map +1 -0
- package/dist/catalog/tool-catalog-markdown.d.ts +1 -37
- package/dist/catalog/tool-catalog-markdown.d.ts.map +1 -1
- package/dist/catalog/tool-catalog-markdown.js +8 -52
- package/dist/catalog/tool-catalog-markdown.js.map +1 -1
- package/dist/cli/doctor-command.d.ts +2 -7
- package/dist/cli/doctor-command.d.ts.map +1 -1
- package/dist/cli/doctor-command.js +21 -62
- package/dist/cli/doctor-command.js.map +1 -1
- package/dist/cli/invocation-decision.d.ts +4 -52
- package/dist/cli/invocation-decision.d.ts.map +1 -1
- package/dist/cli/invocation-decision.js +45 -54
- package/dist/cli/invocation-decision.js.map +1 -1
- package/dist/client.d.ts +3 -107
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +34 -115
- package/dist/client.js.map +1 -1
- package/dist/clients/claude-code.d.ts +0 -15
- package/dist/clients/claude-code.d.ts.map +1 -1
- package/dist/clients/claude-code.js +0 -22
- package/dist/clients/claude-code.js.map +1 -1
- package/dist/clients/claude-desktop.d.ts +0 -16
- package/dist/clients/claude-desktop.d.ts.map +1 -1
- package/dist/clients/claude-desktop.js +0 -18
- package/dist/clients/claude-desktop.js.map +1 -1
- package/dist/clients/cline.d.ts +0 -23
- package/dist/clients/cline.d.ts.map +1 -1
- package/dist/clients/cline.js +0 -33
- package/dist/clients/cline.js.map +1 -1
- package/dist/clients/codex-cli.d.ts +0 -39
- package/dist/clients/codex-cli.d.ts.map +1 -1
- package/dist/clients/codex-cli.js +0 -137
- package/dist/clients/codex-cli.js.map +1 -1
- package/dist/clients/continue.d.ts +0 -10
- package/dist/clients/continue.d.ts.map +1 -1
- package/dist/clients/continue.js +0 -26
- package/dist/clients/continue.js.map +1 -1
- package/dist/clients/cursor.d.ts +0 -9
- package/dist/clients/cursor.d.ts.map +1 -1
- package/dist/clients/cursor.js +0 -11
- package/dist/clients/cursor.js.map +1 -1
- package/dist/clients/gemini-cli.d.ts +0 -15
- package/dist/clients/gemini-cli.d.ts.map +1 -1
- package/dist/clients/gemini-cli.js +0 -17
- package/dist/clients/gemini-cli.js.map +1 -1
- package/dist/clients/home.d.ts +0 -12
- package/dist/clients/home.d.ts.map +1 -1
- package/dist/clients/home.js +0 -12
- package/dist/clients/home.js.map +1 -1
- package/dist/clients/index.d.ts +0 -150
- package/dist/clients/index.d.ts.map +1 -1
- package/dist/clients/index.js +0 -112
- package/dist/clients/index.js.map +1 -1
- package/dist/clients/roo-code.d.ts +0 -20
- package/dist/clients/roo-code.d.ts.map +1 -1
- package/dist/clients/roo-code.js +0 -22
- package/dist/clients/roo-code.js.map +1 -1
- package/dist/clients/zed.d.ts +0 -9
- package/dist/clients/zed.d.ts.map +1 -1
- package/dist/clients/zed.js +0 -18
- package/dist/clients/zed.js.map +1 -1
- package/dist/compat-floor.d.ts +35 -0
- package/dist/compat-floor.d.ts.map +1 -0
- package/dist/compat-floor.js +84 -0
- package/dist/compat-floor.js.map +1 -0
- package/dist/compat-probe.d.ts +6 -0
- package/dist/compat-probe.d.ts.map +1 -0
- package/dist/compat-probe.js +20 -0
- package/dist/compat-probe.js.map +1 -0
- package/dist/diagnostics/ca-reexec.d.ts +0 -30
- package/dist/diagnostics/ca-reexec.d.ts.map +1 -1
- package/dist/diagnostics/ca-reexec.js +0 -62
- package/dist/diagnostics/ca-reexec.js.map +1 -1
- package/dist/diagnostics/ca-trust.d.ts +0 -22
- package/dist/diagnostics/ca-trust.d.ts.map +1 -1
- package/dist/diagnostics/ca-trust.js +3 -42
- package/dist/diagnostics/ca-trust.js.map +1 -1
- package/dist/diagnostics/diagnose-network-error.d.ts +1 -38
- package/dist/diagnostics/diagnose-network-error.d.ts.map +1 -1
- package/dist/diagnostics/diagnose-network-error.js +26 -37
- package/dist/diagnostics/diagnose-network-error.js.map +1 -1
- package/dist/diagnostics/doctor.d.ts +1 -85
- package/dist/diagnostics/doctor.d.ts.map +1 -1
- package/dist/diagnostics/doctor.js +5 -90
- package/dist/diagnostics/doctor.js.map +1 -1
- package/dist/diagnostics/startup-self-probe.d.ts +3 -25
- package/dist/diagnostics/startup-self-probe.d.ts.map +1 -1
- package/dist/diagnostics/startup-self-probe.js +11 -48
- package/dist/diagnostics/startup-self-probe.js.map +1 -1
- package/dist/errors/hints.d.ts +0 -44
- package/dist/errors/hints.d.ts.map +1 -1
- package/dist/errors/hints.js +0 -32
- package/dist/errors/hints.js.map +1 -1
- package/dist/errors/mask.d.ts +0 -31
- package/dist/errors/mask.d.ts.map +1 -1
- package/dist/errors/mask.js +0 -32
- package/dist/errors/mask.js.map +1 -1
- package/dist/errors/redact-credentials.d.ts +2 -0
- package/dist/errors/redact-credentials.d.ts.map +1 -0
- package/dist/errors/redact-credentials.js +13 -0
- package/dist/errors/redact-credentials.js.map +1 -0
- package/dist/errors/sanitize.d.ts +0 -29
- package/dist/errors/sanitize.d.ts.map +1 -1
- package/dist/errors/sanitize.js +0 -40
- package/dist/errors/sanitize.js.map +1 -1
- package/dist/errors.d.ts +6 -17
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +16 -21
- package/dist/errors.js.map +1 -1
- package/dist/gateway/advanced-read-tool.d.ts +0 -32
- package/dist/gateway/advanced-read-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-read-tool.js +43 -111
- package/dist/gateway/advanced-read-tool.js.map +1 -1
- package/dist/gateway/advanced-tool/discovery.d.ts +1 -12
- package/dist/gateway/advanced-tool/discovery.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/discovery.js +15 -24
- package/dist/gateway/advanced-tool/discovery.js.map +1 -1
- package/dist/gateway/advanced-tool/domains.d.ts +7 -66
- package/dist/gateway/advanced-tool/domains.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/domains.js +36 -80
- package/dist/gateway/advanced-tool/domains.js.map +1 -1
- package/dist/gateway/advanced-tool/execute.d.ts +0 -25
- package/dist/gateway/advanced-tool/execute.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/execute.js +13 -49
- package/dist/gateway/advanced-tool/execute.js.map +1 -1
- package/dist/gateway/advanced-tool/index.d.ts +1 -32
- package/dist/gateway/advanced-tool/index.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/index.js +1 -35
- package/dist/gateway/advanced-tool/index.js.map +1 -1
- package/dist/gateway/advanced-tool/register.d.ts +0 -14
- package/dist/gateway/advanced-tool/register.d.ts.map +1 -1
- package/dist/gateway/advanced-tool/register.js +22 -58
- package/dist/gateway/advanced-tool/register.js.map +1 -1
- package/dist/gateway/advanced-tool.d.ts +0 -11
- package/dist/gateway/advanced-tool.d.ts.map +1 -1
- package/dist/gateway/advanced-tool.js +0 -11
- package/dist/gateway/advanced-tool.js.map +1 -1
- package/dist/gateway/capturing-server.d.ts +3 -88
- package/dist/gateway/capturing-server.d.ts.map +1 -1
- package/dist/gateway/capturing-server.js +0 -77
- package/dist/gateway/capturing-server.js.map +1 -1
- package/dist/gateway/essentials.d.ts +1 -63
- package/dist/gateway/essentials.d.ts.map +1 -1
- package/dist/gateway/essentials.js +9 -178
- package/dist/gateway/essentials.js.map +1 -1
- package/dist/gateway/test-support.d.ts +0 -28
- package/dist/gateway/test-support.d.ts.map +1 -1
- package/dist/gateway/test-support.js +0 -29
- package/dist/gateway/test-support.js.map +1 -1
- package/dist/health-response.d.ts +2 -0
- package/dist/health-response.d.ts.map +1 -0
- package/dist/health-response.js +7 -0
- package/dist/health-response.js.map +1 -0
- package/dist/icon-data.js +0 -3
- package/dist/icon-data.js.map +1 -1
- package/dist/index.d.ts +7 -23
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +46 -130
- package/dist/index.js.map +1 -1
- package/dist/install-skill.d.ts +0 -44
- package/dist/install-skill.d.ts.map +1 -1
- package/dist/install-skill.js +5 -46
- package/dist/install-skill.js.map +1 -1
- package/dist/net/extra-headers.d.ts +0 -58
- package/dist/net/extra-headers.d.ts.map +1 -1
- package/dist/net/extra-headers.js +0 -67
- package/dist/net/extra-headers.js.map +1 -1
- package/dist/net/internal-host.d.ts +0 -31
- package/dist/net/internal-host.d.ts.map +1 -1
- package/dist/net/internal-host.js +7 -65
- package/dist/net/internal-host.js.map +1 -1
- package/dist/net/proxy-dispatcher.d.ts +0 -37
- package/dist/net/proxy-dispatcher.d.ts.map +1 -1
- package/dist/net/proxy-dispatcher.js +0 -40
- package/dist/net/proxy-dispatcher.js.map +1 -1
- package/dist/net/public-fetch.d.ts +53 -0
- package/dist/net/public-fetch.d.ts.map +1 -0
- package/dist/net/public-fetch.js +143 -0
- package/dist/net/public-fetch.js.map +1 -0
- package/dist/net/public-page-report.d.ts +26 -0
- package/dist/net/public-page-report.d.ts.map +1 -0
- package/dist/net/public-page-report.js +145 -0
- package/dist/net/public-page-report.js.map +1 -0
- package/dist/net/redirect-safe-fetch.d.ts +14 -0
- package/dist/net/redirect-safe-fetch.d.ts.map +1 -0
- package/dist/net/redirect-safe-fetch.js +61 -0
- package/dist/net/redirect-safe-fetch.js.map +1 -0
- package/dist/net/session-recovery-fetch.d.ts +7 -0
- package/dist/net/session-recovery-fetch.d.ts.map +1 -0
- package/dist/net/session-recovery-fetch.js +139 -0
- package/dist/net/session-recovery-fetch.js.map +1 -0
- package/dist/net/site-basic-auth.d.ts +1 -59
- package/dist/net/site-basic-auth.d.ts.map +1 -1
- package/dist/net/site-basic-auth.js +5 -94
- package/dist/net/site-basic-auth.js.map +1 -1
- package/dist/package-version.d.ts +2 -0
- package/dist/package-version.d.ts.map +1 -0
- package/dist/package-version.js +15 -0
- package/dist/package-version.js.map +1 -0
- package/dist/platform/detect.d.ts +0 -54
- package/dist/platform/detect.d.ts.map +1 -1
- package/dist/platform/detect.js +0 -53
- package/dist/platform/detect.js.map +1 -1
- package/dist/platform/index.d.ts +0 -100
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +0 -106
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/joomla.d.ts +0 -35
- package/dist/platform/joomla.d.ts.map +1 -1
- package/dist/platform/joomla.js +0 -35
- package/dist/platform/joomla.js.map +1 -1
- package/dist/proxy/bridge.d.ts +36 -76
- package/dist/proxy/bridge.d.ts.map +1 -1
- package/dist/proxy/bridge.js +443 -136
- package/dist/proxy/bridge.js.map +1 -1
- package/dist/proxy/confirm-elicitation.d.ts +22 -0
- package/dist/proxy/confirm-elicitation.d.ts.map +1 -0
- package/dist/proxy/confirm-elicitation.js +170 -0
- package/dist/proxy/confirm-elicitation.js.map +1 -0
- package/dist/proxy/confirm-question-contract.d.ts +6 -0
- package/dist/proxy/confirm-question-contract.d.ts.map +1 -0
- package/dist/proxy/confirm-question-contract.js +9 -0
- package/dist/proxy/confirm-question-contract.js.map +1 -0
- package/dist/proxy/confirm-question.d.ts +2 -0
- package/dist/proxy/confirm-question.d.ts.map +1 -0
- package/dist/proxy/confirm-question.js +125 -0
- package/dist/proxy/confirm-question.js.map +1 -0
- package/dist/proxy/instructions.d.ts +4 -0
- package/dist/proxy/instructions.d.ts.map +1 -0
- package/dist/proxy/instructions.js +12 -0
- package/dist/proxy/instructions.js.map +1 -0
- package/dist/proxy/mode.d.ts +14 -9
- package/dist/proxy/mode.d.ts.map +1 -1
- package/dist/proxy/mode.js +58 -34
- package/dist/proxy/mode.js.map +1 -1
- package/dist/proxy/multi-site.d.ts +42 -0
- package/dist/proxy/multi-site.d.ts.map +1 -0
- package/dist/proxy/multi-site.js +134 -0
- package/dist/proxy/multi-site.js.map +1 -0
- package/dist/proxy/request-headers.d.ts +9 -0
- package/dist/proxy/request-headers.d.ts.map +1 -0
- package/dist/proxy/request-headers.js +17 -0
- package/dist/proxy/request-headers.js.map +1 -0
- package/dist/proxy/shadow-tools.d.ts +9 -0
- package/dist/proxy/shadow-tools.d.ts.map +1 -0
- package/dist/proxy/shadow-tools.js +42 -0
- package/dist/proxy/shadow-tools.js.map +1 -0
- package/dist/proxy/tools-list-cap.d.ts +7 -0
- package/dist/proxy/tools-list-cap.d.ts.map +1 -0
- package/dist/proxy/tools-list-cap.js +14 -0
- package/dist/proxy/tools-list-cap.js.map +1 -0
- package/dist/proxy/transport-uncertainty.d.ts +2 -0
- package/dist/proxy/transport-uncertainty.d.ts.map +1 -0
- package/dist/proxy/transport-uncertainty.js +8 -0
- package/dist/proxy/transport-uncertainty.js.map +1 -0
- package/dist/proxy/upstream-error.d.ts +7 -0
- package/dist/proxy/upstream-error.d.ts.map +1 -0
- package/dist/proxy/upstream-error.js +35 -0
- package/dist/proxy/upstream-error.js.map +1 -0
- package/dist/proxy/wire-dialect.d.ts +5 -0
- package/dist/proxy/wire-dialect.d.ts.map +1 -0
- package/dist/proxy/wire-dialect.js +33 -0
- package/dist/proxy/wire-dialect.js.map +1 -0
- package/dist/server.d.ts +14 -82
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +107 -203
- package/dist/server.js.map +1 -1
- package/dist/setup/banner-color.d.ts +13 -0
- package/dist/setup/banner-color.d.ts.map +1 -0
- package/dist/setup/banner-color.js +93 -0
- package/dist/setup/banner-color.js.map +1 -0
- package/dist/setup/banner.d.ts +22 -0
- package/dist/setup/banner.d.ts.map +1 -0
- package/dist/setup/banner.js +119 -0
- package/dist/setup/banner.js.map +1 -0
- package/dist/setup/ca-recovery.d.ts +20 -0
- package/dist/setup/ca-recovery.d.ts.map +1 -0
- package/dist/setup/ca-recovery.js +92 -0
- package/dist/setup/ca-recovery.js.map +1 -0
- package/dist/setup/closing.d.ts +15 -0
- package/dist/setup/closing.d.ts.map +1 -0
- package/dist/setup/closing.js +43 -0
- package/dist/setup/closing.js.map +1 -0
- package/dist/setup/corporate-ca.d.ts +16 -0
- package/dist/setup/corporate-ca.d.ts.map +1 -0
- package/dist/setup/corporate-ca.js +32 -0
- package/dist/setup/corporate-ca.js.map +1 -0
- package/dist/setup/host-platform.d.ts +8 -0
- package/dist/setup/host-platform.d.ts.map +1 -0
- package/dist/setup/host-platform.js +21 -0
- package/dist/setup/host-platform.js.map +1 -0
- package/dist/setup/install-configs.d.ts +18 -0
- package/dist/setup/install-configs.d.ts.map +1 -0
- package/dist/setup/install-configs.js +70 -0
- package/dist/setup/install-configs.js.map +1 -0
- package/dist/setup/multi-site-loop.d.ts +14 -0
- package/dist/setup/multi-site-loop.d.ts.map +1 -0
- package/dist/setup/multi-site-loop.js +20 -0
- package/dist/setup/multi-site-loop.js.map +1 -0
- package/dist/setup/phases.d.ts +18 -0
- package/dist/setup/phases.d.ts.map +1 -0
- package/dist/setup/phases.js +55 -0
- package/dist/setup/phases.js.map +1 -0
- package/dist/setup/registry-remedy.d.ts +12 -0
- package/dist/setup/registry-remedy.d.ts.map +1 -0
- package/dist/setup/registry-remedy.js +37 -0
- package/dist/setup/registry-remedy.js.map +1 -0
- package/dist/setup/resume.d.ts +28 -0
- package/dist/setup/resume.d.ts.map +1 -0
- package/dist/setup/resume.js +99 -0
- package/dist/setup/resume.js.map +1 -0
- package/dist/setup-ca-env.d.ts +0 -30
- package/dist/setup-ca-env.d.ts.map +1 -1
- package/dist/setup-ca-env.js +0 -28
- package/dist/setup-ca-env.js.map +1 -1
- package/dist/setup-ca-reprobe.d.ts +0 -25
- package/dist/setup-ca-reprobe.d.ts.map +1 -1
- package/dist/setup-ca-reprobe.js +0 -34
- package/dist/setup-ca-reprobe.js.map +1 -1
- package/dist/setup-cli-confirm.d.ts +0 -34
- package/dist/setup-cli-confirm.d.ts.map +1 -1
- package/dist/setup-cli-confirm.js +0 -36
- package/dist/setup-cli-confirm.js.map +1 -1
- package/dist/setup-cli.d.ts +6 -167
- package/dist/setup-cli.d.ts.map +1 -1
- package/dist/setup-cli.js +161 -173
- package/dist/setup-cli.js.map +1 -1
- package/dist/setup-npx-spec.d.ts +0 -36
- package/dist/setup-npx-spec.d.ts.map +1 -1
- package/dist/setup-npx-spec.js +0 -38
- package/dist/setup-npx-spec.js.map +1 -1
- package/dist/setup-prompts.d.ts +5 -70
- package/dist/setup-prompts.d.ts.map +1 -1
- package/dist/setup-prompts.js +67 -107
- package/dist/setup-prompts.js.map +1 -1
- package/dist/setup-token.d.ts +0 -34
- package/dist/setup-token.d.ts.map +1 -1
- package/dist/setup-token.js +0 -40
- package/dist/setup-token.js.map +1 -1
- package/dist/setup-wizard-defaults.d.ts +0 -36
- package/dist/setup-wizard-defaults.d.ts.map +1 -1
- package/dist/setup-wizard-defaults.js +0 -75
- package/dist/setup-wizard-defaults.js.map +1 -1
- package/dist/setup-wizard-handshake.d.ts +1 -19
- package/dist/setup-wizard-handshake.d.ts.map +1 -1
- package/dist/setup-wizard-handshake.js +8 -45
- package/dist/setup-wizard-handshake.js.map +1 -1
- package/dist/setup-wizard-types.d.ts +16 -209
- package/dist/setup-wizard-types.d.ts.map +1 -1
- package/dist/setup-wizard-types.js +0 -9
- package/dist/setup-wizard-types.js.map +1 -1
- package/dist/setup-wizard.d.ts +0 -28
- package/dist/setup-wizard.d.ts.map +1 -1
- package/dist/setup-wizard.js +167 -412
- package/dist/setup-wizard.js.map +1 -1
- package/dist/setup.d.ts +0 -15
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +0 -15
- package/dist/setup.js.map +1 -1
- package/dist/sites/bootstrap.d.ts +0 -38
- package/dist/sites/bootstrap.d.ts.map +1 -1
- package/dist/sites/bootstrap.js +0 -44
- package/dist/sites/bootstrap.js.map +1 -1
- package/dist/sites/cli/add-site.d.ts +0 -76
- package/dist/sites/cli/add-site.d.ts.map +1 -1
- package/dist/sites/cli/add-site.js +0 -71
- package/dist/sites/cli/add-site.js.map +1 -1
- package/dist/sites/cli/list-sites.d.ts +0 -31
- package/dist/sites/cli/list-sites.d.ts.map +1 -1
- package/dist/sites/cli/list-sites.js +0 -45
- package/dist/sites/cli/list-sites.js.map +1 -1
- package/dist/sites/cli/remove-site.d.ts +0 -37
- package/dist/sites/cli/remove-site.d.ts.map +1 -1
- package/dist/sites/cli/remove-site.js +0 -37
- package/dist/sites/cli/remove-site.js.map +1 -1
- package/dist/sites/cli/set-default.d.ts +0 -25
- package/dist/sites/cli/set-default.d.ts.map +1 -1
- package/dist/sites/cli/set-default.js +0 -22
- package/dist/sites/cli/set-default.js.map +1 -1
- package/dist/sites/cli/test-site.d.ts +0 -44
- package/dist/sites/cli/test-site.d.ts.map +1 -1
- package/dist/sites/cli/test-site.js +0 -39
- package/dist/sites/cli/test-site.js.map +1 -1
- package/dist/sites/client-pool.d.ts +11 -164
- package/dist/sites/client-pool.d.ts.map +1 -1
- package/dist/sites/client-pool.js +73 -194
- package/dist/sites/client-pool.js.map +1 -1
- package/dist/sites/config-problem.d.ts +2 -0
- package/dist/sites/config-problem.d.ts.map +1 -0
- package/dist/sites/config-problem.js +13 -0
- package/dist/sites/config-problem.js.map +1 -0
- package/dist/sites/env-bridge.d.ts +0 -69
- package/dist/sites/env-bridge.d.ts.map +1 -1
- package/dist/sites/env-bridge.js +2 -71
- package/dist/sites/env-bridge.js.map +1 -1
- package/dist/sites/op-inject.d.ts +23 -0
- package/dist/sites/op-inject.d.ts.map +1 -0
- package/dist/sites/op-inject.js +131 -0
- package/dist/sites/op-inject.js.map +1 -0
- package/dist/sites/paths.d.ts +0 -19
- package/dist/sites/paths.d.ts.map +1 -1
- package/dist/sites/paths.js +0 -19
- package/dist/sites/paths.js.map +1 -1
- package/dist/sites/probe.d.ts +1 -47
- package/dist/sites/probe.d.ts.map +1 -1
- package/dist/sites/probe.js +4 -46
- package/dist/sites/probe.js.map +1 -1
- package/dist/sites/registry.d.ts +4 -135
- package/dist/sites/registry.d.ts.map +1 -1
- package/dist/sites/registry.js +4 -98
- package/dist/sites/registry.js.map +1 -1
- package/dist/sites/schema.d.ts +3 -51
- package/dist/sites/schema.d.ts.map +1 -1
- package/dist/sites/schema.js +6 -52
- package/dist/sites/schema.js.map +1 -1
- package/dist/sites/secret-resolver.d.ts +6 -76
- package/dist/sites/secret-resolver.d.ts.map +1 -1
- package/dist/sites/secret-resolver.js +39 -104
- package/dist/sites/secret-resolver.js.map +1 -1
- package/dist/sites/store.d.ts +12 -69
- package/dist/sites/store.d.ts.map +1 -1
- package/dist/sites/store.js +37 -86
- package/dist/sites/store.js.map +1 -1
- package/dist/sites/substituted-registry.d.ts +11 -0
- package/dist/sites/substituted-registry.d.ts.map +1 -0
- package/dist/sites/substituted-registry.js +13 -0
- package/dist/sites/substituted-registry.js.map +1 -0
- package/dist/sites/tools/fetch-public-url.d.ts +4 -0
- package/dist/sites/tools/fetch-public-url.d.ts.map +1 -0
- package/dist/sites/tools/fetch-public-url.js +231 -0
- package/dist/sites/tools/fetch-public-url.js.map +1 -0
- package/dist/sites/tools/index.d.ts +2 -26
- package/dist/sites/tools/index.d.ts.map +1 -1
- package/dist/sites/tools/index.js +5 -28
- package/dist/sites/tools/index.js.map +1 -1
- package/dist/sites/tools/sites-list.d.ts +3 -47
- package/dist/sites/tools/sites-list.d.ts.map +1 -1
- package/dist/sites/tools/sites-list.js +65 -79
- package/dist/sites/tools/sites-list.js.map +1 -1
- package/dist/sites/tools/sites-overview.d.ts +4 -0
- package/dist/sites/tools/sites-overview.d.ts.map +1 -0
- package/dist/sites/tools/sites-overview.js +209 -0
- package/dist/sites/tools/sites-overview.js.map +1 -0
- package/dist/sites/tools/sites-test.d.ts +2 -45
- package/dist/sites/tools/sites-test.d.ts.map +1 -1
- package/dist/sites/tools/sites-test.js +0 -55
- package/dist/sites/tools/sites-test.js.map +1 -1
- package/dist/sites/tools/use-site.d.ts +2 -45
- package/dist/sites/tools/use-site.d.ts.map +1 -1
- package/dist/sites/tools/use-site.js +29 -78
- package/dist/sites/tools/use-site.js.map +1 -1
- package/dist/sites/unknown-name-result.d.ts +10 -0
- package/dist/sites/unknown-name-result.d.ts.map +1 -0
- package/dist/sites/unknown-name-result.js +13 -0
- package/dist/sites/unknown-name-result.js.map +1 -0
- package/dist/skill-instructions.d.ts +7 -0
- package/dist/skill-instructions.d.ts.map +1 -0
- package/dist/skill-instructions.js +84 -0
- package/dist/skill-instructions.js.map +1 -0
- package/dist/skill-loader.d.ts +0 -102
- package/dist/skill-loader.d.ts.map +1 -1
- package/dist/skill-loader.js +4 -142
- package/dist/skill-loader.js.map +1 -1
- package/dist/skill-manifest.d.ts +0 -20
- package/dist/skill-manifest.d.ts.map +1 -1
- package/dist/skill-manifest.js +1 -21
- package/dist/skill-manifest.js.map +1 -1
- package/dist/skill-topics.d.ts +19 -0
- package/dist/skill-topics.d.ts.map +1 -0
- package/dist/skill-topics.js +181 -0
- package/dist/skill-topics.js.map +1 -0
- package/dist/tools/active-site.d.ts +16 -0
- package/dist/tools/active-site.d.ts.map +1 -0
- package/dist/tools/active-site.js +55 -0
- package/dist/tools/active-site.js.map +1 -0
- package/dist/tools/bind-guidance.d.ts +2 -72
- package/dist/tools/bind-guidance.d.ts.map +1 -1
- package/dist/tools/bind-guidance.js +2 -72
- package/dist/tools/bind-guidance.js.map +1 -1
- package/dist/tools/budgeted-table.d.ts +14 -19
- package/dist/tools/budgeted-table.d.ts.map +1 -1
- package/dist/tools/budgeted-table.js +171 -105
- package/dist/tools/budgeted-table.js.map +1 -1
- package/dist/tools/elements/bind-output-schema.d.ts +69 -0
- package/dist/tools/elements/bind-output-schema.d.ts.map +1 -0
- package/dist/tools/elements/bind-output-schema.js +64 -0
- package/dist/tools/elements/bind-output-schema.js.map +1 -0
- package/dist/tools/elements/builders.d.ts +1 -22
- package/dist/tools/elements/builders.d.ts.map +1 -1
- package/dist/tools/elements/builders.js +147 -133
- package/dist/tools/elements/builders.js.map +1 -1
- package/dist/tools/elements/index.d.ts +0 -26
- package/dist/tools/elements/index.d.ts.map +1 -1
- package/dist/tools/elements/index.js +0 -25
- package/dist/tools/elements/index.js.map +1 -1
- package/dist/tools/elements/read-output-schemas.d.ts +121 -0
- package/dist/tools/elements/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/read-output-schemas.js +225 -0
- package/dist/tools/elements/read-output-schemas.js.map +1 -0
- package/dist/tools/elements/write-output-schemas.d.ts +185 -0
- package/dist/tools/elements/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/elements/write-output-schemas.js +98 -0
- package/dist/tools/elements/write-output-schemas.js.map +1 -0
- package/dist/tools/elements.d.ts +0 -11
- package/dist/tools/elements.d.ts.map +1 -1
- package/dist/tools/elements.js +0 -11
- package/dist/tools/elements.js.map +1 -1
- package/dist/tools/format/health-format.d.ts +26 -43
- package/dist/tools/format/health-format.d.ts.map +1 -1
- package/dist/tools/format/health-format.js +28 -60
- package/dist/tools/format/health-format.js.map +1 -1
- package/dist/tools/format/inspection-format.d.ts +2 -54
- package/dist/tools/format/inspection-format.d.ts.map +1 -1
- package/dist/tools/format/inspection-format.js +33 -119
- package/dist/tools/format/inspection-format.js.map +1 -1
- package/dist/tools/format/pages-format.d.ts +32 -69
- package/dist/tools/format/pages-format.d.ts.map +1 -1
- package/dist/tools/format/pages-format.js +114 -139
- package/dist/tools/format/pages-format.js.map +1 -1
- package/dist/tools/format/sources-format.d.ts +5 -39
- package/dist/tools/format/sources-format.d.ts.map +1 -1
- package/dist/tools/format/sources-format.js +57 -87
- package/dist/tools/format/sources-format.js.map +1 -1
- package/dist/tools/health-output-schemas.d.ts +82 -0
- package/dist/tools/health-output-schemas.d.ts.map +1 -0
- package/dist/tools/health-output-schemas.js +130 -0
- package/dist/tools/health-output-schemas.js.map +1 -0
- package/dist/tools/health.d.ts +2 -20
- package/dist/tools/health.d.ts.map +1 -1
- package/dist/tools/health.js +46 -232
- package/dist/tools/health.js.map +1 -1
- package/dist/tools/index.d.ts +1 -26
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +12 -39
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/inspection.d.ts +4 -34
- package/dist/tools/inspection.d.ts.map +1 -1
- package/dist/tools/inspection.js +164 -536
- package/dist/tools/inspection.js.map +1 -1
- package/dist/tools/library.d.ts +115 -127
- package/dist/tools/library.d.ts.map +1 -1
- package/dist/tools/library.js +706 -454
- package/dist/tools/library.js.map +1 -1
- package/dist/tools/local-content/builders.d.ts +1 -17
- package/dist/tools/local-content/builders.d.ts.map +1 -1
- package/dist/tools/local-content/builders.js +103 -46
- package/dist/tools/local-content/builders.js.map +1 -1
- package/dist/tools/local-content/index.d.ts +0 -15
- package/dist/tools/local-content/index.d.ts.map +1 -1
- package/dist/tools/local-content/index.js +0 -14
- package/dist/tools/local-content/index.js.map +1 -1
- package/dist/tools/local-content/schemas.d.ts +31 -47
- package/dist/tools/local-content/schemas.d.ts.map +1 -1
- package/dist/tools/local-content/schemas.js +33 -62
- package/dist/tools/local-content/schemas.js.map +1 -1
- package/dist/tools/modules/builders.d.ts +4 -0
- package/dist/tools/modules/builders.d.ts.map +1 -0
- package/dist/tools/modules/builders.js +58 -0
- package/dist/tools/modules/builders.js.map +1 -0
- package/dist/tools/modules/index.d.ts +2 -0
- package/dist/tools/modules/index.d.ts.map +1 -0
- package/dist/tools/modules/index.js +2 -0
- package/dist/tools/modules/index.js.map +1 -0
- package/dist/tools/modules/module-id-schema.d.ts +4 -0
- package/dist/tools/modules/module-id-schema.d.ts.map +1 -0
- package/dist/tools/modules/module-id-schema.js +14 -0
- package/dist/tools/modules/module-id-schema.js.map +1 -0
- package/dist/tools/modules/module-type-fields.d.ts +10 -0
- package/dist/tools/modules/module-type-fields.d.ts.map +1 -0
- package/dist/tools/modules/module-type-fields.js +34 -0
- package/dist/tools/modules/module-type-fields.js.map +1 -0
- package/dist/tools/modules/modules-create.d.ts +59 -0
- package/dist/tools/modules/modules-create.d.ts.map +1 -0
- package/dist/tools/modules/modules-create.js +154 -0
- package/dist/tools/modules/modules-create.js.map +1 -0
- package/dist/tools/modules/modules-delete.d.ts +51 -0
- package/dist/tools/modules/modules-delete.d.ts.map +1 -0
- package/dist/tools/modules/modules-delete.js +180 -0
- package/dist/tools/modules/modules-delete.js.map +1 -0
- package/dist/tools/modules/modules-update.d.ts +43 -0
- package/dist/tools/modules/modules-update.d.ts.map +1 -0
- package/dist/tools/modules/modules-update.js +177 -0
- package/dist/tools/modules/modules-update.js.map +1 -0
- package/dist/tools/modules/placement-hints.d.ts +5 -0
- package/dist/tools/modules/placement-hints.d.ts.map +1 -0
- package/dist/tools/modules/placement-hints.js +90 -0
- package/dist/tools/modules/placement-hints.js.map +1 -0
- package/dist/tools/modules/placement-ways.d.ts +13 -0
- package/dist/tools/modules/placement-ways.d.ts.map +1 -0
- package/dist/tools/modules/placement-ways.js +61 -0
- package/dist/tools/modules/placement-ways.js.map +1 -0
- package/dist/tools/multi-items/builders.d.ts +1 -21
- package/dist/tools/multi-items/builders.d.ts.map +1 -1
- package/dist/tools/multi-items/builders.js +22 -65
- package/dist/tools/multi-items/builders.js.map +1 -1
- package/dist/tools/multi-items/index.d.ts +0 -15
- package/dist/tools/multi-items/index.d.ts.map +1 -1
- package/dist/tools/multi-items/index.js +0 -15
- package/dist/tools/multi-items/index.js.map +1 -1
- package/dist/tools/multi-items/item-container-map.d.ts +0 -35
- package/dist/tools/multi-items/item-container-map.d.ts.map +1 -1
- package/dist/tools/multi-items/item-container-map.js +0 -35
- package/dist/tools/multi-items/item-container-map.js.map +1 -1
- package/dist/tools/multi-items/output-schemas.d.ts +101 -0
- package/dist/tools/multi-items/output-schemas.d.ts.map +1 -0
- package/dist/tools/multi-items/output-schemas.js +74 -0
- package/dist/tools/multi-items/output-schemas.js.map +1 -0
- package/dist/tools/navigation/builders.d.ts +1 -16
- package/dist/tools/navigation/builders.d.ts.map +1 -1
- package/dist/tools/navigation/builders.js +5 -27
- package/dist/tools/navigation/builders.js.map +1 -1
- package/dist/tools/navigation/index.d.ts +0 -13
- package/dist/tools/navigation/index.d.ts.map +1 -1
- package/dist/tools/navigation/index.js +0 -12
- package/dist/tools/navigation/index.js.map +1 -1
- package/dist/tools/navigation/schemas.d.ts +0 -30
- package/dist/tools/navigation/schemas.d.ts.map +1 -1
- package/dist/tools/navigation/schemas.js +0 -30
- package/dist/tools/navigation/schemas.js.map +1 -1
- package/dist/tools/output-schema-metadata.d.ts +5 -0
- package/dist/tools/output-schema-metadata.d.ts.map +1 -0
- package/dist/tools/output-schema-metadata.js +83 -0
- package/dist/tools/output-schema-metadata.js.map +1 -0
- package/dist/tools/pages/builders.d.ts +1 -41
- package/dist/tools/pages/builders.d.ts.map +1 -1
- package/dist/tools/pages/builders.js +320 -405
- package/dist/tools/pages/builders.js.map +1 -1
- package/dist/tools/pages/header-transparency.d.ts +2 -32
- package/dist/tools/pages/header-transparency.d.ts.map +1 -1
- package/dist/tools/pages/header-transparency.js +9 -43
- package/dist/tools/pages/header-transparency.js.map +1 -1
- package/dist/tools/pages/index.d.ts +1 -19
- package/dist/tools/pages/index.d.ts.map +1 -1
- package/dist/tools/pages/index.js +1 -19
- package/dist/tools/pages/index.js.map +1 -1
- package/dist/tools/pages/schemas.d.ts +323 -241
- package/dist/tools/pages/schemas.d.ts.map +1 -1
- package/dist/tools/pages/schemas.js +514 -549
- package/dist/tools/pages/schemas.js.map +1 -1
- package/dist/tools/pages/write-output-schemas.d.ts +139 -0
- package/dist/tools/pages/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/pages/write-output-schemas.js +138 -0
- package/dist/tools/pages/write-output-schemas.js.map +1 -0
- package/dist/tools/pages.d.ts +0 -11
- package/dist/tools/pages.d.ts.map +1 -1
- package/dist/tools/pages.js +0 -11
- package/dist/tools/pages.js.map +1 -1
- package/dist/tools/pool-resolve-helper.d.ts +0 -52
- package/dist/tools/pool-resolve-helper.d.ts.map +1 -1
- package/dist/tools/pool-resolve-helper.js +29 -104
- package/dist/tools/pool-resolve-helper.js.map +1 -1
- package/dist/tools/progress-phases.d.ts +0 -42
- package/dist/tools/progress-phases.d.ts.map +1 -1
- package/dist/tools/progress-phases.js +0 -44
- package/dist/tools/progress-phases.js.map +1 -1
- package/dist/tools/response-budget.d.ts +0 -69
- package/dist/tools/response-budget.d.ts.map +1 -1
- package/dist/tools/response-budget.js +0 -127
- package/dist/tools/response-budget.js.map +1 -1
- package/dist/tools/shared-schemas.d.ts +11 -65
- package/dist/tools/shared-schemas.d.ts.map +1 -1
- package/dist/tools/shared-schemas.js +40 -123
- package/dist/tools/shared-schemas.js.map +1 -1
- package/dist/tools/skill/builders.d.ts +3 -0
- package/dist/tools/skill/builders.d.ts.map +1 -0
- package/dist/tools/skill/builders.js +81 -0
- package/dist/tools/skill/builders.js.map +1 -0
- package/dist/tools/sources/builders.d.ts +1 -11
- package/dist/tools/sources/builders.d.ts.map +1 -1
- package/dist/tools/sources/builders.js +194 -170
- package/dist/tools/sources/builders.js.map +1 -1
- package/dist/tools/sources/index.d.ts +0 -17
- package/dist/tools/sources/index.d.ts.map +1 -1
- package/dist/tools/sources/index.js +0 -16
- package/dist/tools/sources/index.js.map +1 -1
- package/dist/tools/sources/read-output-schemas.d.ts +101 -0
- package/dist/tools/sources/read-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/read-output-schemas.js +105 -0
- package/dist/tools/sources/read-output-schemas.js.map +1 -0
- package/dist/tools/sources/source-name-argument.d.ts +17 -0
- package/dist/tools/sources/source-name-argument.d.ts.map +1 -0
- package/dist/tools/sources/source-name-argument.js +64 -0
- package/dist/tools/sources/source-name-argument.js.map +1 -0
- package/dist/tools/sources/write-output-schemas.d.ts +100 -0
- package/dist/tools/sources/write-output-schemas.d.ts.map +1 -0
- package/dist/tools/sources/write-output-schemas.js +61 -0
- package/dist/tools/sources/write-output-schemas.js.map +1 -0
- package/dist/tools/sources.d.ts +0 -12
- package/dist/tools/sources.d.ts.map +1 -1
- package/dist/tools/sources.js +0 -12
- package/dist/tools/sources.js.map +1 -1
- package/dist/tools/sparse-fields.d.ts +16 -232
- package/dist/tools/sparse-fields.d.ts.map +1 -1
- package/dist/tools/sparse-fields.js +178 -242
- package/dist/tools/sparse-fields.js.map +1 -1
- package/dist/tools/strict-input.d.ts +5 -0
- package/dist/tools/strict-input.d.ts.map +1 -0
- package/dist/tools/strict-input.js +55 -0
- package/dist/tools/strict-input.js.map +1 -0
- package/dist/tools/sublayout/builders.d.ts +1 -21
- package/dist/tools/sublayout/builders.d.ts.map +1 -1
- package/dist/tools/sublayout/builders.js +10 -39
- package/dist/tools/sublayout/builders.js.map +1 -1
- package/dist/tools/sublayout/index.d.ts +1 -11
- package/dist/tools/sublayout/index.d.ts.map +1 -1
- package/dist/tools/sublayout/index.js +1 -11
- package/dist/tools/sublayout/index.js.map +1 -1
- package/dist/tools/sublayout/output-schemas.d.ts +57 -0
- package/dist/tools/sublayout/output-schemas.d.ts.map +1 -0
- package/dist/tools/sublayout/output-schemas.js +51 -0
- package/dist/tools/sublayout/output-schemas.js.map +1 -0
- package/dist/tools/tool-builder/annotations.d.ts +1 -49
- package/dist/tools/tool-builder/annotations.d.ts.map +1 -1
- package/dist/tools/tool-builder/annotations.js +9 -49
- package/dist/tools/tool-builder/annotations.js.map +1 -1
- package/dist/tools/tool-builder/confirm-preview.d.ts +24 -0
- package/dist/tools/tool-builder/confirm-preview.d.ts.map +1 -0
- package/dist/tools/tool-builder/confirm-preview.js +37 -0
- package/dist/tools/tool-builder/confirm-preview.js.map +1 -0
- package/dist/tools/tool-builder/define.d.ts +6 -26
- package/dist/tools/tool-builder/define.d.ts.map +1 -1
- package/dist/tools/tool-builder/define.js +0 -25
- package/dist/tools/tool-builder/define.js.map +1 -1
- package/dist/tools/tool-builder/index.d.ts +3 -26
- package/dist/tools/tool-builder/index.d.ts.map +1 -1
- package/dist/tools/tool-builder/index.js +2 -25
- package/dist/tools/tool-builder/index.js.map +1 -1
- package/dist/tools/tool-builder/results.d.ts +4 -124
- package/dist/tools/tool-builder/results.d.ts.map +1 -1
- package/dist/tools/tool-builder/results.js +258 -263
- package/dist/tools/tool-builder/results.js.map +1 -1
- package/dist/tools/tool-builder/types.d.ts +5 -59
- package/dist/tools/tool-builder/types.d.ts.map +1 -1
- package/dist/tools/tool-builder/types.js +0 -7
- package/dist/tools/tool-builder/types.js.map +1 -1
- package/dist/tools/tool-builder.d.ts +0 -14
- package/dist/tools/tool-builder.d.ts.map +1 -1
- package/dist/tools/tool-builder.js +0 -14
- package/dist/tools/tool-builder.js.map +1 -1
- package/dist/uninstall-skill.d.ts +0 -41
- package/dist/uninstall-skill.d.ts.map +1 -1
- package/dist/uninstall-skill.js +0 -49
- package/dist/uninstall-skill.js.map +1 -1
- package/dist/uninstall.d.ts +0 -41
- package/dist/uninstall.d.ts.map +1 -1
- package/dist/uninstall.js +1 -29
- package/dist/uninstall.js.map +1 -1
- package/dist/update/update-check.d.ts +0 -26
- package/dist/update/update-check.d.ts.map +1 -1
- package/dist/update/update-check.js +0 -25
- package/dist/update/update-check.js.map +1 -1
- package/manifest.json +4 -5
- package/package.json +4 -4
- package/skills/yt-builder-mcp/SKILL.md +1857 -400
- package/dist/tools/elements/handlers-write.d.ts +0 -89
- package/dist/tools/elements/handlers-write.d.ts.map +0 -1
- package/dist/tools/elements/handlers-write.js +0 -797
- package/dist/tools/elements/handlers-write.js.map +0 -1
- package/dist/tools/elements/handlers.d.ts +0 -130
- package/dist/tools/elements/handlers.d.ts.map +0 -1
- package/dist/tools/elements/handlers.js +0 -581
- package/dist/tools/elements/handlers.js.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.d.ts +0 -62
- package/dist/tools/elements/layout-hierarchy-rules.d.ts.map +0 -1
- package/dist/tools/elements/layout-hierarchy-rules.js +0 -154
- package/dist/tools/elements/layout-hierarchy-rules.js.map +0 -1
- package/dist/tools/elements/schema-validation.d.ts +0 -218
- package/dist/tools/elements/schema-validation.d.ts.map +0 -1
- package/dist/tools/elements/schema-validation.js +0 -685
- package/dist/tools/elements/schema-validation.js.map +0 -1
- package/dist/tools/elicitation.d.ts +0 -87
- package/dist/tools/elicitation.d.ts.map +0 -1
- package/dist/tools/elicitation.js +0 -100
- package/dist/tools/elicitation.js.map +0 -1
- package/dist/tools/format/elements-format.d.ts +0 -75
- package/dist/tools/format/elements-format.d.ts.map +0 -1
- package/dist/tools/format/elements-format.js +0 -368
- package/dist/tools/format/elements-format.js.map +0 -1
- package/dist/tools/format/source-schema-format.d.ts +0 -74
- package/dist/tools/format/source-schema-format.d.ts.map +0 -1
- package/dist/tools/format/source-schema-format.js +0 -208
- package/dist/tools/format/source-schema-format.js.map +0 -1
- package/dist/tools/layout-flatten.d.ts +0 -84
- package/dist/tools/layout-flatten.d.ts.map +0 -1
- package/dist/tools/layout-flatten.js +0 -129
- package/dist/tools/layout-flatten.js.map +0 -1
- package/dist/tools/local-content/handlers.d.ts +0 -56
- package/dist/tools/local-content/handlers.d.ts.map +0 -1
- package/dist/tools/local-content/handlers.js +0 -320
- package/dist/tools/local-content/handlers.js.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.d.ts +0 -37
- package/dist/tools/multi-items/clean-implode-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/clean-implode-handler.js +0 -65
- package/dist/tools/multi-items/clean-implode-handler.js.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.d.ts +0 -41
- package/dist/tools/multi-items/format/inspection-format.d.ts.map +0 -1
- package/dist/tools/multi-items/format/inspection-format.js +0 -64
- package/dist/tools/multi-items/format/inspection-format.js.map +0 -1
- package/dist/tools/multi-items/inspect-handler.d.ts +0 -97
- package/dist/tools/multi-items/inspect-handler.d.ts.map +0 -1
- package/dist/tools/multi-items/inspect-handler.js +0 -323
- package/dist/tools/multi-items/inspect-handler.js.map +0 -1
- package/dist/tools/multi-items/inspection-cache.d.ts +0 -85
- package/dist/tools/multi-items/inspection-cache.d.ts.map +0 -1
- package/dist/tools/multi-items/inspection-cache.js +0 -126
- package/dist/tools/multi-items/inspection-cache.js.map +0 -1
- package/dist/tools/navigation/handlers.d.ts +0 -30
- package/dist/tools/navigation/handlers.d.ts.map +0 -1
- package/dist/tools/navigation/handlers.js +0 -41
- package/dist/tools/navigation/handlers.js.map +0 -1
- package/dist/tools/pages/handlers-audit.d.ts +0 -140
- package/dist/tools/pages/handlers-audit.d.ts.map +0 -1
- package/dist/tools/pages/handlers-audit.js +0 -714
- package/dist/tools/pages/handlers-audit.js.map +0 -1
- package/dist/tools/pages/handlers-read.d.ts +0 -133
- package/dist/tools/pages/handlers-read.d.ts.map +0 -1
- package/dist/tools/pages/handlers-read.js +0 -1061
- package/dist/tools/pages/handlers-read.js.map +0 -1
- package/dist/tools/pages/handlers-write.d.ts +0 -212
- package/dist/tools/pages/handlers-write.d.ts.map +0 -1
- package/dist/tools/pages/handlers-write.js +0 -419
- package/dist/tools/pages/handlers-write.js.map +0 -1
- package/dist/tools/pages/target.d.ts +0 -162
- package/dist/tools/pages/target.d.ts.map +0 -1
- package/dist/tools/pages/target.js +0 -239
- package/dist/tools/pages/target.js.map +0 -1
- package/dist/tools/sources/handlers-bind.d.ts +0 -148
- package/dist/tools/sources/handlers-bind.d.ts.map +0 -1
- package/dist/tools/sources/handlers-bind.js +0 -657
- package/dist/tools/sources/handlers-bind.js.map +0 -1
- package/dist/tools/sources/handlers.d.ts +0 -116
- package/dist/tools/sources/handlers.d.ts.map +0 -1
- package/dist/tools/sources/handlers.js +0 -289
- package/dist/tools/sources/handlers.js.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts +0 -95
- package/dist/tools/sublayout/inspect-sublayout-handler.d.ts.map +0 -1
- package/dist/tools/sublayout/inspect-sublayout-handler.js +0 -181
- package/dist/tools/sublayout/inspect-sublayout-handler.js.map +0 -1
|
@@ -1,106 +1,42 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* `yootheme_builder_advanced_read` — a READ-ONLY sibling of the
|
|
3
|
-
* `yootheme_builder_advanced` gateway (F200a, 2026-06-12).
|
|
4
|
-
*
|
|
5
|
-
* The Desktop-E2E #2 forensic showed approval-gates firing on EVERY advanced
|
|
6
|
-
* call. Root cause: the single `yootheme_builder_advanced` gateway is annotated
|
|
7
|
-
* `readOnlyHint:false` + `destructiveHint:true` (correctly — it can route into
|
|
8
|
-
* delete / unbind handlers), so spec-compliant MCP hosts gate it
|
|
9
|
-
* conservatively. The read-only L2 subtools (page_get_schema,
|
|
10
|
-
* element_get_binding, inspect_sublayout) inherited that gate even though they
|
|
11
|
-
* mutate nothing — a per-call approval tax on pure inspection.
|
|
12
|
-
*
|
|
13
|
-
* This second gateway WHITELISTS only read-only advanced entries (annotation
|
|
14
|
-
* `readOnlyHint:true`) and is itself annotated `readOnly()`, so hosts can
|
|
15
|
-
* auto-allow it. Writing subtools (unbind, clean-implode) stay reachable ONLY
|
|
16
|
-
* through the existing (gated) `yootheme_builder_advanced` — defense-in-depth:
|
|
17
|
-
* the read gateway physically cannot route to them (they are not in its
|
|
18
|
-
* registry view).
|
|
19
|
-
*
|
|
20
|
-
* Two modes mirror the write gateway:
|
|
21
|
-
* { tool } → discovery (target schema + annotations; no invoke).
|
|
22
|
-
* { tool, arguments } → execution (strict-validated, then handler called).
|
|
23
|
-
*
|
|
24
|
-
* @license MIT
|
|
25
|
-
*/
|
|
26
1
|
import { z } from 'zod';
|
|
2
|
+
import { strictInputObject } from '../tools/strict-input.js';
|
|
27
3
|
import { readOnly } from '../tools/tool-builder.js';
|
|
28
4
|
import { isEssential, isDirectTopLevel } from './essentials.js';
|
|
29
|
-
import { discoveryResult } from './advanced-tool/discovery.js';
|
|
30
|
-
import { renderGroupedList } from './advanced-tool/domains.js';
|
|
5
|
+
import { discoveryResult, requiredArgsFromRegistry } from './advanced-tool/discovery.js';
|
|
6
|
+
import { FIRST_CLASS_NOT_ABSENT_HINT, renderGroupedList, resolveShortToolName, } from './advanced-tool/domains.js';
|
|
31
7
|
import { errorResult, executeAdvancedTool } from './advanced-tool/execute.js';
|
|
32
|
-
/** The pinned name — never rename (host configs + skill docs reference it). */
|
|
33
8
|
export const ADVANCED_READ_TOOL_NAME = 'yootheme_builder_advanced_read';
|
|
34
|
-
/**
|
|
35
|
-
* True iff a captured advanced entry advertises `readOnlyHint:true`. The
|
|
36
|
-
* single source of truth for "is this subtool safe to auto-allow" — the same
|
|
37
|
-
* annotation the host reads. No name allowlist to drift: adding a new
|
|
38
|
-
* read-only advanced tool surfaces here automatically.
|
|
39
|
-
*/
|
|
40
9
|
function isReadOnlyEntry(entry) {
|
|
41
10
|
const annotations = entry.config.annotations;
|
|
42
11
|
return annotations?.readOnlyHint === true;
|
|
43
12
|
}
|
|
44
|
-
/**
|
|
45
|
-
* Builds the read-gateway's input schema.
|
|
46
|
-
*
|
|
47
|
-
* F205 (P2): `tool` is a free z.string(), NOT a z.enum — same trap as the write
|
|
48
|
-
* gateway. The MCP SDK validates the inputSchema before the handler runs; an
|
|
49
|
-
* enum rejected first-class names with a raw McpError -32602 so the handler's
|
|
50
|
-
* not_read_only / first_class_tool / unknown steering never ran. A plain string
|
|
51
|
-
* lets every name reach the handler.
|
|
52
|
-
*/
|
|
53
13
|
function readGatewayInputSchema() {
|
|
54
14
|
return {
|
|
55
|
-
tool: z.string().describe('Read-only advanced tool to route to (e.g. "
|
|
15
|
+
tool: z.string().describe('Read-only advanced tool to route to (e.g. "yootheme_builder_pages_audit"). ' +
|
|
56
16
|
'Must be one of the read-only advanced tools listed in this description. ' +
|
|
57
17
|
'First-class tools (yootheme_builder_health, ...) are called DIRECTLY; ' +
|
|
58
18
|
'writing tools use yootheme_builder_advanced. ' +
|
|
59
19
|
'Omit `arguments` to discover its schema first.'),
|
|
60
20
|
arguments: z.record(z.string(), z.unknown()).optional().describe('Arguments for the target tool. Omit for discovery mode ' +
|
|
61
21
|
"(returns the tool's schema + annotations)."),
|
|
62
|
-
// `input` is a tolerated alias for `arguments` (same back-compat carve
|
|
63
|
-
// the write gateway makes — see register.ts F107).
|
|
64
22
|
input: z.record(z.string(), z.unknown()).optional().describe('Alias for `arguments` (tolerated for back-compat). Prefer `arguments`.'),
|
|
65
23
|
};
|
|
66
24
|
}
|
|
67
|
-
|
|
68
|
-
function buildReadDescription(readOnlyNames) {
|
|
25
|
+
function buildReadDescription(readOnlyNames, required) {
|
|
69
26
|
const count = readOnlyNames.length;
|
|
70
|
-
return (`Routes to ${String(count)} READ-ONLY advanced
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
'
|
|
76
|
-
'
|
|
77
|
-
'
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// lead so a COLD agent's generic "SEO audit" request matches this
|
|
81
|
-
// gateway semantically and finds pages_audit behind it (pages_audit is
|
|
82
|
-
// L2 — only reachable through this gateway, never first-class). Without
|
|
83
|
-
// this the agent loops page_get_layout page-by-page (customer 2026-07-21).
|
|
84
|
-
'Includes the one-call site-wide SEO / structure / content / links AUDIT ' +
|
|
85
|
-
'(yootheme_builder_pages_audit — missing/multiple h1, image alt, thin ' +
|
|
86
|
-
'content, duplicate layouts, dead links): route a whole-site SEO / audit ' +
|
|
87
|
-
'request here instead of looping page-by-page reads. ' +
|
|
88
|
-
'Call { tool } for its ' +
|
|
89
|
-
'schema, or { tool, arguments } to run it.' +
|
|
90
|
-
'\n\nAvailable read-only advanced tools by domain:\n' +
|
|
91
|
-
`${renderGroupedList(readOnlyNames)}\n\n` +
|
|
92
|
-
'Writing tools (unbind, clean-implode): use yootheme_builder_advanced. ' +
|
|
27
|
+
return (`Routes to ${String(count)} READ-ONLY advanced tool${count === 1 ? '' : 's'}. ` +
|
|
28
|
+
'Every tool in tools/list is FIRST-CLASS: call it directly, never via this gateway. ' +
|
|
29
|
+
'Itself read-only — prefer it over yootheme_builder_advanced for inspection. ' +
|
|
30
|
+
'One-call site-wide SEO/structure/content/links audit: yootheme_builder_pages_audit — ' +
|
|
31
|
+
'route a whole-site audit request here instead of looping page-by-page reads. ' +
|
|
32
|
+
'`site_id` and every other argument the target tool declares go INSIDE ' +
|
|
33
|
+
'`arguments`, never beside `tool`.' +
|
|
34
|
+
'\n\nAvailable read-only advanced tools by domain (needs \u2026 = required arguments):\n' +
|
|
35
|
+
`${renderGroupedList(readOnlyNames, required)}\n\n` +
|
|
36
|
+
'Writing tools (clean-implode, modules_update): use yootheme_builder_advanced. ' +
|
|
93
37
|
'Connectivity: yootheme_builder_health / yootheme_builder_diagnose.');
|
|
94
38
|
}
|
|
95
|
-
/**
|
|
96
|
-
* Registers `yootheme_builder_advanced_read` on the real McpServer.
|
|
97
|
-
*
|
|
98
|
-
* @param realServer the McpServer that exposes the read gateway tool
|
|
99
|
-
* @param advancedRegistry the captured non-essential tools (from CapturingServer)
|
|
100
|
-
*/
|
|
101
39
|
export function registerAdvancedReadTool(realServer, advancedRegistry) {
|
|
102
|
-
// Build the read-only view of the registry — the gateway literally cannot
|
|
103
|
-
// see (let alone route to) writing tools.
|
|
104
40
|
const readOnlyRegistry = new Map();
|
|
105
41
|
for (const [name, entry] of advancedRegistry) {
|
|
106
42
|
if (isReadOnlyEntry(entry)) {
|
|
@@ -108,61 +44,57 @@ export function registerAdvancedReadTool(realServer, advancedRegistry) {
|
|
|
108
44
|
}
|
|
109
45
|
}
|
|
110
46
|
const readOnlyNames = [...readOnlyRegistry.keys()].sort();
|
|
47
|
+
const requiredArgs = requiredArgsFromRegistry(readOnlyRegistry);
|
|
111
48
|
realServer.registerTool(ADVANCED_READ_TOOL_NAME, {
|
|
112
49
|
title: 'Advanced Read-Only Gateway',
|
|
113
|
-
description: buildReadDescription(readOnlyNames),
|
|
114
|
-
inputSchema: readGatewayInputSchema(),
|
|
115
|
-
|
|
116
|
-
// gateway, this one can never reach a mutating handler.
|
|
117
|
-
annotations: readOnly('Advanced Read-Only Gateway'),
|
|
50
|
+
description: buildReadDescription(readOnlyNames, requiredArgs),
|
|
51
|
+
inputSchema: strictInputObject(ADVANCED_READ_TOOL_NAME, readGatewayInputSchema()),
|
|
52
|
+
annotations: { ...readOnly('Advanced Read-Only Gateway'), openWorldHint: true },
|
|
118
53
|
}, async (args, extra) => {
|
|
119
|
-
const
|
|
54
|
+
const tool = resolveShortToolName(args.tool, (candidate) => readOnlyRegistry.has(candidate) ||
|
|
55
|
+
advancedRegistry.has(candidate) ||
|
|
56
|
+
isEssential(candidate) ||
|
|
57
|
+
isDirectTopLevel(candidate));
|
|
58
|
+
const entry = readOnlyRegistry.get(tool);
|
|
120
59
|
if (!entry) {
|
|
121
|
-
|
|
122
|
-
// registry but not the read whitelist gets a targeted steer to
|
|
123
|
-
// the write gateway. This branch MUST stay ahead of the
|
|
124
|
-
// first_class_tool check (an advanced write subtool is not a
|
|
125
|
-
// first-class tool).
|
|
126
|
-
if (advancedRegistry.has(args.tool)) {
|
|
60
|
+
if (advancedRegistry.has(tool)) {
|
|
127
61
|
return errorResult({
|
|
128
|
-
message: `"${
|
|
62
|
+
message: `"${tool}" is not a read-only tool — it mutates state and is not ` +
|
|
129
63
|
'reachable through yootheme_builder_advanced_read.',
|
|
130
64
|
code: 'not_read_only',
|
|
131
65
|
suggestion: `Call it through the full gateway instead: ` +
|
|
132
|
-
`yootheme_builder_advanced({ tool: "${
|
|
133
|
-
details: { tool
|
|
66
|
+
`yootheme_builder_advanced({ tool: "${tool}", arguments: {...} }).`,
|
|
67
|
+
details: { tool },
|
|
134
68
|
});
|
|
135
69
|
}
|
|
136
|
-
|
|
137
|
-
// top-level) is steered to a direct call rather than treated
|
|
138
|
-
// as a typo.
|
|
139
|
-
if (isEssential(args.tool) || isDirectTopLevel(args.tool)) {
|
|
70
|
+
if (isEssential(tool) || isDirectTopLevel(tool)) {
|
|
140
71
|
return errorResult({
|
|
141
|
-
message: `"${
|
|
72
|
+
message: `"${tool}" is not routed through this gateway: it is registered as a ` +
|
|
73
|
+
'standalone tool, so your client can grant or withhold it on its own.',
|
|
142
74
|
code: 'first_class_tool',
|
|
143
|
-
suggestion: `
|
|
144
|
-
'
|
|
145
|
-
|
|
146
|
-
|
|
75
|
+
suggestion: `If you can see "${tool}" in your tool list, call it directly. If you ` +
|
|
76
|
+
'do not see it, your client has not granted it — this gateway cannot ' +
|
|
77
|
+
"route around that; enable the tool in your client's settings. This " +
|
|
78
|
+
'gateway only routes the read-only advanced tools listed in its ' +
|
|
79
|
+
'description. ' +
|
|
80
|
+
FIRST_CLASS_NOT_ABSENT_HINT,
|
|
81
|
+
details: { tool },
|
|
147
82
|
});
|
|
148
83
|
}
|
|
149
84
|
return errorResult({
|
|
150
85
|
message: `Unknown read-only advanced tool: "${args.tool}".`,
|
|
151
86
|
code: 'unknown_read_tool',
|
|
152
87
|
suggestion: 'This gateway routes ONLY read-only advanced tools. If you meant a ' +
|
|
153
|
-
'WRITING tool (
|
|
88
|
+
'WRITING tool (clean-implode, modules_update), use yootheme_builder_advanced ' +
|
|
154
89
|
'instead. Otherwise pick one of the valid read-only tools below.\n\n' +
|
|
155
|
-
`Valid read-only advanced tools by domain:\n${renderGroupedList(readOnlyNames)}`,
|
|
156
|
-
details: { valid_read_tools_by_domain: renderGroupedList(readOnlyNames) },
|
|
90
|
+
`Valid read-only advanced tools by domain (needs \u2026 = required arguments):\n${renderGroupedList(readOnlyNames, requiredArgs)}`,
|
|
91
|
+
details: { valid_read_tools_by_domain: renderGroupedList(readOnlyNames, requiredArgs) },
|
|
157
92
|
});
|
|
158
93
|
}
|
|
159
|
-
// `arguments` is canonical; `input` is a tolerated alias (F107).
|
|
160
94
|
const callArgs = args.arguments ?? args.input;
|
|
161
95
|
if (callArgs === undefined)
|
|
162
|
-
return discoveryResult(
|
|
163
|
-
|
|
164
|
-
// failure steers back to advanced_read, not the write gateway.
|
|
165
|
-
return executeAdvancedTool(args.tool, entry, callArgs, extra, ADVANCED_READ_TOOL_NAME);
|
|
96
|
+
return discoveryResult(tool, entry);
|
|
97
|
+
return executeAdvancedTool(tool, entry, callArgs, extra, ADVANCED_READ_TOOL_NAME);
|
|
166
98
|
});
|
|
167
99
|
}
|
|
168
100
|
//# sourceMappingURL=advanced-read-tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"advanced-read-tool.js","sourceRoot":"","sources":["../../src/gateway/advanced-read-tool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"advanced-read-tool.js","sourceRoot":"","sources":["../../src/gateway/advanced-read-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,8 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gateway discovery-mode dispatch — handles `{ tool }`-only invocations
|
|
3
|
-
* by returning the target tool's description, JSON-schema, and
|
|
4
|
-
* annotations. Never invokes the target handler.
|
|
5
|
-
*
|
|
6
|
-
* Round-2 (R2-A2-CRIT2) extracted from `gateway/advanced-tool.ts`.
|
|
7
|
-
*
|
|
8
|
-
* @license MIT
|
|
9
|
-
*/
|
|
10
1
|
import type { CallToolResult } from '@modelcontextprotocol/sdk/types.js';
|
|
11
2
|
import { type ZodRawShape } from 'zod';
|
|
12
3
|
import type { AdvancedToolEntry } from '../capturing-server.js';
|
|
13
|
-
/** Reads the captured config's inputSchema as a Zod raw-shape (or empty). */
|
|
14
4
|
export declare function shapeOf(entry: AdvancedToolEntry): ZodRawShape;
|
|
15
|
-
/** Builds a JSON-schema for a captured tool's inputs, with a defensive fallback. */
|
|
16
5
|
export declare function inputSchemaJson(entry: AdvancedToolEntry): unknown;
|
|
17
|
-
|
|
6
|
+
export declare function requiredArgsFromRegistry(registry: ReadonlyMap<string, AdvancedToolEntry>): Map<string, readonly string[]>;
|
|
18
7
|
export declare function discoveryResult(toolName: string, entry: AdvancedToolEntry): CallToolResult;
|
|
19
8
|
//# sourceMappingURL=discovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"discovery.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/discovery.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAK,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC;AAG1C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAGhE,wBAAgB,OAAO,CAAC,KAAK,EAAE,iBAAiB,GAAG,WAAW,CAI7D;AAiBD,wBAAgB,eAAe,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAUjE;AAoBD,wBAAgB,wBAAwB,CACpC,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,iBAAiB,CAAC,GACjD,GAAG,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAchC;AAGD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,iBAAiB,GAAG,cAAc,CAsC1F"}
|
|
@@ -1,45 +1,36 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gateway discovery-mode dispatch — handles `{ tool }`-only invocations
|
|
3
|
-
* by returning the target tool's description, JSON-schema, and
|
|
4
|
-
* annotations. Never invokes the target handler.
|
|
5
|
-
*
|
|
6
|
-
* Round-2 (R2-A2-CRIT2) extracted from `gateway/advanced-tool.ts`.
|
|
7
|
-
*
|
|
8
|
-
* @license MIT
|
|
9
|
-
*/
|
|
10
1
|
import { z } from 'zod';
|
|
11
|
-
|
|
2
|
+
import { normalizeJsonSchema } from '../../catalog/json-schema.js';
|
|
12
3
|
export function shapeOf(entry) {
|
|
13
4
|
const schema = entry.config.inputSchema;
|
|
14
5
|
if (schema && typeof schema === 'object')
|
|
15
6
|
return schema;
|
|
16
7
|
return {};
|
|
17
8
|
}
|
|
18
|
-
/** Builds a JSON-schema for a captured tool's inputs, with a defensive fallback. */
|
|
19
9
|
export function inputSchemaJson(entry) {
|
|
20
10
|
try {
|
|
21
|
-
|
|
11
|
+
const json = z.toJSONSchema(z.object(shapeOf(entry)));
|
|
12
|
+
normalizeJsonSchema(json);
|
|
13
|
+
return json;
|
|
22
14
|
}
|
|
23
15
|
catch {
|
|
24
|
-
// A schema that cannot be JSON-projected still yields a usable
|
|
25
|
-
// discovery payload — description + annotations carry the rest.
|
|
26
16
|
return { note: 'input schema could not be derived' };
|
|
27
17
|
}
|
|
28
18
|
}
|
|
29
|
-
|
|
19
|
+
export function requiredArgsFromRegistry(registry) {
|
|
20
|
+
const out = new Map();
|
|
21
|
+
for (const [name, entry] of registry) {
|
|
22
|
+
const schema = inputSchemaJson(entry);
|
|
23
|
+
const required = schema !== null && typeof schema === 'object'
|
|
24
|
+
? schema.required
|
|
25
|
+
: undefined;
|
|
26
|
+
out.set(name, Array.isArray(required) ? required.filter((k) => typeof k === 'string') : []);
|
|
27
|
+
}
|
|
28
|
+
return out;
|
|
29
|
+
}
|
|
30
30
|
export function discoveryResult(toolName, entry) {
|
|
31
31
|
const cfg = entry.config;
|
|
32
32
|
const schema = inputSchemaJson(entry);
|
|
33
33
|
const next = `Call yootheme_builder_advanced again with { tool: "${toolName}", arguments: {...} } to run it.`;
|
|
34
|
-
// `next` mirrors the closing instruction of the text block below. It was the
|
|
35
|
-
// one fact the text leg carried and this payload did not — and on the PHP
|
|
36
|
-
// WordPress transport the structured payload is the ONLY leg a caller gets
|
|
37
|
-
// (the mcp-adapter re-derives the text from the value the ability returns), so
|
|
38
|
-
// an unmirrored sentence disappears there. Kept in lockstep with the PHP
|
|
39
|
-
// payload in `src/modules/core-mcp/src/McpAdvancedGatewayHandler.php` — pinned
|
|
40
|
-
// on BOTH sides (`tests/contracts/gateway-discovery-next.test.ts` here,
|
|
41
|
-
// `tests/php/unit/Mcp/GatewayDiscoveryNextPinTest.php` there), because a
|
|
42
|
-
// comment is not a mechanism.
|
|
43
34
|
const payload = {
|
|
44
35
|
tool: toolName,
|
|
45
36
|
description: cfg.description ?? '',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/discovery.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,CAAC,EAAoB,MAAM,KAAK,CAAC;AAE1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAInE,MAAM,UAAU,OAAO,CAAC,KAAwB;IAC5C,MAAM,MAAM,GAAI,KAAK,CAAC,MAAoC,CAAC,WAAW,CAAC;IACvE,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,MAAqB,CAAC;IACvE,OAAO,EAAE,CAAC;AACd,CAAC;AAiBD,MAAM,UAAU,eAAe,CAAC,KAAwB;IACpD,IAAI,CAAC;QACD,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC;QAChE,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC1B,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QAGL,OAAO,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC;IACzD,CAAC;AACL,CAAC;AAoBD,MAAM,UAAU,wBAAwB,CACpC,QAAgD;IAEhD,MAAM,GAAG,GAAG,IAAI,GAAG,EAA6B,CAAC;IACjD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,QAAQ,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,QAAQ,GACV,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ;YACzC,CAAC,CAAE,MAAiC,CAAC,QAAQ;YAC7C,CAAC,CAAC,SAAS,CAAC;QACpB,GAAG,CAAC,GAAG,CACH,IAAI,EACJ,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAC5F,CAAC;IACN,CAAC;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AAGD,MAAM,UAAU,eAAe,CAAC,QAAgB,EAAE,KAAwB;IACtE,MAAM,GAAG,GAAG,KAAK,CAAC,MAGjB,CAAC;IACF,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,IAAI,GACN,sDAAsD,QAAQ,kCAAkC,CAAC;IAUrG,MAAM,OAAO,GAAG;QACZ,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE;QAClC,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,EAAE;QAClC,IAAI;KACP,CAAC;IACF,OAAO;QACH,OAAO,EAAE;YACL;gBACI,IAAI,EAAE,MAAM;gBACZ,IAAI,EACA,iBAAiB,QAAQ,MAAM;oBAC/B,GAAG,GAAG,CAAC,WAAW,IAAI,EAAE,MAAM;oBAC9B,gBAAgB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,MAAM;oBAC3D,kBAAkB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM;oBACvD,IAAI;aACX;SACJ;QACD,iBAAiB,EAAE,OAAO;KAC7B,CAAC;AACN,CAAC"}
|
|
@@ -1,74 +1,15 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gateway domain taxonomy — single source of truth for grouping
|
|
3
|
-
* advanced tools by domain in description, errors, and discovery
|
|
4
|
-
* payloads.
|
|
5
|
-
*
|
|
6
|
-
* Round-2 (R2-A2-CRIT2) extracted from `gateway/advanced-tool.ts`
|
|
7
|
-
* to keep that file ≤ 200 LoC per Architecture §11.
|
|
8
|
-
*
|
|
9
|
-
* The 5-entry `DOMAIN_ORDER` contract is pinned by
|
|
10
|
-
* `tests/gateway/domain-order.test.ts` — any change here MUST update
|
|
11
|
-
* that pin-test (Round-2 audit follow-up R2-A1-N1).
|
|
12
|
-
*
|
|
13
|
-
* @license MIT
|
|
14
|
-
*/
|
|
15
1
|
import type { AdvancedToolEntry } from '../capturing-server.js';
|
|
16
|
-
/**
|
|
17
|
-
* Domains used to group advanced tool names. Order = display order in
|
|
18
|
-
* gateway description, errors, and discovery responses. Aligned with
|
|
19
|
-
* YOOtheme builder concepts (Design-Doc §3.1.1). Round-1 I4 trimmed
|
|
20
|
-
* from 8→4 (singular forms now route via DOMAIN_PREFIX_MAP, not
|
|
21
|
-
* duplicate entries). Pinned by `tests/gateway/domain-order.test.ts`.
|
|
22
|
-
*/
|
|
23
2
|
export declare const DOMAIN_ORDER: readonly ["pages", "elements", "sources", "multi-items", "inspection"];
|
|
24
|
-
/**
|
|
25
|
-
* Prefix→domain routing table. Each domain accepts plural
|
|
26
|
-
* (`pages_list`) + singular (`page_get_schema`, `element_unbind_source`,
|
|
27
|
-
* `source_…`) stems via `stem.startsWith(prefix + '_')` or full-equality.
|
|
28
|
-
* Anything outside the taxonomy falls through to 'misc'.
|
|
29
|
-
*
|
|
30
|
-
* The `multi-items` domain captures the YT-Pro Multi-Items binding
|
|
31
|
-
* pattern tools (inspect / clean-implode). Stems used:
|
|
32
|
-
* - `inspect_multi_items_binding` → starts with `inspect_multi_items`
|
|
33
|
-
* - `clean_implode_directives` → starts with `clean_implode`
|
|
34
|
-
*
|
|
35
|
-
* The `inspection` domain captures layout inspectors that surface a
|
|
36
|
-
* YT-Pro footgun the raw layout tree hides. Stems used:
|
|
37
|
-
* - `inspect_sublayout` (F154) → full-equality `inspect_sublayout`
|
|
38
|
-
* (the YT5 `< SUBLAYOUT` fragment-subtree + inner-grid-gate inspector).
|
|
39
|
-
*/
|
|
40
3
|
export declare const DOMAIN_PREFIX_MAP: Record<(typeof DOMAIN_ORDER)[number], readonly string[]>;
|
|
41
4
|
export declare const TOOL_PREFIX = "yootheme_builder_";
|
|
42
|
-
|
|
5
|
+
export declare function resolveShortToolName(name: string, isMember: (candidate: string) => boolean): string;
|
|
43
6
|
export declare function domainOf(toolName: string): string;
|
|
44
|
-
/**
|
|
45
|
-
* Groups tool names by domain, DOMAIN_ORDER first then any fall-through domain
|
|
46
|
-
* (`misc`) at the end, for stable output.
|
|
47
|
-
*
|
|
48
|
-
* NEVER-DROP invariant (audit fix F8, 2026-07-16): a tool whose stem is outside
|
|
49
|
-
* the DOMAIN_PREFIX_MAP taxonomy resolves to `misc`; the bucket is created
|
|
50
|
-
* LAZILY so such a tool is still grouped and rendered. The former impl only
|
|
51
|
-
* pre-created the DOMAIN_ORDER buckets and dropped anything mapping to `misc`,
|
|
52
|
-
* so shipped advanced tools with unmapped stems (`layout_query`,
|
|
53
|
-
* `library_save_as`) were silently absent from the gateway description, errors,
|
|
54
|
-
* and discovery — undiscoverable. Pinned by
|
|
55
|
-
* `tests/gateway/advanced-registry-coverage.test.ts`.
|
|
56
|
-
*/
|
|
57
7
|
export declare function groupByDomain(toolNames: string[]): Map<string, string[]>;
|
|
58
|
-
|
|
59
|
-
export declare function renderGroupedList(toolNames: string[]): string;
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
* first-class entries; the DISJOINT-LANE invariant guarantees they are NEVER
|
|
65
|
-
* in the advanced registry, so the gateway description must not advertise a
|
|
66
|
-
* gateway wrap for them (it would steer agents into an `unknown_tool` dead
|
|
67
|
-
* end on a current build). The binding workflow is now discoverable directly
|
|
68
|
-
* in `tools/list`.
|
|
69
|
-
*/
|
|
70
|
-
/** Builds the gateway tool's description, grouping every advanced tool by domain. */
|
|
71
|
-
export declare function buildDescription(toolNames: string[]): string;
|
|
72
|
-
/** Re-export the AdvancedToolEntry type so consumers don't need a second import path. */
|
|
8
|
+
export type RequiredArgsByTool = ReadonlyMap<string, readonly string[]>;
|
|
9
|
+
export declare function renderGroupedList(toolNames: string[], required?: RequiredArgsByTool): string;
|
|
10
|
+
export declare function gatewayCallFor(toolName: string, readOnlyTool: boolean): string;
|
|
11
|
+
export declare function gatewayOnlyNote(toolName: string, readOnlyTool: boolean): string;
|
|
12
|
+
export declare const FIRST_CLASS_NOT_ABSENT_HINT = "If your client does not show it, it is filtered or unloaded there \u2014 not absent.";
|
|
13
|
+
export declare function buildDescription(toolNames: string[], required?: RequiredArgsByTool): string;
|
|
73
14
|
export type { AdvancedToolEntry };
|
|
74
15
|
//# sourceMappingURL=domains.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domains.d.ts","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAShE,eAAO,MAAM,YAAY,wEAAyE,CAAC;AAkBnG,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAMtF,CAAC;AAEF,eAAO,MAAM,WAAW,sBAAsB,CAAC;AA8B/C,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,MAAM,CAOnG;AAGD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQjD;AAeD,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAgBxE;AASD,MAAM,MAAM,kBAAkB,GAAG,WAAW,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;AAyBxE,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,MAAM,CAQ5F;AAeD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,MAAM,CAG9E;AAOD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,GAAG,MAAM,CAK/E;AAuBD,eAAO,MAAM,2BAA2B,yFAC6C,CAAC;AAGtF,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,EAAE,kBAAkB,GAAG,MAAM,CA8B3F;AAGD,YAAY,EAAE,iBAAiB,EAAE,CAAC"}
|
|
@@ -1,41 +1,4 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Gateway domain taxonomy — single source of truth for grouping
|
|
3
|
-
* advanced tools by domain in description, errors, and discovery
|
|
4
|
-
* payloads.
|
|
5
|
-
*
|
|
6
|
-
* Round-2 (R2-A2-CRIT2) extracted from `gateway/advanced-tool.ts`
|
|
7
|
-
* to keep that file ≤ 200 LoC per Architecture §11.
|
|
8
|
-
*
|
|
9
|
-
* The 5-entry `DOMAIN_ORDER` contract is pinned by
|
|
10
|
-
* `tests/gateway/domain-order.test.ts` — any change here MUST update
|
|
11
|
-
* that pin-test (Round-2 audit follow-up R2-A1-N1).
|
|
12
|
-
*
|
|
13
|
-
* @license MIT
|
|
14
|
-
*/
|
|
15
|
-
/**
|
|
16
|
-
* Domains used to group advanced tool names. Order = display order in
|
|
17
|
-
* gateway description, errors, and discovery responses. Aligned with
|
|
18
|
-
* YOOtheme builder concepts (Design-Doc §3.1.1). Round-1 I4 trimmed
|
|
19
|
-
* from 8→4 (singular forms now route via DOMAIN_PREFIX_MAP, not
|
|
20
|
-
* duplicate entries). Pinned by `tests/gateway/domain-order.test.ts`.
|
|
21
|
-
*/
|
|
22
1
|
export const DOMAIN_ORDER = ['pages', 'elements', 'sources', 'multi-items', 'inspection'];
|
|
23
|
-
/**
|
|
24
|
-
* Prefix→domain routing table. Each domain accepts plural
|
|
25
|
-
* (`pages_list`) + singular (`page_get_schema`, `element_unbind_source`,
|
|
26
|
-
* `source_…`) stems via `stem.startsWith(prefix + '_')` or full-equality.
|
|
27
|
-
* Anything outside the taxonomy falls through to 'misc'.
|
|
28
|
-
*
|
|
29
|
-
* The `multi-items` domain captures the YT-Pro Multi-Items binding
|
|
30
|
-
* pattern tools (inspect / clean-implode). Stems used:
|
|
31
|
-
* - `inspect_multi_items_binding` → starts with `inspect_multi_items`
|
|
32
|
-
* - `clean_implode_directives` → starts with `clean_implode`
|
|
33
|
-
*
|
|
34
|
-
* The `inspection` domain captures layout inspectors that surface a
|
|
35
|
-
* YT-Pro footgun the raw layout tree hides. Stems used:
|
|
36
|
-
* - `inspect_sublayout` (F154) → full-equality `inspect_sublayout`
|
|
37
|
-
* (the YT5 `< SUBLAYOUT` fragment-subtree + inner-grid-gate inspector).
|
|
38
|
-
*/
|
|
39
2
|
export const DOMAIN_PREFIX_MAP = {
|
|
40
3
|
pages: ['pages', 'page'],
|
|
41
4
|
elements: ['elements', 'element'],
|
|
@@ -44,7 +7,16 @@ export const DOMAIN_PREFIX_MAP = {
|
|
|
44
7
|
inspection: ['inspection', 'inspect_sublayout'],
|
|
45
8
|
};
|
|
46
9
|
export const TOOL_PREFIX = 'yootheme_builder_';
|
|
47
|
-
|
|
10
|
+
export function resolveShortToolName(name, isMember) {
|
|
11
|
+
if (isMember(name))
|
|
12
|
+
return name;
|
|
13
|
+
if (!name.startsWith(TOOL_PREFIX)) {
|
|
14
|
+
const prefixed = `${TOOL_PREFIX}${name}`;
|
|
15
|
+
if (isMember(prefixed))
|
|
16
|
+
return prefixed;
|
|
17
|
+
}
|
|
18
|
+
return name;
|
|
19
|
+
}
|
|
48
20
|
export function domainOf(toolName) {
|
|
49
21
|
const stem = toolName.startsWith(TOOL_PREFIX) ? toolName.slice(TOOL_PREFIX.length) : toolName;
|
|
50
22
|
for (const domain of DOMAIN_ORDER) {
|
|
@@ -55,19 +27,6 @@ export function domainOf(toolName) {
|
|
|
55
27
|
}
|
|
56
28
|
return 'misc';
|
|
57
29
|
}
|
|
58
|
-
/**
|
|
59
|
-
* Groups tool names by domain, DOMAIN_ORDER first then any fall-through domain
|
|
60
|
-
* (`misc`) at the end, for stable output.
|
|
61
|
-
*
|
|
62
|
-
* NEVER-DROP invariant (audit fix F8, 2026-07-16): a tool whose stem is outside
|
|
63
|
-
* the DOMAIN_PREFIX_MAP taxonomy resolves to `misc`; the bucket is created
|
|
64
|
-
* LAZILY so such a tool is still grouped and rendered. The former impl only
|
|
65
|
-
* pre-created the DOMAIN_ORDER buckets and dropped anything mapping to `misc`,
|
|
66
|
-
* so shipped advanced tools with unmapped stems (`layout_query`,
|
|
67
|
-
* `library_save_as`) were silently absent from the gateway description, errors,
|
|
68
|
-
* and discovery — undiscoverable. Pinned by
|
|
69
|
-
* `tests/gateway/advanced-registry-coverage.test.ts`.
|
|
70
|
-
*/
|
|
71
30
|
export function groupByDomain(toolNames) {
|
|
72
31
|
const groups = new Map();
|
|
73
32
|
for (const domain of DOMAIN_ORDER)
|
|
@@ -87,47 +46,44 @@ export function groupByDomain(toolNames) {
|
|
|
87
46
|
}
|
|
88
47
|
return groups;
|
|
89
48
|
}
|
|
90
|
-
|
|
91
|
-
|
|
49
|
+
function requirementSuffix(required) {
|
|
50
|
+
if (required === undefined)
|
|
51
|
+
return '';
|
|
52
|
+
return required.length === 0 ? ' (none required)' : ` (needs ${required.join(', ')})`;
|
|
53
|
+
}
|
|
54
|
+
export function renderGroupedList(toolNames, required) {
|
|
92
55
|
const groups = groupByDomain(toolNames);
|
|
93
56
|
const lines = [];
|
|
94
57
|
for (const [domain, names] of groups) {
|
|
95
|
-
|
|
58
|
+
const rendered = names.map((name) => `${name}${requirementSuffix(required?.get(name))}`);
|
|
59
|
+
lines.push(` ${domain}: ${rendered.join(', ')}`);
|
|
96
60
|
}
|
|
97
61
|
return lines.join('\n');
|
|
98
62
|
}
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
/** Builds the gateway tool's description, grouping every advanced tool by domain. */
|
|
110
|
-
export function buildDescription(toolNames) {
|
|
63
|
+
export function gatewayCallFor(toolName, readOnlyTool) {
|
|
64
|
+
const gateway = readOnlyTool ? 'yootheme_builder_advanced_read' : 'yootheme_builder_advanced';
|
|
65
|
+
return `${gateway}({ tool: "${toolName}", arguments: {...} })`;
|
|
66
|
+
}
|
|
67
|
+
export function gatewayOnlyNote(toolName, readOnlyTool) {
|
|
68
|
+
return (`Not in tools/list — searching for "${toolName}" there finds nothing. `
|
|
69
|
+
+ `Call it as ${gatewayCallFor(toolName, readOnlyTool)}.`);
|
|
70
|
+
}
|
|
71
|
+
export const FIRST_CLASS_NOT_ABSENT_HINT = 'If your client does not show it, it is filtered or unloaded there — not absent.';
|
|
72
|
+
export function buildDescription(toolNames, required) {
|
|
111
73
|
const toolCount = toolNames.length;
|
|
112
74
|
const domains = [...groupByDomain(toolNames).keys()];
|
|
113
75
|
const domainCount = domains.length;
|
|
114
76
|
const domainList = domains.join(', ');
|
|
115
|
-
return (`Routes to ${String(toolCount)} advanced
|
|
116
|
-
|
|
117
|
-
// F214: stop the model habitually routing first-class tools through the
|
|
118
|
-
// gateway (a wasted invalid_arguments cycle each time). State the scope
|
|
119
|
-
// boundary up front, before the grouped-tool list.
|
|
77
|
+
return (`Routes to ${String(toolCount)} advanced tool${toolCount === 1 ? '' : 's'} across ` +
|
|
78
|
+
`${String(domainCount)} domain${domainCount === 1 ? '' : 's'}${domainCount > 0 ? ` (${domainList})` : ''}. ` +
|
|
120
79
|
'ONLY for the advanced tools listed below — every tool that appears ' +
|
|
121
80
|
'directly in tools/list is FIRST-CLASS: call it directly, never via this gateway. ' +
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
'
|
|
125
|
-
'
|
|
126
|
-
'
|
|
127
|
-
|
|
128
|
-
'(the target\'s own confirm guards stay in effect).' +
|
|
129
|
-
'\n\nAvailable advanced tools by domain:\n' +
|
|
130
|
-
`${renderGroupedList(toolNames)}\n\n` +
|
|
81
|
+
'Read-only ones: prefer yootheme_builder_advanced_read (no write-approval gate). ' +
|
|
82
|
+
'Omit `arguments` to see a tool\'s schema. ' +
|
|
83
|
+
'`site_id` and every other argument the target tool declares go INSIDE ' +
|
|
84
|
+
'`arguments`, never beside `tool`.' +
|
|
85
|
+
'\n\nAvailable advanced tools by domain (needs … = required arguments):\n' +
|
|
86
|
+
`${renderGroupedList(toolNames, required)}\n\n` +
|
|
131
87
|
'Connectivity: yootheme_builder_health / yootheme_builder_diagnose.');
|
|
132
88
|
}
|
|
133
89
|
//# sourceMappingURL=domains.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"domains.js","sourceRoot":"","sources":["../../../src/gateway/advanced-tool/domains.ts"],"names":[],"mappings":"AAwBA,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,CAAU,CAAC;AAkBnG,MAAM,CAAC,MAAM,iBAAiB,GAA6D;IACvF,KAAK,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,CAAC,UAAU,EAAE,SAAS,CAAC;IACjC,OAAO,EAAE,CAAC,SAAS,EAAE,QAAQ,CAAC;IAC9B,aAAa,EAAE,CAAC,qBAAqB,EAAE,eAAe,CAAC;IACvD,UAAU,EAAE,CAAC,YAAY,EAAE,mBAAmB,CAAC;CAClD,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,mBAAmB,CAAC;AA8B/C,MAAM,UAAU,oBAAoB,CAAC,IAAY,EAAE,QAAwC;IACvF,IAAI,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,WAAW,GAAG,IAAI,EAAE,CAAC;QACzC,IAAI,QAAQ,CAAC,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;IAC5C,CAAC;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAGD,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;IAC9F,KAAK,MAAM,MAAM,IAAI,YAAY,EAAE,CAAC;QAChC,KAAK,MAAM,MAAM,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,CAAC;gBAAE,OAAO,MAAM,CAAC;QACxE,CAAC;IACL,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAeD,MAAM,UAAU,aAAa,CAAC,SAAmB;IAC7C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC3C,KAAK,MAAM,MAAM,IAAI,YAAY;QAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1D,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9B,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,GAAG,EAAE,CAAC;YACZ,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/B,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;IACD,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QACnC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC;IACD,OAAO,MAAM,CAAC;AAClB,CAAC;AAqBD,SAAS,iBAAiB,CAAC,QAAuC;IAC9D,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACtC,OAAO,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,WAAW,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;AAC1F,CAAC;AAUD,MAAM,UAAU,iBAAiB,CAAC,SAAmB,EAAE,QAA6B;IAChF,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,GAAG,iBAAiB,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QACzF,KAAK,CAAC,IAAI,CAAC,KAAK,MAAM,KAAK,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtD,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAeD,MAAM,UAAU,cAAc,CAAC,QAAgB,EAAE,YAAqB;IAClE,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,2BAA2B,CAAC;IAC9F,OAAO,GAAG,OAAO,aAAa,QAAQ,wBAAwB,CAAC;AACnE,CAAC;AAOD,MAAM,UAAU,eAAe,CAAC,QAAgB,EAAE,YAAqB;IACnE,OAAO,CACH,sCAAsC,QAAQ,yBAAyB;UACrE,cAAc,cAAc,CAAC,QAAQ,EAAE,YAAY,CAAC,GAAG,CAC5D,CAAC;AACN,CAAC;AAuBD,MAAM,CAAC,MAAM,2BAA2B,GACpC,iFAAiF,CAAC;AAGtF,MAAM,UAAU,gBAAgB,CAAC,SAAmB,EAAE,QAA6B;IAC/E,MAAM,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;IACnC,MAAM,OAAO,GAAG,CAAC,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,CACH,aAAa,MAAM,CAAC,SAAS,CAAC,iBAAiB,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,UAAU;QACnF,GAAG,MAAM,CAAC,WAAW,CAAC,UAAU,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,UAAU,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI;QAI5G,qEAAqE;QACrE,mFAAmF;QAGnF,kFAAkF;QAClF,4CAA4C;QAK5C,wEAAwE;QACxE,mCAAmC;QAInC,0EAA0E;QAC1E,GAAG,iBAAiB,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM;QAC/C,oEAAoE,CACvE,CAAC;AACN,CAAC"}
|