sqlew 4.1.2 → 4.3.1

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.
Files changed (232) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/README.md +268 -409
  3. package/assets/claude-md-snippets/plan-mode-integration.md +36 -10
  4. package/assets/config.example.toml +120 -282
  5. package/assets/sample-skills/sqlew-decision-format/SKILL.md +73 -0
  6. package/dist/cli/hooks/check-completion.d.ts.map +1 -1
  7. package/dist/cli/hooks/check-completion.js +90 -2
  8. package/dist/cli/hooks/check-completion.js.map +1 -1
  9. package/dist/cli/hooks/init-hooks.d.ts.map +1 -1
  10. package/dist/cli/hooks/init-hooks.js +97 -5
  11. package/dist/cli/hooks/init-hooks.js.map +1 -1
  12. package/dist/cli/hooks/on-enter-plan.d.ts +22 -0
  13. package/dist/cli/hooks/on-enter-plan.d.ts.map +1 -0
  14. package/dist/cli/hooks/on-enter-plan.js +51 -0
  15. package/dist/cli/hooks/on-enter-plan.js.map +1 -0
  16. package/dist/cli/hooks/on-exit-plan.d.ts +20 -0
  17. package/dist/cli/hooks/on-exit-plan.d.ts.map +1 -0
  18. package/dist/cli/hooks/on-exit-plan.js +66 -0
  19. package/dist/cli/hooks/on-exit-plan.js.map +1 -0
  20. package/dist/cli/hooks/on-stop.d.ts +19 -0
  21. package/dist/cli/hooks/on-stop.d.ts.map +1 -0
  22. package/dist/cli/hooks/on-stop.js +152 -0
  23. package/dist/cli/hooks/on-stop.js.map +1 -0
  24. package/dist/cli/hooks/on-subagent-stop.d.ts +20 -0
  25. package/dist/cli/hooks/on-subagent-stop.d.ts.map +1 -0
  26. package/dist/cli/hooks/on-subagent-stop.js +94 -0
  27. package/dist/cli/hooks/on-subagent-stop.js.map +1 -0
  28. package/dist/cli/hooks/plan-pattern-extractor.d.ts +87 -0
  29. package/dist/cli/hooks/plan-pattern-extractor.d.ts.map +1 -0
  30. package/dist/cli/hooks/plan-pattern-extractor.js +218 -0
  31. package/dist/cli/hooks/plan-pattern-extractor.js.map +1 -0
  32. package/dist/cli/hooks/plan-processor.d.ts +43 -0
  33. package/dist/cli/hooks/plan-processor.d.ts.map +1 -0
  34. package/dist/cli/hooks/plan-processor.js +115 -0
  35. package/dist/cli/hooks/plan-processor.js.map +1 -0
  36. package/dist/cli/hooks/plan-toml-parser.d.ts +42 -0
  37. package/dist/cli/hooks/plan-toml-parser.d.ts.map +1 -0
  38. package/dist/cli/hooks/plan-toml-parser.js +178 -0
  39. package/dist/cli/hooks/plan-toml-parser.js.map +1 -0
  40. package/dist/cli/hooks/save.d.ts +7 -9
  41. package/dist/cli/hooks/save.d.ts.map +1 -1
  42. package/dist/cli/hooks/save.js +50 -25
  43. package/dist/cli/hooks/save.js.map +1 -1
  44. package/dist/cli/hooks/stdin-parser.d.ts +66 -2
  45. package/dist/cli/hooks/stdin-parser.d.ts.map +1 -1
  46. package/dist/cli/hooks/stdin-parser.js +57 -2
  47. package/dist/cli/hooks/stdin-parser.js.map +1 -1
  48. package/dist/cli/hooks/suggest.d.ts +8 -4
  49. package/dist/cli/hooks/suggest.d.ts.map +1 -1
  50. package/dist/cli/hooks/suggest.js +21 -123
  51. package/dist/cli/hooks/suggest.js.map +1 -1
  52. package/dist/cli/hooks/track-plan.d.ts +8 -1
  53. package/dist/cli/hooks/track-plan.d.ts.map +1 -1
  54. package/dist/cli/hooks/track-plan.js +64 -66
  55. package/dist/cli/hooks/track-plan.js.map +1 -1
  56. package/dist/cli.d.ts.map +1 -1
  57. package/dist/cli.js +107 -6
  58. package/dist/cli.js.map +1 -1
  59. package/dist/config/global-config.d.ts +90 -0
  60. package/dist/config/global-config.d.ts.map +1 -1
  61. package/dist/config/global-config.js +86 -1
  62. package/dist/config/global-config.js.map +1 -1
  63. package/dist/database/initialization/init.js +3 -3
  64. package/dist/database/initialization/init.js.map +1 -1
  65. package/dist/database/migrations/v4/20260102204000_v4_fix_decision_set_example.d.ts +15 -0
  66. package/dist/database/migrations/v4/20260102204000_v4_fix_decision_set_example.d.ts.map +1 -0
  67. package/dist/database/migrations/v4/20260102204000_v4_fix_decision_set_example.js +74 -0
  68. package/dist/database/migrations/v4/20260102204000_v4_fix_decision_set_example.js.map +1 -0
  69. package/dist/index.js +8 -4
  70. package/dist/index.js.map +1 -1
  71. package/dist/init-skills.d.ts +12 -3
  72. package/dist/init-skills.d.ts.map +1 -1
  73. package/dist/init-skills.js +96 -24
  74. package/dist/init-skills.js.map +1 -1
  75. package/dist/knexfile.d.ts.map +1 -1
  76. package/dist/knexfile.js +16 -12
  77. package/dist/knexfile.js.map +1 -1
  78. package/dist/server/setup.js +5 -5
  79. package/dist/server/setup.js.map +1 -1
  80. package/dist/server/tool-handlers.d.ts.map +1 -1
  81. package/dist/server/tool-handlers.js +7 -1
  82. package/dist/server/tool-handlers.js.map +1 -1
  83. package/dist/server/tool-registry.js +1 -1
  84. package/dist/server/tool-registry.js.map +1 -1
  85. package/dist/tests/feature/decision/truncate.test.d.ts +8 -0
  86. package/dist/tests/feature/decision/truncate.test.d.ts.map +1 -0
  87. package/dist/tests/feature/decision/truncate.test.js +192 -0
  88. package/dist/tests/feature/decision/truncate.test.js.map +1 -0
  89. package/dist/tests/unit/config/plan-toml-cache.test.d.ts +9 -0
  90. package/dist/tests/unit/config/plan-toml-cache.test.d.ts.map +1 -0
  91. package/dist/tests/unit/config/plan-toml-cache.test.js +230 -0
  92. package/dist/tests/unit/config/plan-toml-cache.test.js.map +1 -0
  93. package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts +10 -0
  94. package/dist/tests/unit/hooks/plan-toml-parser.test.d.ts.map +1 -0
  95. package/dist/tests/unit/hooks/plan-toml-parser.test.js +316 -0
  96. package/dist/tests/unit/hooks/plan-toml-parser.test.js.map +1 -0
  97. package/dist/tools/constraints/actions/activate.d.ts +46 -0
  98. package/dist/tools/constraints/actions/activate.d.ts.map +1 -0
  99. package/dist/tools/constraints/actions/activate.js +105 -0
  100. package/dist/tools/constraints/actions/activate.js.map +1 -0
  101. package/dist/tools/constraints/actions/add.d.ts.map +1 -1
  102. package/dist/tools/constraints/actions/add.js +30 -13
  103. package/dist/tools/constraints/actions/add.js.map +1 -1
  104. package/dist/tools/constraints/actions/deactivate.d.ts.map +1 -1
  105. package/dist/tools/constraints/actions/deactivate.js +7 -4
  106. package/dist/tools/constraints/actions/deactivate.js.map +1 -1
  107. package/dist/tools/constraints/actions/get.d.ts.map +1 -1
  108. package/dist/tools/constraints/actions/get.js +10 -7
  109. package/dist/tools/constraints/actions/get.js.map +1 -1
  110. package/dist/tools/constraints/actions/suggest-pending.d.ts +41 -0
  111. package/dist/tools/constraints/actions/suggest-pending.d.ts.map +1 -0
  112. package/dist/tools/constraints/actions/suggest-pending.js +71 -0
  113. package/dist/tools/constraints/actions/suggest-pending.js.map +1 -0
  114. package/dist/tools/constraints/help/example.d.ts.map +1 -1
  115. package/dist/tools/constraints/help/example.js +65 -1
  116. package/dist/tools/constraints/help/example.js.map +1 -1
  117. package/dist/tools/constraints/help/help.d.ts.map +1 -1
  118. package/dist/tools/constraints/help/help.js +10 -5
  119. package/dist/tools/constraints/help/help.js.map +1 -1
  120. package/dist/tools/constraints/index.d.ts +2 -0
  121. package/dist/tools/constraints/index.d.ts.map +1 -1
  122. package/dist/tools/constraints/index.js +2 -0
  123. package/dist/tools/constraints/index.js.map +1 -1
  124. package/dist/tools/context/actions/add-context.d.ts.map +1 -1
  125. package/dist/tools/context/actions/add-context.js +13 -6
  126. package/dist/tools/context/actions/add-context.js.map +1 -1
  127. package/dist/tools/context/actions/has-updates.d.ts.map +1 -1
  128. package/dist/tools/context/actions/has-updates.js +0 -4
  129. package/dist/tools/context/actions/has-updates.js.map +1 -1
  130. package/dist/tools/context/actions/list-contexts.d.ts.map +1 -1
  131. package/dist/tools/context/actions/list-contexts.js +12 -7
  132. package/dist/tools/context/actions/list-contexts.js.map +1 -1
  133. package/dist/tools/context/actions/list.d.ts.map +1 -1
  134. package/dist/tools/context/actions/list.js +8 -0
  135. package/dist/tools/context/actions/list.js.map +1 -1
  136. package/dist/tools/context/actions/search-advanced.d.ts.map +1 -1
  137. package/dist/tools/context/actions/search-advanced.js +41 -27
  138. package/dist/tools/context/actions/search-advanced.js.map +1 -1
  139. package/dist/tools/context/actions/search-layer.d.ts.map +1 -1
  140. package/dist/tools/context/actions/search-layer.js +8 -0
  141. package/dist/tools/context/actions/search-layer.js.map +1 -1
  142. package/dist/tools/context/actions/search-tags.d.ts.map +1 -1
  143. package/dist/tools/context/actions/search-tags.js +8 -0
  144. package/dist/tools/context/actions/search-tags.js.map +1 -1
  145. package/dist/tools/files/actions/check-lock.d.ts.map +1 -1
  146. package/dist/tools/files/actions/check-lock.js +9 -3
  147. package/dist/tools/files/actions/check-lock.js.map +1 -1
  148. package/dist/tools/files/actions/get.d.ts.map +1 -1
  149. package/dist/tools/files/actions/get.js +18 -13
  150. package/dist/tools/files/actions/get.js.map +1 -1
  151. package/dist/tools/files/actions/record-batch.d.ts.map +1 -1
  152. package/dist/tools/files/actions/record-batch.js +11 -6
  153. package/dist/tools/files/actions/record-batch.js.map +1 -1
  154. package/dist/tools/files/actions/record.d.ts.map +1 -1
  155. package/dist/tools/files/actions/record.js +8 -2
  156. package/dist/tools/files/actions/record.js.map +1 -1
  157. package/dist/tools/files/help/example.d.ts.map +1 -1
  158. package/dist/tools/files/help/example.js +11 -0
  159. package/dist/tools/files/help/example.js.map +1 -1
  160. package/dist/tools/files/help/help.d.ts.map +1 -1
  161. package/dist/tools/files/help/help.js +11 -0
  162. package/dist/tools/files/help/help.js.map +1 -1
  163. package/dist/tools/suggest/actions/by-context.d.ts.map +1 -1
  164. package/dist/tools/suggest/actions/by-context.js +5 -15
  165. package/dist/tools/suggest/actions/by-context.js.map +1 -1
  166. package/dist/tools/suggest/actions/by-key.d.ts.map +1 -1
  167. package/dist/tools/suggest/actions/by-key.js +5 -15
  168. package/dist/tools/suggest/actions/by-key.js.map +1 -1
  169. package/dist/tools/suggest/actions/by-tags.d.ts.map +1 -1
  170. package/dist/tools/suggest/actions/by-tags.js +5 -15
  171. package/dist/tools/suggest/actions/by-tags.js.map +1 -1
  172. package/dist/tools/suggest/actions/constraint-by-context.d.ts +1 -1
  173. package/dist/tools/suggest/actions/constraint-by-context.d.ts.map +1 -1
  174. package/dist/tools/suggest/actions/constraint-by-context.js +9 -16
  175. package/dist/tools/suggest/actions/constraint-by-context.js.map +1 -1
  176. package/dist/tools/suggest/actions/constraint-by-tags.d.ts +1 -1
  177. package/dist/tools/suggest/actions/constraint-by-tags.d.ts.map +1 -1
  178. package/dist/tools/suggest/actions/constraint-by-tags.js +11 -17
  179. package/dist/tools/suggest/actions/constraint-by-tags.js.map +1 -1
  180. package/dist/tools/suggest/actions/constraint-by-text.d.ts +1 -1
  181. package/dist/tools/suggest/actions/constraint-by-text.d.ts.map +1 -1
  182. package/dist/tools/suggest/actions/constraint-by-text.js +6 -15
  183. package/dist/tools/suggest/actions/constraint-by-text.js.map +1 -1
  184. package/dist/types/actions.d.ts +1 -1
  185. package/dist/types/actions.d.ts.map +1 -1
  186. package/dist/types.d.ts +9 -230
  187. package/dist/types.d.ts.map +1 -1
  188. package/dist/utils/action-specs/constraint-specs.d.ts +1 -1
  189. package/dist/utils/action-specs/constraint-specs.d.ts.map +1 -1
  190. package/dist/utils/action-specs/constraint-specs.js +22 -5
  191. package/dist/utils/action-specs/constraint-specs.js.map +1 -1
  192. package/dist/utils/action-specs/decision-specs.d.ts.map +1 -1
  193. package/dist/utils/action-specs/decision-specs.js +11 -10
  194. package/dist/utils/action-specs/decision-specs.js.map +1 -1
  195. package/dist/utils/action-specs/file-specs.js +4 -4
  196. package/dist/utils/action-specs/file-specs.js.map +1 -1
  197. package/dist/utils/hook-queue.d.ts +43 -3
  198. package/dist/utils/hook-queue.d.ts.map +1 -1
  199. package/dist/utils/hook-queue.js +326 -32
  200. package/dist/utils/hook-queue.js.map +1 -1
  201. package/dist/utils/param-normalizer.d.ts +52 -0
  202. package/dist/utils/param-normalizer.d.ts.map +1 -0
  203. package/dist/utils/param-normalizer.js +70 -0
  204. package/dist/utils/param-normalizer.js.map +1 -0
  205. package/dist/utils/parameter-validator.d.ts.map +1 -1
  206. package/dist/utils/parameter-validator.js +2 -0
  207. package/dist/utils/parameter-validator.js.map +1 -1
  208. package/dist/utils/suggest-helpers.d.ts +82 -0
  209. package/dist/utils/suggest-helpers.d.ts.map +1 -0
  210. package/dist/utils/suggest-helpers.js +93 -0
  211. package/dist/utils/suggest-helpers.js.map +1 -0
  212. package/dist/utils/text-truncate.d.ts +13 -0
  213. package/dist/utils/text-truncate.d.ts.map +1 -0
  214. package/dist/utils/text-truncate.js +18 -0
  215. package/dist/utils/text-truncate.js.map +1 -0
  216. package/dist/utils/validators.d.ts +1 -1
  217. package/dist/utils/validators.d.ts.map +1 -1
  218. package/dist/utils/validators.js +1 -1
  219. package/dist/utils/validators.js.map +1 -1
  220. package/dist/watcher/base-watcher.d.ts.map +1 -1
  221. package/dist/watcher/base-watcher.js +4 -3
  222. package/dist/watcher/base-watcher.js.map +1 -1
  223. package/dist/watcher/file-watcher.d.ts.map +1 -1
  224. package/dist/watcher/file-watcher.js +5 -1
  225. package/dist/watcher/file-watcher.js.map +1 -1
  226. package/dist/watcher/queue-watcher.d.ts +12 -1
  227. package/dist/watcher/queue-watcher.d.ts.map +1 -1
  228. package/dist/watcher/queue-watcher.js +92 -12
  229. package/dist/watcher/queue-watcher.js.map +1 -1
  230. package/docs/ADR_CONCEPTS.md +4 -0
  231. package/docs/HOOKS_GUIDE.md +1 -1
  232. package/package.json +1 -1
