sqlew 3.7.3 → 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 +427 -1
- package/README.md +71 -2
- package/assets/kanban-visualizer.png +0 -0
- package/assets/sample-agents/sqlew-scrum-master.md +4 -4
- 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/db-export.d.ts +29 -0
- package/dist/cli/db-export.d.ts.map +1 -0
- package/dist/cli/db-export.js +251 -0
- package/dist/cli/db-export.js.map +1 -0
- package/dist/cli/db-import.d.ts +31 -0
- package/dist/cli/db-import.d.ts.map +1 -0
- package/dist/cli/db-import.js +258 -0
- package/dist/cli/db-import.js.map +1 -0
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +32 -73
- 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/migrations/test-all-versions-real.js +3 -2
- package/dist/tests/migrations/test-all-versions-real.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 +133 -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/exporter/export.d.ts +100 -0
- package/dist/utils/exporter/export.d.ts.map +1 -0
- package/dist/utils/exporter/export.js +363 -0
- package/dist/utils/exporter/export.js.map +1 -0
- package/dist/utils/importer/import.d.ts +29 -0
- package/dist/utils/importer/import.d.ts.map +1 -0
- package/dist/utils/importer/import.js +514 -0
- package/dist/utils/importer/import.js.map +1 -0
- package/dist/utils/importer/master-tables.d.ts +18 -0
- package/dist/utils/importer/master-tables.d.ts.map +1 -0
- package/dist/utils/importer/master-tables.js +255 -0
- package/dist/utils/importer/master-tables.js.map +1 -0
- package/dist/utils/importer/topological-sort.d.ts +61 -0
- package/dist/utils/importer/topological-sort.d.ts.map +1 -0
- package/dist/utils/importer/topological-sort.js +143 -0
- package/dist/utils/importer/topological-sort.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/AI_AGENT_GUIDE.md +2 -2
- package/docs/AUTO_FILE_TRACKING.md +0 -1
- package/docs/BATCH_VALIDATION.md +617 -0
- package/docs/DATABASE_AUTH.md +1 -2
- package/docs/DECISION_TO_TASK_MIGRATION_GUIDE.md +2 -2
- package/docs/SHARED_CONCEPTS.md +2 -2
- package/docs/SPECIALIZED_AGENTS.md +1 -1
- package/docs/TASK_ACTIONS.md +7 -7
- package/docs/TASK_MIGRATION.md +5 -5
- package/docs/TASK_SYSTEM.md +5 -5
- package/docs/TOOL_REFERENCE.md +1 -3
- package/docs/WORKFLOWS.md +1 -1
- package/docs/{DATABASE_MIGRATION.md → cli/DATABASE_MIGRATION.md} +71 -32
- package/docs/cli/DATA_EXPORT_IMPORT.md +400 -0
- package/docs/cli/README.md +227 -0
- package/package.json +7 -4
- 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/docs/BASEADAPTER_IMPLEMENTATION.md +0 -399
- package/docs/HELP_PREVIEW_COMPARISON.md +0 -259
- package/docs/MIGRATION_CHAIN.md +0 -293
- package/docs/MIGRATION_v2.md +0 -538
- package/docs/MIGRATION_v3.3.md +0 -602
- package/docs/MIGRATION_v3.6.0.md +0 -170
- package/docs/MULTI_PROJECT_ARCHITECTURE.md +0 -497
|
@@ -1,399 +0,0 @@
|
|
|
1
|
-
# BaseAdapter Implementation Summary
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
|
|
5
|
-
The `BaseAdapter` abstract class has been successfully implemented as part of the multi-RDBMS adapter system (Issue #20, Task #67). This implementation integrates authentication providers with database adapters, providing a unified foundation for all database connections.
|
|
6
|
-
|
|
7
|
-
## Implementation Details
|
|
8
|
-
|
|
9
|
-
### File Structure
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
src/adapters/
|
|
13
|
-
├── base-adapter.ts # NEW: Abstract base class with auth integration
|
|
14
|
-
├── sqlite-adapter.ts # UPDATED: Now extends BaseAdapter
|
|
15
|
-
├── postgresql-adapter.ts # UPDATED: Now extends BaseAdapter (stub)
|
|
16
|
-
├── mysql-adapter.ts # UPDATED: Now extends BaseAdapter (stub)
|
|
17
|
-
├── types.ts # UNCHANGED: DatabaseAdapter interface
|
|
18
|
-
├── index.ts # UPDATED: Exports BaseAdapter, updated factory
|
|
19
|
-
└── auth/
|
|
20
|
-
├── base-auth-provider.ts # Authentication provider base (completed)
|
|
21
|
-
├── direct-auth-provider.ts # Direct connection auth (completed)
|
|
22
|
-
├── auth-factory.ts # Provider factory (completed)
|
|
23
|
-
└── auth-types.ts # Type definitions (deprecated shim)
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
**Note**: SSH tunneling support was removed as of 2025-10-28. Users must set up SSH tunnels manually using the `ssh -L` command.
|
|
27
|
-
|
|
28
|
-
### Key Features
|
|
29
|
-
|
|
30
|
-
#### 1. **Authentication Integration**
|
|
31
|
-
|
|
32
|
-
The BaseAdapter integrates with authentication providers through a factory pattern:
|
|
33
|
-
|
|
34
|
-
```typescript
|
|
35
|
-
export abstract class BaseAdapter implements DatabaseAdapter {
|
|
36
|
-
protected readonly config: DatabaseConfig;
|
|
37
|
-
protected authProvider: BaseAuthProvider | null = null;
|
|
38
|
-
protected knexInstance: Knex | null = null;
|
|
39
|
-
|
|
40
|
-
async connect(): Promise<Knex> {
|
|
41
|
-
// Create authentication provider
|
|
42
|
-
this.authProvider = createAuthProvider(this.config);
|
|
43
|
-
|
|
44
|
-
// Authenticate and get connection parameters
|
|
45
|
-
if (this.authProvider !== null) {
|
|
46
|
-
this.authProvider.validate();
|
|
47
|
-
const connParams = await this.authProvider.authenticate();
|
|
48
|
-
const knexConfig = this.buildKnexConfig(connParams);
|
|
49
|
-
this.knexInstance = knex(knexConfig);
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// Initialize adapter-specific settings
|
|
53
|
-
await this.initialize();
|
|
54
|
-
|
|
55
|
-
return this.knexInstance;
|
|
56
|
-
}
|
|
57
|
-
}
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
#### 2. **Connection Lifecycle Management**
|
|
61
|
-
|
|
62
|
-
Complete lifecycle management with proper resource cleanup:
|
|
63
|
-
|
|
64
|
-
- **connect()**: Authenticate → Create Knex instance → Initialize
|
|
65
|
-
- **disconnect()**: Close Knex connection pool
|
|
66
|
-
- **cleanup()**: Release auth provider resources (SSH tunnels, tokens)
|
|
67
|
-
|
|
68
|
-
#### 3. **Abstract Methods**
|
|
69
|
-
|
|
70
|
-
Subclasses must implement:
|
|
71
|
-
|
|
72
|
-
- `initialize()`: Adapter-specific setup (pragmas, session settings)
|
|
73
|
-
- `getDialect()`: Knex dialect identifier ('sqlite3', 'pg', 'mysql2')
|
|
74
|
-
- Query adaptation methods (insertReturning, upsert, jsonExtract, etc.)
|
|
75
|
-
|
|
76
|
-
#### 4. **Backward Compatibility**
|
|
77
|
-
|
|
78
|
-
The implementation maintains full backward compatibility:
|
|
79
|
-
|
|
80
|
-
- Existing `DatabaseAdapter` interface unchanged
|
|
81
|
-
- Factory function supports both old and new signatures
|
|
82
|
-
- SQLite adapter works exactly as before (bypasses auth flow)
|
|
83
|
-
|
|
84
|
-
### Updated Adapters
|
|
85
|
-
|
|
86
|
-
#### SQLite Adapter
|
|
87
|
-
|
|
88
|
-
```typescript
|
|
89
|
-
export class SQLiteAdapter extends BaseAdapter {
|
|
90
|
-
constructor(config: DatabaseConfig) {
|
|
91
|
-
super(config);
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
getDialect(): string {
|
|
95
|
-
return 'better-sqlite3';
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
async initialize(): Promise<void> {
|
|
99
|
-
const knex = this.getKnex();
|
|
100
|
-
// Configure SQLite pragmas
|
|
101
|
-
await knex.raw('PRAGMA journal_mode = WAL');
|
|
102
|
-
await knex.raw('PRAGMA foreign_keys = ON');
|
|
103
|
-
await knex.raw('PRAGMA synchronous = NORMAL');
|
|
104
|
-
await knex.raw('PRAGMA busy_timeout = 5000');
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
// Overrides connect() to bypass authentication
|
|
108
|
-
async connect(config?: Knex.Config): Promise<Knex> {
|
|
109
|
-
// SQLite doesn't need auth provider
|
|
110
|
-
this.knexInstance = knex(config || this.buildDefaultConfig());
|
|
111
|
-
this.rawConnection = await this.acquireRawConnection();
|
|
112
|
-
await this.initialize();
|
|
113
|
-
return this.knexInstance;
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
#### PostgreSQL & MySQL Adapters (Stubs)
|
|
119
|
-
|
|
120
|
-
Both adapters now extend BaseAdapter with proper constructors, but throw "not implemented" errors for Phase 3:
|
|
121
|
-
|
|
122
|
-
```typescript
|
|
123
|
-
export class PostgreSQLAdapter extends BaseAdapter {
|
|
124
|
-
constructor(config: DatabaseConfig) {
|
|
125
|
-
super(config);
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
getDialect(): string {
|
|
129
|
-
return 'pg';
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
async initialize(): Promise<void> {
|
|
133
|
-
throw new Error('PostgreSQL adapter not implemented yet. Planned for Phase 3.');
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
### Factory Function Updates
|
|
139
|
-
|
|
140
|
-
```typescript
|
|
141
|
-
export function createDatabaseAdapter(
|
|
142
|
-
databaseType: 'sqlite' | 'postgresql' | 'mysql',
|
|
143
|
-
config?: DatabaseConfig
|
|
144
|
-
): DatabaseAdapter {
|
|
145
|
-
// Build default config if not provided (backward compatibility)
|
|
146
|
-
const defaultConfig: DatabaseConfig = config || {
|
|
147
|
-
type: databaseType === 'postgresql' ? 'postgres' : databaseType,
|
|
148
|
-
connection: { host: '', port: 0, database: '' },
|
|
149
|
-
auth: { type: 'direct' },
|
|
150
|
-
};
|
|
151
|
-
|
|
152
|
-
switch (databaseType) {
|
|
153
|
-
case 'sqlite':
|
|
154
|
-
return new SQLiteAdapter(defaultConfig);
|
|
155
|
-
case 'postgresql':
|
|
156
|
-
return new PostgreSQLAdapter(defaultConfig);
|
|
157
|
-
case 'mysql':
|
|
158
|
-
return new MySQLAdapter(defaultConfig);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
## Usage Examples
|
|
164
|
-
|
|
165
|
-
### Direct Database Connection
|
|
166
|
-
|
|
167
|
-
```typescript
|
|
168
|
-
import { PostgreSQLAdapter } from './adapters';
|
|
169
|
-
import type { DatabaseConfig } from './config/types';
|
|
170
|
-
|
|
171
|
-
const config: DatabaseConfig = {
|
|
172
|
-
type: 'postgres',
|
|
173
|
-
connection: {
|
|
174
|
-
host: 'localhost',
|
|
175
|
-
port: 5432,
|
|
176
|
-
database: 'mydb'
|
|
177
|
-
},
|
|
178
|
-
auth: {
|
|
179
|
-
type: 'direct',
|
|
180
|
-
user: 'postgres',
|
|
181
|
-
password: 'postgres'
|
|
182
|
-
}
|
|
183
|
-
};
|
|
184
|
-
|
|
185
|
-
const adapter = new PostgreSQLAdapter(config);
|
|
186
|
-
|
|
187
|
-
try {
|
|
188
|
-
// Connect with authentication
|
|
189
|
-
await adapter.connect();
|
|
190
|
-
|
|
191
|
-
// Use Knex instance
|
|
192
|
-
const knex = adapter.getKnex();
|
|
193
|
-
const users = await knex('users').select('*');
|
|
194
|
-
|
|
195
|
-
console.log(users);
|
|
196
|
-
} finally {
|
|
197
|
-
// Clean up resources
|
|
198
|
-
await adapter.disconnect();
|
|
199
|
-
await adapter.cleanup();
|
|
200
|
-
}
|
|
201
|
-
```
|
|
202
|
-
|
|
203
|
-
### Manual SSH Tunnel Connection
|
|
204
|
-
|
|
205
|
-
**Note**: SSH tunneling is NOT supported by this software. Users must set up SSH tunnels manually.
|
|
206
|
-
|
|
207
|
-
**Step 1**: Set up SSH tunnel manually:
|
|
208
|
-
```bash
|
|
209
|
-
ssh -L 5433:db.internal:5432 deploy@bastion.example.com
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
**Step 2**: Configure adapter to use localhost:
|
|
213
|
-
```typescript
|
|
214
|
-
const config: DatabaseConfig = {
|
|
215
|
-
type: 'postgres',
|
|
216
|
-
connection: {
|
|
217
|
-
host: 'localhost', // Tunnel endpoint
|
|
218
|
-
port: 5433, // Forwarded port (not 5432!)
|
|
219
|
-
database: 'production'
|
|
220
|
-
},
|
|
221
|
-
auth: {
|
|
222
|
-
type: 'direct',
|
|
223
|
-
user: 'postgres',
|
|
224
|
-
password: 'dbpass'
|
|
225
|
-
}
|
|
226
|
-
};
|
|
227
|
-
|
|
228
|
-
const adapter = new PostgreSQLAdapter(config);
|
|
229
|
-
|
|
230
|
-
try {
|
|
231
|
-
await adapter.connect(); // Connects through manual SSH tunnel
|
|
232
|
-
const knex = adapter.getKnex();
|
|
233
|
-
// ... use connection (tunneled through bastion host)
|
|
234
|
-
} finally {
|
|
235
|
-
await adapter.disconnect(); // Close DB connection
|
|
236
|
-
await adapter.cleanup(); // Release auth resources
|
|
237
|
-
}
|
|
238
|
-
```
|
|
239
|
-
|
|
240
|
-
### Transaction Support
|
|
241
|
-
|
|
242
|
-
```typescript
|
|
243
|
-
await adapter.transaction(async (trx) => {
|
|
244
|
-
await trx('accounts').where({ id: 1 }).decrement('balance', 100);
|
|
245
|
-
await trx('accounts').where({ id: 2 }).increment('balance', 100);
|
|
246
|
-
await trx('transfers').insert({ from: 1, to: 2, amount: 100 });
|
|
247
|
-
});
|
|
248
|
-
```
|
|
249
|
-
|
|
250
|
-
## Testing
|
|
251
|
-
|
|
252
|
-
### Test Results
|
|
253
|
-
|
|
254
|
-
All existing tests pass with the new BaseAdapter implementation:
|
|
255
|
-
|
|
256
|
-
```
|
|
257
|
-
# tests 19
|
|
258
|
-
# suites 11
|
|
259
|
-
# pass 19
|
|
260
|
-
# fail 0
|
|
261
|
-
# cancelled 0
|
|
262
|
-
# skipped 0
|
|
263
|
-
```
|
|
264
|
-
|
|
265
|
-
### Test Updates
|
|
266
|
-
|
|
267
|
-
Two test files were updated to provide DatabaseConfig to SQLiteAdapter constructor:
|
|
268
|
-
|
|
269
|
-
1. `src/tests/tasks.link-file-backward-compat.test.ts`
|
|
270
|
-
2. `src/tests/tasks.watch-files-action.test.ts`
|
|
271
|
-
|
|
272
|
-
Both tests now create SQLiteAdapter with proper configuration:
|
|
273
|
-
|
|
274
|
-
```typescript
|
|
275
|
-
const adapter = new SQLiteAdapter({
|
|
276
|
-
type: 'sqlite',
|
|
277
|
-
connection: { host: '', port: 0, database: ':memory:' },
|
|
278
|
-
auth: { type: 'direct' },
|
|
279
|
-
});
|
|
280
|
-
```
|
|
281
|
-
|
|
282
|
-
## Design Principles
|
|
283
|
-
|
|
284
|
-
### 1. **Separation of Concerns**
|
|
285
|
-
|
|
286
|
-
- Authentication providers handle credentials and tokens (SSH tunnels removed - manual setup required)
|
|
287
|
-
- Adapters handle database-specific operations
|
|
288
|
-
- Clean interfaces between layers
|
|
289
|
-
|
|
290
|
-
### 2. **Resource Safety**
|
|
291
|
-
|
|
292
|
-
- Explicit cleanup methods for both DB and auth resources
|
|
293
|
-
- Idempotent operations (safe to call connect/disconnect multiple times)
|
|
294
|
-
- Error handling prevents resource leaks
|
|
295
|
-
|
|
296
|
-
### 3. **Fail-Fast Validation**
|
|
297
|
-
|
|
298
|
-
- Auth provider validates config before connection attempt
|
|
299
|
-
- Clear error messages for misconfiguration
|
|
300
|
-
- TypeScript type safety throughout
|
|
301
|
-
|
|
302
|
-
### 4. **Extensibility**
|
|
303
|
-
|
|
304
|
-
- Easy to add new authentication methods (AWS IAM, GCP IAM - SSH removed)
|
|
305
|
-
- Easy to add new database adapters
|
|
306
|
-
- Factory pattern abstracts provider selection
|
|
307
|
-
|
|
308
|
-
## Implementation Statistics
|
|
309
|
-
|
|
310
|
-
### AI Time & Token Estimates
|
|
311
|
-
|
|
312
|
-
- **AI Time**: 25-30 minutes
|
|
313
|
-
- **Token Usage**: ~76,500 tokens
|
|
314
|
-
- **Complexity**: Medium (requires understanding of adapter pattern, auth integration, and backward compatibility)
|
|
315
|
-
|
|
316
|
-
### Breakdown
|
|
317
|
-
|
|
318
|
-
- Code reading and analysis: 5 minutes (~10k tokens)
|
|
319
|
-
- BaseAdapter implementation: 8 minutes (~20k tokens)
|
|
320
|
-
- Adapter updates (SQLite, PostgreSQL, MySQL): 7 minutes (~15k tokens)
|
|
321
|
-
- Test updates and compilation fixes: 5 minutes (~15k tokens)
|
|
322
|
-
- Testing and verification: 5 minutes (~16k tokens)
|
|
323
|
-
|
|
324
|
-
## Next Steps
|
|
325
|
-
|
|
326
|
-
### Phase 2: Database-Specific Adapters (Planned)
|
|
327
|
-
|
|
328
|
-
1. **PostgreSQL Adapter Implementation** (Task #68)
|
|
329
|
-
- Full PostgreSQL query adaptations
|
|
330
|
-
- Connection pool configuration
|
|
331
|
-
- PostgreSQL-specific features (JSONB, arrays, etc.)
|
|
332
|
-
|
|
333
|
-
2. **MySQL Adapter Implementation** (Task #69)
|
|
334
|
-
- Full MySQL query adaptations
|
|
335
|
-
- Connection pool configuration
|
|
336
|
-
- MySQL-specific features
|
|
337
|
-
|
|
338
|
-
### Phase 3: Advanced Features (Future)
|
|
339
|
-
|
|
340
|
-
1. **AWS IAM Authentication** (v3.8.0+)
|
|
341
|
-
- RDS IAM authentication provider
|
|
342
|
-
- Temporary token generation
|
|
343
|
-
- SSL/TLS certificate management
|
|
344
|
-
|
|
345
|
-
2. **GCP IAM Authentication** (v3.8.0+)
|
|
346
|
-
- Cloud SQL IAM authentication provider
|
|
347
|
-
- OAuth token handling
|
|
348
|
-
- Cloud SQL proxy integration
|
|
349
|
-
|
|
350
|
-
## Files Modified
|
|
351
|
-
|
|
352
|
-
### New Files
|
|
353
|
-
|
|
354
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/base-adapter.ts` (690 lines)
|
|
355
|
-
|
|
356
|
-
### Modified Files
|
|
357
|
-
|
|
358
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/sqlite-adapter.ts`
|
|
359
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/postgresql-adapter.ts`
|
|
360
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/mysql-adapter.ts`
|
|
361
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/index.ts`
|
|
362
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/adapters/auth/auth-factory.ts` (JSDoc fix)
|
|
363
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/tests/tasks.link-file-backward-compat.test.ts`
|
|
364
|
-
- `/home/kitayama/TypeScriptProject/mcp-sqlew/src/tests/tasks.watch-files-action.test.ts`
|
|
365
|
-
|
|
366
|
-
## Documentation
|
|
367
|
-
|
|
368
|
-
### Comprehensive JSDoc
|
|
369
|
-
|
|
370
|
-
The BaseAdapter includes extensive documentation:
|
|
371
|
-
|
|
372
|
-
- Class-level documentation with usage examples
|
|
373
|
-
- Method-level documentation with parameter descriptions
|
|
374
|
-
- Example code for common patterns
|
|
375
|
-
- Error handling guidance
|
|
376
|
-
- Resource management best practices
|
|
377
|
-
|
|
378
|
-
### Key Documentation Sections
|
|
379
|
-
|
|
380
|
-
1. **Connection Flow**: Step-by-step explanation of connection establishment
|
|
381
|
-
2. **Authentication Integration**: How auth providers are used
|
|
382
|
-
3. **Resource Lifecycle**: When to call connect/disconnect/cleanup
|
|
383
|
-
4. **Transaction Support**: How to use transactions safely
|
|
384
|
-
5. **Abstract Methods**: What subclasses must implement
|
|
385
|
-
|
|
386
|
-
## Conclusion
|
|
387
|
-
|
|
388
|
-
The BaseAdapter implementation successfully integrates authentication providers with database adapters while maintaining full backward compatibility. The design is extensible, well-documented, and type-safe, providing a solid foundation for the multi-RDBMS migration.
|
|
389
|
-
|
|
390
|
-
### Key Achievements
|
|
391
|
-
|
|
392
|
-
✅ Authentication provider integration via factory pattern
|
|
393
|
-
✅ Complete connection lifecycle management
|
|
394
|
-
✅ Backward compatibility with existing code
|
|
395
|
-
✅ Comprehensive error handling
|
|
396
|
-
✅ Full test coverage (all tests pass)
|
|
397
|
-
✅ Extensive documentation and examples
|
|
398
|
-
✅ Type-safe implementation throughout
|
|
399
|
-
✅ Prepared for Phase 2 (PostgreSQL/MySQL) and Phase 3 (Cloud IAM)
|
|
@@ -1,259 +0,0 @@
|
|
|
1
|
-
# Task Tool Help Documentation - Before/After Comparison
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
This document shows the changes made to the task tool `help` action to expose the automatic file watching feature to AI agents.
|
|
5
|
-
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
## BEFORE (Original Help Output)
|
|
9
|
-
|
|
10
|
-
### Header Section
|
|
11
|
-
```json
|
|
12
|
-
{
|
|
13
|
-
"tool": "task",
|
|
14
|
-
"description": "Kanban Task Watcher for managing tasks with AI-optimized lifecycle states",
|
|
15
|
-
"note": "💡 TIP: Use action: \"example\" to see comprehensive usage scenarios and real-world examples for all task actions."
|
|
16
|
-
}
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
**Missing:** No mention of automatic file watching feature
|
|
20
|
-
|
|
21
|
-
### Link Action (Original)
|
|
22
|
-
```json
|
|
23
|
-
{
|
|
24
|
-
"link": {
|
|
25
|
-
"description": "Link task to decision/constraint/file",
|
|
26
|
-
"required_params": ["task_id", "link_type", "target_id"],
|
|
27
|
-
"optional_params": ["link_relation"],
|
|
28
|
-
"link_types": ["decision", "constraint", "file"],
|
|
29
|
-
"example": {
|
|
30
|
-
"action": "link",
|
|
31
|
-
"task_id": 5,
|
|
32
|
-
"link_type": "decision",
|
|
33
|
-
"target_id": "auth_method",
|
|
34
|
-
"link_relation": "implements"
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
**Missing:** No indication that file linking activates watcher
|
|
41
|
-
|
|
42
|
-
### Documentation Section (Original)
|
|
43
|
-
```json
|
|
44
|
-
{
|
|
45
|
-
"priority_levels": {
|
|
46
|
-
"1": "low",
|
|
47
|
-
"2": "medium (default)",
|
|
48
|
-
"3": "high",
|
|
49
|
-
"4": "critical"
|
|
50
|
-
},
|
|
51
|
-
"documentation": {
|
|
52
|
-
"task_overview": "docs/TASK_OVERVIEW.md - Lifecycle, status transitions, auto-stale detection (363 lines, ~10k tokens)",
|
|
53
|
-
"task_actions": "docs/TASK_ACTIONS.md - All action references with examples (854 lines, ~21k tokens)",
|
|
54
|
-
...
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
**Missing:** No auto_file_tracking section explaining the feature
|
|
60
|
-
|
|
61
|
-
---
|
|
62
|
-
|
|
63
|
-
## AFTER (Updated Help Output)
|
|
64
|
-
|
|
65
|
-
### Header Section ✅ ENHANCED
|
|
66
|
-
```json
|
|
67
|
-
{
|
|
68
|
-
"tool": "task",
|
|
69
|
-
"description": "Kanban Task Watcher for managing tasks with AI-optimized lifecycle states",
|
|
70
|
-
"note": "💡 TIP: Use action: \"example\" to see comprehensive usage scenarios and real-world examples for all task actions.",
|
|
71
|
-
"important": "🚨 AUTOMATIC FILE WATCHING: Linking files to tasks activates automatic file change monitoring and acceptance criteria validation. This provides 97% token reduction vs manual tracking. See auto_file_tracking section below."
|
|
72
|
-
}
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
**✨ NEW:** Prominent warning about automatic file watching feature
|
|
76
|
-
**🎯 Impact:** AI agents immediately see this critical feature exists
|
|
77
|
-
|
|
78
|
-
### Link Action ✅ ENHANCED
|
|
79
|
-
```json
|
|
80
|
-
{
|
|
81
|
-
"link": {
|
|
82
|
-
"description": "Link task to decision/constraint/file",
|
|
83
|
-
"required_params": ["task_id", "link_type", "target_id"],
|
|
84
|
-
"optional_params": ["link_relation"],
|
|
85
|
-
"link_types": ["decision", "constraint", "file"],
|
|
86
|
-
"file_linking_behavior": "⚠️ IMPORTANT: When link_type=\"file\", this action ACTIVATES AUTOMATIC FILE WATCHING. The file watcher monitors linked files for changes and validates acceptance criteria when files are saved. This provides 97% token reduction compared to manual file change tracking.",
|
|
87
|
-
"example": {
|
|
88
|
-
"action": "link",
|
|
89
|
-
"task_id": 5,
|
|
90
|
-
"link_type": "decision",
|
|
91
|
-
"target_id": "auth_method",
|
|
92
|
-
"link_relation": "implements"
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
**✨ NEW:** `file_linking_behavior` field with prominent warning
|
|
99
|
-
**🎯 Impact:** AI agents understand that file linking is not passive documentation
|
|
100
|
-
|
|
101
|
-
### Documentation Section ✅ ENHANCED
|
|
102
|
-
```json
|
|
103
|
-
{
|
|
104
|
-
"priority_levels": {
|
|
105
|
-
"1": "low",
|
|
106
|
-
"2": "medium (default)",
|
|
107
|
-
"3": "high",
|
|
108
|
-
"4": "critical"
|
|
109
|
-
},
|
|
110
|
-
"auto_file_tracking": {
|
|
111
|
-
"description": "Automatic file watching and acceptance criteria validation (97% token reduction)",
|
|
112
|
-
"how_it_works": [
|
|
113
|
-
"1. Link files to tasks using the link action with link_type=\"file\"",
|
|
114
|
-
"2. File watcher automatically activates and monitors linked files",
|
|
115
|
-
"3. When files are saved, watcher detects changes",
|
|
116
|
-
"4. If task has acceptance_criteria, watcher validates criteria against changes",
|
|
117
|
-
"5. Results appear in terminal output with pass/fail status"
|
|
118
|
-
],
|
|
119
|
-
"requirements": [
|
|
120
|
-
"Task must have files linked via link action",
|
|
121
|
-
"File paths must be relative to project root (e.g., \"src/api/auth.ts\")",
|
|
122
|
-
"Watcher only monitors files explicitly linked to tasks"
|
|
123
|
-
],
|
|
124
|
-
"token_efficiency": "File watching happens in background. No MCP tokens consumed until you query status. Manual file tracking would cost ~500-1000 tokens per file check.",
|
|
125
|
-
"documentation_reference": "docs/AUTO_FILE_TRACKING.md - Complete guide with examples"
|
|
126
|
-
},
|
|
127
|
-
"documentation": {
|
|
128
|
-
"task_overview": "docs/TASK_OVERVIEW.md - Lifecycle, status transitions, auto-stale detection (363 lines, ~10k tokens)",
|
|
129
|
-
"task_actions": "docs/TASK_ACTIONS.md - All action references with examples (854 lines, ~21k tokens)",
|
|
130
|
-
...
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
**✨ NEW:** Complete `auto_file_tracking` section with:
|
|
136
|
-
- Clear description of the feature and token benefits
|
|
137
|
-
- 5-step workflow explaining how it works
|
|
138
|
-
- Requirements for activation
|
|
139
|
-
- Token efficiency explanation
|
|
140
|
-
- Reference to detailed documentation
|
|
141
|
-
|
|
142
|
-
**🎯 Impact:** AI agents have complete understanding without reading external docs
|
|
143
|
-
|
|
144
|
-
---
|
|
145
|
-
|
|
146
|
-
## Example Action Changes
|
|
147
|
-
|
|
148
|
-
### BEFORE (Original Example)
|
|
149
|
-
```json
|
|
150
|
-
{
|
|
151
|
-
"scenario": "Link task to file",
|
|
152
|
-
"request": "{ action: \"link\", task_id: 5, link_type: \"file\", target_id: \"src/api/auth.ts\", link_relation: \"modifies\" }",
|
|
153
|
-
"explanation": "Indicate which files the task will modify"
|
|
154
|
-
}
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
**❌ Problem:** Sounds passive - "Indicate" suggests documentation only
|
|
158
|
-
|
|
159
|
-
### AFTER (Updated Example) ✅
|
|
160
|
-
```json
|
|
161
|
-
{
|
|
162
|
-
"scenario": "Link task to file",
|
|
163
|
-
"request": "{ action: \"link\", task_id: 5, link_type: \"file\", target_id: \"src/api/auth.ts\", link_relation: \"modifies\" }",
|
|
164
|
-
"explanation": "Activates automatic file watching for the task (97% token reduction vs manual tracking)",
|
|
165
|
-
"behavior": "File watcher monitors linked files and validates acceptance criteria when files change"
|
|
166
|
-
}
|
|
167
|
-
```
|
|
168
|
-
|
|
169
|
-
**✨ NEW:**
|
|
170
|
-
- Active voice: "Activates" (not "Indicate")
|
|
171
|
-
- Token reduction benefit highlighted
|
|
172
|
-
- Explicit behavior description
|
|
173
|
-
|
|
174
|
-
**🎯 Impact:** AI agents understand this is an active feature, not passive documentation
|
|
175
|
-
|
|
176
|
-
---
|
|
177
|
-
|
|
178
|
-
## Key Improvements Summary
|
|
179
|
-
|
|
180
|
-
### 1. Discoverability ✅
|
|
181
|
-
- **Before:** Feature completely hidden from MCP tool interface
|
|
182
|
-
- **After:** Prominently displayed in 3 locations (header, link action, dedicated section)
|
|
183
|
-
|
|
184
|
-
### 2. Understanding ✅
|
|
185
|
-
- **Before:** No explanation of how/why to use file linking
|
|
186
|
-
- **After:** 5-step workflow, requirements, and token efficiency clearly documented
|
|
187
|
-
|
|
188
|
-
### 3. Motivation ✅
|
|
189
|
-
- **Before:** No indication of benefits
|
|
190
|
-
- **After:** "97% token reduction" mentioned 3 times to motivate usage
|
|
191
|
-
|
|
192
|
-
### 4. Behavior Clarity ✅
|
|
193
|
-
- **Before:** File linking sounded like passive documentation
|
|
194
|
-
- **After:** Clearly stated as active feature that "activates" watching
|
|
195
|
-
|
|
196
|
-
---
|
|
197
|
-
|
|
198
|
-
## Token Impact Analysis
|
|
199
|
-
|
|
200
|
-
### Help Documentation Size
|
|
201
|
-
- **Before:** ~1,200 tokens
|
|
202
|
-
- **After:** ~1,400 tokens (+200 tokens)
|
|
203
|
-
- **Increase:** 16.7%
|
|
204
|
-
|
|
205
|
-
### Value Gained
|
|
206
|
-
- **Feature discoverability:** Infinite value (feature was invisible before)
|
|
207
|
-
- **Token savings per usage:** 500-1,000 tokens per file check avoided
|
|
208
|
-
- **ROI:** First use of file watcher saves 3-5x the documentation cost
|
|
209
|
-
|
|
210
|
-
### Net Token Efficiency
|
|
211
|
-
If AI agents use file watching just **once**, they save more tokens than the documentation costs. The 200-token investment pays for itself immediately.
|
|
212
|
-
|
|
213
|
-
---
|
|
214
|
-
|
|
215
|
-
## Files Modified
|
|
216
|
-
|
|
217
|
-
1. **src/tools/tasks.ts** (lines 1184-1371)
|
|
218
|
-
- Added `important` field to header (line 1189)
|
|
219
|
-
- Added `file_linking_behavior` to link action (line 1258)
|
|
220
|
-
- Added `auto_file_tracking` section (lines 1355-1371)
|
|
221
|
-
|
|
222
|
-
2. **src/index.ts** (lines 1370-1375)
|
|
223
|
-
- Updated file linking example explanation
|
|
224
|
-
- Added behavior description
|
|
225
|
-
|
|
226
|
-
---
|
|
227
|
-
|
|
228
|
-
## Verification Checklist
|
|
229
|
-
|
|
230
|
-
- [x] Header prominently mentions automatic file watching
|
|
231
|
-
- [x] Link action clearly states watcher activation
|
|
232
|
-
- [x] Complete auto_file_tracking section with workflow
|
|
233
|
-
- [x] Example action uses active voice ("Activates")
|
|
234
|
-
- [x] Token reduction benefit (97%) mentioned multiple times
|
|
235
|
-
- [x] Documentation reference provided for deep dive
|
|
236
|
-
- [x] All changes maintain existing help structure
|
|
237
|
-
- [x] TypeScript compiles successfully (to be verified)
|
|
238
|
-
|
|
239
|
-
---
|
|
240
|
-
|
|
241
|
-
## Expected AI Agent Behavior Change
|
|
242
|
-
|
|
243
|
-
### Before These Changes
|
|
244
|
-
```
|
|
245
|
-
AI Agent: "I'll link the files to document which files this task affects"
|
|
246
|
-
Result: Feature activation happens, but agent doesn't realize it or leverage it
|
|
247
|
-
```
|
|
248
|
-
|
|
249
|
-
### After These Changes
|
|
250
|
-
```
|
|
251
|
-
AI Agent: "I'll link these files to activate automatic file watching (97% token reduction).
|
|
252
|
-
The watcher will monitor changes and validate acceptance criteria automatically."
|
|
253
|
-
Result: Feature activation is intentional and understood, agent can explain benefits to user
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
---
|
|
257
|
-
|
|
258
|
-
**Status:** Documentation updates complete ✅
|
|
259
|
-
**Next Step:** Implement watcher status query action (task #93-95)
|