create-principles-disciple 1.142.16 → 1.142.18
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/core/dist/evolution-store.d.ts +2 -2
- package/core/dist/evolution-store.d.ts.map +1 -1
- package/core/dist/evolution-store.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js +10 -10
- package/core/dist/runtime-v2/__tests__/artificer-runner-vslice.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/pain-signal-runtime-factory-effectiveconfig-wiring.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/pain-signal-runtime-factory-effectiveconfig-wiring.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/pain-signal-runtime-factory-effectiveconfig-wiring.test.js +109 -0
- package/core/dist/runtime-v2/__tests__/pain-signal-runtime-factory-effectiveconfig-wiring.test.js.map +1 -0
- package/core/dist/runtime-v2/__tests__/story-a-demo.test.js +7 -5
- package/core/dist/runtime-v2/__tests__/story-a-demo.test.js.map +1 -1
- package/core/dist/runtime-v2/__tests__/trajectory-schema.test.d.ts +2 -0
- package/core/dist/runtime-v2/__tests__/trajectory-schema.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/__tests__/trajectory-schema.test.js +85 -0
- package/core/dist/runtime-v2/__tests__/trajectory-schema.test.js.map +1 -0
- package/core/dist/runtime-v2/activation/__tests__/production-gate-deps.test.js +164 -2
- package/core/dist/runtime-v2/activation/__tests__/production-gate-deps.test.js.map +1 -1
- package/core/dist/runtime-v2/activation/index.d.ts +1 -1
- package/core/dist/runtime-v2/activation/index.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/index.js +1 -1
- package/core/dist/runtime-v2/activation/index.js.map +1 -1
- package/core/dist/runtime-v2/activation/production-gate-deps.d.ts +32 -0
- package/core/dist/runtime-v2/activation/production-gate-deps.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/production-gate-deps.js +61 -8
- package/core/dist/runtime-v2/activation/production-gate-deps.js.map +1 -1
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.d.ts.map +1 -1
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.js +8 -4
- package/core/dist/runtime-v2/activation/writers/rule-host-writer.js.map +1 -1
- package/core/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.d.ts +2 -0
- package/core/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.d.ts.map +1 -0
- package/core/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.js +80 -0
- package/core/dist/runtime-v2/adapter/__tests__/schema-prompt-adapter-semantic.test.js.map +1 -0
- package/core/dist/runtime-v2/adapter/schema-prompt-adapter.d.ts.map +1 -1
- package/core/dist/runtime-v2/adapter/schema-prompt-adapter.js +27 -3
- package/core/dist/runtime-v2/adapter/schema-prompt-adapter.js.map +1 -1
- package/core/dist/runtime-v2/index.d.ts +3 -1
- package/core/dist/runtime-v2/index.d.ts.map +1 -1
- package/core/dist/runtime-v2/index.js +3 -1
- package/core/dist/runtime-v2/index.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js +22 -0
- package/core/dist/runtime-v2/internalization/__tests__/scribe-prompt-builder.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/__tests__/split-diagnostician-runner-retry.test.js +179 -1
- package/core/dist/runtime-v2/internalization/__tests__/split-diagnostician-runner-retry.test.js.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts +1 -1
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js +6 -3
- package/core/dist/runtime-v2/internalization/artificer-prompt-builder.js.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/artificer-runner.js +11 -3
- package/core/dist/runtime-v2/internalization/artificer-runner.js.map +1 -1
- package/core/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts +8 -0
- package/core/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/scribe-prompt-builder.js +5 -2
- package/core/dist/runtime-v2/internalization/scribe-prompt-builder.js.map +1 -1
- package/core/dist/runtime-v2/internalization/scribe-runner.d.ts +7 -0
- package/core/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/scribe-runner.js +47 -3
- package/core/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
- package/core/dist/runtime-v2/internalization/split-diagnostician-runner.d.ts +6 -0
- package/core/dist/runtime-v2/internalization/split-diagnostician-runner.d.ts.map +1 -1
- package/core/dist/runtime-v2/internalization/split-diagnostician-runner.js +40 -1
- package/core/dist/runtime-v2/internalization/split-diagnostician-runner.js.map +1 -1
- package/core/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
- package/core/dist/runtime-v2/pain-signal-observability.js +10 -303
- package/core/dist/runtime-v2/pain-signal-observability.js.map +1 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.js +5 -1
- package/core/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
- package/core/dist/runtime-v2/story-a-demo.d.ts.map +1 -1
- package/core/dist/runtime-v2/story-a-demo.js +9 -9
- package/core/dist/runtime-v2/story-a-demo.js.map +1 -1
- package/core/dist/runtime-v2/trajectory-schema.d.ts +45 -0
- package/core/dist/runtime-v2/trajectory-schema.d.ts.map +1 -0
- package/core/dist/runtime-v2/trajectory-schema.js +173 -0
- package/core/dist/runtime-v2/trajectory-schema.js.map +1 -0
- package/core/dist/trajectory-store.d.ts +7 -17
- package/core/dist/trajectory-store.d.ts.map +1 -1
- package/core/dist/trajectory-store.js +5 -1
- package/core/dist/trajectory-store.js.map +1 -1
- package/core/dist/trajectory-types.d.ts +283 -0
- package/core/dist/trajectory-types.d.ts.map +1 -0
- package/core/dist/trajectory-types.js +13 -0
- package/core/dist/trajectory-types.js.map +1 -0
- package/core/package.json +5 -1
- package/dist/update/release-metadata-publisher.d.ts +15 -6
- package/dist/update/release-metadata-publisher.d.ts.map +1 -1
- package/dist/update/release-metadata-publisher.js +71 -28
- package/dist/update/release-metadata-publisher.js.map +1 -1
- package/package.json +2 -2
- package/pd-cli/dist/commands/runtime-init.d.ts.map +1 -1
- package/pd-cli/dist/commands/runtime-init.js +4 -6
- package/pd-cli/dist/commands/runtime-init.js.map +1 -1
- package/pd-cli/dist/services/demo-rule-compiler.d.ts +9 -11
- package/pd-cli/dist/services/demo-rule-compiler.d.ts.map +1 -1
- package/pd-cli/dist/services/demo-rule-compiler.js +11 -37
- package/pd-cli/dist/services/demo-rule-compiler.js.map +1 -1
- package/pd-cli/dist/services/rulehost-pipeline-runner.d.ts +6 -9
- package/pd-cli/dist/services/rulehost-pipeline-runner.d.ts.map +1 -1
- package/pd-cli/dist/services/rulehost-pipeline-runner.js +6 -9
- package/pd-cli/dist/services/rulehost-pipeline-runner.js.map +1 -1
- package/pd-cli/package.json +1 -1
- package/plugin/dist/bundle.js +460 -793
- package/plugin/dist/core/trajectory-types.d.ts +6 -275
- package/plugin/dist/core/trajectory.d.ts +2 -1
- package/plugin/dist/governance-audit.js +150 -150
- package/plugin/dist/rulehost-evidence.js +187 -368
- package/plugin/openclaw.plugin.json +1 -1
- package/plugin/package.json +1 -1
- package/release-manager/dist/update/release-metadata-publisher.d.ts +15 -6
- package/release-manager/dist/update/release-metadata-publisher.d.ts.map +1 -1
- package/release-manager/dist/update/release-metadata-publisher.js +71 -28
- package/release-manager/dist/update/release-metadata-publisher.js.map +1 -1
- package/release-manager/package.json +2 -2
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
/** trajectory.db schema version. Row writes stay with the two existing owner entry points. */
|
|
2
|
+
export const TRAJECTORY_SCHEMA_VERSION = 1;
|
|
3
|
+
/** Fresh-schema table list, in creation order (single derived source). */
|
|
4
|
+
export const TRAJECTORY_TABLES = [
|
|
5
|
+
'schema_version',
|
|
6
|
+
'ingest_checkpoint',
|
|
7
|
+
'sessions',
|
|
8
|
+
'assistant_turns',
|
|
9
|
+
'user_turns',
|
|
10
|
+
'tool_calls',
|
|
11
|
+
'pain_events',
|
|
12
|
+
'gate_blocks',
|
|
13
|
+
'trust_changes',
|
|
14
|
+
'principle_events',
|
|
15
|
+
'task_outcomes',
|
|
16
|
+
'correction_samples',
|
|
17
|
+
'sample_reviews',
|
|
18
|
+
'signal_confirmations',
|
|
19
|
+
'exports_audit',
|
|
20
|
+
];
|
|
21
|
+
/**
|
|
22
|
+
* SQLite's only signal for "column already exists" is the error message text
|
|
23
|
+
* (there is no IF NOT EXISTS for ADD COLUMN); unexpected errors must rethrow.
|
|
24
|
+
*/
|
|
25
|
+
function isDuplicateColumnError(err) {
|
|
26
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
27
|
+
return (message.includes('duplicate column name') || message.includes('no column named'));
|
|
28
|
+
}
|
|
29
|
+
function tableExists(db, name) {
|
|
30
|
+
const row = db
|
|
31
|
+
.prepare(`SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?`)
|
|
32
|
+
.get(name);
|
|
33
|
+
return row !== undefined;
|
|
34
|
+
}
|
|
35
|
+
export function applyTrajectorySchemaBase(db, opts = {}) {
|
|
36
|
+
const warnings = [];
|
|
37
|
+
const tables = [...TRAJECTORY_TABLES];
|
|
38
|
+
db.exec('CREATE TABLE IF NOT EXISTS schema_version (version INTEGER NOT NULL)');
|
|
39
|
+
db.exec('CREATE TABLE IF NOT EXISTS ingest_checkpoint (source_key TEXT PRIMARY KEY, imported_at TEXT NOT NULL)');
|
|
40
|
+
db.exec('CREATE TABLE IF NOT EXISTS sessions (session_id TEXT PRIMARY KEY, started_at TEXT NOT NULL, updated_at TEXT NOT NULL)');
|
|
41
|
+
db.exec('CREATE TABLE IF NOT EXISTS assistant_turns (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT NOT NULL, run_id TEXT NOT NULL, provider TEXT NOT NULL, model TEXT NOT NULL, raw_text TEXT, sanitized_text TEXT NOT NULL, usage_json TEXT NOT NULL, empathy_signal_json TEXT NOT NULL, blob_ref TEXT, raw_excerpt TEXT, stop_reason TEXT, thinking_blocks_count INTEGER, created_at TEXT NOT NULL)');
|
|
42
|
+
db.exec('CREATE TABLE IF NOT EXISTS user_turns (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT NOT NULL, turn_index INTEGER NOT NULL, raw_text TEXT, blob_ref TEXT, raw_excerpt TEXT, correction_detected INTEGER NOT NULL DEFAULT 0, correction_cue TEXT, references_assistant_turn_id INTEGER, created_at TEXT NOT NULL)');
|
|
43
|
+
db.exec('CREATE TABLE IF NOT EXISTS tool_calls (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT NOT NULL, tool_name TEXT NOT NULL, outcome TEXT NOT NULL, duration_ms INTEGER, exit_code INTEGER, error_type TEXT, error_message TEXT, gfi_before REAL, gfi_after REAL, params_json TEXT NOT NULL, result_preview TEXT, created_at TEXT NOT NULL)');
|
|
44
|
+
db.exec('CREATE TABLE IF NOT EXISTS pain_events (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT NOT NULL, source TEXT NOT NULL, score REAL NOT NULL, reason TEXT, severity TEXT, origin TEXT, confidence REAL, text TEXT, canonical_pain_id TEXT, runtime_task_id TEXT, host_kind TEXT, created_at TEXT NOT NULL)');
|
|
45
|
+
db.exec('CREATE TABLE IF NOT EXISTS gate_blocks (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT, tool_name TEXT NOT NULL, file_path TEXT, reason TEXT NOT NULL, created_at TEXT NOT NULL)');
|
|
46
|
+
db.exec('CREATE TABLE IF NOT EXISTS trust_changes (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT, previous_score REAL NOT NULL, new_score REAL NOT NULL, delta REAL NOT NULL, reason TEXT NOT NULL, created_at TEXT NOT NULL)');
|
|
47
|
+
db.exec('CREATE TABLE IF NOT EXISTS principle_events (id INTEGER PRIMARY KEY AUTOINCREMENT, principle_id TEXT, event_type TEXT NOT NULL, payload_json TEXT NOT NULL, created_at TEXT NOT NULL)');
|
|
48
|
+
db.exec('CREATE TABLE IF NOT EXISTS task_outcomes (id INTEGER PRIMARY KEY AUTOINCREMENT, session_id TEXT NOT NULL, task_id TEXT, outcome TEXT NOT NULL, summary TEXT, principle_ids_json TEXT NOT NULL, created_at TEXT NOT NULL)');
|
|
49
|
+
db.exec('CREATE TABLE IF NOT EXISTS correction_samples (sample_id TEXT PRIMARY KEY, session_id TEXT NOT NULL, bad_assistant_turn_id INTEGER NOT NULL, user_correction_turn_id INTEGER NOT NULL, recovery_tool_span_json TEXT NOT NULL, diff_excerpt TEXT NOT NULL, principle_ids_json TEXT NOT NULL, quality_score REAL NOT NULL, review_status TEXT NOT NULL, export_mode TEXT NOT NULL, created_at TEXT NOT NULL, updated_at TEXT NOT NULL)');
|
|
50
|
+
db.exec('CREATE TABLE IF NOT EXISTS sample_reviews (id INTEGER PRIMARY KEY AUTOINCREMENT, sample_id TEXT NOT NULL, review_status TEXT NOT NULL, note TEXT, created_at TEXT NOT NULL)');
|
|
51
|
+
db.exec('CREATE TABLE IF NOT EXISTS signal_confirmations (id TEXT PRIMARY KEY, session_id TEXT NOT NULL, user_turn_rowid INTEGER NOT NULL UNIQUE, occurrence_id TEXT NOT NULL, excerpt TEXT NOT NULL, terms_json TEXT NOT NULL, suggested_type TEXT NOT NULL, status TEXT NOT NULL DEFAULT \'pending\' CHECK (status IN (\'pending\',\'confirmed\',\'rejected\',\'abandoned\')), attempts INTEGER NOT NULL DEFAULT 0, created_at TEXT NOT NULL, resolved_at TEXT, resolution TEXT)');
|
|
52
|
+
db.exec('CREATE TABLE IF NOT EXISTS exports_audit (id INTEGER PRIMARY KEY AUTOINCREMENT, export_kind TEXT NOT NULL, mode TEXT NOT NULL, approved_only INTEGER NOT NULL, file_path TEXT NOT NULL, row_count INTEGER NOT NULL, created_at TEXT NOT NULL)');
|
|
53
|
+
// Migration: Add text column to pain_events if it doesn't exist (MEM-01).
|
|
54
|
+
try {
|
|
55
|
+
db.exec('ALTER TABLE pain_events ADD COLUMN text TEXT');
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
if (!isDuplicateColumnError(err))
|
|
59
|
+
throw err;
|
|
60
|
+
}
|
|
61
|
+
// PRI-406: canonical_pain_id + runtime_task_id columns.
|
|
62
|
+
try {
|
|
63
|
+
db.exec('ALTER TABLE pain_events ADD COLUMN canonical_pain_id TEXT');
|
|
64
|
+
}
|
|
65
|
+
catch (err) {
|
|
66
|
+
if (!isDuplicateColumnError(err))
|
|
67
|
+
throw err;
|
|
68
|
+
}
|
|
69
|
+
try {
|
|
70
|
+
db.exec('ALTER TABLE pain_events ADD COLUMN runtime_task_id TEXT');
|
|
71
|
+
}
|
|
72
|
+
catch (err) {
|
|
73
|
+
if (!isDuplicateColumnError(err))
|
|
74
|
+
throw err;
|
|
75
|
+
}
|
|
76
|
+
// PRI-640: host attribution — observability metadata only, orthogonal to
|
|
77
|
+
// `origin` (evidence semantics) and excluded from canonical pain identity.
|
|
78
|
+
try {
|
|
79
|
+
db.exec('ALTER TABLE pain_events ADD COLUMN host_kind TEXT');
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
if (!isDuplicateColumnError(err))
|
|
83
|
+
throw err;
|
|
84
|
+
}
|
|
85
|
+
// Trajectory enhancement: stop_reason / thinking_blocks_count / result_preview.
|
|
86
|
+
try {
|
|
87
|
+
db.exec('ALTER TABLE assistant_turns ADD COLUMN stop_reason TEXT');
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
if (!isDuplicateColumnError(err))
|
|
91
|
+
throw err;
|
|
92
|
+
}
|
|
93
|
+
try {
|
|
94
|
+
db.exec('ALTER TABLE assistant_turns ADD COLUMN thinking_blocks_count INTEGER');
|
|
95
|
+
}
|
|
96
|
+
catch (err) {
|
|
97
|
+
if (!isDuplicateColumnError(err))
|
|
98
|
+
throw err;
|
|
99
|
+
}
|
|
100
|
+
try {
|
|
101
|
+
db.exec('ALTER TABLE tool_calls ADD COLUMN result_preview TEXT');
|
|
102
|
+
}
|
|
103
|
+
catch (err) {
|
|
104
|
+
if (!isDuplicateColumnError(err))
|
|
105
|
+
throw err;
|
|
106
|
+
}
|
|
107
|
+
// PRI-406: Partial unique index on canonical_pain_id (non-null only) for dedup.
|
|
108
|
+
db.exec('CREATE UNIQUE INDEX IF NOT EXISTS idx_pain_events_canonical_pain_id ON pain_events(canonical_pain_id) WHERE canonical_pain_id IS NOT NULL');
|
|
109
|
+
// PRI-770/773: evolution_tasks historical column backfill — only when the
|
|
110
|
+
// legacy table exists (old workspaces); fresh workspaces never create it.
|
|
111
|
+
if (tableExists(db, 'evolution_tasks')) {
|
|
112
|
+
try {
|
|
113
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN task_kind TEXT');
|
|
114
|
+
}
|
|
115
|
+
catch (err) {
|
|
116
|
+
if (!isDuplicateColumnError(err))
|
|
117
|
+
throw err;
|
|
118
|
+
}
|
|
119
|
+
try {
|
|
120
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN priority TEXT');
|
|
121
|
+
}
|
|
122
|
+
catch (err) {
|
|
123
|
+
if (!isDuplicateColumnError(err))
|
|
124
|
+
throw err;
|
|
125
|
+
}
|
|
126
|
+
try {
|
|
127
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN retry_count INTEGER');
|
|
128
|
+
}
|
|
129
|
+
catch (err) {
|
|
130
|
+
if (!isDuplicateColumnError(err))
|
|
131
|
+
throw err;
|
|
132
|
+
}
|
|
133
|
+
try {
|
|
134
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN max_retries INTEGER');
|
|
135
|
+
}
|
|
136
|
+
catch (err) {
|
|
137
|
+
if (!isDuplicateColumnError(err))
|
|
138
|
+
throw err;
|
|
139
|
+
}
|
|
140
|
+
try {
|
|
141
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN last_error TEXT');
|
|
142
|
+
}
|
|
143
|
+
catch (err) {
|
|
144
|
+
if (!isDuplicateColumnError(err))
|
|
145
|
+
throw err;
|
|
146
|
+
}
|
|
147
|
+
try {
|
|
148
|
+
db.exec('ALTER TABLE evolution_tasks ADD COLUMN result_ref TEXT');
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
if (!isDuplicateColumnError(err))
|
|
152
|
+
throw err;
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
// Secondary indexes (creation order preserved from the pre-convergence copy).
|
|
156
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_assistant_turns_session_id ON assistant_turns(session_id)');
|
|
157
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_assistant_turns_created_at ON assistant_turns(created_at)');
|
|
158
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_assistant_turns_provider_model ON assistant_turns(provider, model)');
|
|
159
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_user_turns_session_id ON user_turns(session_id)');
|
|
160
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_tool_calls_session_id ON tool_calls(session_id)');
|
|
161
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_tool_calls_created_at ON tool_calls(created_at)');
|
|
162
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_pain_events_session_id ON pain_events(session_id)');
|
|
163
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_correction_samples_review_status ON correction_samples(review_status)');
|
|
164
|
+
db.exec('CREATE INDEX IF NOT EXISTS idx_signal_confirmations_status ON signal_confirmations(status, attempts)');
|
|
165
|
+
// Profile B views (runtime-init only; intentional asymmetry vs Profile A).
|
|
166
|
+
if (opts.views === true) {
|
|
167
|
+
db.exec("CREATE VIEW IF NOT EXISTS v_error_clusters AS SELECT tool_name, COALESCE(error_type, 'unknown') AS error_type, COUNT(*) AS occurrences FROM tool_calls WHERE outcome = 'failure' GROUP BY tool_name, COALESCE(error_type, 'unknown') ORDER BY occurrences DESC");
|
|
168
|
+
db.exec('CREATE VIEW IF NOT EXISTS v_principle_effectiveness AS SELECT event_type, COUNT(*) AS total FROM principle_events GROUP BY event_type ORDER BY total DESC');
|
|
169
|
+
db.exec('CREATE VIEW IF NOT EXISTS v_sample_queue AS SELECT review_status, COUNT(*) AS total FROM correction_samples GROUP BY review_status');
|
|
170
|
+
}
|
|
171
|
+
return { tables, warnings };
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=trajectory-schema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trajectory-schema.js","sourceRoot":"","sources":["../../src/runtime-v2/trajectory-schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,28 +6,18 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Reads the canonical workspace trajectory database
|
|
8
8
|
* (`{workspaceDir}/.state/trajectory.db`) written by openclaw-plugin
|
|
9
|
-
* TrajectoryDatabase —
|
|
9
|
+
* TrajectoryDatabase — the path pin below (`resolveTrajectoryDbPath`) is the
|
|
10
|
+
* shared path contract: core must not import from openclaw-plugin, so the
|
|
11
|
+
* relative path is pinned here, and the plugin-to-core round-trip test
|
|
12
|
+
* (openclaw-plugin tests/core/trajectory-store-round-trip.test.ts) fails if
|
|
13
|
+
* either side moves the file.
|
|
10
14
|
*
|
|
11
15
|
* @example
|
|
12
16
|
* import { listCorrectionSamples, reviewCorrectionSample } from '@principles/core/trajectory-store';
|
|
13
17
|
*/
|
|
14
18
|
import Database from 'better-sqlite3';
|
|
15
|
-
|
|
16
|
-
export type CorrectionExportMode
|
|
17
|
-
export interface CorrectionSampleRecord {
|
|
18
|
-
sampleId: string;
|
|
19
|
-
sessionId: string;
|
|
20
|
-
badAssistantTurnId: number;
|
|
21
|
-
userCorrectionTurnId: number;
|
|
22
|
-
recoveryToolSpanJson: string;
|
|
23
|
-
diffExcerpt: string;
|
|
24
|
-
principleIdsJson: string;
|
|
25
|
-
qualityScore: number;
|
|
26
|
-
reviewStatus: CorrectionSampleReviewStatus;
|
|
27
|
-
exportMode: CorrectionExportMode;
|
|
28
|
-
createdAt: string;
|
|
29
|
-
updatedAt: string;
|
|
30
|
-
}
|
|
19
|
+
import type { CorrectionSampleReviewStatus, CorrectionSampleRecord } from './trajectory-types.js';
|
|
20
|
+
export type { CorrectionSampleReviewStatus, CorrectionExportMode, CorrectionSampleRecord, } from './trajectory-types.js';
|
|
31
21
|
/**
|
|
32
22
|
* Canonical trajectory.db location shared by every SDK reader.
|
|
33
23
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory-store.d.ts","sourceRoot":"","sources":["../src/trajectory-store.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"trajectory-store.d.ts","sourceRoot":"","sources":["../src/trajectory-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAGtC,OAAO,KAAK,EACV,4BAA4B,EAE5B,sBAAsB,EACvB,MAAM,uBAAuB,CAAC;AAO/B,YAAY,EACV,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAc/B;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED;;;;;;GAMG;AACH,qBAAa,4BAA6B,SAAQ,KAAK;IACrD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,YAAY,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAIzC;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAahF;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,KAAK,CAKxE;AAMD;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,MAAM,EACpB,MAAM,GAAE,4BAAwC,GAC/C,sBAAsB,EAAE,CAiC1B;AAuDD;;;;;;;;;;;GAWG;AAEH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,UAAU,GAAG,UAAU,EACjC,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,YAAY,EAAE,MAAM,GACnB,sBAAsB,CAyFxB"}
|
|
@@ -6,7 +6,11 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Reads the canonical workspace trajectory database
|
|
8
8
|
* (`{workspaceDir}/.state/trajectory.db`) written by openclaw-plugin
|
|
9
|
-
* TrajectoryDatabase —
|
|
9
|
+
* TrajectoryDatabase — the path pin below (`resolveTrajectoryDbPath`) is the
|
|
10
|
+
* shared path contract: core must not import from openclaw-plugin, so the
|
|
11
|
+
* relative path is pinned here, and the plugin-to-core round-trip test
|
|
12
|
+
* (openclaw-plugin tests/core/trajectory-store-round-trip.test.ts) fails if
|
|
13
|
+
* either side moves the file.
|
|
10
14
|
*
|
|
11
15
|
* @example
|
|
12
16
|
* import { listCorrectionSamples, reviewCorrectionSample } from '@principles/core/trajectory-store';
|
|
@@ -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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"}
|
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trajectory database type definitions — SINGLE HOME (PRI-774).
|
|
3
|
+
*
|
|
4
|
+
* PURPOSE: Track task outcomes, trust changes, and evolution progress over time.
|
|
5
|
+
* USAGE: Insights, trends, and Phase 3 supporting evidence (where explicitly allowed).
|
|
6
|
+
* NOT FOR: Control decisions, Phase 3 eligibility, or real-time operations.
|
|
7
|
+
*
|
|
8
|
+
* Layering (PRI-753): trajectory.db stores session-evidence/history; state.db
|
|
9
|
+
* stays the governance/task store. The openclaw-plugin re-exports these types
|
|
10
|
+
* via a compatibility shim — do NOT re-copy them elsewhere.
|
|
11
|
+
*/
|
|
12
|
+
export type CorrectionSampleReviewStatus = 'pending' | 'approved' | 'rejected';
|
|
13
|
+
export type CorrectionExportMode = 'raw' | 'redacted';
|
|
14
|
+
export interface TrajectoryDataStats {
|
|
15
|
+
dbPath: string;
|
|
16
|
+
dbSizeBytes: number;
|
|
17
|
+
assistantTurns: number;
|
|
18
|
+
userTurns: number;
|
|
19
|
+
toolCalls: number;
|
|
20
|
+
painEvents: number;
|
|
21
|
+
pendingSamples: number;
|
|
22
|
+
approvedSamples: number;
|
|
23
|
+
blobBytes: number;
|
|
24
|
+
lastIngestAt: string | null;
|
|
25
|
+
}
|
|
26
|
+
export interface TrajectoryAssistantTurnInput {
|
|
27
|
+
sessionId: string;
|
|
28
|
+
runId: string;
|
|
29
|
+
provider: string;
|
|
30
|
+
model: string;
|
|
31
|
+
rawText: string;
|
|
32
|
+
sanitizedText: string;
|
|
33
|
+
usageJson: unknown;
|
|
34
|
+
empathySignalJson: unknown;
|
|
35
|
+
stopReason?: string | null;
|
|
36
|
+
thinkingBlocksCount?: number | null;
|
|
37
|
+
createdAt?: string;
|
|
38
|
+
}
|
|
39
|
+
export interface TrajectoryUserTurnInput {
|
|
40
|
+
sessionId: string;
|
|
41
|
+
turnIndex: number;
|
|
42
|
+
rawText: string;
|
|
43
|
+
correctionDetected: boolean;
|
|
44
|
+
correctionCue?: string | null;
|
|
45
|
+
referencesAssistantTurnId?: number | null;
|
|
46
|
+
createdAt?: string;
|
|
47
|
+
}
|
|
48
|
+
export interface TrajectoryToolCallInput {
|
|
49
|
+
sessionId: string;
|
|
50
|
+
toolName: string;
|
|
51
|
+
outcome: 'success' | 'failure' | 'blocked';
|
|
52
|
+
durationMs?: number | null;
|
|
53
|
+
exitCode?: number | null;
|
|
54
|
+
errorType?: string | null;
|
|
55
|
+
errorMessage?: string | null;
|
|
56
|
+
gfiBefore?: number | null;
|
|
57
|
+
gfiAfter?: number | null;
|
|
58
|
+
paramsJson?: unknown;
|
|
59
|
+
resultPreview?: string | null;
|
|
60
|
+
createdAt?: string;
|
|
61
|
+
}
|
|
62
|
+
export interface TrajectoryPainEventInput {
|
|
63
|
+
sessionId: string;
|
|
64
|
+
source: string;
|
|
65
|
+
score: number;
|
|
66
|
+
reason?: string | null;
|
|
67
|
+
severity?: string | null;
|
|
68
|
+
origin?: string | null;
|
|
69
|
+
confidence?: number | null;
|
|
70
|
+
text?: string;
|
|
71
|
+
createdAt?: string;
|
|
72
|
+
/** PRI-406: Canonical pain identity (e.g. manual_<ts>_<hash> or pain_<ts>_<hash>). */
|
|
73
|
+
canonicalPainId?: string;
|
|
74
|
+
/** PRI-406: Runtime V2 diagnostician task ID linked to this pain event. */
|
|
75
|
+
runtimeTaskId?: string;
|
|
76
|
+
/** PRI-640: Host attribution ('openclaw' | 'codex'); omit for manual/legacy (persists NULL = unknown). */
|
|
77
|
+
hostKind?: 'openclaw' | 'codex';
|
|
78
|
+
}
|
|
79
|
+
export interface TrajectoryGateBlockInput {
|
|
80
|
+
sessionId?: string | null;
|
|
81
|
+
toolName: string;
|
|
82
|
+
filePath?: string | null;
|
|
83
|
+
reason: string;
|
|
84
|
+
createdAt?: string;
|
|
85
|
+
}
|
|
86
|
+
type DailyMetricRow = {
|
|
87
|
+
day: string;
|
|
88
|
+
tool_calls: number;
|
|
89
|
+
failures: number;
|
|
90
|
+
user_corrections: number;
|
|
91
|
+
};
|
|
92
|
+
export interface TrajectoryTrustChangeInput {
|
|
93
|
+
sessionId?: string | null;
|
|
94
|
+
previousScore: number;
|
|
95
|
+
newScore: number;
|
|
96
|
+
delta: number;
|
|
97
|
+
reason: string;
|
|
98
|
+
createdAt?: string;
|
|
99
|
+
}
|
|
100
|
+
export interface TrajectoryPrincipleEventInput {
|
|
101
|
+
principleId?: string | null;
|
|
102
|
+
eventType: string;
|
|
103
|
+
payload: unknown;
|
|
104
|
+
createdAt?: string;
|
|
105
|
+
}
|
|
106
|
+
export interface TrajectoryTaskOutcomeInput {
|
|
107
|
+
sessionId: string;
|
|
108
|
+
taskId?: string | null;
|
|
109
|
+
outcome: string;
|
|
110
|
+
summary?: string | null;
|
|
111
|
+
principleIdsJson?: unknown;
|
|
112
|
+
createdAt?: string;
|
|
113
|
+
}
|
|
114
|
+
export interface TrajectorySessionInput {
|
|
115
|
+
sessionId: string;
|
|
116
|
+
startedAt?: string;
|
|
117
|
+
}
|
|
118
|
+
export type TaskKind = 'pain_diagnosis' | 'sleep_reflection' | 'model_eval' | 'keyword_optimization';
|
|
119
|
+
export type TaskPriority = 'high' | 'medium' | 'low';
|
|
120
|
+
interface EvolutionTaskInputBase {
|
|
121
|
+
taskId: string;
|
|
122
|
+
traceId: string;
|
|
123
|
+
source: string;
|
|
124
|
+
reason?: string | null;
|
|
125
|
+
score?: number;
|
|
126
|
+
status?: string;
|
|
127
|
+
enqueuedAt?: string | null;
|
|
128
|
+
startedAt?: string | null;
|
|
129
|
+
completedAt?: string | null;
|
|
130
|
+
resolution?: string | null;
|
|
131
|
+
createdAt?: string;
|
|
132
|
+
updatedAt?: string;
|
|
133
|
+
}
|
|
134
|
+
export interface EvolutionTaskInputV2 extends EvolutionTaskInputBase {
|
|
135
|
+
taskKind?: TaskKind;
|
|
136
|
+
priority?: TaskPriority;
|
|
137
|
+
retryCount?: number;
|
|
138
|
+
maxRetries?: number;
|
|
139
|
+
lastError?: string | null;
|
|
140
|
+
resultRef?: string | null;
|
|
141
|
+
}
|
|
142
|
+
export type EvolutionTaskInput = EvolutionTaskInputV2;
|
|
143
|
+
export interface EvolutionEventInput {
|
|
144
|
+
traceId: string;
|
|
145
|
+
taskId?: string | null;
|
|
146
|
+
stage: string;
|
|
147
|
+
level?: string;
|
|
148
|
+
message: string;
|
|
149
|
+
summary?: string | null;
|
|
150
|
+
metadata?: unknown;
|
|
151
|
+
createdAt?: string;
|
|
152
|
+
}
|
|
153
|
+
export interface EvolutionTaskRecord {
|
|
154
|
+
id: number;
|
|
155
|
+
taskId: string;
|
|
156
|
+
traceId: string;
|
|
157
|
+
source: string;
|
|
158
|
+
reason: string | null;
|
|
159
|
+
score: number;
|
|
160
|
+
status: string;
|
|
161
|
+
enqueuedAt: string | null;
|
|
162
|
+
startedAt: string | null;
|
|
163
|
+
completedAt: string | null;
|
|
164
|
+
resolution: string | null;
|
|
165
|
+
createdAt: string;
|
|
166
|
+
updatedAt: string;
|
|
167
|
+
taskKind: TaskKind | null;
|
|
168
|
+
priority: TaskPriority | null;
|
|
169
|
+
retryCount: number | null;
|
|
170
|
+
maxRetries: number | null;
|
|
171
|
+
lastError: string | null;
|
|
172
|
+
resultRef: string | null;
|
|
173
|
+
}
|
|
174
|
+
export interface EvolutionEventRecord {
|
|
175
|
+
id: number;
|
|
176
|
+
traceId: string;
|
|
177
|
+
taskId: string | null;
|
|
178
|
+
stage: string;
|
|
179
|
+
level: string;
|
|
180
|
+
message: string;
|
|
181
|
+
summary: string | null;
|
|
182
|
+
metadata: Record<string, unknown>;
|
|
183
|
+
createdAt: string;
|
|
184
|
+
}
|
|
185
|
+
export interface EvolutionTaskFilters {
|
|
186
|
+
status?: string;
|
|
187
|
+
dateFrom?: string;
|
|
188
|
+
dateTo?: string;
|
|
189
|
+
limit?: number;
|
|
190
|
+
offset?: number;
|
|
191
|
+
}
|
|
192
|
+
export interface AssistantTurnRecord {
|
|
193
|
+
id: number;
|
|
194
|
+
sessionId: string;
|
|
195
|
+
runId: string;
|
|
196
|
+
provider: string;
|
|
197
|
+
model: string;
|
|
198
|
+
rawText: string;
|
|
199
|
+
sanitizedText: string;
|
|
200
|
+
blobRef: string | null;
|
|
201
|
+
stopReason: string | null;
|
|
202
|
+
thinkingBlocksCount: number | null;
|
|
203
|
+
createdAt: string;
|
|
204
|
+
}
|
|
205
|
+
export interface CorrectionSampleRecord {
|
|
206
|
+
sampleId: string;
|
|
207
|
+
sessionId: string;
|
|
208
|
+
badAssistantTurnId: number;
|
|
209
|
+
userCorrectionTurnId: number;
|
|
210
|
+
recoveryToolSpanJson: string;
|
|
211
|
+
diffExcerpt: string;
|
|
212
|
+
principleIdsJson: string;
|
|
213
|
+
qualityScore: number;
|
|
214
|
+
reviewStatus: CorrectionSampleReviewStatus;
|
|
215
|
+
exportMode: CorrectionExportMode;
|
|
216
|
+
createdAt: string;
|
|
217
|
+
updatedAt: string;
|
|
218
|
+
}
|
|
219
|
+
export interface TrajectoryExportResult {
|
|
220
|
+
filePath: string;
|
|
221
|
+
count: number;
|
|
222
|
+
mode?: CorrectionExportMode;
|
|
223
|
+
}
|
|
224
|
+
export interface TrajectoryDatabaseOptions {
|
|
225
|
+
workspaceDir: string;
|
|
226
|
+
blobInlineThresholdBytes?: number;
|
|
227
|
+
busyTimeoutMs?: number;
|
|
228
|
+
orphanBlobGraceDays?: number;
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Raw row from tool_calls for RuleContext v2 history assembly.
|
|
232
|
+
* Fields are raw strings from SQLite — the assembler validates them as unknown.
|
|
233
|
+
*/
|
|
234
|
+
export interface RuleHostContextRow {
|
|
235
|
+
readonly id: number;
|
|
236
|
+
readonly toolName: string;
|
|
237
|
+
readonly outcome: string;
|
|
238
|
+
readonly paramsJson: string;
|
|
239
|
+
}
|
|
240
|
+
/** A single tool call selected by an Owner as labelled RuleHost evidence. */
|
|
241
|
+
export interface RuleHostEvidenceRow extends RuleHostContextRow {
|
|
242
|
+
readonly sessionId: string;
|
|
243
|
+
}
|
|
244
|
+
/**
|
|
245
|
+
* Result of getRuleHostContextRows: FIFO-ordered rows + truncated flag.
|
|
246
|
+
* truncated=true when more than `limit` rows existed (limit+1 read trick).
|
|
247
|
+
*/
|
|
248
|
+
export interface RuleHostContextResult {
|
|
249
|
+
readonly rows: readonly RuleHostContextRow[];
|
|
250
|
+
readonly truncated: boolean;
|
|
251
|
+
}
|
|
252
|
+
export type { DailyMetricRow };
|
|
253
|
+
export type SignalConfirmationStatus = 'pending' | 'confirmed' | 'rejected' | 'abandoned';
|
|
254
|
+
/** 入队载荷(id 由 store 派生:sha256(sessionId:userTurnRowid) 前 12 位)。 */
|
|
255
|
+
export interface SignalConfirmationInput {
|
|
256
|
+
readonly sessionId: string;
|
|
257
|
+
/** Stage1 写入 user_turns 返回的 rowid(G1 回写寻址键;UNIQUE 幂等)。 */
|
|
258
|
+
readonly userTurnRowid: number;
|
|
259
|
+
/** 与 realtime 路径一致的 occurrence 身份(ADR-0020 §11.4,批量确认复现同一 canonical pain)。 */
|
|
260
|
+
readonly occurrenceId: string;
|
|
261
|
+
readonly excerpt: string;
|
|
262
|
+
/** Stage1 命中的词列表(JSON 落库)。 */
|
|
263
|
+
readonly terms: readonly string[];
|
|
264
|
+
/** Stage1 建议类别:correction | empathy。 */
|
|
265
|
+
readonly suggestedType: string;
|
|
266
|
+
readonly createdAt: string;
|
|
267
|
+
}
|
|
268
|
+
/** signal_confirmations 行(camelCase 投影)。 */
|
|
269
|
+
export interface SignalConfirmationRow {
|
|
270
|
+
readonly id: string;
|
|
271
|
+
readonly sessionId: string;
|
|
272
|
+
readonly userTurnRowid: number;
|
|
273
|
+
readonly occurrenceId: string;
|
|
274
|
+
readonly excerpt: string;
|
|
275
|
+
readonly terms: readonly string[];
|
|
276
|
+
readonly suggestedType: string;
|
|
277
|
+
readonly status: SignalConfirmationStatus;
|
|
278
|
+
readonly attempts: number;
|
|
279
|
+
readonly createdAt: string;
|
|
280
|
+
readonly resolvedAt: string | null;
|
|
281
|
+
readonly resolution: string | null;
|
|
282
|
+
}
|
|
283
|
+
//# sourceMappingURL=trajectory-types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trajectory-types.d.ts","sourceRoot":"","sources":["../src/trajectory-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,MAAM,4BAA4B,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAC/E,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,UAAU,CAAC;AAEtD,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,4BAA4B;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,OAAO,CAAC;IACnB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0GAA0G;IAC1G,QAAQ,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC;CACjC;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,KAAK,cAAc,GAAG;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,MAAM,QAAQ,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,YAAY,GAAG,sBAAsB,CAAC;AACrG,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AAGrD,UAAU,sBAAsB;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,oBAAqB,SAAQ,sBAAsB;IAClE,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAC;AAEtD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,YAAY,GAAG,IAAI,CAAC;IAC9B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,4BAA4B,CAAC;IAC3C,UAAU,EAAE,oBAAoB,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,oBAAoB,CAAC;CAC7B;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,6EAA6E;AAC7E,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,IAAI,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC7C,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B;AAED,YAAY,EAAE,cAAc,EAAE,CAAC;AAI/B,MAAM,MAAM,wBAAwB,GAAG,SAAS,GAAG,WAAW,GAAG,UAAU,GAAG,WAAW,CAAC;AAE1F,kEAAkE;AAClE,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,0DAA0D;IAC1D,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,8BAA8B;IAC9B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,wCAAwC;IACxC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,4CAA4C;AAC5C,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Trajectory database type definitions — SINGLE HOME (PRI-774).
|
|
3
|
+
*
|
|
4
|
+
* PURPOSE: Track task outcomes, trust changes, and evolution progress over time.
|
|
5
|
+
* USAGE: Insights, trends, and Phase 3 supporting evidence (where explicitly allowed).
|
|
6
|
+
* NOT FOR: Control decisions, Phase 3 eligibility, or real-time operations.
|
|
7
|
+
*
|
|
8
|
+
* Layering (PRI-753): trajectory.db stores session-evidence/history; state.db
|
|
9
|
+
* stays the governance/task store. The openclaw-plugin re-exports these types
|
|
10
|
+
* via a compatibility shim — do NOT re-copy them elsewhere.
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=trajectory-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trajectory-types.js","sourceRoot":"","sources":["../src/trajectory-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
|
package/core/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@principles/core",
|
|
3
|
-
"version": "1.284.
|
|
3
|
+
"version": "1.284.15",
|
|
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",
|
|
@@ -18,6 +18,10 @@
|
|
|
18
18
|
"types": "./dist/trajectory-store.d.ts",
|
|
19
19
|
"default": "./dist/trajectory-store.js"
|
|
20
20
|
},
|
|
21
|
+
"./trajectory-types": {
|
|
22
|
+
"types": "./dist/trajectory-types.d.ts",
|
|
23
|
+
"default": "./dist/trajectory-types.js"
|
|
24
|
+
},
|
|
21
25
|
"./prompt-builder": {
|
|
22
26
|
"types": "./dist/prompt-builder/index.d.ts",
|
|
23
27
|
"default": "./dist/prompt-builder/index.js"
|
|
@@ -76,7 +76,12 @@ export interface ReleasePublicationInput {
|
|
|
76
76
|
readonly expiresAt: string;
|
|
77
77
|
readonly minBootstrapVersion: string;
|
|
78
78
|
readonly dataSchemaForwardReadableFrom: string;
|
|
79
|
-
|
|
79
|
+
/**
|
|
80
|
+
* The release-asset archives published as artifact targets (PRI-733: one
|
|
81
|
+
* entry per platform built by the CI matrix; the assemble job passes all
|
|
82
|
+
* of them so one release covers every platform in a single publication).
|
|
83
|
+
*/
|
|
84
|
+
readonly archives: readonly PublicationArchive[];
|
|
80
85
|
/** PEM-encoded ed25519 PRIVATE key signing the whole repository. */
|
|
81
86
|
readonly signingKeyPem: string;
|
|
82
87
|
readonly previous?: PreviousPublication | null;
|
|
@@ -86,17 +91,21 @@ export interface PublicationFile {
|
|
|
86
91
|
readonly path: string;
|
|
87
92
|
readonly bytes: Buffer;
|
|
88
93
|
}
|
|
89
|
-
export interface
|
|
90
|
-
readonly releaseId: string;
|
|
91
|
-
readonly productVersion: string;
|
|
92
|
-
readonly channel: ReleaseChannelName;
|
|
94
|
+
export interface ReleasePublicationManifestArtifact {
|
|
93
95
|
readonly platform: string;
|
|
94
96
|
readonly arch: string;
|
|
95
97
|
readonly nodeAbi: string;
|
|
96
|
-
readonly sourceCommit: string;
|
|
97
98
|
readonly artifactSha256: string;
|
|
98
99
|
readonly artifactSizeBytes: number;
|
|
99
100
|
readonly artifactTargetPath: string;
|
|
101
|
+
}
|
|
102
|
+
export interface ReleasePublicationManifest {
|
|
103
|
+
readonly releaseId: string;
|
|
104
|
+
readonly productVersion: string;
|
|
105
|
+
readonly channel: ReleaseChannelName;
|
|
106
|
+
/** One entry per published platform archive, sorted by platform/arch/abi. */
|
|
107
|
+
readonly artifacts: readonly ReleasePublicationManifestArtifact[];
|
|
108
|
+
readonly sourceCommit: string;
|
|
100
109
|
readonly keyId: string;
|
|
101
110
|
readonly signingScheme: 'ed25519';
|
|
102
111
|
readonly publicationSequence: number;
|