sqlew 4.3.0 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +95 -0
- package/LICENSE +1 -1
- package/NOTICE +2 -2
- package/README.md +338 -269
- package/assets/claude-md-snippets/plan-mode-integration.md +104 -48
- package/assets/claude-md-snippets/queue-monitoring.md +84 -0
- package/dist/backend/backend-factory.d.ts +67 -0
- package/dist/backend/backend-factory.d.ts.map +1 -0
- package/dist/backend/backend-factory.js +171 -0
- package/dist/backend/backend-factory.js.map +1 -0
- package/dist/backend/index.d.ts +12 -0
- package/dist/backend/index.d.ts.map +1 -0
- package/dist/backend/index.js +13 -0
- package/dist/backend/index.js.map +1 -0
- package/dist/backend/inference.d.ts +38 -0
- package/dist/backend/inference.d.ts.map +1 -0
- package/dist/backend/inference.js +76 -0
- package/dist/backend/inference.js.map +1 -0
- package/dist/backend/local-backend.d.ts +40 -0
- package/dist/backend/local-backend.d.ts.map +1 -0
- package/dist/backend/local-backend.js +410 -0
- package/dist/backend/local-backend.js.map +1 -0
- package/dist/backend/transforming-backend.d.ts +47 -0
- package/dist/backend/transforming-backend.d.ts.map +1 -0
- package/dist/backend/transforming-backend.js +80 -0
- package/dist/backend/transforming-backend.js.map +1 -0
- package/dist/backend/types.d.ts +58 -0
- package/dist/backend/types.d.ts.map +1 -0
- package/dist/backend/types.js +7 -0
- package/dist/backend/types.js.map +1 -0
- package/dist/cli/db-dump.js +45 -45
- package/dist/cli/db-dump.js.map +1 -1
- package/dist/cli/db-export.js +30 -30
- package/dist/cli/db-export.js.map +1 -1
- package/dist/cli/db-import.d.ts.map +1 -1
- package/dist/cli/db-import.js +32 -33
- package/dist/cli/db-import.js.map +1 -1
- package/dist/cli/hooks/check-completion.d.ts +1 -0
- package/dist/cli/hooks/check-completion.d.ts.map +1 -1
- package/dist/cli/hooks/check-completion.js +15 -26
- package/dist/cli/hooks/check-completion.js.map +1 -1
- package/dist/cli/hooks/mark-done.d.ts +1 -0
- package/dist/cli/hooks/mark-done.d.ts.map +1 -1
- package/dist/cli/hooks/mark-done.js +12 -17
- package/dist/cli/hooks/mark-done.js.map +1 -1
- package/dist/cli/hooks/on-enter-plan.js +2 -2
- package/dist/cli/hooks/on-enter-plan.js.map +1 -1
- package/dist/cli/hooks/on-session-start.d.ts +23 -0
- package/dist/cli/hooks/on-session-start.d.ts.map +1 -0
- package/dist/cli/hooks/on-session-start.js +70 -0
- package/dist/cli/hooks/on-session-start.js.map +1 -0
- package/dist/cli/hooks/on-stop.js +5 -5
- package/dist/cli/hooks/on-stop.js.map +1 -1
- package/dist/cli/hooks/{plan-toml-parser.d.ts → plan-parser.d.ts} +1 -1
- package/dist/cli/hooks/plan-parser.d.ts.map +1 -0
- package/dist/cli/hooks/{plan-toml-parser.js → plan-parser.js} +1 -1
- package/dist/cli/hooks/plan-parser.js.map +1 -0
- package/dist/cli/hooks/plan-pattern-extractor.d.ts.map +1 -1
- package/dist/cli/hooks/plan-pattern-extractor.js +6 -3
- package/dist/cli/hooks/plan-pattern-extractor.js.map +1 -1
- package/dist/cli/hooks/plan-processor.js +1 -1
- package/dist/cli/hooks/plan-processor.js.map +1 -1
- package/dist/cli/hooks/stdin-parser.d.ts +4 -0
- package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
- package/dist/cli/hooks/stdin-parser.js.map +1 -1
- package/dist/cli/hooks/suggest.js +2 -2
- package/dist/cli/hooks/suggest.js.map +1 -1
- package/dist/cli/hooks/track-plan.d.ts.map +1 -1
- package/dist/cli/hooks/track-plan.js +24 -18
- package/dist/cli/hooks/track-plan.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +108 -108
- package/dist/cli.js.map +1 -1
- package/dist/config/cloud-config-loader.d.ts +107 -0
- package/dist/config/cloud-config-loader.d.ts.map +1 -0
- package/dist/config/cloud-config-loader.js +273 -0
- package/dist/config/cloud-config-loader.js.map +1 -0
- package/dist/config/global-config.d.ts +10 -10
- package/dist/config/global-config.d.ts.map +1 -1
- package/dist/config/global-config.js +12 -12
- package/dist/config/global-config.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +5 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/minimal-generator.d.ts.map +1 -1
- package/dist/config/minimal-generator.js +22 -72
- package/dist/config/minimal-generator.js.map +1 -1
- package/dist/config/types.d.ts +59 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +14 -0
- package/dist/config/types.js.map +1 -1
- package/dist/constants.d.ts +1 -29
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -38
- package/dist/constants.js.map +1 -1
- package/dist/database/initialization/cleanup.d.ts.map +1 -1
- package/dist/database/initialization/cleanup.js +0 -13
- package/dist/database/initialization/cleanup.js.map +1 -1
- package/dist/database/initialization/init.d.ts.map +1 -1
- package/dist/database/initialization/init.js +0 -9
- package/dist/database/initialization/init.js.map +1 -1
- package/dist/database/initialization/schema-version.d.ts +4 -4
- package/dist/database/initialization/schema-version.js +9 -9
- package/dist/database/initialization/schema-version.js.map +1 -1
- package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts +36 -0
- package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.d.ts.map +1 -0
- package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js +135 -0
- package/dist/database/migrations/v4/20260107000000_v5_drop_task_file_tables.js.map +1 -0
- package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts +20 -0
- package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.d.ts.map +1 -0
- package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js +168 -0
- package/dist/database/migrations/v4/20260107000001_v5_drop_legacy_tables.js.map +1 -0
- package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts +23 -0
- package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.d.ts.map +1 -0
- package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js +570 -0
- package/dist/database/migrations/v4/20260108000000_v5_rename_to_m_t_prefix.js.map +1 -0
- package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts +29 -0
- package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.d.ts.map +1 -0
- package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js +80 -0
- package/dist/database/migrations/v4/20260109000000_v5_drop_help_tables.js.map +1 -0
- package/dist/database/operations/inserts.js +11 -11
- package/dist/database/operations/inserts.js.map +1 -1
- package/dist/database/operations/queries.js +9 -9
- package/dist/database/operations/queries.js.map +1 -1
- package/dist/formatters/adr-formatter.d.ts +22 -0
- package/dist/formatters/adr-formatter.d.ts.map +1 -0
- package/dist/formatters/adr-formatter.js +127 -0
- package/dist/formatters/adr-formatter.js.map +1 -0
- package/dist/formatters/confluence-formatter.d.ts +26 -0
- package/dist/formatters/confluence-formatter.d.ts.map +1 -0
- package/dist/formatters/confluence-formatter.js +129 -0
- package/dist/formatters/confluence-formatter.js.map +1 -0
- package/dist/formatters/index.d.ts +34 -0
- package/dist/formatters/index.d.ts.map +1 -0
- package/dist/formatters/index.js +57 -0
- package/dist/formatters/index.js.map +1 -0
- package/dist/formatters/markdown-formatter.d.ts +16 -0
- package/dist/formatters/markdown-formatter.d.ts.map +1 -0
- package/dist/formatters/markdown-formatter.js +110 -0
- package/dist/formatters/markdown-formatter.js.map +1 -0
- package/dist/formatters/notion-formatter.d.ts +29 -0
- package/dist/formatters/notion-formatter.d.ts.map +1 -0
- package/dist/formatters/notion-formatter.js +177 -0
- package/dist/formatters/notion-formatter.js.map +1 -0
- package/dist/formatters/types.d.ts +31 -0
- package/dist/formatters/types.d.ts.map +1 -0
- package/dist/formatters/types.js +6 -0
- package/dist/formatters/types.js.map +1 -0
- package/dist/help-data/_schema.toml +21 -0
- package/dist/help-data/constraint.toml +259 -0
- package/dist/help-data/decision.toml +833 -0
- package/dist/help-data/example.toml +177 -0
- package/dist/help-data/help.toml +246 -0
- package/dist/help-data/queue.toml +134 -0
- package/dist/help-data/suggest.toml +219 -0
- package/dist/help-data/use-cases/_categories.toml +22 -0
- package/dist/help-data/use-cases/constraint-basic.toml +34 -0
- package/dist/help-data/use-cases/cross-tool-workflow.toml +50 -0
- package/dist/help-data/use-cases/decision-intelligence-duplicate.toml +35 -0
- package/dist/help-data/use-cases/decision-intelligence-related.toml +35 -0
- package/dist/help-data/use-cases/decision-tracking-basic.toml +42 -0
- package/dist/help-data/use-cases/decision-tracking-versions.toml +42 -0
- package/dist/help-data/use_case.toml +147 -0
- package/dist/help-loader.d.ts +194 -0
- package/dist/help-loader.d.ts.map +1 -0
- package/dist/help-loader.js +419 -0
- package/dist/help-loader.js.map +1 -0
- package/dist/index.js +15 -10
- package/dist/index.js.map +1 -1
- package/dist/init-rules.d.ts +42 -0
- package/dist/init-rules.d.ts.map +1 -0
- package/dist/init-rules.js +217 -0
- package/dist/init-rules.js.map +1 -0
- package/dist/schema.d.ts +4 -6
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +28 -45
- package/dist/schema.js.map +1 -1
- package/dist/server/setup.d.ts +0 -10
- package/dist/server/setup.d.ts.map +1 -1
- package/dist/server/setup.js +97 -89
- package/dist/server/setup.js.map +1 -1
- package/dist/server/shutdown.d.ts +1 -1
- package/dist/server/shutdown.d.ts.map +1 -1
- package/dist/server/shutdown.js +1 -16
- package/dist/server/shutdown.js.map +1 -1
- package/dist/server/tool-handlers.d.ts +15 -0
- package/dist/server/tool-handlers.d.ts.map +1 -1
- package/dist/server/tool-handlers.js +47 -462
- package/dist/server/tool-handlers.js.map +1 -1
- package/dist/server/tool-registry.d.ts.map +1 -1
- package/dist/server/tool-registry.js +50 -62
- package/dist/server/tool-registry.js.map +1 -1
- package/dist/tests/backend/backend-factory.test.d.ts +7 -0
- package/dist/tests/backend/backend-factory.test.d.ts.map +1 -0
- package/dist/tests/backend/backend-factory.test.js +157 -0
- package/dist/tests/backend/backend-factory.test.js.map +1 -0
- package/dist/tests/backend/inference.test.d.ts +7 -0
- package/dist/tests/backend/inference.test.d.ts.map +1 -0
- package/dist/tests/backend/inference.test.js +142 -0
- package/dist/tests/backend/inference.test.js.map +1 -0
- package/dist/tests/database/multi-project/multi-project.test.js +9 -70
- package/dist/tests/database/multi-project/multi-project.test.js.map +1 -1
- package/dist/tests/database/sql-dump/table-ordering.test.js +14 -14
- package/dist/tests/database/sql-dump/table-ordering.test.js.map +1 -1
- package/dist/tests/docker/cross-database.test.js +32 -32
- package/dist/tests/docker/cross-database.test.js.map +1 -1
- package/dist/tests/docker/dump-import.test.js +55 -55
- package/dist/tests/docker/dump-import.test.js.map +1 -1
- package/dist/tests/docker/fk-constraints.test.js +3 -3
- package/dist/tests/docker/indexes.test.js +34 -34
- package/dist/tests/docker/integration.test.js +33 -33
- package/dist/tests/docker/multi-project-migration.test.js +47 -47
- package/dist/tests/docker/multi-project-migration.test.js.map +1 -1
- package/dist/tests/docker/native/constraint-operations.test.js +49 -49
- package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
- package/dist/tests/docker/native/db-init.d.ts +3 -1
- package/dist/tests/docker/native/db-init.d.ts.map +1 -1
- package/dist/tests/docker/native/db-init.js +14 -12
- package/dist/tests/docker/native/db-init.js.map +1 -1
- package/dist/tests/docker/native/decision-operations.test.js +91 -91
- package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
- package/dist/tests/docker/native/help-system.test.d.ts +2 -2
- package/dist/tests/docker/native/help-system.test.js +113 -138
- package/dist/tests/docker/native/help-system.test.js.map +1 -1
- package/dist/tests/docker/native/suggest-tool.test.d.ts +2 -2
- package/dist/tests/docker/native/suggest-tool.test.js +35 -35
- package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
- package/dist/tests/docker/native/test-harness.d.ts +6 -12
- package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
- package/dist/tests/docker/native/test-harness.js +74 -156
- package/dist/tests/docker/native/test-harness.js.map +1 -1
- package/dist/tests/docker/schema-migration.test.js +6 -6
- package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts +3 -7
- package/dist/tests/feature/decision/batch-validation-comprehensive.test.d.ts.map +1 -1
- package/dist/tests/feature/decision/batch-validation-comprehensive.test.js +7 -318
- package/dist/tests/feature/decision/batch-validation-comprehensive.test.js.map +1 -1
- package/dist/tests/feature/help/help-system.test.d.ts +6 -6
- package/dist/tests/feature/help/help-system.test.js +166 -124
- package/dist/tests/feature/help/help-system.test.js.map +1 -1
- package/dist/tests/integration/auto-trigger-suggestions.test.js +22 -22
- package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
- package/dist/tests/integration/decision-intelligence-e2e.test.js +23 -22
- package/dist/tests/integration/decision-intelligence-e2e.test.js.map +1 -1
- package/dist/tests/integration/e2e-workflow1-debug.test.js +3 -3
- package/dist/tests/integration/e2e-workflow1-debug.test.js.map +1 -1
- package/dist/tests/integration/hybrid-similarity-detection.test.js +25 -25
- package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
- package/dist/tests/integration/suggest-simple.test.js +18 -0
- package/dist/tests/integration/suggest-simple.test.js.map +1 -1
- package/dist/tests/migrations/test-all-versions.js +212 -212
- package/dist/tests/migrations/test-all-versions.js.map +1 -1
- package/dist/tests/migrations/v4/v4-fresh-install.test.js +29 -29
- package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +1 -1
- package/dist/tests/migrations/v4/v4-migrate-data.test.js +20 -20
- package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +1 -1
- package/dist/tests/test-v4-native-rdbms.js +20 -20
- package/dist/tests/test-v4-native-rdbms.js.map +1 -1
- package/dist/tests/unit/config/cloud-config-loader.test.d.ts +2 -0
- package/dist/tests/unit/config/cloud-config-loader.test.d.ts.map +1 -0
- package/dist/tests/unit/config/cloud-config-loader.test.js +103 -0
- package/dist/tests/unit/config/cloud-config-loader.test.js.map +1 -0
- package/dist/tests/unit/config/{plan-toml-cache.test.d.ts → plan-cache.test.d.ts} +1 -1
- package/dist/tests/unit/config/plan-cache.test.d.ts.map +1 -0
- package/dist/tests/unit/config/{plan-toml-cache.test.js → plan-cache.test.js} +32 -32
- package/dist/tests/unit/config/plan-cache.test.js.map +1 -0
- package/dist/tests/unit/hooks/{plan-toml-parser.test.d.ts → plan-parser.test.d.ts} +1 -1
- package/dist/tests/unit/hooks/plan-parser.test.d.ts.map +1 -0
- package/dist/tests/unit/hooks/{plan-toml-parser.test.js → plan-parser.test.js} +179 -179
- package/dist/tests/unit/hooks/plan-parser.test.js.map +1 -0
- package/dist/tests/unit/server/tool-handlers.test.d.ts +7 -0
- package/dist/tests/unit/server/tool-handlers.test.d.ts.map +1 -0
- package/dist/tests/unit/server/tool-handlers.test.js +76 -0
- package/dist/tests/unit/server/tool-handlers.test.js.map +1 -0
- package/dist/tests/unit/utils/config-loader.test.js +17 -17
- package/dist/tests/unit/utils/connection-hash.test.d.ts +2 -0
- package/dist/tests/unit/utils/connection-hash.test.d.ts.map +1 -0
- package/dist/tests/unit/utils/connection-hash.test.js +57 -0
- package/dist/tests/unit/utils/connection-hash.test.js.map +1 -0
- package/dist/tests/unit/utils/environment-detector.test.d.ts +2 -0
- package/dist/tests/unit/utils/environment-detector.test.d.ts.map +1 -0
- package/dist/tests/unit/utils/environment-detector.test.js +43 -0
- package/dist/tests/unit/utils/environment-detector.test.js.map +1 -0
- package/dist/tests/unit/utils/path-utils.test.d.ts +2 -0
- package/dist/tests/unit/utils/path-utils.test.d.ts.map +1 -0
- package/dist/tests/unit/utils/path-utils.test.js +72 -0
- package/dist/tests/unit/utils/path-utils.test.js.map +1 -0
- package/dist/tests/unit/utils/project-detector.test.js +14 -13
- package/dist/tests/unit/utils/project-detector.test.js.map +1 -1
- package/dist/tests/unit/validation/parameter-validation.test.d.ts +2 -1
- package/dist/tests/unit/validation/parameter-validation.test.d.ts.map +1 -1
- package/dist/tests/unit/validation/parameter-validation.test.js +5 -133
- package/dist/tests/unit/validation/parameter-validation.test.js.map +1 -1
- package/dist/tests/unit/validation/policy-validation.test.js +15 -15
- package/dist/tests/unit/validation/policy-validation.test.js.map +1 -1
- package/dist/tests/utils/db-schema.js +48 -48
- package/dist/tests/utils/db-seeding.js +11 -11
- package/dist/tests/utils/db-seeding.js.map +1 -1
- package/dist/tests/utils/json-export-import.test.d.ts +6 -0
- package/dist/tests/utils/json-export-import.test.d.ts.map +1 -0
- package/dist/tests/utils/json-export-import.test.js +474 -0
- package/dist/tests/utils/json-export-import.test.js.map +1 -0
- package/dist/tests/utils/test-helpers.js +59 -59
- package/dist/tests/utils/test-helpers.js.map +1 -1
- package/dist/tools/constraints/actions/activate.d.ts +2 -2
- package/dist/tools/constraints/actions/activate.d.ts.map +1 -1
- package/dist/tools/constraints/actions/activate.js +12 -12
- package/dist/tools/constraints/actions/activate.js.map +1 -1
- package/dist/tools/constraints/actions/add.js +3 -3
- package/dist/tools/constraints/actions/add.js.map +1 -1
- package/dist/tools/constraints/actions/deactivate.js +6 -6
- package/dist/tools/constraints/actions/deactivate.js.map +1 -1
- package/dist/tools/constraints/actions/get.d.ts +2 -2
- package/dist/tools/constraints/actions/get.js +9 -9
- package/dist/tools/constraints/actions/get.js.map +1 -1
- package/dist/tools/constraints/actions/suggest-pending.js +2 -2
- package/dist/tools/constraints/actions/suggest-pending.js.map +1 -1
- package/dist/tools/constraints/index.d.ts +1 -1
- package/dist/tools/constraints/index.d.ts.map +1 -1
- package/dist/tools/constraints/index.js +1 -1
- package/dist/tools/constraints/index.js.map +1 -1
- package/dist/tools/context/actions/create-policy.js +3 -3
- package/dist/tools/context/actions/create-policy.js.map +1 -1
- package/dist/tools/context/actions/create-template.js +2 -2
- package/dist/tools/context/actions/create-template.js.map +1 -1
- package/dist/tools/context/actions/export.d.ts +35 -0
- package/dist/tools/context/actions/export.d.ts.map +1 -0
- package/dist/tools/context/actions/export.js +93 -0
- package/dist/tools/context/actions/export.js.map +1 -0
- package/dist/tools/context/actions/hard-delete.js +11 -11
- package/dist/tools/context/actions/hard-delete.js.map +1 -1
- package/dist/tools/context/actions/has-updates.d.ts +1 -1
- package/dist/tools/context/actions/has-updates.d.ts.map +1 -1
- package/dist/tools/context/actions/has-updates.js +5 -17
- package/dist/tools/context/actions/has-updates.js.map +1 -1
- package/dist/tools/context/actions/list-policies.js +1 -1
- package/dist/tools/context/actions/list-policies.js.map +1 -1
- package/dist/tools/context/actions/list-templates.js +2 -2
- package/dist/tools/context/actions/list-templates.js.map +1 -1
- package/dist/tools/context/actions/list.js +1 -1
- package/dist/tools/context/actions/list.js.map +1 -1
- package/dist/tools/context/actions/search-layer.js +8 -8
- package/dist/tools/context/actions/search-layer.js.map +1 -1
- package/dist/tools/context/actions/set-from-policy.js +1 -1
- package/dist/tools/context/actions/set-from-policy.js.map +1 -1
- package/dist/tools/context/actions/set-from-template.js +2 -2
- package/dist/tools/context/actions/set-from-template.js.map +1 -1
- package/dist/tools/context/actions/versions.js +3 -3
- package/dist/tools/context/actions/versions.js.map +1 -1
- package/dist/tools/context/index.d.ts +1 -0
- package/dist/tools/context/index.d.ts.map +1 -1
- package/dist/tools/context/index.js +2 -0
- package/dist/tools/context/index.js.map +1 -1
- package/dist/tools/context/internal/queries.d.ts.map +1 -1
- package/dist/tools/context/internal/queries.js +54 -43
- package/dist/tools/context/internal/queries.js.map +1 -1
- package/dist/tools/context/types.d.ts +1 -1
- package/dist/tools/context/types.d.ts.map +1 -1
- package/dist/tools/example/actions/get.d.ts +8 -3
- package/dist/tools/example/actions/get.d.ts.map +1 -1
- package/dist/tools/example/actions/get.js +29 -30
- package/dist/tools/example/actions/get.js.map +1 -1
- package/dist/tools/example/actions/list-all.d.ts +8 -2
- package/dist/tools/example/actions/list-all.d.ts.map +1 -1
- package/dist/tools/example/actions/list-all.js +37 -29
- package/dist/tools/example/actions/list-all.js.map +1 -1
- package/dist/tools/example/actions/search.d.ts +8 -3
- package/dist/tools/example/actions/search.d.ts.map +1 -1
- package/dist/tools/example/actions/search.js +29 -43
- package/dist/tools/example/actions/search.js.map +1 -1
- package/dist/tools/help/actions/batch-guide.js +5 -5
- package/dist/tools/help/actions/batch-guide.js.map +1 -1
- package/dist/tools/help/actions/query-action.d.ts +7 -3
- package/dist/tools/help/actions/query-action.d.ts.map +1 -1
- package/dist/tools/help/actions/query-action.js +35 -6
- package/dist/tools/help/actions/query-action.js.map +1 -1
- package/dist/tools/help/actions/query-params.d.ts +5 -3
- package/dist/tools/help/actions/query-params.d.ts.map +1 -1
- package/dist/tools/help/actions/query-params.js +28 -6
- package/dist/tools/help/actions/query-params.js.map +1 -1
- package/dist/tools/help/actions/query-tool.d.ts +5 -3
- package/dist/tools/help/actions/query-tool.d.ts.map +1 -1
- package/dist/tools/help/actions/query-tool.js +23 -6
- package/dist/tools/help/actions/query-tool.js.map +1 -1
- package/dist/tools/help/actions/workflow-hints.d.ts +5 -3
- package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -1
- package/dist/tools/help/actions/workflow-hints.js +21 -6
- package/dist/tools/help/actions/workflow-hints.js.map +1 -1
- package/dist/tools/queue/actions/clear.d.ts +19 -0
- package/dist/tools/queue/actions/clear.d.ts.map +1 -0
- package/dist/tools/queue/actions/clear.js +79 -0
- package/dist/tools/queue/actions/clear.js.map +1 -0
- package/dist/tools/queue/actions/list.d.ts +16 -0
- package/dist/tools/queue/actions/list.d.ts.map +1 -0
- package/dist/tools/queue/actions/list.js +95 -0
- package/dist/tools/queue/actions/list.js.map +1 -0
- package/dist/tools/queue/actions/remove.d.ts +19 -0
- package/dist/tools/queue/actions/remove.d.ts.map +1 -0
- package/dist/tools/queue/actions/remove.js +81 -0
- package/dist/tools/queue/actions/remove.js.map +1 -0
- package/dist/tools/queue/index.d.ts +13 -0
- package/dist/tools/queue/index.d.ts.map +1 -0
- package/dist/tools/queue/index.js +13 -0
- package/dist/tools/queue/index.js.map +1 -0
- package/dist/tools/queue/types.d.ts +87 -0
- package/dist/tools/queue/types.d.ts.map +1 -0
- package/dist/tools/queue/types.js +9 -0
- package/dist/tools/queue/types.js.map +1 -0
- package/dist/tools/suggest/actions/by-context.d.ts.map +1 -1
- package/dist/tools/suggest/actions/by-context.js +7 -15
- package/dist/tools/suggest/actions/by-context.js.map +1 -1
- package/dist/tools/suggest/actions/by-key.d.ts.map +1 -1
- package/dist/tools/suggest/actions/by-key.js +7 -15
- package/dist/tools/suggest/actions/by-key.js.map +1 -1
- package/dist/tools/suggest/actions/by-tags.d.ts +2 -2
- package/dist/tools/suggest/actions/by-tags.d.ts.map +1 -1
- package/dist/tools/suggest/actions/by-tags.js +8 -18
- package/dist/tools/suggest/actions/by-tags.js.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-context.d.ts +1 -1
- package/dist/tools/suggest/actions/constraint-by-context.d.ts.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-context.js +9 -16
- package/dist/tools/suggest/actions/constraint-by-context.js.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-tags.d.ts +1 -1
- package/dist/tools/suggest/actions/constraint-by-tags.d.ts.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-tags.js +11 -17
- package/dist/tools/suggest/actions/constraint-by-tags.js.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-text.d.ts +1 -1
- package/dist/tools/suggest/actions/constraint-by-text.d.ts.map +1 -1
- package/dist/tools/suggest/actions/constraint-by-text.js +6 -15
- package/dist/tools/suggest/actions/constraint-by-text.js.map +1 -1
- package/dist/tools/suggest/internal/constraint-queries.d.ts +4 -4
- package/dist/tools/suggest/internal/constraint-queries.js +14 -14
- package/dist/tools/suggest/internal/constraint-queries.js.map +1 -1
- package/dist/tools/suggest/internal/queries.d.ts +4 -4
- package/dist/tools/suggest/internal/queries.js +25 -25
- package/dist/tools/suggest/internal/queries.js.map +1 -1
- package/dist/tools/use_case/actions/get.d.ts +5 -3
- package/dist/tools/use_case/actions/get.d.ts.map +1 -1
- package/dist/tools/use_case/actions/get.js +20 -6
- package/dist/tools/use_case/actions/get.js.map +1 -1
- package/dist/tools/use_case/actions/list-all.d.ts +5 -3
- package/dist/tools/use_case/actions/list-all.d.ts.map +1 -1
- package/dist/tools/use_case/actions/list-all.js +36 -6
- package/dist/tools/use_case/actions/list-all.js.map +1 -1
- package/dist/tools/use_case/actions/search.d.ts +6 -3
- package/dist/tools/use_case/actions/search.d.ts.map +1 -1
- package/dist/tools/use_case/actions/search.js +37 -67
- package/dist/tools/use_case/actions/search.js.map +1 -1
- package/dist/tools/use_case/help/example.js +17 -17
- package/dist/tools/use_case/help/example.js.map +1 -1
- package/dist/types.d.ts +81 -380
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +0 -10
- package/dist/types.js.map +1 -1
- package/dist/utils/action-specs/constraint-specs.js +6 -6
- package/dist/utils/action-specs/constraint-specs.js.map +1 -1
- package/dist/utils/action-specs/index.d.ts +0 -2
- package/dist/utils/action-specs/index.d.ts.map +1 -1
- package/dist/utils/action-specs/index.js +0 -6
- package/dist/utils/action-specs/index.js.map +1 -1
- package/dist/utils/batch-validation.d.ts +1 -1
- package/dist/utils/batch-validation.js +3 -3
- package/dist/utils/batch-validation.js.map +1 -1
- package/dist/utils/case-insensitive-validator.d.ts +2 -2
- package/dist/utils/case-insensitive-validator.js +2 -2
- package/dist/utils/connection-hash.d.ts +37 -0
- package/dist/utils/connection-hash.d.ts.map +1 -0
- package/dist/utils/connection-hash.js +55 -0
- package/dist/utils/connection-hash.js.map +1 -0
- package/dist/utils/db-aggregations.js +16 -16
- package/dist/utils/db-aggregations.js.map +1 -1
- package/dist/utils/enum-converter.d.ts +0 -21
- package/dist/utils/enum-converter.d.ts.map +1 -1
- package/dist/utils/enum-converter.js +1 -23
- package/dist/utils/enum-converter.js.map +1 -1
- package/dist/utils/environment-detector.d.ts +30 -0
- package/dist/utils/environment-detector.d.ts.map +1 -0
- package/dist/utils/environment-detector.js +86 -0
- package/dist/utils/environment-detector.js.map +1 -0
- package/dist/utils/example-filter.d.ts +34 -0
- package/dist/utils/example-filter.d.ts.map +1 -0
- package/dist/utils/example-filter.js +45 -0
- package/dist/utils/example-filter.js.map +1 -0
- package/dist/utils/exporter/export.d.ts +2 -16
- package/dist/utils/exporter/export.d.ts.map +1 -1
- package/dist/utils/exporter/export.js +49 -130
- package/dist/utils/exporter/export.js.map +1 -1
- package/dist/utils/hook-queue.d.ts +60 -0
- package/dist/utils/hook-queue.d.ts.map +1 -1
- package/dist/utils/hook-queue.js +114 -11
- package/dist/utils/hook-queue.js.map +1 -1
- package/dist/utils/importer/import.d.ts.map +1 -1
- package/dist/utils/importer/import.js +33 -188
- package/dist/utils/importer/import.js.map +1 -1
- package/dist/utils/importer/master-tables.d.ts +2 -1
- package/dist/utils/importer/master-tables.d.ts.map +1 -1
- package/dist/utils/importer/master-tables.js +35 -81
- package/dist/utils/importer/master-tables.js.map +1 -1
- package/dist/utils/param-normalizer.d.ts +0 -1
- package/dist/utils/param-normalizer.d.ts.map +1 -1
- package/dist/utils/param-normalizer.js +1 -3
- package/dist/utils/param-normalizer.js.map +1 -1
- package/dist/utils/path-utils.d.ts +46 -0
- package/dist/utils/path-utils.d.ts.map +1 -0
- package/dist/utils/path-utils.js +74 -0
- package/dist/utils/path-utils.js.map +1 -0
- package/dist/utils/policy-validator.js +1 -1
- package/dist/utils/policy-validator.js.map +1 -1
- package/dist/utils/project-context.d.ts +23 -0
- package/dist/utils/project-context.d.ts.map +1 -1
- package/dist/utils/project-context.js +45 -3
- package/dist/utils/project-context.js.map +1 -1
- package/dist/utils/project-root.d.ts +2 -2
- package/dist/utils/project-root.js +2 -2
- package/dist/utils/sql-dump/core/index-export.js +7 -7
- package/dist/utils/sql-dump/schema/indexes.js +24 -24
- package/dist/utils/sql-dump/schema/tables.js +44 -44
- package/dist/utils/suggest-helpers.d.ts +82 -0
- package/dist/utils/suggest-helpers.d.ts.map +1 -0
- package/dist/utils/suggest-helpers.js +93 -0
- package/dist/utils/suggest-helpers.js.map +1 -0
- package/dist/utils/token-logging.js +6 -6
- package/dist/utils/token-logging.js.map +1 -1
- package/dist/utils/validators.js +1 -1
- package/dist/utils/validators.js.map +1 -1
- package/dist/utils/view-queries.d.ts +0 -8
- package/dist/utils/view-queries.d.ts.map +1 -1
- package/dist/utils/view-queries.js +29 -84
- package/dist/utils/view-queries.js.map +1 -1
- package/dist/watcher/index.d.ts +1 -4
- package/dist/watcher/index.d.ts.map +1 -1
- package/dist/watcher/index.js +1 -3
- package/dist/watcher/index.js.map +1 -1
- package/dist/watcher/queue-watcher.d.ts +10 -3
- package/dist/watcher/queue-watcher.d.ts.map +1 -1
- package/dist/watcher/queue-watcher.js +24 -21
- package/dist/watcher/queue-watcher.js.map +1 -1
- package/docs/CONFIGURATION.md +14 -14
- package/docs/DATABASE_AUTH.md +1 -1
- package/docs/HOOKS_GUIDE.md +30 -50
- package/docs/HOW_TO_UNINSTALL.md +199 -0
- package/docs/MIGRATION_CLEANUP_GUIDE.md +212 -0
- package/docs/MIGRATION_TO_SAAS.md +176 -0
- package/docs/SLASH_COMMANDS.md +1 -1
- package/docs/cli/DATABASE_MIGRATION.md +13 -13
- package/docs/cli/DATA_EXPORT_IMPORT.md +71 -69
- package/package.json +10 -8
- package/saas-connector/LICENSE +190 -0
- package/saas-connector/README.md +122 -0
- package/saas-connector/dist/auth/auth-manager.d.ts +6 -0
- package/saas-connector/dist/auth/auth-manager.d.ts.map +1 -0
- package/saas-connector/dist/auth/auth-manager.js +39 -0
- package/saas-connector/dist/auth/auth-manager.js.map +7 -0
- package/saas-connector/dist/backend/saas-backend.d.ts +20 -0
- package/saas-connector/dist/backend/saas-backend.d.ts.map +1 -0
- package/saas-connector/dist/backend/saas-backend.js +104 -0
- package/saas-connector/dist/backend/saas-backend.js.map +7 -0
- package/saas-connector/dist/client/http-client.d.ts +33 -0
- package/saas-connector/dist/client/http-client.d.ts.map +1 -0
- package/saas-connector/dist/client/http-client.js +226 -0
- package/saas-connector/dist/client/http-client.js.map +7 -0
- package/saas-connector/dist/client/types.d.ts +62 -0
- package/saas-connector/dist/client/types.d.ts.map +1 -0
- package/saas-connector/dist/client/types.js +17 -0
- package/saas-connector/dist/client/types.js.map +7 -0
- package/saas-connector/dist/config/constants.d.ts +14 -0
- package/saas-connector/dist/config/constants.d.ts.map +1 -0
- package/saas-connector/dist/config/constants.js +68 -0
- package/saas-connector/dist/config/constants.js.map +7 -0
- package/saas-connector/dist/errors/api-error.d.ts +26 -0
- package/saas-connector/dist/errors/api-error.d.ts.map +1 -0
- package/saas-connector/dist/errors/api-error.js +62 -0
- package/saas-connector/dist/errors/api-error.js.map +7 -0
- package/saas-connector/dist/index.d.ts +18 -0
- package/saas-connector/dist/index.d.ts.map +1 -0
- package/saas-connector/dist/index.js +51 -0
- package/saas-connector/dist/index.js.map +7 -0
- package/saas-connector/package-lock.json +518 -0
- package/saas-connector/package.json +34 -0
- package/scripts/copy-help-data.js +19 -0
- package/assets/config.example.toml +0 -282
- package/assets/kanban-style.png +0 -0
- package/assets/kanban-visualizer.png +0 -0
- package/assets/sample-agents/README.md +0 -36
- package/assets/sample-agents/sqlew-architect.md +0 -321
- package/assets/sample-agents/sqlew-researcher.md +0 -292
- package/assets/sample-agents/sqlew-scrum-master.md +0 -286
- package/assets/sample-commands/README.md +0 -56
- package/assets/sample-commands/sqlew.md +0 -144
- package/assets/sample-skills/sqlew-decision-format/SKILL.md +0 -73
- package/assets/sample-skills/sqlew-plan-guidance/SKILL.md +0 -62
- package/assets/schema.sql +0 -564
- package/dist/cli/hooks/init-hooks.d.ts +0 -35
- package/dist/cli/hooks/init-hooks.d.ts.map +0 -1
- package/dist/cli/hooks/init-hooks.js +0 -517
- package/dist/cli/hooks/init-hooks.js.map +0 -1
- package/dist/cli/hooks/plan-toml-parser.d.ts.map +0 -1
- package/dist/cli/hooks/plan-toml-parser.js.map +0 -1
- package/dist/init-agents.d.ts +0 -7
- package/dist/init-agents.d.ts.map +0 -1
- package/dist/init-agents.js +0 -206
- package/dist/init-agents.js.map +0 -1
- package/dist/init-commands.d.ts +0 -10
- package/dist/init-commands.d.ts.map +0 -1
- package/dist/init-commands.js +0 -46
- package/dist/init-commands.js.map +0 -1
- package/dist/init-skills.d.ts +0 -25
- package/dist/init-skills.d.ts.map +0 -1
- package/dist/init-skills.js +0 -160
- package/dist/init-skills.js.map +0 -1
- package/dist/sync-agents.d.ts +0 -13
- package/dist/sync-agents.d.ts.map +0 -1
- package/dist/sync-agents.js +0 -157
- package/dist/sync-agents.js.map +0 -1
- package/dist/sync-commands.d.ts +0 -13
- package/dist/sync-commands.d.ts.map +0 -1
- package/dist/sync-commands.js +0 -150
- package/dist/sync-commands.js.map +0 -1
- package/dist/sync-gitignore.d.ts +0 -13
- package/dist/sync-gitignore.d.ts.map +0 -1
- package/dist/sync-gitignore.js +0 -60
- package/dist/sync-gitignore.js.map +0 -1
- package/dist/tests/docker/native/task-operations.test.d.ts +0 -16
- package/dist/tests/docker/native/task-operations.test.d.ts.map +0 -1
- package/dist/tests/docker/native/task-operations.test.js +0 -800
- package/dist/tests/docker/native/task-operations.test.js.map +0 -1
- package/dist/tests/feature/decision/batch-validation-integration.test.d.ts +0 -6
- package/dist/tests/feature/decision/batch-validation-integration.test.d.ts.map +0 -1
- package/dist/tests/feature/decision/batch-validation-integration.test.js +0 -193
- package/dist/tests/feature/decision/batch-validation-integration.test.js.map +0 -1
- package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts +0 -6
- package/dist/tests/feature/task/auto-pruning-decision-link.test.d.ts.map +0 -1
- package/dist/tests/feature/task/auto-pruning-decision-link.test.js +0 -281
- package/dist/tests/feature/task/auto-pruning-decision-link.test.js.map +0 -1
- package/dist/tests/feature/task/auto-pruning-partial.test.d.ts +0 -6
- package/dist/tests/feature/task/auto-pruning-partial.test.d.ts.map +0 -1
- package/dist/tests/feature/task/auto-pruning-partial.test.js +0 -305
- package/dist/tests/feature/task/auto-pruning-partial.test.js.map +0 -1
- package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts +0 -6
- package/dist/tests/feature/task/auto-pruning-persistence.test.d.ts.map +0 -1
- package/dist/tests/feature/task/auto-pruning-persistence.test.js +0 -267
- package/dist/tests/feature/task/auto-pruning-persistence.test.js.map +0 -1
- package/dist/tests/feature/task/auto-pruning-safety.test.d.ts +0 -12
- package/dist/tests/feature/task/auto-pruning-safety.test.d.ts.map +0 -1
- package/dist/tests/feature/task/auto-pruning-safety.test.js +0 -224
- package/dist/tests/feature/task/auto-pruning-safety.test.js.map +0 -1
- package/dist/tests/feature/task/dependencies.test.d.ts +0 -7
- package/dist/tests/feature/task/dependencies.test.d.ts.map +0 -1
- package/dist/tests/feature/task/dependencies.test.js +0 -656
- package/dist/tests/feature/task/dependencies.test.js.map +0 -1
- package/dist/tests/feature/task/file-actions-integration.test.d.ts +0 -10
- package/dist/tests/feature/task/file-actions-integration.test.d.ts.map +0 -1
- package/dist/tests/feature/task/file-actions-integration.test.js +0 -162
- package/dist/tests/feature/task/file-actions-integration.test.js.map +0 -1
- package/dist/tests/feature/task/file-actions-validation.test.d.ts +0 -6
- package/dist/tests/feature/task/file-actions-validation.test.d.ts.map +0 -1
- package/dist/tests/feature/task/file-actions-validation.test.js +0 -228
- package/dist/tests/feature/task/file-actions-validation.test.js.map +0 -1
- package/dist/tests/feature/task/link-file-backward-compat.test.d.ts +0 -6
- package/dist/tests/feature/task/link-file-backward-compat.test.d.ts.map +0 -1
- package/dist/tests/feature/task/link-file-backward-compat.test.js +0 -280
- package/dist/tests/feature/task/link-file-backward-compat.test.js.map +0 -1
- package/dist/tests/feature/task/watch-files-action.test.d.ts +0 -8
- package/dist/tests/feature/task/watch-files-action.test.d.ts.map +0 -1
- package/dist/tests/feature/task/watch-files-action.test.js +0 -402
- package/dist/tests/feature/task/watch-files-action.test.js.map +0 -1
- package/dist/tests/feature/task/watch-files-parameter.test.d.ts +0 -8
- package/dist/tests/feature/task/watch-files-parameter.test.d.ts.map +0 -1
- package/dist/tests/feature/task/watch-files-parameter.test.js +0 -283
- package/dist/tests/feature/task/watch-files-parameter.test.js.map +0 -1
- package/dist/tests/integration/all-features.standalone.d.ts +0 -7
- package/dist/tests/integration/all-features.standalone.d.ts.map +0 -1
- package/dist/tests/integration/all-features.standalone.js +0 -417
- package/dist/tests/integration/all-features.standalone.js.map +0 -1
- package/dist/tests/unit/config/plan-toml-cache.test.d.ts.map +0 -1
- package/dist/tests/unit/config/plan-toml-cache.test.js.map +0 -1
- package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts.map +0 -1
- package/dist/tests/unit/hooks/plan-toml-parser.test.js.map +0 -1
- package/dist/tools/files/actions/check-lock.d.ts +0 -16
- package/dist/tools/files/actions/check-lock.d.ts.map +0 -1
- package/dist/tools/files/actions/check-lock.js +0 -74
- package/dist/tools/files/actions/check-lock.js.map +0 -1
- package/dist/tools/files/actions/get.d.ts +0 -16
- package/dist/tools/files/actions/get.d.ts.map +0 -1
- package/dist/tools/files/actions/get.js +0 -85
- package/dist/tools/files/actions/get.js.map +0 -1
- package/dist/tools/files/actions/record-batch.d.ts +0 -18
- package/dist/tools/files/actions/record-batch.d.ts.map +0 -1
- package/dist/tools/files/actions/record-batch.js +0 -119
- package/dist/tools/files/actions/record-batch.js.map +0 -1
- package/dist/tools/files/actions/record.d.ts +0 -16
- package/dist/tools/files/actions/record.d.ts.map +0 -1
- package/dist/tools/files/actions/record.js +0 -43
- package/dist/tools/files/actions/record.js.map +0 -1
- package/dist/tools/files/actions/sqlite-flush.d.ts +0 -27
- package/dist/tools/files/actions/sqlite-flush.d.ts.map +0 -1
- package/dist/tools/files/actions/sqlite-flush.js +0 -66
- package/dist/tools/files/actions/sqlite-flush.js.map +0 -1
- package/dist/tools/files/help/example.d.ts +0 -5
- package/dist/tools/files/help/example.d.ts.map +0 -1
- package/dist/tools/files/help/example.js +0 -98
- package/dist/tools/files/help/example.js.map +0 -1
- package/dist/tools/files/help/help.d.ts +0 -5
- package/dist/tools/files/help/help.d.ts.map +0 -1
- package/dist/tools/files/help/help.js +0 -24
- package/dist/tools/files/help/help.js.map +0 -1
- package/dist/tools/files/index.d.ts +0 -14
- package/dist/tools/files/index.d.ts.map +0 -1
- package/dist/tools/files/index.js +0 -15
- package/dist/tools/files/index.js.map +0 -1
- package/dist/tools/files/internal/queries.d.ts +0 -18
- package/dist/tools/files/internal/queries.d.ts.map +0 -1
- package/dist/tools/files/internal/queries.js +0 -54
- package/dist/tools/files/internal/queries.js.map +0 -1
- package/dist/tools/files/internal/validation.d.ts +0 -18
- package/dist/tools/files/internal/validation.d.ts.map +0 -1
- package/dist/tools/files/internal/validation.js +0 -39
- package/dist/tools/files/internal/validation.js.map +0 -1
- package/dist/tools/files/types.d.ts +0 -6
- package/dist/tools/files/types.d.ts.map +0 -1
- package/dist/tools/files/types.js +0 -6
- package/dist/tools/files/types.js.map +0 -1
- package/dist/tools/help-queries.d.ts +0 -130
- package/dist/tools/help-queries.d.ts.map +0 -1
- package/dist/tools/help-queries.js +0 -411
- package/dist/tools/help-queries.js.map +0 -1
- package/dist/tools/tasks/actions/add-dependency.d.ts +0 -12
- package/dist/tools/tasks/actions/add-dependency.d.ts.map +0 -1
- package/dist/tools/tasks/actions/add-dependency.js +0 -129
- package/dist/tools/tasks/actions/add-dependency.js.map +0 -1
- package/dist/tools/tasks/actions/archive.d.ts +0 -11
- package/dist/tools/tasks/actions/archive.d.ts.map +0 -1
- package/dist/tools/tasks/actions/archive.js +0 -58
- package/dist/tools/tasks/actions/archive.js.map +0 -1
- package/dist/tools/tasks/actions/create-batch.d.ts +0 -19
- package/dist/tools/tasks/actions/create-batch.d.ts.map +0 -1
- package/dist/tools/tasks/actions/create-batch.js +0 -103
- package/dist/tools/tasks/actions/create-batch.js.map +0 -1
- package/dist/tools/tasks/actions/create.d.ts +0 -16
- package/dist/tools/tasks/actions/create.d.ts.map +0 -1
- package/dist/tools/tasks/actions/create.js +0 -163
- package/dist/tools/tasks/actions/create.js.map +0 -1
- package/dist/tools/tasks/actions/get-dependencies.d.ts +0 -12
- package/dist/tools/tasks/actions/get-dependencies.d.ts.map +0 -1
- package/dist/tools/tasks/actions/get-dependencies.js +0 -41
- package/dist/tools/tasks/actions/get-dependencies.js.map +0 -1
- package/dist/tools/tasks/actions/get-pruned-files.d.ts +0 -13
- package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +0 -1
- package/dist/tools/tasks/actions/get-pruned-files.js +0 -45
- package/dist/tools/tasks/actions/get-pruned-files.js.map +0 -1
- package/dist/tools/tasks/actions/get.d.ts +0 -12
- package/dist/tools/tasks/actions/get.d.ts.map +0 -1
- package/dist/tools/tasks/actions/get.js +0 -84
- package/dist/tools/tasks/actions/get.js.map +0 -1
- package/dist/tools/tasks/actions/link-pruned-file.d.ts +0 -14
- package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +0 -1
- package/dist/tools/tasks/actions/link-pruned-file.js +0 -68
- package/dist/tools/tasks/actions/link-pruned-file.js.map +0 -1
- package/dist/tools/tasks/actions/link.d.ts +0 -14
- package/dist/tools/tasks/actions/link.d.ts.map +0 -1
- package/dist/tools/tasks/actions/link.js +0 -120
- package/dist/tools/tasks/actions/link.js.map +0 -1
- package/dist/tools/tasks/actions/list.d.ts +0 -17
- package/dist/tools/tasks/actions/list.d.ts.map +0 -1
- package/dist/tools/tasks/actions/list.js +0 -100
- package/dist/tools/tasks/actions/list.js.map +0 -1
- package/dist/tools/tasks/actions/move.d.ts +0 -13
- package/dist/tools/tasks/actions/move.d.ts.map +0 -1
- package/dist/tools/tasks/actions/move.js +0 -91
- package/dist/tools/tasks/actions/move.js.map +0 -1
- package/dist/tools/tasks/actions/remove-dependency.d.ts +0 -12
- package/dist/tools/tasks/actions/remove-dependency.d.ts.map +0 -1
- package/dist/tools/tasks/actions/remove-dependency.js +0 -36
- package/dist/tools/tasks/actions/remove-dependency.js.map +0 -1
- package/dist/tools/tasks/actions/update.d.ts +0 -10
- package/dist/tools/tasks/actions/update.d.ts.map +0 -1
- package/dist/tools/tasks/actions/update.js +0 -183
- package/dist/tools/tasks/actions/update.js.map +0 -1
- package/dist/tools/tasks/actions/watch-files.d.ts +0 -14
- package/dist/tools/tasks/actions/watch-files.d.ts.map +0 -1
- package/dist/tools/tasks/actions/watch-files.js +0 -127
- package/dist/tools/tasks/actions/watch-files.js.map +0 -1
- package/dist/tools/tasks/help/example.d.ts +0 -8
- package/dist/tools/tasks/help/example.d.ts.map +0 -1
- package/dist/tools/tasks/help/example.js +0 -225
- package/dist/tools/tasks/help/example.js.map +0 -1
- package/dist/tools/tasks/help/help.d.ts +0 -8
- package/dist/tools/tasks/help/help.d.ts.map +0 -1
- package/dist/tools/tasks/help/help.js +0 -307
- package/dist/tools/tasks/help/help.js.map +0 -1
- package/dist/tools/tasks/help/use-case.d.ts +0 -11
- package/dist/tools/tasks/help/use-case.d.ts.map +0 -1
- package/dist/tools/tasks/help/use-case.js +0 -767
- package/dist/tools/tasks/help/use-case.js.map +0 -1
- package/dist/tools/tasks/index.d.ts +0 -28
- package/dist/tools/tasks/index.d.ts.map +0 -1
- package/dist/tools/tasks/index.js +0 -33
- package/dist/tools/tasks/index.js.map +0 -1
- package/dist/tools/tasks/internal/state-machine.d.ts +0 -16
- package/dist/tools/tasks/internal/state-machine.d.ts.map +0 -1
- package/dist/tools/tasks/internal/state-machine.js +0 -36
- package/dist/tools/tasks/internal/state-machine.js.map +0 -1
- package/dist/tools/tasks/internal/task-queries.d.ts +0 -12
- package/dist/tools/tasks/internal/task-queries.d.ts.map +0 -1
- package/dist/tools/tasks/internal/task-queries.js +0 -53
- package/dist/tools/tasks/internal/task-queries.js.map +0 -1
- package/dist/tools/tasks/internal/validation.d.ts +0 -47
- package/dist/tools/tasks/internal/validation.d.ts.map +0 -1
- package/dist/tools/tasks/internal/validation.js +0 -261
- package/dist/tools/tasks/internal/validation.js.map +0 -1
- package/dist/tools/tasks/types.d.ts +0 -80
- package/dist/tools/tasks/types.d.ts.map +0 -1
- package/dist/tools/tasks/types.js +0 -68
- package/dist/tools/tasks/types.js.map +0 -1
- package/dist/tools/tasks/watcher/status.d.ts +0 -9
- package/dist/tools/tasks/watcher/status.d.ts.map +0 -1
- package/dist/tools/tasks/watcher/status.js +0 -130
- package/dist/tools/tasks/watcher/status.js.map +0 -1
- package/dist/tools/tasks.d.ts +0 -16
- package/dist/tools/tasks.d.ts.map +0 -1
- package/dist/tools/tasks.js +0 -17
- package/dist/tools/tasks.js.map +0 -1
- package/dist/utils/action-specs/file-specs.d.ts +0 -9
- package/dist/utils/action-specs/file-specs.d.ts.map +0 -1
- package/dist/utils/action-specs/file-specs.js +0 -54
- package/dist/utils/action-specs/file-specs.js.map +0 -1
- package/dist/utils/action-specs/task-specs.d.ts +0 -9
- package/dist/utils/action-specs/task-specs.d.ts.map +0 -1
- package/dist/utils/action-specs/task-specs.js +0 -143
- package/dist/utils/action-specs/task-specs.js.map +0 -1
- package/dist/utils/cleanup.d.ts +0 -69
- package/dist/utils/cleanup.d.ts.map +0 -1
- package/dist/utils/cleanup.js +0 -102
- package/dist/utils/cleanup.js.map +0 -1
- package/dist/utils/file-pruning.d.ts +0 -93
- package/dist/utils/file-pruning.d.ts.map +0 -1
- package/dist/utils/file-pruning.js +0 -194
- package/dist/utils/file-pruning.js.map +0 -1
- package/dist/utils/importer/topological-sort.d.ts +0 -61
- package/dist/utils/importer/topological-sort.d.ts.map +0 -1
- package/dist/utils/importer/topological-sort.js +0 -143
- package/dist/utils/importer/topological-sort.js.map +0 -1
- package/dist/utils/retention.d.ts +0 -65
- package/dist/utils/retention.d.ts.map +0 -1
- package/dist/utils/retention.js +0 -156
- package/dist/utils/retention.js.map +0 -1
- package/dist/utils/task-stale-detection.d.ts +0 -98
- package/dist/utils/task-stale-detection.d.ts.map +0 -1
- package/dist/utils/task-stale-detection.js +0 -479
- package/dist/utils/task-stale-detection.js.map +0 -1
- package/dist/watcher/file-watcher.d.ts +0 -131
- package/dist/watcher/file-watcher.d.ts.map +0 -1
- package/dist/watcher/file-watcher.js +0 -730
- package/dist/watcher/file-watcher.js.map +0 -1
- package/dist/watcher/test-executor.d.ts +0 -23
- package/dist/watcher/test-executor.d.ts.map +0 -1
- package/dist/watcher/test-executor.js +0 -226
- package/dist/watcher/test-executor.js.map +0 -1
- package/docs/TASK_SYSTEM_DEPRECATED.md +0 -88
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var http_client_exports = {};
|
|
20
|
+
__export(http_client_exports, {
|
|
21
|
+
HttpClient: () => HttpClient,
|
|
22
|
+
resolveProject: () => resolveProject
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(http_client_exports);
|
|
25
|
+
var import_api_error = require("../errors/api-error");
|
|
26
|
+
var import_constants = require("../config/constants");
|
|
27
|
+
class HttpClient {
|
|
28
|
+
constructor(authManager, projectName, projectId, connectionIdentity) {
|
|
29
|
+
this.authManager = authManager;
|
|
30
|
+
this.projectName = projectName;
|
|
31
|
+
this.projectId = projectId;
|
|
32
|
+
this.connectionIdentity = connectionIdentity;
|
|
33
|
+
}
|
|
34
|
+
agentName;
|
|
35
|
+
/**
|
|
36
|
+
* Set agent name for X-Agent header (called after MCP handshake)
|
|
37
|
+
*/
|
|
38
|
+
setAgentName(name) {
|
|
39
|
+
this.agentName = name;
|
|
40
|
+
}
|
|
41
|
+
async post(path, body) {
|
|
42
|
+
const url = `${import_constants.API_ENDPOINT}${path}`;
|
|
43
|
+
const requestBody = {
|
|
44
|
+
project_id: this.projectId,
|
|
45
|
+
project_name: this.projectName,
|
|
46
|
+
// Connection identification for seat-based billing (v5.0.0+)
|
|
47
|
+
...this.connectionIdentity && {
|
|
48
|
+
connection_hash: this.connectionIdentity.connectionHash,
|
|
49
|
+
connection_display: {
|
|
50
|
+
environment: this.connectionIdentity.environment,
|
|
51
|
+
path_suffix: this.connectionIdentity.pathSuffix
|
|
52
|
+
}
|
|
53
|
+
},
|
|
54
|
+
...body
|
|
55
|
+
};
|
|
56
|
+
return await this.executeWithRetry(async () => {
|
|
57
|
+
const controller = new AbortController();
|
|
58
|
+
const timeoutId = setTimeout(() => controller.abort(), import_constants.REQUEST_TIMEOUT);
|
|
59
|
+
try {
|
|
60
|
+
const response = await fetch(url, {
|
|
61
|
+
method: "POST",
|
|
62
|
+
headers: {
|
|
63
|
+
Authorization: this.authManager.getAuthorizationHeader(),
|
|
64
|
+
"Content-Type": "application/json",
|
|
65
|
+
...this.agentName && { "X-Agent": this.agentName }
|
|
66
|
+
},
|
|
67
|
+
body: JSON.stringify(requestBody),
|
|
68
|
+
signal: controller.signal
|
|
69
|
+
});
|
|
70
|
+
return await this.handleResponse(response);
|
|
71
|
+
} finally {
|
|
72
|
+
clearTimeout(timeoutId);
|
|
73
|
+
}
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
async get(path) {
|
|
77
|
+
const url = `${import_constants.API_ENDPOINT}${path}`;
|
|
78
|
+
return await this.executeWithRetry(async () => {
|
|
79
|
+
const controller = new AbortController();
|
|
80
|
+
const timeoutId = setTimeout(() => controller.abort(), import_constants.REQUEST_TIMEOUT);
|
|
81
|
+
try {
|
|
82
|
+
const response = await fetch(url, {
|
|
83
|
+
method: "GET",
|
|
84
|
+
headers: {
|
|
85
|
+
Authorization: this.authManager.getAuthorizationHeader(),
|
|
86
|
+
...this.agentName && { "X-Agent": this.agentName }
|
|
87
|
+
},
|
|
88
|
+
signal: controller.signal
|
|
89
|
+
});
|
|
90
|
+
return await this.handleResponse(response);
|
|
91
|
+
} finally {
|
|
92
|
+
clearTimeout(timeoutId);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
}
|
|
96
|
+
async executeWithRetry(operation, retryCount = 0) {
|
|
97
|
+
try {
|
|
98
|
+
return await operation();
|
|
99
|
+
} catch (error) {
|
|
100
|
+
if (error instanceof Error && error.name === "AbortError") {
|
|
101
|
+
throw new import_api_error.ApiError("TIMEOUT", "Request timed out", 408);
|
|
102
|
+
}
|
|
103
|
+
if (error instanceof TypeError && error.message.includes("fetch")) {
|
|
104
|
+
throw new import_api_error.ApiError(
|
|
105
|
+
"NETWORK_ERROR",
|
|
106
|
+
`Network error: ${error.message}`,
|
|
107
|
+
0
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
if (error instanceof import_api_error.ApiError && error.statusCode === 429 && retryCount < import_constants.MAX_RETRIES) {
|
|
111
|
+
const delay = this.calculateRetryDelay(
|
|
112
|
+
retryCount,
|
|
113
|
+
error.details?.retryAfter
|
|
114
|
+
);
|
|
115
|
+
await this.sleep(delay);
|
|
116
|
+
return this.executeWithRetry(operation, retryCount + 1);
|
|
117
|
+
}
|
|
118
|
+
throw error;
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
async handleResponse(response) {
|
|
122
|
+
let body;
|
|
123
|
+
try {
|
|
124
|
+
body = await response.json();
|
|
125
|
+
} catch {
|
|
126
|
+
if (!response.ok) {
|
|
127
|
+
throw new import_api_error.ApiError(
|
|
128
|
+
"INTERNAL_ERROR",
|
|
129
|
+
`HTTP ${response.status}: ${response.statusText}`,
|
|
130
|
+
response.status
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
throw new import_api_error.ApiError(
|
|
134
|
+
"INVALID_RESPONSE",
|
|
135
|
+
"Invalid JSON response from server",
|
|
136
|
+
500
|
|
137
|
+
);
|
|
138
|
+
}
|
|
139
|
+
if (!response.ok) {
|
|
140
|
+
const retryAfter = response.headers.get("Retry-After");
|
|
141
|
+
throw new import_api_error.ApiError(
|
|
142
|
+
body.error?.code || "UNKNOWN_ERROR",
|
|
143
|
+
body.error?.message || `HTTP ${response.status}`,
|
|
144
|
+
response.status,
|
|
145
|
+
retryAfter ? { retryAfter } : void 0
|
|
146
|
+
);
|
|
147
|
+
}
|
|
148
|
+
if (!body.success) {
|
|
149
|
+
throw new import_api_error.ApiError(
|
|
150
|
+
body.error?.code || "API_ERROR",
|
|
151
|
+
body.error?.message || "Unknown API error",
|
|
152
|
+
500
|
|
153
|
+
);
|
|
154
|
+
}
|
|
155
|
+
return body.data;
|
|
156
|
+
}
|
|
157
|
+
calculateRetryDelay(retryCount, retryAfter) {
|
|
158
|
+
if (retryAfter) {
|
|
159
|
+
const seconds = parseInt(retryAfter, 10);
|
|
160
|
+
if (!isNaN(seconds) && seconds > 0) {
|
|
161
|
+
return Math.min(seconds * 1e3, import_constants.MAX_RETRY_DELAY);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
return Math.min(
|
|
165
|
+
import_constants.INITIAL_RETRY_DELAY * Math.pow(2, retryCount),
|
|
166
|
+
import_constants.MAX_RETRY_DELAY
|
|
167
|
+
);
|
|
168
|
+
}
|
|
169
|
+
sleep(ms) {
|
|
170
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
async function resolveProject(apiKey, projectName) {
|
|
174
|
+
const url = `${import_constants.API_ENDPOINT}/api/v1/project/resolve`;
|
|
175
|
+
const controller = new AbortController();
|
|
176
|
+
const timeoutId = setTimeout(() => controller.abort(), import_constants.REQUEST_TIMEOUT);
|
|
177
|
+
try {
|
|
178
|
+
const response = await fetch(url, {
|
|
179
|
+
method: "POST",
|
|
180
|
+
headers: {
|
|
181
|
+
Authorization: `Bearer ${apiKey}`,
|
|
182
|
+
"Content-Type": "application/json"
|
|
183
|
+
},
|
|
184
|
+
body: JSON.stringify({ project_name: projectName }),
|
|
185
|
+
signal: controller.signal
|
|
186
|
+
});
|
|
187
|
+
if (!response.ok) {
|
|
188
|
+
let errorMessage = `HTTP ${response.status}: ${response.statusText}`;
|
|
189
|
+
try {
|
|
190
|
+
const body2 = await response.json();
|
|
191
|
+
errorMessage = body2.error?.message || errorMessage;
|
|
192
|
+
} catch {
|
|
193
|
+
}
|
|
194
|
+
throw new import_api_error.ApiError("PROJECT_RESOLVE_FAILED", errorMessage, response.status);
|
|
195
|
+
}
|
|
196
|
+
const body = await response.json();
|
|
197
|
+
if (!body.success || !body.data?.project_id) {
|
|
198
|
+
throw new import_api_error.ApiError(
|
|
199
|
+
"PROJECT_RESOLVE_FAILED",
|
|
200
|
+
body.error?.message || "Failed to resolve project",
|
|
201
|
+
500
|
|
202
|
+
);
|
|
203
|
+
}
|
|
204
|
+
return body.data.project_id;
|
|
205
|
+
} catch (error) {
|
|
206
|
+
if (error instanceof import_api_error.ApiError) {
|
|
207
|
+
throw error;
|
|
208
|
+
}
|
|
209
|
+
if (error instanceof Error && error.name === "AbortError") {
|
|
210
|
+
throw new import_api_error.ApiError("TIMEOUT", "Project resolve request timed out", 408);
|
|
211
|
+
}
|
|
212
|
+
throw new import_api_error.ApiError(
|
|
213
|
+
"NETWORK_ERROR",
|
|
214
|
+
`Failed to resolve project: ${error instanceof Error ? error.message : String(error)}`,
|
|
215
|
+
0
|
|
216
|
+
);
|
|
217
|
+
} finally {
|
|
218
|
+
clearTimeout(timeoutId);
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
222
|
+
0 && (module.exports = {
|
|
223
|
+
HttpClient,
|
|
224
|
+
resolveProject
|
|
225
|
+
});
|
|
226
|
+
//# sourceMappingURL=http-client.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/client/http-client.ts"],
|
|
4
|
+
"sourcesContent": ["import { AuthManager } from '../auth/auth-manager';\r\nimport { ApiError } from '../errors/api-error';\r\nimport {\r\n API_ENDPOINT,\r\n MAX_RETRIES,\r\n INITIAL_RETRY_DELAY,\r\n MAX_RETRY_DELAY,\r\n REQUEST_TIMEOUT,\r\n} from '../config/constants';\r\nimport type { ApiResponse, ConnectionIdentity, ProjectResolveResponse } from './types';\r\n\r\nexport class HttpClient {\r\n private agentName?: string;\r\n\r\n constructor(\r\n private authManager: AuthManager,\r\n private projectName?: string,\r\n private projectId?: string,\r\n private connectionIdentity?: ConnectionIdentity\r\n ) {}\r\n\r\n /**\r\n * Set agent name for X-Agent header (called after MCP handshake)\r\n */\r\n setAgentName(name: string): void {\r\n this.agentName = name;\r\n }\r\n\r\n async post<T>(path: string, body: Record<string, unknown>): Promise<T> {\r\n const url = `${API_ENDPOINT}${path}`;\r\n const requestBody = {\r\n project_id: this.projectId,\r\n project_name: this.projectName,\r\n // Connection identification for seat-based billing (v5.0.0+)\r\n ...(this.connectionIdentity && {\r\n connection_hash: this.connectionIdentity.connectionHash,\r\n connection_display: {\r\n environment: this.connectionIdentity.environment,\r\n path_suffix: this.connectionIdentity.pathSuffix,\r\n },\r\n }),\r\n ...body,\r\n };\r\n\r\n return await this.executeWithRetry<T>(async () => {\r\n const controller = new AbortController();\r\n const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT);\r\n\r\n try {\r\n const response = await fetch(url, {\r\n method: 'POST',\r\n headers: {\r\n Authorization: this.authManager.getAuthorizationHeader(),\r\n 'Content-Type': 'application/json',\r\n ...(this.agentName && { 'X-Agent': this.agentName }),\r\n },\r\n body: JSON.stringify(requestBody),\r\n signal: controller.signal,\r\n });\r\n\r\n return await this.handleResponse<T>(response);\r\n } finally {\r\n clearTimeout(timeoutId);\r\n }\r\n });\r\n }\r\n\r\n async get<T>(path: string): Promise<T> {\r\n const url = `${API_ENDPOINT}${path}`;\r\n\r\n return await this.executeWithRetry<T>(async () => {\r\n const controller = new AbortController();\r\n const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT);\r\n\r\n try {\r\n const response = await fetch(url, {\r\n method: 'GET',\r\n headers: {\r\n Authorization: this.authManager.getAuthorizationHeader(),\r\n ...(this.agentName && { 'X-Agent': this.agentName }),\r\n },\r\n signal: controller.signal,\r\n });\r\n\r\n return await this.handleResponse<T>(response);\r\n } finally {\r\n clearTimeout(timeoutId);\r\n }\r\n });\r\n }\r\n\r\n private async executeWithRetry<T>(\r\n operation: () => Promise<T>,\r\n retryCount = 0\r\n ): Promise<T> {\r\n try {\r\n return await operation();\r\n } catch (error) {\r\n // Handle abort error (timeout)\r\n if (error instanceof Error && error.name === 'AbortError') {\r\n throw new ApiError('TIMEOUT', 'Request timed out', 408);\r\n }\r\n\r\n // Handle network errors\r\n if (error instanceof TypeError && error.message.includes('fetch')) {\r\n throw new ApiError(\r\n 'NETWORK_ERROR',\r\n `Network error: ${error.message}`,\r\n 0\r\n );\r\n }\r\n\r\n // Retry only on 429 (rate limited)\r\n if (\r\n error instanceof ApiError &&\r\n error.statusCode === 429 &&\r\n retryCount < MAX_RETRIES\r\n ) {\r\n const delay = this.calculateRetryDelay(\r\n retryCount,\r\n error.details?.retryAfter as string | undefined\r\n );\r\n await this.sleep(delay);\r\n return this.executeWithRetry(operation, retryCount + 1);\r\n }\r\n\r\n throw error;\r\n }\r\n }\r\n\r\n private async handleResponse<T>(response: Response): Promise<T> {\r\n // Try to parse response body\r\n let body: ApiResponse<T>;\r\n try {\r\n body = (await response.json()) as ApiResponse<T>;\r\n } catch {\r\n // If response is not JSON\r\n if (!response.ok) {\r\n throw new ApiError(\r\n 'INTERNAL_ERROR',\r\n `HTTP ${response.status}: ${response.statusText}`,\r\n response.status\r\n );\r\n }\r\n throw new ApiError(\r\n 'INVALID_RESPONSE',\r\n 'Invalid JSON response from server',\r\n 500\r\n );\r\n }\r\n\r\n // Handle HTTP errors\r\n if (!response.ok) {\r\n const retryAfter = response.headers.get('Retry-After');\r\n throw new ApiError(\r\n body.error?.code || 'UNKNOWN_ERROR',\r\n body.error?.message || `HTTP ${response.status}`,\r\n response.status,\r\n retryAfter ? { retryAfter } : undefined\r\n );\r\n }\r\n\r\n // Handle API-level errors\r\n if (!body.success) {\r\n throw new ApiError(\r\n body.error?.code || 'API_ERROR',\r\n body.error?.message || 'Unknown API error',\r\n 500\r\n );\r\n }\r\n\r\n return body.data as T;\r\n }\r\n\r\n private calculateRetryDelay(\r\n retryCount: number,\r\n retryAfter?: string\r\n ): number {\r\n // Use Retry-After header if available\r\n if (retryAfter) {\r\n const seconds = parseInt(retryAfter, 10);\r\n if (!isNaN(seconds) && seconds > 0) {\r\n return Math.min(seconds * 1000, MAX_RETRY_DELAY);\r\n }\r\n }\r\n\r\n // Exponential backoff: 1s, 2s, 4s, ...\r\n return Math.min(\r\n INITIAL_RETRY_DELAY * Math.pow(2, retryCount),\r\n MAX_RETRY_DELAY\r\n );\r\n }\r\n\r\n private sleep(ms: number): Promise<void> {\r\n return new Promise((resolve) => setTimeout(resolve, ms));\r\n }\r\n}\r\n\r\n/**\r\n * Resolve project name to UUID via /api/v1/project/resolve\r\n *\r\n * This is a standalone function used before HttpClient is fully initialized,\r\n * since we need the projectId to construct HttpClient.\r\n *\r\n * @param apiKey - API key for authentication\r\n * @param projectName - Project name from config.toml\r\n * @returns Resolved project UUID\r\n * @throws ApiError on authentication or resolution failure\r\n */\r\nexport async function resolveProject(\r\n apiKey: string,\r\n projectName: string\r\n): Promise<string> {\r\n const url = `${API_ENDPOINT}/api/v1/project/resolve`;\r\n const controller = new AbortController();\r\n const timeoutId = setTimeout(() => controller.abort(), REQUEST_TIMEOUT);\r\n\r\n try {\r\n const response = await fetch(url, {\r\n method: 'POST',\r\n headers: {\r\n Authorization: `Bearer ${apiKey}`,\r\n 'Content-Type': 'application/json',\r\n },\r\n body: JSON.stringify({ project_name: projectName }),\r\n signal: controller.signal,\r\n });\r\n\r\n if (!response.ok) {\r\n let errorMessage = `HTTP ${response.status}: ${response.statusText}`;\r\n try {\r\n const body = (await response.json()) as ApiResponse<unknown>;\r\n errorMessage = body.error?.message || errorMessage;\r\n } catch {\r\n // Ignore JSON parse error\r\n }\r\n throw new ApiError('PROJECT_RESOLVE_FAILED', errorMessage, response.status);\r\n }\r\n\r\n const body = (await response.json()) as ApiResponse<ProjectResolveResponse>;\r\n if (!body.success || !body.data?.project_id) {\r\n throw new ApiError(\r\n 'PROJECT_RESOLVE_FAILED',\r\n body.error?.message || 'Failed to resolve project',\r\n 500\r\n );\r\n }\r\n\r\n return body.data.project_id;\r\n } catch (error) {\r\n if (error instanceof ApiError) {\r\n throw error;\r\n }\r\n if (error instanceof Error && error.name === 'AbortError') {\r\n throw new ApiError('TIMEOUT', 'Project resolve request timed out', 408);\r\n }\r\n throw new ApiError(\r\n 'NETWORK_ERROR',\r\n `Failed to resolve project: ${error instanceof Error ? error.message : String(error)}`,\r\n 0\r\n );\r\n } finally {\r\n clearTimeout(timeoutId);\r\n }\r\n}\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["body"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detected environment types for connection identification
|
|
3
|
+
* @since v5.0.0
|
|
4
|
+
*/
|
|
5
|
+
export type Environment = 'windows' | 'macos' | 'linux' | 'wsl' | 'docker' | 'unknown';
|
|
6
|
+
/**
|
|
7
|
+
* Connection identity for SaaS backend.
|
|
8
|
+
* Provides unique identification for each connection.
|
|
9
|
+
*
|
|
10
|
+
* @since v5.0.0
|
|
11
|
+
*/
|
|
12
|
+
export interface ConnectionIdentity {
|
|
13
|
+
/** SHA256 hash for internal identification (Base64URL, 43 chars) */
|
|
14
|
+
connectionHash: string;
|
|
15
|
+
/** Detected environment for display (windows, macos, linux, wsl, docker) */
|
|
16
|
+
environment: Environment;
|
|
17
|
+
/** Last two path segments for display (e.g., 'RustroverProjects/my-app') */
|
|
18
|
+
pathSuffix: string;
|
|
19
|
+
/** Full path (stored locally, not sent to server) */
|
|
20
|
+
fullPath: string;
|
|
21
|
+
}
|
|
22
|
+
export interface CloudConfig {
|
|
23
|
+
apiKey: string;
|
|
24
|
+
/** Project name from .sqlew/config.toml [project].name */
|
|
25
|
+
projectName?: string;
|
|
26
|
+
/** Resolved project UUID (cached in ~/.sqlew.env) */
|
|
27
|
+
projectId?: string;
|
|
28
|
+
/** Connection identity for SaaS mode (v5.0.0+) */
|
|
29
|
+
connectionIdentity?: ConnectionIdentity;
|
|
30
|
+
/** MCP client name for audit (e.g., "claude-code", "cursor") */
|
|
31
|
+
agentName?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface ProjectResolveResponse {
|
|
34
|
+
project_id: string;
|
|
35
|
+
}
|
|
36
|
+
export interface HealthCheckResult {
|
|
37
|
+
ok: boolean;
|
|
38
|
+
latency: number;
|
|
39
|
+
message?: string;
|
|
40
|
+
}
|
|
41
|
+
export type BackendType = 'local' | 'saas';
|
|
42
|
+
export interface ToolBackend {
|
|
43
|
+
execute<TResponse = unknown>(tool: string, action: string, params: Record<string, unknown>): Promise<TResponse>;
|
|
44
|
+
healthCheck(): Promise<HealthCheckResult>;
|
|
45
|
+
disconnect(): Promise<void>;
|
|
46
|
+
readonly backendType: BackendType;
|
|
47
|
+
readonly pluginName?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface PluginModule {
|
|
50
|
+
createBackend(config: CloudConfig): ToolBackend;
|
|
51
|
+
version: string;
|
|
52
|
+
minVersion?: string;
|
|
53
|
+
}
|
|
54
|
+
export interface ApiResponse<T = unknown> {
|
|
55
|
+
success: boolean;
|
|
56
|
+
data?: T;
|
|
57
|
+
error?: {
|
|
58
|
+
code: string;
|
|
59
|
+
message: string;
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/client/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,OAAO,GACP,OAAO,GACP,KAAK,GACL,QAAQ,GACR,SAAS,CAAC;AAEd;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,cAAc,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,WAAW,EAAE,WAAW,CAAC;IACzB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,0DAA0D;IAC1D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,gEAAgE;IAChE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAG3C,MAAM,WAAW,WAAW;IAC1B,OAAO,CAAC,SAAS,GAAG,OAAO,EACzB,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,OAAO,CAAC,SAAS,CAAC,CAAC;IACtB,WAAW,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC1C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAGD,MAAM,WAAW,YAAY;IAC3B,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAAC;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAGD,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __copyProps = (to, from, except, desc) => {
|
|
7
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
8
|
+
for (let key of __getOwnPropNames(from))
|
|
9
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
10
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
11
|
+
}
|
|
12
|
+
return to;
|
|
13
|
+
};
|
|
14
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
15
|
+
var types_exports = {};
|
|
16
|
+
module.exports = __toCommonJS(types_exports);
|
|
17
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/client/types.ts"],
|
|
4
|
+
"sourcesContent": ["/**\r\n * Detected environment types for connection identification\r\n * @since v5.0.0\r\n */\r\nexport type Environment =\r\n | 'windows'\r\n | 'macos'\r\n | 'linux'\r\n | 'wsl'\r\n | 'docker'\r\n | 'unknown';\r\n\r\n/**\r\n * Connection identity for SaaS backend.\r\n * Provides unique identification for each connection.\r\n *\r\n * @since v5.0.0\r\n */\r\nexport interface ConnectionIdentity {\r\n /** SHA256 hash for internal identification (Base64URL, 43 chars) */\r\n connectionHash: string;\r\n /** Detected environment for display (windows, macos, linux, wsl, docker) */\r\n environment: Environment;\r\n /** Last two path segments for display (e.g., 'RustroverProjects/my-app') */\r\n pathSuffix: string;\r\n /** Full path (stored locally, not sent to server) */\r\n fullPath: string;\r\n}\r\n\r\n// Configuration passed from mcp-sqlew\r\nexport interface CloudConfig {\r\n apiKey: string;\r\n /** Project name from .sqlew/config.toml [project].name */\r\n projectName?: string;\r\n /** Resolved project UUID (cached in ~/.sqlew.env) */\r\n projectId?: string;\r\n /** Connection identity for SaaS mode (v5.0.0+) */\r\n connectionIdentity?: ConnectionIdentity;\r\n /** MCP client name for audit (e.g., \"claude-code\", \"cursor\") */\r\n agentName?: string;\r\n}\r\n\r\n// Project resolve response\r\nexport interface ProjectResolveResponse {\r\n project_id: string;\r\n}\r\n\r\n// Health check result\r\nexport interface HealthCheckResult {\r\n ok: boolean;\r\n latency: number;\r\n message?: string;\r\n}\r\n\r\n// Backend type\r\nexport type BackendType = 'local' | 'saas';\r\n\r\n// ToolBackend interface (compatible with mcp-sqlew)\r\nexport interface ToolBackend {\r\n execute<TResponse = unknown>(\r\n tool: string,\r\n action: string,\r\n params: Record<string, unknown>\r\n ): Promise<TResponse>;\r\n healthCheck(): Promise<HealthCheckResult>;\r\n disconnect(): Promise<void>;\r\n readonly backendType: BackendType;\r\n readonly pluginName?: string;\r\n}\r\n\r\n// Plugin module interface\r\nexport interface PluginModule {\r\n createBackend(config: CloudConfig): ToolBackend;\r\n version: string;\r\n minVersion?: string;\r\n}\r\n\r\n// API response format\r\nexport interface ApiResponse<T = unknown> {\r\n success: boolean;\r\n data?: T;\r\n error?: {\r\n code: string;\r\n message: string;\r\n };\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;AAAA;AAAA;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare const API_ENDPOINT = "https://api.sqlew.io";
|
|
2
|
+
export declare const MAX_RETRIES = 3;
|
|
3
|
+
export declare const INITIAL_RETRY_DELAY = 1000;
|
|
4
|
+
export declare const MAX_RETRY_DELAY = 30000;
|
|
5
|
+
export declare const REQUEST_TIMEOUT = 30000;
|
|
6
|
+
export declare const SUPPORTED_TOOLS: readonly ["decision", "constraint", "suggest"];
|
|
7
|
+
export type SupportedTool = (typeof SUPPORTED_TOOLS)[number];
|
|
8
|
+
export declare const LOCAL_ONLY_ACTIONS: readonly ["decision.help", "decision.example", "decision.use_case", "constraint.suggest_pending", "constraint.help", "constraint.example", "constraint.use_case", "suggest.help"];
|
|
9
|
+
export type LocalOnlyAction = (typeof LOCAL_ONLY_ACTIONS)[number];
|
|
10
|
+
/**
|
|
11
|
+
* Check if a tool.action combination should be handled locally
|
|
12
|
+
*/
|
|
13
|
+
export declare function isLocalOnlyAction(tool: string, action: string): boolean;
|
|
14
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/config/constants.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,yBAAyB,CAAC;AAGnD,eAAO,MAAM,WAAW,IAAI,CAAC;AAC7B,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,eAAe,QAAQ,CAAC;AACrC,eAAO,MAAM,eAAe,QAAQ,CAAC;AAIrC,eAAO,MAAM,eAAe,gDAIlB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAI7D,eAAO,MAAM,kBAAkB,mLAYrB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAEvE"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var constants_exports = {};
|
|
20
|
+
__export(constants_exports, {
|
|
21
|
+
API_ENDPOINT: () => API_ENDPOINT,
|
|
22
|
+
INITIAL_RETRY_DELAY: () => INITIAL_RETRY_DELAY,
|
|
23
|
+
LOCAL_ONLY_ACTIONS: () => LOCAL_ONLY_ACTIONS,
|
|
24
|
+
MAX_RETRIES: () => MAX_RETRIES,
|
|
25
|
+
MAX_RETRY_DELAY: () => MAX_RETRY_DELAY,
|
|
26
|
+
REQUEST_TIMEOUT: () => REQUEST_TIMEOUT,
|
|
27
|
+
SUPPORTED_TOOLS: () => SUPPORTED_TOOLS,
|
|
28
|
+
isLocalOnlyAction: () => isLocalOnlyAction
|
|
29
|
+
});
|
|
30
|
+
module.exports = __toCommonJS(constants_exports);
|
|
31
|
+
const API_ENDPOINT = "https://api.sqlew.io";
|
|
32
|
+
const MAX_RETRIES = 3;
|
|
33
|
+
const INITIAL_RETRY_DELAY = 1e3;
|
|
34
|
+
const MAX_RETRY_DELAY = 3e4;
|
|
35
|
+
const REQUEST_TIMEOUT = 3e4;
|
|
36
|
+
const SUPPORTED_TOOLS = [
|
|
37
|
+
"decision",
|
|
38
|
+
"constraint",
|
|
39
|
+
"suggest"
|
|
40
|
+
];
|
|
41
|
+
const LOCAL_ONLY_ACTIONS = [
|
|
42
|
+
// decision - TOML/hardcoded help
|
|
43
|
+
"decision.help",
|
|
44
|
+
"decision.example",
|
|
45
|
+
"decision.use_case",
|
|
46
|
+
// constraint - plan TOML cache + help
|
|
47
|
+
"constraint.suggest_pending",
|
|
48
|
+
"constraint.help",
|
|
49
|
+
"constraint.example",
|
|
50
|
+
"constraint.use_case",
|
|
51
|
+
// suggest - help only
|
|
52
|
+
"suggest.help"
|
|
53
|
+
];
|
|
54
|
+
function isLocalOnlyAction(tool, action) {
|
|
55
|
+
return LOCAL_ONLY_ACTIONS.includes(`${tool}.${action}`);
|
|
56
|
+
}
|
|
57
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
58
|
+
0 && (module.exports = {
|
|
59
|
+
API_ENDPOINT,
|
|
60
|
+
INITIAL_RETRY_DELAY,
|
|
61
|
+
LOCAL_ONLY_ACTIONS,
|
|
62
|
+
MAX_RETRIES,
|
|
63
|
+
MAX_RETRY_DELAY,
|
|
64
|
+
REQUEST_TIMEOUT,
|
|
65
|
+
SUPPORTED_TOOLS,
|
|
66
|
+
isLocalOnlyAction
|
|
67
|
+
});
|
|
68
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/config/constants.ts"],
|
|
4
|
+
"sourcesContent": ["// API endpoint is determined at build time for security\r\n// OSS side cannot modify this value\r\nexport const API_ENDPOINT = 'https://api.sqlew.io';\r\n\r\n// Retry configuration\r\nexport const MAX_RETRIES = 3;\r\nexport const INITIAL_RETRY_DELAY = 1000; // 1 second\r\nexport const MAX_RETRY_DELAY = 30000; // 30 seconds\r\nexport const REQUEST_TIMEOUT = 30000; // 30 seconds\r\n\r\n// Supported tools for SaaS backend\r\n// help, example, use_case are handled locally (TOML files, no DB access)\r\nexport const SUPPORTED_TOOLS = [\r\n 'decision',\r\n 'constraint',\r\n 'suggest',\r\n] as const;\r\n\r\nexport type SupportedTool = (typeof SUPPORTED_TOOLS)[number];\r\n\r\n// Actions that should be handled locally (no DB access required)\r\n// Format: \"tool.action\"\r\nexport const LOCAL_ONLY_ACTIONS = [\r\n // decision - TOML/hardcoded help\r\n 'decision.help',\r\n 'decision.example',\r\n 'decision.use_case',\r\n // constraint - plan TOML cache + help\r\n 'constraint.suggest_pending',\r\n 'constraint.help',\r\n 'constraint.example',\r\n 'constraint.use_case',\r\n // suggest - help only\r\n 'suggest.help',\r\n] as const;\r\n\r\nexport type LocalOnlyAction = (typeof LOCAL_ONLY_ACTIONS)[number];\r\n\r\n/**\r\n * Check if a tool.action combination should be handled locally\r\n */\r\nexport function isLocalOnlyAction(tool: string, action: string): boolean {\r\n return LOCAL_ONLY_ACTIONS.includes(`${tool}.${action}` as LocalOnlyAction);\r\n}\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEO,MAAM,eAAe;AAGrB,MAAM,cAAc;AACpB,MAAM,sBAAsB;AAC5B,MAAM,kBAAkB;AACxB,MAAM,kBAAkB;AAIxB,MAAM,kBAAkB;AAAA,EAC7B;AAAA,EACA;AAAA,EACA;AACF;AAMO,MAAM,qBAAqB;AAAA;AAAA,EAEhC;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA;AAAA,EAEA;AACF;AAOO,SAAS,kBAAkB,MAAc,QAAyB;AACvE,SAAO,mBAAmB,SAAS,GAAG,IAAI,IAAI,MAAM,EAAqB;AAC3E;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export declare class ApiError extends Error {
|
|
2
|
+
code: string;
|
|
3
|
+
statusCode: number;
|
|
4
|
+
details?: Record<string, unknown> | undefined;
|
|
5
|
+
constructor(code: string, message: string, statusCode: number, details?: Record<string, unknown> | undefined);
|
|
6
|
+
toJSON(): {
|
|
7
|
+
name: string;
|
|
8
|
+
code: string;
|
|
9
|
+
message: string;
|
|
10
|
+
statusCode: number;
|
|
11
|
+
details: Record<string, unknown> | undefined;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare const ERROR_CODES: {
|
|
15
|
+
readonly INVALID_REQUEST: 400;
|
|
16
|
+
readonly UNAUTHORIZED: 401;
|
|
17
|
+
readonly FORBIDDEN: 403;
|
|
18
|
+
readonly NOT_FOUND: 404;
|
|
19
|
+
readonly RATE_LIMITED: 429;
|
|
20
|
+
readonly INTERNAL_ERROR: 500;
|
|
21
|
+
readonly UNSUPPORTED_TOOL: 400;
|
|
22
|
+
readonly NETWORK_ERROR: 0;
|
|
23
|
+
readonly TIMEOUT: 408;
|
|
24
|
+
};
|
|
25
|
+
export type ErrorCode = keyof typeof ERROR_CODES;
|
|
26
|
+
//# sourceMappingURL=api-error.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api-error.d.ts","sourceRoot":"","sources":["../../src/errors/api-error.ts"],"names":[],"mappings":"AAAA,qBAAa,QAAS,SAAQ,KAAK;IAExB,IAAI,EAAE,MAAM;IAEZ,UAAU,EAAE,MAAM;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAHjC,IAAI,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACR,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;IAU1C,MAAM;;;;;;;CASP;AAGD,eAAO,MAAM,WAAW;;;;;;;;;;CAUd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,WAAW,CAAC"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var api_error_exports = {};
|
|
20
|
+
__export(api_error_exports, {
|
|
21
|
+
ApiError: () => ApiError,
|
|
22
|
+
ERROR_CODES: () => ERROR_CODES
|
|
23
|
+
});
|
|
24
|
+
module.exports = __toCommonJS(api_error_exports);
|
|
25
|
+
class ApiError extends Error {
|
|
26
|
+
constructor(code, message, statusCode, details) {
|
|
27
|
+
super(message);
|
|
28
|
+
this.code = code;
|
|
29
|
+
this.statusCode = statusCode;
|
|
30
|
+
this.details = details;
|
|
31
|
+
this.name = "ApiError";
|
|
32
|
+
if (Error.captureStackTrace) {
|
|
33
|
+
Error.captureStackTrace(this, ApiError);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
toJSON() {
|
|
37
|
+
return {
|
|
38
|
+
name: this.name,
|
|
39
|
+
code: this.code,
|
|
40
|
+
message: this.message,
|
|
41
|
+
statusCode: this.statusCode,
|
|
42
|
+
details: this.details
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
const ERROR_CODES = {
|
|
47
|
+
INVALID_REQUEST: 400,
|
|
48
|
+
UNAUTHORIZED: 401,
|
|
49
|
+
FORBIDDEN: 403,
|
|
50
|
+
NOT_FOUND: 404,
|
|
51
|
+
RATE_LIMITED: 429,
|
|
52
|
+
INTERNAL_ERROR: 500,
|
|
53
|
+
UNSUPPORTED_TOOL: 400,
|
|
54
|
+
NETWORK_ERROR: 0,
|
|
55
|
+
TIMEOUT: 408
|
|
56
|
+
};
|
|
57
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
58
|
+
0 && (module.exports = {
|
|
59
|
+
ApiError,
|
|
60
|
+
ERROR_CODES
|
|
61
|
+
});
|
|
62
|
+
//# sourceMappingURL=api-error.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../src/errors/api-error.ts"],
|
|
4
|
+
"sourcesContent": ["export class ApiError extends Error {\r\n constructor(\r\n public code: string,\r\n message: string,\r\n public statusCode: number,\r\n public details?: Record<string, unknown>\r\n ) {\r\n super(message);\r\n this.name = 'ApiError';\r\n // Maintain proper stack trace in V8 environments\r\n if (Error.captureStackTrace) {\r\n Error.captureStackTrace(this, ApiError);\r\n }\r\n }\r\n\r\n toJSON() {\r\n return {\r\n name: this.name,\r\n code: this.code,\r\n message: this.message,\r\n statusCode: this.statusCode,\r\n details: this.details,\r\n };\r\n }\r\n}\r\n\r\n// Error codes mapping\r\nexport const ERROR_CODES = {\r\n INVALID_REQUEST: 400,\r\n UNAUTHORIZED: 401,\r\n FORBIDDEN: 403,\r\n NOT_FOUND: 404,\r\n RATE_LIMITED: 429,\r\n INTERNAL_ERROR: 500,\r\n UNSUPPORTED_TOOL: 400,\r\n NETWORK_ERROR: 0,\r\n TIMEOUT: 408,\r\n} as const;\r\n\r\nexport type ErrorCode = keyof typeof ERROR_CODES;\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAO,MAAM,iBAAiB,MAAM;AAAA,EAClC,YACS,MACP,SACO,YACA,SACP;AACA,UAAM,OAAO;AALN;AAEA;AACA;AAGP,SAAK,OAAO;AAEZ,QAAI,MAAM,mBAAmB;AAC3B,YAAM,kBAAkB,MAAM,QAAQ;AAAA,IACxC;AAAA,EACF;AAAA,EAEA,SAAS;AACP,WAAO;AAAA,MACL,MAAM,KAAK;AAAA,MACX,MAAM,KAAK;AAAA,MACX,SAAS,KAAK;AAAA,MACd,YAAY,KAAK;AAAA,MACjB,SAAS,KAAK;AAAA,IAChB;AAAA,EACF;AACF;AAGO,MAAM,cAAc;AAAA,EACzB,iBAAiB;AAAA,EACjB,cAAc;AAAA,EACd,WAAW;AAAA,EACX,WAAW;AAAA,EACX,cAAc;AAAA,EACd,gBAAgB;AAAA,EAChB,kBAAkB;AAAA,EAClB,eAAe;AAAA,EACf,SAAS;AACX;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { resolveProject } from './client/http-client';
|
|
2
|
+
import type { CloudConfig, ToolBackend } from './client/types';
|
|
3
|
+
export { resolveProject };
|
|
4
|
+
/**
|
|
5
|
+
* Create a SaaS backend instance
|
|
6
|
+
*/
|
|
7
|
+
export declare function createBackend(config: CloudConfig): ToolBackend;
|
|
8
|
+
/**
|
|
9
|
+
* Plugin version (SemVer)
|
|
10
|
+
*/
|
|
11
|
+
export declare const version = "1.0.0";
|
|
12
|
+
/**
|
|
13
|
+
* Minimum compatible mcp-sqlew version
|
|
14
|
+
*/
|
|
15
|
+
export declare const minVersion = "4.4.0";
|
|
16
|
+
export type { CloudConfig, ConnectionIdentity, Environment, ToolBackend, HealthCheckResult, } from './client/types';
|
|
17
|
+
export { ApiError } from './errors/api-error';
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAgB,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7E,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,CAE9D;AAED;;GAEG;AACH,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B;;GAEG;AACH,eAAO,MAAM,UAAU,UAAU,CAAC;AAGlC,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,WAAW,EACX,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __export = (target, all) => {
|
|
7
|
+
for (var name in all)
|
|
8
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
9
|
+
};
|
|
10
|
+
var __copyProps = (to, from, except, desc) => {
|
|
11
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
12
|
+
for (let key of __getOwnPropNames(from))
|
|
13
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
14
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
15
|
+
}
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
|
+
var index_exports = {};
|
|
20
|
+
__export(index_exports, {
|
|
21
|
+
ApiError: () => import_api_error.ApiError,
|
|
22
|
+
createBackend: () => createBackend,
|
|
23
|
+
minVersion: () => minVersion,
|
|
24
|
+
resolveProject: () => import_http_client.resolveProject,
|
|
25
|
+
version: () => version
|
|
26
|
+
});
|
|
27
|
+
module.exports = __toCommonJS(index_exports);
|
|
28
|
+
var import_saas_backend = require("./backend/saas-backend");
|
|
29
|
+
var import_http_client = require("./client/http-client");
|
|
30
|
+
var import_api_error = require("./errors/api-error");
|
|
31
|
+
function createBackend(config) {
|
|
32
|
+
return new import_saas_backend.SaaSBackend(config);
|
|
33
|
+
}
|
|
34
|
+
const version = "1.0.0";
|
|
35
|
+
const minVersion = "4.4.0";
|
|
36
|
+
const pluginModule = {
|
|
37
|
+
createBackend,
|
|
38
|
+
version,
|
|
39
|
+
minVersion,
|
|
40
|
+
resolveProject: import_http_client.resolveProject
|
|
41
|
+
};
|
|
42
|
+
module.exports = pluginModule;
|
|
43
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
44
|
+
0 && (module.exports = {
|
|
45
|
+
ApiError,
|
|
46
|
+
createBackend,
|
|
47
|
+
minVersion,
|
|
48
|
+
resolveProject,
|
|
49
|
+
version
|
|
50
|
+
});
|
|
51
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { SaaSBackend } from './backend/saas-backend';\r\nimport { resolveProject } from './client/http-client';\r\nimport type { CloudConfig, PluginModule, ToolBackend } from './client/types';\r\n\r\n// Re-export resolveProject for use by mcp-sqlew\r\nexport { resolveProject };\r\n\r\n/**\r\n * Create a SaaS backend instance\r\n */\r\nexport function createBackend(config: CloudConfig): ToolBackend {\r\n return new SaaSBackend(config);\r\n}\r\n\r\n/**\r\n * Plugin version (SemVer)\r\n */\r\nexport const version = '1.0.0';\r\n\r\n/**\r\n * Minimum compatible mcp-sqlew version\r\n */\r\nexport const minVersion = '4.4.0';\r\n\r\n// Export types for TypeScript users\r\nexport type {\r\n CloudConfig,\r\n ConnectionIdentity,\r\n Environment,\r\n ToolBackend,\r\n HealthCheckResult,\r\n} from './client/types';\r\nexport { ApiError } from './errors/api-error';\r\n\r\n// CommonJS compatibility\r\n// Note: Named exports (resolveProject, ApiError) are available via ESM import\r\n// The default export provides the plugin interface for mcp-sqlew\r\nconst pluginModule: PluginModule & { resolveProject: typeof resolveProject } = {\r\n createBackend,\r\n version,\r\n minVersion,\r\n resolveProject,\r\n};\r\n\r\nmodule.exports = pluginModule;\r\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,0BAA4B;AAC5B,yBAA+B;AA+B/B,uBAAyB;AAtBlB,SAAS,cAAc,QAAkC;AAC9D,SAAO,IAAI,gCAAY,MAAM;AAC/B;AAKO,MAAM,UAAU;AAKhB,MAAM,aAAa;AAe1B,MAAM,eAAyE;AAAA,EAC7E;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEA,OAAO,UAAU;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|