sqlew 3.9.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +20 -0
- package/README.md +20 -3
- package/assets/sample-agents/sqlew-architect.md +3 -4
- package/assets/sample-agents/sqlew-researcher.md +6 -15
- package/assets/sample-agents/sqlew-scrum-master.md +58 -50
- package/assets/sample-commands/sqw-documentor.md +62 -16
- package/assets/sample-commands/sqw-plan.md +82 -35
- package/assets/sample-commands/sqw-research.md +78 -17
- package/assets/sample-commands/sqw-review.md +66 -29
- package/assets/sample-commands/sqw-scrum.md +37 -3
- package/dist/adapters/mysql-adapter.js +3 -3
- package/dist/adapters/postgresql-adapter.js +3 -3
- package/dist/cli/db-dump.js +73 -73
- package/dist/cli/db-export.js +50 -50
- package/dist/cli/db-import.js +51 -51
- package/dist/cli.js +52 -52
- package/dist/config/minimal-generator.js +91 -91
- package/dist/database/config/config-ops.d.ts +19 -11
- package/dist/database/config/config-ops.d.ts.map +1 -1
- package/dist/database/config/config-ops.js +62 -36
- package/dist/database/config/config-ops.js.map +1 -1
- package/dist/database/index.d.ts +3 -1
- package/dist/database/index.d.ts.map +1 -1
- package/dist/database/index.js +4 -2
- package/dist/database/index.js.map +1 -1
- package/dist/database/initialization/init.d.ts.map +1 -1
- package/dist/database/initialization/init.js +31 -0
- package/dist/database/initialization/init.js.map +1 -1
- package/dist/database/initialization/schema-version.d.ts +94 -0
- package/dist/database/initialization/schema-version.d.ts.map +1 -0
- package/dist/database/initialization/schema-version.js +166 -0
- package/dist/database/initialization/schema-version.js.map +1 -0
- package/dist/database/migrations/v4/20251126000000_v4_bootstrap.d.ts +36 -0
- package/dist/database/migrations/v4/20251126000000_v4_bootstrap.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251126000000_v4_bootstrap.js +597 -0
- package/dist/database/migrations/v4/20251126000000_v4_bootstrap.js.map +1 -0
- package/dist/database/migrations/v4/20251126000001_v4_migrate_data.d.ts +26 -0
- package/dist/database/migrations/v4/20251126000001_v4_migrate_data.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js +390 -0
- package/dist/database/migrations/v4/20251126000001_v4_migrate_data.js.map +1 -0
- package/dist/database/migrations/v4/20251127000000_add_rejected_status.d.ts +17 -0
- package/dist/database/migrations/v4/20251127000000_add_rejected_status.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251127000000_add_rejected_status.js +50 -0
- package/dist/database/migrations/v4/20251127000000_add_rejected_status.js.map +1 -0
- package/dist/database/migrations/v4/20251127000001_update_task_move_help.d.ts +13 -0
- package/dist/database/migrations/v4/20251127000001_update_task_move_help.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251127000001_update_task_move_help.js +76 -0
- package/dist/database/migrations/v4/20251127000001_update_task_move_help.js.map +1 -0
- package/dist/database/migrations/v4/20251127000002_v4_seed_help_system.d.ts +17 -0
- package/dist/database/migrations/v4/20251127000002_v4_seed_help_system.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251127000002_v4_seed_help_system.js +334 -0
- package/dist/database/migrations/v4/20251127000002_v4_seed_help_system.js.map +1 -0
- package/dist/database/migrations/v4/20251127000003_add_task_notes_column.d.ts +11 -0
- package/dist/database/migrations/v4/20251127000003_add_task_notes_column.d.ts.map +1 -0
- package/dist/database/migrations/v4/20251127000003_add_task_notes_column.js +33 -0
- package/dist/database/migrations/v4/20251127000003_add_task_notes_column.js.map +1 -0
- package/dist/database/operations/inserts.d.ts +12 -7
- package/dist/database/operations/inserts.d.ts.map +1 -1
- package/dist/database/operations/inserts.js +30 -60
- package/dist/database/operations/inserts.js.map +1 -1
- package/dist/database/operations/queries.d.ts.map +1 -1
- package/dist/database/operations/queries.js +19 -21
- package/dist/database/operations/queries.js.map +1 -1
- package/dist/database/operations/updates.d.ts +2 -1
- package/dist/database/operations/updates.d.ts.map +1 -1
- package/dist/database/operations/updates.js +3 -6
- package/dist/database/operations/updates.js.map +1 -1
- package/dist/init-agents.js +27 -27
- package/dist/init-commands.js +25 -25
- package/dist/knexfile.d.ts.map +1 -1
- package/dist/knexfile.js +5 -25
- package/dist/knexfile.js.map +1 -1
- package/dist/schema.d.ts +7 -3
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +43 -50
- package/dist/schema.js.map +1 -1
- package/dist/server/arg-parser.js +18 -18
- package/dist/server/tool-registry.d.ts.map +1 -1
- package/dist/server/tool-registry.js +18 -1
- package/dist/server/tool-registry.js.map +1 -1
- package/dist/sync-gitignore.d.ts +13 -0
- package/dist/sync-gitignore.d.ts.map +1 -0
- package/dist/sync-gitignore.js +60 -0
- package/dist/sync-gitignore.js.map +1 -0
- package/dist/tests/database/multi-project/multi-project.test.js +13 -13
- package/dist/tests/database/multi-project/multi-project.test.js.map +1 -1
- package/dist/tests/database/sql-dump/default-conversions.test.js +4 -4
- package/dist/tests/database/sql-dump/default-conversions.test.js.map +1 -1
- package/dist/tests/database/sql-dump/table-ordering.test.js +14 -14
- package/dist/tests/database/sql-dump/table-ordering.test.js.map +1 -1
- package/dist/tests/docker/cross-database.test.js +12 -18
- package/dist/tests/docker/cross-database.test.js.map +1 -1
- package/dist/tests/docker/dump-import.test.js +15 -15
- package/dist/tests/docker/dump-import.test.js.map +1 -1
- package/dist/tests/docker/multi-project-migration.test.js +44 -61
- package/dist/tests/docker/multi-project-migration.test.js.map +1 -1
- package/dist/tests/docker/native/constraint-operations.test.d.ts +1 -1
- package/dist/tests/docker/native/constraint-operations.test.js +65 -114
- package/dist/tests/docker/native/constraint-operations.test.js.map +1 -1
- package/dist/tests/docker/native/db-init.d.ts +1 -1
- package/dist/tests/docker/native/db-init.js +3 -3
- package/dist/tests/docker/native/db-init.js.map +1 -1
- package/dist/tests/docker/native/decision-operations.test.js +93 -148
- package/dist/tests/docker/native/decision-operations.test.js.map +1 -1
- package/dist/tests/docker/native/help-system.test.js +60 -60
- package/dist/tests/docker/native/help-system.test.js.map +1 -1
- package/dist/tests/docker/native/suggest-tool.test.js +25 -33
- package/dist/tests/docker/native/suggest-tool.test.js.map +1 -1
- package/dist/tests/docker/native/task-operations.test.js +114 -140
- package/dist/tests/docker/native/task-operations.test.js.map +1 -1
- package/dist/tests/docker/native/test-harness.d.ts +0 -9
- package/dist/tests/docker/native/test-harness.d.ts.map +1 -1
- package/dist/tests/docker/native/test-harness.js +42 -69
- package/dist/tests/docker/native/test-harness.js.map +1 -1
- package/dist/tests/feature/task/auto-pruning-decision-link.test.js +6 -9
- package/dist/tests/feature/task/auto-pruning-decision-link.test.js.map +1 -1
- package/dist/tests/feature/task/auto-pruning-partial.test.js +17 -19
- package/dist/tests/feature/task/auto-pruning-partial.test.js.map +1 -1
- package/dist/tests/feature/task/auto-pruning-persistence.test.js +11 -14
- package/dist/tests/feature/task/auto-pruning-persistence.test.js.map +1 -1
- package/dist/tests/feature/task/auto-pruning-safety.test.js +23 -42
- package/dist/tests/feature/task/auto-pruning-safety.test.js.map +1 -1
- package/dist/tests/feature/task/dependencies.test.js +30 -34
- package/dist/tests/feature/task/dependencies.test.js.map +1 -1
- package/dist/tests/feature/task/link-file-backward-compat.test.js +19 -21
- package/dist/tests/feature/task/link-file-backward-compat.test.js.map +1 -1
- package/dist/tests/feature/task/watch-files-action.test.js +10 -12
- package/dist/tests/feature/task/watch-files-action.test.js.map +1 -1
- package/dist/tests/feature/task/watch-files-parameter.test.js +25 -27
- package/dist/tests/feature/task/watch-files-parameter.test.js.map +1 -1
- package/dist/tests/feature/vcs/git-aware-completion.test.js +32 -42
- package/dist/tests/feature/vcs/git-aware-completion.test.js.map +1 -1
- package/dist/tests/feature/vcs/two-step-git-completion.test.js +83 -104
- package/dist/tests/feature/vcs/two-step-git-completion.test.js.map +1 -1
- package/dist/tests/integration/all-features.standalone.js +4 -6
- package/dist/tests/integration/all-features.standalone.js.map +1 -1
- package/dist/tests/integration/auto-trigger-suggestions.test.js +26 -68
- package/dist/tests/integration/auto-trigger-suggestions.test.js.map +1 -1
- package/dist/tests/integration/decision-intelligence-e2e.test.js +32 -71
- package/dist/tests/integration/decision-intelligence-e2e.test.js.map +1 -1
- package/dist/tests/integration/e2e-workflow1-debug.test.js +3 -17
- package/dist/tests/integration/e2e-workflow1-debug.test.js.map +1 -1
- package/dist/tests/integration/hybrid-similarity-detection.test.js +45 -55
- package/dist/tests/integration/hybrid-similarity-detection.test.js.map +1 -1
- package/dist/tests/migrations/test-all-versions.d.ts +1 -1
- package/dist/tests/migrations/test-all-versions.js +11 -9
- package/dist/tests/migrations/test-all-versions.js.map +1 -1
- package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts +7 -0
- package/dist/tests/migrations/v4/v4-fresh-install.test.d.ts.map +1 -0
- package/dist/tests/migrations/v4/v4-fresh-install.test.js +168 -0
- package/dist/tests/migrations/v4/v4-fresh-install.test.js.map +1 -0
- package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts +13 -0
- package/dist/tests/migrations/v4/v4-migrate-data.test.d.ts.map +1 -0
- package/dist/tests/migrations/v4/v4-migrate-data.test.js +264 -0
- package/dist/tests/migrations/v4/v4-migrate-data.test.js.map +1 -0
- package/dist/tests/test-v4-native-rdbms.d.ts +10 -0
- package/dist/tests/test-v4-native-rdbms.d.ts.map +1 -0
- package/dist/tests/test-v4-native-rdbms.js +235 -0
- package/dist/tests/test-v4-native-rdbms.js.map +1 -0
- package/dist/tests/unit/constraint-scorer.test.d.ts +13 -0
- package/dist/tests/unit/constraint-scorer.test.d.ts.map +1 -0
- package/dist/tests/unit/constraint-scorer.test.js +390 -0
- package/dist/tests/unit/constraint-scorer.test.js.map +1 -0
- package/dist/tests/unit/validation/policy-validation.test.js +15 -15
- package/dist/tests/unit/validation/policy-validation.test.js.map +1 -1
- package/dist/tests/utils/db-config.d.ts.map +1 -1
- package/dist/tests/utils/db-config.js +2 -3
- package/dist/tests/utils/db-config.js.map +1 -1
- package/dist/tests/utils/db-seeding.d.ts.map +1 -1
- package/dist/tests/utils/db-seeding.js +17 -20
- package/dist/tests/utils/db-seeding.js.map +1 -1
- package/dist/tests/utils/task-helpers.d.ts +9 -9
- package/dist/tests/utils/task-helpers.d.ts.map +1 -1
- package/dist/tests/utils/task-helpers.js +26 -43
- package/dist/tests/utils/task-helpers.js.map +1 -1
- package/dist/tests/utils/test-helpers.d.ts +13 -8
- package/dist/tests/utils/test-helpers.d.ts.map +1 -1
- package/dist/tests/utils/test-helpers.js +55 -69
- package/dist/tests/utils/test-helpers.js.map +1 -1
- package/dist/tools/constraints/actions/add.d.ts.map +1 -1
- package/dist/tools/constraints/actions/add.js +8 -23
- package/dist/tools/constraints/actions/add.js.map +1 -1
- package/dist/tools/constraints/actions/deactivate.js +2 -2
- package/dist/tools/constraints/actions/deactivate.js.map +1 -1
- package/dist/tools/constraints/actions/get.d.ts +2 -2
- package/dist/tools/constraints/actions/get.js +2 -2
- package/dist/tools/context/actions/create-policy.d.ts.map +1 -1
- package/dist/tools/context/actions/create-policy.js +3 -20
- package/dist/tools/context/actions/create-policy.js.map +1 -1
- package/dist/tools/context/actions/create-template.d.ts.map +1 -1
- package/dist/tools/context/actions/create-template.js +5 -9
- package/dist/tools/context/actions/create-template.js.map +1 -1
- package/dist/tools/context/actions/hard-delete.js +12 -12
- package/dist/tools/context/actions/hard-delete.js.map +1 -1
- package/dist/tools/context/actions/has-updates.js +3 -3
- package/dist/tools/context/actions/has-updates.js.map +1 -1
- package/dist/tools/context/actions/list-policies.d.ts.map +1 -1
- package/dist/tools/context/actions/list-policies.js +3 -3
- package/dist/tools/context/actions/list-policies.js.map +1 -1
- package/dist/tools/context/actions/list-templates.d.ts.map +1 -1
- package/dist/tools/context/actions/list-templates.js +4 -5
- package/dist/tools/context/actions/list-templates.js.map +1 -1
- package/dist/tools/context/actions/list.js +1 -1
- package/dist/tools/context/actions/list.js.map +1 -1
- package/dist/tools/context/actions/search-layer.d.ts.map +1 -1
- package/dist/tools/context/actions/search-layer.js +11 -12
- package/dist/tools/context/actions/search-layer.js.map +1 -1
- package/dist/tools/context/actions/set-from-policy.js +1 -1
- package/dist/tools/context/actions/set-from-policy.js.map +1 -1
- package/dist/tools/context/actions/set-from-template.js +2 -2
- package/dist/tools/context/actions/set-from-template.js.map +1 -1
- package/dist/tools/context/actions/versions.d.ts.map +1 -1
- package/dist/tools/context/actions/versions.js +6 -7
- package/dist/tools/context/actions/versions.js.map +1 -1
- package/dist/tools/context/internal/queries.d.ts.map +1 -1
- package/dist/tools/context/internal/queries.js +73 -53
- package/dist/tools/context/internal/queries.js.map +1 -1
- package/dist/tools/example/actions/get.js +7 -7
- package/dist/tools/example/actions/get.js.map +1 -1
- package/dist/tools/example/actions/list-all.js +4 -4
- package/dist/tools/example/actions/list-all.js.map +1 -1
- package/dist/tools/example/actions/search.js +8 -8
- package/dist/tools/example/actions/search.js.map +1 -1
- package/dist/tools/example/help/example.js +21 -21
- package/dist/tools/files/actions/check-lock.d.ts.map +1 -1
- package/dist/tools/files/actions/check-lock.js +4 -6
- package/dist/tools/files/actions/check-lock.js.map +1 -1
- package/dist/tools/files/actions/get.d.ts.map +1 -1
- package/dist/tools/files/actions/get.js +6 -8
- package/dist/tools/files/actions/get.js.map +1 -1
- package/dist/tools/files/internal/queries.d.ts.map +1 -1
- package/dist/tools/files/internal/queries.js +5 -14
- package/dist/tools/files/internal/queries.js.map +1 -1
- package/dist/tools/help/actions/batch-guide.js +5 -5
- package/dist/tools/help/actions/batch-guide.js.map +1 -1
- package/dist/tools/help-queries.js +29 -29
- package/dist/tools/help-queries.js.map +1 -1
- package/dist/tools/suggest/actions/by-tags.d.ts +2 -2
- package/dist/tools/suggest/actions/by-tags.js +2 -2
- package/dist/tools/suggest/actions/constraint-by-context.d.ts +66 -0
- package/dist/tools/suggest/actions/constraint-by-context.d.ts.map +1 -0
- package/dist/tools/suggest/actions/constraint-by-context.js +82 -0
- package/dist/tools/suggest/actions/constraint-by-context.js.map +1 -0
- package/dist/tools/suggest/actions/constraint-by-tags.d.ts +48 -0
- package/dist/tools/suggest/actions/constraint-by-tags.d.ts.map +1 -0
- package/dist/tools/suggest/actions/constraint-by-tags.js +68 -0
- package/dist/tools/suggest/actions/constraint-by-tags.js.map +1 -0
- package/dist/tools/suggest/actions/constraint-by-text.d.ts +47 -0
- package/dist/tools/suggest/actions/constraint-by-text.d.ts.map +1 -0
- package/dist/tools/suggest/actions/constraint-by-text.js +65 -0
- package/dist/tools/suggest/actions/constraint-by-text.js.map +1 -0
- package/dist/tools/suggest/actions/constraint-check-duplicate.d.ts +50 -0
- package/dist/tools/suggest/actions/constraint-check-duplicate.d.ts.map +1 -0
- package/dist/tools/suggest/actions/constraint-check-duplicate.js +68 -0
- package/dist/tools/suggest/actions/constraint-check-duplicate.js.map +1 -0
- package/dist/tools/suggest/help/constraint-help.d.ts +12 -0
- package/dist/tools/suggest/help/constraint-help.d.ts.map +1 -0
- package/dist/tools/suggest/help/constraint-help.js +126 -0
- package/dist/tools/suggest/help/constraint-help.js.map +1 -0
- package/dist/tools/suggest/index.d.ts +3 -2
- package/dist/tools/suggest/index.d.ts.map +1 -1
- package/dist/tools/suggest/index.js +67 -4
- package/dist/tools/suggest/index.js.map +1 -1
- package/dist/tools/suggest/internal/constraint-queries.d.ts +55 -0
- package/dist/tools/suggest/internal/constraint-queries.d.ts.map +1 -0
- package/dist/tools/suggest/internal/constraint-queries.js +85 -0
- package/dist/tools/suggest/internal/constraint-queries.js.map +1 -0
- package/dist/tools/suggest/internal/queries.d.ts +4 -4
- package/dist/tools/suggest/internal/queries.d.ts.map +1 -1
- package/dist/tools/suggest/internal/queries.js +44 -37
- package/dist/tools/suggest/internal/queries.js.map +1 -1
- package/dist/tools/suggest/types.d.ts +10 -0
- package/dist/tools/suggest/types.d.ts.map +1 -1
- package/dist/tools/tasks/actions/add-dependency.d.ts.map +1 -1
- package/dist/tools/tasks/actions/add-dependency.js +15 -10
- package/dist/tools/tasks/actions/add-dependency.js.map +1 -1
- package/dist/tools/tasks/actions/archive.d.ts.map +1 -1
- package/dist/tools/tasks/actions/archive.js +2 -11
- package/dist/tools/tasks/actions/archive.js.map +1 -1
- package/dist/tools/tasks/actions/create.d.ts.map +1 -1
- package/dist/tools/tasks/actions/create.js +7 -24
- package/dist/tools/tasks/actions/create.js.map +1 -1
- package/dist/tools/tasks/actions/get-dependencies.js +1 -1
- package/dist/tools/tasks/actions/get-dependencies.js.map +1 -1
- package/dist/tools/tasks/actions/get-pruned-files.js +4 -4
- package/dist/tools/tasks/actions/get-pruned-files.js.map +1 -1
- package/dist/tools/tasks/actions/get.d.ts.map +1 -1
- package/dist/tools/tasks/actions/get.js +15 -16
- package/dist/tools/tasks/actions/get.js.map +1 -1
- package/dist/tools/tasks/actions/link-pruned-file.js +6 -6
- package/dist/tools/tasks/actions/link-pruned-file.js.map +1 -1
- package/dist/tools/tasks/actions/link.js +8 -8
- package/dist/tools/tasks/actions/link.js.map +1 -1
- package/dist/tools/tasks/actions/list.js +2 -2
- package/dist/tools/tasks/actions/list.js.map +1 -1
- package/dist/tools/tasks/actions/move.d.ts +2 -1
- package/dist/tools/tasks/actions/move.d.ts.map +1 -1
- package/dist/tools/tasks/actions/move.js +22 -22
- package/dist/tools/tasks/actions/move.js.map +1 -1
- package/dist/tools/tasks/actions/remove-dependency.js +1 -1
- package/dist/tools/tasks/actions/remove-dependency.js.map +1 -1
- package/dist/tools/tasks/actions/update.d.ts.map +1 -1
- package/dist/tools/tasks/actions/update.js +12 -15
- package/dist/tools/tasks/actions/update.js.map +1 -1
- package/dist/tools/tasks/actions/watch-files.js +8 -8
- package/dist/tools/tasks/actions/watch-files.js.map +1 -1
- package/dist/tools/tasks/help/example.js +4 -4
- package/dist/tools/tasks/help/example.js.map +1 -1
- package/dist/tools/tasks/help/help.d.ts.map +1 -1
- package/dist/tools/tasks/help/help.js +20 -10
- package/dist/tools/tasks/help/help.js.map +1 -1
- package/dist/tools/tasks/internal/state-machine.js +2 -2
- package/dist/tools/tasks/internal/state-machine.js.map +1 -1
- package/dist/tools/tasks/internal/task-queries.d.ts.map +1 -1
- package/dist/tools/tasks/internal/task-queries.js +9 -11
- package/dist/tools/tasks/internal/task-queries.js.map +1 -1
- package/dist/tools/tasks/types.d.ts +13 -1
- package/dist/tools/tasks/types.d.ts.map +1 -1
- package/dist/tools/tasks/types.js +30 -7
- package/dist/tools/tasks/types.js.map +1 -1
- package/dist/tools/tasks/watcher/status.js +8 -8
- package/dist/tools/tasks/watcher/status.js.map +1 -1
- package/dist/tools/use_case/actions/search.js +4 -4
- package/dist/tools/use_case/actions/search.js.map +1 -1
- package/dist/tools/use_case/help/example.js +16 -16
- package/dist/types/task/params.d.ts +2 -1
- package/dist/types/task/params.d.ts.map +1 -1
- package/dist/types.d.ts +10 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/action-specs/task-specs.js +5 -5
- package/dist/utils/action-specs/task-specs.js.map +1 -1
- package/dist/utils/batch-validation.d.ts +1 -1
- package/dist/utils/batch-validation.js +3 -3
- package/dist/utils/batch-validation.js.map +1 -1
- package/dist/utils/cleanup.js +3 -3
- package/dist/utils/cleanup.js.map +1 -1
- package/dist/utils/constraint-scorer.d.ts +113 -0
- package/dist/utils/constraint-scorer.d.ts.map +1 -0
- package/dist/utils/constraint-scorer.js +220 -0
- package/dist/utils/constraint-scorer.js.map +1 -0
- package/dist/utils/db-aggregations.js +10 -10
- package/dist/utils/db-aggregations.js.map +1 -1
- package/dist/utils/exporter/export.js +70 -70
- package/dist/utils/exporter/export.js.map +1 -1
- package/dist/utils/file-pruning.js +16 -16
- package/dist/utils/file-pruning.js.map +1 -1
- package/dist/utils/importer/import.js +33 -33
- package/dist/utils/importer/import.js.map +1 -1
- package/dist/utils/importer/master-tables.js +25 -25
- package/dist/utils/importer/master-tables.js.map +1 -1
- package/dist/utils/importer/topological-sort.d.ts +1 -1
- package/dist/utils/importer/topological-sort.js +1 -1
- package/dist/utils/policy-validator.js +5 -1
- package/dist/utils/policy-validator.js.map +1 -1
- package/dist/utils/project-context.js +3 -3
- package/dist/utils/project-context.js.map +1 -1
- package/dist/utils/quality-checks.js +3 -3
- package/dist/utils/quality-checks.js.map +1 -1
- package/dist/utils/retention.js +1 -1
- package/dist/utils/retention.js.map +1 -1
- package/dist/utils/sql-dump/core/dependency-sort.js +17 -17
- package/dist/utils/sql-dump/core/index-export.js +7 -7
- package/dist/utils/sql-dump/core/sequence-reset.js +5 -5
- package/dist/utils/sql-dump/generators/headers.js +10 -10
- package/dist/utils/sql-dump/schema/indexes.js +15 -15
- package/dist/utils/sql-dump/schema/primary-keys.js +14 -14
- package/dist/utils/sql-dump/schema/tables.js +44 -44
- package/dist/utils/sql-dump/schema/views.js +21 -21
- package/dist/utils/suggestion-scorer.d.ts.map +1 -1
- package/dist/utils/suggestion-scorer.js +9 -0
- package/dist/utils/suggestion-scorer.js.map +1 -1
- package/dist/utils/task-stale-detection.d.ts.map +1 -1
- package/dist/utils/task-stale-detection.js +20 -19
- package/dist/utils/task-stale-detection.js.map +1 -1
- package/dist/utils/token-logging.js +6 -6
- package/dist/utils/token-logging.js.map +1 -1
- package/dist/utils/validators.d.ts +4 -4
- package/dist/utils/validators.d.ts.map +1 -1
- package/dist/utils/validators.js +10 -4
- package/dist/utils/validators.js.map +1 -1
- package/dist/utils/view-queries.d.ts +3 -3
- package/dist/utils/view-queries.d.ts.map +1 -1
- package/dist/utils/view-queries.js +41 -66
- package/dist/utils/view-queries.js.map +1 -1
- package/dist/watcher/file-watcher.js +20 -20
- package/dist/watcher/file-watcher.js.map +1 -1
- package/docs/AI_AGENT_GUIDE.md +81 -1376
- package/docs/ARCHITECTURE.md +127 -608
- package/docs/AUTO_FILE_TRACKING.md +22 -20
- package/docs/BATCH_VALIDATION.md +3 -3
- package/docs/CONFIGURATION.md +69 -68
- package/docs/CONSTRAINT_INTELLIGENCE.md +339 -0
- package/docs/DATABASE_AUTH.md +1 -1
- package/docs/DECISION_CONTEXT.md +12 -0
- package/docs/DECISION_INTELLIGENCE.md +19 -8
- package/docs/GIT_AWARE_AUTO_COMPLETE.md +21 -20
- package/docs/SHARED_CONCEPTS.md +46 -16
- package/docs/SLASH_COMMANDS.md +88 -117
- package/docs/SPECIALIZED_AGENTS.md +45 -572
- package/docs/TASK_ACTIONS.md +63 -53
- package/docs/TASK_OVERVIEW.md +49 -61
- package/docs/TASK_PRUNING.md +32 -27
- package/docs/TOOL_REFERENCE.md +119 -76
- package/docs/TOOL_SELECTION.md +15 -18
- package/docs/WORKFLOWS.md +504 -350
- package/package.json +119 -119
- package/assets/sample-commands/sqw-secretary.md +0 -187
- package/dist/config/knex/bootstrap/20251025020452_create_master_tables.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025020452_create_master_tables.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025020452_create_master_tables.js +0 -97
- package/dist/config/knex/bootstrap/20251025020452_create_master_tables.js.map +0 -1
- package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.js +0 -270
- package/dist/config/knex/bootstrap/20251025021152_create_transaction_tables.js.map +0 -1
- package/dist/config/knex/bootstrap/20251025021351_create_indexes.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025021351_create_indexes.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025021351_create_indexes.js +0 -93
- package/dist/config/knex/bootstrap/20251025021351_create_indexes.js.map +0 -1
- package/dist/config/knex/bootstrap/20251025021352_fix_mysql_index_syntax.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025021352_fix_mysql_index_syntax.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025021352_fix_mysql_index_syntax.js +0 -146
- package/dist/config/knex/bootstrap/20251025021352_fix_mysql_index_syntax.js.map +0 -1
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js +0 -182
- package/dist/config/knex/bootstrap/20251025021416_seed_master_data.js.map +0 -1
- package/dist/config/knex/bootstrap/20251025070349_create_views.d.ts +0 -4
- package/dist/config/knex/bootstrap/20251025070349_create_views.d.ts.map +0 -1
- package/dist/config/knex/bootstrap/20251025070349_create_views.js +0 -247
- package/dist/config/knex/bootstrap/20251025070349_create_views.js.map +0 -1
- package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts +0 -4
- package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js +0 -22
- package/dist/config/knex/enhancements/20251025081221_add_link_type_to_task_decision_links.js.map +0 -1
- package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts +0 -8
- package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.js +0 -12
- package/dist/config/knex/enhancements/20251025082220_fix_task_dependencies_columns.js.map +0 -1
- package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.d.ts +0 -19
- package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.js +0 -121
- package/dist/config/knex/enhancements/20251025090000_create_help_system_tables.js.map +0 -1
- package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts +0 -13
- package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js +0 -383
- package/dist/config/knex/enhancements/20251025090100_seed_help_categories_and_use_cases.js.map +0 -1
- package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.d.ts +0 -15
- package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.js +0 -259
- package/dist/config/knex/enhancements/20251025100000_seed_help_metadata.js.map +0 -1
- package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts +0 -16
- package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.js +0 -276
- package/dist/config/knex/enhancements/20251025100100_seed_remaining_use_cases.js.map +0 -1
- package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts +0 -8
- package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js +0 -71
- package/dist/config/knex/enhancements/20251025120000_add_cascade_to_task_dependencies.js.map +0 -1
- package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts +0 -14
- package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.js +0 -62
- package/dist/config/knex/enhancements/20251027000000_add_agent_reuse_system.js.map +0 -1
- package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts +0 -4
- package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js +0 -24
- package/dist/config/knex/enhancements/20251027010000_add_task_constraint_to_decision_context.js.map +0 -1
- package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.d.ts +0 -16
- package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.js +0 -33
- package/dist/config/knex/enhancements/20251027020000_update_agent_reusability.js.map +0 -1
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.d.ts +0 -23
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js +0 -58
- package/dist/config/knex/enhancements/20251028000000_simplify_agent_system.js.map +0 -1
- package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.d.ts +0 -13
- package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.js +0 -48
- package/dist/config/knex/enhancements/20251031000000_drop_orphaned_message_view.js.map +0 -1
- package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.d.ts +0 -24
- package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.js +0 -189
- package/dist/config/knex/enhancements/20251104000003_rename_constraints_created_by_to_agent_id.js.map +0 -1
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts +0 -16
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js +0 -72
- package/dist/config/knex/enhancements/20251105000000_add_token_usage_table.js.map +0 -1
- package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts +0 -23
- package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.js +0 -118
- package/dist/config/knex/enhancements/20251105000001_rename_decision_context_decided_by_to_agent_id.js.map +0 -1
- package/dist/config/knex/enhancements/20251106000000_fix_master_tables_project_id_v3_7_3.d.ts +0 -29
- package/dist/config/knex/enhancements/20251106000000_fix_master_tables_project_id_v3_7_3.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251106000000_fix_master_tables_project_id_v3_7_3.js +0 -556
- package/dist/config/knex/enhancements/20251106000000_fix_master_tables_project_id_v3_7_3.js.map +0 -1
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts +0 -21
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js +0 -73
- package/dist/config/knex/enhancements/20251108000000_add_planning_layers_v3_8_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts +0 -19
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js +0 -88
- package/dist/config/knex/enhancements/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts +0 -24
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js +0 -79
- package/dist/config/knex/enhancements/20251109000003_token_usage_cross_db_compat_v3_7_5.js.map +0 -1
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts +0 -27
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js +0 -347
- package/dist/config/knex/enhancements/20251109010000_tool_cleanup_v3_8_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts +0 -30
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js +0 -232
- package/dist/config/knex/enhancements/20251109020000_fix_missing_help_actions_v3_8_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251112000001_fix_task_file_links_schema_v3_9_0.d.ts +0 -22
- package/dist/config/knex/enhancements/20251112000001_fix_task_file_links_schema_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251112000001_fix_task_file_links_schema_v3_9_0.js +0 -106
- package/dist/config/knex/enhancements/20251112000001_fix_task_file_links_schema_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251112000002_fix_task_pruned_files_schema_v3_9_0.d.ts +0 -21
- package/dist/config/knex/enhancements/20251112000002_fix_task_pruned_files_schema_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251112000002_fix_task_pruned_files_schema_v3_9_0.js +0 -106
- package/dist/config/knex/enhancements/20251112000002_fix_task_pruned_files_schema_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114000000_fix_v_tagged_decisions_numeric_support.d.ts +0 -21
- package/dist/config/knex/enhancements/20251114000000_fix_v_tagged_decisions_numeric_support.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114000000_fix_v_tagged_decisions_numeric_support.js +0 -91
- package/dist/config/knex/enhancements/20251114000000_fix_v_tagged_decisions_numeric_support.js.map +0 -1
- package/dist/config/knex/enhancements/20251114120000_add_suggest_tool_to_help_system_v3_9_0.d.ts +0 -15
- package/dist/config/knex/enhancements/20251114120000_add_suggest_tool_to_help_system_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114120000_add_suggest_tool_to_help_system_v3_9_0.js +0 -270
- package/dist/config/knex/enhancements/20251114120000_add_suggest_tool_to_help_system_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114121000_add_suggest_tool_use_cases_v3_9_0.d.ts +0 -15
- package/dist/config/knex/enhancements/20251114121000_add_suggest_tool_use_cases_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114121000_add_suggest_tool_use_cases_v3_9_0.js +0 -241
- package/dist/config/knex/enhancements/20251114121000_add_suggest_tool_use_cases_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114130000_seed_builtin_policies_v3_9_0.d.ts +0 -16
- package/dist/config/knex/enhancements/20251114130000_seed_builtin_policies_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114130000_seed_builtin_policies_v3_9_0.js +0 -168
- package/dist/config/knex/enhancements/20251114130000_seed_builtin_policies_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114140000_add_policy_help_v3_9_0.d.ts +0 -14
- package/dist/config/knex/enhancements/20251114140000_add_policy_help_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114140000_add_policy_help_v3_9_0.js +0 -228
- package/dist/config/knex/enhancements/20251114140000_add_policy_help_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114141000_add_policy_use_cases_v3_9_0.d.ts +0 -14
- package/dist/config/knex/enhancements/20251114141000_add_policy_use_cases_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114141000_add_policy_use_cases_v3_9_0.js +0 -237
- package/dist/config/knex/enhancements/20251114141000_add_policy_use_cases_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251114150000_fix_policy_unique_constraint_v3_9_0.d.ts +0 -14
- package/dist/config/knex/enhancements/20251114150000_fix_policy_unique_constraint_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251114150000_fix_policy_unique_constraint_v3_9_0.js +0 -61
- package/dist/config/knex/enhancements/20251114150000_fix_policy_unique_constraint_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251115000000_fix_task_decision_links_unique_constraint.d.ts +0 -21
- package/dist/config/knex/enhancements/20251115000000_fix_task_decision_links_unique_constraint.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251115000000_fix_task_decision_links_unique_constraint.js +0 -127
- package/dist/config/knex/enhancements/20251115000000_fix_task_decision_links_unique_constraint.js.map +0 -1
- package/dist/config/knex/enhancements/20251115100000_fix_read_keyword_index_v3_9_0.d.ts +0 -15
- package/dist/config/knex/enhancements/20251115100000_fix_read_keyword_index_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251115100000_fix_read_keyword_index_v3_9_0.js +0 -69
- package/dist/config/knex/enhancements/20251115100000_fix_read_keyword_index_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251115110000_fix_cross_database_timestamps_v3_9_0.d.ts +0 -15
- package/dist/config/knex/enhancements/20251115110000_fix_cross_database_timestamps_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251115110000_fix_cross_database_timestamps_v3_9_0.js +0 -132
- package/dist/config/knex/enhancements/20251115110000_fix_cross_database_timestamps_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251115120000_fix_all_cross_db_issues_v3_9_0.d.ts +0 -18
- package/dist/config/knex/enhancements/20251115120000_fix_all_cross_db_issues_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251115120000_fix_all_cross_db_issues_v3_9_0.js +0 -47
- package/dist/config/knex/enhancements/20251115120000_fix_all_cross_db_issues_v3_9_0.js.map +0 -1
- package/dist/config/knex/enhancements/20251118000000_fix_native_db_test_issues_v3_9_1.d.ts +0 -20
- package/dist/config/knex/enhancements/20251118000000_fix_native_db_test_issues_v3_9_1.d.ts.map +0 -1
- package/dist/config/knex/enhancements/20251118000000_fix_native_db_test_issues_v3_9_1.js +0 -119
- package/dist/config/knex/enhancements/20251118000000_fix_native_db_test_issues_v3_9_1.js.map +0 -1
- package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts +0 -13
- package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js +0 -70
- package/dist/config/knex/upgrades/20251024010000_upgrade_v1_0_to_v1_1.js.map +0 -1
- package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts +0 -11
- package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js +0 -36
- package/dist/config/knex/upgrades/20251024020000_upgrade_v2_0_to_v2_1.js.map +0 -1
- package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts +0 -14
- package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js +0 -84
- package/dist/config/knex/upgrades/20251024030000_upgrade_v2_1_to_v3_0.js.map +0 -1
- package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts +0 -9
- package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js +0 -37
- package/dist/config/knex/upgrades/20251024040000_upgrade_v3_0_to_v3_2.js.map +0 -1
- package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts +0 -9
- package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js +0 -41
- package/dist/config/knex/upgrades/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +0 -1
- package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts +0 -9
- package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js +0 -36
- package/dist/config/knex/upgrades/20251024060000_upgrade_v3_4_to_v3_5.js.map +0 -1
- package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts +0 -10
- package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js +0 -28
- package/dist/config/knex/upgrades/20251024070000_upgrade_v3_5_to_v3_6.js.map +0 -1
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts +0 -49
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js +0 -974
- package/dist/config/knex/upgrades/20251104000000_add_multi_project_v3_7_0.js.map +0 -1
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts +0 -14
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js +0 -97
- package/dist/config/knex/upgrades/20251108000000_hotfix_v_tagged_constraints_project_id.js.map +0 -1
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts +0 -24
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js +0 -303
- package/dist/config/knex/upgrades/20251109000002_multi_project_cross_db_compat_v3_7_5.js.map +0 -1
- package/dist/config/knex/upgrades/20251111235959_preemptive_fix_cross_database_v3_9_0.d.ts +0 -19
- package/dist/config/knex/upgrades/20251111235959_preemptive_fix_cross_database_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251111235959_preemptive_fix_cross_database_v3_9_0.js +0 -196
- package/dist/config/knex/upgrades/20251111235959_preemptive_fix_cross_database_v3_9_0.js.map +0 -1
- package/dist/config/knex/upgrades/20251112000000_decision_intelligence_v3_9_0.d.ts +0 -22
- package/dist/config/knex/upgrades/20251112000000_decision_intelligence_v3_9_0.d.ts.map +0 -1
- package/dist/config/knex/upgrades/20251112000000_decision_intelligence_v3_9_0.js +0 -375
- package/dist/config/knex/upgrades/20251112000000_decision_intelligence_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251024010000_upgrade_v1_0_to_v1_1.d.ts +0 -16
- package/dist/database/migrations/20251024010000_upgrade_v1_0_to_v1_1.d.ts.map +0 -1
- package/dist/database/migrations/20251024010000_upgrade_v1_0_to_v1_1.js +0 -84
- package/dist/database/migrations/20251024010000_upgrade_v1_0_to_v1_1.js.map +0 -1
- package/dist/database/migrations/20251024020000_upgrade_v2_0_to_v2_1.d.ts +0 -14
- package/dist/database/migrations/20251024020000_upgrade_v2_0_to_v2_1.d.ts.map +0 -1
- package/dist/database/migrations/20251024020000_upgrade_v2_0_to_v2_1.js +0 -42
- package/dist/database/migrations/20251024020000_upgrade_v2_0_to_v2_1.js.map +0 -1
- package/dist/database/migrations/20251024030000_upgrade_v2_1_to_v3_0.d.ts +0 -17
- package/dist/database/migrations/20251024030000_upgrade_v2_1_to_v3_0.d.ts.map +0 -1
- package/dist/database/migrations/20251024030000_upgrade_v2_1_to_v3_0.js +0 -122
- package/dist/database/migrations/20251024030000_upgrade_v2_1_to_v3_0.js.map +0 -1
- package/dist/database/migrations/20251024040000_upgrade_v3_0_to_v3_2.d.ts +0 -12
- package/dist/database/migrations/20251024040000_upgrade_v3_0_to_v3_2.d.ts.map +0 -1
- package/dist/database/migrations/20251024040000_upgrade_v3_0_to_v3_2.js +0 -49
- package/dist/database/migrations/20251024040000_upgrade_v3_0_to_v3_2.js.map +0 -1
- package/dist/database/migrations/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts +0 -12
- package/dist/database/migrations/20251024050000_upgrade_v3_2_0_to_v3_2_2.d.ts.map +0 -1
- package/dist/database/migrations/20251024050000_upgrade_v3_2_0_to_v3_2_2.js +0 -53
- package/dist/database/migrations/20251024050000_upgrade_v3_2_0_to_v3_2_2.js.map +0 -1
- package/dist/database/migrations/20251024060000_upgrade_v3_4_to_v3_5.d.ts +0 -12
- package/dist/database/migrations/20251024060000_upgrade_v3_4_to_v3_5.d.ts.map +0 -1
- package/dist/database/migrations/20251024060000_upgrade_v3_4_to_v3_5.js +0 -44
- package/dist/database/migrations/20251024060000_upgrade_v3_4_to_v3_5.js.map +0 -1
- package/dist/database/migrations/20251024070000_upgrade_v3_5_to_v3_6.d.ts +0 -13
- package/dist/database/migrations/20251024070000_upgrade_v3_5_to_v3_6.d.ts.map +0 -1
- package/dist/database/migrations/20251024070000_upgrade_v3_5_to_v3_6.js +0 -33
- package/dist/database/migrations/20251024070000_upgrade_v3_5_to_v3_6.js.map +0 -1
- package/dist/database/migrations/20251025020452_create_master_tables_wrapper.d.ts +0 -17
- package/dist/database/migrations/20251025020452_create_master_tables_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025020452_create_master_tables_wrapper.js +0 -119
- package/dist/database/migrations/20251025020452_create_master_tables_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025021152_create_transaction_tables_wrapper.d.ts +0 -15
- package/dist/database/migrations/20251025021152_create_transaction_tables_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025021152_create_transaction_tables_wrapper.js +0 -282
- package/dist/database/migrations/20251025021152_create_transaction_tables_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025021351_create_indexes_wrapper.d.ts +0 -21
- package/dist/database/migrations/20251025021351_create_indexes_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025021351_create_indexes_wrapper.js +0 -83
- package/dist/database/migrations/20251025021351_create_indexes_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025021352_fix_mysql_index_syntax_wrapper.d.ts +0 -22
- package/dist/database/migrations/20251025021352_fix_mysql_index_syntax_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025021352_fix_mysql_index_syntax_wrapper.js +0 -94
- package/dist/database/migrations/20251025021352_fix_mysql_index_syntax_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025021416_seed_master_data_wrapper.d.ts +0 -19
- package/dist/database/migrations/20251025021416_seed_master_data_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025021416_seed_master_data_wrapper.js +0 -120
- package/dist/database/migrations/20251025021416_seed_master_data_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025070349_create_views_wrapper.d.ts +0 -14
- package/dist/database/migrations/20251025070349_create_views_wrapper.d.ts.map +0 -1
- package/dist/database/migrations/20251025070349_create_views_wrapper.js +0 -160
- package/dist/database/migrations/20251025070349_create_views_wrapper.js.map +0 -1
- package/dist/database/migrations/20251025081221_add_link_type_to_task_decision_links.d.ts +0 -9
- package/dist/database/migrations/20251025081221_add_link_type_to_task_decision_links.d.ts.map +0 -1
- package/dist/database/migrations/20251025081221_add_link_type_to_task_decision_links.js +0 -21
- package/dist/database/migrations/20251025081221_add_link_type_to_task_decision_links.js.map +0 -1
- package/dist/database/migrations/20251025082220_fix_task_dependencies_columns.d.ts +0 -13
- package/dist/database/migrations/20251025082220_fix_task_dependencies_columns.d.ts.map +0 -1
- package/dist/database/migrations/20251025082220_fix_task_dependencies_columns.js +0 -17
- package/dist/database/migrations/20251025082220_fix_task_dependencies_columns.js.map +0 -1
- package/dist/database/migrations/20251025090000_create_help_system_tables.d.ts +0 -27
- package/dist/database/migrations/20251025090000_create_help_system_tables.d.ts.map +0 -1
- package/dist/database/migrations/20251025090000_create_help_system_tables.js +0 -120
- package/dist/database/migrations/20251025090000_create_help_system_tables.js.map +0 -1
- package/dist/database/migrations/20251025090100_seed_help_categories_and_use_cases.d.ts +0 -18
- package/dist/database/migrations/20251025090100_seed_help_categories_and_use_cases.d.ts.map +0 -1
- package/dist/database/migrations/20251025090100_seed_help_categories_and_use_cases.js +0 -388
- package/dist/database/migrations/20251025090100_seed_help_categories_and_use_cases.js.map +0 -1
- package/dist/database/migrations/20251025100000_seed_help_metadata.d.ts +0 -20
- package/dist/database/migrations/20251025100000_seed_help_metadata.d.ts.map +0 -1
- package/dist/database/migrations/20251025100000_seed_help_metadata.js +0 -264
- package/dist/database/migrations/20251025100000_seed_help_metadata.js.map +0 -1
- package/dist/database/migrations/20251025100100_seed_remaining_use_cases.d.ts +0 -21
- package/dist/database/migrations/20251025100100_seed_remaining_use_cases.d.ts.map +0 -1
- package/dist/database/migrations/20251025100100_seed_remaining_use_cases.js +0 -281
- package/dist/database/migrations/20251025100100_seed_remaining_use_cases.js.map +0 -1
- package/dist/database/migrations/20251025120000_add_cascade_to_task_dependencies.d.ts +0 -13
- package/dist/database/migrations/20251025120000_add_cascade_to_task_dependencies.d.ts.map +0 -1
- package/dist/database/migrations/20251025120000_add_cascade_to_task_dependencies.js +0 -76
- package/dist/database/migrations/20251025120000_add_cascade_to_task_dependencies.js.map +0 -1
- package/dist/database/migrations/20251027000000_add_agent_reuse_system.d.ts +0 -17
- package/dist/database/migrations/20251027000000_add_agent_reuse_system.d.ts.map +0 -1
- package/dist/database/migrations/20251027000000_add_agent_reuse_system.js +0 -42
- package/dist/database/migrations/20251027000000_add_agent_reuse_system.js.map +0 -1
- package/dist/database/migrations/20251027010000_add_task_constraint_to_decision_context.d.ts +0 -10
- package/dist/database/migrations/20251027010000_add_task_constraint_to_decision_context.d.ts.map +0 -1
- package/dist/database/migrations/20251027010000_add_task_constraint_to_decision_context.js +0 -28
- package/dist/database/migrations/20251027010000_add_task_constraint_to_decision_context.js.map +0 -1
- package/dist/database/migrations/20251027020000_update_agent_reusability.d.ts +0 -21
- package/dist/database/migrations/20251027020000_update_agent_reusability.d.ts.map +0 -1
- package/dist/database/migrations/20251027020000_update_agent_reusability.js +0 -38
- package/dist/database/migrations/20251027020000_update_agent_reusability.js.map +0 -1
- package/dist/database/migrations/20251028000000_simplify_agent_system.d.ts +0 -26
- package/dist/database/migrations/20251028000000_simplify_agent_system.d.ts.map +0 -1
- package/dist/database/migrations/20251028000000_simplify_agent_system.js +0 -56
- package/dist/database/migrations/20251028000000_simplify_agent_system.js.map +0 -1
- package/dist/database/migrations/20251031000000_drop_orphaned_message_view.d.ts +0 -16
- package/dist/database/migrations/20251031000000_drop_orphaned_message_view.d.ts.map +0 -1
- package/dist/database/migrations/20251031000000_drop_orphaned_message_view.js +0 -52
- package/dist/database/migrations/20251031000000_drop_orphaned_message_view.js.map +0 -1
- package/dist/database/migrations/20251104000000_add_multi_project_v3_7_0.d.ts +0 -56
- package/dist/database/migrations/20251104000000_add_multi_project_v3_7_0.d.ts.map +0 -1
- package/dist/database/migrations/20251104000000_add_multi_project_v3_7_0.js +0 -701
- package/dist/database/migrations/20251104000000_add_multi_project_v3_7_0.js.map +0 -1
- package/dist/database/migrations/20251104000003_rename_constraints_created_by_to_agent_id.d.ts +0 -30
- package/dist/database/migrations/20251104000003_rename_constraints_created_by_to_agent_id.d.ts.map +0 -1
- package/dist/database/migrations/20251104000003_rename_constraints_created_by_to_agent_id.js +0 -180
- package/dist/database/migrations/20251104000003_rename_constraints_created_by_to_agent_id.js.map +0 -1
- package/dist/database/migrations/20251105000000_add_token_usage_table.d.ts +0 -19
- package/dist/database/migrations/20251105000000_add_token_usage_table.d.ts.map +0 -1
- package/dist/database/migrations/20251105000000_add_token_usage_table.js +0 -47
- package/dist/database/migrations/20251105000000_add_token_usage_table.js.map +0 -1
- package/dist/database/migrations/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts +0 -28
- package/dist/database/migrations/20251105000001_rename_decision_context_decided_by_to_agent_id.d.ts.map +0 -1
- package/dist/database/migrations/20251105000001_rename_decision_context_decided_by_to_agent_id.js +0 -123
- package/dist/database/migrations/20251105000001_rename_decision_context_decided_by_to_agent_id.js.map +0 -1
- package/dist/database/migrations/20251106000000_fix_master_tables_project_id_v3_7_3.d.ts +0 -36
- package/dist/database/migrations/20251106000000_fix_master_tables_project_id_v3_7_3.d.ts.map +0 -1
- package/dist/database/migrations/20251106000000_fix_master_tables_project_id_v3_7_3.js +0 -559
- package/dist/database/migrations/20251106000000_fix_master_tables_project_id_v3_7_3.js.map +0 -1
- package/dist/database/migrations/20251108000000_add_planning_layers_v3_8_0.d.ts +0 -26
- package/dist/database/migrations/20251108000000_add_planning_layers_v3_8_0.d.ts.map +0 -1
- package/dist/database/migrations/20251108000000_add_planning_layers_v3_8_0.js +0 -78
- package/dist/database/migrations/20251108000000_add_planning_layers_v3_8_0.js.map +0 -1
- package/dist/database/migrations/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts +0 -17
- package/dist/database/migrations/20251108000000_hotfix_v_tagged_constraints_project_id.d.ts.map +0 -1
- package/dist/database/migrations/20251108000000_hotfix_v_tagged_constraints_project_id.js +0 -78
- package/dist/database/migrations/20251108000000_hotfix_v_tagged_constraints_project_id.js.map +0 -1
- package/dist/database/migrations/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts +0 -24
- package/dist/database/migrations/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.d.ts.map +0 -1
- package/dist/database/migrations/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js +0 -63
- package/dist/database/migrations/20251109000000_fix_task_file_links_unique_constraint_v3_8_0.js.map +0 -1
- package/dist/database/migrations/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts +0 -27
- package/dist/database/migrations/20251109000002_multi_project_cross_db_compat_v3_7_5.d.ts.map +0 -1
- package/dist/database/migrations/20251109000002_multi_project_cross_db_compat_v3_7_5.js +0 -276
- package/dist/database/migrations/20251109000002_multi_project_cross_db_compat_v3_7_5.js.map +0 -1
- package/dist/database/migrations/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts +0 -27
- package/dist/database/migrations/20251109000003_token_usage_cross_db_compat_v3_7_5.d.ts.map +0 -1
- package/dist/database/migrations/20251109000003_token_usage_cross_db_compat_v3_7_5.js +0 -67
- package/dist/database/migrations/20251109000003_token_usage_cross_db_compat_v3_7_5.js.map +0 -1
- package/dist/database/migrations/20251109010000_tool_cleanup_v3_8_0.d.ts +0 -32
- package/dist/database/migrations/20251109010000_tool_cleanup_v3_8_0.d.ts.map +0 -1
- package/dist/database/migrations/20251109010000_tool_cleanup_v3_8_0.js +0 -352
- package/dist/database/migrations/20251109010000_tool_cleanup_v3_8_0.js.map +0 -1
- package/dist/database/migrations/20251109020000_fix_missing_help_actions_v3_8_0.d.ts +0 -35
- package/dist/database/migrations/20251109020000_fix_missing_help_actions_v3_8_0.d.ts.map +0 -1
- package/dist/database/migrations/20251109020000_fix_missing_help_actions_v3_8_0.js +0 -237
- package/dist/database/migrations/20251109020000_fix_missing_help_actions_v3_8_0.js.map +0 -1
- package/dist/database/migrations/20251111235959_preemptive_fix_cross_database_v3_9_0.d.ts +0 -22
- package/dist/database/migrations/20251111235959_preemptive_fix_cross_database_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251111235959_preemptive_fix_cross_database_v3_9_0.js +0 -190
- package/dist/database/migrations/20251111235959_preemptive_fix_cross_database_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251112000000_decision_intelligence_v3_9_0.d.ts +0 -32
- package/dist/database/migrations/20251112000000_decision_intelligence_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251112000000_decision_intelligence_v3_9_0.js +0 -342
- package/dist/database/migrations/20251112000000_decision_intelligence_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251112000001_fix_task_file_links_schema_v3_9_0.d.ts +0 -25
- package/dist/database/migrations/20251112000001_fix_task_file_links_schema_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251112000001_fix_task_file_links_schema_v3_9_0.js +0 -109
- package/dist/database/migrations/20251112000001_fix_task_file_links_schema_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251112000002_fix_task_pruned_files_schema_v3_9_0.d.ts +0 -24
- package/dist/database/migrations/20251112000002_fix_task_pruned_files_schema_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251112000002_fix_task_pruned_files_schema_v3_9_0.js +0 -111
- package/dist/database/migrations/20251112000002_fix_task_pruned_files_schema_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114000000_fix_v_tagged_decisions_numeric_support.d.ts +0 -24
- package/dist/database/migrations/20251114000000_fix_v_tagged_decisions_numeric_support.d.ts.map +0 -1
- package/dist/database/migrations/20251114000000_fix_v_tagged_decisions_numeric_support.js +0 -90
- package/dist/database/migrations/20251114000000_fix_v_tagged_decisions_numeric_support.js.map +0 -1
- package/dist/database/migrations/20251114120000_add_suggest_tool_to_help_system_v3_9_0.d.ts +0 -20
- package/dist/database/migrations/20251114120000_add_suggest_tool_to_help_system_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114120000_add_suggest_tool_to_help_system_v3_9_0.js +0 -275
- package/dist/database/migrations/20251114120000_add_suggest_tool_to_help_system_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114121000_add_suggest_tool_use_cases_v3_9_0.d.ts +0 -20
- package/dist/database/migrations/20251114121000_add_suggest_tool_use_cases_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114121000_add_suggest_tool_use_cases_v3_9_0.js +0 -246
- package/dist/database/migrations/20251114121000_add_suggest_tool_use_cases_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114130000_seed_builtin_policies_v3_9_0.d.ts +0 -23
- package/dist/database/migrations/20251114130000_seed_builtin_policies_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114130000_seed_builtin_policies_v3_9_0.js +0 -175
- package/dist/database/migrations/20251114130000_seed_builtin_policies_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114140000_add_policy_help_v3_9_0.d.ts +0 -21
- package/dist/database/migrations/20251114140000_add_policy_help_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114140000_add_policy_help_v3_9_0.js +0 -235
- package/dist/database/migrations/20251114140000_add_policy_help_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114141000_add_policy_use_cases_v3_9_0.d.ts +0 -21
- package/dist/database/migrations/20251114141000_add_policy_use_cases_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114141000_add_policy_use_cases_v3_9_0.js +0 -244
- package/dist/database/migrations/20251114141000_add_policy_use_cases_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251114150000_fix_policy_unique_constraint_v3_9_0.d.ts +0 -23
- package/dist/database/migrations/20251114150000_fix_policy_unique_constraint_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251114150000_fix_policy_unique_constraint_v3_9_0.js +0 -70
- package/dist/database/migrations/20251114150000_fix_policy_unique_constraint_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251115000000_fix_task_decision_links_unique_constraint.d.ts +0 -29
- package/dist/database/migrations/20251115000000_fix_task_decision_links_unique_constraint.d.ts.map +0 -1
- package/dist/database/migrations/20251115000000_fix_task_decision_links_unique_constraint.js +0 -135
- package/dist/database/migrations/20251115000000_fix_task_decision_links_unique_constraint.js.map +0 -1
- package/dist/database/migrations/20251115100000_fix_read_keyword_index_v3_9_0.d.ts +0 -23
- package/dist/database/migrations/20251115100000_fix_read_keyword_index_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251115100000_fix_read_keyword_index_v3_9_0.js +0 -42
- package/dist/database/migrations/20251115100000_fix_read_keyword_index_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251115110000_fix_cross_database_timestamps_v3_9_0.d.ts +0 -25
- package/dist/database/migrations/20251115110000_fix_cross_database_timestamps_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251115110000_fix_cross_database_timestamps_v3_9_0.js +0 -102
- package/dist/database/migrations/20251115110000_fix_cross_database_timestamps_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251115120000_fix_all_cross_db_issues_v3_9_0.d.ts +0 -25
- package/dist/database/migrations/20251115120000_fix_all_cross_db_issues_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251115120000_fix_all_cross_db_issues_v3_9_0.js +0 -55
- package/dist/database/migrations/20251115120000_fix_all_cross_db_issues_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251118000000_eliminate_views_v3_9_0.d.ts +0 -29
- package/dist/database/migrations/20251118000000_eliminate_views_v3_9_0.d.ts.map +0 -1
- package/dist/database/migrations/20251118000000_eliminate_views_v3_9_0.js +0 -62
- package/dist/database/migrations/20251118000000_eliminate_views_v3_9_0.js.map +0 -1
- package/dist/database/migrations/20251119000000_add_constraint_text_hash_v3_9_1.d.ts +0 -25
- package/dist/database/migrations/20251119000000_add_constraint_text_hash_v3_9_1.d.ts.map +0 -1
- package/dist/database/migrations/20251119000000_add_constraint_text_hash_v3_9_1.js +0 -100
- package/dist/database/migrations/20251119000000_add_constraint_text_hash_v3_9_1.js.map +0 -1
- package/dist/tests/database/migrations/idempotency.test.d.ts +0 -2
- package/dist/tests/database/migrations/idempotency.test.d.ts.map +0 -1
- package/dist/tests/database/migrations/idempotency.test.js +0 -331
- package/dist/tests/database/migrations/idempotency.test.js.map +0 -1
- package/dist/tests/database/migrations/upgrade-paths.test.d.ts +0 -2
- package/dist/tests/database/migrations/upgrade-paths.test.d.ts.map +0 -1
- package/dist/tests/database/migrations/upgrade-paths.test.js +0 -249
- package/dist/tests/database/migrations/upgrade-paths.test.js.map +0 -1
- package/dist/utils/activity-logging.d.ts +0 -114
- package/dist/utils/activity-logging.d.ts.map +0 -1
- package/dist/utils/activity-logging.js +0 -169
- package/dist/utils/activity-logging.js.map +0 -1
- package/docs/DECISION_TO_TASK_MIGRATION_GUIDE.md +0 -457
- package/docs/TASK_DEPENDENCIES.md +0 -748
- package/docs/TASK_LINKING.md +0 -909
- package/docs/TASK_MIGRATION.md +0 -701
- package/docs/TASK_SYSTEM.md +0 -1314
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Constraint scoring algorithm for Constraint Intelligence System
|
|
3
|
+
*
|
|
4
|
+
* Scores constraints based on:
|
|
5
|
+
* - Tag overlap (40 points max, 10 per matching tag)
|
|
6
|
+
* - Layer match (25 points)
|
|
7
|
+
* - Text similarity (20 points, Levenshtein distance)
|
|
8
|
+
* - Recency (10 points)
|
|
9
|
+
* - Priority (5 points)
|
|
10
|
+
*
|
|
11
|
+
* Total: 100 points max
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Calculate Levenshtein distance between two strings
|
|
15
|
+
* Used for text similarity scoring
|
|
16
|
+
*
|
|
17
|
+
* @param a - First string
|
|
18
|
+
* @param b - Second string
|
|
19
|
+
* @returns Edit distance between strings
|
|
20
|
+
*/
|
|
21
|
+
export function levenshteinDistance(a, b) {
|
|
22
|
+
// Guard against undefined/null values
|
|
23
|
+
if (!a || !b)
|
|
24
|
+
return Math.max(a?.length || 0, b?.length || 0);
|
|
25
|
+
const matrix = [];
|
|
26
|
+
for (let i = 0; i <= b.length; i++) {
|
|
27
|
+
matrix[i] = [i];
|
|
28
|
+
}
|
|
29
|
+
for (let j = 0; j <= a.length; j++) {
|
|
30
|
+
matrix[0][j] = j;
|
|
31
|
+
}
|
|
32
|
+
for (let i = 1; i <= b.length; i++) {
|
|
33
|
+
for (let j = 1; j <= a.length; j++) {
|
|
34
|
+
if (b.charAt(i - 1) === a.charAt(j - 1)) {
|
|
35
|
+
matrix[i][j] = matrix[i - 1][j - 1];
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, matrix[i][j - 1] + 1, matrix[i - 1][j] + 1);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return matrix[b.length][a.length];
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Calculate text similarity score (0-20 points)
|
|
46
|
+
* Based on Levenshtein distance normalized to text length
|
|
47
|
+
*
|
|
48
|
+
* @param text1 - First text to compare
|
|
49
|
+
* @param text2 - Second text to compare
|
|
50
|
+
* @returns Similarity score (0-20)
|
|
51
|
+
*/
|
|
52
|
+
function calculateTextSimilarity(text1, text2) {
|
|
53
|
+
// Guard against undefined/null values
|
|
54
|
+
if (!text1 || !text2)
|
|
55
|
+
return 0;
|
|
56
|
+
// Normalize texts for comparison (lowercase, trim)
|
|
57
|
+
const normalized1 = text1.toLowerCase().trim();
|
|
58
|
+
const normalized2 = text2.toLowerCase().trim();
|
|
59
|
+
// Exact match
|
|
60
|
+
if (normalized1 === normalized2)
|
|
61
|
+
return 20;
|
|
62
|
+
// Calculate Levenshtein distance
|
|
63
|
+
const distance = levenshteinDistance(normalized1, normalized2);
|
|
64
|
+
const maxLength = Math.max(normalized1.length, normalized2.length);
|
|
65
|
+
// Prevent division by zero
|
|
66
|
+
if (maxLength === 0)
|
|
67
|
+
return 0;
|
|
68
|
+
// Calculate similarity ratio (0-1)
|
|
69
|
+
const similarity = 1 - distance / maxLength;
|
|
70
|
+
// Scale to 0-20 points
|
|
71
|
+
return Math.floor(similarity * 20);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Calculate tag overlap score (0-40 points, 10 per tag, max 4)
|
|
75
|
+
*
|
|
76
|
+
* @param contextTags - Tags from the scoring context
|
|
77
|
+
* @param constraintTags - Tags from the constraint candidate
|
|
78
|
+
* @returns Tag overlap score (0-40)
|
|
79
|
+
*/
|
|
80
|
+
function calculateTagOverlap(contextTags, constraintTags) {
|
|
81
|
+
if (!contextTags || !constraintTags)
|
|
82
|
+
return 0;
|
|
83
|
+
const overlap = contextTags.filter(t => constraintTags.includes(t)).length;
|
|
84
|
+
return Math.min(overlap * 10, 40);
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Calculate layer match score (0 or 25 points)
|
|
88
|
+
*
|
|
89
|
+
* @param contextLayer - Layer from the scoring context
|
|
90
|
+
* @param constraintLayer - Layer from the constraint candidate
|
|
91
|
+
* @returns Layer match score (0 or 25)
|
|
92
|
+
*/
|
|
93
|
+
function calculateLayerMatch(contextLayer, constraintLayer) {
|
|
94
|
+
if (!contextLayer || !constraintLayer)
|
|
95
|
+
return 0;
|
|
96
|
+
return contextLayer === constraintLayer ? 25 : 0;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Calculate recency score (0-10 points)
|
|
100
|
+
* Constraints updated recently score higher
|
|
101
|
+
*
|
|
102
|
+
* Scoring tiers:
|
|
103
|
+
* - <= 30 days: 10 points
|
|
104
|
+
* - <= 90 days: 5 points
|
|
105
|
+
* - <= 180 days: 2 points
|
|
106
|
+
* - > 180 days: 0 points
|
|
107
|
+
*
|
|
108
|
+
* @param ts - Unix timestamp of constraint update
|
|
109
|
+
* @returns Recency score (0-10)
|
|
110
|
+
*/
|
|
111
|
+
export function calculateRecencyScore(ts) {
|
|
112
|
+
const now = Math.floor(Date.now() / 1000);
|
|
113
|
+
const ageSeconds = now - ts;
|
|
114
|
+
const ageDays = ageSeconds / 86400;
|
|
115
|
+
if (ageDays <= 30)
|
|
116
|
+
return 10;
|
|
117
|
+
if (ageDays <= 90)
|
|
118
|
+
return 5;
|
|
119
|
+
if (ageDays <= 180)
|
|
120
|
+
return 2;
|
|
121
|
+
return 0;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Calculate priority score (0-5 points)
|
|
125
|
+
*
|
|
126
|
+
* Priority mapping:
|
|
127
|
+
* - Critical (4): 5 points
|
|
128
|
+
* - High (3): 4 points
|
|
129
|
+
* - Medium (2): 3 points
|
|
130
|
+
* - Low (1): 2 points
|
|
131
|
+
*
|
|
132
|
+
* @param priority - Priority level (1-4)
|
|
133
|
+
* @returns Priority score (0-5)
|
|
134
|
+
*/
|
|
135
|
+
function calculatePriorityScore(priority) {
|
|
136
|
+
const scoreMap = {
|
|
137
|
+
4: 5, // Critical
|
|
138
|
+
3: 4, // High
|
|
139
|
+
2: 3, // Medium
|
|
140
|
+
1: 2, // Low
|
|
141
|
+
};
|
|
142
|
+
return scoreMap[priority] ?? 0;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Score a single constraint against context
|
|
146
|
+
*
|
|
147
|
+
* @param candidate - Constraint candidate to score
|
|
148
|
+
* @param context - Scoring context (text, tags, layer, priority)
|
|
149
|
+
* @returns Scored constraint with breakdown
|
|
150
|
+
*/
|
|
151
|
+
export function scoreConstraint(candidate, context) {
|
|
152
|
+
const tagOverlap = calculateTagOverlap(context.tags, candidate.tags);
|
|
153
|
+
const layerMatch = calculateLayerMatch(context.layer, candidate.layer);
|
|
154
|
+
const textSimilarity = calculateTextSimilarity(context.text, candidate.constraint_text);
|
|
155
|
+
const recency = calculateRecencyScore(candidate.ts);
|
|
156
|
+
const priority = calculatePriorityScore(candidate.priority);
|
|
157
|
+
const totalScore = tagOverlap + layerMatch + textSimilarity + recency + priority;
|
|
158
|
+
// Generate human-readable reason
|
|
159
|
+
const reasons = [];
|
|
160
|
+
if (tagOverlap >= 20)
|
|
161
|
+
reasons.push(`${tagOverlap / 10} matching tags`);
|
|
162
|
+
if (layerMatch > 0)
|
|
163
|
+
reasons.push('same layer');
|
|
164
|
+
if (textSimilarity >= 15)
|
|
165
|
+
reasons.push('similar constraint text');
|
|
166
|
+
if (recency >= 5)
|
|
167
|
+
reasons.push('recently updated');
|
|
168
|
+
if (priority >= 4)
|
|
169
|
+
reasons.push('high priority');
|
|
170
|
+
return {
|
|
171
|
+
id: candidate.id,
|
|
172
|
+
constraint_text: candidate.constraint_text,
|
|
173
|
+
category: candidate.category,
|
|
174
|
+
score: totalScore,
|
|
175
|
+
score_breakdown: {
|
|
176
|
+
tag_overlap: tagOverlap,
|
|
177
|
+
layer_match: layerMatch,
|
|
178
|
+
text_similarity: textSimilarity,
|
|
179
|
+
recency,
|
|
180
|
+
priority,
|
|
181
|
+
},
|
|
182
|
+
reason: reasons.length > 0 ? reasons.join(', ') : 'low similarity',
|
|
183
|
+
tags: candidate.tags,
|
|
184
|
+
layer: candidate.layer ?? undefined,
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Score multiple constraints against context
|
|
189
|
+
* Returns scored constraints sorted by score descending
|
|
190
|
+
*
|
|
191
|
+
* @param candidates - Array of constraint candidates
|
|
192
|
+
* @param context - Scoring context (text, tags, layer, priority)
|
|
193
|
+
* @returns Array of scored constraints, sorted by score descending
|
|
194
|
+
*/
|
|
195
|
+
export function scoreConstraints(candidates, context) {
|
|
196
|
+
const scored = candidates.map(candidate => scoreConstraint(candidate, context));
|
|
197
|
+
// Sort by score descending
|
|
198
|
+
return scored.sort((a, b) => b.score - a.score);
|
|
199
|
+
}
|
|
200
|
+
/**
|
|
201
|
+
* Filter scored constraints by minimum score threshold
|
|
202
|
+
*
|
|
203
|
+
* @param scored - Array of scored constraints
|
|
204
|
+
* @param minScore - Minimum score threshold (default: 30)
|
|
205
|
+
* @returns Filtered array of constraints meeting threshold
|
|
206
|
+
*/
|
|
207
|
+
export function filterByThreshold(scored, minScore = 30) {
|
|
208
|
+
return scored.filter(s => s.score >= minScore);
|
|
209
|
+
}
|
|
210
|
+
/**
|
|
211
|
+
* Limit number of constraint suggestions
|
|
212
|
+
*
|
|
213
|
+
* @param scored - Array of scored constraints
|
|
214
|
+
* @param limit - Maximum number to return (default: 5)
|
|
215
|
+
* @returns Limited array of constraints
|
|
216
|
+
*/
|
|
217
|
+
export function limitSuggestions(scored, limit = 5) {
|
|
218
|
+
return scored.slice(0, limit);
|
|
219
|
+
}
|
|
220
|
+
//# sourceMappingURL=constraint-scorer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constraint-scorer.js","sourceRoot":"","sources":["../../src/utils/constraint-scorer.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,15 +15,15 @@ import { getProjectContext } from './project-context.js';
|
|
|
15
15
|
export async function aggregateNumericDecisions(knex, keyPattern, aggregation, layer) {
|
|
16
16
|
const projectId = getProjectContext().getProjectId();
|
|
17
17
|
// Build base query
|
|
18
|
-
let query = knex('
|
|
19
|
-
.join('
|
|
20
|
-
.where('ck.
|
|
18
|
+
let query = knex('v4_decisions_numeric as dn')
|
|
19
|
+
.join('v4_context_keys as ck', 'dn.key_id', 'ck.id')
|
|
20
|
+
.where('ck.key_name', 'like', keyPattern)
|
|
21
21
|
.where('dn.status', 1) // Active decisions only
|
|
22
22
|
.where('dn.project_id', projectId); // Multi-project support (v3.7.0+)
|
|
23
23
|
// Add layer filter if provided
|
|
24
24
|
if (layer) {
|
|
25
25
|
query = query
|
|
26
|
-
.join('
|
|
26
|
+
.join('v4_layers as l', 'dn.layer_id', 'l.id')
|
|
27
27
|
.where('l.name', layer);
|
|
28
28
|
}
|
|
29
29
|
// Execute aggregation query (portable across all databases)
|
|
@@ -92,9 +92,9 @@ export async function timeSeriesAggregation(knex, keyPattern, bucket, startTs, e
|
|
|
92
92
|
month: 2592000, // Approximate 30 days
|
|
93
93
|
}[bucket];
|
|
94
94
|
// Query decisions in time range
|
|
95
|
-
const results = await knex('
|
|
96
|
-
.join('
|
|
97
|
-
.where('ck.
|
|
95
|
+
const results = await knex('v4_decisions_numeric as dn')
|
|
96
|
+
.join('v4_context_keys as ck', 'dn.key_id', 'ck.id')
|
|
97
|
+
.where('ck.key_name', 'like', keyPattern)
|
|
98
98
|
.where('dn.status', 1)
|
|
99
99
|
.where('dn.project_id', projectId) // Multi-project support (v3.7.0+)
|
|
100
100
|
.whereBetween('dn.updated_ts', [startTs, endTs])
|
|
@@ -136,9 +136,9 @@ export async function timeSeriesAggregation(knex, keyPattern, bucket, startTs, e
|
|
|
136
136
|
export async function calculatePercentiles(knex, keyPattern, percentiles) {
|
|
137
137
|
const projectId = getProjectContext().getProjectId();
|
|
138
138
|
// Fetch all values
|
|
139
|
-
const results = await knex('
|
|
140
|
-
.join('
|
|
141
|
-
.where('ck.
|
|
139
|
+
const results = await knex('v4_decisions_numeric as dn')
|
|
140
|
+
.join('v4_context_keys as ck', 'dn.key_id', 'ck.id')
|
|
141
|
+
.where('ck.key_name', 'like', keyPattern)
|
|
142
142
|
.where('dn.status', 1)
|
|
143
143
|
.where('dn.project_id', projectId) // Multi-project support (v3.7.0+)
|
|
144
144
|
.select('dn.value')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"db-aggregations.js","sourceRoot":"","sources":["../../src/utils/db-aggregations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAsBzD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAU,EACV,UAAkB,EAClB,WAA4B,EAC5B,KAAc;IAEd,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;IAErD,mBAAmB;IACnB,IAAI,KAAK,GAAG,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"db-aggregations.js","sourceRoot":"","sources":["../../src/utils/db-aggregations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAsBzD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,IAAU,EACV,UAAkB,EAClB,WAA4B,EAC5B,KAAc;IAEd,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;IAErD,mBAAmB;IACnB,IAAI,KAAK,GAAG,IAAI,CAAC,4BAA4B,CAAC;SAC3C,IAAI,CAAC,uBAAuB,EAAE,WAAW,EAAE,OAAO,CAAC;SACnD,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC;SACxC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAE,wBAAwB;SAC/C,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC,CAAE,kCAAkC;IAEzE,+BAA+B;IAC/B,IAAI,KAAK,EAAE,CAAC;QACV,KAAK,GAAG,KAAK;aACV,IAAI,CAAC,gBAAgB,EAAE,aAAa,EAAE,MAAM,CAAC;aAC7C,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,4DAA4D;IAC5D,MAAM,MAAM,GAAG,MAAM,KAAK;SACvB,MAAM,CACL,IAAI,CAAC,GAAG,CAAC,mBAAmB,CAAC,EAC7B,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,EACtC,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,EACtC,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,EACtC,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC,CACvC;SACA,KAAK,EAAE,CAAC;IAEX,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,WAAW;QACX,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,CAAC;QACjC,SAAS,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;QACvE,SAAS,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;QACvE,SAAS,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;QACvE,SAAS,EAAE,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;KACxE,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,SAAS,CACvB,IAAU,EACV,MAAc,EACd,YAAoB,IAAI;IAExB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IAEzC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,YAAY,EAAE,CAAC;QAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,cAAc,MAAM,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,yBAAyB;QACzB,OAAO,IAAI,CAAC,GAAG,CAAC,gBAAgB,MAAM,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAC7D,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,IAAU,EACV,UAAkB,EAClB,MAAyC,EACzC,OAAe,EACf,KAAa;IAEb,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;IAErD,mCAAmC;IACnC,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,KAAK;QACV,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,OAAO,EAAE,sBAAsB;KACvC,CAAC,MAAM,CAAC,CAAC;IAEV,gCAAgC;IAChC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC;SACrD,IAAI,CAAC,uBAAuB,EAAE,WAAW,EAAE,OAAO,CAAC;SACnD,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC;SACxC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACrB,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC,CAAE,kCAAkC;SACrE,YAAY,CAAC,eAAe,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;SAC/C,MAAM,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC;IAEvC,2CAA2C;IAC3C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE5C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,UAAU,CAAC;QACtE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC5B,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAED,oCAAoC;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;QAChE,SAAS,EAAE,QAAQ;QACnB,KAAK,EAAE,MAAM,CAAC,MAAM;QACpB,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QAC9B,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;QAC9B,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM;QAC5D,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;KAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,IAAU,EACV,UAAkB,EAClB,WAAqB;IAErB,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;IAErD,mBAAmB;IACnB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC;SACrD,IAAI,CAAC,uBAAuB,EAAE,WAAW,EAAE,OAAO,CAAC;SACnD,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,CAAC;SACxC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;SACrB,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC,CAAE,kCAAkC;SACrE,MAAM,CAAC,UAAU,CAAC;SAClB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAEzC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,wBAAwB;IACxB,MAAM,MAAM,GAA2B,EAAE,CAAC;IAE1C,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -17,7 +17,7 @@ export async function generateJsonExport(knex, options = {}) {
|
|
|
17
17
|
if (projectName) {
|
|
18
18
|
exportMode = 'single_project';
|
|
19
19
|
// Get project by name
|
|
20
|
-
const project = await knex('
|
|
20
|
+
const project = await knex('v4_projects')
|
|
21
21
|
.where({ name: projectName })
|
|
22
22
|
.first();
|
|
23
23
|
if (!project) {
|
|
@@ -37,7 +37,7 @@ export async function generateJsonExport(knex, options = {}) {
|
|
|
37
37
|
else {
|
|
38
38
|
exportMode = 'all_projects';
|
|
39
39
|
// Get all projects
|
|
40
|
-
const projects = await knex('
|
|
40
|
+
const projects = await knex('v4_projects').select('*');
|
|
41
41
|
projectIds = projects.map(p => p.id);
|
|
42
42
|
projectData = projects.map(p => ({
|
|
43
43
|
name: p.name,
|
|
@@ -128,154 +128,154 @@ async function exportMasterTables(knex, projectIds) {
|
|
|
128
128
|
};
|
|
129
129
|
// Get used agent IDs from all transaction tables
|
|
130
130
|
const usedAgentIds = new Set();
|
|
131
|
-
// From
|
|
132
|
-
const decisionAgents = await knex('
|
|
131
|
+
// From v4_decisions
|
|
132
|
+
const decisionAgents = await knex('v4_decisions')
|
|
133
133
|
.whereIn('project_id', projectIds)
|
|
134
134
|
.whereNotNull('agent_id')
|
|
135
135
|
.distinct('agent_id');
|
|
136
136
|
decisionAgents.forEach(row => usedAgentIds.add(row.agent_id));
|
|
137
|
-
// From
|
|
138
|
-
const fileChangeAgents = await knex('
|
|
137
|
+
// From v4_file_changes
|
|
138
|
+
const fileChangeAgents = await knex('v4_file_changes')
|
|
139
139
|
.whereIn('project_id', projectIds)
|
|
140
140
|
.distinct('agent_id');
|
|
141
141
|
fileChangeAgents.forEach(row => usedAgentIds.add(row.agent_id));
|
|
142
|
-
// From
|
|
143
|
-
const constraintAgents = await knex('
|
|
142
|
+
// From v4_constraints
|
|
143
|
+
const constraintAgents = await knex('v4_constraints')
|
|
144
144
|
.whereIn('project_id', projectIds)
|
|
145
145
|
.whereNotNull('agent_id')
|
|
146
146
|
.distinct('agent_id');
|
|
147
147
|
constraintAgents.forEach(row => usedAgentIds.add(row.agent_id));
|
|
148
|
-
// From
|
|
149
|
-
const taskAgents = await knex('
|
|
148
|
+
// From v4_tasks
|
|
149
|
+
const taskAgents = await knex('v4_tasks')
|
|
150
150
|
.whereIn('project_id', projectIds)
|
|
151
151
|
.whereNotNull('assigned_agent_id')
|
|
152
152
|
.distinct('assigned_agent_id as agent_id');
|
|
153
153
|
taskAgents.forEach(row => usedAgentIds.add(row.agent_id));
|
|
154
|
-
// From
|
|
155
|
-
const contextAgents = await knex('
|
|
154
|
+
// From v4_decision_context
|
|
155
|
+
const contextAgents = await knex('v4_decision_context')
|
|
156
156
|
.whereIn('project_id', projectIds)
|
|
157
157
|
.whereNotNull('agent_id')
|
|
158
158
|
.distinct('agent_id');
|
|
159
159
|
contextAgents.forEach(row => usedAgentIds.add(row.agent_id));
|
|
160
160
|
if (usedAgentIds.size > 0) {
|
|
161
|
-
masterTables.agents = await knex('
|
|
161
|
+
masterTables.agents = await knex('v4_agents')
|
|
162
162
|
.whereIn('id', Array.from(usedAgentIds))
|
|
163
163
|
.select('id', 'name', 'last_active_ts');
|
|
164
164
|
}
|
|
165
|
-
// Get used file IDs from
|
|
165
|
+
// Get used file IDs from v4_file_changes and v4_task_file_links
|
|
166
166
|
const usedFileIds = new Set();
|
|
167
|
-
const fileChanges = await knex('
|
|
167
|
+
const fileChanges = await knex('v4_file_changes')
|
|
168
168
|
.whereIn('project_id', projectIds)
|
|
169
169
|
.distinct('file_id');
|
|
170
170
|
fileChanges.forEach(row => usedFileIds.add(row.file_id));
|
|
171
|
-
const taskFiles = await knex('
|
|
171
|
+
const taskFiles = await knex('v4_task_file_links')
|
|
172
172
|
.whereIn('project_id', projectIds)
|
|
173
173
|
.distinct('file_id');
|
|
174
174
|
taskFiles.forEach(row => usedFileIds.add(row.file_id));
|
|
175
175
|
if (usedFileIds.size > 0) {
|
|
176
|
-
masterTables.files = await knex('
|
|
176
|
+
masterTables.files = await knex('v4_files')
|
|
177
177
|
.whereIn('id', Array.from(usedFileIds))
|
|
178
178
|
.select('id', 'project_id', 'path');
|
|
179
179
|
}
|
|
180
|
-
// Get used context key IDs from
|
|
180
|
+
// Get used context key IDs from v4_decisions
|
|
181
181
|
const usedKeyIds = new Set();
|
|
182
|
-
const decisions = await knex('
|
|
182
|
+
const decisions = await knex('v4_decisions')
|
|
183
183
|
.whereIn('project_id', projectIds)
|
|
184
184
|
.distinct('key_id');
|
|
185
185
|
decisions.forEach(row => usedKeyIds.add(row.key_id));
|
|
186
|
-
const decisionsNumeric = await knex('
|
|
186
|
+
const decisionsNumeric = await knex('v4_decisions_numeric')
|
|
187
187
|
.whereIn('project_id', projectIds)
|
|
188
188
|
.distinct('key_id');
|
|
189
189
|
decisionsNumeric.forEach(row => usedKeyIds.add(row.key_id));
|
|
190
|
-
const taskDecisionLinks = await knex('
|
|
190
|
+
const taskDecisionLinks = await knex('v4_task_decision_links')
|
|
191
191
|
.whereIn('project_id', projectIds)
|
|
192
192
|
.distinct('decision_key_id as key_id');
|
|
193
193
|
taskDecisionLinks.forEach(row => usedKeyIds.add(row.key_id));
|
|
194
194
|
if (usedKeyIds.size > 0) {
|
|
195
|
-
masterTables.context_keys = await knex('
|
|
195
|
+
masterTables.context_keys = await knex('v4_context_keys')
|
|
196
196
|
.whereIn('id', Array.from(usedKeyIds))
|
|
197
|
-
.select('id', 'key');
|
|
197
|
+
.select('id', 'key_name as key');
|
|
198
198
|
}
|
|
199
199
|
// Get used tag IDs from various tag tables
|
|
200
200
|
const usedTagIds = new Set();
|
|
201
|
-
// Join through parent table (
|
|
202
|
-
// Note:
|
|
203
|
-
const decisionTags = await knex('
|
|
204
|
-
.join('
|
|
201
|
+
// Join through parent table (v4_decisions) to filter by project_id
|
|
202
|
+
// Note: v4_decision_tags uses decision_key_id (references v4_context_keys.id)
|
|
203
|
+
const decisionTags = await knex('v4_decision_tags as dt')
|
|
204
|
+
.join('v4_decisions as d', 'dt.decision_key_id', 'd.key_id')
|
|
205
205
|
.whereIn('d.project_id', projectIds)
|
|
206
206
|
.distinct('dt.tag_id');
|
|
207
207
|
decisionTags.forEach(row => usedTagIds.add(row.tag_id));
|
|
208
|
-
// Join through parent table (
|
|
209
|
-
const constraintTags = await knex('
|
|
210
|
-
.join('
|
|
208
|
+
// Join through parent table (v4_constraints) to filter by project_id
|
|
209
|
+
const constraintTags = await knex('v4_constraint_tags as ct')
|
|
210
|
+
.join('v4_constraints as c', 'ct.constraint_id', 'c.id')
|
|
211
211
|
.whereIn('c.project_id', projectIds)
|
|
212
212
|
.distinct('ct.tag_id');
|
|
213
213
|
constraintTags.forEach(row => usedTagIds.add(row.tag_id));
|
|
214
|
-
// Join through parent table (
|
|
215
|
-
const taskTags = await knex('
|
|
216
|
-
.join('
|
|
214
|
+
// Join through parent table (v4_tasks) to filter by project_id
|
|
215
|
+
const taskTags = await knex('v4_task_tags as tt')
|
|
216
|
+
.join('v4_tasks as t', 'tt.task_id', 't.id')
|
|
217
217
|
.whereIn('t.project_id', projectIds)
|
|
218
218
|
.distinct('tt.tag_id');
|
|
219
219
|
taskTags.forEach(row => usedTagIds.add(row.tag_id));
|
|
220
220
|
if (usedTagIds.size > 0) {
|
|
221
|
-
masterTables.tags = await knex('
|
|
221
|
+
masterTables.tags = await knex('v4_tags')
|
|
222
222
|
.whereIn('id', Array.from(usedTagIds))
|
|
223
223
|
.select('id', 'project_id', 'name');
|
|
224
224
|
}
|
|
225
|
-
// Get used scope IDs from
|
|
225
|
+
// Get used scope IDs from v4_decision_scopes
|
|
226
226
|
const usedScopeIds = new Set();
|
|
227
|
-
// Join through parent table (
|
|
228
|
-
// Note:
|
|
229
|
-
const decisionScopes = await knex('
|
|
230
|
-
.join('
|
|
227
|
+
// Join through parent table (v4_decisions) to filter by project_id
|
|
228
|
+
// Note: v4_decision_scopes uses decision_key_id (references v4_context_keys.id)
|
|
229
|
+
const decisionScopes = await knex('v4_decision_scopes as ds')
|
|
230
|
+
.join('v4_decisions as d', 'ds.decision_key_id', 'd.key_id')
|
|
231
231
|
.whereIn('d.project_id', projectIds)
|
|
232
232
|
.distinct('ds.scope_id');
|
|
233
233
|
decisionScopes.forEach(row => usedScopeIds.add(row.scope_id));
|
|
234
234
|
if (usedScopeIds.size > 0) {
|
|
235
|
-
masterTables.scopes = await knex('
|
|
235
|
+
masterTables.scopes = await knex('v4_scopes')
|
|
236
236
|
.whereIn('id', Array.from(usedScopeIds))
|
|
237
237
|
.select('id', 'project_id', 'name');
|
|
238
238
|
}
|
|
239
|
-
// Get used category IDs from
|
|
239
|
+
// Get used category IDs from v4_constraints
|
|
240
240
|
const usedCategoryIds = new Set();
|
|
241
|
-
const constraints = await knex('
|
|
241
|
+
const constraints = await knex('v4_constraints')
|
|
242
242
|
.whereIn('project_id', projectIds)
|
|
243
243
|
.distinct('category_id');
|
|
244
244
|
constraints.forEach(row => usedCategoryIds.add(row.category_id));
|
|
245
245
|
if (usedCategoryIds.size > 0) {
|
|
246
|
-
masterTables.constraint_categories = await knex('
|
|
246
|
+
masterTables.constraint_categories = await knex('v4_constraint_categories')
|
|
247
247
|
.whereIn('id', Array.from(usedCategoryIds))
|
|
248
248
|
.select('id', 'name');
|
|
249
249
|
}
|
|
250
250
|
// Get used layer IDs from all tables that reference layers
|
|
251
251
|
const usedLayerIds = new Set();
|
|
252
|
-
const decisionLayers = await knex('
|
|
252
|
+
const decisionLayers = await knex('v4_decisions')
|
|
253
253
|
.whereIn('project_id', projectIds)
|
|
254
254
|
.whereNotNull('layer_id')
|
|
255
255
|
.distinct('layer_id');
|
|
256
256
|
decisionLayers.forEach(row => usedLayerIds.add(row.layer_id));
|
|
257
|
-
const fileChangeLayers = await knex('
|
|
257
|
+
const fileChangeLayers = await knex('v4_file_changes')
|
|
258
258
|
.whereIn('project_id', projectIds)
|
|
259
259
|
.whereNotNull('layer_id')
|
|
260
260
|
.distinct('layer_id');
|
|
261
261
|
fileChangeLayers.forEach(row => usedLayerIds.add(row.layer_id));
|
|
262
|
-
const constraintLayers = await knex('
|
|
262
|
+
const constraintLayers = await knex('v4_constraints')
|
|
263
263
|
.whereIn('project_id', projectIds)
|
|
264
264
|
.whereNotNull('layer_id')
|
|
265
265
|
.distinct('layer_id');
|
|
266
266
|
constraintLayers.forEach(row => usedLayerIds.add(row.layer_id));
|
|
267
|
-
const taskLayers = await knex('
|
|
267
|
+
const taskLayers = await knex('v4_tasks')
|
|
268
268
|
.whereIn('project_id', projectIds)
|
|
269
269
|
.whereNotNull('layer_id')
|
|
270
270
|
.distinct('layer_id');
|
|
271
271
|
taskLayers.forEach(row => usedLayerIds.add(row.layer_id));
|
|
272
272
|
if (usedLayerIds.size > 0) {
|
|
273
|
-
masterTables.layers = await knex('
|
|
273
|
+
masterTables.layers = await knex('v4_layers')
|
|
274
274
|
.whereIn('id', Array.from(usedLayerIds))
|
|
275
275
|
.select('id', 'name');
|
|
276
276
|
}
|
|
277
277
|
// Get all task statuses (these are static enum-like data)
|
|
278
|
-
masterTables.task_statuses = await knex('
|
|
278
|
+
masterTables.task_statuses = await knex('v4_task_statuses')
|
|
279
279
|
.select('id', 'name');
|
|
280
280
|
return masterTables;
|
|
281
281
|
}
|
|
@@ -302,60 +302,60 @@ async function exportTransactionTables(knex, projectIds) {
|
|
|
302
302
|
activity_log: [],
|
|
303
303
|
};
|
|
304
304
|
// Export each transaction table
|
|
305
|
-
transactionTables.decisions = await knex('
|
|
305
|
+
transactionTables.decisions = await knex('v4_decisions')
|
|
306
306
|
.whereIn('project_id', projectIds)
|
|
307
307
|
.select('*');
|
|
308
|
-
transactionTables.decisions_numeric = await knex('
|
|
308
|
+
transactionTables.decisions_numeric = await knex('v4_decisions_numeric')
|
|
309
309
|
.whereIn('project_id', projectIds)
|
|
310
310
|
.select('*');
|
|
311
|
-
transactionTables.decision_history = await knex('
|
|
311
|
+
transactionTables.decision_history = await knex('v4_decision_history')
|
|
312
312
|
.whereIn('project_id', projectIds)
|
|
313
313
|
.select('*');
|
|
314
314
|
// Junction tables - filter by joining through parent table
|
|
315
|
-
// Note: decision junction tables use decision_key_id (references
|
|
316
|
-
transactionTables.decision_tags = await knex('
|
|
317
|
-
.join('
|
|
315
|
+
// Note: decision junction tables use decision_key_id (references v4_context_keys.id)
|
|
316
|
+
transactionTables.decision_tags = await knex('v4_decision_tags as dt')
|
|
317
|
+
.join('v4_decisions as d', 'dt.decision_key_id', 'd.key_id')
|
|
318
318
|
.whereIn('d.project_id', projectIds)
|
|
319
319
|
.select('dt.*');
|
|
320
|
-
transactionTables.decision_scopes = await knex('
|
|
321
|
-
.join('
|
|
320
|
+
transactionTables.decision_scopes = await knex('v4_decision_scopes as ds')
|
|
321
|
+
.join('v4_decisions as d', 'ds.decision_key_id', 'd.key_id')
|
|
322
322
|
.whereIn('d.project_id', projectIds)
|
|
323
323
|
.select('ds.*');
|
|
324
|
-
transactionTables.decision_context = await knex('
|
|
324
|
+
transactionTables.decision_context = await knex('v4_decision_context')
|
|
325
325
|
.whereIn('project_id', projectIds)
|
|
326
326
|
.select('*');
|
|
327
|
-
transactionTables.file_changes = await knex('
|
|
327
|
+
transactionTables.file_changes = await knex('v4_file_changes')
|
|
328
328
|
.whereIn('project_id', projectIds)
|
|
329
329
|
.select('*');
|
|
330
|
-
transactionTables.constraints = await knex('
|
|
330
|
+
transactionTables.constraints = await knex('v4_constraints')
|
|
331
331
|
.whereIn('project_id', projectIds)
|
|
332
332
|
.select('*');
|
|
333
333
|
// Junction table - filter by joining through parent table
|
|
334
|
-
transactionTables.constraint_tags = await knex('
|
|
335
|
-
.join('
|
|
334
|
+
transactionTables.constraint_tags = await knex('v4_constraint_tags as ct')
|
|
335
|
+
.join('v4_constraints as c', 'ct.constraint_id', 'c.id')
|
|
336
336
|
.whereIn('c.project_id', projectIds)
|
|
337
337
|
.select('ct.*');
|
|
338
|
-
transactionTables.tasks = await knex('
|
|
338
|
+
transactionTables.tasks = await knex('v4_tasks')
|
|
339
339
|
.whereIn('project_id', projectIds)
|
|
340
340
|
.select('*');
|
|
341
|
-
transactionTables.task_details = await knex('
|
|
341
|
+
transactionTables.task_details = await knex('v4_task_details')
|
|
342
342
|
.whereIn('project_id', projectIds)
|
|
343
343
|
.select('*');
|
|
344
344
|
// Junction table - filter by joining through parent table
|
|
345
|
-
transactionTables.task_tags = await knex('
|
|
346
|
-
.join('
|
|
345
|
+
transactionTables.task_tags = await knex('v4_task_tags as tt')
|
|
346
|
+
.join('v4_tasks as t', 'tt.task_id', 't.id')
|
|
347
347
|
.whereIn('t.project_id', projectIds)
|
|
348
348
|
.select('tt.*');
|
|
349
|
-
transactionTables.task_file_links = await knex('
|
|
349
|
+
transactionTables.task_file_links = await knex('v4_task_file_links')
|
|
350
350
|
.whereIn('project_id', projectIds)
|
|
351
351
|
.select('*');
|
|
352
|
-
transactionTables.task_decision_links = await knex('
|
|
352
|
+
transactionTables.task_decision_links = await knex('v4_task_decision_links')
|
|
353
353
|
.whereIn('project_id', projectIds)
|
|
354
354
|
.select('*');
|
|
355
|
-
transactionTables.task_dependencies = await knex('
|
|
355
|
+
transactionTables.task_dependencies = await knex('v4_task_dependencies')
|
|
356
356
|
.whereIn('project_id', projectIds)
|
|
357
357
|
.select('*');
|
|
358
|
-
transactionTables.activity_log = await knex('
|
|
358
|
+
transactionTables.activity_log = await knex('v4_activity_log')
|
|
359
359
|
.whereIn('project_id', projectIds)
|
|
360
360
|
.select('*');
|
|
361
361
|
return transactionTables;
|