specweave 1.0.579 → 1.0.581

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 (115) hide show
  1. package/dist/dashboard/assets/{index-C434W7yF.js → index-Dpn4T2Mx.js} +7 -7
  2. package/dist/dashboard/index.html +1 -1
  3. package/dist/src/core/hooks/LifecycleHookDispatcher.d.ts +6 -1
  4. package/dist/src/core/hooks/LifecycleHookDispatcher.d.ts.map +1 -1
  5. package/dist/src/core/hooks/LifecycleHookDispatcher.js +66 -8
  6. package/dist/src/core/hooks/LifecycleHookDispatcher.js.map +1 -1
  7. package/dist/src/core/increment/completion-validator.d.ts +18 -0
  8. package/dist/src/core/increment/completion-validator.d.ts.map +1 -1
  9. package/dist/src/core/increment/completion-validator.js +75 -0
  10. package/dist/src/core/increment/completion-validator.js.map +1 -1
  11. package/dist/src/core/increment/status-commands.d.ts.map +1 -1
  12. package/dist/src/core/increment/status-commands.js +16 -1
  13. package/dist/src/core/increment/status-commands.js.map +1 -1
  14. package/dist/src/core/reflect-nudge/aggregator.d.ts +33 -0
  15. package/dist/src/core/reflect-nudge/aggregator.d.ts.map +1 -0
  16. package/dist/src/core/reflect-nudge/aggregator.js +80 -0
  17. package/dist/src/core/reflect-nudge/aggregator.js.map +1 -0
  18. package/dist/src/core/reflect-nudge/eligibility.d.ts +27 -0
  19. package/dist/src/core/reflect-nudge/eligibility.d.ts.map +1 -0
  20. package/dist/src/core/reflect-nudge/eligibility.js +114 -0
  21. package/dist/src/core/reflect-nudge/eligibility.js.map +1 -0
  22. package/dist/src/core/reflect-nudge/index.d.ts +14 -0
  23. package/dist/src/core/reflect-nudge/index.d.ts.map +1 -0
  24. package/dist/src/core/reflect-nudge/index.js +14 -0
  25. package/dist/src/core/reflect-nudge/index.js.map +1 -0
  26. package/dist/src/core/reflect-nudge/interactive-prompt.d.ts +28 -0
  27. package/dist/src/core/reflect-nudge/interactive-prompt.d.ts.map +1 -0
  28. package/dist/src/core/reflect-nudge/interactive-prompt.js +52 -0
  29. package/dist/src/core/reflect-nudge/interactive-prompt.js.map +1 -0
  30. package/dist/src/core/reflect-nudge/prompt-renderer.d.ts +23 -0
  31. package/dist/src/core/reflect-nudge/prompt-renderer.d.ts.map +1 -0
  32. package/dist/src/core/reflect-nudge/prompt-renderer.js +26 -0
  33. package/dist/src/core/reflect-nudge/prompt-renderer.js.map +1 -0
  34. package/dist/src/core/reflect-nudge/session-end-nudge.d.ts +31 -0
  35. package/dist/src/core/reflect-nudge/session-end-nudge.d.ts.map +1 -0
  36. package/dist/src/core/reflect-nudge/session-end-nudge.js +44 -0
  37. package/dist/src/core/reflect-nudge/session-end-nudge.js.map +1 -0
  38. package/dist/src/core/reflection/reflect-handler.d.ts +2 -0
  39. package/dist/src/core/reflection/reflect-handler.d.ts.map +1 -1
  40. package/dist/src/core/reflection/reflect-handler.js +4 -0
  41. package/dist/src/core/reflection/reflect-handler.js.map +1 -1
  42. package/dist/src/core/rubric/rubric-evaluator.d.ts +15 -0
  43. package/dist/src/core/rubric/rubric-evaluator.d.ts.map +1 -1
  44. package/dist/src/core/rubric/rubric-evaluator.js +59 -0
  45. package/dist/src/core/rubric/rubric-evaluator.js.map +1 -1
  46. package/dist/src/core/skill-attribution.d.ts +78 -0
  47. package/dist/src/core/skill-attribution.d.ts.map +1 -0
  48. package/dist/src/core/skill-attribution.js +168 -0
  49. package/dist/src/core/skill-attribution.js.map +1 -0
  50. package/dist/src/core/skill-refine/aggregator.d.ts +36 -0
  51. package/dist/src/core/skill-refine/aggregator.d.ts.map +1 -0
  52. package/dist/src/core/skill-refine/aggregator.js +58 -0
  53. package/dist/src/core/skill-refine/aggregator.js.map +1 -0
  54. package/dist/src/core/skill-refine/apply.d.ts +48 -0
  55. package/dist/src/core/skill-refine/apply.d.ts.map +1 -0
  56. package/dist/src/core/skill-refine/apply.js +97 -0
  57. package/dist/src/core/skill-refine/apply.js.map +1 -0
  58. package/dist/src/core/skill-refine/approval.d.ts +71 -0
  59. package/dist/src/core/skill-refine/approval.d.ts.map +1 -0
  60. package/dist/src/core/skill-refine/approval.js +113 -0
  61. package/dist/src/core/skill-refine/approval.js.map +1 -0
  62. package/dist/src/core/skill-refine/haiku-diff.d.ts +66 -0
  63. package/dist/src/core/skill-refine/haiku-diff.d.ts.map +1 -0
  64. package/dist/src/core/skill-refine/haiku-diff.js +111 -0
  65. package/dist/src/core/skill-refine/haiku-diff.js.map +1 -0
  66. package/dist/src/core/skill-refine/ledger.d.ts +34 -0
  67. package/dist/src/core/skill-refine/ledger.d.ts.map +1 -0
  68. package/dist/src/core/skill-refine/ledger.js +81 -0
  69. package/dist/src/core/skill-refine/ledger.js.map +1 -0
  70. package/dist/src/core/skill-signal-emit.d.ts +46 -0
  71. package/dist/src/core/skill-signal-emit.d.ts.map +1 -0
  72. package/dist/src/core/skill-signal-emit.js +59 -0
  73. package/dist/src/core/skill-signal-emit.js.map +1 -0
  74. package/dist/src/core/skill-signals/index.d.ts +9 -0
  75. package/dist/src/core/skill-signals/index.d.ts.map +1 -0
  76. package/dist/src/core/skill-signals/index.js +9 -0
  77. package/dist/src/core/skill-signals/index.js.map +1 -0
  78. package/dist/src/core/skill-signals/reader.d.ts +30 -0
  79. package/dist/src/core/skill-signals/reader.d.ts.map +1 -0
  80. package/dist/src/core/skill-signals/reader.js +102 -0
  81. package/dist/src/core/skill-signals/reader.js.map +1 -0
  82. package/dist/src/core/skill-signals/writer.d.ts +34 -0
  83. package/dist/src/core/skill-signals/writer.d.ts.map +1 -0
  84. package/dist/src/core/skill-signals/writer.js +62 -0
  85. package/dist/src/core/skill-signals/writer.js.map +1 -0
  86. package/dist/src/core/skills/skill-judge.d.ts +8 -0
  87. package/dist/src/core/skills/skill-judge.d.ts.map +1 -1
  88. package/dist/src/core/skills/skill-judge.js +55 -0
  89. package/dist/src/core/skills/skill-judge.js.map +1 -1
  90. package/dist/src/skills/reflect-status.d.ts +23 -0
  91. package/dist/src/skills/reflect-status.d.ts.map +1 -0
  92. package/dist/src/skills/reflect-status.js +55 -0
  93. package/dist/src/skills/reflect-status.js.map +1 -0
  94. package/dist/src/skills/skill-refine.d.ts +81 -0
  95. package/dist/src/skills/skill-refine.d.ts.map +1 -0
  96. package/dist/src/skills/skill-refine.js +226 -0
  97. package/dist/src/skills/skill-refine.js.map +1 -0
  98. package/dist/src/sync/sync-coordinator.d.ts +14 -4
  99. package/dist/src/sync/sync-coordinator.d.ts.map +1 -1
  100. package/dist/src/sync/sync-coordinator.js +100 -38
  101. package/dist/src/sync/sync-coordinator.js.map +1 -1
  102. package/dist/src/types/skill-refinements.d.ts +75 -0
  103. package/dist/src/types/skill-refinements.d.ts.map +1 -0
  104. package/dist/src/types/skill-refinements.js +43 -0
  105. package/dist/src/types/skill-refinements.js.map +1 -0
  106. package/dist/src/types/skill-signals.d.ts +200 -0
  107. package/dist/src/types/skill-signals.d.ts.map +1 -0
  108. package/dist/src/types/skill-signals.js +115 -0
  109. package/dist/src/types/skill-signals.js.map +1 -0
  110. package/package.json +2 -2
  111. package/plugins/specweave/commands/reflect.md +48 -0
  112. package/plugins/specweave/skills/code-reviewer/SKILL.md +4 -0
  113. package/plugins/specweave/skills/judge-llm/SKILL.md +4 -0
  114. package/plugins/specweave/skills/skill-gen/SKILL.md +8 -0
  115. package/plugins/specweave/skills/skill-refine/SKILL.md +96 -0
