@principles/core 4.1.0 → 4.2.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/runtime-v2/adapter/output-schema-registry.d.ts +3 -1
- package/dist/runtime-v2/adapter/output-schema-registry.d.ts.map +1 -1
- package/dist/runtime-v2/adapter/output-schema-registry.js +46 -2
- package/dist/runtime-v2/adapter/output-schema-registry.js.map +1 -1
- package/dist/runtime-v2/pain-signal-observability.d.ts.map +1 -1
- package/dist/runtime-v2/pain-signal-observability.js +5 -3
- package/dist/runtime-v2/pain-signal-observability.js.map +1 -1
- package/dist/runtime-v2/trajectory-schema.d.ts +34 -4
- package/dist/runtime-v2/trajectory-schema.d.ts.map +1 -1
- package/dist/runtime-v2/trajectory-schema.js +30 -2
- package/dist/runtime-v2/trajectory-schema.js.map +1 -1
- package/package.json +2 -2
|
@@ -22,13 +22,15 @@ import type { TSchema } from '@sinclair/typebox';
|
|
|
22
22
|
* `outputSchemaRef` values passed by each runner's `invokeRuntime()`.
|
|
23
23
|
*/
|
|
24
24
|
export declare const OUTPUT_SCHEMA_REGISTRY: ReadonlyMap<string, TSchema>;
|
|
25
|
+
export declare const OUTPUT_SCHEMA_REF_ALIASES: ReadonlyMap<string, string>;
|
|
25
26
|
/**
|
|
26
27
|
* Resolve the TypeBox schema for a given `outputSchemaRef`.
|
|
27
28
|
*
|
|
28
29
|
* @param ref - the outputSchemaRef string passed by a runner (e.g. 'diag-rootcause-output-v1').
|
|
29
30
|
* @returns the matching schema, or `undefined` when:
|
|
30
31
|
* - `ref` is undefined/null/empty (caller should apply its own default), OR
|
|
31
|
-
* - `ref` is a non-empty string not present in the registry
|
|
32
|
+
* - `ref` is a non-empty string not present in the registry or the PRI-1104
|
|
33
|
+
* alias table (caller should fail loud).
|
|
32
34
|
* Callers MUST distinguish these two cases: an absent ref is "use default", an
|
|
33
35
|
* unknown ref is a bug (fail loud per rc-3-fail-loud-missing).
|
|
34
36
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-schema-registry.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/adapter/output-schema-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAejD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAmB9D,CAAC;
|
|
1
|
+
{"version":3,"file":"output-schema-registry.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/adapter/output-schema-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAejD;;;GAGG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAmB9D,CAAC;AAyCH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAyB,CAAC;AAE5F;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,OAAO,GAAG,SAAS,CAMvF"}
|
|
@@ -35,19 +35,63 @@ export const OUTPUT_SCHEMA_REGISTRY = new Map([
|
|
|
35
35
|
// never pass this ref; see learning-lab/actor-action-output.ts.
|
|
36
36
|
['learning-lab-actor-action-v1', LearningLabActorActionV1Schema],
|
|
37
37
|
]);
|
|
38
|
+
/**
|
|
39
|
+
* PRI-1104 Stage 0 (expand) — version-neutral ↔ versioned contract refs.
|
|
40
|
+
*
|
|
41
|
+
* One declaration, no shadow list. Both directions are registered up front so
|
|
42
|
+
* this table never needs to change during the single-version convergence:
|
|
43
|
+
* - now (PR-1..PR-5): the registry still owns versioned keys, so a
|
|
44
|
+
* version-neutral ref resolves FORWARD through this table;
|
|
45
|
+
* - PR-6: registry keys become version-neutral, so historical versioned
|
|
46
|
+
* refs resolve BACKWARD through the same table.
|
|
47
|
+
*
|
|
48
|
+
* `resolveOutputSchema` always tries an exact registry hit first, so this
|
|
49
|
+
* table is inert for every ref already registered. PR-6 can therefore be
|
|
50
|
+
* reverted independently: whichever ref the writer uses, the reader resolves.
|
|
51
|
+
*
|
|
52
|
+
* Deliberately NOT listed: retired v1 refs such as
|
|
53
|
+
* `signal-classification-output-v1`. Those were removed as an intentional
|
|
54
|
+
* breaking change (GFI removal SPEC); re-admitting them would hide the
|
|
55
|
+
* fail-loud `Unknown outputSchemaRef` contract.
|
|
56
|
+
*/
|
|
57
|
+
const CONTRACT_REF_PAIRS = [
|
|
58
|
+
['diagnostician-output', 'diagnostician-output-v1'],
|
|
59
|
+
['diag-rootcause-output', 'diag-rootcause-output-v1'],
|
|
60
|
+
['diag-distiller-output', 'diag-distiller-output-v1'],
|
|
61
|
+
['dreamer-output', 'dreamer-output-v1'],
|
|
62
|
+
['philosopher-output', 'philosopher-output-v1'],
|
|
63
|
+
['scribe-output', 'scribe-output-v1'],
|
|
64
|
+
['artificer-rule-output', 'artificer-rule-output-v2'],
|
|
65
|
+
['evaluator-output', 'evaluator-output-v1'],
|
|
66
|
+
['rollout-reviewer-output', 'rollout-reviewer-output-v1'],
|
|
67
|
+
['correction-observer-output', 'correction-observer-output-v1'],
|
|
68
|
+
['signal-classification-output', 'signal-classification-output-v2'],
|
|
69
|
+
['reuse-evaluation-output', 'reuse-evaluation-output-v1'],
|
|
70
|
+
['learning-lab-actor-action', 'learning-lab-actor-action-v1'],
|
|
71
|
+
];
|
|
72
|
+
const aliasEntries = [];
|
|
73
|
+
for (const [neutral, versioned] of CONTRACT_REF_PAIRS) {
|
|
74
|
+
aliasEntries.push([neutral, versioned], [versioned, neutral]);
|
|
75
|
+
}
|
|
76
|
+
export const OUTPUT_SCHEMA_REF_ALIASES = new Map(aliasEntries);
|
|
38
77
|
/**
|
|
39
78
|
* Resolve the TypeBox schema for a given `outputSchemaRef`.
|
|
40
79
|
*
|
|
41
80
|
* @param ref - the outputSchemaRef string passed by a runner (e.g. 'diag-rootcause-output-v1').
|
|
42
81
|
* @returns the matching schema, or `undefined` when:
|
|
43
82
|
* - `ref` is undefined/null/empty (caller should apply its own default), OR
|
|
44
|
-
* - `ref` is a non-empty string not present in the registry
|
|
83
|
+
* - `ref` is a non-empty string not present in the registry or the PRI-1104
|
|
84
|
+
* alias table (caller should fail loud).
|
|
45
85
|
* Callers MUST distinguish these two cases: an absent ref is "use default", an
|
|
46
86
|
* unknown ref is a bug (fail loud per rc-3-fail-loud-missing).
|
|
47
87
|
*/
|
|
48
88
|
export function resolveOutputSchema(ref) {
|
|
49
89
|
if (!ref)
|
|
50
90
|
return undefined;
|
|
51
|
-
|
|
91
|
+
const direct = OUTPUT_SCHEMA_REGISTRY.get(ref);
|
|
92
|
+
if (direct !== undefined)
|
|
93
|
+
return direct;
|
|
94
|
+
const alias = OUTPUT_SCHEMA_REF_ALIASES.get(ref);
|
|
95
|
+
return alias === undefined ? undefined : OUTPUT_SCHEMA_REGISTRY.get(alias);
|
|
52
96
|
}
|
|
53
97
|
//# sourceMappingURL=output-schema-registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output-schema-registry.js","sourceRoot":"","sources":["../../../src/runtime-v2/adapter/output-schema-registry.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,yBAAyB,EAAE,MAAM,0CAA0C,CAAC;AACrF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAC;AACnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AACtF,OAAO,EAAE,kCAAkC,EAAE,MAAM,8BAA8B,CAAC;AAClF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,8BAA8B,EAAE,MAAM,wCAAwC,CAAC;AAExF;;;GAGG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAiC,IAAI,GAAG,CAAkB;IAC3F,CAAC,yBAAyB,EAAE,2BAA2B,CAAC;IACxD,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IACzD,CAAC,0BAA0B,EAAE,2BAA2B,CAAC;IACzD,CAAC,mBAAmB,EAAE,qBAAqB,CAAC;IAC5C,CAAC,uBAAuB,EAAE,yBAAyB,CAAC;IACpD,CAAC,kBAAkB,EAAE,oBAAoB,CAAC;IAC1C,CAAC,0BAA0B,EAAE,yBAAyB,CAAC;IACvD,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;IAChD,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;IAC7D,CAAC,+BAA+B,EAAE,gCAAgC,CAAC;IACnE,CAAC,iCAAiC,EAAE,kCAAkC,CAAC;IACvE,+EAA+E;IAC/E,0EAA0E;IAC1E,CAAC,4BAA4B,EAAE,6BAA6B,CAAC;IAC7D,2EAA2E;IAC3E,0EAA0E;IAC1E,gEAAgE;IAChE,CAAC,8BAA8B,EAAE,8BAA8B,CAAC;CACjE,CAAC,CAAC;AAEH
|
|
1
|
+
{"version":3,"file":"output-schema-registry.js","sourceRoot":"","sources":["../../../src/runtime-v2/adapter/output-schema-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pain-signal-observability.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,MAAM,WAAW,6BAA6B;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,oCAAoC;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,gBAAgB,CAAC;IACvB,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAqBD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAClG,IAAI,CAUN;
|
|
1
|
+
{"version":3,"file":"pain-signal-observability.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAKhE,MAAM,WAAW,6BAA6B;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,oCAAoC;IACnD,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,gBAAgB,CAAC;IACvB,oFAAoF;IACpF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,6EAA6E;IAC7E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAqBD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAClG,IAAI,CAUN;AAgID;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,oCAAoC,GACzC,6BAA6B,CAmE/B"}
|
|
@@ -69,9 +69,11 @@ function getSessionsColumns(db) {
|
|
|
69
69
|
* Activity analytics views were retired (2026-08-19) along with their writer,
|
|
70
70
|
* and no reader needs them on the pain record path.
|
|
71
71
|
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
* plugin
|
|
72
|
+
* PRI-1135: applyTrajectorySchemaBase ends with migrateLegacyGfiSchema, which
|
|
73
|
+
* converges the schema_version ROW through the SAME single writer
|
|
74
|
+
* (convergeTrajectorySchemaVersion) the plugin lifecycle uses. The old
|
|
75
|
+
* "core never touches the version row" P1-A note was stale after PR #2332;
|
|
76
|
+
* there is still only one implementation of the version-row write.
|
|
75
77
|
*/
|
|
76
78
|
function ensureTrajectorySchema(db) {
|
|
77
79
|
return applyTrajectorySchemaBase(db);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pain-signal-observability.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,QAAQ,MAAM,MAAM,CAAC;AAEjC,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AAmBnE,SAAS,MAAM;IACb,OAAO,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;AAClC,CAAC;AAED,SAAS,QAAQ,CAAC,EAAU;IAC1B,OAAO,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACzB,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAa;IACtC,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,QAAQ,CAAC;IACjC,IAAI,KAAK,IAAI,EAAE;QAAE,OAAO,UAAU,CAAC;IACnC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB,EAAE,KAAc;IACtD,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9D,EAAE,CAAC,cAAc,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AACpE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,QAAgB,EAChB,KAAmG;IAEnG,MAAM,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,IAAI,QAAQ,CAAC,EAAE;QACtE,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI;QACJ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;KACjB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,kBAAkB,CAAC,EAAqB;IAC/C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC,GAAG,EAAwB,CAAC;IACnF,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"pain-signal-observability.js","sourceRoot":"","sources":["../../src/runtime-v2/pain-signal-observability.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,11 +11,14 @@
|
|
|
11
11
|
* - owns: CREATE TABLE/INDEX/VIEW statements, column-migration blocks, the
|
|
12
12
|
* evolution_tasks column backfill, TRAJECTORY_SCHEMA_VERSION and
|
|
13
13
|
* TRAJECTORY_TABLES declarations.
|
|
14
|
+
* - owns (PRI-1135): the single version-row writer
|
|
15
|
+
* `convergeTrajectorySchemaVersion`, called by migrateLegacyGfiSchema and
|
|
16
|
+
* directly by both plugin lifecycle entry points. The plugin no longer
|
|
17
|
+
* duplicates the INSERT/UPDATE logic.
|
|
18
|
+
* - owns: TRAJECTORY_REQUIRED_COLUMNS, the one declaration of the columns a
|
|
19
|
+
* raw host-runtime open path requires before writing.
|
|
14
20
|
* - does NOT own: path resolution, directory creation, connection lifecycle,
|
|
15
|
-
* WAL/pragmas,
|
|
16
|
-
* (TrajectoryDatabase.initSchema and initTrajectorySchema keep that), the
|
|
17
|
-
* version-row convergence performed by migrateLegacyGfiSchema (see below),
|
|
18
|
-
* v_daily_metrics (plugin migrateSchema), governance_* tables
|
|
21
|
+
* WAL/pragmas, v_daily_metrics (plugin migrateSchema), governance_* tables
|
|
19
22
|
* (host-runtime stores).
|
|
20
23
|
*
|
|
21
24
|
* Zero pathways are abolished: both paths keep their exact pre-PRI-774
|
|
@@ -38,6 +41,33 @@ export interface TrajectorySchemaApplyResult {
|
|
|
38
41
|
export declare const TRAJECTORY_SCHEMA_VERSION = 2;
|
|
39
42
|
/** Fresh-schema table list, in creation order (single derived source). */
|
|
40
43
|
export declare const TRAJECTORY_TABLES: readonly ['schema_version', 'ingest_checkpoint', 'sessions', 'assistant_turns', 'user_turns', 'tool_calls', 'pain_events', 'gate_blocks', 'trust_changes', 'principle_events', 'task_outcomes', 'correction_samples', 'sample_reviews', 'signal_confirmations', 'exports_audit'];
|
|
44
|
+
/**
|
|
45
|
+
* PRI-1104 / PRI-1135: the ONE canonical declaration of the columns a
|
|
46
|
+
* trajectory.db must carry before the raw host-runtime open paths treat it as
|
|
47
|
+
* writable. This used to be a hand-maintained second copy named
|
|
48
|
+
* REQUIRED_COLUMNS in host-runtime/production-pain-evidence.ts.
|
|
49
|
+
*
|
|
50
|
+
* It lives with the DDL owner so the next schema evolution changes one place.
|
|
51
|
+
* trajectory-schema.test.ts derives the actual columns from a real database
|
|
52
|
+
* via PRAGMA and asserts every column listed here still exists with the listed
|
|
53
|
+
* type. The assertion is intentionally list ⊆ DDL, not equality: a stricter
|
|
54
|
+
* bidirectional check would have to whitelist columns the gate deliberately
|
|
55
|
+
* does not model (e.g. tool_calls.host_kind). The fail-closed direction — a
|
|
56
|
+
* column that disappears from the DDL — is covered by the prepared-statement
|
|
57
|
+
* probe in host-runtime `hasProductionPainSchema`, which throws on any missing
|
|
58
|
+
* column, so shrinking this list can only lose type checking, never silently
|
|
59
|
+
* open the gate.
|
|
60
|
+
*
|
|
61
|
+
* Frozen at runtime: consumers import the same object from another package, so
|
|
62
|
+
* a mutation here would rewrite the gate's "single truth" in place.
|
|
63
|
+
*/
|
|
64
|
+
export declare const TRAJECTORY_REQUIRED_COLUMNS: Readonly<Record<string, Readonly<Record<string, string>>>>;
|
|
65
|
+
/**
|
|
66
|
+
* Bring an existing schema_version row up to TRAJECTORY_SCHEMA_VERSION.
|
|
67
|
+
* No-op on a v2 database (version already current) and on databases that do
|
|
68
|
+
* not have the table yet. A v1 row is upgraded in place.
|
|
69
|
+
*/
|
|
70
|
+
export declare function convergeTrajectorySchemaVersion(db: Database): void;
|
|
41
71
|
/**
|
|
42
72
|
* GFI-COMPLETE-REMOVAL-001: drop the retired GFI columns, terminalize the
|
|
43
73
|
* pending empathy confirmations that the retired correction collector created,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory-schema.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/trajectory-schema.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"trajectory-schema.d.ts","sourceRoot":"","sources":["../../src/runtime-v2/trajectory-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,MAAM,WAAW,4BAA4B;IAC3C;;;;OAIG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,8FAA8F;AAC9F,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAE3C,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,YAC5B,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,oBAAoB,EACpB,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,CACP,CAAC;AAEX;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,2BAA2B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAIlG,CAAC;AAsBF;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAclE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,QAAQ,GAAG,IAAI,CAqBzD;AAED,wBAAgB,yBAAyB,CACvC,EAAE,EAAE,QAAQ,EACZ,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAO,GAC7B;IAAE,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAwJ1C"}
|
|
@@ -18,6 +18,34 @@ export const TRAJECTORY_TABLES = [
|
|
|
18
18
|
'signal_confirmations',
|
|
19
19
|
'exports_audit',
|
|
20
20
|
];
|
|
21
|
+
/**
|
|
22
|
+
* PRI-1104 / PRI-1135: the ONE canonical declaration of the columns a
|
|
23
|
+
* trajectory.db must carry before the raw host-runtime open paths treat it as
|
|
24
|
+
* writable. This used to be a hand-maintained second copy named
|
|
25
|
+
* REQUIRED_COLUMNS in host-runtime/production-pain-evidence.ts.
|
|
26
|
+
*
|
|
27
|
+
* It lives with the DDL owner so the next schema evolution changes one place.
|
|
28
|
+
* trajectory-schema.test.ts derives the actual columns from a real database
|
|
29
|
+
* via PRAGMA and asserts every column listed here still exists with the listed
|
|
30
|
+
* type. The assertion is intentionally list ⊆ DDL, not equality: a stricter
|
|
31
|
+
* bidirectional check would have to whitelist columns the gate deliberately
|
|
32
|
+
* does not model (e.g. tool_calls.host_kind). The fail-closed direction — a
|
|
33
|
+
* column that disappears from the DDL — is covered by the prepared-statement
|
|
34
|
+
* probe in host-runtime `hasProductionPainSchema`, which throws on any missing
|
|
35
|
+
* column, so shrinking this list can only lose type checking, never silently
|
|
36
|
+
* open the gate.
|
|
37
|
+
*
|
|
38
|
+
* Frozen at runtime: consumers import the same object from another package, so
|
|
39
|
+
* a mutation here would rewrite the gate's "single truth" in place.
|
|
40
|
+
*/
|
|
41
|
+
export const TRAJECTORY_REQUIRED_COLUMNS = {
|
|
42
|
+
sessions: { session_id: 'TEXT', started_at: 'TEXT', updated_at: 'TEXT' },
|
|
43
|
+
tool_calls: { session_id: 'TEXT', tool_name: 'TEXT', outcome: 'TEXT', duration_ms: 'INTEGER', exit_code: 'INTEGER', error_type: 'TEXT', error_message: 'TEXT', params_json: 'TEXT', result_preview: 'TEXT', created_at: 'TEXT', project_dir: 'TEXT' },
|
|
44
|
+
pain_events: { session_id: 'TEXT', source: 'TEXT', score: 'REAL', reason: 'TEXT', severity: 'TEXT', origin: 'TEXT', confidence: 'REAL', text: 'TEXT', canonical_pain_id: 'TEXT', runtime_task_id: 'TEXT', host_kind: 'TEXT', created_at: 'TEXT' },
|
|
45
|
+
};
|
|
46
|
+
for (const table of Object.values(TRAJECTORY_REQUIRED_COLUMNS))
|
|
47
|
+
Object.freeze(table);
|
|
48
|
+
Object.freeze(TRAJECTORY_REQUIRED_COLUMNS);
|
|
21
49
|
/**
|
|
22
50
|
* SQLite's only signal for "column already exists" is the error message text
|
|
23
51
|
* (there is no IF NOT EXISTS for ADD COLUMN); unexpected errors must rethrow.
|
|
@@ -37,7 +65,7 @@ function tableExists(db, name) {
|
|
|
37
65
|
* No-op on a v2 database (version already current) and on databases that do
|
|
38
66
|
* not have the table yet. A v1 row is upgraded in place.
|
|
39
67
|
*/
|
|
40
|
-
function
|
|
68
|
+
export function convergeTrajectorySchemaVersion(db) {
|
|
41
69
|
if (!tableExists(db, 'schema_version'))
|
|
42
70
|
return;
|
|
43
71
|
const row = db
|
|
@@ -84,7 +112,7 @@ export function migrateLegacyGfiSchema(db) {
|
|
|
84
112
|
.prepare("UPDATE signal_confirmations SET status = 'abandoned', resolved_at = ?, resolution = ? WHERE status = 'pending' AND suggested_type = 'empathy'")
|
|
85
113
|
.run(new Date().toISOString(), 'gfi_removal');
|
|
86
114
|
}
|
|
87
|
-
|
|
115
|
+
convergeTrajectorySchemaVersion(db);
|
|
88
116
|
}
|
|
89
117
|
export function applyTrajectorySchemaBase(db, opts = {}) {
|
|
90
118
|
const warnings = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trajectory-schema.js","sourceRoot":"","sources":["../../src/runtime-v2/trajectory-schema.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"trajectory-schema.js","sourceRoot":"","sources":["../../src/runtime-v2/trajectory-schema.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@principles/core",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.2.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",
|
|
@@ -151,5 +151,5 @@
|
|
|
151
151
|
"publishConfig": {
|
|
152
152
|
"access": "public"
|
|
153
153
|
},
|
|
154
|
-
"gitHead": "
|
|
154
|
+
"gitHead": "3c04ff93abbde31dcca25c8ad0809d00807b5015"
|
|
155
155
|
}
|