sqlew 3.5.3 → 3.6.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 +247 -1772
- package/README.md +70 -304
- package/assets/config.example.toml +97 -0
- package/dist/adapters/index.d.ts +11 -0
- package/dist/adapters/index.d.ts.map +1 -0
- package/dist/adapters/index.js +21 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/mysql-adapter.d.ts +31 -0
- package/dist/adapters/mysql-adapter.d.ts.map +1 -0
- package/dist/adapters/mysql-adapter.js +63 -0
- package/dist/adapters/mysql-adapter.js.map +1 -0
- package/dist/adapters/postgresql-adapter.d.ts +31 -0
- package/dist/adapters/postgresql-adapter.d.ts.map +1 -0
- package/dist/adapters/postgresql-adapter.js +63 -0
- package/dist/adapters/postgresql-adapter.js.map +1 -0
- package/dist/adapters/sqlite-adapter.d.ts +37 -0
- package/dist/adapters/sqlite-adapter.d.ts.map +1 -0
- package/dist/adapters/sqlite-adapter.js +129 -0
- package/dist/adapters/sqlite-adapter.js.map +1 -0
- package/dist/adapters/types.d.ts +33 -0
- package/dist/adapters/types.d.ts.map +1 -0
- package/dist/adapters/types.js +2 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/cli.js +55 -54
- package/dist/cli.js.map +1 -1
- package/dist/config/example-generator.d.ts +11 -0
- package/dist/config/example-generator.d.ts.map +1 -0
- package/dist/config/example-generator.js +48 -0
- package/dist/config/example-generator.js.map +1 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +4 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/config/types.d.ts +9 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/database.d.ts +44 -122
- package/dist/database.d.ts.map +1 -1
- package/dist/database.js +145 -416
- package/dist/database.js.map +1 -1
- package/dist/index.js +215 -185
- package/dist/index.js.map +1 -1
- package/dist/knexfile.d.ts +6 -0
- package/dist/knexfile.d.ts.map +1 -0
- package/dist/knexfile.js +85 -0
- package/dist/knexfile.js.map +1 -0
- package/dist/migrations/add-help-system-tables.d.ts +35 -0
- package/dist/migrations/add-help-system-tables.d.ts.map +1 -0
- package/dist/migrations/add-help-system-tables.js +206 -0
- package/dist/migrations/add-help-system-tables.js.map +1 -0
- package/dist/migrations/add-token-tracking.d.ts +28 -0
- package/dist/migrations/add-token-tracking.d.ts.map +1 -0
- package/dist/migrations/add-token-tracking.js +108 -0
- package/dist/migrations/add-token-tracking.js.map +1 -0
- package/dist/migrations/index.d.ts +25 -12
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +147 -20
- package/dist/migrations/index.js.map +1 -1
- package/dist/migrations/knex/20251025020452_create_master_tables.d.ts +4 -0
- package/dist/migrations/knex/20251025020452_create_master_tables.d.ts.map +1 -0
- package/dist/migrations/knex/20251025020452_create_master_tables.js +65 -0
- package/dist/migrations/knex/20251025020452_create_master_tables.js.map +1 -0
- package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts +4 -0
- package/dist/migrations/knex/20251025021152_create_transaction_tables.d.ts.map +1 -0
- package/dist/migrations/knex/20251025021152_create_transaction_tables.js +235 -0
- package/dist/migrations/knex/20251025021152_create_transaction_tables.js.map +1 -0
- package/dist/migrations/knex/20251025021351_create_indexes.d.ts +4 -0
- package/dist/migrations/knex/20251025021351_create_indexes.d.ts.map +1 -0
- package/dist/migrations/knex/20251025021351_create_indexes.js +62 -0
- package/dist/migrations/knex/20251025021351_create_indexes.js.map +1 -0
- package/dist/migrations/knex/20251025021416_seed_master_data.d.ts +4 -0
- package/dist/migrations/knex/20251025021416_seed_master_data.d.ts.map +1 -0
- package/dist/migrations/knex/20251025021416_seed_master_data.js +58 -0
- package/dist/migrations/knex/20251025021416_seed_master_data.js.map +1 -0
- package/dist/migrations/knex/20251025070349_create_views.d.ts +4 -0
- package/dist/migrations/knex/20251025070349_create_views.d.ts.map +1 -0
- package/dist/migrations/knex/20251025070349_create_views.js +143 -0
- package/dist/migrations/knex/20251025070349_create_views.js.map +1 -0
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts +4 -0
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.d.ts.map +1 -0
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js +15 -0
- package/dist/migrations/knex/20251025081221_add_link_type_to_task_decision_links.js.map +1 -0
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts +8 -0
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.d.ts.map +1 -0
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js +12 -0
- package/dist/migrations/knex/20251025082220_fix_task_dependencies_columns.js.map +1 -0
- package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts +19 -0
- package/dist/migrations/knex/20251025090000_create_help_system_tables.d.ts.map +1 -0
- package/dist/migrations/knex/20251025090000_create_help_system_tables.js +115 -0
- package/dist/migrations/knex/20251025090000_create_help_system_tables.js.map +1 -0
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts +13 -0
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.d.ts.map +1 -0
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js +377 -0
- package/dist/migrations/knex/20251025090100_seed_help_categories_and_use_cases.js.map +1 -0
- package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts +15 -0
- package/dist/migrations/knex/20251025100000_seed_help_metadata.d.ts.map +1 -0
- package/dist/migrations/knex/20251025100000_seed_help_metadata.js +253 -0
- package/dist/migrations/knex/20251025100000_seed_help_metadata.js.map +1 -0
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts +16 -0
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.d.ts.map +1 -0
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js +276 -0
- package/dist/migrations/knex/20251025100100_seed_remaining_use_cases.js.map +1 -0
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts +8 -0
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.d.ts.map +1 -0
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js +64 -0
- package/dist/migrations/knex/20251025120000_add_cascade_to_task_dependencies.js.map +1 -0
- package/dist/migrations/seed-help-data.d.ts +48 -0
- package/dist/migrations/seed-help-data.d.ts.map +1 -0
- package/dist/migrations/seed-help-data.js +1466 -0
- package/dist/migrations/seed-help-data.js.map +1 -0
- package/dist/migrations/seed-tool-metadata.d.ts +24 -0
- package/dist/migrations/seed-tool-metadata.d.ts.map +1 -0
- package/dist/migrations/seed-tool-metadata.js +392 -0
- package/dist/migrations/seed-tool-metadata.js.map +1 -0
- package/dist/migrations/v3.6.0-help-system-refactor.d.ts +46 -0
- package/dist/migrations/v3.6.0-help-system-refactor.d.ts.map +1 -0
- package/dist/migrations/v3.6.0-help-system-refactor.js +223 -0
- package/dist/migrations/v3.6.0-help-system-refactor.js.map +1 -0
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +2 -0
- package/dist/schema.js.map +1 -1
- package/dist/tests/git-aware-completion.test.js +89 -70
- package/dist/tests/git-aware-completion.test.js.map +1 -1
- package/dist/tests/help-system.test.d.ts +23 -0
- package/dist/tests/help-system.test.d.ts.map +1 -0
- package/dist/tests/help-system.test.js +374 -0
- package/dist/tests/help-system.test.js.map +1 -0
- package/dist/tests/tasks.auto-pruning-decision-link.test.js +92 -78
- package/dist/tests/tasks.auto-pruning-decision-link.test.js.map +1 -1
- package/dist/tests/tasks.auto-pruning-partial.test.js +106 -95
- package/dist/tests/tasks.auto-pruning-partial.test.js.map +1 -1
- package/dist/tests/tasks.auto-pruning-persistence.test.js +115 -97
- package/dist/tests/tasks.auto-pruning-persistence.test.js.map +1 -1
- package/dist/tests/tasks.auto-pruning-safety.test.js +124 -103
- package/dist/tests/tasks.auto-pruning-safety.test.js.map +1 -1
- package/dist/tests/tasks.dependencies.test.js +338 -307
- package/dist/tests/tasks.dependencies.test.js.map +1 -1
- package/dist/tests/tasks.link-file-backward-compat.test.js +116 -104
- package/dist/tests/tasks.link-file-backward-compat.test.js.map +1 -1
- package/dist/tests/tasks.watch-files-action.test.js +122 -101
- package/dist/tests/tasks.watch-files-action.test.js.map +1 -1
- package/dist/tests/tasks.watch-files-parameter.test.js +105 -94
- package/dist/tests/tasks.watch-files-parameter.test.js.map +1 -1
- package/dist/tests/two-step-git-completion.test.js +176 -133
- package/dist/tests/two-step-git-completion.test.js.map +1 -1
- package/dist/tests/vcs-staging.test.js +1 -1
- package/dist/tests/vcs-staging.test.js.map +1 -1
- package/dist/tools/config.d.ts +9 -6
- package/dist/tools/config.d.ts.map +1 -1
- package/dist/tools/config.js +16 -14
- package/dist/tools/config.js.map +1 -1
- package/dist/tools/constraints.d.ts +10 -7
- package/dist/tools/constraints.d.ts.map +1 -1
- package/dist/tools/constraints.js +66 -48
- package/dist/tools/constraints.js.map +1 -1
- package/dist/tools/context.d.ts +36 -33
- package/dist/tools/context.d.ts.map +1 -1
- package/dist/tools/context.js +374 -330
- package/dist/tools/context.js.map +1 -1
- package/dist/tools/files.d.ts +12 -9
- package/dist/tools/files.d.ts.map +1 -1
- package/dist/tools/files.js +173 -95
- package/dist/tools/files.js.map +1 -1
- package/dist/tools/help-queries.d.ts +130 -0
- package/dist/tools/help-queries.d.ts.map +1 -0
- package/dist/tools/help-queries.js +393 -0
- package/dist/tools/help-queries.js.map +1 -0
- package/dist/tools/messaging.d.ts +14 -11
- package/dist/tools/messaging.d.ts.map +1 -1
- package/dist/tools/messaging.js +217 -133
- package/dist/tools/messaging.js.map +1 -1
- package/dist/tools/tasks.d.ts +18 -16
- package/dist/tools/tasks.d.ts.map +1 -1
- package/dist/tools/tasks.js +513 -439
- package/dist/tools/tasks.js.map +1 -1
- package/dist/tools/utils.d.ts +14 -11
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +86 -121
- package/dist/tools/utils.js.map +1 -1
- package/dist/utils/activity-logging.d.ts +114 -0
- package/dist/utils/activity-logging.d.ts.map +1 -0
- package/dist/utils/activity-logging.js +162 -0
- package/dist/utils/activity-logging.js.map +1 -0
- package/dist/utils/batch.d.ts +2 -2
- package/dist/utils/batch.d.ts.map +1 -1
- package/dist/utils/batch.js +8 -8
- package/dist/utils/batch.js.map +1 -1
- package/dist/utils/cleanup.d.ts +21 -13
- package/dist/utils/cleanup.d.ts.map +1 -1
- package/dist/utils/cleanup.js +31 -24
- package/dist/utils/cleanup.js.map +1 -1
- package/dist/utils/debug-logger.d.ts +44 -0
- package/dist/utils/debug-logger.d.ts.map +1 -0
- package/dist/utils/debug-logger.js +116 -0
- package/dist/utils/debug-logger.js.map +1 -0
- package/dist/utils/help-tracking.d.ts +55 -0
- package/dist/utils/help-tracking.d.ts.map +1 -0
- package/dist/utils/help-tracking.js +88 -0
- package/dist/utils/help-tracking.js.map +1 -0
- package/dist/utils/retention.d.ts +7 -7
- package/dist/utils/retention.d.ts.map +1 -1
- package/dist/utils/retention.js +12 -12
- package/dist/utils/retention.js.map +1 -1
- package/dist/utils/task-stale-detection.d.ts +15 -13
- package/dist/utils/task-stale-detection.d.ts.map +1 -1
- package/dist/utils/task-stale-detection.js +100 -302
- package/dist/utils/task-stale-detection.js.map +1 -1
- package/dist/utils/token-estimation.d.ts +72 -0
- package/dist/utils/token-estimation.d.ts.map +1 -0
- package/dist/utils/token-estimation.js +71 -0
- package/dist/utils/token-estimation.js.map +1 -0
- package/dist/utils/token-logging.d.ts +48 -0
- package/dist/utils/token-logging.d.ts.map +1 -0
- package/dist/utils/token-logging.js +112 -0
- package/dist/utils/token-logging.js.map +1 -0
- package/dist/utils/view-queries.d.ts +34 -0
- package/dist/utils/view-queries.d.ts.map +1 -0
- package/dist/utils/view-queries.js +192 -0
- package/dist/utils/view-queries.js.map +1 -0
- package/dist/watcher/file-watcher.d.ts.map +1 -1
- package/dist/watcher/file-watcher.js +25 -11
- package/dist/watcher/file-watcher.js.map +1 -1
- package/docs/BEST_PRACTICES.md +56 -448
- package/docs/MIGRATION_v3.6.0.md +170 -0
- package/docs/SHARED_CONCEPTS.md +63 -208
- package/docs/TASK_OVERVIEW.md +2 -2
- package/docs/TOOL_SELECTION.md +41 -248
- package/package.json +16 -4
|
@@ -2,11 +2,10 @@
|
|
|
2
2
|
* Unit tests for Task watch_files action (v3.4.1)
|
|
3
3
|
* Tests the new watch_files action: watch, unwatch, list
|
|
4
4
|
*/
|
|
5
|
-
import { describe, it, beforeEach } from 'node:test';
|
|
6
|
-
import assert from 'node:assert/strict';
|
|
7
|
-
import Database from 'better-sqlite3';
|
|
8
|
-
import { initializeSchema } from '../schema.js';
|
|
5
|
+
import { describe, it, beforeEach, afterEach } from 'node:test';
|
|
6
|
+
import * as assert from 'node:assert/strict';
|
|
9
7
|
import { getOrCreateAgent, getOrCreateFile } from '../database.js';
|
|
8
|
+
import { SQLiteAdapter } from '../adapters/sqlite-adapter.js';
|
|
10
9
|
/**
|
|
11
10
|
* Test database instance
|
|
12
11
|
*/
|
|
@@ -14,41 +13,51 @@ let testDb;
|
|
|
14
13
|
/**
|
|
15
14
|
* Create an in-memory test database
|
|
16
15
|
*/
|
|
17
|
-
function createTestDatabase() {
|
|
18
|
-
const
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
async function createTestDatabase() {
|
|
17
|
+
const adapter = new SQLiteAdapter();
|
|
18
|
+
await adapter.connect({
|
|
19
|
+
client: 'better-sqlite3',
|
|
20
|
+
connection: { filename: ':memory:' },
|
|
21
|
+
useNullAsDefault: true,
|
|
22
|
+
});
|
|
23
|
+
// Run migrations to set up schema
|
|
24
|
+
const knex = adapter.getKnex();
|
|
25
|
+
await knex.migrate.latest();
|
|
26
|
+
return adapter;
|
|
22
27
|
}
|
|
23
28
|
/**
|
|
24
29
|
* Helper: Create a test task
|
|
25
30
|
*/
|
|
26
|
-
function createTestTask(db, title) {
|
|
27
|
-
const agentId = getOrCreateAgent(db, 'test-agent');
|
|
31
|
+
async function createTestTask(db, title) {
|
|
32
|
+
const agentId = await getOrCreateAgent(db, 'test-agent');
|
|
28
33
|
const statusId = 1; // todo
|
|
29
|
-
const
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
+
const knex = db.getKnex();
|
|
35
|
+
const [id] = await knex('t_tasks').insert({
|
|
36
|
+
title,
|
|
37
|
+
status_id: statusId,
|
|
38
|
+
priority: 2,
|
|
39
|
+
created_by_agent_id: agentId,
|
|
40
|
+
assigned_agent_id: agentId,
|
|
41
|
+
});
|
|
42
|
+
return id;
|
|
34
43
|
}
|
|
35
44
|
/**
|
|
36
45
|
* Inline implementation of watchFiles action for testing
|
|
37
46
|
*/
|
|
38
|
-
function watchFilesAction(db, params) {
|
|
47
|
+
async function watchFilesAction(db, params) {
|
|
39
48
|
if (!params.task_id) {
|
|
40
49
|
throw new Error('Parameter "task_id" is required');
|
|
41
50
|
}
|
|
42
51
|
if (!params.action) {
|
|
43
52
|
throw new Error('Parameter "action" is required (watch, unwatch, or list)');
|
|
44
53
|
}
|
|
54
|
+
const knex = db.getKnex();
|
|
45
55
|
// Check if task exists
|
|
46
|
-
const taskData =
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
`).get(params.task_id);
|
|
56
|
+
const taskData = await knex('t_tasks as t')
|
|
57
|
+
.join('m_task_statuses as s', 't.status_id', 's.id')
|
|
58
|
+
.where('t.id', params.task_id)
|
|
59
|
+
.select('t.id', 't.title', 's.name as status')
|
|
60
|
+
.first();
|
|
52
61
|
if (!taskData) {
|
|
53
62
|
throw new Error(`Task with id ${params.task_id} not found`);
|
|
54
63
|
}
|
|
@@ -56,16 +65,24 @@ function watchFilesAction(db, params) {
|
|
|
56
65
|
if (!params.file_paths || params.file_paths.length === 0) {
|
|
57
66
|
throw new Error('Parameter "file_paths" is required for watch action');
|
|
58
67
|
}
|
|
59
|
-
const insertFileLinkStmt = db.prepare(`
|
|
60
|
-
INSERT OR IGNORE INTO t_task_file_links (task_id, file_id)
|
|
61
|
-
VALUES (?, ?)
|
|
62
|
-
`);
|
|
63
68
|
const addedFiles = [];
|
|
64
69
|
for (const filePath of params.file_paths) {
|
|
65
|
-
const fileId = getOrCreateFile(db, filePath);
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
70
|
+
const fileId = await getOrCreateFile(db, filePath);
|
|
71
|
+
// Try to insert, check if row was actually inserted
|
|
72
|
+
const rowsBefore = await knex('t_task_file_links')
|
|
73
|
+
.where({ task_id: params.task_id, file_id: fileId })
|
|
74
|
+
.count('* as count')
|
|
75
|
+
.first();
|
|
76
|
+
await knex('t_task_file_links')
|
|
77
|
+
.insert({ task_id: params.task_id, file_id: fileId })
|
|
78
|
+
.onConflict(['task_id', 'file_id'])
|
|
79
|
+
.ignore();
|
|
80
|
+
const rowsAfter = await knex('t_task_file_links')
|
|
81
|
+
.where({ task_id: params.task_id, file_id: fileId })
|
|
82
|
+
.count('* as count')
|
|
83
|
+
.first();
|
|
84
|
+
// Check if row was actually inserted
|
|
85
|
+
if (rowsAfter && rowsBefore && rowsAfter.count > rowsBefore.count) {
|
|
69
86
|
addedFiles.push(filePath);
|
|
70
87
|
}
|
|
71
88
|
}
|
|
@@ -82,15 +99,16 @@ function watchFilesAction(db, params) {
|
|
|
82
99
|
if (!params.file_paths || params.file_paths.length === 0) {
|
|
83
100
|
throw new Error('Parameter "file_paths" is required for unwatch action');
|
|
84
101
|
}
|
|
85
|
-
const deleteFileLinkStmt = db.prepare(`
|
|
86
|
-
DELETE FROM t_task_file_links
|
|
87
|
-
WHERE task_id = ? AND file_id = (SELECT id FROM m_files WHERE path = ?)
|
|
88
|
-
`);
|
|
89
102
|
const removedFiles = [];
|
|
90
103
|
for (const filePath of params.file_paths) {
|
|
91
|
-
const
|
|
92
|
-
|
|
93
|
-
|
|
104
|
+
const deletedCount = await knex('t_task_file_links')
|
|
105
|
+
.whereIn('file_id', function () {
|
|
106
|
+
this.select('id').from('m_files').where('path', filePath);
|
|
107
|
+
})
|
|
108
|
+
.andWhere('task_id', params.task_id)
|
|
109
|
+
.delete();
|
|
110
|
+
// Check if row was actually deleted
|
|
111
|
+
if (deletedCount > 0) {
|
|
94
112
|
removedFiles.push(filePath);
|
|
95
113
|
}
|
|
96
114
|
}
|
|
@@ -104,13 +122,11 @@ function watchFilesAction(db, params) {
|
|
|
104
122
|
};
|
|
105
123
|
}
|
|
106
124
|
else if (params.action === 'list') {
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
`);
|
|
113
|
-
const files = filesStmt.all(params.task_id).map((row) => row.path);
|
|
125
|
+
const files = await knex('t_task_file_links as tfl')
|
|
126
|
+
.join('m_files as f', 'tfl.file_id', 'f.id')
|
|
127
|
+
.where('tfl.task_id', params.task_id)
|
|
128
|
+
.select('f.path')
|
|
129
|
+
.then(rows => rows.map((row) => row.path));
|
|
114
130
|
return {
|
|
115
131
|
success: true,
|
|
116
132
|
task_id: params.task_id,
|
|
@@ -125,12 +141,17 @@ function watchFilesAction(db, params) {
|
|
|
125
141
|
}
|
|
126
142
|
}
|
|
127
143
|
describe('Task watch_files action tests', () => {
|
|
128
|
-
beforeEach(() => {
|
|
129
|
-
testDb = createTestDatabase();
|
|
144
|
+
beforeEach(async () => {
|
|
145
|
+
testDb = await createTestDatabase();
|
|
146
|
+
});
|
|
147
|
+
afterEach(async () => {
|
|
148
|
+
if (testDb) {
|
|
149
|
+
await testDb.disconnect();
|
|
150
|
+
}
|
|
130
151
|
});
|
|
131
|
-
it('should list watched files for task with no files', () => {
|
|
132
|
-
const taskId = createTestTask(testDb, 'Task without files');
|
|
133
|
-
const result = watchFilesAction(testDb, {
|
|
152
|
+
it('should list watched files for task with no files', async () => {
|
|
153
|
+
const taskId = await createTestTask(testDb, 'Task without files');
|
|
154
|
+
const result = await watchFilesAction(testDb, {
|
|
134
155
|
task_id: taskId,
|
|
135
156
|
action: 'list'
|
|
136
157
|
});
|
|
@@ -139,9 +160,9 @@ describe('Task watch_files action tests', () => {
|
|
|
139
160
|
assert.strictEqual(result.files_count, 0);
|
|
140
161
|
assert.deepStrictEqual(result.files, []);
|
|
141
162
|
});
|
|
142
|
-
it('should watch files for a task', () => {
|
|
143
|
-
const taskId = createTestTask(testDb, 'Task to watch files');
|
|
144
|
-
const result = watchFilesAction(testDb, {
|
|
163
|
+
it('should watch files for a task', async () => {
|
|
164
|
+
const taskId = await createTestTask(testDb, 'Task to watch files');
|
|
165
|
+
const result = await watchFilesAction(testDb, {
|
|
145
166
|
task_id: taskId,
|
|
146
167
|
action: 'watch',
|
|
147
168
|
file_paths: ['src/index.ts', 'src/database.ts']
|
|
@@ -151,16 +172,16 @@ describe('Task watch_files action tests', () => {
|
|
|
151
172
|
assert.strictEqual(result.files_added, 2);
|
|
152
173
|
assert.deepStrictEqual(result.files, ['src/index.ts', 'src/database.ts']);
|
|
153
174
|
});
|
|
154
|
-
it('should list watched files after watching', () => {
|
|
155
|
-
const taskId = createTestTask(testDb, 'Task with watched files');
|
|
175
|
+
it('should list watched files after watching', async () => {
|
|
176
|
+
const taskId = await createTestTask(testDb, 'Task with watched files');
|
|
156
177
|
// Watch files
|
|
157
|
-
watchFilesAction(testDb, {
|
|
178
|
+
await watchFilesAction(testDb, {
|
|
158
179
|
task_id: taskId,
|
|
159
180
|
action: 'watch',
|
|
160
181
|
file_paths: ['src/index.ts', 'src/database.ts', 'src/schema.ts']
|
|
161
182
|
});
|
|
162
183
|
// List files
|
|
163
|
-
const result = watchFilesAction(testDb, {
|
|
184
|
+
const result = await watchFilesAction(testDb, {
|
|
164
185
|
task_id: taskId,
|
|
165
186
|
action: 'list'
|
|
166
187
|
});
|
|
@@ -172,39 +193,39 @@ describe('Task watch_files action tests', () => {
|
|
|
172
193
|
assert.ok(result.files.includes('src/database.ts'));
|
|
173
194
|
assert.ok(result.files.includes('src/schema.ts'));
|
|
174
195
|
});
|
|
175
|
-
it('should handle watching duplicate files (idempotent)', () => {
|
|
176
|
-
const taskId = createTestTask(testDb, 'Task for idempotent test');
|
|
196
|
+
it('should handle watching duplicate files (idempotent)', async () => {
|
|
197
|
+
const taskId = await createTestTask(testDb, 'Task for idempotent test');
|
|
177
198
|
// Watch files first time
|
|
178
|
-
const result1 = watchFilesAction(testDb, {
|
|
199
|
+
const result1 = await watchFilesAction(testDb, {
|
|
179
200
|
task_id: taskId,
|
|
180
201
|
action: 'watch',
|
|
181
202
|
file_paths: ['src/index.ts']
|
|
182
203
|
});
|
|
183
204
|
assert.strictEqual(result1.files_added, 1);
|
|
184
205
|
// Watch same file again
|
|
185
|
-
const result2 = watchFilesAction(testDb, {
|
|
206
|
+
const result2 = await watchFilesAction(testDb, {
|
|
186
207
|
task_id: taskId,
|
|
187
208
|
action: 'watch',
|
|
188
209
|
file_paths: ['src/index.ts']
|
|
189
210
|
});
|
|
190
211
|
assert.strictEqual(result2.files_added, 0, 'Should not add duplicate file');
|
|
191
212
|
// Verify only one link exists
|
|
192
|
-
const listResult = watchFilesAction(testDb, {
|
|
213
|
+
const listResult = await watchFilesAction(testDb, {
|
|
193
214
|
task_id: taskId,
|
|
194
215
|
action: 'list'
|
|
195
216
|
});
|
|
196
217
|
assert.strictEqual(listResult.files_count, 1);
|
|
197
218
|
});
|
|
198
|
-
it('should unwatch files from a task', () => {
|
|
199
|
-
const taskId = createTestTask(testDb, 'Task for unwatch test');
|
|
219
|
+
it('should unwatch files from a task', async () => {
|
|
220
|
+
const taskId = await createTestTask(testDb, 'Task for unwatch test');
|
|
200
221
|
// Watch files
|
|
201
|
-
watchFilesAction(testDb, {
|
|
222
|
+
await watchFilesAction(testDb, {
|
|
202
223
|
task_id: taskId,
|
|
203
224
|
action: 'watch',
|
|
204
225
|
file_paths: ['src/index.ts', 'src/database.ts', 'src/schema.ts']
|
|
205
226
|
});
|
|
206
227
|
// Unwatch one file
|
|
207
|
-
const result = watchFilesAction(testDb, {
|
|
228
|
+
const result = await watchFilesAction(testDb, {
|
|
208
229
|
task_id: taskId,
|
|
209
230
|
action: 'unwatch',
|
|
210
231
|
file_paths: ['src/database.ts']
|
|
@@ -214,7 +235,7 @@ describe('Task watch_files action tests', () => {
|
|
|
214
235
|
assert.strictEqual(result.files_removed, 1);
|
|
215
236
|
assert.deepStrictEqual(result.files, ['src/database.ts']);
|
|
216
237
|
// Verify remaining files
|
|
217
|
-
const listResult = watchFilesAction(testDb, {
|
|
238
|
+
const listResult = await watchFilesAction(testDb, {
|
|
218
239
|
task_id: taskId,
|
|
219
240
|
action: 'list'
|
|
220
241
|
});
|
|
@@ -223,23 +244,23 @@ describe('Task watch_files action tests', () => {
|
|
|
223
244
|
assert.ok(listResult.files.includes('src/schema.ts'));
|
|
224
245
|
assert.ok(!listResult.files.includes('src/database.ts'));
|
|
225
246
|
});
|
|
226
|
-
it('should unwatch multiple files at once', () => {
|
|
227
|
-
const taskId = createTestTask(testDb, 'Task for batch unwatch');
|
|
247
|
+
it('should unwatch multiple files at once', async () => {
|
|
248
|
+
const taskId = await createTestTask(testDb, 'Task for batch unwatch');
|
|
228
249
|
// Watch files
|
|
229
|
-
watchFilesAction(testDb, {
|
|
250
|
+
await watchFilesAction(testDb, {
|
|
230
251
|
task_id: taskId,
|
|
231
252
|
action: 'watch',
|
|
232
253
|
file_paths: ['src/index.ts', 'src/database.ts', 'src/schema.ts', 'src/types.ts']
|
|
233
254
|
});
|
|
234
255
|
// Unwatch multiple files
|
|
235
|
-
const result = watchFilesAction(testDb, {
|
|
256
|
+
const result = await watchFilesAction(testDb, {
|
|
236
257
|
task_id: taskId,
|
|
237
258
|
action: 'unwatch',
|
|
238
259
|
file_paths: ['src/database.ts', 'src/types.ts']
|
|
239
260
|
});
|
|
240
261
|
assert.strictEqual(result.files_removed, 2);
|
|
241
262
|
// Verify remaining files
|
|
242
|
-
const listResult = watchFilesAction(testDb, {
|
|
263
|
+
const listResult = await watchFilesAction(testDb, {
|
|
243
264
|
task_id: taskId,
|
|
244
265
|
action: 'list'
|
|
245
266
|
});
|
|
@@ -247,16 +268,16 @@ describe('Task watch_files action tests', () => {
|
|
|
247
268
|
assert.ok(listResult.files.includes('src/index.ts'));
|
|
248
269
|
assert.ok(listResult.files.includes('src/schema.ts'));
|
|
249
270
|
});
|
|
250
|
-
it('should handle unwatching non-existent file gracefully', () => {
|
|
251
|
-
const taskId = createTestTask(testDb, 'Task for non-existent unwatch');
|
|
271
|
+
it('should handle unwatching non-existent file gracefully', async () => {
|
|
272
|
+
const taskId = await createTestTask(testDb, 'Task for non-existent unwatch');
|
|
252
273
|
// Watch one file
|
|
253
|
-
watchFilesAction(testDb, {
|
|
274
|
+
await watchFilesAction(testDb, {
|
|
254
275
|
task_id: taskId,
|
|
255
276
|
action: 'watch',
|
|
256
277
|
file_paths: ['src/index.ts']
|
|
257
278
|
});
|
|
258
279
|
// Try to unwatch file that was never watched
|
|
259
|
-
const result = watchFilesAction(testDb, {
|
|
280
|
+
const result = await watchFilesAction(testDb, {
|
|
260
281
|
task_id: taskId,
|
|
261
282
|
action: 'unwatch',
|
|
262
283
|
file_paths: ['src/non-existent.ts']
|
|
@@ -264,72 +285,72 @@ describe('Task watch_files action tests', () => {
|
|
|
264
285
|
assert.ok(result.success);
|
|
265
286
|
assert.strictEqual(result.files_removed, 0, 'Should remove 0 files');
|
|
266
287
|
});
|
|
267
|
-
it('should throw error for invalid task_id', () => {
|
|
268
|
-
assert.
|
|
269
|
-
watchFilesAction(testDb, {
|
|
288
|
+
it('should throw error for invalid task_id', async () => {
|
|
289
|
+
await assert.rejects(async () => {
|
|
290
|
+
await watchFilesAction(testDb, {
|
|
270
291
|
task_id: 999,
|
|
271
292
|
action: 'list'
|
|
272
293
|
});
|
|
273
294
|
}, /Task with id 999 not found/);
|
|
274
295
|
});
|
|
275
|
-
it('should throw error when watch action missing file_paths', () => {
|
|
276
|
-
const taskId = createTestTask(testDb, 'Task for error test');
|
|
277
|
-
assert.
|
|
278
|
-
watchFilesAction(testDb, {
|
|
296
|
+
it('should throw error when watch action missing file_paths', async () => {
|
|
297
|
+
const taskId = await createTestTask(testDb, 'Task for error test');
|
|
298
|
+
await assert.rejects(async () => {
|
|
299
|
+
await watchFilesAction(testDb, {
|
|
279
300
|
task_id: taskId,
|
|
280
301
|
action: 'watch'
|
|
281
302
|
});
|
|
282
303
|
}, /Parameter "file_paths" is required for watch action/);
|
|
283
304
|
});
|
|
284
|
-
it('should throw error when unwatch action missing file_paths', () => {
|
|
285
|
-
const taskId = createTestTask(testDb, 'Task for error test');
|
|
286
|
-
assert.
|
|
287
|
-
watchFilesAction(testDb, {
|
|
305
|
+
it('should throw error when unwatch action missing file_paths', async () => {
|
|
306
|
+
const taskId = await createTestTask(testDb, 'Task for error test');
|
|
307
|
+
await assert.rejects(async () => {
|
|
308
|
+
await watchFilesAction(testDb, {
|
|
288
309
|
task_id: taskId,
|
|
289
310
|
action: 'unwatch'
|
|
290
311
|
});
|
|
291
312
|
}, /Parameter "file_paths" is required for unwatch action/);
|
|
292
313
|
});
|
|
293
|
-
it('should handle empty file_paths array for watch', () => {
|
|
294
|
-
const taskId = createTestTask(testDb, 'Task for empty array test');
|
|
295
|
-
assert.
|
|
296
|
-
watchFilesAction(testDb, {
|
|
314
|
+
it('should handle empty file_paths array for watch', async () => {
|
|
315
|
+
const taskId = await createTestTask(testDb, 'Task for empty array test');
|
|
316
|
+
await assert.rejects(async () => {
|
|
317
|
+
await watchFilesAction(testDb, {
|
|
297
318
|
task_id: taskId,
|
|
298
319
|
action: 'watch',
|
|
299
320
|
file_paths: []
|
|
300
321
|
});
|
|
301
322
|
}, /Parameter "file_paths" is required for watch action/);
|
|
302
323
|
});
|
|
303
|
-
it('should watch then unwatch all files', () => {
|
|
304
|
-
const taskId = createTestTask(testDb, 'Task for full cycle test');
|
|
324
|
+
it('should watch then unwatch all files', async () => {
|
|
325
|
+
const taskId = await createTestTask(testDb, 'Task for full cycle test');
|
|
305
326
|
// Watch files
|
|
306
|
-
watchFilesAction(testDb, {
|
|
327
|
+
await watchFilesAction(testDb, {
|
|
307
328
|
task_id: taskId,
|
|
308
329
|
action: 'watch',
|
|
309
330
|
file_paths: ['src/index.ts', 'src/database.ts']
|
|
310
331
|
});
|
|
311
332
|
// Verify watched
|
|
312
|
-
const listResult1 = watchFilesAction(testDb, {
|
|
333
|
+
const listResult1 = await watchFilesAction(testDb, {
|
|
313
334
|
task_id: taskId,
|
|
314
335
|
action: 'list'
|
|
315
336
|
});
|
|
316
337
|
assert.strictEqual(listResult1.files_count, 2);
|
|
317
338
|
// Unwatch all
|
|
318
|
-
watchFilesAction(testDb, {
|
|
339
|
+
await watchFilesAction(testDb, {
|
|
319
340
|
task_id: taskId,
|
|
320
341
|
action: 'unwatch',
|
|
321
342
|
file_paths: ['src/index.ts', 'src/database.ts']
|
|
322
343
|
});
|
|
323
344
|
// Verify empty
|
|
324
|
-
const listResult2 = watchFilesAction(testDb, {
|
|
345
|
+
const listResult2 = await watchFilesAction(testDb, {
|
|
325
346
|
task_id: taskId,
|
|
326
347
|
action: 'list'
|
|
327
348
|
});
|
|
328
349
|
assert.strictEqual(listResult2.files_count, 0);
|
|
329
350
|
});
|
|
330
|
-
it('should handle various file path formats', () => {
|
|
331
|
-
const taskId = createTestTask(testDb, 'Task for path formats');
|
|
332
|
-
const result = watchFilesAction(testDb, {
|
|
351
|
+
it('should handle various file path formats', async () => {
|
|
352
|
+
const taskId = await createTestTask(testDb, 'Task for path formats');
|
|
353
|
+
const result = await watchFilesAction(testDb, {
|
|
333
354
|
task_id: taskId,
|
|
334
355
|
action: 'watch',
|
|
335
356
|
file_paths: [
|
|
@@ -340,7 +361,7 @@ describe('Task watch_files action tests', () => {
|
|
|
340
361
|
]
|
|
341
362
|
});
|
|
342
363
|
assert.strictEqual(result.files_added, 4);
|
|
343
|
-
const listResult = watchFilesAction(testDb, {
|
|
364
|
+
const listResult = await watchFilesAction(testDb, {
|
|
344
365
|
task_id: taskId,
|
|
345
366
|
action: 'list'
|
|
346
367
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tasks.watch-files-action.test.js","sourceRoot":"","sources":["../../src/tests/tasks.watch-files-action.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tasks.watch-files-action.test.js","sourceRoot":"","sources":["../../src/tests/tasks.watch-files-action.test.ts"],"names":[],"mappings":"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"}
|