sqlew 3.7.4 → 3.8.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 +243 -1
- package/LICENSE +0 -0
- package/README.md +69 -0
- package/assets/config.example.toml +0 -0
- package/assets/kanban-style.png +0 -0
- package/assets/kanban-visualizer.png +0 -0
- package/assets/sample-agents/README.md +0 -0
- package/assets/sample-agents/sqlew-architect.md +0 -0
- package/assets/sample-agents/sqlew-researcher.md +0 -0
- package/assets/sample-agents/sqlew-scrum-master.md +4 -4
- package/assets/schema.sql +0 -0
- package/assets/sqlew-logo.png +0 -0
- package/dist/adapters/postgresql-adapter.d.ts +197 -5
- package/dist/adapters/postgresql-adapter.d.ts.map +1 -1
- package/dist/adapters/postgresql-adapter.js +300 -36
- package/dist/adapters/postgresql-adapter.js.map +1 -1
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +8 -71
- package/dist/cli.js.map +1 -1
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +1 -1
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js +158 -45
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js.map +1 -1
- package/dist/config/knex/bootstrap/20251025070349_create_views.d.ts.map +1 -1
- package/dist/config/knex/bootstrap/20251025070349_create_views.js +60 -8
- package/dist/config/knex/bootstrap/20251025070349_create_views.js.map +1 -1
- package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.js +1 -1
- package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.js +5 -5
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +1 -1
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js +9 -1
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js.map +1 -1
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts.map +1 -1
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js +8 -1
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js.map +1 -1
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts +21 -0
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts.map +1 -0
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js +73 -0
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js.map +1 -0
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts +19 -0
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts.map +1 -0
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js +88 -0
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js.map +1 -0
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts +24 -0
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts.map +1 -0
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js +79 -0
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js.map +1 -0
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts +27 -0
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts.map +1 -0
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js +347 -0
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js.map +1 -0
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts +30 -0
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts.map +1 -0
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js +232 -0
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js.map +1 -0
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts.map +1 -1
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js +9 -0
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js.map +1 -1
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts +14 -0
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts.map +1 -0
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js +97 -0
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js.map +1 -0
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts +24 -0
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts.map +1 -0
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js +303 -0
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js.map +1 -0
- package/dist/constants.d.ts +14 -2
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +28 -1
- package/dist/constants.js.map +1 -1
- package/dist/database/config/adapter-factory.d.ts +13 -0
- package/dist/database/config/adapter-factory.d.ts.map +1 -0
- package/dist/database/config/adapter-factory.js +21 -0
- package/dist/database/config/adapter-factory.js.map +1 -0
- package/dist/database/config/config-ops.d.ts +34 -0
- package/dist/database/config/config-ops.d.ts.map +1 -0
- package/dist/database/config/config-ops.js +76 -0
- package/dist/database/config/config-ops.js.map +1 -0
- package/dist/database/index.d.ts +21 -0
- package/dist/database/index.d.ts.map +1 -0
- package/dist/database/index.js +31 -0
- package/dist/database/index.js.map +1 -0
- package/dist/database/initialization/cleanup.d.ts +8 -0
- package/dist/database/initialization/cleanup.d.ts.map +1 -0
- package/dist/database/initialization/cleanup.js +17 -0
- package/dist/database/initialization/cleanup.js.map +1 -0
- package/dist/database/initialization/init.d.ts +21 -0
- package/dist/database/initialization/init.d.ts.map +1 -0
- package/dist/database/initialization/init.js +83 -0
- package/dist/database/initialization/init.js.map +1 -0
- package/dist/database/operations/deletes.d.ts +10 -0
- package/dist/database/operations/deletes.d.ts.map +1 -0
- package/dist/database/operations/deletes.js +14 -0
- package/dist/database/operations/deletes.js.map +1 -0
- package/dist/database/operations/inserts.d.ts +40 -0
- package/dist/database/operations/inserts.d.ts.map +1 -0
- package/dist/database/operations/inserts.js +202 -0
- package/dist/database/operations/inserts.js.map +1 -0
- package/dist/database/operations/queries.d.ts +57 -0
- package/dist/database/operations/queries.d.ts.map +1 -0
- package/dist/database/operations/queries.js +77 -0
- package/dist/database/operations/queries.js.map +1 -0
- package/dist/database/operations/updates.d.ts +10 -0
- package/dist/database/operations/updates.d.ts.map +1 -0
- package/dist/database/operations/updates.js +14 -0
- package/dist/database/operations/updates.js.map +1 -0
- package/dist/database/types.d.ts +5 -0
- package/dist/database/types.d.ts.map +1 -0
- package/dist/database/types.js +5 -0
- package/dist/database/types.js.map +1 -0
- package/dist/database.d.ts +4 -144
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +5 -461
- package/dist/database.js.map +1 -1
- package/dist/index.js +29 -777
- package/dist/index.js.map +1 -1
- package/dist/server/arg-parser.d.ts +40 -0
- package/dist/server/arg-parser.d.ts.map +1 -0
- package/dist/server/arg-parser.js +137 -0
- package/dist/server/arg-parser.js.map +1 -0
- package/dist/server/setup.d.ts +31 -0
- package/dist/server/setup.d.ts.map +1 -0
- package/dist/server/setup.js +186 -0
- package/dist/server/setup.js.map +1 -0
- package/dist/server/shutdown.d.ts +15 -0
- package/dist/server/shutdown.d.ts.map +1 -0
- package/dist/server/shutdown.js +42 -0
- package/dist/server/shutdown.js.map +1 -0
- package/dist/server/tool-handlers.d.ts +10 -0
- package/dist/server/tool-handlers.d.ts.map +1 -0
- package/dist/server/tool-handlers.js +478 -0
- package/dist/server/tool-handlers.js.map +1 -0
- package/dist/server/tool-registry.d.ts +11 -0
- package/dist/server/tool-registry.d.ts.map +1 -0
- package/dist/server/tool-registry.js +225 -0
- package/dist/server/tool-registry.js.map +1 -0
- package/dist/tests/all-features.test.js +6 -38
- package/dist/tests/all-features.test.js.map +1 -1
- package/dist/tests/batch-validation-comprehensive.test.d.ts +12 -0
- package/dist/tests/batch-validation-comprehensive.test.d.ts.map +1 -0
- package/dist/tests/batch-validation-comprehensive.test.js +472 -0
- package/dist/tests/batch-validation-comprehensive.test.js.map +1 -0
- package/dist/tests/batch-validation-integration.test.d.ts +6 -0
- package/dist/tests/batch-validation-integration.test.d.ts.map +1 -0
- package/dist/tests/batch-validation-integration.test.js +193 -0
- package/dist/tests/batch-validation-integration.test.js.map +1 -0
- package/dist/tests/batch-validation.test.d.ts +6 -0
- package/dist/tests/batch-validation.test.d.ts.map +1 -0
- package/dist/tests/batch-validation.test.js +298 -0
- package/dist/tests/batch-validation.test.js.map +1 -0
- package/dist/tests/context-modular.test.d.ts +7 -0
- package/dist/tests/context-modular.test.d.ts.map +1 -0
- package/dist/tests/context-modular.test.js +271 -0
- package/dist/tests/context-modular.test.js.map +1 -0
- package/dist/tests/decision-batch-validation.test.d.ts +6 -0
- package/dist/tests/decision-batch-validation.test.d.ts.map +1 -0
- package/dist/tests/decision-batch-validation.test.js +253 -0
- package/dist/tests/decision-batch-validation.test.js.map +1 -0
- package/dist/tests/help-system.test.js +1 -1
- package/dist/tests/help-system.test.js.map +1 -1
- package/dist/tests/multi-project.test.js +2 -2
- package/dist/tests/multi-project.test.js.map +1 -1
- package/dist/tests/parameter-validation.test.js +2 -16
- package/dist/tests/parameter-validation.test.js.map +1 -1
- package/dist/tests/tasks.auto-pruning-decision-link.test.js +1 -1
- package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -1
- package/dist/tests/tasks.file-actions-integration.test.d.ts +10 -0
- package/dist/tests/tasks.file-actions-integration.test.d.ts.map +1 -0
- package/dist/tests/tasks.file-actions-integration.test.js +162 -0
- package/dist/tests/tasks.file-actions-integration.test.js.map +1 -0
- package/dist/tests/tasks.file-actions-validation.test.d.ts +6 -0
- package/dist/tests/tasks.file-actions-validation.test.d.ts.map +1 -0
- package/dist/tests/tasks.file-actions-validation.test.js +221 -0
- package/dist/tests/tasks.file-actions-validation.test.js.map +1 -0
- package/dist/tools/constraints/actions/add.d.ts +15 -0
- package/dist/tools/constraints/actions/add.d.ts.map +1 -0
- package/dist/tools/constraints/actions/add.js +101 -0
- package/dist/tools/constraints/actions/add.js.map +1 -0
- package/dist/tools/constraints/actions/deactivate.d.ts +16 -0
- package/dist/tools/constraints/actions/deactivate.d.ts.map +1 -0
- package/dist/tools/constraints/actions/deactivate.js +49 -0
- package/dist/tools/constraints/actions/deactivate.js.map +1 -0
- package/dist/tools/constraints/actions/get.d.ts +16 -0
- package/dist/tools/constraints/actions/get.d.ts.map +1 -0
- package/dist/tools/constraints/actions/get.js +76 -0
- package/dist/tools/constraints/actions/get.js.map +1 -0
- package/dist/tools/constraints/help/example.d.ts +9 -0
- package/dist/tools/constraints/help/example.d.ts.map +1 -0
- package/dist/tools/constraints/help/example.js +144 -0
- package/dist/tools/constraints/help/example.js.map +1 -0
- package/dist/tools/constraints/help/help.d.ts +9 -0
- package/dist/tools/constraints/help/help.d.ts.map +1 -0
- package/dist/tools/constraints/help/help.js +31 -0
- package/dist/tools/constraints/help/help.js.map +1 -0
- package/dist/tools/constraints/index.d.ts +12 -0
- package/dist/tools/constraints/index.d.ts.map +1 -0
- package/dist/tools/constraints/index.js +13 -0
- package/dist/tools/constraints/index.js.map +1 -0
- package/dist/tools/constraints/internal/validation.d.ts +11 -0
- package/dist/tools/constraints/internal/validation.d.ts.map +1 -0
- package/dist/tools/constraints/internal/validation.js +17 -0
- package/dist/tools/constraints/internal/validation.js.map +1 -0
- package/dist/tools/constraints/types.d.ts +6 -0
- package/dist/tools/constraints/types.d.ts.map +1 -0
- package/dist/tools/constraints/types.js +6 -0
- package/dist/tools/constraints/types.js.map +1 -0
- package/dist/tools/context/actions/add-context.d.ts +14 -0
- package/dist/tools/context/actions/add-context.d.ts.map +1 -0
- package/dist/tools/context/actions/add-context.js +62 -0
- package/dist/tools/context/actions/add-context.js.map +1 -0
- package/dist/tools/context/actions/batch-set.d.ts +16 -0
- package/dist/tools/context/actions/batch-set.d.ts.map +1 -0
- package/dist/tools/context/actions/batch-set.js +126 -0
- package/dist/tools/context/actions/batch-set.js.map +1 -0
- package/dist/tools/context/actions/create-template.d.ts +15 -0
- package/dist/tools/context/actions/create-template.d.ts.map +1 -0
- package/dist/tools/context/actions/create-template.js +68 -0
- package/dist/tools/context/actions/create-template.js.map +1 -0
- package/dist/tools/context/actions/get.d.ts +18 -0
- package/dist/tools/context/actions/get.d.ts.map +1 -0
- package/dist/tools/context/actions/get.js +80 -0
- package/dist/tools/context/actions/get.js.map +1 -0
- package/dist/tools/context/actions/hard-delete.d.ts +18 -0
- package/dist/tools/context/actions/hard-delete.d.ts.map +1 -0
- package/dist/tools/context/actions/hard-delete.js +85 -0
- package/dist/tools/context/actions/hard-delete.js.map +1 -0
- package/dist/tools/context/actions/has-updates.d.ts +16 -0
- package/dist/tools/context/actions/has-updates.d.ts.map +1 -0
- package/dist/tools/context/actions/has-updates.js +83 -0
- package/dist/tools/context/actions/has-updates.js.map +1 -0
- package/dist/tools/context/actions/list-contexts.d.ts +14 -0
- package/dist/tools/context/actions/list-contexts.d.ts.map +1 -0
- package/dist/tools/context/actions/list-contexts.js +43 -0
- package/dist/tools/context/actions/list-contexts.js.map +1 -0
- package/dist/tools/context/actions/list-templates.d.ts +15 -0
- package/dist/tools/context/actions/list-templates.d.ts.map +1 -0
- package/dist/tools/context/actions/list-templates.js +47 -0
- package/dist/tools/context/actions/list-templates.js.map +1 -0
- package/dist/tools/context/actions/list.d.ts +16 -0
- package/dist/tools/context/actions/list.d.ts.map +1 -0
- package/dist/tools/context/actions/list.js +100 -0
- package/dist/tools/context/actions/list.js.map +1 -0
- package/dist/tools/context/actions/quick-set.d.ts +21 -0
- package/dist/tools/context/actions/quick-set.d.ts.map +1 -0
- package/dist/tools/context/actions/quick-set.js +104 -0
- package/dist/tools/context/actions/quick-set.js.map +1 -0
- package/dist/tools/context/actions/search-advanced.d.ts +15 -0
- package/dist/tools/context/actions/search-advanced.d.ts.map +1 -0
- package/dist/tools/context/actions/search-advanced.js +140 -0
- package/dist/tools/context/actions/search-advanced.js.map +1 -0
- package/dist/tools/context/actions/search-layer.d.ts +15 -0
- package/dist/tools/context/actions/search-layer.d.ts.map +1 -0
- package/dist/tools/context/actions/search-layer.js +106 -0
- package/dist/tools/context/actions/search-layer.js.map +1 -0
- package/dist/tools/context/actions/search-tags.d.ts +15 -0
- package/dist/tools/context/actions/search-tags.d.ts.map +1 -0
- package/dist/tools/context/actions/search-tags.js +85 -0
- package/dist/tools/context/actions/search-tags.js.map +1 -0
- package/dist/tools/context/actions/set-from-template.d.ts +16 -0
- package/dist/tools/context/actions/set-from-template.d.ts.map +1 -0
- package/dist/tools/context/actions/set-from-template.js +83 -0
- package/dist/tools/context/actions/set-from-template.js.map +1 -0
- package/dist/tools/context/actions/set.d.ts +16 -0
- package/dist/tools/context/actions/set.d.ts.map +1 -0
- package/dist/tools/context/actions/set.js +56 -0
- package/dist/tools/context/actions/set.js.map +1 -0
- package/dist/tools/context/actions/versions.d.ts +15 -0
- package/dist/tools/context/actions/versions.d.ts.map +1 -0
- package/dist/tools/context/actions/versions.js +69 -0
- package/dist/tools/context/actions/versions.js.map +1 -0
- package/dist/tools/context/help/example.d.ts +5 -0
- package/dist/tools/context/help/example.d.ts.map +1 -0
- package/dist/tools/context/help/example.js +96 -0
- package/dist/tools/context/help/example.js.map +1 -0
- package/dist/tools/context/help/help.d.ts +5 -0
- package/dist/tools/context/help/help.d.ts.map +1 -0
- package/dist/tools/context/help/help.js +65 -0
- package/dist/tools/context/help/help.js.map +1 -0
- package/dist/tools/context/index.d.ts +25 -0
- package/dist/tools/context/index.d.ts.map +1 -0
- package/dist/tools/context/index.js +26 -0
- package/dist/tools/context/index.js.map +1 -0
- package/dist/tools/context/internal/queries.d.ts +18 -0
- package/dist/tools/context/internal/queries.d.ts.map +1 -0
- package/dist/tools/context/internal/queries.js +160 -0
- package/dist/tools/context/internal/queries.js.map +1 -0
- package/dist/tools/context/internal/validation.d.ts +39 -0
- package/dist/tools/context/internal/validation.d.ts.map +1 -0
- package/dist/tools/context/internal/validation.js +125 -0
- package/dist/tools/context/internal/validation.js.map +1 -0
- package/dist/tools/context/types.d.ts +6 -0
- package/dist/tools/context/types.d.ts.map +1 -0
- package/dist/tools/context/types.js +6 -0
- package/dist/tools/context/types.js.map +1 -0
- package/dist/tools/example/actions/get.d.ts +14 -0
- package/dist/tools/example/actions/get.d.ts.map +1 -0
- package/dist/tools/example/actions/get.js +40 -0
- package/dist/tools/example/actions/get.js.map +1 -0
- package/dist/tools/example/actions/list-all.d.ts +13 -0
- package/dist/tools/example/actions/list-all.d.ts.map +1 -0
- package/dist/tools/example/actions/list-all.js +39 -0
- package/dist/tools/example/actions/list-all.js.map +1 -0
- package/dist/tools/example/actions/search.d.ts +14 -0
- package/dist/tools/example/actions/search.d.ts.map +1 -0
- package/dist/tools/example/actions/search.js +52 -0
- package/dist/tools/example/actions/search.js.map +1 -0
- package/dist/tools/example/help/example.d.ts +6 -0
- package/dist/tools/example/help/example.d.ts.map +1 -0
- package/dist/tools/example/help/example.js +69 -0
- package/dist/tools/example/help/example.js.map +1 -0
- package/dist/tools/example/help/help.d.ts +6 -0
- package/dist/tools/example/help/help.d.ts.map +1 -0
- package/dist/tools/example/help/help.js +133 -0
- package/dist/tools/example/help/help.js.map +1 -0
- package/dist/tools/example/index.d.ts +11 -0
- package/dist/tools/example/index.d.ts.map +1 -0
- package/dist/tools/example/index.js +12 -0
- package/dist/tools/example/index.js.map +1 -0
- package/dist/tools/example/types.d.ts +59 -0
- package/dist/tools/example/types.d.ts.map +1 -0
- package/dist/tools/example/types.js +6 -0
- package/dist/tools/example/types.js.map +1 -0
- package/dist/tools/files/actions/check-lock.d.ts +16 -0
- package/dist/tools/files/actions/check-lock.d.ts.map +1 -0
- package/dist/tools/files/actions/check-lock.js +70 -0
- package/dist/tools/files/actions/check-lock.js.map +1 -0
- package/dist/tools/files/actions/get.d.ts +16 -0
- package/dist/tools/files/actions/get.d.ts.map +1 -0
- package/dist/tools/files/actions/get.js +113 -0
- package/dist/tools/files/actions/get.js.map +1 -0
- package/dist/tools/files/actions/record-batch.d.ts +18 -0
- package/dist/tools/files/actions/record-batch.d.ts.map +1 -0
- package/dist/tools/files/actions/record-batch.js +114 -0
- package/dist/tools/files/actions/record-batch.js.map +1 -0
- package/dist/tools/files/actions/record.d.ts +16 -0
- package/dist/tools/files/actions/record.d.ts.map +1 -0
- package/dist/tools/files/actions/record.js +37 -0
- package/dist/tools/files/actions/record.js.map +1 -0
- package/dist/tools/files/actions/sqlite-flush.d.ts +27 -0
- package/dist/tools/files/actions/sqlite-flush.d.ts.map +1 -0
- package/dist/tools/files/actions/sqlite-flush.js +66 -0
- package/dist/tools/files/actions/sqlite-flush.js.map +1 -0
- package/dist/tools/files/help/example.d.ts +5 -0
- package/dist/tools/files/help/example.d.ts.map +1 -0
- package/dist/tools/files/help/example.js +98 -0
- package/dist/tools/files/help/example.js.map +1 -0
- package/dist/tools/files/help/help.d.ts +5 -0
- package/dist/tools/files/help/help.d.ts.map +1 -0
- package/dist/tools/files/help/help.js +29 -0
- package/dist/tools/files/help/help.js.map +1 -0
- package/dist/tools/files/index.d.ts +14 -0
- package/dist/tools/files/index.d.ts.map +1 -0
- package/dist/tools/files/index.js +15 -0
- package/dist/tools/files/index.js.map +1 -0
- package/dist/tools/files/internal/queries.d.ts +18 -0
- package/dist/tools/files/internal/queries.d.ts.map +1 -0
- package/dist/tools/files/internal/queries.js +63 -0
- package/dist/tools/files/internal/queries.js.map +1 -0
- package/dist/tools/files/internal/validation.d.ts +18 -0
- package/dist/tools/files/internal/validation.d.ts.map +1 -0
- package/dist/tools/files/internal/validation.js +40 -0
- package/dist/tools/files/internal/validation.js.map +1 -0
- package/dist/tools/files/types.d.ts +6 -0
- package/dist/tools/files/types.d.ts.map +1 -0
- package/dist/tools/files/types.js +6 -0
- package/dist/tools/files/types.js.map +1 -0
- package/dist/tools/help/actions/batch-guide.d.ts +14 -0
- package/dist/tools/help/actions/batch-guide.d.ts.map +1 -0
- package/dist/tools/help/actions/batch-guide.js +59 -0
- package/dist/tools/help/actions/batch-guide.js.map +1 -0
- package/dist/tools/help/actions/error-recovery.d.ts +12 -0
- package/dist/tools/help/actions/error-recovery.d.ts.map +1 -0
- package/dist/tools/help/actions/error-recovery.js +107 -0
- package/dist/tools/help/actions/error-recovery.js.map +1 -0
- package/dist/tools/help/actions/query-action.d.ts +15 -0
- package/dist/tools/help/actions/query-action.d.ts.map +1 -0
- package/dist/tools/help/actions/query-action.js +15 -0
- package/dist/tools/help/actions/query-action.js.map +1 -0
- package/dist/tools/help/actions/query-params.d.ts +15 -0
- package/dist/tools/help/actions/query-params.d.ts.map +1 -0
- package/dist/tools/help/actions/query-params.js +15 -0
- package/dist/tools/help/actions/query-params.js.map +1 -0
- package/dist/tools/help/actions/query-tool.d.ts +15 -0
- package/dist/tools/help/actions/query-tool.d.ts.map +1 -0
- package/dist/tools/help/actions/query-tool.js +15 -0
- package/dist/tools/help/actions/query-tool.js.map +1 -0
- package/dist/tools/help/actions/workflow-hints.d.ts +14 -0
- package/dist/tools/help/actions/workflow-hints.d.ts.map +1 -0
- package/dist/tools/help/actions/workflow-hints.js +15 -0
- package/dist/tools/help/actions/workflow-hints.js.map +1 -0
- package/dist/tools/help/help/example.d.ts +6 -0
- package/dist/tools/help/help/example.d.ts.map +1 -0
- package/dist/tools/help/help/example.js +70 -0
- package/dist/tools/help/help/example.js.map +1 -0
- package/dist/tools/help/help/help.d.ts +6 -0
- package/dist/tools/help/help/help.d.ts.map +1 -0
- package/dist/tools/help/help/help.js +67 -0
- package/dist/tools/help/help/help.js.map +1 -0
- package/dist/tools/help/index.d.ts +14 -0
- package/dist/tools/help/index.d.ts.map +1 -0
- package/dist/tools/help/index.js +15 -0
- package/dist/tools/help/index.js.map +1 -0
- package/dist/tools/help/types.d.ts +92 -0
- package/dist/tools/help/types.d.ts.map +1 -0
- package/dist/tools/help/types.js +6 -0
- package/dist/tools/help/types.js.map +1 -0
- package/dist/tools/help-queries.d.ts.map +1 -1
- package/dist/tools/help-queries.js +1 -0
- package/dist/tools/help-queries.js.map +1 -1
- package/dist/tools/tasks/actions/add-dependency.d.ts +12 -0
- package/dist/tools/tasks/actions/add-dependency.d.ts.map +1 -0
- package/dist/tools/tasks/actions/add-dependency.js +124 -0
- package/dist/tools/tasks/actions/add-dependency.js.map +1 -0
- package/dist/tools/tasks/actions/archive.d.ts +11 -0
- package/dist/tools/tasks/actions/archive.d.ts.map +1 -0
- package/dist/tools/tasks/actions/archive.js +67 -0
- package/dist/tools/tasks/actions/archive.js.map +1 -0
- package/dist/tools/tasks/actions/create-batch.d.ts +19 -0
- package/dist/tools/tasks/actions/create-batch.d.ts.map +1 -0
- package/dist/tools/tasks/actions/create-batch.js +103 -0
- package/dist/tools/tasks/actions/create-batch.js.map +1 -0
- package/dist/tools/tasks/actions/create.d.ts +16 -0
- package/dist/tools/tasks/actions/create.d.ts.map +1 -0
- package/dist/tools/tasks/actions/create.js +180 -0
- package/dist/tools/tasks/actions/create.js.map +1 -0
- package/dist/tools/tasks/actions/get-dependencies.d.ts +12 -0
- package/dist/tools/tasks/actions/get-dependencies.d.ts.map +1 -0
- package/dist/tools/tasks/actions/get-dependencies.js +41 -0
- package/dist/tools/tasks/actions/get-dependencies.js.map +1 -0
- package/dist/tools/tasks/actions/get-pruned-files.d.ts +13 -0
- package/dist/tools/tasks/actions/get-pruned-files.d.ts.map +1 -0
- package/dist/tools/tasks/actions/get-pruned-files.js +45 -0
- package/dist/tools/tasks/actions/get-pruned-files.js.map +1 -0
- package/dist/tools/tasks/actions/get.d.ts +12 -0
- package/dist/tools/tasks/actions/get.d.ts.map +1 -0
- package/dist/tools/tasks/actions/get.js +88 -0
- package/dist/tools/tasks/actions/get.js.map +1 -0
- package/dist/tools/tasks/actions/link-pruned-file.d.ts +13 -0
- package/dist/tools/tasks/actions/link-pruned-file.d.ts.map +1 -0
- package/dist/tools/tasks/actions/link-pruned-file.js +63 -0
- package/dist/tools/tasks/actions/link-pruned-file.js.map +1 -0
- package/dist/tools/tasks/actions/link.d.ts +14 -0
- package/dist/tools/tasks/actions/link.d.ts.map +1 -0
- package/dist/tools/tasks/actions/link.js +118 -0
- package/dist/tools/tasks/actions/link.js.map +1 -0
- package/dist/tools/tasks/actions/list.d.ts +17 -0
- package/dist/tools/tasks/actions/list.d.ts.map +1 -0
- package/dist/tools/tasks/actions/list.js +98 -0
- package/dist/tools/tasks/actions/list.js.map +1 -0
- package/dist/tools/tasks/actions/move.d.ts +12 -0
- package/dist/tools/tasks/actions/move.d.ts.map +1 -0
- package/dist/tools/tasks/actions/move.js +91 -0
- package/dist/tools/tasks/actions/move.js.map +1 -0
- package/dist/tools/tasks/actions/remove-dependency.d.ts +12 -0
- package/dist/tools/tasks/actions/remove-dependency.d.ts.map +1 -0
- package/dist/tools/tasks/actions/remove-dependency.js +36 -0
- package/dist/tools/tasks/actions/remove-dependency.js.map +1 -0
- package/dist/tools/tasks/actions/update.d.ts +10 -0
- package/dist/tools/tasks/actions/update.d.ts.map +1 -0
- package/dist/tools/tasks/actions/update.js +186 -0
- package/dist/tools/tasks/actions/update.js.map +1 -0
- package/dist/tools/tasks/actions/watch-files.d.ts +14 -0
- package/dist/tools/tasks/actions/watch-files.d.ts.map +1 -0
- package/dist/tools/tasks/actions/watch-files.js +127 -0
- package/dist/tools/tasks/actions/watch-files.js.map +1 -0
- package/dist/tools/tasks/help/example.d.ts +8 -0
- package/dist/tools/tasks/help/example.d.ts.map +1 -0
- package/dist/tools/tasks/help/example.js +215 -0
- package/dist/tools/tasks/help/example.js.map +1 -0
- package/dist/tools/tasks/help/help.d.ts +8 -0
- package/dist/tools/tasks/help/help.d.ts.map +1 -0
- package/dist/tools/tasks/help/help.js +293 -0
- package/dist/tools/tasks/help/help.js.map +1 -0
- package/dist/tools/tasks/help/use-case.d.ts +11 -0
- package/dist/tools/tasks/help/use-case.d.ts.map +1 -0
- package/dist/tools/tasks/help/use-case.js +768 -0
- package/dist/tools/tasks/help/use-case.js.map +1 -0
- package/dist/tools/tasks/index.d.ts +28 -0
- package/dist/tools/tasks/index.d.ts.map +1 -0
- package/dist/tools/tasks/index.js +33 -0
- package/dist/tools/tasks/index.js.map +1 -0
- package/dist/tools/tasks/internal/state-machine.d.ts +16 -0
- package/dist/tools/tasks/internal/state-machine.d.ts.map +1 -0
- package/dist/tools/tasks/internal/state-machine.js +36 -0
- package/dist/tools/tasks/internal/state-machine.js.map +1 -0
- package/dist/tools/tasks/internal/task-queries.d.ts +12 -0
- package/dist/tools/tasks/internal/task-queries.d.ts.map +1 -0
- package/dist/tools/tasks/internal/task-queries.js +61 -0
- package/dist/tools/tasks/internal/task-queries.js.map +1 -0
- package/dist/tools/tasks/internal/validation.d.ts +47 -0
- package/dist/tools/tasks/internal/validation.d.ts.map +1 -0
- package/dist/tools/tasks/internal/validation.js +261 -0
- package/dist/tools/tasks/internal/validation.js.map +1 -0
- package/dist/tools/tasks/types.d.ts +68 -0
- package/dist/tools/tasks/types.d.ts.map +1 -0
- package/dist/tools/tasks/types.js +45 -0
- package/dist/tools/tasks/types.js.map +1 -0
- package/dist/tools/tasks/watcher/status.d.ts +9 -0
- package/dist/tools/tasks/watcher/status.d.ts.map +1 -0
- package/dist/tools/tasks/watcher/status.js +126 -0
- package/dist/tools/tasks/watcher/status.js.map +1 -0
- package/dist/tools/tasks.d.ts +12 -148
- package/dist/tools/tasks.d.ts.map +1 -1
- package/dist/tools/tasks.js +12 -2037
- package/dist/tools/tasks.js.map +1 -1
- package/dist/tools/use_case/actions/get.d.ts +14 -0
- package/dist/tools/use_case/actions/get.d.ts.map +1 -0
- package/dist/tools/use_case/actions/get.js +15 -0
- package/dist/tools/use_case/actions/get.js.map +1 -0
- package/dist/tools/use_case/actions/list-all.d.ts +15 -0
- package/dist/tools/use_case/actions/list-all.d.ts.map +1 -0
- package/dist/tools/use_case/actions/list-all.js +20 -0
- package/dist/tools/use_case/actions/list-all.js.map +1 -0
- package/dist/tools/use_case/actions/search.d.ts +14 -0
- package/dist/tools/use_case/actions/search.d.ts.map +1 -0
- package/dist/tools/use_case/actions/search.js +87 -0
- package/dist/tools/use_case/actions/search.js.map +1 -0
- package/dist/tools/use_case/help/example.d.ts +105 -0
- package/dist/tools/use_case/help/example.d.ts.map +1 -0
- package/dist/tools/use_case/help/example.js +138 -0
- package/dist/tools/use_case/help/example.js.map +1 -0
- package/dist/tools/use_case/help/help.d.ts +33 -0
- package/dist/tools/use_case/help/help.d.ts.map +1 -0
- package/dist/tools/use_case/help/help.js +109 -0
- package/dist/tools/use_case/help/help.js.map +1 -0
- package/dist/tools/use_case/index.d.ts +11 -0
- package/dist/tools/use_case/index.d.ts.map +1 -0
- package/dist/tools/use_case/index.js +12 -0
- package/dist/tools/use_case/index.js.map +1 -0
- package/dist/tools/use_case/types.d.ts +58 -0
- package/dist/tools/use_case/types.d.ts.map +1 -0
- package/dist/tools/use_case/types.js +6 -0
- package/dist/tools/use_case/types.js.map +1 -0
- package/dist/types/actions.d.ts +37 -0
- package/dist/types/actions.d.ts.map +1 -0
- package/dist/types/actions.js +6 -0
- package/dist/types/actions.js.map +1 -0
- package/dist/types/constraint/params.d.ts +2 -0
- package/dist/types/constraint/params.d.ts.map +1 -0
- package/dist/types/constraint/params.js +2 -0
- package/dist/types/constraint/params.js.map +1 -0
- package/dist/types/constraint/responses.d.ts +2 -0
- package/dist/types/constraint/responses.d.ts.map +1 -0
- package/dist/types/constraint/responses.js +2 -0
- package/dist/types/constraint/responses.js.map +1 -0
- package/dist/types/decision/batch.d.ts +24 -0
- package/dist/types/decision/batch.d.ts.map +1 -0
- package/dist/types/decision/batch.js +5 -0
- package/dist/types/decision/batch.js.map +1 -0
- package/dist/types/decision/params.d.ts +73 -0
- package/dist/types/decision/params.d.ts.map +1 -0
- package/dist/types/decision/params.js +5 -0
- package/dist/types/decision/params.js.map +1 -0
- package/dist/types/decision/responses.d.ts +79 -0
- package/dist/types/decision/responses.d.ts.map +1 -0
- package/dist/types/decision/responses.js +5 -0
- package/dist/types/decision/responses.js.map +1 -0
- package/dist/types/decision/templates.d.ts +74 -0
- package/dist/types/decision/templates.d.ts.map +1 -0
- package/dist/types/decision/templates.js +5 -0
- package/dist/types/decision/templates.js.map +1 -0
- package/dist/types/enums.d.ts +43 -0
- package/dist/types/enums.d.ts.map +1 -0
- package/dist/types/enums.js +47 -0
- package/dist/types/enums.js.map +1 -0
- package/dist/types/file/params.d.ts +40 -0
- package/dist/types/file/params.d.ts.map +1 -0
- package/dist/types/file/params.js +6 -0
- package/dist/types/file/params.js.map +1 -0
- package/dist/types/file/responses.d.ts +2 -0
- package/dist/types/file/responses.d.ts.map +1 -0
- package/dist/types/file/responses.js +2 -0
- package/dist/types/file/responses.js.map +1 -0
- package/dist/types/import-export.d.ts +126 -0
- package/dist/types/import-export.d.ts.map +1 -0
- package/dist/types/import-export.js +6 -0
- package/dist/types/import-export.js.map +1 -0
- package/dist/types/index.d.ts +25 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +35 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/master-entities.d.ts +33 -0
- package/dist/types/master-entities.d.ts.map +1 -0
- package/dist/types/master-entities.js +6 -0
- package/dist/types/master-entities.js.map +1 -0
- package/dist/types/task/params.d.ts +172 -0
- package/dist/types/task/params.d.ts.map +1 -0
- package/dist/types/task/params.js +8 -0
- package/dist/types/task/params.js.map +1 -0
- package/dist/types/task/responses.d.ts +334 -0
- package/dist/types/task/responses.d.ts.map +1 -0
- package/dist/types/task/responses.js +8 -0
- package/dist/types/task/responses.js.map +1 -0
- package/dist/types/transaction-entities.d.ts +89 -0
- package/dist/types/transaction-entities.d.ts.map +1 -0
- package/dist/types/transaction-entities.js +5 -0
- package/dist/types/transaction-entities.js.map +1 -0
- package/dist/types/validation.d.ts +44 -0
- package/dist/types/validation.d.ts.map +1 -0
- package/dist/types/validation.js +6 -0
- package/dist/types/validation.js.map +1 -0
- package/dist/types/view-entities.d.ts +61 -0
- package/dist/types/view-entities.d.ts.map +1 -0
- package/dist/types/view-entities.js +5 -0
- package/dist/types/view-entities.js.map +1 -0
- package/dist/types.d.ts +12 -10
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/action-specs/config-specs.d.ts +10 -0
- package/dist/utils/action-specs/config-specs.d.ts.map +1 -0
- package/dist/utils/action-specs/config-specs.js +12 -0
- package/dist/utils/action-specs/config-specs.js.map +1 -0
- package/dist/utils/action-specs/constraint-specs.d.ts +9 -0
- package/dist/utils/action-specs/constraint-specs.d.ts.map +1 -0
- package/dist/utils/action-specs/constraint-specs.js +42 -0
- package/dist/utils/action-specs/constraint-specs.js.map +1 -0
- package/dist/utils/action-specs/decision-specs.d.ts +9 -0
- package/dist/utils/action-specs/decision-specs.d.ts.map +1 -0
- package/dist/utils/action-specs/decision-specs.js +194 -0
- package/dist/utils/action-specs/decision-specs.js.map +1 -0
- package/dist/utils/action-specs/file-specs.d.ts +9 -0
- package/dist/utils/action-specs/file-specs.d.ts.map +1 -0
- package/dist/utils/action-specs/file-specs.js +56 -0
- package/dist/utils/action-specs/file-specs.js.map +1 -0
- package/dist/utils/action-specs/index.d.ts +38 -0
- package/dist/utils/action-specs/index.d.ts.map +1 -0
- package/dist/utils/action-specs/index.js +63 -0
- package/dist/utils/action-specs/index.js.map +1 -0
- package/dist/utils/action-specs/task-specs.d.ts +9 -0
- package/dist/utils/action-specs/task-specs.d.ts.map +1 -0
- package/dist/utils/action-specs/task-specs.js +143 -0
- package/dist/utils/action-specs/task-specs.js.map +1 -0
- package/dist/utils/action-specs/types.d.ts +14 -0
- package/dist/utils/action-specs/types.d.ts.map +1 -0
- package/dist/utils/action-specs/types.js +9 -0
- package/dist/utils/action-specs/types.js.map +1 -0
- package/dist/utils/batch-validation.d.ts +156 -0
- package/dist/utils/batch-validation.d.ts.map +1 -0
- package/dist/utils/batch-validation.example.d.ts +48 -0
- package/dist/utils/batch-validation.example.d.ts.map +1 -0
- package/dist/utils/batch-validation.example.js +180 -0
- package/dist/utils/batch-validation.example.js.map +1 -0
- package/dist/utils/batch-validation.js +345 -0
- package/dist/utils/batch-validation.js.map +1 -0
- package/dist/utils/levenshtein.d.ts +18 -0
- package/dist/utils/levenshtein.d.ts.map +1 -0
- package/dist/utils/levenshtein.js +46 -0
- package/dist/utils/levenshtein.js.map +1 -0
- package/dist/utils/parameter-validator.d.ts +3 -3
- package/dist/utils/parameter-validator.d.ts.map +1 -1
- package/dist/utils/parameter-validator.js +3 -39
- package/dist/utils/parameter-validator.js.map +1 -1
- package/dist/utils/sql-dump/core/dependency-sort.d.ts +16 -0
- package/dist/utils/sql-dump/core/dependency-sort.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/dependency-sort.js +105 -0
- package/dist/utils/sql-dump/core/dependency-sort.js.map +1 -0
- package/dist/utils/sql-dump/core/generate-dump.d.ts +13 -0
- package/dist/utils/sql-dump/core/generate-dump.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/generate-dump.js +181 -0
- package/dist/utils/sql-dump/core/generate-dump.js.map +1 -0
- package/dist/utils/sql-dump/core/index-export.d.ts +9 -0
- package/dist/utils/sql-dump/core/index-export.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/index-export.js +173 -0
- package/dist/utils/sql-dump/core/index-export.js.map +1 -0
- package/dist/utils/sql-dump/core/sequence-reset.d.ts +6 -0
- package/dist/utils/sql-dump/core/sequence-reset.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/sequence-reset.js +28 -0
- package/dist/utils/sql-dump/core/sequence-reset.js.map +1 -0
- package/dist/utils/sql-dump/core/table-export.d.ts +2 -0
- package/dist/utils/sql-dump/core/table-export.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/table-export.js +4 -0
- package/dist/utils/sql-dump/core/table-export.js.map +1 -0
- package/dist/utils/sql-dump/core/view-export.d.ts +2 -0
- package/dist/utils/sql-dump/core/view-export.d.ts.map +1 -0
- package/dist/utils/sql-dump/core/view-export.js +4 -0
- package/dist/utils/sql-dump/core/view-export.js.map +1 -0
- package/dist/utils/sql-dump/formatters/bulk-insert.d.ts +14 -0
- package/dist/utils/sql-dump/formatters/bulk-insert.d.ts.map +1 -0
- package/dist/utils/sql-dump/formatters/bulk-insert.js +177 -0
- package/dist/utils/sql-dump/formatters/bulk-insert.js.map +1 -0
- package/dist/utils/sql-dump/formatters/identifiers.d.ts +6 -0
- package/dist/utils/sql-dump/formatters/identifiers.d.ts.map +1 -0
- package/dist/utils/sql-dump/formatters/identifiers.js +16 -0
- package/dist/utils/sql-dump/formatters/identifiers.js.map +1 -0
- package/dist/utils/sql-dump/formatters/value-formatter.d.ts +14 -0
- package/dist/utils/sql-dump/formatters/value-formatter.d.ts.map +1 -0
- package/dist/utils/sql-dump/formatters/value-formatter.js +281 -0
- package/dist/utils/sql-dump/formatters/value-formatter.js.map +1 -0
- package/dist/utils/sql-dump/generators/controls.d.ts +10 -0
- package/dist/utils/sql-dump/generators/controls.d.ts.map +1 -0
- package/dist/utils/sql-dump/generators/controls.js +36 -0
- package/dist/utils/sql-dump/generators/controls.js.map +1 -0
- package/dist/utils/sql-dump/generators/headers.d.ts +6 -0
- package/dist/utils/sql-dump/generators/headers.d.ts.map +1 -0
- package/dist/utils/sql-dump/generators/headers.js +19 -0
- package/dist/utils/sql-dump/generators/headers.js.map +1 -0
- package/dist/utils/sql-dump/index.d.ts +14 -0
- package/dist/utils/sql-dump/index.d.ts.map +1 -0
- package/dist/utils/sql-dump/index.js +16 -0
- package/dist/utils/sql-dump/index.js.map +1 -0
- package/dist/utils/sql-dump/schema/indexes.d.ts +6 -0
- package/dist/utils/sql-dump/schema/indexes.d.ts.map +1 -0
- package/dist/utils/sql-dump/schema/indexes.js +42 -0
- package/dist/utils/sql-dump/schema/indexes.js.map +1 -0
- package/dist/utils/sql-dump/schema/primary-keys.d.ts +6 -0
- package/dist/utils/sql-dump/schema/primary-keys.d.ts.map +1 -0
- package/dist/utils/sql-dump/schema/primary-keys.js +41 -0
- package/dist/utils/sql-dump/schema/primary-keys.js.map +1 -0
- package/dist/utils/sql-dump/schema/tables.d.ts +12 -0
- package/dist/utils/sql-dump/schema/tables.d.ts.map +1 -0
- package/dist/utils/sql-dump/schema/tables.js +370 -0
- package/dist/utils/sql-dump/schema/tables.js.map +1 -0
- package/dist/utils/sql-dump/schema/views.d.ts +11 -0
- package/dist/utils/sql-dump/schema/views.d.ts.map +1 -0
- package/dist/utils/sql-dump/schema/views.js +110 -0
- package/dist/utils/sql-dump/schema/views.js.map +1 -0
- package/dist/utils/sql-dump/types.d.ts +10 -0
- package/dist/utils/sql-dump/types.d.ts.map +1 -0
- package/dist/utils/sql-dump/types.js +3 -0
- package/dist/utils/sql-dump/types.js.map +1 -0
- package/docs/ACCEPTANCE_CRITERIA.md +0 -0
- package/docs/AI_AGENT_GUIDE.md +2 -2
- package/docs/ARCHITECTURE.md +0 -0
- package/docs/AUTO_FILE_TRACKING.md +0 -0
- package/docs/BATCH_VALIDATION.md +617 -0
- package/docs/BEST_PRACTICES.md +0 -0
- package/docs/CONFIGURATION.md +0 -0
- package/docs/DATABASE_AUTH.md +0 -0
- package/docs/DECISION_CONTEXT.md +0 -0
- package/docs/DECISION_TO_TASK_MIGRATION_GUIDE.md +2 -2
- package/docs/GIT_AWARE_AUTO_COMPLETE.md +0 -0
- package/docs/SHARED_CONCEPTS.md +2 -2
- package/docs/SPECIALIZED_AGENTS.md +1 -1
- package/docs/TASK_ACTIONS.md +7 -7
- package/docs/TASK_DEPENDENCIES.md +0 -0
- package/docs/TASK_LINKING.md +0 -0
- package/docs/TASK_MIGRATION.md +5 -5
- package/docs/TASK_OVERVIEW.md +0 -0
- package/docs/TASK_PRUNING.md +0 -0
- package/docs/TASK_SYSTEM.md +5 -5
- package/docs/TOOL_REFERENCE.md +1 -1
- package/docs/TOOL_SELECTION.md +0 -0
- package/docs/WORKFLOWS.md +1 -1
- package/docs/cli/DATABASE_MIGRATION.md +0 -0
- package/docs/cli/DATA_EXPORT_IMPORT.md +400 -400
- package/docs/cli/README.md +227 -227
- package/package.json +5 -3
- package/dist/tools/config.d.ts +0 -58
- package/dist/tools/config.d.ts.map +0 -1
- package/dist/tools/config.js +0 -281
- package/dist/tools/config.js.map +0 -1
- package/dist/tools/constraints.d.ts +0 -49
- package/dist/tools/constraints.d.ts.map +0 -1
- package/dist/tools/constraints.js +0 -378
- package/dist/tools/constraints.js.map +0 -1
- package/dist/tools/context.d.ts +0 -208
- package/dist/tools/context.d.ts.map +0 -1
- package/dist/tools/context.js +0 -1661
- package/dist/tools/context.js.map +0 -1
- package/dist/tools/files.d.ts +0 -54
- package/dist/tools/files.d.ts.map +0 -1
- package/dist/tools/files.js +0 -478
- package/dist/tools/files.js.map +0 -1
- package/dist/tools/messaging.d.ts +0 -71
- package/dist/tools/messaging.d.ts.map +0 -1
- package/dist/tools/messaging.js +0 -483
- package/dist/tools/messaging.js.map +0 -1
- package/dist/tools/utils.d.ts +0 -70
- package/dist/tools/utils.d.ts.map +0 -1
- package/dist/tools/utils.js +0 -483
- package/dist/tools/utils.js.map +0 -1
- package/dist/utils/action-specs.d.ts +0 -46
- package/dist/utils/action-specs.d.ts.map +0 -1
- package/dist/utils/action-specs.js +0 -527
- package/dist/utils/action-specs.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -7,6 +7,248 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
7
7
|
|
|
8
8
|
---
|
|
9
9
|
|
|
10
|
+
## [3.8.0] - 2025-11-09
|
|
11
|
+
|
|
12
|
+
### BREAKING CHANGES
|
|
13
|
+
|
|
14
|
+
**Batch Action Naming Standardization**
|
|
15
|
+
|
|
16
|
+
`task.batch_create` has been renamed to `task.create_batch` to follow the `<verb>_batch` naming pattern used by other batch actions (`set_batch`, `record_batch`).
|
|
17
|
+
|
|
18
|
+
**Migration Required:**
|
|
19
|
+
```typescript
|
|
20
|
+
// ❌ Old (v3.7.x and earlier)
|
|
21
|
+
task({ action: "batch_create", tasks: [...] })
|
|
22
|
+
|
|
23
|
+
// ✅ New (v3.8.0+)
|
|
24
|
+
task({ action: "create_batch", tasks: [...] })
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
**Rationale:**
|
|
28
|
+
- Achieves 100% consistency across all batch actions
|
|
29
|
+
- Improves alphabetical sorting in IDE auto-completion (create → create_batch)
|
|
30
|
+
- Aligns with industry standard (REST APIs, GraphQL, ORMs use suffix pattern)
|
|
31
|
+
- See docs/ADR-batch-naming-standard.md for full justification
|
|
32
|
+
|
|
33
|
+
**Impact:**
|
|
34
|
+
- All code using `task.batch_create` must update to `task.create_batch`
|
|
35
|
+
- Simple find-replace migration (estimated 2-5 minutes per integration)
|
|
36
|
+
- No database schema changes required
|
|
37
|
+
|
|
38
|
+
### Removed
|
|
39
|
+
|
|
40
|
+
**Config Tool Removed (Phase 6)**
|
|
41
|
+
|
|
42
|
+
The orphaned config tool has been removed in favor of CLI-only configuration:
|
|
43
|
+
|
|
44
|
+
- **Deleted**: `src/tools/config.ts` (307 lines)
|
|
45
|
+
- **Removed**: `ConfigAction` type from `src/types.ts` and `src/types/actions.ts`
|
|
46
|
+
- **Removed**: ConfigAction import from `src/utils/parameter-validator.ts`
|
|
47
|
+
- **Updated**: README.md with CLI-only config approach documentation
|
|
48
|
+
- **Updated**: docs/CONFIGURATION.md already documented config tool removal
|
|
49
|
+
|
|
50
|
+
**Why removed:**
|
|
51
|
+
- Config tool was never registered in `tool-registry.ts` (orphaned code)
|
|
52
|
+
- Messaging system deprecated (primary use case eliminated)
|
|
53
|
+
- File-based configuration (`.sqlew/config.toml`) is clearer and more maintainable
|
|
54
|
+
- Runtime updates were confusing (changes lost on restart unless manually synced to file)
|
|
55
|
+
- Configuration drift between `m_config` table and config file
|
|
56
|
+
|
|
57
|
+
**Migration Path:**
|
|
58
|
+
- ✅ **Use `.sqlew/config.toml`** for all configuration (persistent, version-controlled)
|
|
59
|
+
- ✅ **Use CLI arguments** for one-time overrides (`--autodelete-message-hours=48`)
|
|
60
|
+
- ✅ **Internal config operations** preserved (`src/database/config/config-ops.ts`)
|
|
61
|
+
- ✅ **m_config table** preserved (used internally by retention logic)
|
|
62
|
+
|
|
63
|
+
**Impact:**
|
|
64
|
+
- Cleaner codebase with ~300 lines removed
|
|
65
|
+
- No functional impact - tool was never registered
|
|
66
|
+
- Configuration via file and CLI arguments only
|
|
67
|
+
|
|
68
|
+
**Message Tool Completely Removed**
|
|
69
|
+
|
|
70
|
+
The deprecated message tool has been completely removed from the codebase:
|
|
71
|
+
|
|
72
|
+
- **Deleted**: `src/tools/messaging.ts` (599 lines)
|
|
73
|
+
- **Removed**: Message tool entry from `tool-registry.ts`
|
|
74
|
+
- **Removed**: Message tool handler from `tool-handlers.ts`
|
|
75
|
+
- **Removed**: Message imports from `cli.ts`
|
|
76
|
+
- **Updated**: `MessageAction` type changed to `never` (backward compatibility stub)
|
|
77
|
+
- **CLI**: `sqlew query messages` now returns error message
|
|
78
|
+
|
|
79
|
+
**Migration Path**:
|
|
80
|
+
- No action required - messaging system was already marked deprecated in v3.6.6
|
|
81
|
+
- The `t_agent_messages` table was dropped in v3.6.6
|
|
82
|
+
- All message tool actions returned deprecation warnings since v3.6.6
|
|
83
|
+
|
|
84
|
+
**Impact**:
|
|
85
|
+
- Cleaner codebase with ~700 lines removed
|
|
86
|
+
- No functional impact - messaging system was unused
|
|
87
|
+
- MessageAction type remains as deprecated stub for backward compatibility
|
|
88
|
+
|
|
89
|
+
### Added
|
|
90
|
+
|
|
91
|
+
**Layer Expansion (5→9 layers)**
|
|
92
|
+
|
|
93
|
+
Added 4 new layers to enable better task classification and semantic validation:
|
|
94
|
+
|
|
95
|
+
**New FILE_REQUIRED layers:**
|
|
96
|
+
- `documentation` - README, CHANGELOG, API docs, architecture docs (file_actions required)
|
|
97
|
+
|
|
98
|
+
**New FILE_OPTIONAL layers:**
|
|
99
|
+
- `planning` - Research, spike tasks, investigation (file_actions optional)
|
|
100
|
+
- `coordination` - Multi-agent orchestration, task delegation (file_actions optional)
|
|
101
|
+
- `review` - Code review, design review, verification (file_actions optional)
|
|
102
|
+
|
|
103
|
+
**Existing layers** (5→6 FILE_REQUIRED):
|
|
104
|
+
- presentation, business, data, infrastructure, cross-cutting (file_actions required or empty array)
|
|
105
|
+
|
|
106
|
+
**Benefits:**
|
|
107
|
+
- Documentation layer enforces file operations for docs work
|
|
108
|
+
- Planning layers allow pure research tasks without file boilerplate
|
|
109
|
+
- Better semantic task classification across the development lifecycle
|
|
110
|
+
|
|
111
|
+
**file_actions Parameter for Tasks**
|
|
112
|
+
|
|
113
|
+
Introduced semantic `file_actions` parameter to replace generic `watch_files`:
|
|
114
|
+
|
|
115
|
+
```typescript
|
|
116
|
+
// New file_actions parameter
|
|
117
|
+
task.create({
|
|
118
|
+
title: "Implement OAuth",
|
|
119
|
+
layer: "business",
|
|
120
|
+
file_actions: [
|
|
121
|
+
{ action: "create", path: "src/auth/oauth.ts" },
|
|
122
|
+
{ action: "edit", path: "src/api/router.ts" },
|
|
123
|
+
{ action: "delete", path: "src/auth/legacy.ts" }
|
|
124
|
+
]
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
// Backward compatible - watch_files still works
|
|
128
|
+
task.create({
|
|
129
|
+
title: "Update config",
|
|
130
|
+
layer: "infrastructure",
|
|
131
|
+
watch_files: ["config.toml"] // Auto-converts to file_actions
|
|
132
|
+
});
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**Layer-Based Validation:**
|
|
136
|
+
- FILE_REQUIRED layers (6) → Must provide `file_actions` or `[]`
|
|
137
|
+
- FILE_OPTIONAL layers (3) → Can omit `file_actions` entirely
|
|
138
|
+
- Clear error messages with layer-specific guidance
|
|
139
|
+
|
|
140
|
+
**Benefits:**
|
|
141
|
+
- Self-documenting: `action: 'create'` vs `action: 'edit'` shows intent
|
|
142
|
+
- Prevents forgotten file watchers (validation enforced)
|
|
143
|
+
- No boilerplate for planning tasks (can omit parameter)
|
|
144
|
+
- Better token efficiency with automatic file watching
|
|
145
|
+
|
|
146
|
+
**PostgreSQL Adapter Implementation**
|
|
147
|
+
|
|
148
|
+
Full PostgreSQL 12+ support with complete adapter implementation:
|
|
149
|
+
|
|
150
|
+
**Adapter Features:**
|
|
151
|
+
- All 15 abstract methods implemented (`insertReturning`, `upsert`, `jsonExtract`, etc.)
|
|
152
|
+
- PostgreSQL-specific SQL syntax (RETURNING, ON CONFLICT, string_agg)
|
|
153
|
+
- Strict type handling (TRUE/FALSE for booleans, not 1/0)
|
|
154
|
+
- Timezone-aware timestamp functions
|
|
155
|
+
- Transaction support with savepoints
|
|
156
|
+
|
|
157
|
+
**Migration Compatibility:**
|
|
158
|
+
- All 22 migrations tested and verified on PostgreSQL 16.10
|
|
159
|
+
- Cross-database helper functions for view creation
|
|
160
|
+
- Proper CASCADE handling for foreign key dependencies
|
|
161
|
+
- Sequence management after explicit ID inserts
|
|
162
|
+
- GROUP BY strictness compliance
|
|
163
|
+
|
|
164
|
+
**Supported Databases:**
|
|
165
|
+
- SQLite 3.x (default, development)
|
|
166
|
+
- MySQL 8.0 / MariaDB 10+ (production)
|
|
167
|
+
- PostgreSQL 12+ (production) ✨ NEW
|
|
168
|
+
|
|
169
|
+
**Configuration:**
|
|
170
|
+
```toml
|
|
171
|
+
[database]
|
|
172
|
+
type = "postgres"
|
|
173
|
+
|
|
174
|
+
[database.connection]
|
|
175
|
+
host = "localhost"
|
|
176
|
+
port = 5432
|
|
177
|
+
database = "sqlew_db"
|
|
178
|
+
|
|
179
|
+
[database.auth]
|
|
180
|
+
type = "direct"
|
|
181
|
+
user = "sqlew_user"
|
|
182
|
+
password = "secret"
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Fixed
|
|
186
|
+
|
|
187
|
+
**Batch Action Parameter Parsing**
|
|
188
|
+
|
|
189
|
+
Fixed MCP client array serialization issue affecting all batch actions:
|
|
190
|
+
|
|
191
|
+
**Problem:** MCP client serializes array parameters as JSON strings:
|
|
192
|
+
```typescript
|
|
193
|
+
// MCP sends:
|
|
194
|
+
decisions: "[{\"key\": \"test\", \"value\": \"val\"}]" // String!
|
|
195
|
+
|
|
196
|
+
// Expected:
|
|
197
|
+
decisions: [{key: "test", value: "val"}] // Array
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
**Solution:** Added JSON parsing in `tool-handlers.ts` for all batch actions:
|
|
201
|
+
- `decision.set_batch` - parse `decisions` parameter
|
|
202
|
+
- `file.record_batch` - parse `file_changes` parameter
|
|
203
|
+
- `task.create_batch` - parse `tasks` parameter
|
|
204
|
+
|
|
205
|
+
**Impact:** All batch actions now work correctly with array parameters from MCP client.
|
|
206
|
+
|
|
207
|
+
**Help System Synchronization**
|
|
208
|
+
|
|
209
|
+
Fixed critical bug where help database was severely out of sync with code:
|
|
210
|
+
|
|
211
|
+
**Problem:** 25 actions missing from `m_help_actions` table, causing help system to lie about available actions.
|
|
212
|
+
|
|
213
|
+
**Missing Actions:**
|
|
214
|
+
- decision: 9 actions (quick_set, search_advanced, set_batch, has_updates, etc.)
|
|
215
|
+
- task: 14 actions (update, get, list, move, link, archive, create_batch, etc.)
|
|
216
|
+
- constraint: 1 action (use_case)
|
|
217
|
+
|
|
218
|
+
**Solution:** Created migration `20251109020000_fix_missing_help_actions_v3_8_0.ts` to:
|
|
219
|
+
- Add all 25 missing actions with correct descriptions
|
|
220
|
+
- Idempotent checks to prevent duplicates
|
|
221
|
+
- Full synchronization between code and database
|
|
222
|
+
|
|
223
|
+
**Impact:** Help system now accurately reports all available actions.
|
|
224
|
+
|
|
225
|
+
### Changed
|
|
226
|
+
|
|
227
|
+
**Tool Registry Schema Fix**
|
|
228
|
+
|
|
229
|
+
Added `additionalProperties: true` to all tool schemas in `tool-registry.ts`:
|
|
230
|
+
|
|
231
|
+
**Problem:** MCP couldn't pass action-specific parameters (key, value, tags, etc.) because schemas only defined `action` property.
|
|
232
|
+
|
|
233
|
+
**Solution:**
|
|
234
|
+
```typescript
|
|
235
|
+
{
|
|
236
|
+
name: 'decision',
|
|
237
|
+
inputSchema: {
|
|
238
|
+
type: 'object',
|
|
239
|
+
properties: {
|
|
240
|
+
action: { ... }
|
|
241
|
+
},
|
|
242
|
+
required: ['action'],
|
|
243
|
+
additionalProperties: true, // ← CRITICAL FIX
|
|
244
|
+
},
|
|
245
|
+
}
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
**Impact:** All MCP tools now accept action-specific parameters correctly.
|
|
249
|
+
|
|
250
|
+
---
|
|
251
|
+
|
|
10
252
|
## [3.7.4] - 2025-11-08
|
|
11
253
|
|
|
12
254
|
### Added - Complete JSON Import/Export System
|
|
@@ -1186,7 +1428,7 @@ This version was replaced by v3.2.4. Use v3.2.4 or later.
|
|
|
1186
1428
|
- New triggers: `trg_log_task_create`, `trg_log_task_status_change`, `trg_update_task_timestamp`
|
|
1187
1429
|
|
|
1188
1430
|
#### MCP Actions (task tool)
|
|
1189
|
-
- `create`, `update`, `get`, `list`, `move`, `link`, `archive`, `
|
|
1431
|
+
- `create`, `update`, `get`, `list`, `move`, `link`, `archive`, `create_batch`
|
|
1190
1432
|
- `watch_files` - Start file watching for auto-transitions
|
|
1191
1433
|
|
|
1192
1434
|
#### Documentation
|
package/LICENSE
CHANGED
|
File without changes
|
package/README.md
CHANGED
|
@@ -94,10 +94,21 @@ It's Ready!
|
|
|
94
94
|
|
|
95
95
|
## Configuration
|
|
96
96
|
|
|
97
|
+
### Database Support
|
|
98
|
+
|
|
99
|
+
sqlew supports multiple database backends for different deployment scenarios:
|
|
100
|
+
|
|
101
|
+
| Database | Use Case | Status |
|
|
102
|
+
|----------|----------|--------|
|
|
103
|
+
| **SQLite** | Development, small projects | ✅ Default |
|
|
104
|
+
| **MySQL 8.0 / MariaDB 10+** | Production, shared environments | ✅ Supported |
|
|
105
|
+
| **PostgreSQL 12+** | Production, enterprise | ✅ v3.8.0+ |
|
|
106
|
+
|
|
97
107
|
### Optional Config File
|
|
98
108
|
|
|
99
109
|
On first run, `.sqlew/config.toml` will be created for persistent settings:
|
|
100
110
|
|
|
111
|
+
**SQLite (Default):**
|
|
101
112
|
```toml
|
|
102
113
|
[database]
|
|
103
114
|
path = ".sqlew/custom.db"
|
|
@@ -107,12 +118,70 @@ ignore_weekend = true
|
|
|
107
118
|
message_hours = 48
|
|
108
119
|
```
|
|
109
120
|
|
|
121
|
+
**PostgreSQL:**
|
|
122
|
+
```toml
|
|
123
|
+
[database]
|
|
124
|
+
type = "postgres"
|
|
125
|
+
|
|
126
|
+
[database.connection]
|
|
127
|
+
host = "localhost"
|
|
128
|
+
port = 5432
|
|
129
|
+
database = "sqlew_db"
|
|
130
|
+
|
|
131
|
+
[database.auth]
|
|
132
|
+
type = "direct"
|
|
133
|
+
user = "sqlew_user"
|
|
134
|
+
password = "secret"
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
**MySQL/MariaDB:**
|
|
138
|
+
```toml
|
|
139
|
+
[database]
|
|
140
|
+
type = "mysql"
|
|
141
|
+
|
|
142
|
+
[database.connection]
|
|
143
|
+
host = "localhost"
|
|
144
|
+
port = 3306
|
|
145
|
+
database = "sqlew_db"
|
|
146
|
+
|
|
147
|
+
[database.auth]
|
|
148
|
+
type = "direct"
|
|
149
|
+
user = "sqlew_user"
|
|
150
|
+
password = "secret"
|
|
151
|
+
```
|
|
152
|
+
|
|
110
153
|
Also `.sqlew/config.example.toml` is created for reference.
|
|
111
154
|
|
|
112
155
|
**Settings Priority:** CLI args > config.toml > database defaults
|
|
113
156
|
|
|
114
157
|
See [docs/CONFIGURATION.md](docs/CONFIGURATION.md) for all options and validation rules.
|
|
115
158
|
|
|
159
|
+
### CLI Configuration (Recommended)
|
|
160
|
+
|
|
161
|
+
Configuration is managed via **`.sqlew/config.toml`** file and **CLI arguments only**. The MCP `config` tool has been removed for simplicity.
|
|
162
|
+
|
|
163
|
+
**Why CLI-only configuration?**
|
|
164
|
+
- **No drift:** Single source of truth (config file)
|
|
165
|
+
- **Version control:** Commit config to git, share with team
|
|
166
|
+
- **Clear documentation:** Config file documents project requirements
|
|
167
|
+
- **Type safety:** TOML validation catches errors at startup
|
|
168
|
+
|
|
169
|
+
**Common CLI arguments:**
|
|
170
|
+
```bash
|
|
171
|
+
# Custom database path
|
|
172
|
+
npx sqlew /path/to/database.db
|
|
173
|
+
|
|
174
|
+
# Auto-deletion settings
|
|
175
|
+
npx sqlew --autodelete-message-hours=48
|
|
176
|
+
npx sqlew --autodelete-file-history-days=30
|
|
177
|
+
npx sqlew --autodelete-ignore-weekend
|
|
178
|
+
|
|
179
|
+
# Custom config file
|
|
180
|
+
npx sqlew --config-path=.sqlew/custom.toml
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
For persistent settings, edit `.sqlew/config.toml` instead of using CLI arguments.
|
|
184
|
+
|
|
116
185
|
## Quick Start
|
|
117
186
|
|
|
118
187
|
install it, launch claude, exit claude and launch Claude again.
|
|
File without changes
|
package/assets/kanban-style.png
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -91,7 +91,7 @@ stats({ action: "example" }) // Statistics and monitoring patterns
|
|
|
91
91
|
// Step 3: Copy the relevant example, modify values, execute
|
|
92
92
|
// Example from action: "example" output:
|
|
93
93
|
task({
|
|
94
|
-
action: "
|
|
94
|
+
action: "create_batch",
|
|
95
95
|
tasks: [
|
|
96
96
|
{ title: "Design API", priority: 3, assigned_agent: "architect" },
|
|
97
97
|
{ title: "Implement API", priority: 3, assigned_agent: "backend" },
|
|
@@ -117,10 +117,10 @@ task({ action: "create", title: "Task", tags: "backend,api" })
|
|
|
117
117
|
task({ action: "create", title: "Task", tags: ["backend", "api"] })
|
|
118
118
|
|
|
119
119
|
// ❌ WRONG - atomic as string
|
|
120
|
-
task({ action: "
|
|
120
|
+
task({ action: "create_batch", tasks: [...], atomic: "true" })
|
|
121
121
|
|
|
122
122
|
// ✅ CORRECT - atomic as boolean
|
|
123
|
-
task({ action: "
|
|
123
|
+
task({ action: "create_batch", tasks: [...], atomic: false })
|
|
124
124
|
```
|
|
125
125
|
|
|
126
126
|
### When Stuck or Getting Errors
|
|
@@ -154,7 +154,7 @@ Before executing ANY sqlew tool call:
|
|
|
154
154
|
|
|
155
155
|
**Get Correct Syntax**: Always use `task({ action: "example" })` for current parameter format.
|
|
156
156
|
|
|
157
|
-
**Token Optimization**: Use `
|
|
157
|
+
**Token Optimization**: Use `create_batch` for multiple related tasks instead of individual `create` calls.
|
|
158
158
|
|
|
159
159
|
### Dependency Management
|
|
160
160
|
- Use `add_dependency` to establish blocker → blocked relationships
|
package/assets/schema.sql
CHANGED
|
File without changes
|
package/assets/sqlew-logo.png
CHANGED
|
File without changes
|
|
@@ -4,8 +4,30 @@ import type { DatabaseConfig } from '../config/types.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* PostgreSQL adapter implementation with authentication support.
|
|
6
6
|
*
|
|
7
|
-
* This adapter
|
|
8
|
-
*
|
|
7
|
+
* This adapter provides PostgreSQL-specific implementations for database operations,
|
|
8
|
+
* integrating with the authentication layer for secure connections via SSH tunnels,
|
|
9
|
+
* direct connections, or cloud IAM (AWS RDS, GCP Cloud SQL).
|
|
10
|
+
*
|
|
11
|
+
* **PostgreSQL-Specific Features:**
|
|
12
|
+
* - RETURNING clause for insert/update/delete
|
|
13
|
+
* - ON CONFLICT ... DO UPDATE for upserts
|
|
14
|
+
* - jsonb_extract_path() and jsonb_build_object() for JSON operations
|
|
15
|
+
* - string_agg() for string aggregation
|
|
16
|
+
* - EXTRACT(EPOCH FROM ...) for Unix timestamp conversions
|
|
17
|
+
* - SERIAL/BIGSERIAL for auto-increment columns
|
|
18
|
+
* - Full transaction support with savepoints
|
|
19
|
+
* - Common Table Expressions (CTEs) and window functions
|
|
20
|
+
*
|
|
21
|
+
* **Supported PostgreSQL Versions:**
|
|
22
|
+
* - PostgreSQL 16+ (full feature support)
|
|
23
|
+
* - PostgreSQL 12-15 (full feature support)
|
|
24
|
+
* - PostgreSQL 9.5+ (basic feature support)
|
|
25
|
+
*
|
|
26
|
+
* **Authentication Methods:**
|
|
27
|
+
* - Direct: Standard username/password authentication
|
|
28
|
+
* - SSH Tunnel: Connect via SSH bastion host
|
|
29
|
+
* - AWS RDS IAM: Token-based authentication for AWS RDS
|
|
30
|
+
* - GCP Cloud SQL IAM: Token-based authentication for Cloud SQL
|
|
9
31
|
*
|
|
10
32
|
* @extends BaseAdapter
|
|
11
33
|
*/
|
|
@@ -18,25 +40,195 @@ export declare class PostgreSQLAdapter extends BaseAdapter {
|
|
|
18
40
|
readonly supportsSavepoints = true;
|
|
19
41
|
readonly databaseName: "postgresql";
|
|
20
42
|
constructor(config: DatabaseConfig);
|
|
43
|
+
/**
|
|
44
|
+
* Returns the Knex dialect for PostgreSQL.
|
|
45
|
+
*
|
|
46
|
+
* Uses 'pg' driver which supports:
|
|
47
|
+
* - Prepared statements
|
|
48
|
+
* - Promise-based API
|
|
49
|
+
* - Connection pooling
|
|
50
|
+
* - Full Unicode support
|
|
51
|
+
*
|
|
52
|
+
* @returns {string} 'pg' dialect identifier
|
|
53
|
+
*/
|
|
21
54
|
getDialect(): string;
|
|
55
|
+
/**
|
|
56
|
+
* Initializes PostgreSQL-specific session settings.
|
|
57
|
+
*
|
|
58
|
+
* **Configuration Applied:**
|
|
59
|
+
* - Timezone: UTC for consistent timestamp handling
|
|
60
|
+
* - Statement timeout: 30 seconds (prevents long-running queries)
|
|
61
|
+
* - Client encoding: UTF8 for full Unicode support
|
|
62
|
+
* - Default transaction isolation: READ COMMITTED
|
|
63
|
+
*
|
|
64
|
+
* @returns {Promise<void>}
|
|
65
|
+
* @throws {Error} If database does not exist or cannot be accessed
|
|
66
|
+
*/
|
|
22
67
|
initialize(): Promise<void>;
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
68
|
+
/**
|
|
69
|
+
* Inserts a row and returns the inserted record using RETURNING clause.
|
|
70
|
+
*
|
|
71
|
+
* PostgreSQL supports RETURNING clause natively, making this more efficient
|
|
72
|
+
* than MySQL's approach (insert + select).
|
|
73
|
+
*
|
|
74
|
+
* @template T - Record type
|
|
75
|
+
* @param {string} table - Table name
|
|
76
|
+
* @param {Partial<T>} data - Data to insert
|
|
77
|
+
* @returns {Promise<T>} Inserted record
|
|
78
|
+
* @throws {Error} If insert fails
|
|
79
|
+
*/
|
|
26
80
|
insertReturning<T extends Record<string, any>>(table: string, data: Partial<T>): Promise<T>;
|
|
81
|
+
/**
|
|
82
|
+
* Upserts a row using PostgreSQL's ON CONFLICT ... DO UPDATE syntax.
|
|
83
|
+
*
|
|
84
|
+
* **Behavior:**
|
|
85
|
+
* - If row with conflicting key exists: UPDATE specified columns
|
|
86
|
+
* - If no conflict: INSERT new row
|
|
87
|
+
* - Returns number of affected rows
|
|
88
|
+
*
|
|
89
|
+
* @template T - Record type
|
|
90
|
+
* @param {string} table - Table name
|
|
91
|
+
* @param {Partial<T>} data - Data to insert/update
|
|
92
|
+
* @param {string[]} conflictColumns - Columns that define uniqueness (must have UNIQUE index)
|
|
93
|
+
* @param {string[]} [updateColumns] - Columns to update on conflict (default: all except conflict columns)
|
|
94
|
+
* @returns {Promise<number>} Affected rows (1 = insert or update)
|
|
95
|
+
* @throws {Error} If conflictColumns don't have UNIQUE constraint
|
|
96
|
+
*/
|
|
27
97
|
upsert<T extends Record<string, any>>(table: string, data: Partial<T>, conflictColumns: string[], updateColumns?: string[]): Promise<number>;
|
|
98
|
+
/**
|
|
99
|
+
* Extracts a value from a JSONB column using jsonb_extract_path_text().
|
|
100
|
+
*
|
|
101
|
+
* **PostgreSQL JSON Path Syntax:**
|
|
102
|
+
* - Nested objects: 'address', 'city' (separate arguments)
|
|
103
|
+
* - Array access: Use jsonb_array_element() separately
|
|
104
|
+
*
|
|
105
|
+
* @param {string} column - JSONB column name
|
|
106
|
+
* @param {string} path - JSON path (e.g., 'address.city')
|
|
107
|
+
* @returns {Knex.Raw} Raw SQL expression for JSON extraction
|
|
108
|
+
*/
|
|
28
109
|
jsonExtract(column: string, path: string): Knex.Raw;
|
|
110
|
+
/**
|
|
111
|
+
* Builds a JSON object from field values using jsonb_build_object().
|
|
112
|
+
*
|
|
113
|
+
* @param {Record<string, any>} fields - Object with key-value pairs
|
|
114
|
+
* @returns {Knex.Raw} Raw SQL expression for JSON object construction
|
|
115
|
+
*/
|
|
29
116
|
jsonBuildObject(fields: Record<string, any>): Knex.Raw;
|
|
117
|
+
/**
|
|
118
|
+
* Returns current Unix timestamp using EXTRACT(EPOCH FROM NOW()).
|
|
119
|
+
*
|
|
120
|
+
* **Behavior:**
|
|
121
|
+
* - Returns seconds since Unix epoch (1970-01-01 00:00:00 UTC)
|
|
122
|
+
* - Always returns UTC timestamp
|
|
123
|
+
* - Returns numeric value (may have fractional seconds)
|
|
124
|
+
*
|
|
125
|
+
* @returns {Knex.Raw} Raw SQL expression for current timestamp
|
|
126
|
+
*/
|
|
30
127
|
currentTimestamp(): Knex.Raw;
|
|
128
|
+
/**
|
|
129
|
+
* Converts Unix epoch timestamp to PostgreSQL timestamp using TO_TIMESTAMP().
|
|
130
|
+
*
|
|
131
|
+
* **Behavior:**
|
|
132
|
+
* - Converts integer epoch to TIMESTAMP WITH TIME ZONE
|
|
133
|
+
* - Returns UTC timestamp
|
|
134
|
+
* - Handles NULL values
|
|
135
|
+
*
|
|
136
|
+
* @param {string} epochColumn - Column containing Unix epoch timestamp
|
|
137
|
+
* @returns {Knex.Raw} Raw SQL expression for epoch conversion
|
|
138
|
+
*/
|
|
31
139
|
fromUnixEpoch(epochColumn: string): Knex.Raw;
|
|
140
|
+
/**
|
|
141
|
+
* Converts PostgreSQL timestamp to Unix epoch using EXTRACT(EPOCH FROM ...).
|
|
142
|
+
*
|
|
143
|
+
* **Behavior:**
|
|
144
|
+
* - Converts TIMESTAMP to integer epoch
|
|
145
|
+
* - Assumes input is UTC
|
|
146
|
+
* - Handles NULL values
|
|
147
|
+
*
|
|
148
|
+
* @param {string} timestampColumn - Column containing timestamp value
|
|
149
|
+
* @returns {Knex.Raw} Raw SQL expression for timestamp conversion
|
|
150
|
+
*/
|
|
32
151
|
toUnixEpoch(timestampColumn: string): Knex.Raw;
|
|
152
|
+
/**
|
|
153
|
+
* Concatenates string values using || operator.
|
|
154
|
+
*
|
|
155
|
+
* **Behavior:**
|
|
156
|
+
* - PostgreSQL uses || for concatenation
|
|
157
|
+
* - Returns NULL if any argument is NULL (use COALESCE to handle)
|
|
158
|
+
* - Empty strings are preserved
|
|
159
|
+
*
|
|
160
|
+
* @param {...(string | Knex.Raw)[]} values - Values to concatenate
|
|
161
|
+
* @returns {Knex.Raw} Raw SQL expression for concatenation
|
|
162
|
+
*/
|
|
33
163
|
concat(...values: Array<string | Knex.Raw>): Knex.Raw;
|
|
164
|
+
/**
|
|
165
|
+
* Aggregates strings with separator using string_agg().
|
|
166
|
+
*
|
|
167
|
+
* **Behavior:**
|
|
168
|
+
* - Concatenates values from multiple rows into single string
|
|
169
|
+
* - NULL values are skipped
|
|
170
|
+
* - No result length limit (unlike MySQL's GROUP_CONCAT)
|
|
171
|
+
*
|
|
172
|
+
* @param {string} column - Column to aggregate
|
|
173
|
+
* @param {string} [separator=','] - Separator between values
|
|
174
|
+
* @returns {Knex.Raw} Raw SQL expression for string aggregation
|
|
175
|
+
*/
|
|
34
176
|
stringAgg(column: string, separator?: string): Knex.Raw;
|
|
177
|
+
/**
|
|
178
|
+
* Executes a callback within a database transaction.
|
|
179
|
+
*
|
|
180
|
+
* **PostgreSQL Transaction Characteristics:**
|
|
181
|
+
* - Default isolation level: READ COMMITTED
|
|
182
|
+
* - Supports nested transactions via savepoints
|
|
183
|
+
* - Automatic rollback on error
|
|
184
|
+
* - MVCC (Multi-Version Concurrency Control)
|
|
185
|
+
*
|
|
186
|
+
* @template T - Return type
|
|
187
|
+
* @param {Function} callback - Transaction callback
|
|
188
|
+
* @param {Object} [options] - Transaction options
|
|
189
|
+
* @param {string} [options.isolationLevel] - Isolation level
|
|
190
|
+
* @returns {Promise<T>} Transaction result
|
|
191
|
+
*/
|
|
35
192
|
transaction<T>(callback: (trx: Knex.Transaction) => Promise<T>, options?: {
|
|
36
193
|
isolationLevel?: 'serializable' | 'read committed' | 'repeatable read';
|
|
37
194
|
}): Promise<T>;
|
|
195
|
+
/**
|
|
196
|
+
* Creates a savepoint within a transaction.
|
|
197
|
+
*
|
|
198
|
+
* **PostgreSQL Savepoint Behavior:**
|
|
199
|
+
* - Allows partial rollback within transaction
|
|
200
|
+
* - Savepoint names are case-sensitive
|
|
201
|
+
* - Automatically released on transaction commit
|
|
202
|
+
* - Rolled back on transaction rollback
|
|
203
|
+
*
|
|
204
|
+
* @template T - Return type
|
|
205
|
+
* @param {Knex.Transaction} trx - Parent transaction
|
|
206
|
+
* @param {Function} callback - Savepoint callback
|
|
207
|
+
* @returns {Promise<T>} Savepoint result
|
|
208
|
+
*/
|
|
38
209
|
savepoint<T>(trx: Knex.Transaction, callback: (sp: Knex.Transaction) => Promise<T>): Promise<T>;
|
|
210
|
+
/**
|
|
211
|
+
* Checks if a table exists in the database.
|
|
212
|
+
*
|
|
213
|
+
* Queries information_schema.tables which is the standard PostgreSQL approach
|
|
214
|
+
* for table existence checking.
|
|
215
|
+
*
|
|
216
|
+
* @param {string} tableName - Table name to check
|
|
217
|
+
* @returns {Promise<boolean>} True if table exists, false otherwise
|
|
218
|
+
*/
|
|
39
219
|
tableExists(tableName: string): Promise<boolean>;
|
|
220
|
+
/**
|
|
221
|
+
* Adds a serial auto-increment primary key column to a table.
|
|
222
|
+
*
|
|
223
|
+
* **PostgreSQL SERIAL Behavior:**
|
|
224
|
+
* - SERIAL = INTEGER with auto-increment (sequence)
|
|
225
|
+
* - BIGSERIAL = BIGINT with auto-increment (recommended for large tables)
|
|
226
|
+
* - Automatically creates a sequence (tablename_columnname_seq)
|
|
227
|
+
* - Primary key constraint added automatically
|
|
228
|
+
*
|
|
229
|
+
* @param {Knex.CreateTableBuilder} table - Knex table builder
|
|
230
|
+
* @param {string} [columnName='id'] - Column name (default: 'id')
|
|
231
|
+
*/
|
|
40
232
|
autoIncrementColumn(table: Knex.CreateTableBuilder, columnName?: string): void;
|
|
41
233
|
}
|
|
42
234
|
//# sourceMappingURL=postgresql-adapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"postgresql-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"postgresql-adapter.d.ts","sourceRoot":"","sources":["../../src/adapters/postgresql-adapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,qBAAa,iBAAkB,SAAQ,WAAW;IAEhD,QAAQ,CAAC,iBAAiB,QAAQ;IAClC,QAAQ,CAAC,YAAY,QAAQ;IAC7B,QAAQ,CAAC,cAAc,QAAQ;IAC/B,QAAQ,CAAC,WAAW,QAAQ;IAC5B,QAAQ,CAAC,uBAAuB,QAAQ;IACxC,QAAQ,CAAC,kBAAkB,QAAQ;IACnC,QAAQ,CAAC,YAAY,EAAG,YAAY,CAAU;gBAElC,MAAM,EAAE,cAAc;IAIlC;;;;;;;;;;OAUG;IACH,UAAU,IAAI,MAAM;IAIpB;;;;;;;;;;;OAWG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA6CjC;;;;;;;;;;;OAWG;IACG,eAAe,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjD,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,GACf,OAAO,CAAC,CAAC,CAAC;IAab;;;;;;;;;;;;;;;OAeG;IACG,MAAM,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACxC,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAChB,eAAe,EAAE,MAAM,EAAE,EACzB,aAAa,CAAC,EAAE,MAAM,EAAE,GACvB,OAAO,CAAC,MAAM,CAAC;IAuBlB;;;;;;;;;;OAUG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAQnD;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG;IAiBtD;;;;;;;;;OASG;IACH,gBAAgB,IAAI,IAAI,CAAC,GAAG;IAI5B;;;;;;;;;;OAUG;IACH,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAI5C;;;;;;;;;;OAUG;IACH,WAAW,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG;IAI9C;;;;;;;;;;OAUG;IACH,MAAM,CAAC,GAAG,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG;IAMrD;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAY,GAAG,IAAI,CAAC,GAAG;IAQ5D;;;;;;;;;;;;;;OAcG;IACG,WAAW,CAAC,CAAC,EACjB,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,EAC/C,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,cAAc,GAAG,gBAAgB,GAAG,iBAAiB,CAAA;KAAE,GACnF,OAAO,CAAC,CAAC,CAAC;IAKb;;;;;;;;;;;;;OAaG;IACG,SAAS,CAAC,CAAC,EACf,GAAG,EAAE,IAAI,CAAC,WAAW,EACrB,QAAQ,EAAE,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,CAAC,CAAC;IAQb;;;;;;;;OAQG;IACG,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAetD;;;;;;;;;;;OAWG;IACH,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAE,MAAa,GAAG,IAAI;CAIrF"}
|