@noodleseed/one 0.121.0 → 0.123.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/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +3 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/catalog-data-hosted-observability.d.ts.map +1 -1
- package/dist/commands/catalog-data-hosted-observability.js +33 -0
- package/dist/commands/catalog-data-hosted-observability.js.map +1 -1
- package/dist/commands/deploy-version-resolution.js +1 -1
- package/dist/commands/deploy-version-resolution.js.map +1 -1
- package/dist/commands/knowledge.d.ts +7 -0
- package/dist/commands/knowledge.d.ts.map +1 -0
- package/dist/commands/knowledge.js +129 -0
- package/dist/commands/knowledge.js.map +1 -0
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +5 -2
- package/dist/commands/session.js.map +1 -1
- package/dist/deploy.d.ts.map +1 -1
- package/dist/deploy.js +19 -2
- package/dist/deploy.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.d.ts.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js +4 -0
- package/node_modules/@noodle-borg/agent-kit/dist/curated/command-groups.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.d.ts.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js +1 -0
- package/node_modules/@noodle-borg/agent-kit/dist/generated/surface.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/plugin-marketplace-docs.js +4 -4
- package/node_modules/@noodle-borg/agent-kit/dist/plugin-submission.js +8 -8
- package/node_modules/@noodle-borg/agent-kit/dist/plugin-submission.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-operations-refs.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/package.json +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/artifact-projection.d.ts +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/artifact-projection.d.ts.map +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/artifact-projection.js +7 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/artifact-projection.js.map +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-interactive.d.ts +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-interactive.d.ts.map +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-interactive.js.map +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-presentation.d.ts.map +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-presentation.js +1 -1
- package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-presentation.js.map +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/index.d.ts +2 -0
- package/node_modules/@noodle-borg/assistant-gateway/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/dist/index.js +2 -0
- package/node_modules/@noodle-borg/assistant-gateway/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/assistant-gateway/package.json +3 -1
- package/node_modules/@noodle-borg/deploy-client/dist/deploy-knowledge.d.ts +21 -0
- package/node_modules/@noodle-borg/deploy-client/dist/deploy-knowledge.d.ts.map +1 -0
- package/node_modules/@noodle-borg/deploy-client/dist/deploy-knowledge.js +115 -0
- package/node_modules/@noodle-borg/deploy-client/dist/deploy-knowledge.js.map +1 -0
- package/node_modules/@noodle-borg/deploy-client/dist/index.d.ts +4 -0
- package/node_modules/@noodle-borg/deploy-client/dist/index.d.ts.map +1 -0
- package/node_modules/@noodle-borg/deploy-client/dist/index.js +4 -0
- package/node_modules/@noodle-borg/deploy-client/dist/index.js.map +1 -0
- package/node_modules/@noodle-borg/deploy-client/package.json +34 -0
- package/node_modules/@noodle-borg/developer-mcp/dist/contracts.d.ts +30 -9
- package/node_modules/@noodle-borg/developer-mcp/dist/contracts.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/contracts.js +21 -6
- package/node_modules/@noodle-borg/developer-mcp/dist/contracts.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/port.d.ts +2 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/port.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/port.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/prompts.js +3 -3
- package/node_modules/@noodle-borg/developer-mcp/dist/prompts.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/resources.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/resources.js +10 -9
- package/node_modules/@noodle-borg/developer-mcp/dist/resources.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/results.d.ts +4 -3
- package/node_modules/@noodle-borg/developer-mcp/dist/results.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/results.js +5 -19
- package/node_modules/@noodle-borg/developer-mcp/dist/results.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/server.js +3 -3
- package/node_modules/@noodle-borg/developer-mcp/dist/server.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/apps.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/apps.js +6 -25
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/apps.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/context.d.ts +16 -3
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/context.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/context.js +22 -19
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/context.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/deployments.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/deployments.js +3 -9
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/deployments.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/diagnose.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/diagnose.js +15 -16
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/diagnose.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/operations.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/operations.js +9 -17
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/operations.js.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/rollback.d.ts.map +1 -1
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/rollback.js +7 -10
- package/node_modules/@noodle-borg/developer-mcp/dist/tools/rollback.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/bm25.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/bm25.js +4 -0
- package/node_modules/@noodle-borg/knowledge/dist/bm25.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/budget.d.ts +41 -17
- package/node_modules/@noodle-borg/knowledge/dist/budget.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/budget.js +0 -0
- package/node_modules/@noodle-borg/knowledge/dist/budget.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/google-agent-search.d.ts +4 -0
- package/node_modules/@noodle-borg/knowledge/dist/google-agent-search.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/google-agent-search.js +28 -20
- package/node_modules/@noodle-borg/knowledge/dist/google-agent-search.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/index.d.ts +1 -0
- package/node_modules/@noodle-borg/knowledge/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/index.js +1 -0
- package/node_modules/@noodle-borg/knowledge/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/postgres-budget-store.d.ts +22 -0
- package/node_modules/@noodle-borg/knowledge/dist/postgres-budget-store.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge/dist/postgres-budget-store.js +102 -0
- package/node_modules/@noodle-borg/knowledge/dist/postgres-budget-store.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge/dist/postgres-revision-store.d.ts +7 -4
- package/node_modules/@noodle-borg/knowledge/dist/postgres-revision-store.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/postgres-revision-store.js +110 -25
- package/node_modules/@noodle-borg/knowledge/dist/postgres-revision-store.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/revision-store.d.ts +35 -4
- package/node_modules/@noodle-borg/knowledge/dist/revision-store.d.ts.map +1 -1
- package/node_modules/@noodle-borg/knowledge/dist/revision-store.js +73 -17
- package/node_modules/@noodle-borg/knowledge/dist/revision-store.js.map +1 -1
- package/node_modules/@noodle-borg/knowledge/package.json +4 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/codec.d.ts +12 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/codec.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/codec.js +7 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/codec.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/dispatch.d.ts +16 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/dispatch.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/dispatch.js +41 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/dispatch.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/executor.d.ts +40 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/executor.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/executor.js +54 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/executor.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/google-identity.d.ts +15 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/google-identity.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/google-identity.js +50 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/google-identity.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/http.d.ts +16 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/http.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/http.js +18 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/http.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/index.d.ts +18 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/index.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/index.js +18 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/index.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/managed-google.d.ts +29 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/managed-google.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/managed-google.js +53 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/managed-google.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/paths.d.ts +21 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/paths.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/paths.js +28 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/paths.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/publication.d.ts +60 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/publication.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/publication.js +230 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/publication.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/routes.d.ts +38 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/routes.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/routes.js +100 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/routes.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/search-port.d.ts +31 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/search-port.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/search-port.js +36 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/search-port.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/service-wiring.d.ts +56 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/service-wiring.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/service-wiring.js +129 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/service-wiring.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/staging-store.d.ts +38 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/staging-store.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/staging-store.js +77 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/staging-store.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/status-routes.d.ts +28 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/status-routes.d.ts.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/status-routes.js +66 -0
- package/node_modules/@noodle-borg/knowledge-operations/dist/status-routes.js.map +1 -0
- package/node_modules/@noodle-borg/knowledge-operations/package.json +34 -0
- package/node_modules/@noodle-borg/protocol/dist/handlers/tools.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/handlers/tools.js +22 -1
- package/node_modules/@noodle-borg/protocol/dist/handlers/tools.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/knowledge-tool.d.ts +28 -0
- package/node_modules/@noodle-borg/protocol/dist/knowledge-tool.d.ts.map +1 -0
- package/node_modules/@noodle-borg/protocol/dist/knowledge-tool.js +26 -0
- package/node_modules/@noodle-borg/protocol/dist/knowledge-tool.js.map +1 -0
- package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts +5 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.js +12 -1
- package/node_modules/@noodle-borg/protocol/dist/mapping.js.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/v2/server.d.ts.map +1 -1
- package/node_modules/@noodle-borg/protocol/dist/v2/server.js +23 -2
- package/node_modules/@noodle-borg/protocol/dist/v2/server.js.map +1 -1
- package/node_modules/@noodle-borg/runtime/dist/execute.d.ts +28 -0
- package/node_modules/@noodle-borg/runtime/dist/execute.d.ts.map +1 -1
- package/node_modules/@noodle-borg/runtime/dist/execute.js.map +1 -1
- package/node_modules/@noodle-borg/runtime/dist/index.d.ts +1 -1
- package/node_modules/@noodle-borg/runtime/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/runtime/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/auth/developer-grant-guard.d.ts +6 -4
- package/node_modules/@noodle-borg/service/dist/auth/developer-grant-guard.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/auth/developer-grant-guard.js +13 -16
- package/node_modules/@noodle-borg/service/dist/auth/developer-grant-guard.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/developer-mcp/control-plane-adapter.d.ts +3 -2
- package/node_modules/@noodle-borg/service/dist/developer-mcp/control-plane-adapter.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/developer-mcp/control-plane-adapter.js +66 -47
- package/node_modules/@noodle-borg/service/dist/developer-mcp/control-plane-adapter.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/developer-mcp/mount.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/developer-mcp/mount.js +15 -16
- package/node_modules/@noodle-borg/service/dist/developer-mcp/mount.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.d.ts +2 -2
- package/node_modules/@noodle-borg/service/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/index.js +1 -1
- package/node_modules/@noodle-borg/service/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.d.ts +0 -2
- package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.js +0 -16
- package/node_modules/@noodle-borg/service/dist/oauth/consent-claims.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-authorizer.d.ts +3 -28
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-authorizer.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-authorizer.js +8 -67
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-authorizer.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-bootstrap.d.ts +0 -4
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-bootstrap.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-bootstrap.js +1 -14
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-bootstrap.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.d.ts +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.js +45 -36
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-flow.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-page.d.ts +2 -2
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-page.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-page.js +20 -229
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-page.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-store-postgres.d.ts +3 -2
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-store-postgres.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-store-postgres.js +70 -36
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant-store-postgres.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant.d.ts +17 -6
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant.js +98 -26
- package/node_modules/@noodle-borg/service/dist/oauth/developer-grant.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js +0 -2
- package/node_modules/@noodle-borg/service/dist/oauth/service-bootstrap.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.js +1 -1
- package/node_modules/@noodle-borg/service/dist/oauth/upstream-consent.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/options.d.ts +3 -0
- package/node_modules/@noodle-borg/service/dist/options.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-compile.d.ts +2 -0
- package/node_modules/@noodle-borg/service/dist/registry-compile.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-compile.js +6 -0
- package/node_modules/@noodle-borg/service/dist/registry-compile.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-recover.d.ts +26 -0
- package/node_modules/@noodle-borg/service/dist/registry-recover.d.ts.map +1 -0
- package/node_modules/@noodle-borg/service/dist/registry-recover.js +58 -0
- package/node_modules/@noodle-borg/service/dist/registry-recover.js.map +1 -0
- package/node_modules/@noodle-borg/service/dist/registry-rollback.d.ts +10 -0
- package/node_modules/@noodle-borg/service/dist/registry-rollback.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry-rollback.js +25 -0
- package/node_modules/@noodle-borg/service/dist/registry-rollback.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry.d.ts +5 -0
- package/node_modules/@noodle-borg/service/dist/registry.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/registry.js +36 -78
- package/node_modules/@noodle-borg/service/dist/registry.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/analytics.js +3 -3
- package/node_modules/@noodle-borg/service/dist/routes/analytics.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/apps.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/apps.js +6 -27
- package/node_modules/@noodle-borg/service/dist/routes/apps.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js +38 -14
- package/node_modules/@noodle-borg/service/dist/routes/assistant-agent.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-replay.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-replay.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-replay.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-stream.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-stream.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interaction-stream.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.js +1 -3
- package/node_modules/@noodle-borg/service/dist/routes/assistant-interactions.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant-knowledge.d.ts +32 -0
- package/node_modules/@noodle-borg/service/dist/routes/assistant-knowledge.d.ts.map +1 -0
- package/node_modules/@noodle-borg/service/dist/routes/assistant-knowledge.js +42 -0
- package/node_modules/@noodle-borg/service/dist/routes/assistant-knowledge.js.map +1 -0
- package/node_modules/@noodle-borg/service/dist/routes/assistant.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/assistant.js +11 -3
- package/node_modules/@noodle-borg/service/dist/routes/assistant.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/config-values.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/config-values.js +5 -8
- package/node_modules/@noodle-borg/service/dist/routes/config-values.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts +7 -6
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.js +7 -6
- package/node_modules/@noodle-borg/service/dist/routes/control-plane.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deploy-preflight.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deploy-preflight.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deployment-package.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deployment-package.js +2 -7
- package/node_modules/@noodle-borg/service/dist/routes/deployment-package.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deployments.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/deployments.js +7 -20
- package/node_modules/@noodle-borg/service/dist/routes/deployments.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/diagnostics.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/diagnostics.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/envs.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/envs.js +4 -8
- package/node_modules/@noodle-borg/service/dist/routes/envs.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/logs.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/logs.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/rollback.js +1 -1
- package/node_modules/@noodle-borg/service/dist/routes/rollback.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/serve.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/serve.js +4 -0
- package/node_modules/@noodle-borg/service/dist/serve.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/service.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/service.js +11 -1
- package/node_modules/@noodle-borg/service/dist/service.js.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.d.ts.map +1 -1
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js +21 -0
- package/node_modules/@noodle-borg/service/dist/store/postgres-schema.js.map +1 -1
- package/node_modules/@noodle-borg/service/package.json +3 -1
- package/node_modules/@noodle-borg/wire-contracts/dist/index.d.ts +1 -0
- package/node_modules/@noodle-borg/wire-contracts/dist/index.d.ts.map +1 -1
- package/node_modules/@noodle-borg/wire-contracts/dist/index.js +1 -0
- package/node_modules/@noodle-borg/wire-contracts/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/wire-contracts/dist/knowledge.d.ts +134 -0
- package/node_modules/@noodle-borg/wire-contracts/dist/knowledge.d.ts.map +1 -0
- package/node_modules/@noodle-borg/wire-contracts/dist/knowledge.js +101 -0
- package/node_modules/@noodle-borg/wire-contracts/dist/knowledge.js.map +1 -0
- package/node_modules/@noodle-borg/wire-contracts/package.json +1 -0
- package/node_modules/@noodleseed/assistant/package.json +41 -16
- package/package.json +7 -2
- /package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-interactive.js +0 -0
- /package/node_modules/@noodle-borg/{service → assistant-gateway}/dist/assistant-presentation.d.ts +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-payload-size.d.ts +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-payload-size.d.ts.map +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-payload-size.js +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-payload-size.js.map +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-version.d.ts +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-version.d.ts.map +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-version.js +0 -0
- /package/{dist → node_modules/@noodle-borg/deploy-client/dist}/deploy-version.js.map +0 -0
|
@@ -15,6 +15,7 @@ export interface ResultContext {
|
|
|
15
15
|
export declare function successResult<T>(options: ResultContext & {
|
|
16
16
|
readonly data: T;
|
|
17
17
|
readonly summary: string;
|
|
18
|
+
readonly org?: string;
|
|
18
19
|
readonly env?: string;
|
|
19
20
|
readonly nextActions?: readonly DeveloperNextAction[];
|
|
20
21
|
}): DeveloperToolResult<T>;
|
|
@@ -22,10 +23,10 @@ export declare function errorResult<T = never>(options: ResultContext & {
|
|
|
22
23
|
readonly code: DeveloperErrorCode;
|
|
23
24
|
readonly message: string;
|
|
24
25
|
readonly retryable?: boolean;
|
|
26
|
+
readonly org?: string;
|
|
25
27
|
readonly env?: string;
|
|
26
28
|
readonly nextActions?: readonly DeveloperNextAction[];
|
|
27
29
|
}): DeveloperToolResult<T>;
|
|
28
|
-
export declare function validationError<T>(context: ResultContext, message: string
|
|
29
|
-
export declare function
|
|
30
|
-
export declare function portError<T>(context: ResultContext, error: unknown, env?: string): DeveloperToolResult<T>;
|
|
30
|
+
export declare function validationError<T>(context: ResultContext, message: string): DeveloperToolResult<T>;
|
|
31
|
+
export declare function portError<T>(context: ResultContext, error: unknown, org?: string, env?: string): DeveloperToolResult<T>;
|
|
31
32
|
//# sourceMappingURL=results.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EAEhB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,MAAM,CAAC;CACnC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAC7B,OAAO,EAAE,aAAa,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACvD,GACA,mBAAmB,CAAC,CAAC,CAAC,CAUxB;AAED,wBAAgB,WAAW,CAAC,CAAC,GAAG,KAAK,EACnC,OAAO,EAAE,aAAa,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACvD,GACA,mBAAmB,CAAC,CAAC,CAAC,CAexB;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"results.d.ts","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAElB,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EAEhB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,WAAW,mBAAmB,CAAC,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,QAAQ,CAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC;IACxB,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACpD;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,mBAAmB,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,MAAM,CAAC;CACnC;AAED,wBAAgB,aAAa,CAAC,CAAC,EAC7B,OAAO,EAAE,aAAa,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACjB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACvD,GACA,mBAAmB,CAAC,CAAC,CAAC,CAUxB;AAED,wBAAgB,WAAW,CAAC,CAAC,GAAG,KAAK,EACnC,OAAO,EAAE,aAAa,GAAG;IACvB,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,WAAW,CAAC,EAAE,SAAS,mBAAmB,EAAE,CAAC;CACvD,GACA,mBAAmB,CAAC,CAAC,CAAC,CAexB;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,0BAMzE;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,0BAmB9F"}
|
|
@@ -27,36 +27,21 @@ export function errorResult(options) {
|
|
|
27
27
|
isError: true,
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
|
-
export function validationError(context, message
|
|
30
|
+
export function validationError(context, message) {
|
|
31
31
|
return errorResult({
|
|
32
32
|
...context,
|
|
33
33
|
code: 'validation_failed',
|
|
34
34
|
message,
|
|
35
|
-
...(env !== undefined ? { env } : {}),
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
export function forbiddenEnvironment(context, env) {
|
|
39
|
-
return errorResult({
|
|
40
|
-
...context,
|
|
41
|
-
code: 'forbidden_scope',
|
|
42
|
-
message: `Environment "${env}" is outside this connection's selected scope.`,
|
|
43
|
-
env,
|
|
44
|
-
nextActions: [
|
|
45
|
-
{
|
|
46
|
-
kind: 'read_resource',
|
|
47
|
-
label: 'Review the environments selected for this connection',
|
|
48
|
-
resource: 'noodle://developer/capabilities/v1',
|
|
49
|
-
},
|
|
50
|
-
],
|
|
51
35
|
});
|
|
52
36
|
}
|
|
53
|
-
export function portError(context, error, env) {
|
|
37
|
+
export function portError(context, error, org, env) {
|
|
54
38
|
if (error instanceof DeveloperControlPlaneError) {
|
|
55
39
|
return errorResult({
|
|
56
40
|
...context,
|
|
57
41
|
code: error.code,
|
|
58
42
|
message: error.message,
|
|
59
43
|
retryable: error.code === 'dependency_unavailable' || error.code === 'rate_limited',
|
|
44
|
+
...(org !== undefined ? { org } : {}),
|
|
60
45
|
...(env !== undefined ? { env } : {}),
|
|
61
46
|
});
|
|
62
47
|
}
|
|
@@ -65,13 +50,14 @@ export function portError(context, error, env) {
|
|
|
65
50
|
code: 'internal_error',
|
|
66
51
|
message: 'Noodle Cloud could not complete this operation.',
|
|
67
52
|
retryable: true,
|
|
53
|
+
...(org !== undefined ? { org } : {}),
|
|
68
54
|
...(env !== undefined ? { env } : {}),
|
|
69
55
|
});
|
|
70
56
|
}
|
|
71
57
|
function resultMeta(options) {
|
|
72
58
|
return {
|
|
73
59
|
capabilityVersion: DEVELOPER_MCP_CAPABILITY_VERSION,
|
|
74
|
-
org: options.
|
|
60
|
+
...(options.org !== undefined ? { org: options.org } : {}),
|
|
75
61
|
...(options.env !== undefined ? { env: options.env } : {}),
|
|
76
62
|
observedAt: options.observedAt(),
|
|
77
63
|
nextActions: [...(options.nextActions ?? [])],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,gCAAgC,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,0BAA0B,EAAE,MAAM,WAAW,CAAC;AAcvD,MAAM,UAAU,aAAa,CAC3B,
|
|
1
|
+
{"version":3,"file":"results.js","sourceRoot":"","sources":["../src/results.ts"],"names":[],"mappings":"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"}
|
|
@@ -29,10 +29,10 @@ export function createDeveloperMcpServer(options) {
|
|
|
29
29
|
observedAt: options.observedAt ?? (() => new Date().toISOString()),
|
|
30
30
|
};
|
|
31
31
|
const widgetsEnabled = options.enableWidgets !== false;
|
|
32
|
-
server.registerTool('get_context', toolConfig('Get selected Noodle Cloud context', 'Return the
|
|
33
|
-
server.registerTool('list_apps', toolConfig('List Noodle Cloud apps', 'List apps
|
|
32
|
+
server.registerTool('get_context', toolConfig('Get selected Noodle Cloud context', 'Return the signed-in user’s current organizations, roles, and effective capabilities.', getContextInputSchema, developerContextViewSchema), async () => asCallToolResult(await getContext(context), 'get_context', options.onToolResult));
|
|
33
|
+
server.registerTool('list_apps', toolConfig('List Noodle Cloud apps', 'List apps in one explicit organization the signed-in user can currently access.', listAppsInputSchema, listAppsViewSchema), async (input) => asCallToolResult(await listApps(context, input), 'list_apps', options.onToolResult));
|
|
34
34
|
server.registerTool('inspect_app', toolConfig('Inspect a Noodle Cloud app', 'Inspect one app, optionally narrowed to a selected environment.', inspectAppInputSchema, appInspectionViewSchema, READ_ONLY_ANNOTATIONS, developerToolWidgetMeta('inspect_app', widgetsEnabled)), async (input) => asCallToolResult(await inspectApp(context, input), 'inspect_app', options.onToolResult));
|
|
35
|
-
server.registerTool('inspect_deployment', toolConfig('Inspect a Noodle Cloud deployment', 'Inspect one deployment ID within
|
|
35
|
+
server.registerTool('inspect_deployment', toolConfig('Inspect a Noodle Cloud deployment', 'Inspect one deployment ID within an explicit organization.', inspectDeploymentInputSchema, deploymentInspectionViewSchema, READ_ONLY_ANNOTATIONS, developerToolWidgetMeta('inspect_deployment', widgetsEnabled)), async (input) => asCallToolResult(await inspectDeployment(context, input), 'inspect_deployment', options.onToolResult));
|
|
36
36
|
server.registerTool('get_logs', toolConfig('Get bounded application logs', 'Read redacted, bounded application log events for one selected app environment.', getLogsInputSchema, logsViewSchema, READ_ONLY_ANNOTATIONS, developerToolWidgetMeta('get_logs', widgetsEnabled)), async (input) => asCallToolResult(await getLogs(context, input), 'get_logs', options.onToolResult));
|
|
37
37
|
server.registerTool('get_metrics', toolConfig('Get bounded MCP request metrics', 'Aggregate a bounded request-event window for one selected app environment.', getMetricsInputSchema, metricsViewSchema, READ_ONLY_ANNOTATIONS, developerToolWidgetMeta('get_metrics', widgetsEnabled)), async (input) => asCallToolResult(await getMetrics(context, input), 'get_metrics', options.onToolResult));
|
|
38
38
|
server.registerTool('list_events', toolConfig('List bounded MCP request events', 'List redacted request events for one selected app environment.', listEventsInputSchema, eventsViewSchema), async (input) => asCallToolResult(await listEvents(context, input), 'list_events', options.onToolResult));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,SAAS,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AAGrE,OAAO,EACL,uBAAuB,EACvB,gCAAgC,EAEhC,8BAA8B,EAC9B,0BAA0B,EAC1B,qBAAqB,EACrB,sBAAsB,EACtB,gBAAgB,EAChB,qBAAqB,EACrB,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EACrB,qBAAqB,EACrB,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,EAClB,qBAAqB,EACrB,cAAc,EACd,iBAAiB,EACjB,6BAA6B,EAC7B,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,OAAO,EAAE,wBAAwB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,0BAA0B,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EACL,WAAW,EACX,UAAU,EACV,OAAO,EACP,UAAU,EACV,UAAU,EACV,UAAU,EACV,iBAAiB,EACjB,QAAQ,EACR,UAAU,EACV,kBAAkB,GACnB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAkB5D,MAAM,qBAAqB,GAAG;IAC5B,YAAY,EAAE,IAAI;IAClB,eAAe,EAAE,KAAK;IACtB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACZ,CAAC;AAEX,MAAM,oBAAoB,GAAG;IAC3B,YAAY,EAAE,KAAK;IACnB,eAAe,EAAE,IAAI;IACrB,cAAc,EAAE,IAAI;IACpB,aAAa,EAAE,KAAK;CACZ,CAAC;AAEX,MAAM,UAAU,wBAAwB,CAAC,OAAwC;IAC/E,MAAM,MAAM,GAAG,IAAI,SAAS,CAC1B,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,gCAAgC,EAAE,EACvE;QACE,yBAAyB,EAAE,CAAC,GAAG,4BAA4B,CAAC;QAC5D,YAAY,EACV,8GAA8G;KACjH,CACF,CAAC;IACF,MAAM,OAAO,GAAG;QACd,GAAG,EAAE,OAAO,CAAC,OAAO;QACpB,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;KACnE,CAAC;IACF,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,KAAK,KAAK,CAAC;IAEvD,MAAM,CAAC,YAAY,CACjB,aAAa,EACb,UAAU,CACR,mCAAmC,EACnC,uFAAuF,EACvF,qBAAqB,EACrB,0BAA0B,CAC3B,EACD,KAAK,IAAI,EAAE,CAAC,gBAAgB,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,OAAO,CAAC,YAAY,CAAC,CAC7F,CAAC;IACF,MAAM,CAAC,YAAY,CACjB,WAAW,EACX,UAAU,CACR,wBAAwB,EACxB,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/tools/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EAEpB,KAAK,aAAa,EAInB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"apps.d.ts","sourceRoot":"","sources":["../../src/tools/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EAEpB,KAAK,aAAa,EAInB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAa,KAAK,aAAa,EAAkC,MAAM,eAAe,CAAC;AAE9F,UAAU,eAAgB,SAAQ,aAAa;IAC7C,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;CAC9C;AAED,wBAAsB,QAAQ,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;IAoBtE;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;IAoBxE;AAoBD,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC"}
|
|
@@ -1,22 +1,16 @@
|
|
|
1
1
|
import { appInspectionViewSchema, inspectAppInputSchema, listAppsInputSchema, listAppsViewSchema, } from '../contracts.js';
|
|
2
|
-
import {
|
|
2
|
+
import { portError, successResult, validationError } from '../results.js';
|
|
3
3
|
export async function listApps(context, input) {
|
|
4
4
|
const parsed = listAppsInputSchema.safeParse(input);
|
|
5
5
|
if (!parsed.success)
|
|
6
6
|
return validationError(context, 'Invalid list_apps input.');
|
|
7
7
|
try {
|
|
8
8
|
const data = listAppsViewSchema.parse(await context.controlPlane.listApps(context.ctx, parsed.data));
|
|
9
|
-
if (!appsStayInScope(context, data)) {
|
|
10
|
-
return errorResult({
|
|
11
|
-
...context,
|
|
12
|
-
code: 'internal_error',
|
|
13
|
-
message: 'Noodle Cloud returned an out-of-scope app response.',
|
|
14
|
-
});
|
|
15
|
-
}
|
|
16
9
|
return successResult({
|
|
17
10
|
...context,
|
|
18
11
|
data,
|
|
19
|
-
|
|
12
|
+
org: parsed.data.org,
|
|
13
|
+
summary: `${data.apps.length} app${data.apps.length === 1 ? '' : 's'} in ${parsed.data.org}.`,
|
|
20
14
|
nextActions: [
|
|
21
15
|
{ kind: 'call_tool', label: 'Inspect an app', tool: 'inspect_app' },
|
|
22
16
|
{ kind: 'call_tool', label: 'Diagnose an app environment', tool: 'diagnose_app' },
|
|
@@ -24,42 +18,29 @@ export async function listApps(context, input) {
|
|
|
24
18
|
});
|
|
25
19
|
}
|
|
26
20
|
catch (error) {
|
|
27
|
-
return portError(context, error);
|
|
21
|
+
return portError(context, error, parsed.data.org);
|
|
28
22
|
}
|
|
29
23
|
}
|
|
30
24
|
export async function inspectApp(context, input) {
|
|
31
25
|
const parsed = inspectAppInputSchema.safeParse(input);
|
|
32
26
|
if (!parsed.success)
|
|
33
27
|
return validationError(context, 'Invalid inspect_app input.');
|
|
34
|
-
if (parsed.data.env !== undefined && !context.ctx.environments.includes(parsed.data.env)) {
|
|
35
|
-
return forbiddenEnvironment(context, parsed.data.env);
|
|
36
|
-
}
|
|
37
28
|
try {
|
|
38
29
|
const data = appInspectionViewSchema.parse(await context.controlPlane.inspectApp(context.ctx, parsed.data));
|
|
39
|
-
if (!data.environments.every((env) => context.ctx.environments.includes(env))) {
|
|
40
|
-
return errorResult({
|
|
41
|
-
...context,
|
|
42
|
-
code: 'internal_error',
|
|
43
|
-
message: 'Noodle Cloud returned an out-of-scope app response.',
|
|
44
|
-
...(parsed.data.env !== undefined ? { env: parsed.data.env } : {}),
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
30
|
const env = parsed.data.env ?? data.selectedEnvironment;
|
|
48
31
|
return successResult({
|
|
49
32
|
...context,
|
|
50
33
|
data,
|
|
34
|
+
org: parsed.data.org,
|
|
51
35
|
summary: `${data.app} has ${data.environments.length} visible environment${data.environments.length === 1 ? '' : 's'}.`,
|
|
52
36
|
...(env !== undefined ? { env } : {}),
|
|
53
37
|
nextActions: appNextActions(parsed.data, data),
|
|
54
38
|
});
|
|
55
39
|
}
|
|
56
40
|
catch (error) {
|
|
57
|
-
return portError(context, error, parsed.data.env);
|
|
41
|
+
return portError(context, error, parsed.data.org, parsed.data.env);
|
|
58
42
|
}
|
|
59
43
|
}
|
|
60
|
-
function appsStayInScope(context, data) {
|
|
61
|
-
return data.apps.every((app) => app.environments.every((environment) => context.ctx.environments.includes(environment)));
|
|
62
|
-
}
|
|
63
44
|
function appNextActions(input, data) {
|
|
64
45
|
const actions = [];
|
|
65
46
|
if (data.latest !== undefined) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/tools/apps.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,uBAAuB,EAEvB,qBAAqB,EAGrB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,
|
|
1
|
+
{"version":3,"file":"apps.js","sourceRoot":"","sources":["../../src/tools/apps.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,17 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import { type
|
|
3
|
-
|
|
1
|
+
import type { DeveloperControlPlane } from '../port.js';
|
|
2
|
+
import { type ResultContext } from '../results.js';
|
|
3
|
+
interface ContextToolContext extends ResultContext {
|
|
4
|
+
readonly controlPlane: DeveloperControlPlane;
|
|
5
|
+
}
|
|
6
|
+
export declare function getContext(context: ContextToolContext): Promise<import("../results.js").DeveloperToolResult<{
|
|
7
|
+
accessModel: "live_user";
|
|
8
|
+
capabilities: ("cloud:read" | "deployments:write" | "deployments:rollback" | "config:write")[];
|
|
9
|
+
organizations: {
|
|
10
|
+
org: string;
|
|
11
|
+
role: "owner" | "developer";
|
|
12
|
+
capabilities: ("cloud:read" | "deployments:write" | "deployments:rollback" | "config:write")[];
|
|
13
|
+
displayName?: string | undefined;
|
|
14
|
+
}[];
|
|
15
|
+
}>>;
|
|
16
|
+
export {};
|
|
4
17
|
//# sourceMappingURL=context.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAa,KAAK,aAAa,EAAiB,MAAM,eAAe,CAAC;AAE7E,UAAU,kBAAmB,SAAQ,aAAa;IAChD,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;CAC9C;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,kBAAkB;;;;;;;;;IAqB3D"}
|
|
@@ -1,21 +1,24 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
data
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
}
|
|
1
|
+
import { developerContextViewSchema } from '../contracts.js';
|
|
2
|
+
import { portError, successResult } from '../results.js';
|
|
3
|
+
export async function getContext(context) {
|
|
4
|
+
try {
|
|
5
|
+
const data = developerContextViewSchema.parse(await context.controlPlane.getContext(context.ctx));
|
|
6
|
+
return successResult({
|
|
7
|
+
...context,
|
|
8
|
+
data,
|
|
9
|
+
summary: `${data.organizations.length} organization${data.organizations.length === 1 ? '' : 's'} available through live user access.`,
|
|
10
|
+
nextActions: [
|
|
11
|
+
{ kind: 'call_tool', label: 'List apps in an organization', tool: 'list_apps' },
|
|
12
|
+
{
|
|
13
|
+
kind: 'read_resource',
|
|
14
|
+
label: 'Review the Noodle developer workflow',
|
|
15
|
+
resource: 'noodle://developer/workflow/v2',
|
|
16
|
+
},
|
|
17
|
+
],
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
return portError(context, error);
|
|
22
|
+
}
|
|
20
23
|
}
|
|
21
24
|
//# sourceMappingURL=context.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/tools/context.ts"],"names":[],"mappings":"AAAA,OAAO,EAA6B,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAExF,OAAO,EAAE,SAAS,EAAsB,aAAa,EAAE,MAAM,eAAe,CAAC;AAM7E,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAA2B;IAC1D,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,0BAA0B,CAAC,KAAK,CAC3C,MAAM,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CACnD,CAAC;QACF,OAAO,aAAa,CAAC;YACnB,GAAG,OAAO;YACV,IAAI;YACJ,OAAO,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,gBAAgB,IAAI,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,sCAAsC;YACrI,WAAW,EAAE;gBACX,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,8BAA8B,EAAE,IAAI,EAAE,WAAW,EAAE;gBAC/E;oBACE,IAAI,EAAE,eAAe;oBACrB,KAAK,EAAE,sCAAsC;oBAC7C,QAAQ,EAAE,gCAAgC;iBAC3C;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,SAAS,CAAuB,OAAO,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployments.d.ts","sourceRoot":"","sources":["../../src/tools/deployments.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"deployments.d.ts","sourceRoot":"","sources":["../../src/tools/deployments.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAa,KAAK,aAAa,EAAkC,MAAM,eAAe,CAAC;AAE9F,UAAU,qBAAsB,SAAQ,aAAa;IACnD,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;CAC9C;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA4BrF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { deploymentInspectionViewSchema, inspectDeploymentInputSchema, } from '../contracts.js';
|
|
2
|
-
import {
|
|
2
|
+
import { portError, successResult, validationError } from '../results.js';
|
|
3
3
|
export async function inspectDeployment(context, input) {
|
|
4
4
|
const parsed = inspectDeploymentInputSchema.safeParse(input);
|
|
5
5
|
if (!parsed.success) {
|
|
@@ -7,16 +7,10 @@ export async function inspectDeployment(context, input) {
|
|
|
7
7
|
}
|
|
8
8
|
try {
|
|
9
9
|
const data = deploymentInspectionViewSchema.parse(await context.controlPlane.inspectDeployment(context.ctx, parsed.data));
|
|
10
|
-
if (!context.ctx.environments.includes(data.target.env)) {
|
|
11
|
-
return errorResult({
|
|
12
|
-
...context,
|
|
13
|
-
code: 'internal_error',
|
|
14
|
-
message: 'Noodle Cloud returned an out-of-scope deployment response.',
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
10
|
return successResult({
|
|
18
11
|
...context,
|
|
19
12
|
data,
|
|
13
|
+
org: parsed.data.org,
|
|
20
14
|
env: data.target.env,
|
|
21
15
|
summary: `${data.deployment.serverName} is ${data.health.state} in ${data.target.env}.`,
|
|
22
16
|
nextActions: [
|
|
@@ -31,7 +25,7 @@ export async function inspectDeployment(context, input) {
|
|
|
31
25
|
});
|
|
32
26
|
}
|
|
33
27
|
catch (error) {
|
|
34
|
-
return portError(context, error);
|
|
28
|
+
return portError(context, error, parsed.data.org);
|
|
35
29
|
}
|
|
36
30
|
}
|
|
37
31
|
//# sourceMappingURL=deployments.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deployments.js","sourceRoot":"","sources":["../../src/tools/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,
|
|
1
|
+
{"version":3,"file":"deployments.js","sourceRoot":"","sources":["../../src/tools/deployments.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,8BAA8B,EAC9B,4BAA4B,GAC7B,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,SAAS,EAAsB,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAM9F,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAA8B,EAAE,KAAc;IACpF,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC7D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,eAAe,CAA2B,OAAO,EAAE,mCAAmC,CAAC,CAAC;IACjG,CAAC;IACD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,8BAA8B,CAAC,KAAK,CAC/C,MAAM,OAAO,CAAC,YAAY,CAAC,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CACvE,CAAC;QACF,OAAO,aAAa,CAAC;YACnB,GAAG,OAAO;YACV,IAAI;YACJ,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;YACpB,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG;YACpB,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG;YACvF,WAAW,EAAE;gBACX,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,6BAA6B,EAAE,IAAI,EAAE,UAAU,EAAE;gBAC7E,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,wBAAwB,EAAE,IAAI,EAAE,aAAa,EAAE;gBAC3E;oBACE,IAAI,EAAE,SAAS;oBACf,KAAK,EAAE,gDAAgD;oBACvD,OAAO,EAAE,iBAAiB;iBAC3B;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,SAAS,CAA2B,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.d.ts","sourceRoot":"","sources":["../../src/tools/diagnose.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"diagnose.d.ts","sourceRoot":"","sources":["../../src/tools/diagnose.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAa,KAAK,aAAa,EAAkC,MAAM,eAAe,CAAC;AAE9F,UAAU,mBAAoB,SAAQ,aAAa;IACjD,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;CAC9C;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;IAsC7E"}
|
|
@@ -1,47 +1,45 @@
|
|
|
1
1
|
import { appInspectionViewSchema, diagnoseAppInputSchema, } from '../contracts.js';
|
|
2
2
|
import { diagnoseEvidence, diagnosisViewSchema, } from '../diagnosis.js';
|
|
3
|
-
import {
|
|
3
|
+
import { portError, successResult, validationError } from '../results.js';
|
|
4
4
|
export async function diagnoseApp(context, input) {
|
|
5
5
|
const parsed = diagnoseAppInputSchema.safeParse(input);
|
|
6
6
|
if (!parsed.success)
|
|
7
7
|
return validationError(context, 'Invalid diagnose_app input.');
|
|
8
|
-
const { app, env } = parsed.data;
|
|
9
|
-
if (!context.ctx.environments.includes(env)) {
|
|
10
|
-
return forbiddenEnvironment(context, env);
|
|
11
|
-
}
|
|
8
|
+
const { org, app, env } = parsed.data;
|
|
12
9
|
let appView;
|
|
13
10
|
try {
|
|
14
|
-
appView = appInspectionViewSchema.parse(await context.controlPlane.inspectApp(context.ctx, { app, env }));
|
|
11
|
+
appView = appInspectionViewSchema.parse(await context.controlPlane.inspectApp(context.ctx, { org, app, env }));
|
|
15
12
|
}
|
|
16
13
|
catch (error) {
|
|
17
|
-
return portError(context, error, env);
|
|
14
|
+
return portError(context, error, org, env);
|
|
18
15
|
}
|
|
19
16
|
const evidence = { app: { active: appView.active } };
|
|
20
17
|
const sources = ['app'];
|
|
21
18
|
const unavailable = [];
|
|
22
19
|
if (appView.latest === undefined || appView.latest.environment !== env) {
|
|
23
|
-
return diagnosisResult(context, app, env, evidence, sources, unavailable);
|
|
20
|
+
return diagnosisResult(context, org, app, env, evidence, sources, unavailable);
|
|
24
21
|
}
|
|
25
22
|
try {
|
|
26
23
|
const deployment = await context.controlPlane.inspectDeployment(context.ctx, {
|
|
24
|
+
org,
|
|
27
25
|
deploymentId: appView.latest.deploymentId,
|
|
28
26
|
});
|
|
29
27
|
evidenceWith(evidence, 'deployment', deployment);
|
|
30
28
|
sources.push('deployment');
|
|
31
29
|
if (deployment.health.state === 'ready') {
|
|
32
|
-
await collectMetrics(context, app, env, evidence, sources, unavailable);
|
|
30
|
+
await collectMetrics(context, org, app, env, evidence, sources, unavailable);
|
|
33
31
|
}
|
|
34
32
|
else {
|
|
35
|
-
await collectLogs(context, app, env, evidence, sources, unavailable);
|
|
33
|
+
await collectLogs(context, org, app, env, evidence, sources, unavailable);
|
|
36
34
|
}
|
|
37
35
|
}
|
|
38
36
|
catch {
|
|
39
37
|
unavailable.push('deployment');
|
|
40
38
|
}
|
|
41
|
-
return diagnosisResult(context, app, env, evidence, sources, unavailable);
|
|
39
|
+
return diagnosisResult(context, org, app, env, evidence, sources, unavailable);
|
|
42
40
|
}
|
|
43
|
-
async function collectMetrics(context, app, env, evidence, sources, unavailable) {
|
|
44
|
-
const input = { app, env, window: '24h' };
|
|
41
|
+
async function collectMetrics(context, org, app, env, evidence, sources, unavailable) {
|
|
42
|
+
const input = { org, app, env, window: '24h' };
|
|
45
43
|
try {
|
|
46
44
|
evidenceWith(evidence, 'metrics', await context.controlPlane.getMetrics(context.ctx, input));
|
|
47
45
|
sources.push('metrics');
|
|
@@ -50,8 +48,8 @@ async function collectMetrics(context, app, env, evidence, sources, unavailable)
|
|
|
50
48
|
unavailable.push('metrics');
|
|
51
49
|
}
|
|
52
50
|
}
|
|
53
|
-
async function collectLogs(context, app, env, evidence, sources, unavailable) {
|
|
54
|
-
const input = { app, env, limit: 50, level: 'error' };
|
|
51
|
+
async function collectLogs(context, org, app, env, evidence, sources, unavailable) {
|
|
52
|
+
const input = { org, app, env, limit: 50, level: 'error' };
|
|
55
53
|
try {
|
|
56
54
|
evidenceWith(evidence, 'logs', await context.controlPlane.getLogs(context.ctx, input));
|
|
57
55
|
sources.push('logs');
|
|
@@ -63,7 +61,7 @@ async function collectLogs(context, app, env, evidence, sources, unavailable) {
|
|
|
63
61
|
function evidenceWith(evidence, key, value) {
|
|
64
62
|
evidence[key] = value;
|
|
65
63
|
}
|
|
66
|
-
function diagnosisResult(context, app, env, evidence, sources, unavailable) {
|
|
64
|
+
function diagnosisResult(context, org, app, env, evidence, sources, unavailable) {
|
|
67
65
|
const data = diagnosisViewSchema.parse({
|
|
68
66
|
app,
|
|
69
67
|
env,
|
|
@@ -73,6 +71,7 @@ function diagnosisResult(context, app, env, evidence, sources, unavailable) {
|
|
|
73
71
|
return successResult({
|
|
74
72
|
...context,
|
|
75
73
|
data,
|
|
74
|
+
org,
|
|
76
75
|
env,
|
|
77
76
|
summary: data.findings.length === 0
|
|
78
77
|
? `${app}/${env} is healthy in the observed evidence.`
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagnose.js","sourceRoot":"","sources":["../../src/tools/diagnose.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,uBAAuB,EACvB,sBAAsB,GAGvB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAIL,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,
|
|
1
|
+
{"version":3,"file":"diagnose.js","sourceRoot":"","sources":["../../src/tools/diagnose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/tools/operations.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,
|
|
1
|
+
{"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/tools/operations.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,EAAa,KAAK,aAAa,EAAkC,MAAM,eAAe,CAAC;AAE9F,UAAU,qBAAsB,SAAQ,aAAa;IACnD,QAAQ,CAAC,YAAY,EAAE,qBAAqB,CAAC;CAC9C;AAED,wBAAsB,OAAO,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;IAmB3E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqB9E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqB9E;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,qBAAqB,EAAE,KAAK,EAAE,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAqB9E"}
|
|
@@ -1,17 +1,15 @@
|
|
|
1
1
|
import { eventsViewSchema, getLogsInputSchema, getMetricsInputSchema, getSessionInputSchema, listEventsInputSchema, logsViewSchema, metricsViewSchema, sessionViewSchema, } from '../contracts.js';
|
|
2
|
-
import {
|
|
2
|
+
import { portError, successResult, validationError } from '../results.js';
|
|
3
3
|
export async function getLogs(context, input) {
|
|
4
4
|
const parsed = getLogsInputSchema.safeParse(input);
|
|
5
5
|
if (!parsed.success)
|
|
6
6
|
return validationError(context, 'Invalid get_logs input.');
|
|
7
|
-
if (!context.ctx.environments.includes(parsed.data.env)) {
|
|
8
|
-
return forbiddenEnvironment(context, parsed.data.env);
|
|
9
|
-
}
|
|
10
7
|
try {
|
|
11
8
|
const data = logsViewSchema.parse(await context.controlPlane.getLogs(context.ctx, parsed.data));
|
|
12
9
|
return successResult({
|
|
13
10
|
...context,
|
|
14
11
|
data,
|
|
12
|
+
org: parsed.data.org,
|
|
15
13
|
env: parsed.data.env,
|
|
16
14
|
summary: `${data.events.length} recent log event${data.events.length === 1 ? '' : 's'} for ${parsed.data.app}/${parsed.data.env}.`,
|
|
17
15
|
nextActions: [
|
|
@@ -21,21 +19,19 @@ export async function getLogs(context, input) {
|
|
|
21
19
|
});
|
|
22
20
|
}
|
|
23
21
|
catch (error) {
|
|
24
|
-
return portError(context, error, parsed.data.env);
|
|
22
|
+
return portError(context, error, parsed.data.org, parsed.data.env);
|
|
25
23
|
}
|
|
26
24
|
}
|
|
27
25
|
export async function getMetrics(context, input) {
|
|
28
26
|
const parsed = getMetricsInputSchema.safeParse(input);
|
|
29
27
|
if (!parsed.success)
|
|
30
28
|
return validationError(context, 'Invalid get_metrics input.');
|
|
31
|
-
if (!context.ctx.environments.includes(parsed.data.env)) {
|
|
32
|
-
return forbiddenEnvironment(context, parsed.data.env);
|
|
33
|
-
}
|
|
34
29
|
try {
|
|
35
30
|
const data = metricsViewSchema.parse(await context.controlPlane.getMetrics(context.ctx, parsed.data));
|
|
36
31
|
return successResult({
|
|
37
32
|
...context,
|
|
38
33
|
data,
|
|
34
|
+
org: parsed.data.org,
|
|
39
35
|
env: parsed.data.env,
|
|
40
36
|
summary: `${data.metrics.totals.requests} requests observed${data.truncated ? ' (partial window)' : ''}.`,
|
|
41
37
|
nextActions: [
|
|
@@ -45,21 +41,19 @@ export async function getMetrics(context, input) {
|
|
|
45
41
|
});
|
|
46
42
|
}
|
|
47
43
|
catch (error) {
|
|
48
|
-
return portError(context, error, parsed.data.env);
|
|
44
|
+
return portError(context, error, parsed.data.org, parsed.data.env);
|
|
49
45
|
}
|
|
50
46
|
}
|
|
51
47
|
export async function listEvents(context, input) {
|
|
52
48
|
const parsed = listEventsInputSchema.safeParse(input);
|
|
53
49
|
if (!parsed.success)
|
|
54
50
|
return validationError(context, 'Invalid list_events input.');
|
|
55
|
-
if (!context.ctx.environments.includes(parsed.data.env)) {
|
|
56
|
-
return forbiddenEnvironment(context, parsed.data.env);
|
|
57
|
-
}
|
|
58
51
|
try {
|
|
59
52
|
const data = eventsViewSchema.parse(await context.controlPlane.listEvents(context.ctx, parsed.data));
|
|
60
53
|
return successResult({
|
|
61
54
|
...context,
|
|
62
55
|
data,
|
|
56
|
+
org: parsed.data.org,
|
|
63
57
|
env: parsed.data.env,
|
|
64
58
|
summary: `${data.events.length} request event${data.events.length === 1 ? '' : 's'} matched.`,
|
|
65
59
|
nextActions: [
|
|
@@ -69,21 +63,19 @@ export async function listEvents(context, input) {
|
|
|
69
63
|
});
|
|
70
64
|
}
|
|
71
65
|
catch (error) {
|
|
72
|
-
return portError(context, error, parsed.data.env);
|
|
66
|
+
return portError(context, error, parsed.data.org, parsed.data.env);
|
|
73
67
|
}
|
|
74
68
|
}
|
|
75
69
|
export async function getSession(context, input) {
|
|
76
70
|
const parsed = getSessionInputSchema.safeParse(input);
|
|
77
71
|
if (!parsed.success)
|
|
78
72
|
return validationError(context, 'Invalid get_session input.');
|
|
79
|
-
if (!context.ctx.environments.includes(parsed.data.env)) {
|
|
80
|
-
return forbiddenEnvironment(context, parsed.data.env);
|
|
81
|
-
}
|
|
82
73
|
try {
|
|
83
74
|
const data = sessionViewSchema.parse(await context.controlPlane.getSession(context.ctx, parsed.data));
|
|
84
75
|
return successResult({
|
|
85
76
|
...context,
|
|
86
77
|
data,
|
|
78
|
+
org: parsed.data.org,
|
|
87
79
|
env: parsed.data.env,
|
|
88
80
|
summary: `${data.events.length} chronological event${data.events.length === 1 ? '' : 's'} in session ${data.sessionId}.`,
|
|
89
81
|
nextActions: [
|
|
@@ -93,7 +85,7 @@ export async function getSession(context, input) {
|
|
|
93
85
|
});
|
|
94
86
|
}
|
|
95
87
|
catch (error) {
|
|
96
|
-
return portError(context, error, parsed.data.env);
|
|
88
|
+
return portError(context, error, parsed.data.org, parsed.data.env);
|
|
97
89
|
}
|
|
98
90
|
}
|
|
99
91
|
//# sourceMappingURL=operations.js.map
|