@@ -5,7 +5,9 @@
5
5
  import { getAdapter } from '../../../database.js';
6
6
  import { getProjectContext } from '../../../utils/project-context.js';
7
7
  import { validateActionParams, parseStringArray, parseRelativeTime, validatePaginationParams, validateSortParams } from '../internal/validation.js';
8
+ import { normalizeParams } from '../../../utils/param-normalizer.js';
8
9
  import { getTaggedDecisions } from '../../../utils/view-queries.js';
10
+ import { truncateValue } from '../../../utils/text-truncate.js';
9
11
  /**
10
12
  * Advanced search with complex filtering
11
13
  *
@@ -14,8 +16,13 @@ import { getTaggedDecisions } from '../../../utils/view-queries.js';
14
16
  * @returns Filtered decisions with total count for pagination
15
17
  */
16
18
  export async function searchAdvanced(params = {}, adapter) {
19
+ // Normalize aliases: after → updated_after, before → updated_before
20
+ const normalizedParams = normalizeParams(params, {
21
+ after: 'updated_after',
22
+ before: 'updated_before'
23
+ });
17
24
  // Validate parameters
18
- validateActionParams('decision', 'search_advanced', params);
25
+ validateActionParams('decision', 'search_advanced', normalizedParams);
19
26
  const actualAdapter = adapter ?? getAdapter();
20
27
  const knex = actualAdapter.getKnex();
21
28
  // Validate project context
@@ -26,12 +33,12 @@ export async function searchAdvanced(params = {}, adapter) {
26
33
  // Filter by project_id
27
34
  rows = rows.filter(r => r.project_id === projectId);
28
35
  // Filter by layers (OR relationship)
29
- if (params.layers && params.layers.length > 0) {
30
- rows = rows.filter(r => r.layer && params.layers.includes(r.layer));
36
+ if (normalizedParams.layers && normalizedParams.layers.length > 0) {
37
+ rows = rows.filter(r => r.layer && normalizedParams.layers.includes(r.layer));
31
38
  }
32
39
  // Filter by tags_all (AND relationship - must have ALL tags)
33
- if (params.tags_all && params.tags_all.length > 0) {
34
- const tagsAll = parseStringArray(params.tags_all);
40
+ if (normalizedParams.tags_all && normalizedParams.tags_all.length > 0) {
41
+ const tagsAll = parseStringArray(normalizedParams.tags_all);
35
42
  rows = rows.filter(r => {
36
43
  if (!r.tags)
37
44
  return false;
@@ -39,8 +46,8 @@ export async function searchAdvanced(params = {}, adapter) {
39
46
  });
40
47
  }
41
48
  // Filter by tags_any (OR relationship - must have ANY tag)
42
- if (params.tags_any && params.tags_any.length > 0) {
43
- const tagsAny = parseStringArray(params.tags_any);
49
+ if (normalizedParams.tags_any && normalizedParams.tags_any.length > 0) {
50
+ const tagsAny = parseStringArray(normalizedParams.tags_any);
44
51
  rows = rows.filter(r => {
45
52
  if (!r.tags)
46
53
  return false;
@@ -48,8 +55,8 @@ export async function searchAdvanced(params = {}, adapter) {
48
55
  });
49
56
  }
50
57
  // Exclude tags
51
- if (params.exclude_tags && params.exclude_tags.length > 0) {
52
- const excludeTags = parseStringArray(params.exclude_tags);
58
+ if (normalizedParams.exclude_tags && normalizedParams.exclude_tags.length > 0) {
59
+ const excludeTags = parseStringArray(normalizedParams.exclude_tags);
53
60
  rows = rows.filter(r => {
54
61
  if (!r.tags)
55
62
  return true; // No tags means no excluded tags
@@ -57,8 +64,8 @@ export async function searchAdvanced(params = {}, adapter) {
57
64
  });
58
65
  }
59
66
  // Filter by scopes with wildcard support
60
- if (params.scopes && params.scopes.length > 0) {
61
- const scopes = parseStringArray(params.scopes);
67
+ if (normalizedParams.scopes && normalizedParams.scopes.length > 0) {
68
+ const scopes = parseStringArray(normalizedParams.scopes);
62
69
  rows = rows.filter(r => {
63
70
  if (!r.scopes)
64
71
  return false;
@@ -77,8 +84,8 @@ export async function searchAdvanced(params = {}, adapter) {
77
84
  });
78
85
  }
79
86
  // Temporal filtering - updated_after
80
- if (params.updated_after) {
81
- const timestamp = parseRelativeTime(params.updated_after);
87
+ if (normalizedParams.updated_after) {
88
+ const timestamp = parseRelativeTime(normalizedParams.updated_after);
82
89
  if (timestamp !== null) {
83
90
  rows = rows.filter(r => {
84
91
  const updatedTs = new Date(r.updated).getTime() / 1000;
@@ -86,12 +93,12 @@ export async function searchAdvanced(params = {}, adapter) {
86
93
  });
87
94
  }
88
95
  else {
89
- throw new Error(`Invalid updated_after format: ${params.updated_after}. Use ISO timestamp or relative time like "7d", "2h", "30m"`);
96
+ throw new Error(`Invalid updated_after format: ${normalizedParams.updated_after}. Use ISO timestamp or relative time like "7d", "2h", "30m"`);
90
97
  }
91
98
  }
92
99
  // Temporal filtering - updated_before
93
- if (params.updated_before) {
94
- const timestamp = parseRelativeTime(params.updated_before);
100
+ if (normalizedParams.updated_before) {
101
+ const timestamp = parseRelativeTime(normalizedParams.updated_before);
95
102
  if (timestamp !== null) {
96
103
  rows = rows.filter(r => {
97
104
  const updatedTs = new Date(r.updated).getTime() / 1000;
@@ -99,26 +106,26 @@ export async function searchAdvanced(params = {}, adapter) {
99
106
  });
100
107
  }
101
108
  else {
102
- throw new Error(`Invalid updated_before format: ${params.updated_before}. Use ISO timestamp or relative time like "7d", "2h", "30m"`);
109
+ throw new Error(`Invalid updated_before format: ${normalizedParams.updated_before}. Use ISO timestamp or relative time like "7d", "2h", "30m"`);
103
110
  }
104
111
  }
105
112
  // Filter by decided_by (OR relationship)
106
- if (params.decided_by && params.decided_by.length > 0) {
107
- rows = rows.filter(r => r.decided_by && params.decided_by.includes(r.decided_by));
113
+ if (normalizedParams.decided_by && normalizedParams.decided_by.length > 0) {
114
+ rows = rows.filter(r => r.decided_by && normalizedParams.decided_by.includes(r.decided_by));
108
115
  }
109
116
  // Filter by statuses (OR relationship)
110
- if (params.statuses && params.statuses.length > 0) {
111
- rows = rows.filter(r => params.statuses.includes(r.status));
117
+ if (normalizedParams.statuses && normalizedParams.statuses.length > 0) {
118
+ rows = rows.filter(r => normalizedParams.statuses.includes(r.status));
112
119
  }
113
120
  // Full-text search in value field
114
- if (params.search_text) {
115
- rows = rows.filter(r => r.value.includes(params.search_text));
121
+ if (normalizedParams.search_text) {
122
+ rows = rows.filter(r => r.value.includes(normalizedParams.search_text));
116
123
  }
117
124
  // Count total matching records (before pagination)
118
125
  const totalCount = rows.length;
119
126
  // Sorting
120
- const sortBy = params.sort_by || 'updated';
121
- const sortOrder = params.sort_order || 'desc';
127
+ const sortBy = normalizedParams.sort_by || 'updated';
128
+ const sortOrder = normalizedParams.sort_order || 'desc';
122
129
  // Validate sort parameters
123
130
  validateSortParams(sortBy, sortOrder);
124
131
  rows.sort((a, b) => {
@@ -140,11 +147,18 @@ export async function searchAdvanced(params = {}, adapter) {
140
147
  }
141
148
  });
142
149
  // Pagination
143
- const limit = params.limit !== undefined ? params.limit : 20;
144
- const offset = params.offset || 0;
150
+ const limit = normalizedParams.limit !== undefined ? normalizedParams.limit : 20;
151
+ const offset = normalizedParams.offset || 0;
145
152
  // Validate pagination parameters
146
153
  validatePaginationParams(limit, offset);
147
154
  rows = rows.slice(offset, offset + limit);
155
+ // Truncate values (default: 30 chars) unless full_value is requested
156
+ if (!normalizedParams.full_value) {
157
+ rows = rows.map(row => ({
158
+ ...row,
159
+ value: truncateValue(row.value)
160
+ }));
161
+ }
148
162
  return {
149
163
  decisions: rows,
150
164
  count: rows.length,
@@ -1 +1 @@
1
- {"version":3,"file":"search-advanced.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-advanced.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-advanced.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-advanced.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-layer.d.ts","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-layer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAS7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAkB,MAAM,aAAa,CAAC;AAE9F;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,qBAAqB,CAAC,CA+HhC"}
1
+ {"version":3,"file":"search-layer.d.ts","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-layer.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAU7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAkB,MAAM,aAAa,CAAC;AAE9F;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAuIhC"}
@@ -10,6 +10,7 @@ import { validateActionParams } from '../internal/validation.js';
10
10
  import { getTaggedDecisions } from '../../../utils/view-queries.js';
11
11
  import { UniversalKnex } from '../../../utils/universal-knex.js';
12
12
  import { convertStatusArray } from '../../../utils/enum-converter.js';
13
+ import { truncateValue } from '../../../utils/text-truncate.js';
13
14
  /**
14
15
  * Search for decisions within a specific layer
15
16
  *
@@ -102,6 +103,13 @@ export async function searchByLayer(params, adapter) {
102
103
  const rawRows = await stringDecisions.union([numericDecisions]).orderBy('updated', 'desc');
103
104
  rows = convertStatusArray(rawRows);
104
105
  }
106
+ // Truncate values (default: 30 chars) unless full_value is requested
107
+ if (!params.full_value) {
108
+ rows = rows.map(row => ({
109
+ ...row,
110
+ value: truncateValue(row.value)
111
+ }));
112
+ }
105
113
  return {
106
114
  layer: params.layer,
107
115
  decisions: rows,
@@ -1 +1 @@
1
- {"version":3,"file":"search-layer.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-layer.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-layer.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-tags.d.ts","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-tags.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAkB,MAAM,aAAa,CAAC;AAE5F;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC,CAiF/B"}
1
+ {"version":3,"file":"search-tags.d.ts","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-tags.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,OAAO,KAAK,EAAE,kBAAkB,EAAE,oBAAoB,EAAkB,MAAM,aAAa,CAAC;AAE5F;;;;;;GAMG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,EAC1B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,oBAAoB,CAAC,CAyF/B"}
@@ -7,6 +7,7 @@ import { getProjectContext } from '../../../utils/project-context.js';
7
7
  import { STRING_TO_STATUS } from '../../../constants.js';
8
8
  import { validateActionParams, parseStringArray } from '../internal/validation.js';
9
9
  import { getTaggedDecisions } from '../../../utils/view-queries.js';
10
+ import { truncateValue } from '../../../utils/text-truncate.js';
10
11
  /**
11
12
  * Search for decisions by tags
12
13
  *
@@ -80,6 +81,13 @@ export async function searchByTags(params, adapter) {
80
81
  const dateB = new Date(b.updated).getTime();
81
82
  return dateB - dateA; // desc
82
83
  });
84
+ // Truncate values (default: 30 chars) unless full_value is requested
85
+ if (!params.full_value) {
86
+ rows = rows.map(row => ({
87
+ ...row,
88
+ value: truncateValue(row.value)
89
+ }));
90
+ }
83
91
  return {
84
92
  decisions: rows,
85
93
  count: rows.length
@@ -1 +1 @@
1
- {"version":3,"file":"search-tags.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-tags.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-tags.js","sourceRoot":"","sources":["../../../../src/tools/context/actions/search-tags.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"check-lock.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/check-lock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE9E;;;;;;;GAOG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,qBAAqB,CAAC,CAuDhC"}
1
+ {"version":3,"file":"check-lock.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/check-lock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAE9E;;;;;;;GAOG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,qBAAqB,CAAC,CA6DhC"}
@@ -7,6 +7,7 @@ import { getProjectContext } from '../../../utils/project-context.js';
7
7
  import connectionManager from '../../../utils/connection-manager.js';
8
8
  import { CHANGE_TYPE_TO_STRING } from '../../../constants.js';
9
9
  import { validateActionParams } from '../internal/validation.js';
10
+ import { normalizeParams } from '../../../utils/param-normalizer.js';
10
11
  /**
11
12
  * Check if a file is "locked" (recently modified by another agent).
12
13
  * Useful to prevent concurrent edits by multiple agents.
@@ -17,22 +18,27 @@ import { validateActionParams } from '../internal/validation.js';
17
18
  */
18
19
  export async function checkFileLock(params, adapter) {
19
20
  const actualAdapter = adapter ?? getAdapter();
21
+ // Normalize aliases: path → file_path, duration → lock_duration
22
+ const normalizedParams = normalizeParams(params, {
23
+ path: 'file_path',
24
+ duration: 'lock_duration'
25
+ });
20
26
  try {
21
27
  // Fail-fast: Validate project context is initialized (Constraint #29)
22
28
  const projectId = getProjectContext().getProjectId();
23
29
  // Validate parameters
24
- validateActionParams('file', 'check_lock', params);
30
+ validateActionParams('file', 'check_lock', normalizedParams);
25
31
  // Execute with connection retry
26
32
  return await connectionManager.executeWithRetry(async () => {
27
33
  const knex = actualAdapter.getKnex();
28
- const lockDuration = params.lock_duration || 300; // Default 5 minutes
34
+ const lockDuration = normalizedParams.lock_duration || 300; // Default 5 minutes
29
35
  const currentTime = Math.floor(Date.now() / 1000);
30
36
  const lockThreshold = currentTime - lockDuration;
31
37
  // Get the most recent change to this file within current project
32
38
  // Note: Agent tracking removed in v4.0 - last_agent field removed
33
39
  const result = await knex('v4_file_changes as fc')
34
40
  .join('v4_files as f', 'fc.file_id', 'f.id')
35
- .where('f.path', params.file_path)
41
+ .where('f.path', normalizedParams.file_path)
36
42
  .where('fc.project_id', projectId)
37
43
  .select('fc.change_type', 'fc.ts')
38
44
  .orderBy('fc.ts', 'desc')
@@ -1 +1 @@
1
- {"version":3,"file":"check-lock.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/check-lock.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGjE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,OAAyB;IAEzB,MAAM,aAAa,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;IAE9C,IAAI,CAAC;QACH,sEAAsE;QACtE,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;QAErD,sBAAsB;QACtB,oBAAoB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QAEnD,gCAAgC;QAChC,OAAO,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACzD,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,EAAE,CAAC;YACrC,MAAM,YAAY,GAAG,MAAM,CAAC,aAAa,IAAI,GAAG,CAAC,CAAC,oBAAoB;YACtE,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAClD,MAAM,aAAa,GAAG,WAAW,GAAG,YAAY,CAAC;YAEjD,iEAAiE;YACjE,kEAAkE;YAClE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC;iBAC/C,IAAI,CAAC,eAAe,EAAE,YAAY,EAAE,MAAM,CAAC;iBAC3C,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC;iBACjC,KAAK,CAAC,eAAe,EAAE,SAAS,CAAC;iBACjC,MAAM,CAAC,gBAAgB,EAAE,OAAO,CAAC;iBACjC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;iBACxB,KAAK,CAAC,CAAC,CAAC;iBACR,KAAK,EAAqD,CAAC;YAE9D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,qBAAqB;gBACrB,OAAO;oBACL,MAAM,EAAE,KAAK;iBACd,CAAC;YACJ,CAAC;YAED,gCAAgC;YAChC,IAAI,MAAM,CAAC,EAAE,IAAI,aAAa,EAAE,CAAC;gBAC/B,OAAO;oBACL,MAAM,EAAE,IAAI;oBACZ,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;oBACrD,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC,WAAwB,CAAC;iBACpE,CAAC;YACJ,CAAC;YAED,uBAAuB;YACvB,OAAO;gBACL,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,WAAW,EAAE;gBACrD,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC,WAAwB,CAAC;aACpE,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,8BAA8B,OAAO,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"check-lock.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/check-lock.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/get.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAa7D,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EAEvB,MAAM,aAAa,CAAC;AAErB;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,MAAM,GAAE,oBAAyB,EACjC,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,sBAAsB,CAAC,CA8EjC"}
1
+ {"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/get.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAc7D,OAAO,KAAK,EACV,oBAAoB,EACpB,sBAAsB,EAEvB,MAAM,aAAa,CAAC;AAErB;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,MAAM,GAAE,oBAAyB,EACjC,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,sBAAsB,CAAC,CAmFjC"}
@@ -9,6 +9,7 @@ import { STRING_TO_CHANGE_TYPE, STANDARD_LAYERS, DEFAULT_QUERY_LIMIT } from '../
9
9
  import { validateChangeType } from '../../../utils/validators.js';
10
10
  import { validateActionParams } from '../internal/validation.js';
11
11
  import { UniversalKnex } from '../../../utils/universal-knex.js';
12
+ import { normalizeParams } from '../../../utils/param-normalizer.js';
12
13
  import { convertChangeTypeArray } from '../../../utils/enum-converter.js';
13
14
  /**
14
15
  * Get file changes with advanced filtering.
@@ -20,16 +21,20 @@ import { convertChangeTypeArray } from '../../../utils/enum-converter.js';
20
21
  */
21
22
  export async function getFileChanges(params = {}, adapter) {
22
23
  const actualAdapter = adapter ?? getAdapter();
24
+ // Normalize aliases: path → file_path
25
+ const normalizedParams = normalizeParams(params, {
26
+ path: 'file_path'
27
+ });
23
28
  try {
24
29
  // Fail-fast: Validate project context is initialized (Constraint #29)
25
30
  const projectId = getProjectContext().getProjectId();
26
31
  // Validate parameters
27
- validateActionParams('file', 'get', params);
32
+ validateActionParams('file', 'get', normalizedParams);
28
33
  // Execute with connection retry
29
34
  return await connectionManager.executeWithRetry(async () => {
30
35
  const knex = actualAdapter.getKnex();
31
36
  const db = new UniversalKnex(knex);
32
- const limit = params.limit || DEFAULT_QUERY_LIMIT;
37
+ const limit = normalizedParams.limit || DEFAULT_QUERY_LIMIT;
33
38
  // Build query using JOINs (no views - cross-DB compatible)
34
39
  // Note: Agent tracking removed in v4.0 - changed_by field removed
35
40
  let query = knex('v4_file_changes as fc')
@@ -37,25 +42,25 @@ export async function getFileChanges(params = {}, adapter) {
37
42
  .leftJoin('v4_layers as l', 'fc.layer_id', 'l.id')
38
43
  .where('fc.project_id', projectId);
39
44
  // Apply filter conditions
40
- if (params.file_path) {
41
- query = query.where('f.path', params.file_path);
45
+ if (normalizedParams.file_path) {
46
+ query = query.where('f.path', normalizedParams.file_path);
42
47
  }
43
48
  // Note: agent_name filter removed in v4.0 (agent tracking removed)
44
- if (params.layer) {
49
+ if (normalizedParams.layer) {
45
50
  // Validate layer
46
- if (!STANDARD_LAYERS.includes(params.layer)) {
47
- throw new Error(`Invalid layer: ${params.layer}. Must be one of: ${STANDARD_LAYERS.join(', ')}`);
51
+ if (!STANDARD_LAYERS.includes(normalizedParams.layer)) {
52
+ throw new Error(`Invalid layer: ${normalizedParams.layer}. Must be one of: ${STANDARD_LAYERS.join(', ')}`);
48
53
  }
49
- query = query.where('l.name', params.layer);
54
+ query = query.where('l.name', normalizedParams.layer);
50
55
  }
51
- if (params.change_type) {
52
- validateChangeType(params.change_type);
53
- const changeTypeInt = STRING_TO_CHANGE_TYPE[params.change_type];
56
+ if (normalizedParams.change_type) {
57
+ validateChangeType(normalizedParams.change_type);
58
+ const changeTypeInt = STRING_TO_CHANGE_TYPE[normalizedParams.change_type];
54
59
  query = query.where('fc.change_type', changeTypeInt);
55
60
  }
56
- if (params.since) {
61
+ if (normalizedParams.since) {
57
62
  // Convert ISO 8601 to Unix epoch
58
- const sinceEpoch = Math.floor(new Date(params.since).getTime() / 1000);
63
+ const sinceEpoch = Math.floor(new Date(normalizedParams.since).getTime() / 1000);
59
64
  query = query.where('fc.ts', '>=', sinceEpoch);
60
65
  }
61
66
  // Select columns with proper date formatting
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/get.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/get.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"record-batch.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/record-batch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EACV,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,aAAa,CAAC;AAErB;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,2BAA2B,EACnC,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,6BAA6B,CAAC,CA0GxC"}
1
+ {"version":3,"file":"record-batch.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/record-batch.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,OAAO,KAAK,EACV,2BAA2B,EAC3B,6BAA6B,EAC9B,MAAM,aAAa,CAAC;AAErB;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,2BAA2B,EACnC,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,6BAA6B,CAAC,CA+GxC"}
@@ -8,6 +8,7 @@ import { validateBatchParams, validateFileChangeItem } from '../internal/validat
8
8
  import { recordFileChangeInternal } from '../internal/queries.js';
9
9
  import { getProjectContext } from '../../../utils/project-context.js';
10
10
  import { validateBatch, formatBatchValidationError } from '../../../utils/batch-validation.js';
11
+ import { normalizeParams } from '../../../utils/param-normalizer.js';
11
12
  /**
12
13
  * Record multiple file changes in a single batch operation (FR-005)
13
14
  * Supports atomic (all succeed or all fail) and non-atomic modes
@@ -19,9 +20,13 @@ import { validateBatch, formatBatchValidationError } from '../../../utils/batch-
19
20
  */
20
21
  export async function recordFileChangeBatch(params, adapter) {
21
22
  const actualAdapter = adapter ?? getAdapter();
23
+ // Normalize aliases: changes → file_changes
24
+ const normalizedParams = normalizeParams(params, {
25
+ changes: 'file_changes'
26
+ });
22
27
  // Validate batch parameters
23
- validateBatchParams('file', 'file_changes', params.file_changes, 'record', 50);
24
- if (params.file_changes.length === 0) {
28
+ validateBatchParams('file', 'file_changes', normalizedParams.file_changes, 'record', 50);
29
+ if (normalizedParams.file_changes.length === 0) {
25
30
  return {
26
31
  success: true,
27
32
  inserted: 0,
@@ -30,19 +35,19 @@ export async function recordFileChangeBatch(params, adapter) {
30
35
  };
31
36
  }
32
37
  // Pre-validate all items before transaction
33
- const validationResult = await validateBatch(params.file_changes, validateFileChangeItem, actualAdapter);
38
+ const validationResult = await validateBatch(normalizedParams.file_changes, validateFileChangeItem, actualAdapter);
34
39
  if (!validationResult.valid) {
35
40
  throw new Error(formatBatchValidationError(validationResult));
36
41
  }
37
42
  // Fail-fast: Validate project context is initialized (Constraint #29)
38
43
  const projectId = getProjectContext().getProjectId();
39
- const atomic = params.atomic !== undefined ? params.atomic : true;
44
+ const atomic = normalizedParams.atomic !== undefined ? normalizedParams.atomic : true;
40
45
  try {
41
46
  if (atomic) {
42
47
  // Atomic mode: All or nothing
43
48
  const results = await actualAdapter.transaction(async (trx) => {
44
49
  const processedResults = [];
45
- for (const fileChange of params.file_changes) {
50
+ for (const fileChange of normalizedParams.file_changes) {
46
51
  try {
47
52
  const result = await recordFileChangeInternal(fileChange, actualAdapter, projectId, trx);
48
53
  processedResults.push({
@@ -72,7 +77,7 @@ export async function recordFileChangeBatch(params, adapter) {
72
77
  const results = [];
73
78
  let inserted = 0;
74
79
  let failed = 0;
75
- for (const fileChange of params.file_changes) {
80
+ for (const fileChange of normalizedParams.file_changes) {
76
81
  try {
77
82
  const result = await actualAdapter.transaction(async (trx) => {
78
83
  return await recordFileChangeInternal(fileChange, actualAdapter, projectId, trx);
@@ -1 +1 @@
1
- {"version":3,"file":"record-batch.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/record-batch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"record-batch.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/record-batch.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,wBAAwB,CAAC,CAoBnC"}
1
+ {"version":3,"file":"record.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAO7D,OAAO,KAAK,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAC;AAEpF;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,sBAAsB,EAC9B,OAAO,CAAC,EAAE,eAAe,GACxB,OAAO,CAAC,wBAAwB,CAAC,CA0BnC"}
@@ -6,6 +6,7 @@ import { getAdapter } from '../../../database.js';
6
6
  import { getProjectContext } from '../../../utils/project-context.js';
7
7
  import connectionManager from '../../../utils/connection-manager.js';
8
8
  import { validateActionParams } from '../internal/validation.js';
9
+ import { normalizeParams } from '../../../utils/param-normalizer.js';
9
10
  import { recordFileChangeInternal } from '../internal/queries.js';
10
11
  /**
11
12
  * Record a file change with optional layer assignment and description.
@@ -17,15 +18,20 @@ import { recordFileChangeInternal } from '../internal/queries.js';
17
18
  */
18
19
  export async function recordFileChange(params, adapter) {
19
20
  const actualAdapter = adapter ?? getAdapter();
21
+ // Normalize aliases: path → file_path, type → change_type
22
+ const normalizedParams = normalizeParams(params, {
23
+ path: 'file_path',
24
+ type: 'change_type'
25
+ });
20
26
  try {
21
27
  // Validate parameters
22
- validateActionParams('file', 'record', params);
28
+ validateActionParams('file', 'record', normalizedParams);
23
29
  // Fail-fast: Validate project context is initialized (Constraint #29)
24
30
  const projectId = getProjectContext().getProjectId();
25
31
  // Use transaction for atomicity with connection retry
26
32
  return await connectionManager.executeWithRetry(async () => {
27
33
  return await actualAdapter.transaction(async (trx) => {
28
- return await recordFileChangeInternal(params, actualAdapter, projectId, trx);
34
+ return await recordFileChangeInternal(normalizedParams, actualAdapter, projectId, trx);
29
35
  });
30
36
  });
31
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGlE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA8B,EAC9B,OAAyB;IAEzB,MAAM,aAAa,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;IAE9C,IAAI,CAAC;QACH,sBAAsB;QACtB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAE/C,sEAAsE;QACtE,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;QAErD,sDAAsD;QACtD,OAAO,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACzD,OAAO,MAAM,aAAa,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACnD,OAAO,MAAM,wBAAwB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YAC/E,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"record.js","sourceRoot":"","sources":["../../../../src/tools/files/actions/record.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,iBAAiB,MAAM,sCAAsC,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAGlE;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAA8B,EAC9B,OAAyB;IAEzB,MAAM,aAAa,GAAG,OAAO,IAAI,UAAU,EAAE,CAAC;IAE9C,0DAA0D;IAC1D,MAAM,gBAAgB,GAAG,eAAe,CAAC,MAAM,EAAE;QAC/C,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,aAAa;KACpB,CAA2B,CAAC;IAE7B,IAAI,CAAC;QACH,sBAAsB;QACtB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAEzD,sEAAsE;QACtE,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,YAAY,EAAE,CAAC;QAErD,sDAAsD;QACtD,OAAO,MAAM,iBAAiB,CAAC,gBAAgB,CAAC,KAAK,IAAI,EAAE;YACzD,OAAO,MAAM,aAAa,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACnD,OAAO,MAAM,wBAAwB,CAAC,gBAAgB,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC;YACzF,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACvE,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,WAAW,IAAI,GAAG,CA6FjC"}
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,WAAW,IAAI,GAAG,CAwGjC"}
@@ -4,6 +4,17 @@
4
4
  export function fileExample() {
5
5
  return {
6
6
  tool: 'file',
7
+ deprecation: {
8
+ status: '⚠️ DEPRECATED as of v4.3.0',
9
+ reason: 'Claude Code provides native file change tracking through its built-in tools and Plan Mode',
10
+ alternatives: [
11
+ 'Use Claude Code native tools for file operations',
12
+ 'Use decision tool to record file-related architectural decisions',
13
+ 'Use Plan Mode for structured workflows involving file changes'
14
+ ],
15
+ documentation: '/docs/TASK_SYSTEM_DEPRECATED.md',
16
+ note: 'File tool remains functional for backward compatibility but will be removed in v5.0'
17
+ },
7
18
  description: 'Comprehensive file tracking examples for multi-agent coordination',
8
19
  scenarios: {
9
20
  basic_tracking: {
@@ -1 +1 @@
1
- {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,mEAAmE;QAChF,SAAS,EAAE;YACT,cAAc,EAAE;gBACd,KAAK,EAAE,4BAA4B;gBACnC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,0BAA0B;wBACpC,OAAO,EAAE,wIAAwI;wBACjJ,WAAW,EAAE,0CAA0C;qBACxD;oBACD;wBACE,QAAQ,EAAE,6BAA6B;wBACvC,OAAO,EAAE,iDAAiD;wBAC1D,WAAW,EAAE,+CAA+C;qBAC7D;oBACD;wBACE,QAAQ,EAAE,gCAAgC;wBAC1C,OAAO,EAAE,kDAAkD;wBAC3D,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,8BAA8B;gBACrC,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,yBAAyB;wBACjC,OAAO,EAAE,oFAAoF;wBAC7F,MAAM,EAAE,+DAA+D;qBACxE;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,6CAA6C;wBACrD,OAAO,EAAE,qFAAqF;qBAC/F;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,8DAA8D;qBACvE;iBACF;aACF;YACD,kBAAkB,EAAE;gBAClB,KAAK,EAAE,gCAAgC;gBACvC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,oCAAoC;wBAC9C,OAAO,EAAE,qDAAqD;wBAC9D,WAAW,EAAE,0BAA0B;qBACxC;oBACD;wBACE,QAAQ,EAAE,8BAA8B;wBACxC,OAAO,EAAE,qEAAqE;wBAC9E,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,uBAAuB;gBAC9B,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,yCAAyC;wBACnD,OAAO,EAAE,sNAAsN;wBAC/N,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;SACF;QACD,cAAc,EAAE;YACd,eAAe,EAAE;gBACf,8CAA8C;gBAC9C,6CAA6C;gBAC7C,8CAA8C;gBAC9C,2CAA2C;aAC5C;YACD,eAAe,EAAE;gBACf,kDAAkD;gBAClD,wCAAwC;gBACxC,6CAA6C;gBAC7C,wDAAwD;aACzD;YACD,gBAAgB,EAAE;gBAChB,8CAA8C;gBAC9C,kCAAkC;gBAClC,wCAAwC;gBACxC,2CAA2C;gBAC3C,6CAA6C;aAC9C;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../../../src/tools/files/help/example.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,UAAU,WAAW;IACzB,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE;YACX,MAAM,EAAE,4BAA4B;YACpC,MAAM,EAAE,2FAA2F;YACnG,YAAY,EAAE;gBACZ,kDAAkD;gBAClD,kEAAkE;gBAClE,+DAA+D;aAChE;YACD,aAAa,EAAE,iCAAiC;YAChD,IAAI,EAAE,qFAAqF;SAC5F;QACD,WAAW,EAAE,mEAAmE;QAChF,SAAS,EAAE;YACT,cAAc,EAAE;gBACd,KAAK,EAAE,4BAA4B;gBACnC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,0BAA0B;wBACpC,OAAO,EAAE,wIAAwI;wBACjJ,WAAW,EAAE,0CAA0C;qBACxD;oBACD;wBACE,QAAQ,EAAE,6BAA6B;wBACvC,OAAO,EAAE,iDAAiD;wBAC1D,WAAW,EAAE,+CAA+C;qBAC7D;oBACD;wBACE,QAAQ,EAAE,gCAAgC;wBAC1C,OAAO,EAAE,kDAAkD;wBAC3D,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,YAAY,EAAE;gBACZ,KAAK,EAAE,8BAA8B;gBACrC,QAAQ,EAAE;oBACR;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,yBAAyB;wBACjC,OAAO,EAAE,oFAAoF;wBAC7F,MAAM,EAAE,+DAA+D;qBACxE;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,6CAA6C;wBACrD,OAAO,EAAE,qFAAqF;qBAC/F;oBACD;wBACE,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,8DAA8D;qBACvE;iBACF;aACF;YACD,kBAAkB,EAAE;gBAClB,KAAK,EAAE,gCAAgC;gBACvC,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,oCAAoC;wBAC9C,OAAO,EAAE,qDAAqD;wBAC9D,WAAW,EAAE,0BAA0B;qBACxC;oBACD;wBACE,QAAQ,EAAE,8BAA8B;wBACxC,OAAO,EAAE,qEAAqE;wBAC9E,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;YACD,cAAc,EAAE;gBACd,KAAK,EAAE,uBAAuB;gBAC9B,QAAQ,EAAE;oBACR;wBACE,QAAQ,EAAE,yCAAyC;wBACnD,OAAO,EAAE,sNAAsN;wBAC/N,WAAW,EAAE,4CAA4C;qBAC1D;iBACF;aACF;SACF;QACD,cAAc,EAAE;YACd,eAAe,EAAE;gBACf,8CAA8C;gBAC9C,6CAA6C;gBAC7C,8CAA8C;gBAC9C,2CAA2C;aAC5C;YACD,eAAe,EAAE;gBACf,kDAAkD;gBAClD,wCAAwC;gBACxC,6CAA6C;gBAC7C,wDAAwD;aACzD;YACD,gBAAgB,EAAE;gBAChB,8CAA8C;gBAC9C,kCAAkC;gBAClC,wCAAwC;gBACxC,2CAA2C;gBAC3C,6CAA6C;aAC9C;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/help.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,GAAG,CAoB9B"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../../../src/tools/files/help/help.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,wBAAgB,QAAQ,IAAI,GAAG,CA+B9B"}