@sean.holung/minicode 0.3.8 → 0.3.10
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 +9 -0
- package/dist/scripts/run-ts-bench-smoke.js +268 -0
- package/dist/scripts/ts-bench-adapter.js +251 -0
- package/dist/src/agent/config.js +2 -2
- package/dist/src/auto-allow.js +28 -0
- package/dist/src/benchmark/config.js +197 -0
- package/dist/src/benchmark/index.js +2 -0
- package/dist/src/benchmark/workspace-changes.js +125 -0
- package/dist/src/cli/args.js +13 -0
- package/dist/src/cli/benchmark-run.js +432 -0
- package/dist/src/cli/permissions-slash-command.js +50 -0
- package/dist/src/index.js +9 -2
- package/dist/src/indexer/plugin-loader.js +19 -1
- package/dist/src/indexer/project-index.js +35 -21
- package/dist/src/serve/agent-bridge.js +132 -2
- package/dist/src/serve/openai-compat.js +2 -2
- package/dist/src/serve/server.js +14 -0
- package/dist/src/serve/websocket.js +11 -0
- package/dist/src/session/session-store.js +11 -1
- package/dist/src/tools/registry.js +10 -2
- package/dist/src/ui/app.js +8 -2
- package/dist/src/ui/cli-ink.js +13 -2
- package/dist/src/ui/components/permission-prompt.js +53 -0
- package/dist/src/ui/permission-gate.js +42 -0
- package/dist/src/ui/state/ui-store.js +13 -0
- package/dist/src/web/app.js +217 -28
- package/dist/src/web/index.html +63 -2
- package/dist/src/web/style.css +986 -1699
- package/dist/tests/agent.test.js +110 -0
- package/dist/tests/benchmark-config.test.js +80 -0
- package/dist/tests/benchmark-run.test.js +180 -0
- package/dist/tests/cli-args.test.js +22 -0
- package/dist/tests/cli-oneshot.integration.test.js +5 -0
- package/dist/tests/config.test.js +21 -0
- package/dist/tests/context-indicator.test.js +9 -0
- package/dist/tests/file-tools.test.js +36 -0
- package/dist/tests/harbor-adapter.test.js +57 -0
- package/dist/tests/indexer.test.js +1 -1
- package/dist/tests/permission-gate-cli.test.js +126 -0
- package/dist/tests/permission-gate.test.js +196 -0
- package/dist/tests/python-plugin.test.js +357 -0
- package/dist/tests/serve.integration.test.js +31 -0
- package/dist/tests/session-store.test.js +18 -1
- package/dist/tests/session-ui.test.js +6 -0
- package/dist/tests/system-prompt.test.js +44 -9
- package/dist/tests/ts-bench-adapter.test.js +186 -0
- package/dist/tests/workspace-changes.test.js +82 -0
- package/node_modules/@minicode/agent-sdk/README.md +286 -90
- package/node_modules/@minicode/agent-sdk/dist/src/agent/agent.d.ts +40 -4
- package/node_modules/@minicode/agent-sdk/dist/src/agent/agent.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/agent/agent.js +134 -27
- package/node_modules/@minicode/agent-sdk/dist/src/agent/agent.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/agent/structured-output.d.ts +42 -0
- package/node_modules/@minicode/agent-sdk/dist/src/agent/structured-output.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/src/agent/structured-output.js +97 -0
- package/node_modules/@minicode/agent-sdk/dist/src/agent/structured-output.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/src/agent/types.d.ts +97 -2
- package/node_modules/@minicode/agent-sdk/dist/src/agent/types.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/agent/types.js +15 -1
- package/node_modules/@minicode/agent-sdk/dist/src/agent/types.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/index.d.ts +10 -8
- package/node_modules/@minicode/agent-sdk/dist/src/index.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/index.js +10 -6
- package/node_modules/@minicode/agent-sdk/dist/src/index.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/indexer/types.d.ts +8 -3
- package/node_modules/@minicode/agent-sdk/dist/src/indexer/types.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/mcp/client-registry.d.ts +109 -0
- package/node_modules/@minicode/agent-sdk/dist/src/mcp/client-registry.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/src/mcp/client-registry.js +237 -0
- package/node_modules/@minicode/agent-sdk/dist/src/mcp/client-registry.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/src/model/client.d.ts +5 -1
- package/node_modules/@minicode/agent-sdk/dist/src/model/client.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/model/client.js +100 -8
- package/node_modules/@minicode/agent-sdk/dist/src/model/client.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/prompt/system-prompt.d.ts +31 -1
- package/node_modules/@minicode/agent-sdk/dist/src/prompt/system-prompt.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/prompt/system-prompt.js +8 -7
- package/node_modules/@minicode/agent-sdk/dist/src/prompt/system-prompt.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/session/session.d.ts +8 -0
- package/node_modules/@minicode/agent-sdk/dist/src/session/session.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/session/session.js +2 -0
- package/node_modules/@minicode/agent-sdk/dist/src/session/session.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/edit-file.d.ts +10 -3
- package/node_modules/@minicode/agent-sdk/dist/src/tools/edit-file.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/edit-file.js +3 -3
- package/node_modules/@minicode/agent-sdk/dist/src/tools/edit-file.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/list-files.d.ts +9 -2
- package/node_modules/@minicode/agent-sdk/dist/src/tools/list-files.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/list-files.js +2 -2
- package/node_modules/@minicode/agent-sdk/dist/src/tools/list-files.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/read-file.d.ts +12 -2
- package/node_modules/@minicode/agent-sdk/dist/src/tools/read-file.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/read-file.js +3 -3
- package/node_modules/@minicode/agent-sdk/dist/src/tools/read-file.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/run-command.d.ts +12 -2
- package/node_modules/@minicode/agent-sdk/dist/src/tools/run-command.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/run-command.js +5 -5
- package/node_modules/@minicode/agent-sdk/dist/src/tools/run-command.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/search.d.ts +10 -2
- package/node_modules/@minicode/agent-sdk/dist/src/tools/search.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/search.js +5 -5
- package/node_modules/@minicode/agent-sdk/dist/src/tools/search.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/write-file.d.ts +10 -3
- package/node_modules/@minicode/agent-sdk/dist/src/tools/write-file.d.ts.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/src/tools/write-file.js +3 -3
- package/node_modules/@minicode/agent-sdk/dist/src/tools/write-file.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/tests/agent.test.js +342 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/agent.test.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.integration.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.integration.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.integration.test.js +64 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.integration.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.test.js +350 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/mcp-client.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-anthropic-structured-output.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-anthropic-structured-output.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-anthropic-structured-output.test.js +211 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-anthropic-structured-output.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-openai.test.js +88 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-openai.test.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-structured-output.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-structured-output.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-structured-output.test.js +171 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/model-client-structured-output.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/session.test.js +34 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/session.test.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/tests/structured-output.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/structured-output.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/structured-output.test.js +212 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/structured-output.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/system-prompt.test.js +7 -7
- package/node_modules/@minicode/agent-sdk/dist/tests/system-prompt.test.js.map +1 -1
- package/node_modules/@minicode/agent-sdk/dist/tests/tool-factory-options.test.d.ts +2 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/tool-factory-options.test.d.ts.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/tool-factory-options.test.js +72 -0
- package/node_modules/@minicode/agent-sdk/dist/tests/tool-factory-options.test.js.map +1 -0
- package/node_modules/@minicode/agent-sdk/dist/tsconfig.tsbuildinfo +1 -1
- package/node_modules/@minicode/agent-sdk/package.json +5 -2
- package/node_modules/minicode-plugin-python/dist/src/index.d.ts +9 -0
- package/node_modules/minicode-plugin-python/dist/src/index.d.ts.map +1 -0
- package/node_modules/minicode-plugin-python/dist/src/index.js +679 -0
- package/node_modules/minicode-plugin-python/dist/src/index.js.map +1 -0
- package/node_modules/minicode-plugin-python/dist/tsconfig.tsbuildinfo +1 -0
- package/node_modules/minicode-plugin-python/package.json +37 -0
- package/node_modules/node-addon-api/LICENSE.md +9 -0
- package/node_modules/node-addon-api/README.md +95 -0
- package/node_modules/node-addon-api/common.gypi +21 -0
- package/node_modules/node-addon-api/except.gypi +25 -0
- package/node_modules/node-addon-api/index.js +14 -0
- package/node_modules/node-addon-api/napi-inl.deprecated.h +186 -0
- package/node_modules/node-addon-api/napi-inl.h +7165 -0
- package/node_modules/node-addon-api/napi.h +3364 -0
- package/node_modules/node-addon-api/node_addon_api.gyp +42 -0
- package/node_modules/node-addon-api/node_api.gyp +9 -0
- package/node_modules/node-addon-api/noexcept.gypi +26 -0
- package/node_modules/node-addon-api/nothing.c +0 -0
- package/node_modules/node-addon-api/package-support.json +21 -0
- package/node_modules/node-addon-api/package.json +480 -0
- package/node_modules/node-addon-api/tools/README.md +73 -0
- package/node_modules/node-addon-api/tools/check-napi.js +99 -0
- package/node_modules/node-addon-api/tools/clang-format.js +71 -0
- package/node_modules/node-addon-api/tools/conversion.js +301 -0
- package/node_modules/node-gyp-build/LICENSE +21 -0
- package/node_modules/node-gyp-build/README.md +58 -0
- package/node_modules/node-gyp-build/SECURITY.md +5 -0
- package/node_modules/node-gyp-build/bin.js +84 -0
- package/node_modules/node-gyp-build/build-test.js +19 -0
- package/node_modules/node-gyp-build/index.js +6 -0
- package/node_modules/node-gyp-build/node-gyp-build.js +207 -0
- package/node_modules/node-gyp-build/optional.js +7 -0
- package/node_modules/node-gyp-build/package.json +43 -0
- package/node_modules/tree-sitter/LICENSE +21 -0
- package/node_modules/tree-sitter/README.md +128 -0
- package/node_modules/tree-sitter/binding.gyp +80 -0
- package/node_modules/tree-sitter/index.js +916 -0
- package/node_modules/tree-sitter/package.json +76 -0
- package/node_modules/tree-sitter/src/addon_data.h +47 -0
- package/node_modules/tree-sitter/src/binding.cc +35 -0
- package/node_modules/tree-sitter/src/conversions.cc +140 -0
- package/node_modules/tree-sitter/src/conversions.h +22 -0
- package/node_modules/tree-sitter/src/language.cc +106 -0
- package/node_modules/tree-sitter/src/language.h +17 -0
- package/node_modules/tree-sitter/src/logger.cc +70 -0
- package/node_modules/tree-sitter/src/logger.h +19 -0
- package/node_modules/tree-sitter/src/lookaheaditerator.cc +122 -0
- package/node_modules/tree-sitter/src/lookaheaditerator.h +33 -0
- package/node_modules/tree-sitter/src/node.cc +1088 -0
- package/node_modules/tree-sitter/src/node.h +30 -0
- package/node_modules/tree-sitter/src/parser.cc +306 -0
- package/node_modules/tree-sitter/src/parser.h +35 -0
- package/node_modules/tree-sitter/src/query.cc +397 -0
- package/node_modules/tree-sitter/src/query.h +40 -0
- package/node_modules/tree-sitter/src/tree.cc +316 -0
- package/node_modules/tree-sitter/src/tree.h +45 -0
- package/node_modules/tree-sitter/src/tree_cursor.cc +213 -0
- package/node_modules/tree-sitter/src/tree_cursor.h +52 -0
- package/node_modules/tree-sitter/tree-sitter.d.ts +1042 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/include/tree_sitter/api.h +1478 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/alloc.c +48 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/alloc.h +41 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/array.h +291 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/atomic.h +68 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/clock.h +146 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/error_costs.h +11 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/get_changed_ranges.c +523 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/get_changed_ranges.h +36 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/host.h +21 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/language.c +293 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/language.h +293 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/length.h +52 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/lexer.c +483 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/lexer.h +54 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/lib.c +12 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/node.c +875 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/parser.c +2293 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/parser.h +286 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/point.h +48 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/portable/endian.h +239 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/query.c +4350 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/reduce_action.h +34 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/reusable_node.h +95 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/stack.c +911 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/stack.h +133 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/subtree.c +1034 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/subtree.h +399 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/tree.c +170 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/tree.h +31 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/tree_cursor.c +717 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/tree_cursor.h +48 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/ts_assert.h +11 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/ICU_SHA +1 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/LICENSE +414 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/README.md +29 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/ptypes.h +1 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/umachine.h +448 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/urename.h +1 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/utf.h +1 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/utf16.h +733 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode/utf8.h +881 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/unicode.h +75 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/wasm/stdlib-symbols.txt +24 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/wasm/stdlib.c +113 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/wasm/wasm-stdlib.h +1314 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/wasm_store.c +1935 -0
- package/node_modules/tree-sitter/vendor/tree-sitter/lib/src/wasm_store.h +31 -0
- package/node_modules/tree-sitter-python/LICENSE +21 -0
- package/node_modules/tree-sitter-python/README.md +24 -0
- package/node_modules/tree-sitter-python/binding.gyp +35 -0
- package/node_modules/tree-sitter-python/bindings/node/binding.cc +19 -0
- package/node_modules/tree-sitter-python/bindings/node/binding_test.js +9 -0
- package/node_modules/tree-sitter-python/bindings/node/index.d.ts +27 -0
- package/node_modules/tree-sitter-python/bindings/node/index.js +11 -0
- package/node_modules/tree-sitter-python/grammar.js +1225 -0
- package/node_modules/tree-sitter-python/package.json +60 -0
- package/node_modules/tree-sitter-python/prebuilds/darwin-arm64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/prebuilds/darwin-x64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/prebuilds/linux-arm64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/prebuilds/linux-x64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/prebuilds/win32-arm64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/prebuilds/win32-x64/tree-sitter-python.node +0 -0
- package/node_modules/tree-sitter-python/queries/highlights.scm +137 -0
- package/node_modules/tree-sitter-python/queries/tags.scm +14 -0
- package/node_modules/tree-sitter-python/src/grammar.json +6435 -0
- package/node_modules/tree-sitter-python/src/node-types.json +3746 -0
- package/node_modules/tree-sitter-python/src/parser.c +129742 -0
- package/node_modules/tree-sitter-python/src/scanner.c +437 -0
- package/node_modules/tree-sitter-python/src/tree_sitter/alloc.h +54 -0
- package/node_modules/tree-sitter-python/src/tree_sitter/array.h +291 -0
- package/node_modules/tree-sitter-python/src/tree_sitter/parser.h +286 -0
- package/node_modules/tree-sitter-python/tree-sitter-python.wasm +0 -0
- package/node_modules/tree-sitter-python/tree-sitter.json +42 -0
- package/package.json +13 -7
- package/packages/agent-sdk/node_modules/ajv/.runkit_example.js +23 -0
- package/packages/agent-sdk/node_modules/ajv/LICENSE +22 -0
- package/packages/agent-sdk/node_modules/ajv/README.md +207 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2019.d.ts +19 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2019.js +61 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2019.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2020.d.ts +19 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2020.js +55 -0
- package/packages/agent-sdk/node_modules/ajv/dist/2020.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/ajv.d.ts +18 -0
- package/packages/agent-sdk/node_modules/ajv/dist/ajv.js +50 -0
- package/packages/agent-sdk/node_modules/ajv/dist/ajv.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/code.d.ts +40 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/code.js +156 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/code.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/index.d.ts +79 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/index.js +697 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/scope.d.ts +79 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/scope.js +143 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/codegen/scope.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/errors.d.ts +13 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/errors.js +123 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/errors.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/index.d.ts +80 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/index.js +242 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/parse.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/parse.js +350 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/parse.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/serialize.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/serialize.js +236 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/serialize.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/types.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/types.js +14 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/jtd/types.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/names.d.ts +20 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/names.js +28 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/names.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/ref_error.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/ref_error.js +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/ref_error.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/resolve.d.ts +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/resolve.js +155 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/resolve.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/rules.d.ts +28 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/rules.js +26 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/rules.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/util.d.ts +40 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/util.js +178 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/util.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/applicability.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/applicability.js +19 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/applicability.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/boolSchema.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/boolSchema.js +50 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/boolSchema.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/dataType.d.ts +17 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/dataType.js +203 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/dataType.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/defaults.d.ts +2 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/defaults.js +35 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/defaults.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/index.d.ts +42 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/index.js +520 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/keyword.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/keyword.js +124 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/keyword.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/subschema.d.ts +47 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/subschema.js +81 -0
- package/packages/agent-sdk/node_modules/ajv/dist/compile/validate/subschema.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/core.d.ts +174 -0
- package/packages/agent-sdk/node_modules/ajv/dist/core.js +618 -0
- package/packages/agent-sdk/node_modules/ajv/dist/core.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/jtd.d.ts +47 -0
- package/packages/agent-sdk/node_modules/ajv/dist/jtd.js +72 -0
- package/packages/agent-sdk/node_modules/ajv/dist/jtd.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/data.json +13 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/index.d.ts +2 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/index.js +28 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/applicator.json +53 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/content.json +17 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/core.json +57 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/format.json +14 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/meta-data.json +37 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/meta/validation.json +90 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2019-09/schema.json +39 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/index.d.ts +2 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/index.js +30 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/applicator.json +48 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/content.json +17 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/core.json +51 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/meta-data.json +37 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/meta/validation.json +90 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-2020-12/schema.json +55 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-draft-06.json +137 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-draft-07.json +151 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/json-schema-secure.json +88 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/jtd-schema.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/jtd-schema.js +118 -0
- package/packages/agent-sdk/node_modules/ajv/dist/refs/jtd-schema.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/equal.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/equal.js +7 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/equal.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/parseJson.d.ts +18 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/parseJson.js +185 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/parseJson.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/quote.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/quote.js +30 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/quote.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/re2.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/re2.js +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/re2.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/timestamp.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/timestamp.js +42 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/timestamp.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/ucs2length.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/ucs2length.js +24 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/ucs2length.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/uri.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/uri.js +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/uri.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/validation_error.d.ts +7 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/validation_error.js +11 -0
- package/packages/agent-sdk/node_modules/ajv/dist/runtime/validation_error.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/index.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/index.js +90 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/instance.d.ts +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/instance.js +35 -0
- package/packages/agent-sdk/node_modules/ajv/dist/standalone/instance.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/index.d.ts +183 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/index.js +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/json-schema.d.ts +125 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/json-schema.js +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/json-schema.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/jtd-schema.d.ts +174 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/jtd-schema.js +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/types/jtd-schema.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalItems.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js +49 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalItems.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js +106 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/additionalProperties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/allOf.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/allOf.js +23 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/allOf.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/anyOf.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/anyOf.js +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/anyOf.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/contains.d.ts +7 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/contains.js +95 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/contains.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependencies.d.ts +21 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependencies.js +85 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependencies.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js +11 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/dependentSchemas.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/if.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/if.js +66 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/if.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/index.d.ts +13 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/index.js +44 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items.js +52 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items2020.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items2020.js +30 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/items2020.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/not.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/not.js +26 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/not.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/oneOf.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/oneOf.js +60 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/oneOf.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/patternProperties.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js +75 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/patternProperties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/prefixItems.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/prefixItems.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/properties.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/properties.js +54 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/properties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/propertyNames.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js +38 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/propertyNames.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/thenElse.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/thenElse.js +13 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/applicator/thenElse.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/code.d.ts +17 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/code.js +131 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/code.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/id.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/id.js +10 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/id.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/index.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/index.js +16 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/ref.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/ref.js +122 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/core/ref.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/index.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/index.js +104 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/types.d.ts +10 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/types.js +9 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/discriminator/types.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft2020.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft2020.js +23 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft2020.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft7.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft7.js +17 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/draft7.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js +30 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicAnchor.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js +51 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/dynamicRef.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/index.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/index.js +9 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js +16 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveAnchor.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js +10 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/dynamic/recursiveRef.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/errors.d.ts +9 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/errors.js +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/errors.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/format.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/format.js +92 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/format.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/index.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/index.js +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/format/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/discriminator.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/discriminator.js +71 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/discriminator.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/elements.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/elements.js +24 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/elements.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/enum.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/enum.js +43 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/enum.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/error.d.ts +9 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/error.js +20 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/error.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/index.d.ts +10 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/index.js +29 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/metadata.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/metadata.js +25 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/metadata.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/nullable.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/nullable.js +22 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/nullable.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js +15 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/optionalProperties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/properties.d.ts +22 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/properties.js +149 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/properties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/ref.d.ts +4 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/ref.js +67 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/ref.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/type.d.ts +10 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/type.js +69 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/type.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/union.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/union.js +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/union.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/values.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/values.js +51 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/jtd/values.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/metadata.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/metadata.js +18 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/metadata.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/next.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/next.js +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/next.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/index.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/index.js +7 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js +40 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedItems.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js +65 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/unevaluated/unevaluatedProperties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/const.d.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/const.js +25 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/const.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/dependentRequired.d.ts +5 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js +12 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/dependentRequired.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/enum.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/enum.js +48 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/enum.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/index.d.ts +16 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/index.js +33 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/index.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitContains.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitContains.js +15 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitContains.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitItems.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitItems.js +24 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitItems.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitLength.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitLength.js +27 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitLength.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitNumber.d.ts +11 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitNumber.js +27 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitNumber.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitProperties.d.ts +3 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitProperties.js +24 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/limitProperties.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/multipleOf.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/multipleOf.js +26 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/multipleOf.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/pattern.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/pattern.js +33 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/pattern.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/required.d.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/required.js +79 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/required.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/uniqueItems.d.ts +9 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js +64 -0
- package/packages/agent-sdk/node_modules/ajv/dist/vocabularies/validation/uniqueItems.js.map +1 -0
- package/packages/agent-sdk/node_modules/ajv/lib/2019.ts +81 -0
- package/packages/agent-sdk/node_modules/ajv/lib/2020.ts +75 -0
- package/packages/agent-sdk/node_modules/ajv/lib/ajv.ts +70 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/codegen/code.ts +169 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/codegen/index.ts +852 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/codegen/scope.ts +215 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/errors.ts +184 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/index.ts +324 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/jtd/parse.ts +411 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/jtd/serialize.ts +277 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/jtd/types.ts +16 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/names.ts +27 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/ref_error.ts +13 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/resolve.ts +149 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/rules.ts +50 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/util.ts +213 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/applicability.ts +22 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/boolSchema.ts +47 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/dataType.ts +230 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/defaults.ts +32 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/index.ts +582 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/keyword.ts +171 -0
- package/packages/agent-sdk/node_modules/ajv/lib/compile/validate/subschema.ts +135 -0
- package/packages/agent-sdk/node_modules/ajv/lib/core.ts +892 -0
- package/packages/agent-sdk/node_modules/ajv/lib/jtd.ts +132 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/data.json +13 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/index.ts +28 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/applicator.json +53 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/content.json +17 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/core.json +57 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/format.json +14 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/meta-data.json +37 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/meta/validation.json +90 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2019-09/schema.json +39 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/index.ts +30 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/applicator.json +48 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/content.json +17 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/core.json +51 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/format-annotation.json +14 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/meta-data.json +37 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/unevaluated.json +15 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/meta/validation.json +90 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-2020-12/schema.json +55 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-draft-06.json +137 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-draft-07.json +151 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/json-schema-secure.json +88 -0
- package/packages/agent-sdk/node_modules/ajv/lib/refs/jtd-schema.ts +130 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/equal.ts +7 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/parseJson.ts +177 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/quote.ts +31 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/re2.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/timestamp.ts +46 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/ucs2length.ts +20 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/uri.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/lib/runtime/validation_error.ts +13 -0
- package/packages/agent-sdk/node_modules/ajv/lib/standalone/index.ts +100 -0
- package/packages/agent-sdk/node_modules/ajv/lib/standalone/instance.ts +36 -0
- package/packages/agent-sdk/node_modules/ajv/lib/types/index.ts +244 -0
- package/packages/agent-sdk/node_modules/ajv/lib/types/json-schema.ts +187 -0
- package/packages/agent-sdk/node_modules/ajv/lib/types/jtd-schema.ts +273 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/additionalItems.ts +56 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/additionalProperties.ts +118 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/allOf.ts +22 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/anyOf.ts +14 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/contains.ts +109 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/dependencies.ts +112 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/dependentSchemas.ts +11 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/if.ts +80 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/index.ts +53 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/items.ts +59 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/items2020.ts +36 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/not.ts +38 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/oneOf.ts +82 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/patternProperties.ts +91 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/prefixItems.ts +12 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/properties.ts +57 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/propertyNames.ts +50 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/applicator/thenElse.ts +13 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/code.ts +168 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/core/id.ts +10 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/core/index.ts +16 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/core/ref.ts +129 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/discriminator/index.ts +113 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/discriminator/types.ts +12 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/draft2020.ts +23 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/draft7.ts +17 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/dynamic/dynamicAnchor.ts +31 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/dynamic/dynamicRef.ts +51 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/dynamic/index.ts +9 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/dynamic/recursiveAnchor.ts +14 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/dynamic/recursiveRef.ts +10 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/errors.ts +18 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/format/format.ts +120 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/format/index.ts +6 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/discriminator.ts +89 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/elements.ts +32 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/enum.ts +45 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/error.ts +23 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/index.ts +37 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/metadata.ts +24 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/nullable.ts +21 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/optionalProperties.ts +15 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/properties.ts +184 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/ref.ts +76 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/type.ts +75 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/union.ts +12 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/jtd/values.ts +58 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/metadata.ts +17 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/next.ts +8 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/unevaluated/index.ts +7 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedItems.ts +47 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/unevaluated/unevaluatedProperties.ts +85 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/const.ts +28 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/dependentRequired.ts +23 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/enum.ts +54 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/index.ts +49 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/limitContains.ts +16 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/limitItems.ts +26 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/limitLength.ts +30 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/limitNumber.ts +42 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/limitProperties.ts +26 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/multipleOf.ts +34 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/pattern.ts +39 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/required.ts +98 -0
- package/packages/agent-sdk/node_modules/ajv/lib/vocabularies/validation/uniqueItems.ts +79 -0
- package/packages/agent-sdk/node_modules/ajv/package.json +126 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/.eslintrc.yml +27 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/.github/FUNDING.yml +2 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/.github/workflows/build.yml +28 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/.github/workflows/publish.yml +27 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/LICENSE +21 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/README.md +95 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/index.d.ts +40 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/index.js +93 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/package.json +43 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/spec/.eslintrc.yml +6 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/spec/fixtures/schema.js +125 -0
- package/packages/agent-sdk/node_modules/json-schema-traverse/spec/index.spec.js +171 -0
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+
import assert from "node:assert/strict";
|
|
2
|
+
import { mkdtemp, mkdir, writeFile } from "node:fs/promises";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import path from "node:path";
|
|
5
|
+
import { test } from "node:test";
|
|
6
|
+
import { getPluginForFile, loadPlugins } from "../src/indexer/plugin-loader.js";
|
|
7
|
+
import { buildProjectIndex } from "../src/indexer/project-index.js";
|
|
8
|
+
test("Plugin loader returns the built-in Python plugin", async () => {
|
|
9
|
+
const plugins = await loadPlugins("/tmp");
|
|
10
|
+
assert.ok(plugins.some((p) => p.name === "python"));
|
|
11
|
+
});
|
|
12
|
+
test("getPluginForFile routes .py files to Python plugin", async () => {
|
|
13
|
+
const plugins = await loadPlugins("/tmp");
|
|
14
|
+
const plugin = getPluginForFile("module.py", plugins);
|
|
15
|
+
assert.ok(plugin);
|
|
16
|
+
assert.equal(plugin.name, "python");
|
|
17
|
+
});
|
|
18
|
+
test("getPluginForFile routes .pyi stub files to Python plugin", async () => {
|
|
19
|
+
const plugins = await loadPlugins("/tmp");
|
|
20
|
+
const plugin = getPluginForFile("module.pyi", plugins);
|
|
21
|
+
assert.ok(plugin);
|
|
22
|
+
assert.equal(plugin.name, "python");
|
|
23
|
+
});
|
|
24
|
+
test("buildProjectIndex indexes a Python workspace", async () => {
|
|
25
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-index-"));
|
|
26
|
+
await writeFile(path.join(workspaceRoot, "module.py"), [
|
|
27
|
+
"class Foo:",
|
|
28
|
+
" def bar(self):",
|
|
29
|
+
" pass",
|
|
30
|
+
"",
|
|
31
|
+
"def baz():",
|
|
32
|
+
" pass",
|
|
33
|
+
"",
|
|
34
|
+
].join("\n"), "utf8");
|
|
35
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
36
|
+
assert.ok(index.getSymbol("Foo"));
|
|
37
|
+
assert.ok(index.getSymbol("Foo.bar"));
|
|
38
|
+
assert.ok(index.getSymbol("baz"));
|
|
39
|
+
const codeMap = index.getCodeMap();
|
|
40
|
+
assert.ok(codeMap.text.includes("class Foo"));
|
|
41
|
+
assert.ok(codeMap.text.includes("def bar"));
|
|
42
|
+
assert.ok(codeMap.text.includes("def baz"));
|
|
43
|
+
});
|
|
44
|
+
test("verify-index-python fixture exercises the indexing pipeline", async () => {
|
|
45
|
+
const root = path.resolve(import.meta.dirname, "..");
|
|
46
|
+
const fixtureRoot = path.join(root, "test-programs", "verify-index-python");
|
|
47
|
+
const index = await buildProjectIndex(fixtureRoot);
|
|
48
|
+
assert.ok(index.getSymbol("Processor"), "Processor class");
|
|
49
|
+
assert.ok(index.getSymbol("Processor.run"), "Processor.run method");
|
|
50
|
+
assert.ok(index.getSymbol("parse"), "parse function");
|
|
51
|
+
assert.ok(index.getSymbol("Task"), "Task dataclass");
|
|
52
|
+
assert.ok(index.getSymbol("TaskRunner"), "TaskRunner protocol");
|
|
53
|
+
assert.ok(index.getSymbol("parse_and_process"), "parse_and_process function");
|
|
54
|
+
const codeMap = index.getCodeMap();
|
|
55
|
+
assert.ok(codeMap.text.includes("Processor"));
|
|
56
|
+
assert.ok(codeMap.text.includes("parse_and_process"));
|
|
57
|
+
});
|
|
58
|
+
test("verify-index-python fixture produces extends and calls edges", async () => {
|
|
59
|
+
const root = path.resolve(import.meta.dirname, "..");
|
|
60
|
+
const fixtureRoot = path.join(root, "test-programs", "verify-index-python");
|
|
61
|
+
const index = await buildProjectIndex(fixtureRoot);
|
|
62
|
+
// Module-prefixed qualifiedNames (src/ stripped). Processor lives in
|
|
63
|
+
// `src/processor.py` → module `processor`; TaskRunner in `src/types.py`.
|
|
64
|
+
const extendsEdges = index.dependencyEdges.filter((e) => e.kind === "extends" && e.from === "processor.Processor");
|
|
65
|
+
assert.ok(extendsEdges.some((e) => e.to === "types.TaskRunner"), "processor.Processor should extend types.TaskRunner");
|
|
66
|
+
const callEdges = index.dependencyEdges.filter((e) => e.kind === "calls");
|
|
67
|
+
assert.ok(callEdges.some((e) => e.from === "parser.parse_and_process" && e.to === "parser.parse"), "parser.parse_and_process should call parser.parse");
|
|
68
|
+
assert.ok(callEdges.some((e) => e.from === "parser.parse_and_process" && e.to === "parser.process"), "parser.parse_and_process should call parser.process");
|
|
69
|
+
assert.ok(callEdges.some((e) => e.from === "processor.Processor.run" &&
|
|
70
|
+
e.to === "parser.parse_and_process"), "processor.Processor.run should call parser.parse_and_process across files");
|
|
71
|
+
});
|
|
72
|
+
test("Python plugin extends edges resolve relative imports", async () => {
|
|
73
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-extends-"));
|
|
74
|
+
await mkdir(path.join(workspaceRoot, "pkg"), { recursive: true });
|
|
75
|
+
await writeFile(path.join(workspaceRoot, "pkg", "base.py"), "class Base:\n pass\n", "utf8");
|
|
76
|
+
await writeFile(path.join(workspaceRoot, "pkg", "sub.py"), "from .base import Base\n\nclass Sub(Base):\n pass\n", "utf8");
|
|
77
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
78
|
+
const extendsEdges = index.dependencyEdges.filter((e) => e.kind === "extends" && e.from === "pkg.sub.Sub");
|
|
79
|
+
assert.ok(extendsEdges.some((e) => e.to === "pkg.base.Base"), "pkg.sub.Sub should extend pkg.base.Base via relative import");
|
|
80
|
+
});
|
|
81
|
+
test("Python plugin calls edges resolve self.method invocations", async () => {
|
|
82
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-self-"));
|
|
83
|
+
await writeFile(path.join(workspaceRoot, "mod.py"), [
|
|
84
|
+
"class Foo:",
|
|
85
|
+
" def helper(self):",
|
|
86
|
+
" return 1",
|
|
87
|
+
"",
|
|
88
|
+
" def run(self):",
|
|
89
|
+
" return self.helper()",
|
|
90
|
+
"",
|
|
91
|
+
].join("\n"), "utf8");
|
|
92
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
93
|
+
const edges = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "mod.Foo.run");
|
|
94
|
+
assert.ok(edges.some((e) => e.to === "mod.Foo.helper"), "mod.Foo.run should call mod.Foo.helper via self");
|
|
95
|
+
});
|
|
96
|
+
test("Python plugin calls edges resolve absolute imports", async () => {
|
|
97
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-abs-"));
|
|
98
|
+
await mkdir(path.join(workspaceRoot, "lib"), { recursive: true });
|
|
99
|
+
await writeFile(path.join(workspaceRoot, "lib", "util.py"), "def helper():\n return 1\n", "utf8");
|
|
100
|
+
await writeFile(path.join(workspaceRoot, "main.py"), [
|
|
101
|
+
"from lib.util import helper",
|
|
102
|
+
"",
|
|
103
|
+
"def run():",
|
|
104
|
+
" return helper()",
|
|
105
|
+
"",
|
|
106
|
+
].join("\n"), "utf8");
|
|
107
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
108
|
+
// `lib/` is a stripped source root, so `lib/util.py` → module `util`.
|
|
109
|
+
// `main.py` is at the workspace root → module `main`.
|
|
110
|
+
const edges = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "main.run");
|
|
111
|
+
assert.ok(edges.some((e) => e.to === "util.helper"), "main.run should call util.helper imported from the lib/ source root");
|
|
112
|
+
});
|
|
113
|
+
test("Python plugin Protocol→interface still receives extends edges as base class", async () => {
|
|
114
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-proto-"));
|
|
115
|
+
await writeFile(path.join(workspaceRoot, "iface.py"), [
|
|
116
|
+
"from typing import Protocol",
|
|
117
|
+
"",
|
|
118
|
+
"class Animal(Protocol):",
|
|
119
|
+
" def speak(self) -> str: ...",
|
|
120
|
+
"",
|
|
121
|
+
"class Dog(Animal):",
|
|
122
|
+
" def speak(self) -> str:",
|
|
123
|
+
" return 'woof'",
|
|
124
|
+
"",
|
|
125
|
+
].join("\n"), "utf8");
|
|
126
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
127
|
+
const extendsEdges = index.dependencyEdges.filter((e) => e.kind === "extends" && e.from === "iface.Dog");
|
|
128
|
+
assert.ok(extendsEdges.some((e) => e.to === "iface.Animal"), "iface.Dog should extend iface.Animal even though Animal is an interface");
|
|
129
|
+
});
|
|
130
|
+
test("buildProjectIndex handles a mixed TypeScript + Python workspace", async () => {
|
|
131
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-mixed-"));
|
|
132
|
+
await mkdir(path.join(workspaceRoot, "src"), { recursive: true });
|
|
133
|
+
// TypeScript side
|
|
134
|
+
await writeFile(path.join(workspaceRoot, "src", "types.ts"), "export interface Greeter {\n greet(name: string): string;\n}\n", "utf8");
|
|
135
|
+
await writeFile(path.join(workspaceRoot, "src", "service.ts"), [
|
|
136
|
+
"import type { Greeter } from \"./types.js\";",
|
|
137
|
+
"",
|
|
138
|
+
"export class Service implements Greeter {",
|
|
139
|
+
" greet(name: string): string {",
|
|
140
|
+
" return `Hello ${name}`;",
|
|
141
|
+
" }",
|
|
142
|
+
"}",
|
|
143
|
+
"",
|
|
144
|
+
].join("\n"), "utf8");
|
|
145
|
+
// Python side
|
|
146
|
+
await writeFile(path.join(workspaceRoot, "src", "models.py"), [
|
|
147
|
+
"from dataclasses import dataclass",
|
|
148
|
+
"",
|
|
149
|
+
"@dataclass",
|
|
150
|
+
"class User:",
|
|
151
|
+
" name: str",
|
|
152
|
+
"",
|
|
153
|
+
].join("\n"), "utf8");
|
|
154
|
+
await writeFile(path.join(workspaceRoot, "src", "service.py"), [
|
|
155
|
+
"from .models import User",
|
|
156
|
+
"",
|
|
157
|
+
"def make_user(name: str) -> User:",
|
|
158
|
+
" return User(name=name)",
|
|
159
|
+
"",
|
|
160
|
+
].join("\n"), "utf8");
|
|
161
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
162
|
+
const greeter = index.getSymbol("Greeter");
|
|
163
|
+
const tsService = index.getSymbol("Service");
|
|
164
|
+
assert.ok(greeter, "TypeScript interface Greeter should be indexed");
|
|
165
|
+
assert.equal(greeter.kind, "interface");
|
|
166
|
+
assert.ok(tsService, "TypeScript class Service should be indexed");
|
|
167
|
+
assert.equal(tsService.kind, "class");
|
|
168
|
+
const user = index.getSymbol("User");
|
|
169
|
+
const makeUser = index.getSymbol("make_user");
|
|
170
|
+
assert.ok(user, "Python User dataclass should be indexed");
|
|
171
|
+
assert.equal(user.filePath, "src/models.py");
|
|
172
|
+
assert.ok(makeUser, "Python make_user function should be indexed");
|
|
173
|
+
assert.equal(makeUser.filePath, "src/service.py");
|
|
174
|
+
// TS plugin still uses bare qualifiedNames; Python plugin now uses
|
|
175
|
+
// module-prefixed qualifiedNames. Both kinds of edges coexist in the
|
|
176
|
+
// same graph.
|
|
177
|
+
const tsImpl = index.dependencyEdges.find((e) => e.kind === "implements" && e.from === "Service" && e.to === "Greeter");
|
|
178
|
+
assert.ok(tsImpl, "TypeScript Service implements Greeter edge");
|
|
179
|
+
const pyCall = index.dependencyEdges.find((e) => e.kind === "calls" &&
|
|
180
|
+
e.from === "service.make_user" &&
|
|
181
|
+
e.to === "models.User");
|
|
182
|
+
assert.ok(pyCall, "Python service.make_user calls models.User edge");
|
|
183
|
+
});
|
|
184
|
+
test("Python plugin indexes .pyi stub files", async () => {
|
|
185
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-pyi-"));
|
|
186
|
+
await writeFile(path.join(workspaceRoot, "stubs.pyi"), [
|
|
187
|
+
"from typing import Protocol",
|
|
188
|
+
"",
|
|
189
|
+
"def loaded(name: str) -> bool: ...",
|
|
190
|
+
"",
|
|
191
|
+
"class Service(Protocol):",
|
|
192
|
+
" def run(self, task: str) -> int: ...",
|
|
193
|
+
" async def shutdown(self) -> None: ...",
|
|
194
|
+
"",
|
|
195
|
+
].join("\n"), "utf8");
|
|
196
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
197
|
+
const loaded = index.getSymbol("loaded");
|
|
198
|
+
assert.ok(loaded, "stub-file function should be indexed");
|
|
199
|
+
assert.equal(loaded.kind, "function");
|
|
200
|
+
assert.equal(loaded.filePath, "stubs.pyi");
|
|
201
|
+
assert.ok(loaded.signature.startsWith("def loaded"), `expected stub function signature, got ${loaded.signature}`);
|
|
202
|
+
const service = index.getSymbol("Service");
|
|
203
|
+
assert.ok(service, "stub-file Protocol class should be indexed");
|
|
204
|
+
assert.equal(service.kind, "interface");
|
|
205
|
+
const run = index.getSymbol("Service.run");
|
|
206
|
+
const shutdown = index.getSymbol("Service.shutdown");
|
|
207
|
+
assert.ok(run, "stub-file method run should be indexed");
|
|
208
|
+
assert.equal(run.kind, "method");
|
|
209
|
+
assert.ok(shutdown, "stub-file async method shutdown should be indexed");
|
|
210
|
+
assert.ok(shutdown.signature.startsWith("async def shutdown"), `expected async stub signature, got ${shutdown.signature}`);
|
|
211
|
+
});
|
|
212
|
+
test("Python plugin module-qualified calls do not pollute edges with same-named symbols in other modules", async () => {
|
|
213
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-modcall-"));
|
|
214
|
+
await writeFile(path.join(workspaceRoot, "helpers.py"), "def parse():\n return 1\n", "utf8");
|
|
215
|
+
await writeFile(path.join(workspaceRoot, "validator.py"), "def parse():\n return 2\n", "utf8");
|
|
216
|
+
await writeFile(path.join(workspaceRoot, "main.py"), [
|
|
217
|
+
"import helpers",
|
|
218
|
+
"",
|
|
219
|
+
"def run():",
|
|
220
|
+
" return helpers.parse()",
|
|
221
|
+
"",
|
|
222
|
+
].join("\n"), "utf8");
|
|
223
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
224
|
+
const callEdgesFromRun = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "main.run");
|
|
225
|
+
// The run function should only call parse from helpers.py, not from validator.py.
|
|
226
|
+
const helpersParse = index.getSymbolsInFile("helpers.py").find((s) => s.name === "parse");
|
|
227
|
+
const validatorParse = index.getSymbolsInFile("validator.py").find((s) => s.name === "parse");
|
|
228
|
+
assert.ok(helpersParse && validatorParse);
|
|
229
|
+
assert.ok(callEdgesFromRun.some((e) => e.to === helpersParse.qualifiedName), "main.run should call helpers.parse");
|
|
230
|
+
assert.ok(!callEdgesFromRun.some((e) => e.to === validatorParse.qualifiedName), "main.run should NOT call validator.parse — module-qualified calls must not fall back to global leaf matches");
|
|
231
|
+
});
|
|
232
|
+
test("Python plugin attribute base classes resolve via alias, not bare leaf", async () => {
|
|
233
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-attr-base-"));
|
|
234
|
+
await mkdir(path.join(workspaceRoot, "pkg"), { recursive: true });
|
|
235
|
+
await writeFile(path.join(workspaceRoot, "pkg", "__init__.py"), "", "utf8");
|
|
236
|
+
await writeFile(path.join(workspaceRoot, "pkg", "base.py"), "class Base:\n pass\n", "utf8");
|
|
237
|
+
await writeFile(path.join(workspaceRoot, "pkg", "other.py"), "class Base:\n pass\n", "utf8");
|
|
238
|
+
await writeFile(path.join(workspaceRoot, "pkg", "sub.py"), [
|
|
239
|
+
"from . import base",
|
|
240
|
+
"",
|
|
241
|
+
"class Sub(base.Base):",
|
|
242
|
+
" pass",
|
|
243
|
+
"",
|
|
244
|
+
].join("\n"), "utf8");
|
|
245
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
246
|
+
const baseInBaseFile = index.getSymbolsInFile("pkg/base.py").find((s) => s.name === "Base");
|
|
247
|
+
const baseInOtherFile = index.getSymbolsInFile("pkg/other.py").find((s) => s.name === "Base");
|
|
248
|
+
assert.ok(baseInBaseFile && baseInOtherFile);
|
|
249
|
+
const extendsFromSub = index.dependencyEdges.filter((e) => e.kind === "extends" && e.from === "pkg.sub.Sub");
|
|
250
|
+
assert.ok(extendsFromSub.some((e) => e.to === baseInBaseFile.qualifiedName), "pkg.sub.Sub should extend pkg.base.Base via the `base` alias");
|
|
251
|
+
assert.ok(!extendsFromSub.some((e) => e.to === baseInOtherFile.qualifiedName), "pkg.sub.Sub should NOT extend pkg.other.Base — attribute bases must use the alias target's module file, not the bare leaf");
|
|
252
|
+
});
|
|
253
|
+
test("Python plugin: bare-name lookups still resolve module-prefixed symbols", async () => {
|
|
254
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-bare-lookup-"));
|
|
255
|
+
await writeFile(path.join(workspaceRoot, "module.py"), [
|
|
256
|
+
"class Foo:",
|
|
257
|
+
" def bar(self):",
|
|
258
|
+
" pass",
|
|
259
|
+
"",
|
|
260
|
+
"def baz():",
|
|
261
|
+
" pass",
|
|
262
|
+
"",
|
|
263
|
+
].join("\n"), "utf8");
|
|
264
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
265
|
+
// Canonical module-prefixed lookup
|
|
266
|
+
assert.ok(index.getSymbol("module.Foo"));
|
|
267
|
+
assert.ok(index.getSymbol("module.Foo.bar"));
|
|
268
|
+
assert.ok(index.getSymbol("module.baz"));
|
|
269
|
+
// User-natural lookups must still work via aliases — the agent and humans
|
|
270
|
+
// refer to symbols this way and shouldn't have to know the module path.
|
|
271
|
+
const foo = index.getSymbol("Foo");
|
|
272
|
+
const fooBar = index.getSymbol("Foo.bar");
|
|
273
|
+
const baz = index.getSymbol("baz");
|
|
274
|
+
assert.ok(foo, "bare class lookup should resolve");
|
|
275
|
+
assert.ok(fooBar, "Class.method lookup should resolve via alias");
|
|
276
|
+
assert.ok(baz, "bare function lookup should resolve");
|
|
277
|
+
assert.equal(foo.qualifiedName, "module.Foo");
|
|
278
|
+
assert.equal(fooBar.qualifiedName, "module.Foo.bar");
|
|
279
|
+
assert.equal(baz.qualifiedName, "module.baz");
|
|
280
|
+
});
|
|
281
|
+
test("Python plugin: `from src.helpers import parse` resolves only to the imported module's parse", async () => {
|
|
282
|
+
// Reviewer scenario: the alias target was `src.helpers.parse` but indexed
|
|
283
|
+
// symbols use the stripped module name `helpers.parse`. Without source-root
|
|
284
|
+
// stripping in `collectImports`, the bare `parse()` call would fall through
|
|
285
|
+
// to a global leaf match and emit edges to every project `parse`.
|
|
286
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-abs-strip-"));
|
|
287
|
+
await mkdir(path.join(workspaceRoot, "src"), { recursive: true });
|
|
288
|
+
await writeFile(path.join(workspaceRoot, "src", "helpers.py"), "def parse():\n return 1\n", "utf8");
|
|
289
|
+
await writeFile(path.join(workspaceRoot, "src", "validator.py"), "def parse():\n return 2\n", "utf8");
|
|
290
|
+
await writeFile(path.join(workspaceRoot, "main.py"), [
|
|
291
|
+
"from src.helpers import parse",
|
|
292
|
+
"",
|
|
293
|
+
"def run():",
|
|
294
|
+
" return parse()",
|
|
295
|
+
"",
|
|
296
|
+
].join("\n"), "utf8");
|
|
297
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
298
|
+
const helpersParse = index.getSymbolsInFile("src/helpers.py").find((s) => s.name === "parse");
|
|
299
|
+
const validatorParse = index.getSymbolsInFile("src/validator.py").find((s) => s.name === "parse");
|
|
300
|
+
assert.ok(helpersParse && validatorParse);
|
|
301
|
+
const callsFromRun = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "main.run");
|
|
302
|
+
assert.ok(callsFromRun.some((e) => e.to === helpersParse.qualifiedName), "main.run should call helpers.parse via the absolute import");
|
|
303
|
+
assert.ok(!callsFromRun.some((e) => e.to === validatorParse.qualifiedName), "main.run should NOT call validator.parse — absolute imports must strip src/ to align with file-derived qualifiedNames");
|
|
304
|
+
});
|
|
305
|
+
test("Python plugin: `import src.helpers as h; h.parse()` resolves only to the aliased module's parse", async () => {
|
|
306
|
+
// Companion to the `from src.x import y` case: the alias target is
|
|
307
|
+
// `src.helpers`, which must be stripped to `helpers` to match
|
|
308
|
+
// `moduleToFile` (built from `fileToModuleName`).
|
|
309
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-abs-as-"));
|
|
310
|
+
await mkdir(path.join(workspaceRoot, "src"), { recursive: true });
|
|
311
|
+
await writeFile(path.join(workspaceRoot, "src", "helpers.py"), "def parse():\n return 1\n", "utf8");
|
|
312
|
+
await writeFile(path.join(workspaceRoot, "src", "validator.py"), "def parse():\n return 2\n", "utf8");
|
|
313
|
+
await writeFile(path.join(workspaceRoot, "main.py"), [
|
|
314
|
+
"import src.helpers as helpers",
|
|
315
|
+
"",
|
|
316
|
+
"def run():",
|
|
317
|
+
" return helpers.parse()",
|
|
318
|
+
"",
|
|
319
|
+
].join("\n"), "utf8");
|
|
320
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
321
|
+
const helpersParse = index.getSymbolsInFile("src/helpers.py").find((s) => s.name === "parse");
|
|
322
|
+
const validatorParse = index.getSymbolsInFile("src/validator.py").find((s) => s.name === "parse");
|
|
323
|
+
assert.ok(helpersParse && validatorParse);
|
|
324
|
+
const callsFromRun = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "main.run");
|
|
325
|
+
assert.ok(callsFromRun.some((e) => e.to === helpersParse.qualifiedName), "main.run should call helpers.parse via the aliased absolute import");
|
|
326
|
+
assert.ok(!callsFromRun.some((e) => e.to === validatorParse.qualifiedName), "main.run should NOT call validator.parse — module-qualified calls through stripped roots must resolve strictly");
|
|
327
|
+
});
|
|
328
|
+
test("Python plugin: known alias to an external module emits no edge (no global leaf fallback)", async () => {
|
|
329
|
+
// `from typing import Protocol; foo(Protocol)` should not emit an edge
|
|
330
|
+
// to any user-defined `Protocol` symbol elsewhere in the project — the
|
|
331
|
+
// alias resolves to an external module, so resolution should fail closed.
|
|
332
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-ext-alias-"));
|
|
333
|
+
await writeFile(path.join(workspaceRoot, "decoy.py"), "class Protocol:\n pass\n", "utf8");
|
|
334
|
+
await writeFile(path.join(workspaceRoot, "main.py"), [
|
|
335
|
+
"from typing import Protocol",
|
|
336
|
+
"",
|
|
337
|
+
"def consume(p):",
|
|
338
|
+
" return Protocol()",
|
|
339
|
+
"",
|
|
340
|
+
].join("\n"), "utf8");
|
|
341
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
342
|
+
const decoyProtocol = index.getSymbolsInFile("decoy.py").find((s) => s.name === "Protocol");
|
|
343
|
+
assert.ok(decoyProtocol);
|
|
344
|
+
const calls = index.dependencyEdges.filter((e) => e.kind === "calls" && e.from === "main.consume");
|
|
345
|
+
assert.ok(!calls.some((e) => e.to === decoyProtocol.qualifiedName), "main.consume should NOT call decoy.Protocol — known alias to an external module should fail closed");
|
|
346
|
+
});
|
|
347
|
+
test("buildProjectIndex disambiguates colliding Python symbols across files", async () => {
|
|
348
|
+
const workspaceRoot = await mkdtemp(path.join(tmpdir(), "minicode-py-collide-"));
|
|
349
|
+
await mkdir(path.join(workspaceRoot, "src"), { recursive: true });
|
|
350
|
+
await writeFile(path.join(workspaceRoot, "src", "helpers.py"), "def parse():\n return 1\n", "utf8");
|
|
351
|
+
await writeFile(path.join(workspaceRoot, "src", "validator.py"), "def parse():\n return 2\n", "utf8");
|
|
352
|
+
const index = await buildProjectIndex(workspaceRoot);
|
|
353
|
+
const matches = index.getSymbolMatches("parse");
|
|
354
|
+
assert.equal(matches.length, 2, "should keep both colliding symbols");
|
|
355
|
+
const filePaths = matches.map((m) => m.filePath).sort();
|
|
356
|
+
assert.deepEqual(filePaths, ["src/helpers.py", "src/validator.py"]);
|
|
357
|
+
});
|
|
@@ -24,6 +24,7 @@ class MockBridge extends AgentBridge {
|
|
|
24
24
|
openAiCompatibleApiKey;
|
|
25
25
|
openAiCompatibleSessionActive = false;
|
|
26
26
|
refreshIndexCount = 0;
|
|
27
|
+
deletedSessionIds = [];
|
|
27
28
|
constructor() {
|
|
28
29
|
super(() => { }, false);
|
|
29
30
|
}
|
|
@@ -89,6 +90,13 @@ class MockBridge extends AgentBridge {
|
|
|
89
90
|
}
|
|
90
91
|
return { session, label };
|
|
91
92
|
}
|
|
93
|
+
async deleteSess(sessionId) {
|
|
94
|
+
if (sessionId !== "sess-1") {
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
this.deletedSessionIds.push(sessionId);
|
|
98
|
+
return true;
|
|
99
|
+
}
|
|
92
100
|
getCurrentSessionId() {
|
|
93
101
|
return this._currentSessionId;
|
|
94
102
|
}
|
|
@@ -536,6 +544,29 @@ test("POST /api/sessions/load returns success for known session", async () => {
|
|
|
536
544
|
assert.equal(body.messages[9]?.content, "message-11");
|
|
537
545
|
assert.ok(body.messages.every((message) => !message.content.startsWith("[Conversation Summary")));
|
|
538
546
|
});
|
|
547
|
+
test("DELETE /api/sessions/:id deletes a saved session", async () => {
|
|
548
|
+
const bridge = new MockBridge();
|
|
549
|
+
const base = await startTestServer(bridge);
|
|
550
|
+
const res = await fetch(`${base}/api/sessions/sess-1`, {
|
|
551
|
+
method: "DELETE",
|
|
552
|
+
});
|
|
553
|
+
assert.equal(res.status, 200);
|
|
554
|
+
const body = (await res.json());
|
|
555
|
+
assert.equal(body.ok, true);
|
|
556
|
+
assert.equal(body.deleted, true);
|
|
557
|
+
assert.equal(body.id, "sess-1");
|
|
558
|
+
assert.deepEqual(bridge.deletedSessionIds, ["sess-1"]);
|
|
559
|
+
});
|
|
560
|
+
test("DELETE /api/sessions/:id returns 404 for unknown session", async () => {
|
|
561
|
+
const bridge = new MockBridge();
|
|
562
|
+
const base = await startTestServer(bridge);
|
|
563
|
+
const res = await fetch(`${base}/api/sessions/missing`, {
|
|
564
|
+
method: "DELETE",
|
|
565
|
+
});
|
|
566
|
+
assert.equal(res.status, 404);
|
|
567
|
+
const body = (await res.json());
|
|
568
|
+
assert.match(body.error, /Session not found/);
|
|
569
|
+
});
|
|
539
570
|
test("POST /api/chat returns agent response", async () => {
|
|
540
571
|
const bridge = new MockBridge();
|
|
541
572
|
const base = await startTestServer(bridge);
|
|
@@ -4,7 +4,7 @@ import { mkdtemp, readdir, rm } from "node:fs/promises";
|
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import os from "node:os";
|
|
6
6
|
import { Session } from "@minicode/agent-sdk";
|
|
7
|
-
import { DuplicateSessionLabelError, listSessions, loadSession, loadSessionByLabel, saveSession, setSessionsDir, } from "../src/session/session-store.js";
|
|
7
|
+
import { deleteSession, DuplicateSessionLabelError, listSessions, loadSession, loadSessionByLabel, saveSession, setSessionsDir, } from "../src/session/session-store.js";
|
|
8
8
|
async function withTmpDir(fn) {
|
|
9
9
|
const dir = await mkdtemp(path.join(os.tmpdir(), "minicode-test-"));
|
|
10
10
|
setSessionsDir(dir);
|
|
@@ -127,3 +127,20 @@ test("saving same session twice overwrites the file", async () => {
|
|
|
127
127
|
assert.equal(result.session.getMessages().length, 2);
|
|
128
128
|
});
|
|
129
129
|
});
|
|
130
|
+
test("deleteSession removes the saved session file", async () => {
|
|
131
|
+
await withTmpDir(async (dir) => {
|
|
132
|
+
const session = new Session("test-id");
|
|
133
|
+
session.addMessage({ role: "user", content: "hello" });
|
|
134
|
+
await saveSession(session, "delete me");
|
|
135
|
+
const deleted = await deleteSession("test-id");
|
|
136
|
+
assert.equal(deleted, true);
|
|
137
|
+
const files = await readdir(dir);
|
|
138
|
+
assert.equal(files.length, 0);
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
test("deleteSession returns false for a missing session", async () => {
|
|
142
|
+
await withTmpDir(async () => {
|
|
143
|
+
const deleted = await deleteSession("missing-session");
|
|
144
|
+
assert.equal(deleted, false);
|
|
145
|
+
});
|
|
146
|
+
});
|
|
@@ -7,11 +7,14 @@ test("built HTML contains update action for the current saved session", () => {
|
|
|
7
7
|
const html = readFileSync(join(distWeb, "index.html"), "utf8");
|
|
8
8
|
assert.ok(html.includes('id="session-update-row"'), "HTML should contain the session update row");
|
|
9
9
|
assert.ok(html.includes('id="session-update-btn"'), "HTML should contain the session update button");
|
|
10
|
+
assert.ok(html.includes('id="session-autosave-toggle"'), "HTML should contain the auto-save sessions toggle");
|
|
10
11
|
});
|
|
11
12
|
test("built CSS contains active-session styling", () => {
|
|
12
13
|
const css = readFileSync(join(distWeb, "style.css"), "utf8");
|
|
13
14
|
assert.ok(css.includes(".session-item.active"), "CSS should style the active saved session row");
|
|
14
15
|
assert.ok(css.includes(".session-active-badge"), "CSS should style the active session badge");
|
|
16
|
+
assert.ok(css.includes(".session-delete-btn"), "CSS should style the session delete button");
|
|
17
|
+
assert.ok(css.includes(".session-autosave-row"), "CSS should style the auto-save toggle row");
|
|
15
18
|
});
|
|
16
19
|
test("built JS contains active saved session update logic", () => {
|
|
17
20
|
const js = readFileSync(join(distWeb, "app.js"), "utf8");
|
|
@@ -22,4 +25,7 @@ test("built JS contains active saved session update logic", () => {
|
|
|
22
25
|
assert.ok(js.includes('saveBtn.setAttribute("disabled", "true")'), "JS should disable saving while the first save is in flight");
|
|
23
26
|
assert.ok(js.includes("renderLoadedSessionMessages"), "JS should render session previews after load");
|
|
24
27
|
assert.ok(js.includes("body.messages"), "JS should read preview messages from the load session response");
|
|
28
|
+
assert.ok(js.includes("SESSION_AUTOSAVE_KEY"), "JS should persist the auto-save preference");
|
|
29
|
+
assert.ok(js.includes("window.confirm"), "JS should confirm before deleting a saved session");
|
|
30
|
+
assert.ok(js.includes('method: "DELETE"'), "JS should call the delete session API");
|
|
25
31
|
});
|
|
@@ -37,47 +37,82 @@ const TOOLS_WITH_SEARCH_CODE_MAP = [
|
|
|
37
37
|
},
|
|
38
38
|
];
|
|
39
39
|
test("buildSystemPrompt omits code map when undefined", () => {
|
|
40
|
-
const prompt = buildSystemPrompt(
|
|
40
|
+
const prompt = buildSystemPrompt({
|
|
41
|
+
config: createMinimalConfig("/tmp"),
|
|
42
|
+
tools: MINIMAL_TOOLS,
|
|
43
|
+
});
|
|
41
44
|
assert.ok(!prompt.includes("[Project Code Map]"));
|
|
42
45
|
assert.ok(prompt.includes("[Identity]"));
|
|
43
46
|
assert.ok(prompt.includes("[Tool Descriptions]"));
|
|
44
47
|
});
|
|
45
48
|
test("buildSystemPrompt omits code map when empty", () => {
|
|
46
|
-
const prompt = buildSystemPrompt(
|
|
49
|
+
const prompt = buildSystemPrompt({
|
|
50
|
+
config: createMinimalConfig("/tmp"),
|
|
51
|
+
tools: MINIMAL_TOOLS,
|
|
52
|
+
codeMap: { text: "", shownCount: 0, totalCount: 0 },
|
|
53
|
+
});
|
|
47
54
|
assert.ok(!prompt.includes("[Project Code Map]"));
|
|
48
55
|
});
|
|
49
56
|
test("buildSystemPrompt includes code map when provided", () => {
|
|
50
|
-
const
|
|
57
|
+
const codeMap = {
|
|
51
58
|
text: "# Project Code Map\n\n src/foo.ts\n function bar()",
|
|
52
59
|
shownCount: 1,
|
|
53
60
|
totalCount: 1,
|
|
54
61
|
};
|
|
55
|
-
const prompt = buildSystemPrompt(
|
|
62
|
+
const prompt = buildSystemPrompt({
|
|
63
|
+
config: createMinimalConfig("/tmp"),
|
|
64
|
+
tools: MINIMAL_TOOLS,
|
|
65
|
+
codeMap,
|
|
66
|
+
});
|
|
56
67
|
assert.ok(prompt.includes("[Project Code Map]"));
|
|
57
68
|
assert.ok(prompt.includes("src/foo.ts"));
|
|
58
69
|
assert.ok(prompt.includes("function bar()"));
|
|
59
70
|
});
|
|
60
71
|
test("buildSystemPrompt includes workspace context", () => {
|
|
61
|
-
const prompt = buildSystemPrompt(
|
|
72
|
+
const prompt = buildSystemPrompt({
|
|
73
|
+
config: createMinimalConfig("/home/user/project"),
|
|
74
|
+
tools: MINIMAL_TOOLS,
|
|
75
|
+
});
|
|
62
76
|
assert.ok(prompt.includes("/home/user/project"));
|
|
63
77
|
});
|
|
78
|
+
test("buildSystemPrompt omits runtime budget knobs", () => {
|
|
79
|
+
const prompt = buildSystemPrompt({
|
|
80
|
+
config: createMinimalConfig("/tmp"),
|
|
81
|
+
tools: MINIMAL_TOOLS,
|
|
82
|
+
});
|
|
83
|
+
assert.doesNotMatch(prompt, /maxSteps/i);
|
|
84
|
+
assert.doesNotMatch(prompt, /maxTokens/i);
|
|
85
|
+
assert.doesNotMatch(prompt, /modelTimeoutSeconds/i);
|
|
86
|
+
assert.doesNotMatch(prompt, /maxContextTokens/i);
|
|
87
|
+
assert.doesNotMatch(prompt, /commandTimeoutMs/i);
|
|
88
|
+
});
|
|
64
89
|
test("buildSystemPrompt includes tool list", () => {
|
|
65
|
-
const prompt = buildSystemPrompt(
|
|
90
|
+
const prompt = buildSystemPrompt({
|
|
91
|
+
config: createMinimalConfig("/tmp"),
|
|
92
|
+
tools: MINIMAL_TOOLS,
|
|
93
|
+
});
|
|
66
94
|
assert.ok(prompt.includes("read_file"));
|
|
67
95
|
assert.ok(prompt.includes("Read a file"));
|
|
68
96
|
});
|
|
69
97
|
test("buildSystemPrompt shows truncated stats and search_code_map hint when truncated", () => {
|
|
70
|
-
const
|
|
98
|
+
const codeMap = {
|
|
71
99
|
text: "# Project Code Map\n\n src/foo.ts\n function bar()",
|
|
72
100
|
shownCount: 5,
|
|
73
101
|
totalCount: 100,
|
|
74
102
|
};
|
|
75
|
-
const prompt = buildSystemPrompt(
|
|
103
|
+
const prompt = buildSystemPrompt({
|
|
104
|
+
config: createMinimalConfig("/tmp"),
|
|
105
|
+
tools: TOOLS_WITH_SEARCH_CODE_MAP,
|
|
106
|
+
codeMap,
|
|
107
|
+
});
|
|
76
108
|
assert.ok(prompt.includes("Showing 5 of 100 symbols"));
|
|
77
109
|
assert.ok(prompt.includes("search_code_map to find symbols not listed above"));
|
|
78
110
|
});
|
|
79
111
|
test("buildSystemPrompt detects project type from workspace", () => {
|
|
80
112
|
const root = path.resolve(import.meta.dirname, "..");
|
|
81
|
-
const prompt = buildSystemPrompt(
|
|
113
|
+
const prompt = buildSystemPrompt({
|
|
114
|
+
config: createMinimalConfig(root),
|
|
115
|
+
tools: MINIMAL_TOOLS,
|
|
116
|
+
});
|
|
82
117
|
assert.ok(prompt.includes("Node.js") || prompt.includes("TypeScript"), "minicode has package.json");
|
|
83
118
|
});
|