@principles/core 1.279.0 → 1.279.2
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/evolution-store.d.ts +17 -6
- package/dist/evolution-store.d.ts.map +1 -1
- package/dist/evolution-store.js +26 -27
- package/dist/evolution-store.js.map +1 -1
- package/dist/evolution-store.test.js +40 -41
- package/dist/evolution-store.test.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/runtime-v2/__tests__/trajectory-store.test.js +28 -12
- package/dist/runtime-v2/__tests__/trajectory-store.test.js.map +1 -1
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js +19 -0
- package/dist/runtime-v2/config/__tests__/pd-config-contract.test.js.map +1 -1
- package/dist/runtime-v2/config/pd-config-effective.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-effective.js +10 -4
- package/dist/runtime-v2/config/pd-config-effective.js.map +1 -1
- package/dist/runtime-v2/config/pd-config-feature-flags.d.ts.map +1 -1
- package/dist/runtime-v2/config/pd-config-feature-flags.js +9 -3
- package/dist/runtime-v2/config/pd-config-feature-flags.js.map +1 -1
- package/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js +2 -2
- package/dist/runtime-v2/feature-flags/__tests__/surface-guard-policy.test.js.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js +18 -9
- package/dist/runtime-v2/feature-flags/feature-flag-contract.js.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js +25 -28
- package/dist/runtime-v2/feature-flags/feature-flag-lifecycle.js.map +1 -1
- package/dist/runtime-v2/feature-flags/plugin-surface-registry.d.ts.map +1 -1
- package/dist/runtime-v2/feature-flags/plugin-surface-registry.js +0 -18
- package/dist/runtime-v2/feature-flags/plugin-surface-registry.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 +2 -0
- package/dist/runtime-v2/index.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js +75 -5
- package/dist/runtime-v2/internalization/__tests__/artificer-prompt-builder.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js +1 -1
- package/dist/runtime-v2/internalization/__tests__/diag-chain-e2e.test.js.map +1 -1
- package/dist/runtime-v2/internalization/__tests__/evaluator-host-alias-replay.test.d.ts +2 -0
- package/dist/runtime-v2/internalization/__tests__/evaluator-host-alias-replay.test.d.ts.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/evaluator-host-alias-replay.test.js +279 -0
- package/dist/runtime-v2/internalization/__tests__/evaluator-host-alias-replay.test.js.map +1 -0
- package/dist/runtime-v2/internalization/__tests__/tool-semantic-registry.test.js +43 -0
- package/dist/runtime-v2/internalization/__tests__/tool-semantic-registry.test.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +36 -2
- package/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js +64 -7
- package/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.d.ts +10 -1
- package/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/artificer-runner.js +6 -0
- package/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/context-manifests.d.ts +3 -1
- package/dist/runtime-v2/internalization/context-manifests.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/context-manifests.js +3 -1
- package/dist/runtime-v2/internalization/context-manifests.js.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts +31 -0
- package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js +93 -1
- package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
- package/dist/runtime-v2/internalization/index.d.ts +2 -1
- package/dist/runtime-v2/internalization/index.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/index.js +2 -0
- package/dist/runtime-v2/internalization/index.js.map +1 -1
- package/dist/runtime-v2/internalization/tool-semantic-registry.d.ts +7 -0
- package/dist/runtime-v2/internalization/tool-semantic-registry.d.ts.map +1 -1
- package/dist/runtime-v2/internalization/tool-semantic-registry.js +9 -0
- package/dist/runtime-v2/internalization/tool-semantic-registry.js.map +1 -1
- package/dist/runtime-v2/pain-gate/pain-diagnostic-gate-policy.d.ts +14 -8
- package/dist/runtime-v2/pain-gate/pain-diagnostic-gate-policy.d.ts.map +1 -1
- package/dist/runtime-v2/pain-gate/pain-diagnostic-gate-policy.js +14 -8
- package/dist/runtime-v2/pain-gate/pain-diagnostic-gate-policy.js.map +1 -1
- package/dist/runtime-v2/runner/peer-runner-types.d.ts +4 -1
- package/dist/runtime-v2/runner/peer-runner-types.d.ts.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +6 -0
- package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
- package/dist/telemetry-event.d.ts +2 -2
- package/dist/telemetry-event.d.ts.map +1 -1
- package/dist/telemetry-event.js +4 -0
- package/dist/telemetry-event.js.map +1 -1
- package/dist/trajectory-store.d.ts +59 -4
- package/dist/trajectory-store.d.ts.map +1 -1
- package/dist/trajectory-store.js +162 -31
- package/dist/trajectory-store.js.map +1 -1
- package/dist/trajectory-store.test.js +30 -20
- package/dist/trajectory-store.test.js.map +1 -1
- package/package.json +1 -1
package/dist/trajectory-store.js
CHANGED
|
@@ -4,10 +4,15 @@
|
|
|
4
4
|
* Extracts listCorrectionSamples and reviewCorrectionSample from TrajectoryDatabase
|
|
5
5
|
* as pure functions that can be used without openclaw-plugin dependency.
|
|
6
6
|
*
|
|
7
|
+
* Reads the canonical workspace trajectory database
|
|
8
|
+
* (`{workspaceDir}/.state/trajectory.db`) written by openclaw-plugin
|
|
9
|
+
* TrajectoryDatabase — see trajectory-db.ts for the shared path contract.
|
|
10
|
+
*
|
|
7
11
|
* @example
|
|
8
12
|
* import { listCorrectionSamples, reviewCorrectionSample } from '@principles/core/trajectory-store';
|
|
9
13
|
*/
|
|
10
14
|
import Database from 'better-sqlite3';
|
|
15
|
+
import { existsSync } from 'fs';
|
|
11
16
|
import { join } from 'path';
|
|
12
17
|
// ---------------------------------------------------------------------------
|
|
13
18
|
// Helpers
|
|
@@ -15,8 +20,78 @@ import { join } from 'path';
|
|
|
15
20
|
function nowIso() {
|
|
16
21
|
return new Date().toISOString();
|
|
17
22
|
}
|
|
18
|
-
|
|
19
|
-
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
// Canonical database access (shared with evolution-store)
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
/**
|
|
27
|
+
* Canonical trajectory.db location shared by every SDK reader.
|
|
28
|
+
*
|
|
29
|
+
* The production writer is openclaw-plugin `TrajectoryDatabase`, whose path
|
|
30
|
+
* authority is openclaw-plugin `core/paths.ts`
|
|
31
|
+
* (`PD_FILES.TRAJECTORY_DB = .state/trajectory.db`). principles-core must not
|
|
32
|
+
* import from openclaw-plugin, so the relative path is pinned here; the
|
|
33
|
+
* plugin-to-core round-trip test
|
|
34
|
+
* (openclaw-plugin/tests/core/trajectory-store-round-trip.test.ts) writes
|
|
35
|
+
* through TrajectoryDatabase and reads through this module — if either side
|
|
36
|
+
* moves the file, that test fails.
|
|
37
|
+
*
|
|
38
|
+
* A missing database is NOT the same as an empty database: readers open the
|
|
39
|
+
* file through `openTrajectoryDbReadonly`, which throws
|
|
40
|
+
* `TrajectoryDbUnavailableError` (carrying the path and reason) instead of
|
|
41
|
+
* silently returning no rows (rc-3 fail-loud-missing, rc-9 no-silent-fallback).
|
|
42
|
+
*/
|
|
43
|
+
export function resolveTrajectoryDbPath(workspaceDir) {
|
|
44
|
+
return join(workspaceDir, '.state', 'trajectory.db');
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* The trajectory database cannot be read at its canonical location.
|
|
48
|
+
*
|
|
49
|
+
* Distinct from "the database exists and has no rows": callers (CLI commands)
|
|
50
|
+
* must surface this as an operator-visible failure with a next action, never
|
|
51
|
+
* as an empty result.
|
|
52
|
+
*/
|
|
53
|
+
export class TrajectoryDbUnavailableError extends Error {
|
|
54
|
+
dbPath;
|
|
55
|
+
constructor(dbPath, reason) {
|
|
56
|
+
super(`Trajectory database unavailable at ${dbPath} (${reason})`);
|
|
57
|
+
this.name = 'TrajectoryDbUnavailableError';
|
|
58
|
+
this.dbPath = dbPath;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Open the workspace trajectory database read-only or throw.
|
|
63
|
+
*
|
|
64
|
+
* Read-only on purpose: these primitives never create or migrate the file —
|
|
65
|
+
* the writer (openclaw-plugin TrajectoryDatabase / `pd runtime init`) owns
|
|
66
|
+
* creation, so a missing file is reported, not papered over.
|
|
67
|
+
*/
|
|
68
|
+
export function openTrajectoryDbReadonly(workspaceDir) {
|
|
69
|
+
const dbPath = resolveTrajectoryDbPath(workspaceDir);
|
|
70
|
+
if (!existsSync(dbPath)) {
|
|
71
|
+
throw new TrajectoryDbUnavailableError(dbPath, 'database file does not exist');
|
|
72
|
+
}
|
|
73
|
+
try {
|
|
74
|
+
return new Database(dbPath, { readonly: true });
|
|
75
|
+
}
|
|
76
|
+
catch (err) {
|
|
77
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
78
|
+
throw new TrajectoryDbUnavailableError(dbPath, `cannot be opened: ${msg}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Translate unexpected query/DDL failures into the same typed unavailability
|
|
83
|
+
* the CLI layer knows how to present (PRI-753 review: malformed or
|
|
84
|
+
* schema-less databases must not escape as raw stack traces). The underlying
|
|
85
|
+
* SQLite message is preserved in the reason. Domain errors (sample not
|
|
86
|
+
* found) and existing unavailability errors pass through unchanged.
|
|
87
|
+
*/
|
|
88
|
+
export function rethrowAsQueryFailed(dbPath, err) {
|
|
89
|
+
if (err instanceof TrajectoryDbUnavailableError)
|
|
90
|
+
throw err;
|
|
91
|
+
if (err instanceof Error && err.message.startsWith('Sample not found'))
|
|
92
|
+
throw err;
|
|
93
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
94
|
+
throw new TrajectoryDbUnavailableError(dbPath, `query failed: ${msg}`);
|
|
20
95
|
}
|
|
21
96
|
// ---------------------------------------------------------------------------
|
|
22
97
|
// Core functions
|
|
@@ -24,20 +99,16 @@ function getDbPath(workspaceDir) {
|
|
|
24
99
|
/**
|
|
25
100
|
* List correction samples by review status.
|
|
26
101
|
*
|
|
27
|
-
* @param workspaceDir - The workspace directory (DB path: {workspaceDir}/.state
|
|
102
|
+
* @param workspaceDir - The workspace directory (DB path: {workspaceDir}/.state/trajectory.db)
|
|
28
103
|
* @param status - Filter by review status (default: 'pending')
|
|
29
|
-
* @returns Array of CorrectionSampleRecord
|
|
104
|
+
* @returns Array of CorrectionSampleRecord; empty array means the database
|
|
105
|
+
* exists and has no matching rows
|
|
106
|
+
* @throws TrajectoryDbUnavailableError if the database does not exist or
|
|
107
|
+
* cannot be opened — never silently treated as "no samples"
|
|
30
108
|
*/
|
|
31
109
|
export function listCorrectionSamples(workspaceDir, status = 'pending') {
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
try {
|
|
35
|
-
db = new Database(dbPath, { readonly: true });
|
|
36
|
-
}
|
|
37
|
-
catch {
|
|
38
|
-
// Graceful fallback: DB does not exist yet
|
|
39
|
-
return [];
|
|
40
|
-
}
|
|
110
|
+
const db = openTrajectoryDbReadonly(workspaceDir);
|
|
111
|
+
const dbPath = resolveTrajectoryDbPath(workspaceDir);
|
|
41
112
|
try {
|
|
42
113
|
const rows = db.prepare(`
|
|
43
114
|
SELECT sample_id, session_id, bad_assistant_turn_id, user_correction_turn_id,
|
|
@@ -63,48 +134,92 @@ export function listCorrectionSamples(workspaceDir, status = 'pending') {
|
|
|
63
134
|
}));
|
|
64
135
|
}
|
|
65
136
|
catch (err) {
|
|
66
|
-
|
|
67
|
-
console.error(`[PD:TrajectoryStore] Failed to list correction samples: ${msg}`);
|
|
68
|
-
return [];
|
|
137
|
+
rethrowAsQueryFailed(dbPath, err);
|
|
69
138
|
}
|
|
70
139
|
finally {
|
|
71
140
|
db.close();
|
|
72
141
|
}
|
|
73
142
|
}
|
|
143
|
+
/**
|
|
144
|
+
* Mirror of openclaw-plugin TrajectoryDatabase.recordCorrectionRejectedPain:
|
|
145
|
+
* the two review surfaces (pd-cli and /pd-samples) must produce the same
|
|
146
|
+
* correction_rejected pain event, otherwise Owner rejections recorded via the
|
|
147
|
+
* CLI silently drop out of the pain pipeline. host_kind stays 'openclaw'
|
|
148
|
+
* because correction samples are only mined from OpenClaw sessions.
|
|
149
|
+
* Non-fatal: failures warn and leave the review result intact.
|
|
150
|
+
*/
|
|
151
|
+
function recordCorrectionRejectedPain(db, record) {
|
|
152
|
+
try {
|
|
153
|
+
const painScore = Math.max(0, Math.min(100, Math.round(Number(record.qualityScore) || 0)));
|
|
154
|
+
const reason = `Correction rejected (quality ${record.qualityScore.toFixed(2)}). Principles: ${record.principleIdsJson}${record.diffExcerpt ? ` — ${record.diffExcerpt.slice(0, 120)}` : ''}`;
|
|
155
|
+
const severity = painScore >= 70 ? 'severe' : painScore >= 40 ? 'moderate' : 'mild';
|
|
156
|
+
db.transaction(() => {
|
|
157
|
+
db.prepare(`
|
|
158
|
+
INSERT INTO sessions (session_id, started_at, updated_at)
|
|
159
|
+
VALUES (?, ?, ?)
|
|
160
|
+
ON CONFLICT(session_id) DO UPDATE SET updated_at = excluded.updated_at
|
|
161
|
+
`).run(record.sessionId, record.createdAt, record.createdAt);
|
|
162
|
+
db.prepare(`
|
|
163
|
+
INSERT INTO pain_events (
|
|
164
|
+
session_id, source, score, reason, severity, origin, confidence, text, created_at, host_kind
|
|
165
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
166
|
+
`).run(record.sessionId, 'correction_rejected', painScore, reason, severity, 'system_infer', 1, record.diffExcerpt || null, record.createdAt, 'openclaw');
|
|
167
|
+
})();
|
|
168
|
+
}
|
|
169
|
+
catch (err) {
|
|
170
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
171
|
+
console.warn(`[PD:TrajectoryStore] Failed to record correction_rejected pain event: ${msg}`);
|
|
172
|
+
}
|
|
173
|
+
}
|
|
74
174
|
/**
|
|
75
175
|
* Review a correction sample (approve or reject).
|
|
76
176
|
*
|
|
77
177
|
* @param sampleId - The sample ID to review
|
|
78
178
|
* @param decision - 'approved' or 'rejected'
|
|
79
179
|
* @param note - Optional review note
|
|
80
|
-
* @param workspaceDir - The workspace directory (DB path: {workspaceDir}/.state
|
|
180
|
+
* @param workspaceDir - The workspace directory (DB path: {workspaceDir}/.state/trajectory.db)
|
|
81
181
|
* @returns The updated CorrectionSampleRecord
|
|
82
|
-
* @throws
|
|
182
|
+
* @throws TrajectoryDbUnavailableError if the database does not exist,
|
|
183
|
+
* cannot be opened, or the schema/query fails
|
|
184
|
+
* @throws Error if the sample is not found
|
|
83
185
|
*/
|
|
84
186
|
// eslint-disable-next-line @typescript-eslint/max-params
|
|
85
187
|
export function reviewCorrectionSample(sampleId, decision, note, workspaceDir) {
|
|
86
|
-
const dbPath =
|
|
188
|
+
const dbPath = resolveTrajectoryDbPath(workspaceDir);
|
|
189
|
+
if (!existsSync(dbPath)) {
|
|
190
|
+
throw new TrajectoryDbUnavailableError(dbPath, 'database file does not exist');
|
|
191
|
+
}
|
|
87
192
|
let db;
|
|
88
193
|
try {
|
|
89
194
|
db = new Database(dbPath);
|
|
90
195
|
}
|
|
91
|
-
catch {
|
|
92
|
-
|
|
196
|
+
catch (err) {
|
|
197
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
198
|
+
throw new TrajectoryDbUnavailableError(dbPath, `cannot be opened: ${msg}`);
|
|
93
199
|
}
|
|
94
200
|
const updatedAt = nowIso();
|
|
201
|
+
let updated = false;
|
|
95
202
|
try {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
203
|
+
// Status change and audit row commit together: a failure in either rolls
|
|
204
|
+
// back both, so an Owner decision never lands without its audit record.
|
|
205
|
+
db.transaction(() => {
|
|
206
|
+
const updateResult = db.prepare(`
|
|
207
|
+
UPDATE correction_samples
|
|
208
|
+
SET review_status = ?, updated_at = ?
|
|
209
|
+
WHERE sample_id = ?
|
|
210
|
+
`).run(decision, updatedAt, sampleId);
|
|
211
|
+
if (updateResult.changes === 0) {
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
db.prepare(`
|
|
215
|
+
INSERT INTO sample_reviews (sample_id, review_status, note, created_at)
|
|
216
|
+
VALUES (?, ?, ?, ?)
|
|
217
|
+
`).run(sampleId, decision, note ?? null, updatedAt);
|
|
218
|
+
updated = true;
|
|
219
|
+
})();
|
|
220
|
+
if (!updated) {
|
|
102
221
|
throw new Error(`Sample not found: ${sampleId}`);
|
|
103
222
|
}
|
|
104
|
-
db.prepare(`
|
|
105
|
-
INSERT INTO sample_reviews (sample_id, review_status, note, created_at)
|
|
106
|
-
VALUES (?, ?, ?, ?)
|
|
107
|
-
`).run(sampleId, decision, note ?? null, updatedAt);
|
|
108
223
|
const record = db.prepare(`
|
|
109
224
|
SELECT sample_id, session_id, bad_assistant_turn_id, user_correction_turn_id,
|
|
110
225
|
recovery_tool_span_json, diff_excerpt, principle_ids_json, quality_score,
|
|
@@ -115,6 +230,19 @@ export function reviewCorrectionSample(sampleId, decision, note, workspaceDir) {
|
|
|
115
230
|
if (!record) {
|
|
116
231
|
throw new Error(`Sample not found after update: ${sampleId}`);
|
|
117
232
|
}
|
|
233
|
+
// Rejection parity with the plugin writer (openclaw-plugin
|
|
234
|
+
// TrajectoryDatabase.recordCorrectionRejectedPain): a rejected correction
|
|
235
|
+
// feeds the pain pipeline as source 'correction_rejected'. Non-fatal by
|
|
236
|
+
// contract — the review result must survive a pain-write failure.
|
|
237
|
+
if (decision === 'rejected') {
|
|
238
|
+
recordCorrectionRejectedPain(db, {
|
|
239
|
+
sessionId: String(record.session_id),
|
|
240
|
+
qualityScore: Number(record.quality_score),
|
|
241
|
+
diffExcerpt: String(record.diff_excerpt ?? ''),
|
|
242
|
+
principleIdsJson: String(record.principle_ids_json ?? '[]'),
|
|
243
|
+
createdAt: String(record.created_at),
|
|
244
|
+
});
|
|
245
|
+
}
|
|
118
246
|
return {
|
|
119
247
|
sampleId: String(record.sample_id),
|
|
120
248
|
sessionId: String(record.session_id),
|
|
@@ -130,6 +258,9 @@ export function reviewCorrectionSample(sampleId, decision, note, workspaceDir) {
|
|
|
130
258
|
updatedAt: String(record.updated_at),
|
|
131
259
|
};
|
|
132
260
|
}
|
|
261
|
+
catch (err) {
|
|
262
|
+
rethrowAsQueryFailed(dbPath, err);
|
|
263
|
+
}
|
|
133
264
|
finally {
|
|
134
265
|
db.close();
|
|
135
266
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory-store.js","sourceRoot":"","sources":["../src/trajectory-store.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"trajectory-store.js","sourceRoot":"","sources":["../src/trajectory-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { describe, it, expect, beforeEach, afterEach } from 'vitest';
|
|
|
2
2
|
import { join } from 'path';
|
|
3
3
|
import { mkdirSync, rmSync } from 'fs';
|
|
4
4
|
import Database from 'better-sqlite3';
|
|
5
|
-
import { listCorrectionSamples, reviewCorrectionSample, } from './trajectory-store.js';
|
|
5
|
+
import { listCorrectionSamples, reviewCorrectionSample, TrajectoryDbUnavailableError, } from './trajectory-store.js';
|
|
6
6
|
describe('trajectory-store', () => {
|
|
7
7
|
let tmpDir;
|
|
8
8
|
beforeEach(() => {
|
|
@@ -65,12 +65,23 @@ describe('trajectory-store', () => {
|
|
|
65
65
|
db.close();
|
|
66
66
|
}
|
|
67
67
|
describe('listCorrectionSamples', () => {
|
|
68
|
-
it('
|
|
68
|
+
it('throws TrajectoryDbUnavailableError when DB does not exist', () => {
|
|
69
|
+
// A missing database is not the same as an empty database: the reader
|
|
70
|
+
// must fail loud instead of returning no rows (rc-3 / rc-9).
|
|
71
|
+
expect(() => listCorrectionSamples(tmpDir)).toThrow(TrajectoryDbUnavailableError);
|
|
72
|
+
});
|
|
73
|
+
it('returns empty array when the database exists but has no matching rows', () => {
|
|
74
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
75
|
+
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
76
|
+
setupTestDb(dbPath);
|
|
77
|
+
const db = new Database(dbPath);
|
|
78
|
+
db.prepare('DELETE FROM correction_samples').run();
|
|
79
|
+
db.close();
|
|
69
80
|
const result = listCorrectionSamples(tmpDir);
|
|
70
81
|
expect(result).toEqual([]);
|
|
71
82
|
});
|
|
72
83
|
it('returns pending samples by default', () => {
|
|
73
|
-
const dbPath = join(tmpDir, '.state', '
|
|
84
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
74
85
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
75
86
|
setupTestDb(dbPath);
|
|
76
87
|
const result = listCorrectionSamples(tmpDir);
|
|
@@ -79,7 +90,7 @@ describe('trajectory-store', () => {
|
|
|
79
90
|
expect(result[0]?.reviewStatus).toBe('pending');
|
|
80
91
|
});
|
|
81
92
|
it('returns approved samples when filtered', () => {
|
|
82
|
-
const dbPath = join(tmpDir, '.state', '
|
|
93
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
83
94
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
84
95
|
setupTestDb(dbPath);
|
|
85
96
|
const result = listCorrectionSamples(tmpDir, 'approved');
|
|
@@ -87,7 +98,7 @@ describe('trajectory-store', () => {
|
|
|
87
98
|
expect(result[0]?.sampleId).toBe('sample-002');
|
|
88
99
|
});
|
|
89
100
|
it('returns rejected samples when filtered', () => {
|
|
90
|
-
const dbPath = join(tmpDir, '.state', '
|
|
101
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
91
102
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
92
103
|
setupTestDb(dbPath);
|
|
93
104
|
const result = listCorrectionSamples(tmpDir, 'rejected');
|
|
@@ -95,7 +106,7 @@ describe('trajectory-store', () => {
|
|
|
95
106
|
expect(result[0]?.sampleId).toBe('sample-003');
|
|
96
107
|
});
|
|
97
108
|
it('returns samples with all expected fields', () => {
|
|
98
|
-
const dbPath = join(tmpDir, '.state', '
|
|
109
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
99
110
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
100
111
|
setupTestDb(dbPath);
|
|
101
112
|
const result = listCorrectionSamples(tmpDir);
|
|
@@ -113,16 +124,15 @@ describe('trajectory-store', () => {
|
|
|
113
124
|
expect(typeof sample?.createdAt).toBe('string');
|
|
114
125
|
expect(typeof sample?.updatedAt).toBe('string');
|
|
115
126
|
});
|
|
116
|
-
it('
|
|
117
|
-
const dbPath = join(tmpDir, '.state', '
|
|
127
|
+
it('throws TrajectoryDbUnavailableError when the database file has no expected schema', () => {
|
|
128
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
118
129
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
119
130
|
const db = new Database(dbPath);
|
|
120
131
|
db.close();
|
|
121
|
-
|
|
122
|
-
expect(result).toEqual([]);
|
|
132
|
+
expect(() => listCorrectionSamples(tmpDir)).toThrow(TrajectoryDbUnavailableError);
|
|
123
133
|
});
|
|
124
134
|
it('orders by created_at DESC', () => {
|
|
125
|
-
const dbPath = join(tmpDir, '.state', '
|
|
135
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
126
136
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
127
137
|
setupTestDb(dbPath);
|
|
128
138
|
const db = new Database(dbPath);
|
|
@@ -139,7 +149,7 @@ describe('trajectory-store', () => {
|
|
|
139
149
|
expect(result[1]?.sampleId).toBe('sample-001');
|
|
140
150
|
});
|
|
141
151
|
it('handles NULL optional fields gracefully', () => {
|
|
142
|
-
const dbPath = join(tmpDir, '.state', '
|
|
152
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
143
153
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
144
154
|
const db = new Database(dbPath);
|
|
145
155
|
db.exec(`
|
|
@@ -175,7 +185,7 @@ describe('trajectory-store', () => {
|
|
|
175
185
|
});
|
|
176
186
|
describe('reviewCorrectionSample', () => {
|
|
177
187
|
it('approves a pending sample', () => {
|
|
178
|
-
const dbPath = join(tmpDir, '.state', '
|
|
188
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
179
189
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
180
190
|
setupTestDb(dbPath);
|
|
181
191
|
const result = reviewCorrectionSample('sample-001', 'approved', 'Looks good', tmpDir);
|
|
@@ -190,7 +200,7 @@ describe('trajectory-store', () => {
|
|
|
190
200
|
db.close();
|
|
191
201
|
});
|
|
192
202
|
it('rejects a pending sample', () => {
|
|
193
|
-
const dbPath = join(tmpDir, '.state', '
|
|
203
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
194
204
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
195
205
|
setupTestDb(dbPath);
|
|
196
206
|
const result = reviewCorrectionSample('sample-001', 'rejected', 'Not applicable', tmpDir);
|
|
@@ -202,16 +212,16 @@ describe('trajectory-store', () => {
|
|
|
202
212
|
db.close();
|
|
203
213
|
});
|
|
204
214
|
it('throws error when sample not found', () => {
|
|
205
|
-
const dbPath = join(tmpDir, '.state', '
|
|
215
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
206
216
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
207
217
|
setupTestDb(dbPath);
|
|
208
218
|
expect(() => reviewCorrectionSample('sample-unknown', 'approved', 'Note', tmpDir)).toThrow('Sample not found: sample-unknown');
|
|
209
219
|
});
|
|
210
|
-
it('throws
|
|
211
|
-
expect(() => reviewCorrectionSample('sample-001', 'approved', 'Note', tmpDir)).toThrow(
|
|
220
|
+
it('throws TrajectoryDbUnavailableError when DB does not exist', () => {
|
|
221
|
+
expect(() => reviewCorrectionSample('sample-001', 'approved', 'Note', tmpDir)).toThrow(TrajectoryDbUnavailableError);
|
|
212
222
|
});
|
|
213
223
|
it('updates updated_at timestamp', () => {
|
|
214
|
-
const dbPath = join(tmpDir, '.state', '
|
|
224
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
215
225
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
216
226
|
setupTestDb(dbPath);
|
|
217
227
|
const db = new Database(dbPath);
|
|
@@ -225,7 +235,7 @@ describe('trajectory-store', () => {
|
|
|
225
235
|
expect(after?.updated_at).not.toBe(before?.updated_at);
|
|
226
236
|
});
|
|
227
237
|
it('handles undefined note', () => {
|
|
228
|
-
const dbPath = join(tmpDir, '.state', '
|
|
238
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
229
239
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
230
240
|
setupTestDb(dbPath);
|
|
231
241
|
const result = reviewCorrectionSample('sample-001', 'approved', undefined, tmpDir);
|
|
@@ -236,7 +246,7 @@ describe('trajectory-store', () => {
|
|
|
236
246
|
db.close();
|
|
237
247
|
});
|
|
238
248
|
it('handles empty note', () => {
|
|
239
|
-
const dbPath = join(tmpDir, '.state', '
|
|
249
|
+
const dbPath = join(tmpDir, '.state', 'trajectory.db');
|
|
240
250
|
mkdirSync(join(tmpDir, '.state'), { recursive: true });
|
|
241
251
|
setupTestDb(dbPath);
|
|
242
252
|
const result = reviewCorrectionSample('sample-001', 'approved', '', tmpDir);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory-store.test.js","sourceRoot":"","sources":["../src/trajectory-store.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"trajectory-store.test.js","sourceRoot":"","sources":["../src/trajectory-store.test.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.279.
|
|
3
|
+
"version": "1.279.2",
|
|
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",
|