sqlew 3.6.0 → 3.6.2
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 +403 -376
- package/assets/config.example.toml +9 -0
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/database.d.ts +14 -1
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +128 -5
- package/dist/database.js.map +1 -1
- package/dist/index.js +136 -82
- package/dist/index.js.map +1 -1
- package/dist/knexfile.d.ts.map +1 -1
- package/dist/knexfile.js +15 -3
- package/dist/knexfile.js.map +1 -1
- package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +1 -0
- package/dist/migrations/knex/{20251025020452_create_master_tables.js → bootstrap/20251025020452_create_master_tables.js} +15 -12
- package/dist/migrations/knex/bootstrap/20251025020452_create_master_tables.js.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +1 -0
- package/dist/migrations/knex/{20251025021152_create_transaction_tables.js → bootstrap/20251025021152_create_transaction_tables.js} +19 -19
- package/dist/migrations/knex/bootstrap/20251025021152_create_transaction_tables.js.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.d.ts.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.js +93 -0
- package/dist/migrations/knex/bootstrap/20251025021351_create_indexes.js.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.js +64 -0
- package/dist/migrations/knex/bootstrap/20251025021416_seed_master_data.js.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025070349_create_views.d.ts.map +1 -0
- package/dist/migrations/knex/bootstrap/20251025070349_create_views.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025082220_fix_task_dependencies_columns.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025090000_create_help_system_tables.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025100000_seed_help_metadata.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025100100_seed_remaining_use_cases.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts +14 -0
- package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.js +34 -0
- package/dist/migrations/knex/enhancements/20251027000000_add_agent_reuse_system.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts +4 -0
- package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js +24 -0
- package/dist/migrations/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js.map +1 -0
- package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.d.ts +16 -0
- package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.d.ts.map +1 -0
- package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.js +27 -0
- package/dist/migrations/knex/enhancements/20251027020000_update_agent_reusability.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts +13 -0
- package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js +70 -0
- package/dist/migrations/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts +11 -0
- package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js +36 -0
- package/dist/migrations/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts +14 -0
- package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js +84 -0
- package/dist/migrations/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts +9 -0
- package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js +37 -0
- package/dist/migrations/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts +9 -0
- package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js +41 -0
- package/dist/migrations/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts +9 -0
- package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js +36 -0
- package/dist/migrations/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js.map +1 -0
- package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts +10 -0
- package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +1 -0
- package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js +28 -0
- package/dist/migrations/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js.map +1 -0
- package/dist/tests/agent-reuse.test.d.ts +6 -0
- package/dist/tests/agent-reuse.test.d.ts.map +1 -0
- package/dist/tests/agent-reuse.test.js +242 -0
- package/dist/tests/agent-reuse.test.js.map +1 -0
- package/dist/tests/all-features.test.d.ts +7 -0
- package/dist/tests/all-features.test.d.ts.map +1 -0
- package/dist/tests/all-features.test.js +514 -0
- package/dist/tests/all-features.test.js.map +1 -0
- package/dist/tests/migrations/test-all-versions-real.d.ts +8 -0
- package/dist/tests/migrations/test-all-versions-real.d.ts.map +1 -0
- package/dist/tests/migrations/test-all-versions-real.js +234 -0
- package/dist/tests/migrations/test-all-versions-real.js.map +1 -0
- package/dist/tests/migrations/test-all-versions.d.ts +14 -0
- package/dist/tests/migrations/test-all-versions.d.ts.map +1 -0
- package/dist/tests/migrations/test-all-versions.js +521 -0
- package/dist/tests/migrations/test-all-versions.js.map +1 -0
- package/dist/tools/constraints.d.ts.map +1 -1
- package/dist/tools/constraints.js +11 -7
- package/dist/tools/constraints.js.map +1 -1
- package/dist/tools/context.d.ts.map +1 -1
- package/dist/tools/context.js +73 -16
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/messaging.d.ts.map +1 -1
- package/dist/tools/messaging.js +23 -1
- package/dist/tools/messaging.js.map +1 -1
- package/dist/tools/tasks.d.ts.map +1 -1
- package/dist/tools/tasks.js +8 -5
- package/dist/tools/tasks.js.map +1 -1
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +4 -1
- package/dist/tools/utils.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/cleanup.d.ts +3 -1
- package/dist/utils/cleanup.d.ts.map +1 -1
- package/dist/utils/cleanup.js +6 -3
- package/dist/utils/cleanup.js.map +1 -1
- package/dist/utils/debug-logger.d.ts +57 -2
- package/dist/utils/debug-logger.d.ts.map +1 -1
- package/dist/utils/debug-logger.js +155 -4
- package/dist/utils/debug-logger.js.map +1 -1
- package/dist/utils/error-handler.d.ts +28 -0
- package/dist/utils/error-handler.d.ts.map +1 -0
- package/dist/utils/error-handler.js +121 -0
- package/dist/utils/error-handler.js.map +1 -0
- package/dist/utils/help-tracking.d.ts +3 -3
- package/dist/utils/help-tracking.d.ts.map +1 -1
- package/dist/utils/help-tracking.js.map +1 -1
- package/dist/utils/param-parser.d.ts +23 -0
- package/dist/utils/param-parser.d.ts.map +1 -0
- package/dist/utils/param-parser.js +52 -0
- package/dist/utils/param-parser.js.map +1 -0
- package/dist/utils/retention.d.ts +10 -0
- package/dist/utils/retention.d.ts.map +1 -1
- package/dist/utils/retention.js +19 -0
- package/dist/utils/retention.js.map +1 -1
- package/docs/MIGRATION_CHAIN.md +293 -280
- package/package.json +85 -81
- package/dist/migrations/add-decision-context.d.ts +0 -28
- package/dist/migrations/add-decision-context.d.ts.map +0 -1
- package/dist/migrations/add-decision-context.js +0 -125
- package/dist/migrations/add-decision-context.js.map +0 -1
- package/dist/migrations/add-help-system-tables.d.ts +0 -35
- package/dist/migrations/add-help-system-tables.d.ts.map +0 -1
- package/dist/migrations/add-help-system-tables.js +0 -206
- package/dist/migrations/add-help-system-tables.js.map +0 -1
- package/dist/migrations/add-table-prefixes.d.ts +0 -29
- package/dist/migrations/add-table-prefixes.d.ts.map +0 -1
- package/dist/migrations/add-table-prefixes.js +0 -150
- package/dist/migrations/add-table-prefixes.js.map +0 -1
- package/dist/migrations/add-task-dependencies.d.ts +0 -26
- package/dist/migrations/add-task-dependencies.d.ts.map +0 -1
- package/dist/migrations/add-task-dependencies.js +0 -94
- package/dist/migrations/add-task-dependencies.js.map +0 -1
- package/dist/migrations/add-task-tables.d.ts +0 -47
- package/dist/migrations/add-task-tables.d.ts.map +0 -1
- package/dist/migrations/add-task-tables.js +0 -285
- package/dist/migrations/add-task-tables.js.map +0 -1
- package/dist/migrations/add-token-tracking.d.ts +0 -28
- package/dist/migrations/add-token-tracking.d.ts.map +0 -1
- package/dist/migrations/add-token-tracking.js +0 -108
- package/dist/migrations/add-token-tracking.js.map +0 -1
- package/dist/migrations/add-v2.1.0-features.d.ts +0 -29
- package/dist/migrations/add-v2.1.0-features.d.ts.map +0 -1
- package/dist/migrations/add-v2.1.0-features.js +0 -198
- package/dist/migrations/add-v2.1.0-features.js.map +0 -1
- package/dist/migrations/add-v3.5.0-pruned-files.d.ts +0 -26
- package/dist/migrations/add-v3.5.0-pruned-files.d.ts.map +0 -1
- package/dist/migrations/add-v3.5.0-pruned-files.js +0 -107
- package/dist/migrations/add-v3.5.0-pruned-files.js.map +0 -1
- package/dist/migrations/index.d.ts +0 -112
- package/dist/migrations/index.d.ts.map +0 -1
- package/dist/migrations/index.js +0 -411
- package/dist/migrations/index.js.map +0 -1
- package/dist/migrations/knex/20251025020452_create_master_tables.d.ts.map +0 -1
- package/dist/migrations/knex/20251025020452_create_master_tables.js.map +0 -1
- package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts.map +0 -1
- package/dist/migrations/knex/20251025021152_create_transaction_tables.js.map +0 -1
- package/dist/migrations/knex/20251025021351_create_indexes.d.ts.map +0 -1
- package/dist/migrations/knex/20251025021351_create_indexes.js +0 -62
- package/dist/migrations/knex/20251025021351_create_indexes.js.map +0 -1
- package/dist/migrations/knex/20251025021416_seed_master_data.d.ts.map +0 -1
- package/dist/migrations/knex/20251025021416_seed_master_data.js +0 -58
- package/dist/migrations/knex/20251025021416_seed_master_data.js.map +0 -1
- package/dist/migrations/knex/20251025070349_create_views.d.ts.map +0 -1
- package/dist/migrations/knex/20251025070349_create_views.js.map +0 -1
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts.map +0 -1
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js.map +0 -1
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts.map +0 -1
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js.map +0 -1
- package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts.map +0 -1
- package/dist/migrations/knex/20251025090000_create_help_system_tables.js.map +0 -1
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts.map +0 -1
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js.map +0 -1
- package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts.map +0 -1
- package/dist/migrations/knex/20251025100000_seed_help_metadata.js.map +0 -1
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts.map +0 -1
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js.map +0 -1
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts.map +0 -1
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js.map +0 -1
- package/dist/migrations/migrate-decisions-to-tasks.d.ts +0 -61
- package/dist/migrations/migrate-decisions-to-tasks.d.ts.map +0 -1
- package/dist/migrations/migrate-decisions-to-tasks.js +0 -442
- package/dist/migrations/migrate-decisions-to-tasks.js.map +0 -1
- package/dist/migrations/seed-help-data.d.ts +0 -48
- package/dist/migrations/seed-help-data.d.ts.map +0 -1
- package/dist/migrations/seed-help-data.js +0 -1466
- package/dist/migrations/seed-help-data.js.map +0 -1
- package/dist/migrations/seed-tool-metadata.d.ts +0 -24
- package/dist/migrations/seed-tool-metadata.d.ts.map +0 -1
- package/dist/migrations/seed-tool-metadata.js +0 -392
- package/dist/migrations/seed-tool-metadata.js.map +0 -1
- package/dist/migrations/v3.6.0-help-system-refactor.d.ts +0 -46
- package/dist/migrations/v3.6.0-help-system-refactor.d.ts.map +0 -1
- package/dist/migrations/v3.6.0-help-system-refactor.js +0 -223
- package/dist/migrations/v3.6.0-help-system-refactor.js.map +0 -1
- package/dist/tests/migrations/test-v3.2-migration.d.ts +0 -6
- package/dist/tests/migrations/test-v3.2-migration.d.ts.map +0 -1
- package/dist/tests/migrations/test-v3.2-migration.js +0 -191
- package/dist/tests/migrations/test-v3.2-migration.js.map +0 -1
- /package/dist/migrations/knex/{20251025020452_create_master_tables.d.ts → bootstrap/20251025020452_create_master_tables.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025021152_create_transaction_tables.d.ts → bootstrap/20251025021152_create_transaction_tables.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025021351_create_indexes.d.ts → bootstrap/20251025021351_create_indexes.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025021416_seed_master_data.d.ts → bootstrap/20251025021416_seed_master_data.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025070349_create_views.d.ts → bootstrap/20251025070349_create_views.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025070349_create_views.js → bootstrap/20251025070349_create_views.js} +0 -0
- /package/dist/migrations/knex/{20251025081221_add_link_type_to_task_decision_links.d.ts → enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025081221_add_link_type_to_task_decision_links.js → enhancements/20251025081221_add_link_type_to_task_decision_links.js} +0 -0
- /package/dist/migrations/knex/{20251025082220_fix_task_dependencies_columns.d.ts → enhancements/20251025082220_fix_task_dependencies_columns.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025082220_fix_task_dependencies_columns.js → enhancements/20251025082220_fix_task_dependencies_columns.js} +0 -0
- /package/dist/migrations/knex/{20251025090000_create_help_system_tables.d.ts → enhancements/20251025090000_create_help_system_tables.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025090000_create_help_system_tables.js → enhancements/20251025090000_create_help_system_tables.js} +0 -0
- /package/dist/migrations/knex/{20251025090100_seed_help_categories_and_use_cases.d.ts → enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025090100_seed_help_categories_and_use_cases.js → enhancements/20251025090100_seed_help_categories_and_use_cases.js} +0 -0
- /package/dist/migrations/knex/{20251025100000_seed_help_metadata.d.ts → enhancements/20251025100000_seed_help_metadata.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025100000_seed_help_metadata.js → enhancements/20251025100000_seed_help_metadata.js} +0 -0
- /package/dist/migrations/knex/{20251025100100_seed_remaining_use_cases.d.ts → enhancements/20251025100100_seed_remaining_use_cases.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025100100_seed_remaining_use_cases.js → enhancements/20251025100100_seed_remaining_use_cases.js} +0 -0
- /package/dist/migrations/knex/{20251025120000_add_cascade_to_task_dependencies.d.ts → enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts} +0 -0
- /package/dist/migrations/knex/{20251025120000_add_cascade_to_task_dependencies.js → enhancements/20251025120000_add_cascade_to_task_dependencies.js} +0 -0
package/package.json
CHANGED
|
@@ -1,81 +1,85 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "sqlew",
|
|
3
|
-
"version": "3.6.
|
|
4
|
-
"description": "MCP server for efficient context sharing between Claude Code sub-agents with database-driven help system (60-70% token reduction), Kanban Task Watcher, Git-aware auto-complete, Decision Context, and streamlined documentation",
|
|
5
|
-
"main": "dist/index.js",
|
|
6
|
-
"type": "module",
|
|
7
|
-
"bin": {
|
|
8
|
-
"sqlew": "dist/index.js",
|
|
9
|
-
"sqlew-cli": "dist/cli.js"
|
|
10
|
-
},
|
|
11
|
-
"files": [
|
|
12
|
-
"dist/",
|
|
13
|
-
"assets/",
|
|
14
|
-
"docs/",
|
|
15
|
-
"README.md",
|
|
16
|
-
"LICENSE",
|
|
17
|
-
"CHANGELOG.md",
|
|
18
|
-
"MIGRATION_v2.md",
|
|
19
|
-
"ARCHITECTURE.md"
|
|
20
|
-
],
|
|
21
|
-
"scripts": {
|
|
22
|
-
"build": "tsc",
|
|
23
|
-
"start": "node dist/index.js",
|
|
24
|
-
"cli": "node dist/cli.js",
|
|
25
|
-
"inspector": "npx @modelcontextprotocol/inspector node dist/index.js",
|
|
26
|
-
"dev": "tsc --watch",
|
|
27
|
-
"clean": "rm -rf dist",
|
|
28
|
-
"rebuild": "npm run clean && npm run build",
|
|
29
|
-
"test": "npm run build && node --test dist/tests/tasks.dependencies.test.js",
|
|
30
|
-
"test:
|
|
31
|
-
"
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"migrate:
|
|
37
|
-
"migrate:
|
|
38
|
-
"
|
|
39
|
-
"
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"
|
|
43
|
-
},
|
|
44
|
-
"
|
|
45
|
-
"
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
"url": "https://github.com/sin5ddd/mcp-sqlew
|
|
50
|
-
},
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
"
|
|
70
|
-
"
|
|
71
|
-
"
|
|
72
|
-
"
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
"
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
"
|
|
79
|
-
"
|
|
80
|
-
|
|
81
|
-
|
|
1
|
+
{
|
|
2
|
+
"name": "sqlew",
|
|
3
|
+
"version": "3.6.2",
|
|
4
|
+
"description": "MCP server for efficient context sharing between Claude Code sub-agents with database-driven help system (60-70% token reduction), Kanban Task Watcher, Git-aware auto-complete, Decision Context, and streamlined documentation",
|
|
5
|
+
"main": "dist/index.js",
|
|
6
|
+
"type": "module",
|
|
7
|
+
"bin": {
|
|
8
|
+
"sqlew": "dist/index.js",
|
|
9
|
+
"sqlew-cli": "dist/cli.js"
|
|
10
|
+
},
|
|
11
|
+
"files": [
|
|
12
|
+
"dist/",
|
|
13
|
+
"assets/",
|
|
14
|
+
"docs/",
|
|
15
|
+
"README.md",
|
|
16
|
+
"LICENSE",
|
|
17
|
+
"CHANGELOG.md",
|
|
18
|
+
"MIGRATION_v2.md",
|
|
19
|
+
"ARCHITECTURE.md"
|
|
20
|
+
],
|
|
21
|
+
"scripts": {
|
|
22
|
+
"build": "tsc",
|
|
23
|
+
"start": "node dist/index.js",
|
|
24
|
+
"cli": "node dist/cli.js",
|
|
25
|
+
"inspector": "npx @modelcontextprotocol/inspector node dist/index.js",
|
|
26
|
+
"dev": "tsc --watch",
|
|
27
|
+
"clean": "rm -rf dist",
|
|
28
|
+
"rebuild": "npm run clean && npm run build",
|
|
29
|
+
"test": "npm run build && node --test dist/tests/tasks.dependencies.test.js",
|
|
30
|
+
"test:all-features": "npm run build && node dist/tests/all-features.test.js",
|
|
31
|
+
"test:migrations": "npm run build && node dist/tests/migrations/test-v3.2-migration.js",
|
|
32
|
+
"test:migrations:all": "npm run build && node dist/tests/migrations/test-all-versions-real.js",
|
|
33
|
+
"prepare": "husky",
|
|
34
|
+
"prepublishOnly": "npm run rebuild",
|
|
35
|
+
"knex": "tsx node_modules/.bin/knex --knexfile src/knexfile.ts",
|
|
36
|
+
"migrate:make": "npm run knex migrate:make",
|
|
37
|
+
"migrate:latest": "npm run knex migrate:latest",
|
|
38
|
+
"migrate:rollback": "npm run knex migrate:rollback",
|
|
39
|
+
"migrate:rollback:all": "npm run knex migrate:rollback --all",
|
|
40
|
+
"migrate:status": "npm run knex migrate:status",
|
|
41
|
+
"seed:make": "npm run knex seed:make",
|
|
42
|
+
"seed:run": "npm run knex seed:run"
|
|
43
|
+
},
|
|
44
|
+
"engines": {
|
|
45
|
+
"node": ">=18.0.0"
|
|
46
|
+
},
|
|
47
|
+
"repository": {
|
|
48
|
+
"type": "git",
|
|
49
|
+
"url": "git+https://github.com/sin5ddd/mcp-sqlew.git"
|
|
50
|
+
},
|
|
51
|
+
"bugs": {
|
|
52
|
+
"url": "https://github.com/sin5ddd/mcp-sqlew/issues"
|
|
53
|
+
},
|
|
54
|
+
"homepage": "https://github.com/sin5ddd/mcp-sqlew#readme",
|
|
55
|
+
"keywords": [
|
|
56
|
+
"mcp",
|
|
57
|
+
"mcp-server",
|
|
58
|
+
"model-context-protocol",
|
|
59
|
+
"context-sharing",
|
|
60
|
+
"claude-code",
|
|
61
|
+
"sub-agents",
|
|
62
|
+
"sqlite",
|
|
63
|
+
"token-efficiency",
|
|
64
|
+
"shared-context"
|
|
65
|
+
],
|
|
66
|
+
"author": "sin5ddd",
|
|
67
|
+
"license": "AGPL-3.0",
|
|
68
|
+
"dependencies": {
|
|
69
|
+
"@modelcontextprotocol/sdk": "latest",
|
|
70
|
+
"better-sqlite3": "^11.0.0",
|
|
71
|
+
"chokidar": "^4.0.3",
|
|
72
|
+
"ignore": "^7.0.5",
|
|
73
|
+
"knex": "^3.1.0",
|
|
74
|
+
"smol-toml": "^1.4.2",
|
|
75
|
+
"sqlite3": "^5.1.7"
|
|
76
|
+
},
|
|
77
|
+
"devDependencies": {
|
|
78
|
+
"@types/better-sqlite3": "^7.6.0",
|
|
79
|
+
"@types/knex": "^0.15.2",
|
|
80
|
+
"@types/node": "^20.0.0",
|
|
81
|
+
"husky": "^9.1.7",
|
|
82
|
+
"tsx": "^4.20.6",
|
|
83
|
+
"typescript": "^5.0.0"
|
|
84
|
+
}
|
|
85
|
+
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration: Add decision context (v3.2.0 -> v3.2.2)
|
|
3
|
-
*
|
|
4
|
-
* Adds t_decision_context table for storing rich decision-making context including
|
|
5
|
-
* rationale, alternatives considered, and trade-offs analysis.
|
|
6
|
-
*
|
|
7
|
-
* This is a backward-compatible addition - no existing tables are modified.
|
|
8
|
-
*/
|
|
9
|
-
import { Database } from 'better-sqlite3';
|
|
10
|
-
interface MigrationResult {
|
|
11
|
-
success: boolean;
|
|
12
|
-
message: string;
|
|
13
|
-
details?: string[];
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Check if migration is needed
|
|
17
|
-
*/
|
|
18
|
-
export declare function needsDecisionContextMigration(db: Database): boolean;
|
|
19
|
-
/**
|
|
20
|
-
* Run the migration to add decision context
|
|
21
|
-
*/
|
|
22
|
-
export declare function migrateToDecisionContext(db: Database): MigrationResult;
|
|
23
|
-
/**
|
|
24
|
-
* Get migration info
|
|
25
|
-
*/
|
|
26
|
-
export declare function getDecisionContextMigrationInfo(): string;
|
|
27
|
-
export {};
|
|
28
|
-
//# sourceMappingURL=add-decision-context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-decision-context.d.ts","sourceRoot":"","sources":["../../src/migrations/add-decision-context.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAOnE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,CAiFtE;AAED;;GAEG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CA8BxD"}
|
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration: Add decision context (v3.2.0 -> v3.2.2)
|
|
3
|
-
*
|
|
4
|
-
* Adds t_decision_context table for storing rich decision-making context including
|
|
5
|
-
* rationale, alternatives considered, and trade-offs analysis.
|
|
6
|
-
*
|
|
7
|
-
* This is a backward-compatible addition - no existing tables are modified.
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* Check if migration is needed
|
|
11
|
-
*/
|
|
12
|
-
export function needsDecisionContextMigration(db) {
|
|
13
|
-
// Check if t_decision_context table doesn't exist yet
|
|
14
|
-
const tableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='t_decision_context'").get();
|
|
15
|
-
return tableExists === undefined;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* Run the migration to add decision context
|
|
19
|
-
*/
|
|
20
|
-
export function migrateToDecisionContext(db) {
|
|
21
|
-
const details = [];
|
|
22
|
-
try {
|
|
23
|
-
// Start transaction for atomicity
|
|
24
|
-
db.exec('BEGIN TRANSACTION');
|
|
25
|
-
// Check if table already exists
|
|
26
|
-
const tableExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='t_decision_context'").get();
|
|
27
|
-
if (tableExists) {
|
|
28
|
-
db.exec('COMMIT');
|
|
29
|
-
return {
|
|
30
|
-
success: true,
|
|
31
|
-
message: 't_decision_context table already exists, migration skipped',
|
|
32
|
-
details: ['Table already exists - no migration needed']
|
|
33
|
-
};
|
|
34
|
-
}
|
|
35
|
-
// Create t_decision_context table
|
|
36
|
-
db.exec(`
|
|
37
|
-
CREATE TABLE IF NOT EXISTS t_decision_context (
|
|
38
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
39
|
-
decision_key_id INTEGER NOT NULL REFERENCES m_context_keys(id) ON DELETE CASCADE,
|
|
40
|
-
rationale TEXT NOT NULL,
|
|
41
|
-
alternatives_considered TEXT,
|
|
42
|
-
tradeoffs TEXT,
|
|
43
|
-
decided_by_agent_id INTEGER REFERENCES m_agents(id),
|
|
44
|
-
decision_date INTEGER DEFAULT (unixepoch()),
|
|
45
|
-
related_task_id INTEGER REFERENCES t_tasks(id) ON DELETE SET NULL,
|
|
46
|
-
related_constraint_id INTEGER REFERENCES t_constraints(id) ON DELETE SET NULL,
|
|
47
|
-
ts INTEGER DEFAULT (unixepoch())
|
|
48
|
-
);
|
|
49
|
-
`);
|
|
50
|
-
details.push('Created table: t_decision_context');
|
|
51
|
-
// Create indexes for efficient queries
|
|
52
|
-
db.exec(`
|
|
53
|
-
CREATE INDEX IF NOT EXISTS idx_decision_context_key
|
|
54
|
-
ON t_decision_context(decision_key_id, ts DESC);
|
|
55
|
-
`);
|
|
56
|
-
details.push('Created index: idx_decision_context_key');
|
|
57
|
-
db.exec(`
|
|
58
|
-
CREATE INDEX IF NOT EXISTS idx_decision_context_task
|
|
59
|
-
ON t_decision_context(related_task_id);
|
|
60
|
-
`);
|
|
61
|
-
details.push('Created index: idx_decision_context_task');
|
|
62
|
-
db.exec(`
|
|
63
|
-
CREATE INDEX IF NOT EXISTS idx_decision_context_constraint
|
|
64
|
-
ON t_decision_context(related_constraint_id);
|
|
65
|
-
`);
|
|
66
|
-
details.push('Created index: idx_decision_context_constraint');
|
|
67
|
-
// Commit transaction
|
|
68
|
-
db.exec('COMMIT');
|
|
69
|
-
return {
|
|
70
|
-
success: true,
|
|
71
|
-
message: 'Migration to v3.2.2 completed successfully',
|
|
72
|
-
details
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
catch (error) {
|
|
76
|
-
// Rollback on error
|
|
77
|
-
try {
|
|
78
|
-
db.exec('ROLLBACK');
|
|
79
|
-
}
|
|
80
|
-
catch (rollbackError) {
|
|
81
|
-
// Ignore rollback errors
|
|
82
|
-
}
|
|
83
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
84
|
-
return {
|
|
85
|
-
success: false,
|
|
86
|
-
message: `Migration failed: ${message}`,
|
|
87
|
-
details
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Get migration info
|
|
93
|
-
*/
|
|
94
|
-
export function getDecisionContextMigrationInfo() {
|
|
95
|
-
return `
|
|
96
|
-
Migration: Add Decision Context (v3.2.0 -> v3.2.2)
|
|
97
|
-
|
|
98
|
-
This migration adds rich decision-making context tracking:
|
|
99
|
-
- New table: t_decision_context
|
|
100
|
-
- Stores: rationale, alternatives considered, trade-offs (pros/cons)
|
|
101
|
-
- Links: to decisions, tasks, and constraints
|
|
102
|
-
- Indexes: Optimized for key-based and relationship-based queries
|
|
103
|
-
|
|
104
|
-
Schema:
|
|
105
|
-
- id: Auto-increment primary key
|
|
106
|
-
- decision_key_id: Reference to decision (CASCADE delete)
|
|
107
|
-
- rationale: Required explanation of why decision was made
|
|
108
|
-
- alternatives_considered: JSON array of alternatives ["Alternative 1", ...]
|
|
109
|
-
- tradeoffs: JSON object with pros/cons {"pros": [...], "cons": [...]}
|
|
110
|
-
- decided_by_agent_id: Optional agent who made the decision
|
|
111
|
-
- decision_date: When decision was made (auto-set)
|
|
112
|
-
- related_task_id: Optional link to task (SET NULL on delete)
|
|
113
|
-
- related_constraint_id: Optional link to constraint (SET NULL on delete)
|
|
114
|
-
- ts: Record creation timestamp
|
|
115
|
-
|
|
116
|
-
Backward Compatibility:
|
|
117
|
-
- No existing tables modified
|
|
118
|
-
- Zero migration pain - CREATE TABLE IF NOT EXISTS
|
|
119
|
-
- Existing code continues to work without changes
|
|
120
|
-
- New actions are optional enhancements
|
|
121
|
-
|
|
122
|
-
This migration is idempotent and safe to run multiple times.
|
|
123
|
-
`.trim();
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=add-decision-context.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-decision-context.js","sourceRoot":"","sources":["../../src/migrations/add-decision-context.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,EAAY;IACxD,sDAAsD;IACtD,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,iFAAiF,CAClF,CAAC,GAAG,EAAE,CAAC;IAER,OAAO,WAAW,KAAK,SAAS,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,EAAY;IACnD,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,IAAI,CAAC;QACH,kCAAkC;QAClC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAE7B,gCAAgC;QAChC,MAAM,WAAW,GAAG,EAAE,CAAC,OAAO,CAC5B,iFAAiF,CAClF,CAAC,GAAG,EAAE,CAAC;QAER,IAAI,WAAW,EAAE,CAAC;YAChB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAClB,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,4DAA4D;gBACrE,OAAO,EAAE,CAAC,4CAA4C,CAAC;aACxD,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;KAaP,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QAElD,uCAAuC;QACvC,EAAE,CAAC,IAAI,CAAC;;;KAGP,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;QAExD,EAAE,CAAC,IAAI,CAAC;;;KAGP,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;QAEzD,EAAE,CAAC,IAAI,CAAC;;;KAGP,CAAC,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QAE/D,qBAAqB;QACrB,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAElB,OAAO;YACL,OAAO,EAAE,IAAI;YACb,OAAO,EAAE,4CAA4C;YACrD,OAAO;SACR,CAAC;IAEJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,oBAAoB;QACpB,IAAI,CAAC;YACH,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,aAAa,EAAE,CAAC;YACvB,yBAAyB;QAC3B,CAAC;QAED,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,qBAAqB,OAAO,EAAE;YACvC,OAAO;SACR,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,+BAA+B;IAC7C,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BN,CAAC,IAAI,EAAE,CAAC;AACX,CAAC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration: Add Help System Tables (v3.5.3 -> v3.6.0)
|
|
3
|
-
*
|
|
4
|
-
* Creates database tables for the help system optimization to reduce token consumption
|
|
5
|
-
* by moving help documentation from code to queryable database structures.
|
|
6
|
-
*
|
|
7
|
-
* Tables Created:
|
|
8
|
-
* - m_help_tools: Master table for tool names
|
|
9
|
-
* - m_help_actions: Master table for action names per tool
|
|
10
|
-
* - t_help_action_params: Parameters for each action
|
|
11
|
-
* - t_help_action_examples: Examples for each action
|
|
12
|
-
* - m_help_use_case_categories: Use case taxonomy
|
|
13
|
-
* - t_help_use_cases: Full use case documentation
|
|
14
|
-
* - t_help_action_sequences: Common action patterns with usage tracking
|
|
15
|
-
*/
|
|
16
|
-
import { Database } from 'better-sqlite3';
|
|
17
|
-
interface MigrationResult {
|
|
18
|
-
success: boolean;
|
|
19
|
-
message: string;
|
|
20
|
-
details?: string[];
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Check if migration is needed
|
|
24
|
-
*/
|
|
25
|
-
export declare function needsHelpSystemMigration(db: Database): boolean;
|
|
26
|
-
/**
|
|
27
|
-
* Run the migration
|
|
28
|
-
*/
|
|
29
|
-
export declare function migrateToHelpSystem(db: Database): MigrationResult;
|
|
30
|
-
/**
|
|
31
|
-
* Get migration info
|
|
32
|
-
*/
|
|
33
|
-
export declare function getHelpSystemMigrationInfo(): string;
|
|
34
|
-
export {};
|
|
35
|
-
//# sourceMappingURL=add-help-system-tables.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-help-system-tables.d.ts","sourceRoot":"","sources":["../../src/migrations/add-help-system-tables.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAO9D;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,CA4JjE;AAED;;GAEG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAmCnD"}
|
|
@@ -1,206 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration: Add Help System Tables (v3.5.3 -> v3.6.0)
|
|
3
|
-
*
|
|
4
|
-
* Creates database tables for the help system optimization to reduce token consumption
|
|
5
|
-
* by moving help documentation from code to queryable database structures.
|
|
6
|
-
*
|
|
7
|
-
* Tables Created:
|
|
8
|
-
* - m_help_tools: Master table for tool names
|
|
9
|
-
* - m_help_actions: Master table for action names per tool
|
|
10
|
-
* - t_help_action_params: Parameters for each action
|
|
11
|
-
* - t_help_action_examples: Examples for each action
|
|
12
|
-
* - m_help_use_case_categories: Use case taxonomy
|
|
13
|
-
* - t_help_use_cases: Full use case documentation
|
|
14
|
-
* - t_help_action_sequences: Common action patterns with usage tracking
|
|
15
|
-
*/
|
|
16
|
-
/**
|
|
17
|
-
* Check if migration is needed
|
|
18
|
-
*/
|
|
19
|
-
export function needsHelpSystemMigration(db) {
|
|
20
|
-
// Check if help system tables don't exist yet
|
|
21
|
-
const toolsExists = db.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='m_help_tools'").get();
|
|
22
|
-
return toolsExists === undefined;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Run the migration
|
|
26
|
-
*/
|
|
27
|
-
export function migrateToHelpSystem(db) {
|
|
28
|
-
const details = [];
|
|
29
|
-
try {
|
|
30
|
-
// Start transaction
|
|
31
|
-
db.exec('BEGIN TRANSACTION');
|
|
32
|
-
// 1. Create m_help_tools (Master table for tool names)
|
|
33
|
-
db.exec(`
|
|
34
|
-
CREATE TABLE IF NOT EXISTS m_help_tools (
|
|
35
|
-
tool_name TEXT PRIMARY KEY,
|
|
36
|
-
description TEXT NOT NULL
|
|
37
|
-
)
|
|
38
|
-
`);
|
|
39
|
-
details.push('Created table: m_help_tools');
|
|
40
|
-
// 2. Create m_help_actions (Master table for action names per tool)
|
|
41
|
-
db.exec(`
|
|
42
|
-
CREATE TABLE IF NOT EXISTS m_help_actions (
|
|
43
|
-
action_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
44
|
-
tool_name TEXT NOT NULL,
|
|
45
|
-
action_name TEXT NOT NULL,
|
|
46
|
-
description TEXT NOT NULL,
|
|
47
|
-
FOREIGN KEY (tool_name) REFERENCES m_help_tools(tool_name) ON DELETE CASCADE,
|
|
48
|
-
UNIQUE(tool_name, action_name)
|
|
49
|
-
)
|
|
50
|
-
`);
|
|
51
|
-
details.push('Created table: m_help_actions');
|
|
52
|
-
// Create index for fast action lookups by tool
|
|
53
|
-
db.exec(`
|
|
54
|
-
CREATE INDEX IF NOT EXISTS idx_help_actions_tool
|
|
55
|
-
ON m_help_actions(tool_name)
|
|
56
|
-
`);
|
|
57
|
-
details.push('Created index: idx_help_actions_tool');
|
|
58
|
-
// 3. Create t_help_action_params (Parameters for each action)
|
|
59
|
-
db.exec(`
|
|
60
|
-
CREATE TABLE IF NOT EXISTS t_help_action_params (
|
|
61
|
-
param_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
62
|
-
action_id INTEGER NOT NULL,
|
|
63
|
-
param_name TEXT NOT NULL,
|
|
64
|
-
param_type TEXT NOT NULL,
|
|
65
|
-
required INTEGER NOT NULL DEFAULT 0,
|
|
66
|
-
description TEXT NOT NULL,
|
|
67
|
-
default_value TEXT,
|
|
68
|
-
FOREIGN KEY (action_id) REFERENCES m_help_actions(action_id) ON DELETE CASCADE
|
|
69
|
-
)
|
|
70
|
-
`);
|
|
71
|
-
details.push('Created table: t_help_action_params');
|
|
72
|
-
// Create index for fast parameter lookups by action
|
|
73
|
-
db.exec(`
|
|
74
|
-
CREATE INDEX IF NOT EXISTS idx_help_action_params_action
|
|
75
|
-
ON t_help_action_params(action_id)
|
|
76
|
-
`);
|
|
77
|
-
details.push('Created index: idx_help_action_params_action');
|
|
78
|
-
// 4. Create t_help_action_examples (Examples for each action)
|
|
79
|
-
db.exec(`
|
|
80
|
-
CREATE TABLE IF NOT EXISTS t_help_action_examples (
|
|
81
|
-
example_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
82
|
-
action_id INTEGER NOT NULL,
|
|
83
|
-
example_title TEXT NOT NULL,
|
|
84
|
-
example_code TEXT NOT NULL,
|
|
85
|
-
explanation TEXT NOT NULL,
|
|
86
|
-
FOREIGN KEY (action_id) REFERENCES m_help_actions(action_id) ON DELETE CASCADE
|
|
87
|
-
)
|
|
88
|
-
`);
|
|
89
|
-
details.push('Created table: t_help_action_examples');
|
|
90
|
-
// Create index for fast example lookups by action
|
|
91
|
-
db.exec(`
|
|
92
|
-
CREATE INDEX IF NOT EXISTS idx_help_action_examples_action
|
|
93
|
-
ON t_help_action_examples(action_id)
|
|
94
|
-
`);
|
|
95
|
-
details.push('Created index: idx_help_action_examples_action');
|
|
96
|
-
// 5. Create m_help_use_case_categories (Use case taxonomy)
|
|
97
|
-
db.exec(`
|
|
98
|
-
CREATE TABLE IF NOT EXISTS m_help_use_case_categories (
|
|
99
|
-
category_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
100
|
-
category_name TEXT UNIQUE NOT NULL,
|
|
101
|
-
description TEXT NOT NULL
|
|
102
|
-
)
|
|
103
|
-
`);
|
|
104
|
-
details.push('Created table: m_help_use_case_categories');
|
|
105
|
-
// 6. Create t_help_use_cases (Full use case documentation)
|
|
106
|
-
db.exec(`
|
|
107
|
-
CREATE TABLE IF NOT EXISTS t_help_use_cases (
|
|
108
|
-
use_case_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
109
|
-
category_id INTEGER NOT NULL,
|
|
110
|
-
title TEXT NOT NULL,
|
|
111
|
-
complexity TEXT NOT NULL CHECK(complexity IN ('basic', 'intermediate', 'advanced')),
|
|
112
|
-
description TEXT NOT NULL,
|
|
113
|
-
full_example TEXT NOT NULL,
|
|
114
|
-
action_sequence TEXT NOT NULL,
|
|
115
|
-
FOREIGN KEY (category_id) REFERENCES m_help_use_case_categories(category_id) ON DELETE CASCADE
|
|
116
|
-
)
|
|
117
|
-
`);
|
|
118
|
-
details.push('Created table: t_help_use_cases');
|
|
119
|
-
// Create index for fast use case lookups by category
|
|
120
|
-
db.exec(`
|
|
121
|
-
CREATE INDEX IF NOT EXISTS idx_help_use_cases_category
|
|
122
|
-
ON t_help_use_cases(category_id)
|
|
123
|
-
`);
|
|
124
|
-
details.push('Created index: idx_help_use_cases_category');
|
|
125
|
-
// Create index for fast use case lookups by complexity
|
|
126
|
-
db.exec(`
|
|
127
|
-
CREATE INDEX IF NOT EXISTS idx_help_use_cases_complexity
|
|
128
|
-
ON t_help_use_cases(complexity)
|
|
129
|
-
`);
|
|
130
|
-
details.push('Created index: idx_help_use_cases_complexity');
|
|
131
|
-
// 7. Create t_help_action_sequences (Common action patterns with usage tracking)
|
|
132
|
-
db.exec(`
|
|
133
|
-
CREATE TABLE IF NOT EXISTS t_help_action_sequences (
|
|
134
|
-
sequence_id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
135
|
-
sequence_name TEXT NOT NULL,
|
|
136
|
-
actions TEXT NOT NULL,
|
|
137
|
-
description TEXT NOT NULL,
|
|
138
|
-
use_count INTEGER NOT NULL DEFAULT 0
|
|
139
|
-
)
|
|
140
|
-
`);
|
|
141
|
-
details.push('Created table: t_help_action_sequences');
|
|
142
|
-
// Create index for fast sequence lookups by use_count (most popular first)
|
|
143
|
-
db.exec(`
|
|
144
|
-
CREATE INDEX IF NOT EXISTS idx_help_action_sequences_use_count
|
|
145
|
-
ON t_help_action_sequences(use_count DESC)
|
|
146
|
-
`);
|
|
147
|
-
details.push('Created index: idx_help_action_sequences_use_count');
|
|
148
|
-
// Commit transaction
|
|
149
|
-
db.exec('COMMIT');
|
|
150
|
-
return {
|
|
151
|
-
success: true,
|
|
152
|
-
message: 'Help system tables migration completed successfully (v3.5.3 → v3.6.0)',
|
|
153
|
-
details
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
catch (error) {
|
|
157
|
-
// Rollback on error
|
|
158
|
-
db.exec('ROLLBACK');
|
|
159
|
-
const message = error instanceof Error ? error.message : String(error);
|
|
160
|
-
return {
|
|
161
|
-
success: false,
|
|
162
|
-
message: `Help system migration failed: ${message}`,
|
|
163
|
-
details
|
|
164
|
-
};
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
/**
|
|
168
|
-
* Get migration info
|
|
169
|
-
*/
|
|
170
|
-
export function getHelpSystemMigrationInfo() {
|
|
171
|
-
return `
|
|
172
|
-
Migration: Add Help System Tables (v3.5.3 → v3.6.0)
|
|
173
|
-
|
|
174
|
-
This migration creates 7 new tables for the help system optimization feature:
|
|
175
|
-
|
|
176
|
-
Master Tables (m_ prefix):
|
|
177
|
-
1. m_help_tools - Tool names and descriptions
|
|
178
|
-
2. m_help_actions - Actions per tool with descriptions
|
|
179
|
-
3. m_help_use_case_categories - Use case taxonomy
|
|
180
|
-
|
|
181
|
-
Transaction Tables (t_ prefix):
|
|
182
|
-
4. t_help_action_params - Action parameters with type info
|
|
183
|
-
5. t_help_action_examples - Code examples for each action
|
|
184
|
-
6. t_help_use_cases - Full use case documentation
|
|
185
|
-
7. t_help_action_sequences - Common patterns with usage tracking
|
|
186
|
-
|
|
187
|
-
The migration will:
|
|
188
|
-
1. Create all 7 tables with appropriate foreign key constraints
|
|
189
|
-
2. Add 6 indexes for optimal query performance:
|
|
190
|
-
- idx_help_actions_tool (tool_name)
|
|
191
|
-
- idx_help_action_params_action (action_id)
|
|
192
|
-
- idx_help_action_examples_action (action_id)
|
|
193
|
-
- idx_help_use_cases_category (category_id)
|
|
194
|
-
- idx_help_use_cases_complexity (complexity)
|
|
195
|
-
- idx_help_action_sequences_use_count (use_count DESC)
|
|
196
|
-
|
|
197
|
-
Benefits:
|
|
198
|
-
- Reduces token consumption by moving help docs to database
|
|
199
|
-
- Enables granular, query-based help retrieval
|
|
200
|
-
- Supports usage tracking for action sequences
|
|
201
|
-
- Maintains referential integrity with cascading deletes
|
|
202
|
-
|
|
203
|
-
This migration is safe and additive (no data loss).
|
|
204
|
-
`.trim();
|
|
205
|
-
}
|
|
206
|
-
//# sourceMappingURL=add-help-system-tables.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-help-system-tables.js","sourceRoot":"","sources":["../../src/migrations/add-help-system-tables.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration: Add table prefixes (v1.0.1 -> v1.1.0)
|
|
3
|
-
*
|
|
4
|
-
* Migrates database from unprefixed table names to prefixed names:
|
|
5
|
-
* - Master tables: m_ prefix
|
|
6
|
-
* - Transaction tables: t_ prefix
|
|
7
|
-
* - Views: v_ prefix
|
|
8
|
-
* - Triggers: trg_ prefix
|
|
9
|
-
*/
|
|
10
|
-
import { Database } from 'better-sqlite3';
|
|
11
|
-
interface MigrationResult {
|
|
12
|
-
success: boolean;
|
|
13
|
-
message: string;
|
|
14
|
-
details?: string[];
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Check if migration is needed
|
|
18
|
-
*/
|
|
19
|
-
export declare function needsMigration(db: Database): boolean;
|
|
20
|
-
/**
|
|
21
|
-
* Run the migration
|
|
22
|
-
*/
|
|
23
|
-
export declare function runMigration(db: Database): MigrationResult;
|
|
24
|
-
/**
|
|
25
|
-
* Get migration info
|
|
26
|
-
*/
|
|
27
|
-
export declare function getMigrationInfo(): string;
|
|
28
|
-
export {};
|
|
29
|
-
//# sourceMappingURL=add-table-prefixes.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"add-table-prefixes.d.ts","sourceRoot":"","sources":["../../src/migrations/add-table-prefixes.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,UAAU,eAAe;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,CAWpD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,GAAG,eAAe,CAuI1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAkBzC"}
|