@principles/core 1.273.1 → 1.274.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (74) hide show
  1. package/dist/index.d.ts +3 -3
  2. package/dist/index.js +3 -3
  3. package/dist/runtime-v2/__tests__/pain-signal-observability.test.js +93 -0
  4. package/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
  5. package/dist/runtime-v2/index.d.ts +2 -0
  6. package/dist/runtime-v2/index.d.ts.map +1 -1
  7. package/dist/runtime-v2/index.js.map +1 -1
  8. package/dist/runtime-v2/pain-signal-bridge.d.ts +8 -1
  9. package/dist/runtime-v2/pain-signal-bridge.d.ts.map +1 -1
  10. package/dist/runtime-v2/pain-signal-bridge.js.map +1 -1
  11. package/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
  12. package/dist/runtime-v2/pain-signal-observability.js +25 -10
  13. package/dist/runtime-v2/pain-signal-observability.js.map +1 -1
  14. package/package.json +1 -2
  15. package/dist/adapters/__tests__/code-review-pain-adapter.test.d.ts +0 -2
  16. package/dist/adapters/__tests__/code-review-pain-adapter.test.d.ts.map +0 -1
  17. package/dist/adapters/__tests__/code-review-pain-adapter.test.js +0 -346
  18. package/dist/adapters/__tests__/code-review-pain-adapter.test.js.map +0 -1
  19. package/dist/adapters/__tests__/openclaw-pain-adapter.test.d.ts +0 -2
  20. package/dist/adapters/__tests__/openclaw-pain-adapter.test.d.ts.map +0 -1
  21. package/dist/adapters/__tests__/openclaw-pain-adapter.test.js +0 -290
  22. package/dist/adapters/__tests__/openclaw-pain-adapter.test.js.map +0 -1
  23. package/dist/adapters/__tests__/writing-pain-adapter.test.d.ts +0 -2
  24. package/dist/adapters/__tests__/writing-pain-adapter.test.d.ts.map +0 -1
  25. package/dist/adapters/__tests__/writing-pain-adapter.test.js +0 -239
  26. package/dist/adapters/__tests__/writing-pain-adapter.test.js.map +0 -1
  27. package/dist/adapters/code-review/code-review-pain-adapter.d.ts +0 -13
  28. package/dist/adapters/code-review/code-review-pain-adapter.d.ts.map +0 -1
  29. package/dist/adapters/code-review/code-review-pain-adapter.js +0 -139
  30. package/dist/adapters/code-review/code-review-pain-adapter.js.map +0 -1
  31. package/dist/adapters/code-review/index.d.ts +0 -6
  32. package/dist/adapters/code-review/index.d.ts.map +0 -1
  33. package/dist/adapters/code-review/index.js +0 -2
  34. package/dist/adapters/code-review/index.js.map +0 -1
  35. package/dist/adapters/code-review/review-event-types.d.ts +0 -54
  36. package/dist/adapters/code-review/review-event-types.d.ts.map +0 -1
  37. package/dist/adapters/code-review/review-event-types.js +0 -8
  38. package/dist/adapters/code-review/review-event-types.js.map +0 -1
  39. package/dist/adapters/coding/index.d.ts +0 -6
  40. package/dist/adapters/coding/index.d.ts.map +0 -1
  41. package/dist/adapters/coding/index.js +0 -5
  42. package/dist/adapters/coding/index.js.map +0 -1
  43. package/dist/adapters/coding/openclaw-event-types.d.ts +0 -26
  44. package/dist/adapters/coding/openclaw-event-types.d.ts.map +0 -1
  45. package/dist/adapters/coding/openclaw-event-types.js +0 -9
  46. package/dist/adapters/coding/openclaw-event-types.js.map +0 -1
  47. package/dist/adapters/coding/openclaw-pain-adapter.d.ts +0 -27
  48. package/dist/adapters/coding/openclaw-pain-adapter.d.ts.map +0 -1
  49. package/dist/adapters/coding/openclaw-pain-adapter.js +0 -102
  50. package/dist/adapters/coding/openclaw-pain-adapter.js.map +0 -1
  51. package/dist/adapters/writing/index.d.ts +0 -6
  52. package/dist/adapters/writing/index.d.ts.map +0 -1
  53. package/dist/adapters/writing/index.js +0 -5
  54. package/dist/adapters/writing/index.js.map +0 -1
  55. package/dist/adapters/writing/writing-pain-adapter.d.ts +0 -22
  56. package/dist/adapters/writing/writing-pain-adapter.d.ts.map +0 -1
  57. package/dist/adapters/writing/writing-pain-adapter.js +0 -62
  58. package/dist/adapters/writing/writing-pain-adapter.js.map +0 -1
  59. package/dist/adapters/writing/writing-types.d.ts +0 -34
  60. package/dist/adapters/writing/writing-types.d.ts.map +0 -1
  61. package/dist/adapters/writing/writing-types.js +0 -9
  62. package/dist/adapters/writing/writing-types.js.map +0 -1
  63. package/dist/pain-signal-adapter.d.ts +0 -37
  64. package/dist/pain-signal-adapter.d.ts.map +0 -1
  65. package/dist/pain-signal-adapter.js +0 -2
  66. package/dist/pain-signal-adapter.js.map +0 -1
  67. package/dist/pain-signal.d.ts +0 -16
  68. package/dist/pain-signal.d.ts.map +0 -1
  69. package/dist/pain-signal.js +0 -15
  70. package/dist/pain-signal.js.map +0 -1
  71. package/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts +0 -2
  72. package/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts.map +0 -1
  73. package/dist/runtime-v2/__tests__/pain-signal-unification.test.js +0 -150
  74. package/dist/runtime-v2/__tests__/pain-signal-unification.test.js.map +0 -1
