@principles/core 1.273.0 → 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.
- package/dist/index.d.ts +7 -12
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -12
- package/dist/index.js.map +1 -1
- package/dist/runtime-v2/__tests__/architecture-regression.test.js +1 -1
- package/dist/runtime-v2/__tests__/architecture-regression.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/pain-signal-observability.test.js +93 -0
- package/dist/runtime-v2/__tests__/pain-signal-observability.test.js.map +1 -1
- package/dist/runtime-v2/__tests__/status-contract.test.js +0 -29
- package/dist/runtime-v2/__tests__/status-contract.test.js.map +1 -1
- package/dist/runtime-v2/index.d.ts +2 -1
- package/dist/runtime-v2/index.d.ts.map +1 -1
- package/dist/runtime-v2/index.js +0 -2
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/pain-signal-bridge.d.ts +8 -1
- package/dist/runtime-v2/pain-signal-bridge.d.ts.map +1 -1
- package/dist/runtime-v2/pain-signal-bridge.js.map +1 -1
- package/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
- package/dist/runtime-v2/pain-signal-observability.js +25 -10
- package/dist/runtime-v2/pain-signal-observability.js.map +1 -1
- package/package.json +1 -38
- package/dist/adapters/__tests__/code-review-pain-adapter.test.d.ts +0 -2
- package/dist/adapters/__tests__/code-review-pain-adapter.test.d.ts.map +0 -1
- package/dist/adapters/__tests__/code-review-pain-adapter.test.js +0 -346
- package/dist/adapters/__tests__/code-review-pain-adapter.test.js.map +0 -1
- package/dist/adapters/__tests__/openclaw-pain-adapter.test.d.ts +0 -2
- package/dist/adapters/__tests__/openclaw-pain-adapter.test.d.ts.map +0 -1
- package/dist/adapters/__tests__/openclaw-pain-adapter.test.js +0 -290
- package/dist/adapters/__tests__/openclaw-pain-adapter.test.js.map +0 -1
- package/dist/adapters/__tests__/writing-pain-adapter.test.d.ts +0 -2
- package/dist/adapters/__tests__/writing-pain-adapter.test.d.ts.map +0 -1
- package/dist/adapters/__tests__/writing-pain-adapter.test.js +0 -239
- package/dist/adapters/__tests__/writing-pain-adapter.test.js.map +0 -1
- package/dist/adapters/code-review/code-review-pain-adapter.d.ts +0 -13
- package/dist/adapters/code-review/code-review-pain-adapter.d.ts.map +0 -1
- package/dist/adapters/code-review/code-review-pain-adapter.js +0 -139
- package/dist/adapters/code-review/code-review-pain-adapter.js.map +0 -1
- package/dist/adapters/code-review/index.d.ts +0 -6
- package/dist/adapters/code-review/index.d.ts.map +0 -1
- package/dist/adapters/code-review/index.js +0 -2
- package/dist/adapters/code-review/index.js.map +0 -1
- package/dist/adapters/code-review/review-event-types.d.ts +0 -54
- package/dist/adapters/code-review/review-event-types.d.ts.map +0 -1
- package/dist/adapters/code-review/review-event-types.js +0 -8
- package/dist/adapters/code-review/review-event-types.js.map +0 -1
- package/dist/adapters/coding/index.d.ts +0 -6
- package/dist/adapters/coding/index.d.ts.map +0 -1
- package/dist/adapters/coding/index.js +0 -5
- package/dist/adapters/coding/index.js.map +0 -1
- package/dist/adapters/coding/openclaw-event-types.d.ts +0 -26
- package/dist/adapters/coding/openclaw-event-types.d.ts.map +0 -1
- package/dist/adapters/coding/openclaw-event-types.js +0 -9
- package/dist/adapters/coding/openclaw-event-types.js.map +0 -1
- package/dist/adapters/coding/openclaw-pain-adapter.d.ts +0 -27
- package/dist/adapters/coding/openclaw-pain-adapter.d.ts.map +0 -1
- package/dist/adapters/coding/openclaw-pain-adapter.js +0 -102
- package/dist/adapters/coding/openclaw-pain-adapter.js.map +0 -1
- package/dist/adapters/writing/index.d.ts +0 -6
- package/dist/adapters/writing/index.d.ts.map +0 -1
- package/dist/adapters/writing/index.js +0 -5
- package/dist/adapters/writing/index.js.map +0 -1
- package/dist/adapters/writing/writing-pain-adapter.d.ts +0 -22
- package/dist/adapters/writing/writing-pain-adapter.d.ts.map +0 -1
- package/dist/adapters/writing/writing-pain-adapter.js +0 -62
- package/dist/adapters/writing/writing-pain-adapter.js.map +0 -1
- package/dist/adapters/writing/writing-types.d.ts +0 -34
- package/dist/adapters/writing/writing-types.d.ts.map +0 -1
- package/dist/adapters/writing/writing-types.js +0 -9
- package/dist/adapters/writing/writing-types.js.map +0 -1
- package/dist/pain-signal-adapter.d.ts +0 -37
- package/dist/pain-signal-adapter.d.ts.map +0 -1
- package/dist/pain-signal-adapter.js +0 -2
- package/dist/pain-signal-adapter.js.map +0 -1
- package/dist/pain-signal.d.ts +0 -16
- package/dist/pain-signal.d.ts.map +0 -1
- package/dist/pain-signal.js +0 -15
- package/dist/pain-signal.js.map +0 -1
- package/dist/principle-injector.d.ts +0 -67
- package/dist/principle-injector.d.ts.map +0 -1
- package/dist/principle-injector.js +0 -89
- package/dist/principle-injector.js.map +0 -1
- package/dist/principle-injector.test.d.ts +0 -2
- package/dist/principle-injector.test.d.ts.map +0 -1
- package/dist/principle-injector.test.js +0 -158
- package/dist/principle-injector.test.js.map +0 -1
- package/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts +0 -2
- package/dist/runtime-v2/__tests__/pain-signal-unification.test.d.ts.map +0 -1
- package/dist/runtime-v2/__tests__/pain-signal-unification.test.js +0 -150
- package/dist/runtime-v2/__tests__/pain-signal-unification.test.js.map +0 -1
- package/dist/runtime-v2/store/task-migration.d.ts +0 -89
- package/dist/runtime-v2/store/task-migration.d.ts.map +0 -1
- package/dist/runtime-v2/store/task-migration.js +0 -79
- package/dist/runtime-v2/store/task-migration.js.map +0 -1
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration bridge from legacy EvolutionQueueItem to TaskRecord.
|
|
3
|
-
*
|
|
4
|
-
* Legacy shape (from .state/evolution-queue.json):
|
|
5
|
-
* {
|
|
6
|
-
* taskId: string,
|
|
7
|
-
* status: 'pending' | 'in_progress' | 'completed' | 'failed' | 'canceled',
|
|
8
|
-
* taskKind: string,
|
|
9
|
-
* attemptCount: number,
|
|
10
|
-
* maxAttempts: number,
|
|
11
|
-
* inputRef?: string,
|
|
12
|
-
* resultRef?: string,
|
|
13
|
-
* lastError?: string,
|
|
14
|
-
* createdAt: string,
|
|
15
|
-
* updatedAt: string
|
|
16
|
-
* }
|
|
17
|
-
*
|
|
18
|
-
* Target shape: TaskRecord (see task-status.ts)
|
|
19
|
-
*
|
|
20
|
-
* Status mapping:
|
|
21
|
-
* 'pending' → 'pending'
|
|
22
|
-
* 'in_progress' → 'leased' (old runtime had no lease concept, so in_progress = leased)
|
|
23
|
-
* 'completed' → 'succeeded'
|
|
24
|
-
* 'failed' → 'failed'
|
|
25
|
-
* 'canceled' → 'failed' (canceled maps to failed, not a separate status)
|
|
26
|
-
*
|
|
27
|
-
* NOT migrated (D-05: new store starts blank — no migration of existing queue data):
|
|
28
|
-
* This is a BRIDGE for dual-write compatibility, NOT actual data migration.
|
|
29
|
-
* It provides the transformation logic that adapters can use if needed.
|
|
30
|
-
*/
|
|
31
|
-
import type { TaskRecord, PDTaskStatus } from '../task-status.js';
|
|
32
|
-
import type { TaskStore } from './task/task-store.js';
|
|
33
|
-
export interface MigrationResult {
|
|
34
|
-
migrated: number;
|
|
35
|
-
skipped: number;
|
|
36
|
-
errors: string[];
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Migration bridge from legacy EvolutionQueueItem to TaskRecord.
|
|
40
|
-
*
|
|
41
|
-
* Provides the transformation logic that adapters can use to translate
|
|
42
|
-
* between the legacy queue format and the new TaskRecord format.
|
|
43
|
-
*/
|
|
44
|
-
export declare class EvolutionQueueItemMigrator {
|
|
45
|
-
private readonly taskStore;
|
|
46
|
-
constructor(taskStore: TaskStore);
|
|
47
|
-
/**
|
|
48
|
-
* Map legacy EvolutionQueueItem status to PDTaskStatus.
|
|
49
|
-
* Returns null if the status is unrecognized (skip migration).
|
|
50
|
-
*/
|
|
51
|
-
static mapLegacyStatus(legacyStatus: string): PDTaskStatus | null;
|
|
52
|
-
/**
|
|
53
|
-
* Transform a legacy EvolutionQueueItem to TaskRecord fields.
|
|
54
|
-
* Only includes fields that are safe to migrate — lease fields are NOT migrated
|
|
55
|
-
* since the legacy queue had no lease concept.
|
|
56
|
-
*/
|
|
57
|
-
static toTaskRecord(legacyItem: {
|
|
58
|
-
taskId: string;
|
|
59
|
-
taskKind: string;
|
|
60
|
-
status: string;
|
|
61
|
-
attemptCount?: number;
|
|
62
|
-
maxAttempts?: number;
|
|
63
|
-
inputRef?: string;
|
|
64
|
-
resultRef?: string;
|
|
65
|
-
lastError?: string;
|
|
66
|
-
createdAt?: string;
|
|
67
|
-
updatedAt?: string;
|
|
68
|
-
}): Omit<TaskRecord, 'createdAt' | 'updatedAt'> | null;
|
|
69
|
-
/**
|
|
70
|
-
* Migrate a single legacy item (idempotent).
|
|
71
|
-
* If task already exists in store, compares updatedAt and only overwrites if legacy is newer.
|
|
72
|
-
*/
|
|
73
|
-
migrateOne(legacyItem: {
|
|
74
|
-
taskId: string;
|
|
75
|
-
taskKind: string;
|
|
76
|
-
status: string;
|
|
77
|
-
attemptCount?: number;
|
|
78
|
-
maxAttempts?: number;
|
|
79
|
-
inputRef?: string;
|
|
80
|
-
resultRef?: string;
|
|
81
|
-
lastError?: string;
|
|
82
|
-
createdAt?: string;
|
|
83
|
-
updatedAt?: string;
|
|
84
|
-
}): Promise<{
|
|
85
|
-
migrated: boolean;
|
|
86
|
-
reason?: string;
|
|
87
|
-
}>;
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=task-migration.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-migration.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/store/task-migration.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEtD,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAAa,0BAA0B;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAAtC,YAA6B,SAAS,EAAE,SAAS,EAAI;IAErD;;;OAGG;IACH,MAAM,CAAC,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAShE;IAED;;;;OAIG;IACH,MAAM,CAAC,YAAY,CACjB,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,IAAI,CAAC,UAAU,EAAE,WAAW,GAAG,WAAW,CAAC,GAAG,IAAI,CAcpD;IAED;;;OAGG;IACG,UAAU,CACd,UAAU,EAAE;QACV,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GACA,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CA6BjD;CACF"}
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Migration bridge from legacy EvolutionQueueItem to TaskRecord.
|
|
3
|
-
*
|
|
4
|
-
* Provides the transformation logic that adapters can use to translate
|
|
5
|
-
* between the legacy queue format and the new TaskRecord format.
|
|
6
|
-
*/
|
|
7
|
-
export class EvolutionQueueItemMigrator {
|
|
8
|
-
taskStore;
|
|
9
|
-
constructor(taskStore) {
|
|
10
|
-
this.taskStore = taskStore;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* Map legacy EvolutionQueueItem status to PDTaskStatus.
|
|
14
|
-
* Returns null if the status is unrecognized (skip migration).
|
|
15
|
-
*/
|
|
16
|
-
static mapLegacyStatus(legacyStatus) {
|
|
17
|
-
const mapping = {
|
|
18
|
-
pending: 'pending',
|
|
19
|
-
in_progress: 'leased',
|
|
20
|
-
completed: 'succeeded',
|
|
21
|
-
failed: 'failed',
|
|
22
|
-
canceled: 'failed',
|
|
23
|
-
};
|
|
24
|
-
return mapping[legacyStatus] ?? null;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Transform a legacy EvolutionQueueItem to TaskRecord fields.
|
|
28
|
-
* Only includes fields that are safe to migrate — lease fields are NOT migrated
|
|
29
|
-
* since the legacy queue had no lease concept.
|
|
30
|
-
*/
|
|
31
|
-
static toTaskRecord(legacyItem) {
|
|
32
|
-
const newStatus = EvolutionQueueItemMigrator.mapLegacyStatus(legacyItem.status);
|
|
33
|
-
if (!newStatus)
|
|
34
|
-
return null;
|
|
35
|
-
return {
|
|
36
|
-
taskId: legacyItem.taskId,
|
|
37
|
-
taskKind: legacyItem.taskKind,
|
|
38
|
-
status: newStatus,
|
|
39
|
-
attemptCount: legacyItem.attemptCount ?? 0,
|
|
40
|
-
maxAttempts: legacyItem.maxAttempts ?? 3,
|
|
41
|
-
inputRef: legacyItem.inputRef,
|
|
42
|
-
resultRef: legacyItem.resultRef,
|
|
43
|
-
lastError: legacyItem.lastError,
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Migrate a single legacy item (idempotent).
|
|
48
|
-
* If task already exists in store, compares updatedAt and only overwrites if legacy is newer.
|
|
49
|
-
*/
|
|
50
|
-
async migrateOne(legacyItem) {
|
|
51
|
-
const record = EvolutionQueueItemMigrator.toTaskRecord(legacyItem);
|
|
52
|
-
if (!record) {
|
|
53
|
-
return { migrated: false, reason: 'unknown_status' };
|
|
54
|
-
}
|
|
55
|
-
const existing = await this.taskStore.getTask(record.taskId);
|
|
56
|
-
if (existing) {
|
|
57
|
-
// Idempotent: only overwrite if legacy is newer
|
|
58
|
-
const legacyUpdated = legacyItem.updatedAt ? new Date(legacyItem.updatedAt) : null;
|
|
59
|
-
const existingUpdated = new Date(existing.updatedAt);
|
|
60
|
-
if (legacyUpdated && legacyUpdated <= existingUpdated) {
|
|
61
|
-
return { migrated: false, reason: 'existing_newer' };
|
|
62
|
-
}
|
|
63
|
-
// Update existing record
|
|
64
|
-
await this.taskStore.updateTask(record.taskId, {
|
|
65
|
-
status: record.status,
|
|
66
|
-
attemptCount: record.attemptCount,
|
|
67
|
-
maxAttempts: record.maxAttempts,
|
|
68
|
-
lastError: record.lastError,
|
|
69
|
-
inputRef: record.inputRef,
|
|
70
|
-
resultRef: record.resultRef,
|
|
71
|
-
});
|
|
72
|
-
return { migrated: true, reason: 'updated_existing' };
|
|
73
|
-
}
|
|
74
|
-
// Create new record
|
|
75
|
-
await this.taskStore.createTask(record);
|
|
76
|
-
return { migrated: true, reason: 'created_new' };
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
//# sourceMappingURL=task-migration.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-migration.js","sourceRoot":"","sources":["../../../src/runtime-v2/store/task-migration.ts"],"names":[],"mappings":"AAuCA;;;;;GAKG;AACH,MAAM,OAAO,0BAA0B;IACR,SAAS;IAAtC,YAA6B,SAAoB;yBAApB,SAAS;IAAc,CAAC;IAErD;;;OAGG;IACH,MAAM,CAAC,eAAe,CAAC,YAAoB;QACzC,MAAM,OAAO,GAAiC;YAC5C,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,QAAQ;YACrB,SAAS,EAAE,WAAW;YACtB,MAAM,EAAE,QAAQ;YAChB,QAAQ,EAAE,QAAQ;SACnB,CAAC;QACF,OAAO,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,YAAY,CACjB,UAWC;QAED,MAAM,SAAS,GAAG,0BAA0B,CAAC,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAChF,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC;QAE5B,OAAO;YACL,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,UAAU,CAAC,YAAY,IAAI,CAAC;YAC1C,WAAW,EAAE,UAAU,CAAC,WAAW,IAAI,CAAC;YACxC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,SAAS,EAAE,UAAU,CAAC,SAAS;YAC/B,SAAS,EAAE,UAAU,CAAC,SAAoC;SAC3D,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,UAAU,CACd,UAWC;QAED,MAAM,MAAM,GAAG,0BAA0B,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;QACvD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,gDAAgD;YAChD,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnF,MAAM,eAAe,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACrD,IAAI,aAAa,IAAI,aAAa,IAAI,eAAe,EAAE,CAAC;gBACtD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;YACvD,CAAC;YACD,yBAAyB;YACzB,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC7C,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,SAAS,EAAE,MAAM,CAAC,SAAS;aAC5B,CAAC,CAAC;YACH,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;QACxD,CAAC;QAED,oBAAoB;QACpB,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC;IACnD,CAAC;CACF"}
|