@lwelliott/cortex-cli 1.0.4 → 1.0.6

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 (42) hide show
  1. package/README.md +2 -2
  2. package/dist/cli/formatters/markdown.js +7 -7
  3. package/dist/cli/formatters/markdown.js.map +1 -1
  4. package/dist/cli/formatters/table.js +10 -10
  5. package/dist/cli/formatters/table.js.map +1 -1
  6. package/dist/cli/index.js +4 -2
  7. package/dist/cli/index.js.map +1 -1
  8. package/dist/cli/task.d.ts.map +1 -1
  9. package/dist/cli/task.js +32 -4
  10. package/dist/cli/task.js.map +1 -1
  11. package/dist/db/generated/schema-types.d.ts +8 -8
  12. package/dist/db/generated/schema-types.js +4 -4
  13. package/dist/db/generated/schema-types.js.map +1 -1
  14. package/dist/db/schema.d.ts +1 -1
  15. package/dist/db/schema.d.ts.map +1 -1
  16. package/dist/db/schema.js +15 -1
  17. package/dist/db/schema.js.map +1 -1
  18. package/dist/models/relation.d.ts.map +1 -1
  19. package/dist/models/relation.js +81 -73
  20. package/dist/models/relation.js.map +1 -1
  21. package/dist/models/task.d.ts +4 -4
  22. package/dist/models/task.d.ts.map +1 -1
  23. package/dist/services/document-service.d.ts +3 -0
  24. package/dist/services/document-service.d.ts.map +1 -1
  25. package/dist/services/document-service.js +77 -76
  26. package/dist/services/document-service.js.map +1 -1
  27. package/dist/services/review-service.d.ts +47 -2
  28. package/dist/services/review-service.d.ts.map +1 -1
  29. package/dist/services/review-service.js +189 -27
  30. package/dist/services/review-service.js.map +1 -1
  31. package/dist/services/schema-migration-service.js +4 -4
  32. package/dist/services/schema-migration-service.js.map +1 -1
  33. package/dist/services/sprint.js +1 -1
  34. package/dist/services/task.d.ts +4 -4
  35. package/dist/services/task.d.ts.map +1 -1
  36. package/dist/services/task.js +18 -27
  37. package/dist/services/task.js.map +1 -1
  38. package/dist/utils/errors.d.ts +13 -1
  39. package/dist/utils/errors.d.ts.map +1 -1
  40. package/dist/utils/errors.js +28 -4
  41. package/dist/utils/errors.js.map +1 -1
  42. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"document-service.js","sourceRoot":"","sources":["../../src/services/document-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-service.js","sourceRoot":"","sources":["../../src/services/document-service.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,10 @@ import type Database from 'better-sqlite3';
2
2
  import type { Review, ReviewDetail, ReviewAddOptions, TestReport, TestReportAddOptions, Lesson, LessonAddOptions, LessonResult, LessonUpdateFields } from '../models/review';
3
3
  /**
4
4
  * Add a review with explicit caller-provided 4-digit ID.
5
+ * Wrapped with review:<reviewId> advisory lock (AD-0006) for multi-process coordination.
5
6
  * Content must be provided (from --content-file).
6
7
  *
7
- * SAD-0031 Part A: No advisory lock — caller provides explicit ID.
8
+ * SAD-0031 Part A: caller provides explicit ID.
8
9
  * Duplicate validation via EXISTS on composite index (sprint_id, review_num).
9
10
  */
10
11
  export declare function addReview(db: Database.Database, sprintId: string, reviewId: string, reviewType: string, verdict: string, content: string, opts?: ReviewAddOptions): Review;
@@ -26,12 +27,56 @@ export declare function listReviews(db: Database.Database, sprintId: string, fil
26
27
  * @throws ReviewNotInSprintError if review not found in the specified sprint
27
28
  */
28
29
  export declare function getReview(db: Database.Database, reviewNum: number, sprintId: string): ReviewDetail;
30
+ /**
31
+ * Update an existing review.
32
+ * Wrapped with review:<reviewId> advisory lock (AD-0006).
33
+ *
34
+ * @param db - Database connection
35
+ * @param reviewNum - Review number (1-based)
36
+ * @param sprintId - Sprint ID (required)
37
+ * @param updates - Fields to update (content, verdict, review_type, counts, etc.)
38
+ * @returns Updated Review detail
39
+ * @throws ReviewNotInSprintError if review not found
40
+ * @throws ReviewNoUpdateFieldsError if no update fields provided
41
+ */
42
+ export declare function updateReview(db: Database.Database, reviewNum: number, sprintId: string, updates: {
43
+ content?: string;
44
+ verdict?: string;
45
+ reviewType?: string;
46
+ assetName?: string;
47
+ assetRef?: string;
48
+ critical?: number;
49
+ major?: number;
50
+ minor?: number;
51
+ suggestion?: number;
52
+ }): ReviewDetail;
29
53
  /**
30
54
  * Add a test report with explicit caller-provided 4-digit ID.
31
- * SAD-0031 Part A: No advisory lock, no task association.
55
+ * Wrapped with review:global advisory lock (AD-0006) for multi-process coordination.
56
+ * SAD-0031 Part A: no task association.
32
57
  * Duplicate validation via EXISTS on composite index (sprint_id, id).
33
58
  */
34
59
  export declare function addTestReport(db: Database.Database, sprintId: string, testReportId: string, total: number, passed: number, failed: number, opts?: TestReportAddOptions): TestReport;
60
+ /**
61
+ * Update an existing test report.
62
+ * Wrapped with review:global advisory lock (AD-0006).
63
+ *
64
+ * @param db - Database connection
65
+ * @param testReportId - Test report ID (4-digit zero-padded)
66
+ * @param sprintId - Sprint ID
67
+ * @param updates - Fields to update
68
+ * @returns Updated TestReport
69
+ * @throws error with ERR-TESTREPORT-004 if not found
70
+ */
71
+ export declare function updateTestReport(db: Database.Database, testReportId: string, sprintId: string, updates: {
72
+ total?: number;
73
+ passed?: number;
74
+ failed?: number;
75
+ skipped?: number;
76
+ command?: string;
77
+ duration?: number;
78
+ content?: string;
79
+ }): TestReport;
35
80
  /**
36
81
  * List test reports. Task filter removed per SAD-0031 Part B.
37
82
  */
@@ -1 +1 @@
1
- {"version":3,"file":"review-service.d.ts","sourceRoot":"","sources":["../../src/services/review-service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAiC7K;;;;;;GAMG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,gBAAgB,GACtB,MAAM,CAuCR;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C,MAAM,EAAE,CAUV;AAWD;;;;;;;;;GASG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,YAAY,CAalG;AAID;;;;GAIG;AACH,wBAAgB,aAAa,CAC3B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,IAAI,CAAC,EAAE,oBAAoB,GAC1B,UAAU,CAsCZ;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,CAAC,EAAE,MAAM,GAChB,UAAU,EAAE,CAOd;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,UAAU,CAQvG;AAcD;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,KAAK,CAAC,EAAE,gBAAgB,GACvB,MAAM,CAgBR;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAE/E;AAED;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,YAAY,CAM7D;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,OAAO,EAAE,kBAAkB,GAC1B,YAAY,CA2Bd"}
1
+ {"version":3,"file":"review-service.d.ts","sourceRoot":"","sources":["../../src/services/review-service.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,14 @@
2
2
  // Review service: orchestrates review, test report, and lesson operations
3
3
  // SAD-0031: Explicit Command IDs, Duplicate ID Validation, Test-Report --task Removal
4
4
  // SAD-0010: Lesson singleton, review show sprint binding, content-file import
5
+ // AD-0006: Advisory lock wrapping for multi-step write operations
5
6
  Object.defineProperty(exports, "__esModule", { value: true });
6
7
  exports.addReview = addReview;
7
8
  exports.listReviews = listReviews;
8
9
  exports.getReview = getReview;
10
+ exports.updateReview = updateReview;
9
11
  exports.addTestReport = addTestReport;
12
+ exports.updateTestReport = updateTestReport;
10
13
  exports.listTestReports = listTestReports;
11
14
  exports.getTestReport = getTestReport;
12
15
  exports.addLesson = addLesson;
@@ -15,6 +18,7 @@ exports.getLesson = getLesson;
15
18
  exports.updateLesson = updateLesson;
16
19
  const errors_1 = require("../utils/errors");
17
20
  const retry_1 = require("../db/retry");
21
+ const locks_1 = require("../db/locks");
18
22
  const sprint_1 = require("./sprint");
19
23
  // ─── Error helper ───
20
24
  function reviewError(code, message, details) {
@@ -30,31 +34,36 @@ function validateFourDigitId(id, errCtor) {
30
34
  // ─── Review API ───
31
35
  /**
32
36
  * Add a review with explicit caller-provided 4-digit ID.
37
+ * Wrapped with review:<reviewId> advisory lock (AD-0006) for multi-process coordination.
33
38
  * Content must be provided (from --content-file).
34
39
  *
35
- * SAD-0031 Part A: No advisory lock — caller provides explicit ID.
40
+ * SAD-0031 Part A: caller provides explicit ID.
36
41
  * Duplicate validation via EXISTS on composite index (sprint_id, review_num).
37
42
  */
38
43
  function addReview(db, sprintId, reviewId, reviewType, verdict, content, opts) {
39
- // Validate sprint exists
44
+ // Validate sprint exists (before lock)
40
45
  (0, sprint_1.resolveSprint)(db, sprintId);
41
46
  // Validate ID format: /^\d{4}$/
42
47
  validateFourDigitId(reviewId, errors_1.ReviewBadIdError);
43
48
  if (!content) {
44
49
  throw new errors_1.ReviewContentRemovedError();
45
50
  }
46
- // Duplicate check via EXISTS on composite index (sprint_id, review_num)
47
- const exists = db.prepare('SELECT EXISTS(SELECT 1 FROM reviews WHERE sprint_id = ? AND review_num = ?) AS e').get(sprintId, reviewId);
48
- if (exists.e) {
49
- throw new errors_1.ReviewDuplicateIdError(reviewId, sprintId);
50
- }
51
- const now = new Date().toISOString();
52
- const rowId = (0, retry_1.withTransaction)(db, () => {
53
- const result = db.prepare(`INSERT INTO reviews (review_num, sprint_id, asset_name, review_type, verdict, critical_count, major_count, minor_count, suggestion_count, open_questions_count, content, asset_ref, created_at, updated_at)
54
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(reviewId, sprintId, opts?.assetName ?? '', reviewType, verdict, opts?.critical ?? 0, opts?.major ?? 0, opts?.minor ?? 0, opts?.suggestion ?? 0, 0, content, opts?.assetRef ?? null, now, now);
55
- return Number(result.lastInsertRowid);
51
+ const owner = (0, locks_1.generateLockOwner)();
52
+ const lockName = `review:${reviewId}`;
53
+ return (0, locks_1.withLock)(db, { name: lockName, owner }, () => {
54
+ // Duplicate check inside lock to prevent TOCTOU races
55
+ const exists = db.prepare('SELECT EXISTS(SELECT 1 FROM reviews WHERE sprint_id = ? AND review_num = ?) AS e').get(sprintId, reviewId);
56
+ if (exists.e) {
57
+ throw new errors_1.ReviewDuplicateIdError(reviewId, sprintId);
58
+ }
59
+ const now = new Date().toISOString();
60
+ const rowId = (0, retry_1.withTransaction)(db, () => {
61
+ const result = db.prepare(`INSERT INTO reviews (review_num, sprint_id, asset_name, review_type, verdict, critical_count, major_count, minor_count, suggestion_count, open_questions_count, content, asset_ref, created_at, updated_at)
62
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(reviewId, sprintId, opts?.assetName ?? '', reviewType, verdict, opts?.critical ?? 0, opts?.major ?? 0, opts?.minor ?? 0, opts?.suggestion ?? 0, 0, content, opts?.assetRef ?? null, now, now);
63
+ return Number(result.lastInsertRowid);
64
+ });
65
+ return getReviewById(db, rowId);
56
66
  });
57
- return getReviewById(db, rowId);
58
67
  }
59
68
  /**
60
69
  * List reviews for a sprint.
@@ -101,10 +110,85 @@ function getReview(db, reviewNum, sprintId) {
101
110
  }
102
111
  return row;
103
112
  }
113
+ /**
114
+ * Update an existing review.
115
+ * Wrapped with review:<reviewId> advisory lock (AD-0006).
116
+ *
117
+ * @param db - Database connection
118
+ * @param reviewNum - Review number (1-based)
119
+ * @param sprintId - Sprint ID (required)
120
+ * @param updates - Fields to update (content, verdict, review_type, counts, etc.)
121
+ * @returns Updated Review detail
122
+ * @throws ReviewNotInSprintError if review not found
123
+ * @throws ReviewNoUpdateFieldsError if no update fields provided
124
+ */
125
+ function updateReview(db, reviewNum, sprintId, updates) {
126
+ // Validate sprint exists (before lock)
127
+ (0, sprint_1.resolveSprint)(db, sprintId);
128
+ // Validate the review exists (before lock to fail fast)
129
+ const numStr = String(reviewNum).padStart(4, '0');
130
+ const existing = db.prepare('SELECT * FROM reviews WHERE review_num = ? AND sprint_id = ?').get(numStr, sprintId);
131
+ if (!existing) {
132
+ throw new errors_1.ReviewNotInSprintError(reviewNum, sprintId);
133
+ }
134
+ // Check that at least one update field is provided
135
+ if (Object.keys(updates).length === 0) {
136
+ throw new errors_1.ReviewNoUpdateFieldsError();
137
+ }
138
+ const owner = (0, locks_1.generateLockOwner)();
139
+ const lockName = `review:${numStr}`;
140
+ return (0, locks_1.withLock)(db, { name: lockName, owner }, () => {
141
+ const now = new Date().toISOString();
142
+ const sets = ['updated_at = ?'];
143
+ const params = [now];
144
+ if (updates.content !== undefined) {
145
+ sets.push('content = ?');
146
+ params.push(updates.content);
147
+ }
148
+ if (updates.verdict !== undefined) {
149
+ sets.push('verdict = ?');
150
+ params.push(updates.verdict);
151
+ }
152
+ if (updates.reviewType !== undefined) {
153
+ sets.push('review_type = ?');
154
+ params.push(updates.reviewType);
155
+ }
156
+ if (updates.assetName !== undefined) {
157
+ sets.push('asset_name = ?');
158
+ params.push(updates.assetName);
159
+ }
160
+ if (updates.assetRef !== undefined) {
161
+ sets.push('asset_ref = ?');
162
+ params.push(updates.assetRef);
163
+ }
164
+ if (updates.critical !== undefined) {
165
+ sets.push('critical_count = ?');
166
+ params.push(updates.critical);
167
+ }
168
+ if (updates.major !== undefined) {
169
+ sets.push('major_count = ?');
170
+ params.push(updates.major);
171
+ }
172
+ if (updates.minor !== undefined) {
173
+ sets.push('minor_count = ?');
174
+ params.push(updates.minor);
175
+ }
176
+ if (updates.suggestion !== undefined) {
177
+ sets.push('suggestion_count = ?');
178
+ params.push(updates.suggestion);
179
+ }
180
+ params.push(numStr, sprintId);
181
+ (0, retry_1.withTransaction)(db, () => {
182
+ db.prepare(`UPDATE reviews SET ${sets.join(', ')} WHERE review_num = ? AND sprint_id = ?`).run(...params);
183
+ });
184
+ return getReview(db, reviewNum, sprintId);
185
+ });
186
+ }
104
187
  // ─── Test Report API ───
105
188
  /**
106
189
  * Add a test report with explicit caller-provided 4-digit ID.
107
- * SAD-0031 Part A: No advisory lock, no task association.
190
+ * Wrapped with review:global advisory lock (AD-0006) for multi-process coordination.
191
+ * SAD-0031 Part A: no task association.
108
192
  * Duplicate validation via EXISTS on composite index (sprint_id, id).
109
193
  */
110
194
  function addTestReport(db, sprintId, testReportId, total, passed, failed, opts) {
@@ -112,24 +196,102 @@ function addTestReport(db, sprintId, testReportId, total, passed, failed, opts)
112
196
  // Validate ID format: /^\d{4}$/
113
197
  validateFourDigitId(testReportId, errors_1.TestReportBadIdError);
114
198
  const skipped = opts?.skipCount ?? 0;
115
- // Count consistency check (FS-SS-028-0008: WRN-TEST-REPORT-001)
199
+ // Count consistency check (FS-SS-028-0008: WRN-TEST-REPORT-001) — non-blocking
116
200
  if (passed + failed + skipped !== total) {
117
201
  console.warn(`WRN-TEST-REPORT-001: passed (${passed}) + failed (${failed}) + skipped (${skipped}) != total (${total})`);
118
202
  }
119
- const blocked = 0;
120
- const computeResult = failed > 0 ? 'FAIL' : 'PASS';
121
- const now = new Date().toISOString();
122
- const reportContent = opts?.content ?? '';
123
- // Duplicate check via EXISTS on composite index (sprint_id, id)
124
- const exists = db.prepare('SELECT EXISTS(SELECT 1 FROM test_reports WHERE sprint_id = ? AND id = ?) AS e').get(sprintId, testReportId);
125
- if (exists.e) {
126
- throw new errors_1.TestReportDuplicateIdError(testReportId, sprintId);
203
+ const owner = (0, locks_1.generateLockOwner)();
204
+ return (0, locks_1.withLock)(db, { name: 'review:global', owner }, () => {
205
+ // Duplicate check inside lock to prevent TOCTOU races
206
+ const exists = db.prepare('SELECT EXISTS(SELECT 1 FROM test_reports WHERE sprint_id = ? AND id = ?) AS e').get(sprintId, testReportId);
207
+ if (exists.e) {
208
+ throw new errors_1.TestReportDuplicateIdError(testReportId, sprintId);
209
+ }
210
+ const blocked = 0;
211
+ const computeResult = failed > 0 ? 'FAIL' : 'PASS';
212
+ const now = new Date().toISOString();
213
+ const reportContent = opts?.content ?? '';
214
+ (0, retry_1.withTransaction)(db, () => {
215
+ db.prepare(`INSERT INTO test_reports (id, sprint_id, total, passed, failed, skipped, blocked, result, command, duration_ms, report_path, module_id, status, content, pass_count, fail_count, skip_count, created_at, updated_at)
216
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(testReportId, sprintId, total, passed, failed, skipped, blocked, computeResult, opts?.command ?? null, opts?.duration ?? null, null, null, computeResult, reportContent, passed, failed, skipped, now, now);
217
+ });
218
+ return getTestReport(db, testReportId, sprintId);
219
+ });
220
+ }
221
+ /**
222
+ * Update an existing test report.
223
+ * Wrapped with review:global advisory lock (AD-0006).
224
+ *
225
+ * @param db - Database connection
226
+ * @param testReportId - Test report ID (4-digit zero-padded)
227
+ * @param sprintId - Sprint ID
228
+ * @param updates - Fields to update
229
+ * @returns Updated TestReport
230
+ * @throws error with ERR-TESTREPORT-004 if not found
231
+ */
232
+ function updateTestReport(db, testReportId, sprintId, updates) {
233
+ // Validate sprint and report exist (before lock to fail fast)
234
+ (0, sprint_1.resolveSprint)(db, sprintId);
235
+ const existing = db.prepare('SELECT * FROM test_reports WHERE id = ? AND sprint_id = ?').get(testReportId, sprintId);
236
+ if (!existing) {
237
+ reviewError('ERR-TESTREPORT-004', `Test report "${testReportId}" not found in sprint "${sprintId}"`, { testReportId, sprintId });
127
238
  }
128
- (0, retry_1.withTransaction)(db, () => {
129
- db.prepare(`INSERT INTO test_reports (id, sprint_id, total, passed, failed, skipped, blocked, result, command, duration_ms, report_path, module_id, status, content, pass_count, fail_count, skip_count, created_at, updated_at)
130
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(testReportId, sprintId, total, passed, failed, skipped, blocked, computeResult, opts?.command ?? null, opts?.duration ?? null, null, null, computeResult, reportContent, passed, failed, skipped, now, now);
239
+ // Check at least one update field
240
+ if (Object.keys(updates).length === 0) {
241
+ throw new errors_1.TestReportNoUpdateFieldsError();
242
+ }
243
+ const owner = (0, locks_1.generateLockOwner)();
244
+ return (0, locks_1.withLock)(db, { name: 'review:global', owner }, () => {
245
+ const now = new Date().toISOString();
246
+ const sets = ['updated_at = ?'];
247
+ const params = [now];
248
+ if (updates.total !== undefined) {
249
+ sets.push('total = ?');
250
+ params.push(updates.total);
251
+ }
252
+ if (updates.passed !== undefined) {
253
+ sets.push('passed = ?');
254
+ params.push(updates.passed);
255
+ }
256
+ if (updates.failed !== undefined) {
257
+ sets.push('failed = ?');
258
+ params.push(updates.failed);
259
+ }
260
+ if (updates.skipped !== undefined) {
261
+ sets.push('skipped = ?');
262
+ params.push(updates.skipped);
263
+ }
264
+ if (updates.command !== undefined) {
265
+ sets.push('command = ?');
266
+ params.push(updates.command);
267
+ }
268
+ if (updates.duration !== undefined) {
269
+ sets.push('duration_ms = ?');
270
+ params.push(updates.duration);
271
+ }
272
+ if (updates.content !== undefined) {
273
+ sets.push('content = ?');
274
+ params.push(updates.content);
275
+ }
276
+ // Recompute result and counts if totals changed
277
+ const newPassed = updates.passed ?? existing.passed;
278
+ const newFailed = updates.failed ?? existing.failed;
279
+ const newSkipped = updates.skipped ?? existing.skipped;
280
+ const computedResult = newFailed > 0 ? 'FAIL' : 'PASS';
281
+ sets.push('result = ?');
282
+ params.push(computedResult);
283
+ sets.push('pass_count = ?');
284
+ params.push(newPassed);
285
+ sets.push('fail_count = ?');
286
+ params.push(newFailed);
287
+ sets.push('skip_count = ?');
288
+ params.push(newSkipped);
289
+ params.push(testReportId, sprintId);
290
+ (0, retry_1.withTransaction)(db, () => {
291
+ db.prepare(`UPDATE test_reports SET ${sets.join(', ')} WHERE id = ? AND sprint_id = ?`).run(...params);
292
+ });
293
+ return getTestReport(db, testReportId, sprintId);
131
294
  });
132
- return getTestReport(db, testReportId, sprintId);
133
295
  }
134
296
  /**
135
297
  * List test reports. Task filter removed per SAD-0031 Part B.
@@ -1 +1 @@
1
- {"version":3,"file":"review-service.js","sourceRoot":"","sources":["../../src/services/review-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-service.js","sourceRoot":"","sources":["../../src/services/review-service.ts"],"names":[],"mappings":"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"}
@@ -31,8 +31,8 @@ const NEW_RELATION_TYPES = {
31
31
  divided_into: { from: ['TC'], to: ['TS'], cardinality: 'many_to_one' },
32
32
  fulfilled_by: { from: ['US'], to: ['FR', 'NFR'], cardinality: 'many_to_many' },
33
33
  fulfills: { from: ['FR', 'NFR'], to: ['US'], cardinality: 'many_to_many' },
34
- realized_by: { from: ['FR'], to: ['FS'], cardinality: 'many_to_many' },
35
- realizes: { from: ['FS'], to: ['FR'], cardinality: 'many_to_many' },
34
+ realized_by: { from: ['FR', 'NFR'], to: ['FS', 'NFS'], cardinality: 'many_to_many' },
35
+ realizes: { from: ['FS', 'NFS'], to: ['FR', 'NFR'], cardinality: 'many_to_many' },
36
36
  };
37
37
  /** 9 surviving relation types with UPDATED definitions (Phase 5) */
38
38
  const SURVIVING_UPDATES = {
@@ -40,8 +40,8 @@ const SURVIVING_UPDATES = {
40
40
  contains: { from: ['MDL'], to: ['US', 'FR', 'NFR'], cardinality: 'one_to_many' },
41
41
  covered_by: { from: ['FS', 'NFS'], to: ['SAD', 'AD', 'QA'], cardinality: 'many_to_many' },
42
42
  covers: { from: ['SAD', 'AD', 'QA'], to: ['FS', 'NFS'], cardinality: 'many_to_many' },
43
- implemented_by: { from: ['SAD', 'AD', 'QA'], to: ['SRC'], cardinality: 'many_to_many' },
44
- implements: { from: ['SRC'], to: ['SAD', 'AD', 'QA'], cardinality: 'many_to_many' },
43
+ implemented_by: { from: ['SAD', 'AD', 'QA', 'TC'], to: ['SRC'], cardinality: 'many_to_many' },
44
+ implements: { from: ['SRC'], to: ['SAD', 'AD', 'QA', 'TC'], cardinality: 'many_to_many' },
45
45
  verified_by: { from: ['FS', 'NFS'], to: ['TS'], cardinality: 'many_to_many' },
46
46
  verifies: { from: ['TS'], to: ['FS', 'NFS'], cardinality: 'many_to_many' },
47
47
  // depends_on: unchanged [MDL] → [MDL]; no update applied