@@ -138,6 +138,7 @@ function ensureTrajectorySchema(db) {
138
138
  text TEXT,
139
139
  canonical_pain_id TEXT,
140
140
  runtime_task_id TEXT,
141
+ host_kind TEXT,
141
142
  created_at TEXT NOT NULL
142
143
  );
143
144
  CREATE TABLE IF NOT EXISTS gate_blocks (
@@ -252,6 +253,9 @@ function ensureTrajectorySchema(db) {
252
253
  for (const col of [
253
254
  { name: 'canonical_pain_id', type: 'TEXT' },
254
255
  { name: 'runtime_task_id', type: 'TEXT' },
256
+ // PRI-640: host attribution — observability metadata only, orthogonal to
257
+ // `origin` (evidence semantics) and excluded from canonical pain identity.
258
+ { name: 'host_kind', type: 'TEXT' },
255
259
  ]) {
256
260
  try {
257
261
  db.exec(`ALTER TABLE pain_events ADD COLUMN ${col.name} ${col.type}`);
@@ -325,6 +329,7 @@ function ensureTrajectorySchema(db) {
325
329
  `);
326
330
  return { tables, warnings };
327
331
  }
332
+ /** PRI-640: id of the pain_events row (undefined when the dedup row could not be re-read); warnings carry host_kind conflict evidence. */
328
333
  function recordTrajectoryPainEvent(opts) {
329
334
  const { stateDir, data, timestamp, workspaceDir, canonicalPainId, runtimeTaskId } = opts;
330
335
  const dbPath = nodePath.join(stateDir, 'trajectory.db');
@@ -352,14 +357,15 @@ function recordTrajectoryPainEvent(opts) {
352
357
  // Try INSERT; on UNIQUE constraint violation for canonical_pain_id, do UPDATE instead.
353
358
  // SQLite UPSERT (ON CONFLICT) does not support partial unique indexes, so we
354
359
  // handle the conflict manually.
360
+ const warnings = [];
355
361
  try {
356
362
  const result = db.prepare(`
357
363
  INSERT INTO pain_events (
358
364
  session_id, source, score, reason, severity, origin, confidence, text, created_at,
359
- canonical_pain_id, runtime_task_id
360
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
361
- `).run(sessionId, data.source, data.score ?? 80, sanitizeString(data.reason ?? '', workspaceDir), severityFromScore(data.score ?? 80), data.source === 'manual' ? 'user_manual' : 'system_infer', 1, sanitizeString(data.reason ?? '', workspaceDir), timestamp, canonicalPainId ?? null, runtimeTaskId ?? null);
362
- return Number(result.lastInsertRowid);
365
+ canonical_pain_id, runtime_task_id, host_kind
366
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
367
+ `).run(sessionId, data.source, data.score ?? 80, sanitizeString(data.reason ?? '', workspaceDir), severityFromScore(data.score ?? 80), data.source === 'manual' ? 'user_manual' : 'system_infer', 1, sanitizeString(data.reason ?? '', workspaceDir), timestamp, canonicalPainId ?? null, runtimeTaskId ?? null, data.hostKind ?? null);
368
+ return { id: Number(result.lastInsertRowid), warnings };
363
369
  }
364
370
  catch (insertErr) {
365
371
  // If UNIQUE constraint violation on canonical_pain_id, upsert manually
@@ -369,15 +375,22 @@ function recordTrajectoryPainEvent(opts) {
369
375
  insertErr.message.includes('canonical_pain_id')) {
370
376
  db.prepare(`
371
377
  UPDATE pain_events
372
- SET runtime_task_id = COALESCE(?, runtime_task_id)
378
+ SET runtime_task_id = COALESCE(?, runtime_task_id),
379
+ host_kind = COALESCE(host_kind, ?)
373
380
  WHERE canonical_pain_id = ?
374
- `).run(runtimeTaskId ?? null, canonicalPainId);
375
- const rawRow = db.prepare('SELECT id FROM pain_events WHERE canonical_pain_id = ?').get(canonicalPainId);
381
+ `).run(runtimeTaskId ?? null, data.hostKind ?? null, canonicalPainId);
382
+ const rawRow = db.prepare('SELECT id, host_kind FROM pain_events WHERE canonical_pain_id = ?').get(canonicalPainId);
376
383
  // Runtime Contract #1/#2: validate DB row instead of `as` cast
377
384
  if (rawRow && typeof rawRow === 'object' && Object.hasOwn(rawRow, 'id') && typeof rawRow.id === 'number') {
378
- return rawRow.id;
385
+ // PRI-640 §16: keep the first durable host attribution; never overwrite.
386
+ // A differing re-attempt is surfaced as a bounded warning (rc-9-no-silent-fallback).
387
+ const durableHostKind = Object.getOwnPropertyDescriptor(rawRow, 'host_kind')?.value;
388
+ if (data.hostKind && typeof durableHostKind === 'string' && durableHostKind !== data.hostKind) {
389
+ warnings.push(`host_kind_conflict:kept=${durableHostKind},rejected=${data.hostKind}`);
390
+ }
391
+ return { id: rawRow.id, warnings };
379
392
  }
380
- return undefined;
393
+ return { id: undefined, warnings };
381
394
  }
382
395
  throw insertErr;
383
396
  }
@@ -445,10 +458,12 @@ export function recordPainSignalObservability(opts) {
445
458
  warnings.push(`evolution stream write failed: ${err instanceof Error ? err.message : String(err)}`);
446
459
  }
447
460
  try {
448
- result.trajectoryPainEventId = recordTrajectoryPainEvent({
461
+ const trajectory = recordTrajectoryPainEvent({
449
462
  stateDir: opts.stateDir, data: opts.data, timestamp, workspaceDir: opts.workspaceDir,
450
463
  canonicalPainId: opts.canonicalPainId, runtimeTaskId: opts.runtimeTaskId,
451
464
  });
465
+ result.trajectoryPainEventId = trajectory.id;
466
+ warnings.push(...trajectory.warnings);
452
467
  }
453
468
  catch (err) {
454
469
  warnings.push(`trajectory pain_events write failed: ${err instanceof Error ? err.message : String(err)}`);
@@ -1 +1 @@
1
- {"version":3,"file":"pain-signal-observability.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pain-signal-observability.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@principles/core",
3
- "version": "1.273.1",
3
+ "version": "1.274.0",
4
4
  "description": "Pure-logic core of Principles Disciple, an AI Agent Governance System - pain signal capture and principle proposal (no I/O)",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -54,7 +54,6 @@
54
54
  "scripts": {
55
55
  "build": "tsc",
56
56
  "test": "vitest run",
57
- "test:bench": "vitest bench",
58
57
  "lint": "eslint src/"
59
58
  },
60
59
  "dependencies": {
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=code-review-pain-adapter.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-review-pain-adapter.test.d.ts","sourceRoot":"","sources":["../../../src/adapters/__tests__/code-review-pain-adapter.test.ts"],"names":[],"mappings":""}
@@ -1,346 +0,0 @@
1
- import { describe, it, expect } from 'vitest';
2
- import { CodeReviewPainAdapter } from '../code-review/code-review-pain-adapter.js';
3
- describe('CodeReviewPainAdapter', () => {
4
- const adapter = new CodeReviewPainAdapter();
5
- const baseFile = {
6
- path: 'src/index.ts',
7
- linesAdded: 10,
8
- linesDeleted: 5,
9
- changeMagnitude: 15,
10
- };
11
- const baseEvent = {
12
- prId: 'pr-1',
13
- repositoryId: 'repo-1',
14
- authorId: 'author-1',
15
- reviewerIds: ['reviewer-1'],
16
- filesChanged: [baseFile],
17
- totalLinesAdded: 10,
18
- totalLinesDeleted: 5,
19
- comments: [],
20
- unresolvedThreadCount: 0,
21
- createdAt: '2026-01-01T00:00:00Z',
22
- reviewAgeDays: 1,
23
- hasTests: true,
24
- hasSecurityReview: true,
25
- isBreakingChange: false,
26
- labels: [],
27
- sessionId: 'sess-123',
28
- };
29
- // ---------------------------------------------------------------------------
30
- // Null-return paths
31
- // ---------------------------------------------------------------------------
32
- it('returns null for missing sessionId', () => {
33
- const event = { ...baseEvent, sessionId: '' };
34
- expect(adapter.capture(event)).toBeNull();
35
- });
36
- it('returns null when sessionId is not a string', () => {
37
- const event = { ...baseEvent, sessionId: 42 };
38
- expect(adapter.capture(event)).toBeNull();
39
- });
40
- it('returns null when no files changed and no comments', () => {
41
- const event = { ...baseEvent, filesChanged: [], comments: [] };
42
- expect(adapter.capture(event)).toBeNull();
43
- });
44
- it('returns null when filesChanged is undefined and no comments', () => {
45
- const { filesChanged: _filesChanged, ...eventWithoutFiles } = baseEvent;
46
- const event = { ...eventWithoutFiles, filesChanged: undefined, comments: [] };
47
- expect(adapter.capture(event)).toBeNull();
48
- });
49
- it('returns null for negative reviewAgeDays', () => {
50
- const event = { ...baseEvent, reviewAgeDays: -1 };
51
- expect(adapter.capture(event)).toBeNull();
52
- });
53
- // ---------------------------------------------------------------------------
54
- // Valid event with process violation
55
- // ---------------------------------------------------------------------------
56
- it('produces high score for process violation (no tests, >2 files, breaking change)', () => {
57
- const event = {
58
- ...baseEvent,
59
- filesChanged: [
60
- { path: 'src/a.ts', linesAdded: 50, linesDeleted: 10, changeMagnitude: 60 },
61
- { path: 'src/b.ts', linesAdded: 30, linesDeleted: 5, changeMagnitude: 35 },
62
- { path: 'src/c.ts', linesAdded: 20, linesDeleted: 5, changeMagnitude: 25 },
63
- ],
64
- totalLinesAdded: 100,
65
- totalLinesDeleted: 20,
66
- hasTests: false,
67
- isBreakingChange: true,
68
- labels: [],
69
- hasSecurityReview: false,
70
- };
71
- const signal = adapter.capture(event);
72
- expect(signal).not.toBeNull();
73
- if (!signal)
74
- throw new Error('Expected non-null signal');
75
- // No tests + >2 files = +35, breaking change without label = +40 → process >= 40
76
- expect(signal.source).toBe('process_violation');
77
- expect(signal.score).toBeGreaterThan(0);
78
- // Severity should be at least medium for process violations
79
- expect(['medium', 'high', 'critical']).toContain(signal.severity);
80
- });
81
- // ---------------------------------------------------------------------------
82
- // Valid event with negative sentiment
83
- // ---------------------------------------------------------------------------
84
- it('produces negative_sentiment trigger when comments are negative', () => {
85
- const negativeComment = {
86
- id: 'c2',
87
- authorId: 'reviewer-1',
88
- body: 'This code is terrible and should be rewritten',
89
- sentimentScore: -80,
90
- createdAt: '2026-01-01T00:00:00Z',
91
- // unresolved: no resolvedAt
92
- };
93
- const event = {
94
- ...baseEvent,
95
- comments: [negativeComment],
96
- unresolvedThreadCount: 1,
97
- hasTests: true,
98
- isBreakingChange: false,
99
- };
100
- const signal = adapter.capture(event);
101
- expect(signal).not.toBeNull();
102
- if (!signal)
103
- throw new Error('Expected non-null signal');
104
- // With negative sentiment comments, source should be negative_sentiment
105
- // provided process violation score < 40
106
- expect(signal.source).toBe('negative_sentiment');
107
- });
108
- // ---------------------------------------------------------------------------
109
- // Valid event with diff complexity
110
- // ---------------------------------------------------------------------------
111
- it('produces diff_complexity trigger for many files with no process violations or negative sentiment', () => {
112
- const manyFiles = Array.from({ length: 10 }, (_, i) => ({
113
- path: `src/file${i}.ts`,
114
- linesAdded: 100,
115
- linesDeleted: 50,
116
- changeMagnitude: 150,
117
- }));
118
- // Use positive-sentiment comments so sentiment score stays below 40 threshold
119
- const positiveComment = {
120
- id: 'c-pos',
121
- authorId: 'reviewer-1',
122
- body: 'Looks great!',
123
- sentimentScore: 80,
124
- createdAt: '2026-01-01T00:00:00Z',
125
- resolvedAt: '2026-01-02T00:00:00Z',
126
- };
127
- const event = {
128
- ...baseEvent,
129
- filesChanged: manyFiles,
130
- totalLinesAdded: 1000,
131
- totalLinesDeleted: 500,
132
- hasTests: true,
133
- isBreakingChange: false,
134
- hasSecurityReview: true,
135
- comments: [positiveComment],
136
- };
137
- const signal = adapter.capture(event);
138
- expect(signal).not.toBeNull();
139
- if (!signal)
140
- throw new Error('Expected non-null signal');
141
- expect(signal.source).toBe('diff_complexity');
142
- });
143
- // ---------------------------------------------------------------------------
144
- // Score clamping
145
- // ---------------------------------------------------------------------------
146
- it('clamps score to 0-100 range', () => {
147
- // Extreme process violations could theoretically push score > 100
148
- const event = {
149
- ...baseEvent,
150
- filesChanged: [
151
- { path: 'security/auth.ts', linesAdded: 300, linesDeleted: 200, changeMagnitude: 500 },
152
- { path: 'security/crypto.ts', linesAdded: 300, linesDeleted: 200, changeMagnitude: 500 },
153
- { path: 'src/main.ts', linesAdded: 300, linesDeleted: 200, changeMagnitude: 500 },
154
- ],
155
- totalLinesAdded: 900,
156
- totalLinesDeleted: 600,
157
- hasTests: false,
158
- isBreakingChange: true,
159
- labels: [],
160
- hasSecurityReview: false,
161
- };
162
- const signal = adapter.capture(event);
163
- expect(signal).not.toBeNull();
164
- if (!signal)
165
- throw new Error('Expected non-null signal');
166
- expect(signal.score).toBeGreaterThanOrEqual(0);
167
- expect(signal.score).toBeLessThanOrEqual(100);
168
- });
169
- // ---------------------------------------------------------------------------
170
- // triggerTextPreview truncation
171
- // ---------------------------------------------------------------------------
172
- it('truncates triggerTextPreview to 200 chars', () => {
173
- const longBody = 'x'.repeat(300);
174
- const negativeComment = {
175
- id: 'c3',
176
- authorId: 'reviewer-1',
177
- body: longBody,
178
- sentimentScore: -90,
179
- createdAt: '2026-01-01T00:00:00Z',
180
- };
181
- const event = {
182
- ...baseEvent,
183
- comments: [negativeComment],
184
- hasTests: true,
185
- isBreakingChange: false,
186
- };
187
- const signal = adapter.capture(event);
188
- expect(signal).not.toBeNull();
189
- if (!signal)
190
- throw new Error('Expected non-null signal');
191
- expect(signal.triggerTextPreview.length).toBeLessThanOrEqual(200);
192
- });
193
- // ---------------------------------------------------------------------------
194
- // PainSignal structure
195
- // ---------------------------------------------------------------------------
196
- it('returns PainSignal with correct structure', () => {
197
- const signal = adapter.capture(baseEvent);
198
- expect(signal).not.toBeNull();
199
- if (!signal)
200
- throw new Error('Expected non-null signal');
201
- expect(typeof signal.source).toBe('string');
202
- expect(typeof signal.score).toBe('number');
203
- expect(signal.timestamp).toBeTruthy();
204
- expect(typeof signal.reason).toBe('string');
205
- expect(signal.sessionId).toBe('sess-123');
206
- expect(signal.agentId).toBe('code-review-evaluator');
207
- expect(signal.domain).toBe('code-review');
208
- expect(typeof signal.severity).toBe('string');
209
- expect(typeof signal.context).toBe('object');
210
- });
211
- // ---------------------------------------------------------------------------
212
- // deriveProcessViolationScore scenarios
213
- // ---------------------------------------------------------------------------
214
- it('adds 35 when no tests and >2 files', () => {
215
- // With no tests + 3 files: +35, no other violations → process = 35 (< 40 threshold)
216
- // So primary trigger should NOT be process_violation
217
- const event = {
218
- ...baseEvent,
219
- filesChanged: [
220
- { path: 'src/a.ts', linesAdded: 5, linesDeleted: 5, changeMagnitude: 10 },
221
- { path: 'src/b.ts', linesAdded: 5, linesDeleted: 5, changeMagnitude: 10 },
222
- { path: 'src/c.ts', linesAdded: 5, linesDeleted: 5, changeMagnitude: 10 },
223
- ],
224
- hasTests: false,
225
- isBreakingChange: false,
226
- hasSecurityReview: true,
227
- totalLinesAdded: 15,
228
- totalLinesDeleted: 15,
229
- labels: [],
230
- };
231
- const signal = adapter.capture(event);
232
- expect(signal).not.toBeNull();
233
- if (!signal)
234
- throw new Error('Expected non-null signal');
235
- // process score is 35, which is < 40, so not process_violation
236
- expect(signal.context.processViolationScore).toBe(35);
237
- expect(signal.source).not.toBe('process_violation');
238
- });
239
- it('adds 40 for breaking change without label', () => {
240
- const event = {
241
- ...baseEvent,
242
- hasTests: true,
243
- isBreakingChange: true,
244
- labels: [],
245
- hasSecurityReview: true,
246
- };
247
- const signal = adapter.capture(event);
248
- expect(signal).not.toBeNull();
249
- if (!signal)
250
- throw new Error('Expected non-null signal');
251
- expect(signal.context.processViolationScore).toBe(40);
252
- expect(signal.source).toBe('process_violation');
253
- });
254
- it('adds 50 for security changes without security review', () => {
255
- const event = {
256
- ...baseEvent,
257
- filesChanged: [{ path: 'security/auth.ts', linesAdded: 10, linesDeleted: 5, changeMagnitude: 15 }],
258
- hasTests: true,
259
- isBreakingChange: false,
260
- hasSecurityReview: false,
261
- labels: [],
262
- };
263
- const signal = adapter.capture(event);
264
- expect(signal).not.toBeNull();
265
- if (!signal)
266
- throw new Error('Expected non-null signal');
267
- expect(signal.context.processViolationScore).toBe(50);
268
- expect(signal.source).toBe('process_violation');
269
- });
270
- it('adds 20 for >500 lines changed without tests', () => {
271
- const event = {
272
- ...baseEvent,
273
- filesChanged: [
274
- { path: 'src/a.ts', linesAdded: 400, linesDeleted: 200, changeMagnitude: 600 },
275
- ],
276
- totalLinesAdded: 400,
277
- totalLinesDeleted: 200,
278
- hasTests: false,
279
- isBreakingChange: false,
280
- hasSecurityReview: true,
281
- labels: [],
282
- };
283
- const signal = adapter.capture(event);
284
- expect(signal).not.toBeNull();
285
- if (!signal)
286
- throw new Error('Expected non-null signal');
287
- // no tests + 1 file (not >2) = 0 for that rule, but >500 lines + no tests = +20
288
- expect(signal.context.processViolationScore).toBe(20);
289
- });
290
- // ---------------------------------------------------------------------------
291
- // deriveSentimentScore recency multiplier
292
- // ---------------------------------------------------------------------------
293
- it('applies recency multiplier when reviewAgeDays > 7', () => {
294
- const negativeComment = {
295
- id: 'c4',
296
- authorId: 'reviewer-1',
297
- body: 'Bad code',
298
- sentimentScore: -50,
299
- createdAt: '2026-01-01T00:00:00Z',
300
- };
301
- const recentEvent = {
302
- ...baseEvent,
303
- comments: [negativeComment],
304
- reviewAgeDays: 3,
305
- hasTests: true,
306
- isBreakingChange: false,
307
- };
308
- const oldEvent = {
309
- ...baseEvent,
310
- comments: [negativeComment],
311
- reviewAgeDays: 10,
312
- hasTests: true,
313
- isBreakingChange: false,
314
- };
315
- const recentSignal = adapter.capture(recentEvent);
316
- const oldSignal = adapter.capture(oldEvent);
317
- expect(recentSignal).not.toBeNull();
318
- if (!recentSignal)
319
- throw new Error('Expected non-null recentSignal');
320
- expect(oldSignal).not.toBeNull();
321
- if (!oldSignal)
322
- throw new Error('Expected non-null oldSignal');
323
- // Older reviews with unresolved negatives should produce higher sentiment pain
324
- expect(oldSignal.context.sentimentScore).toBeGreaterThan(recentSignal.context.sentimentScore);
325
- });
326
- // ---------------------------------------------------------------------------
327
- // traceId fallback
328
- // ---------------------------------------------------------------------------
329
- it('uses "unknown" for traceId when not provided', () => {
330
- const event = { ...baseEvent, traceId: undefined };
331
- const signal = adapter.capture(event);
332
- expect(signal).not.toBeNull();
333
- if (!signal)
334
- throw new Error('Expected non-null signal');
335
- expect(signal.traceId).toBe('unknown');
336
- });
337
- it('uses provided traceId', () => {
338
- const event = { ...baseEvent, traceId: 'trace-abc' };
339
- const signal = adapter.capture(event);
340
- expect(signal).not.toBeNull();
341
- if (!signal)
342
- throw new Error('Expected non-null signal');
343
- expect(signal.traceId).toBe('trace-abc');
344
- });
345
- });
346
- //# sourceMappingURL=code-review-pain-adapter.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"code-review-pain-adapter.test.js","sourceRoot":"","sources":["../../../src/adapters/__tests__/code-review-pain-adapter.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=openclaw-pain-adapter.test.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"openclaw-pain-adapter.test.d.ts","sourceRoot":"","sources":["../../../src/adapters/__tests__/openclaw-pain-adapter.test.ts"],"names":[],"mappings":""}