@@ -74,19 +74,21 @@ export class SyncCoordinator {
74
74
  * Close JIRA issues for completed user stories
75
75
  *
76
76
  * Transitions JIRA issues to "Done" status when increment is completed.
77
- * Reads issue references from user story frontmatter (external.jira.issue_key).
77
+ * Reads issue references from four fallback sources (0696 hotfix):
78
+ * 1. per-US frontmatter `external_tools.jira.key`
79
+ * 2. per-US `external_id`
80
+ * 3. `metadata.jira.issue` (legacy)
81
+ * 4. `metadata.externalLinks.jira.epicKey` (current standard)
78
82
  *
79
83
  * @param config - Project config with JIRA settings
84
+ * @param errorsOut - Optional sink for per-issue error messages (0696)
80
85
  * @returns Number of closed JIRA issues
81
86
  */
82
- async closeJiraIssuesForUserStories(config) {
87
+ async closeJiraIssuesForUserStories(config, errorsOut) {
83
88
  let closedCount = 0;
84
89
  try {
85
90
  const userStories = await this.loadUserStoriesForIncrement();
86
91
  this.logger.log(`📚 Found ${userStories.length} user stor${userStories.length === 1 ? 'y' : 'ies'} for JIRA closure`);
87
- if (userStories.length === 0) {
88
- return 0;
89
- }
90
92
  // Get JIRA config - v1.0.357: check issueTracker.domain as primary, sync.jira as fallback
91
93
  const jiraConfig = config.sync?.jira;
92
94
  const domain = jiraConfig?.domain
@@ -103,37 +105,64 @@ export class SyncCoordinator {
103
105
  // Target status for completion (configurable via statusSync.mappings.jira.completed)
104
106
  const syncConfigExt = config.sync;
105
107
  const targetStatus = syncConfigExt?.statusSync?.mappings?.jira?.completed || 'Done';
106
- // v1.0.357: Also check metadata.json for JIRA key (set by auto-creator)
108
+ // 0696 hotfix: read metadata.json ONCE, extract both legacy and externalLinks JIRA keys
107
109
  let metadataJiraKey;
110
+ let externalLinksJiraKey;
108
111
  try {
109
112
  const metadataFile = path.join(this.projectRoot, '.specweave/increments', this.incrementId, 'metadata.json');
110
113
  if (existsSync(metadataFile)) {
111
114
  const metadataContent = await fs.readFile(metadataFile, 'utf-8');
112
115
  const metadata = JSON.parse(metadataContent);
113
116
  metadataJiraKey = metadata.jira?.issue;
117
+ externalLinksJiraKey = metadata.externalLinks?.jira?.epicKey
118
+ || metadata.externalLinks?.jira?.issueKey;
114
119
  }
115
120
  }
116
121
  catch {
117
122
  // Ignore metadata read errors
118
123
  }
124
+ // 0696 hotfix: Collect candidate keys from all four sources, dedup, iterate.
125
+ // This covers both per-US and epic-only increments.
126
+ const candidates = [];
127
+ const seen = new Set();
128
+ const pushKey = (rawKey, usId) => {
129
+ if (!rawKey)
130
+ return;
131
+ const key = String(rawKey).trim();
132
+ if (!key || !key.includes('-'))
133
+ return;
134
+ if (seen.has(key))
135
+ return;
136
+ seen.add(key);
137
+ candidates.push({ key, usId });
138
+ };
119
139
  for (const usFile of userStories) {
140
+ pushKey(usFile.external_tools?.jira?.key, usFile.id);
141
+ pushKey(usFile.external_id, usFile.id);
142
+ }
143
+ if (metadataJiraKey)
144
+ pushKey(metadataJiraKey, `metadata.jira.issue`);
145
+ if (externalLinksJiraKey)
146
+ pushKey(externalLinksJiraKey, `metadata.externalLinks.jira`);
147
+ if (candidates.length === 0) {
148
+ const msg = '⚠️ JIRA enabled but no issue key resolvable for increment — skipping closure';
149
+ this.logger.log(msg);
150
+ if (errorsOut)
151
+ errorsOut.push('JIRA enabled but no issue key resolvable for increment');
152
+ return 0;
153
+ }
154
+ for (const { key: jiraKey, usId } of candidates) {
120
155
  try {
121
- // Check if US has JIRA reference in frontmatter, or fall back to metadata
122
- const jiraKey = usFile.external_tools?.jira?.key || usFile.external_id || metadataJiraKey;
123
- if (!jiraKey || !String(jiraKey).includes('-')) {
124
- this.logger.log(` ⏭️ ${usFile.id} - No JIRA issue reference`);
125
- continue;
126
- }
127
156
  // Get current issue status
128
157
  const issue = await jiraClient.getIssue(jiraKey);
129
158
  if (!issue) {
130
- this.logger.log(` ⚠️ ${usFile.id} - JIRA issue ${jiraKey} not found`);
159
+ this.logger.log(` ⚠️ ${usId} - JIRA issue ${jiraKey} not found`);
131
160
  continue;
132
161
  }
133
162
  // Check if already in target status (status is nested in fields)
134
163
  const currentStatus = issue.fields?.status?.name || '';
135
164
  if (currentStatus.toLowerCase() === targetStatus.toLowerCase()) {
136
- this.logger.log(` ⏭️ ${usFile.id} - ${jiraKey} already ${targetStatus}`);
165
+ this.logger.log(` ⏭️ JIRA ${jiraKey} already ${targetStatus}`);
137
166
  continue;
138
167
  }
139
168
  // Transition to Done
@@ -146,7 +175,7 @@ export class SyncCoordinator {
146
175
  status: targetStatus
147
176
  });
148
177
  this.metrics.recordClosure('jira', jiraKey, true);
149
- this.logger.log(` ✅ Transitioned ${jiraKey}`);
178
+ this.logger.log(` ✅ JIRA ${jiraKey} transitioned to ${targetStatus}`);
150
179
  closedCount++;
151
180
  }
152
181
  catch (updateError) {
@@ -155,7 +184,11 @@ export class SyncCoordinator {
155
184
  }
156
185
  }
157
186
  catch (error) {
158
- this.logger.error(` ❌ Failed to close JIRA issue for ${usFile.id}:`, error);
187
+ const msg = error instanceof Error ? error.message : String(error);
188
+ this.logger.error(` ❌ Failed to close JIRA issue ${jiraKey} (${usId}):`, error);
189
+ // 0696 hotfix: propagate the error into the caller's accumulator
190
+ if (errorsOut)
191
+ errorsOut.push(`JIRA ${jiraKey}: ${msg}`);
159
192
  }
160
193
  }
161
194
  return closedCount;
@@ -169,19 +202,21 @@ export class SyncCoordinator {
169
202
  * Close ADO work items for completed user stories
170
203
  *
171
204
  * Transitions ADO work items to "Closed" state when increment is completed.
172
- * Reads work item references from user story frontmatter (external.ado.id).
205
+ * Reads work item references from four fallback sources (0696 hotfix):
206
+ * 1. per-US frontmatter `external_tools.ado.id`
207
+ * 2. per-US `external_id`
208
+ * 3. `metadata.external_tools.ado.id` / `metadata.ado.work_item_id` (legacy)
209
+ * 4. `metadata.externalLinks.ado.workItemId` / `.featureId` (current standard)
173
210
  *
174
211
  * @param config - Project config with ADO settings
212
+ * @param errorsOut - Optional sink for per-item error messages (0696)
175
213
  * @returns Number of closed ADO work items
176
214
  */
177
- async closeAdoWorkItemsForUserStories(config) {
215
+ async closeAdoWorkItemsForUserStories(config, errorsOut) {
178
216
  let closedCount = 0;
179
217
  try {
180
218
  const userStories = await this.loadUserStoriesForIncrement();
181
219
  this.logger.log(`📚 Found ${userStories.length} user stor${userStories.length === 1 ? 'y' : 'ies'} for ADO closure`);
182
- if (userStories.length === 0) {
183
- return 0;
184
- }
185
220
  // Get ADO config
186
221
  const adoConfig = config.sync?.ado;
187
222
  if (!adoConfig?.organization || !adoConfig?.project) {
@@ -221,30 +256,51 @@ export class SyncCoordinator {
221
256
  targetState = 'Closed';
222
257
  }
223
258
  }
224
- // Read metadata.json once for fallback resolution
259
+ // 0696 hotfix: Read metadata.json once, extract legacy + externalLinks IDs
225
260
  let metadataAdoId;
261
+ let externalLinksAdoId;
226
262
  try {
227
263
  const metadataPath = path.join(this.projectRoot, '.specweave/increments', this.incrementId, 'metadata.json');
228
264
  if (existsSync(metadataPath)) {
229
265
  const metadata = JSON.parse(readFileSync(metadataPath, 'utf-8'));
230
266
  metadataAdoId = metadata?.external_tools?.ado?.id || metadata?.ado?.work_item_id;
267
+ externalLinksAdoId = metadata?.externalLinks?.ado?.workItemId
268
+ ?? metadata?.externalLinks?.ado?.featureId;
269
+ if (externalLinksAdoId !== undefined && externalLinksAdoId !== null) {
270
+ externalLinksAdoId = String(externalLinksAdoId);
271
+ }
231
272
  }
232
273
  }
233
274
  catch {
234
275
  // metadata read failure is not fatal
235
276
  }
236
- // Collect work item IDs to fetch (3-layer resolution: frontmatter → external_id → metadata.json)
277
+ // 0696 hotfix: Collect candidate IDs (4-layer resolution), dedup, iterate.
237
278
  const workItemIds = [];
279
+ const seenAdo = new Set();
280
+ const pushAdo = (rawId, usId) => {
281
+ if (rawId === undefined || rawId === null || rawId === '')
282
+ return;
283
+ const n = Number(rawId);
284
+ if (!Number.isFinite(n) || isNaN(n))
285
+ return;
286
+ if (seenAdo.has(n))
287
+ return;
288
+ seenAdo.add(n);
289
+ workItemIds.push({ id: n, usId });
290
+ };
238
291
  for (const usFile of userStories) {
239
- const adoId = usFile.external_tools?.ado?.id || usFile.external_id || metadataAdoId;
240
- if (adoId && !isNaN(Number(adoId))) {
241
- workItemIds.push({ id: Number(adoId), usId: usFile.id });
242
- }
243
- else {
244
- this.logger.log(` ⏭️ ${usFile.id} - No ADO work item reference`);
245
- }
292
+ pushAdo(usFile.external_tools?.ado?.id, usFile.id);
293
+ pushAdo(usFile.external_id, usFile.id);
246
294
  }
295
+ if (metadataAdoId)
296
+ pushAdo(metadataAdoId, 'metadata.ado');
297
+ if (externalLinksAdoId)
298
+ pushAdo(externalLinksAdoId, 'metadata.externalLinks.ado');
247
299
  if (workItemIds.length === 0) {
300
+ const msg = '⚠️ ADO enabled but no work item ID resolvable for increment — skipping closure';
301
+ this.logger.log(msg);
302
+ if (errorsOut)
303
+ errorsOut.push('ADO enabled but no work item ID resolvable for increment');
248
304
  return 0;
249
305
  }
250
306
  // Fetch work items in batch (ADO supports batch retrieval)
@@ -277,7 +333,7 @@ export class SyncCoordinator {
277
333
  state: targetState
278
334
  });
279
335
  this.metrics.recordClosure('ado', workItemId, true);
280
- this.logger.log(` ✅ Closed #${workItemId}`);
336
+ this.logger.log(` ✅ ADO #${workItemId} transitioned to ${targetState}`);
281
337
  closedCount++;
282
338
  }
283
339
  catch (updateError) {
@@ -286,7 +342,11 @@ export class SyncCoordinator {
286
342
  }
287
343
  }
288
344
  catch (error) {
289
- this.logger.error(` ❌ Failed to close ADO work item for ${usId}:`, error);
345
+ const msg = error instanceof Error ? error.message : String(error);
346
+ this.logger.error(` ❌ Failed to close ADO work item #${workItemId} (${usId}):`, error);
347
+ // 0696 hotfix: propagate the error into the caller's accumulator
348
+ if (errorsOut)
349
+ errorsOut.push(`ADO #${workItemId}: ${msg}`);
290
350
  }
291
351
  }
292
352
  return closedCount;
@@ -382,33 +442,35 @@ export class SyncCoordinator {
382
442
  this.logger.log('\n🔹 GitHub: Handled by GitHubFeatureSync pipeline (skipping SyncCoordinator path)');
383
443
  }
384
444
  // ========================================================================
385
- // JIRA Closure
445
+ // JIRA Closure — 0696: pass result.errors so per-issue errors propagate
386
446
  // ========================================================================
387
447
  if (jiraEnabled) {
388
448
  this.logger.log('\n🔹 JIRA: Closing issues for completed user stories...');
389
449
  try {
390
- const jiraClosed = await this.closeJiraIssuesForUserStories(config);
450
+ const jiraClosed = await this.closeJiraIssuesForUserStories(config, result.errors);
391
451
  totalClosed += jiraClosed;
392
452
  this.logger.log(` ✅ Closed ${jiraClosed} JIRA issue(s)`);
393
453
  }
394
454
  catch (error) {
455
+ const msg = error instanceof Error ? error.message : String(error);
395
456
  this.logger.error('⚠️ JIRA issue closure failed:', error);
396
- result.errors.push(`JIRA issue closure error: ${error}`);
457
+ result.errors.push(`JIRA issue closure error: ${msg}`);
397
458
  }
398
459
  }
399
460
  // ========================================================================
400
- // ADO Closure
461
+ // ADO Closure — 0696: pass result.errors so per-item errors propagate
401
462
  // ========================================================================
402
463
  if (adoEnabled) {
403
464
  this.logger.log('\n🔹 ADO: Closing work items for completed user stories...');
404
465
  try {
405
- const adoClosed = await this.closeAdoWorkItemsForUserStories(config);
466
+ const adoClosed = await this.closeAdoWorkItemsForUserStories(config, result.errors);
406
467
  totalClosed += adoClosed;
407
468
  this.logger.log(` ✅ Closed ${adoClosed} ADO work item(s)`);
408
469
  }
409
470
  catch (error) {
471
+ const msg = error instanceof Error ? error.message : String(error);
410
472
  this.logger.error('⚠️ ADO work item closure failed:', error);
411
- result.errors.push(`ADO work item closure error: ${error}`);
473
+ result.errors.push(`ADO work item closure error: ${msg}`);
412
474
  }
413
475
  }
414
476
  result.success = result.errors.length === 0;
@@ -1 +1 @@
1
- {"version":3,"file":"sync-coordinator.js","sourceRoot":"","sources":["../../../src/sync/sync-coordinator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-coordinator.js","sourceRoot":"","sources":["../../../src/sync/sync-coordinator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Skill refinements ledger — append-only record of applied/rejected
3
+ * refinements targeting a given skill. Stored at
4
+ * `.specweave/state/skill-refinements.json`.
5
+ *
6
+ * Shape (from 0671 plan.md §"Data Schemas"):
7
+ * ```
8
+ * {
9
+ * "refinements": [
10
+ * {
11
+ * "id": "ref_<hex>",
12
+ * "targetSkill": "<slug>",
13
+ * "author": "<email>",
14
+ * "signalIds": ["sig_..."],
15
+ * "diffSha": "<git commit SHA | ''>",
16
+ * "rationale": "<string>",
17
+ * "appliedAt": "<ISO-8601>",
18
+ * "status": "applied" | "rejected",
19
+ * "rejectionReason"?: "<string>"
20
+ * }
21
+ * ]
22
+ * }
23
+ * ```
24
+ *
25
+ * @module types/skill-refinements
26
+ */
27
+ import { z } from 'zod';
28
+ export type RefinementStatus = 'applied' | 'rejected';
29
+ export interface RefinementLedgerEntry {
30
+ id: string;
31
+ targetSkill: string;
32
+ author: string;
33
+ signalIds: string[];
34
+ /** Git commit SHA for applied entries; empty string for rejected entries. */
35
+ diffSha: string;
36
+ rationale: string;
37
+ appliedAt: string;
38
+ status: RefinementStatus;
39
+ rejectionReason?: string;
40
+ }
41
+ export interface RefinementLedger {
42
+ refinements: RefinementLedgerEntry[];
43
+ }
44
+ export declare const RefinementLedgerEntrySchema: z.ZodObject<{
45
+ id: z.ZodString;
46
+ targetSkill: z.ZodString;
47
+ author: z.ZodString;
48
+ signalIds: z.ZodArray<z.ZodString>;
49
+ diffSha: z.ZodString;
50
+ rationale: z.ZodString;
51
+ appliedAt: z.ZodString;
52
+ status: z.ZodEnum<{
53
+ rejected: "rejected";
54
+ applied: "applied";
55
+ }>;
56
+ rejectionReason: z.ZodOptional<z.ZodString>;
57
+ }, z.core.$strip>;
58
+ export declare const RefinementLedgerSchema: z.ZodObject<{
59
+ refinements: z.ZodArray<z.ZodObject<{
60
+ id: z.ZodString;
61
+ targetSkill: z.ZodString;
62
+ author: z.ZodString;
63
+ signalIds: z.ZodArray<z.ZodString>;
64
+ diffSha: z.ZodString;
65
+ rationale: z.ZodString;
66
+ appliedAt: z.ZodString;
67
+ status: z.ZodEnum<{
68
+ rejected: "rejected";
69
+ applied: "applied";
70
+ }>;
71
+ rejectionReason: z.ZodOptional<z.ZodString>;
72
+ }, z.core.$strip>>;
73
+ }, z.core.$strip>;
74
+ export declare const EMPTY_LEDGER: RefinementLedger;
75
+ //# sourceMappingURL=skill-refinements.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-refinements.d.ts","sourceRoot":"","sources":["../../../src/types/skill-refinements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,qBAAqB;IACpC,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,gBAAgB,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,qBAAqB,EAAE,CAAC;CACtC;AAED,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;iBAUtC,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;iBAEjC,CAAC;AAEH,eAAO,MAAM,YAAY,EAAE,gBAAsC,CAAC"}
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Skill refinements ledger — append-only record of applied/rejected
3
+ * refinements targeting a given skill. Stored at
4
+ * `.specweave/state/skill-refinements.json`.
5
+ *
6
+ * Shape (from 0671 plan.md §"Data Schemas"):
7
+ * ```
8
+ * {
9
+ * "refinements": [
10
+ * {
11
+ * "id": "ref_<hex>",
12
+ * "targetSkill": "<slug>",
13
+ * "author": "<email>",
14
+ * "signalIds": ["sig_..."],
15
+ * "diffSha": "<git commit SHA | ''>",
16
+ * "rationale": "<string>",
17
+ * "appliedAt": "<ISO-8601>",
18
+ * "status": "applied" | "rejected",
19
+ * "rejectionReason"?: "<string>"
20
+ * }
21
+ * ]
22
+ * }
23
+ * ```
24
+ *
25
+ * @module types/skill-refinements
26
+ */
27
+ import { z } from 'zod';
28
+ export const RefinementLedgerEntrySchema = z.object({
29
+ id: z.string(),
30
+ targetSkill: z.string(),
31
+ author: z.string(),
32
+ signalIds: z.array(z.string()),
33
+ diffSha: z.string(),
34
+ rationale: z.string(),
35
+ appliedAt: z.string(),
36
+ status: z.enum(['applied', 'rejected']),
37
+ rejectionReason: z.string().optional(),
38
+ });
39
+ export const RefinementLedgerSchema = z.object({
40
+ refinements: z.array(RefinementLedgerEntrySchema),
41
+ });
42
+ export const EMPTY_LEDGER = { refinements: [] };
43
+ //# sourceMappingURL=skill-refinements.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-refinements.js","sourceRoot":"","sources":["../../../src/types/skill-refinements.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqBxB,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC9B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACvC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC;CAClD,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,YAAY,GAAqB,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC"}