@proposit/proposit-core 2.4.0 → 2.4.1
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/lib/conversation/turn.js +1 -1
- package/dist/lib/conversation/turn.js.map +1 -1
- package/dist/lib/core/expression-manager-checks.d.ts +73 -0
- package/dist/lib/core/expression-manager-checks.d.ts.map +1 -0
- package/dist/lib/core/expression-manager-checks.js +355 -0
- package/dist/lib/core/expression-manager-checks.js.map +1 -0
- package/dist/lib/core/expression-manager-dirty-set.d.ts +21 -0
- package/dist/lib/core/expression-manager-dirty-set.d.ts.map +1 -0
- package/dist/lib/core/expression-manager-dirty-set.js +93 -0
- package/dist/lib/core/expression-manager-dirty-set.js.map +1 -0
- package/dist/lib/core/expression-manager-invariants.d.ts +14 -0
- package/dist/lib/core/expression-manager-invariants.d.ts.map +1 -0
- package/dist/lib/core/expression-manager-invariants.js +171 -0
- package/dist/lib/core/expression-manager-invariants.js.map +1 -0
- package/dist/lib/core/expression-manager.d.ts +2 -3
- package/dist/lib/core/expression-manager.d.ts.map +1 -1
- package/dist/lib/core/expression-manager.js +18 -523
- package/dist/lib/core/expression-manager.js.map +1 -1
- package/dist/lib/pipelines/index.d.ts +4 -2
- package/dist/lib/pipelines/index.d.ts.map +1 -1
- package/dist/lib/pipelines/index.js +2 -1
- package/dist/lib/pipelines/index.js.map +1 -1
- package/dist/lib/pipelines/llm-stage-helpers.d.ts +126 -0
- package/dist/lib/pipelines/llm-stage-helpers.d.ts.map +1 -0
- package/dist/lib/pipelines/llm-stage-helpers.js +567 -0
- package/dist/lib/pipelines/llm-stage-helpers.js.map +1 -0
- package/dist/lib/pipelines/scheduler.d.ts +62 -0
- package/dist/lib/pipelines/scheduler.d.ts.map +1 -0
- package/dist/lib/pipelines/{execute.js → scheduler.js} +8 -325
- package/dist/lib/pipelines/scheduler.js.map +1 -0
- package/dist/lib/pipelines/{execute.d.ts → single-stage.d.ts} +2 -22
- package/dist/lib/pipelines/{execute.d.ts.map → single-stage.d.ts.map} +1 -1
- package/dist/lib/pipelines/single-stage.js +333 -0
- package/dist/lib/pipelines/single-stage.js.map +1 -0
- package/dist/lib/pipelines/stage-helpers.d.ts +4 -123
- package/dist/lib/pipelines/stage-helpers.d.ts.map +1 -1
- package/dist/lib/pipelines/stage-helpers.js +28 -567
- package/dist/lib/pipelines/stage-helpers.js.map +1 -1
- package/package.json +3 -3
- package/dist/lib/pipelines/execute.js.map +0 -1
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import { CorePropositionalExpressionSchema } from "../schemata/index.js";
|
|
2
|
+
import { Value } from "typebox/value";
|
|
3
|
+
import { EXPR_SCHEMA_INVALID, EXPR_DUPLICATE_ID, EXPR_SELF_REFERENTIAL_PARENT, EXPR_PARENT_NOT_FOUND, EXPR_PARENT_NOT_CONTAINER, EXPR_ROOT_ONLY_VIOLATED, EXPR_CHILD_LIMIT_EXCEEDED, EXPR_POSITION_DUPLICATE, EXPR_CHECKSUM_MISMATCH, } from "../types/validation.js";
|
|
4
|
+
import { flushExpressionChecksums } from "./expression-manager-dirty-set.js";
|
|
5
|
+
/**
|
|
6
|
+
* Performs a comprehensive validation sweep on all managed expressions.
|
|
7
|
+
*
|
|
8
|
+
* Collects ALL violations rather than failing on the first one. Checks:
|
|
9
|
+
* schema validity, duplicate IDs, self-referential parents, parent
|
|
10
|
+
* existence, parent container type, root-only operators, child limits,
|
|
11
|
+
* position uniqueness, and checksum integrity.
|
|
12
|
+
*/
|
|
13
|
+
export function validateExpressionManagerInvariants(expressions, childExpressionIdsByParentId, dirtyExpressionIds, config, collector) {
|
|
14
|
+
const violations = [];
|
|
15
|
+
const seenIds = new Set();
|
|
16
|
+
// ── 1. Save pre-flush checksums for later comparison ──
|
|
17
|
+
const preFlushChecksums = new Map();
|
|
18
|
+
for (const [id, expr] of expressions) {
|
|
19
|
+
if (expr.checksum != null) {
|
|
20
|
+
preFlushChecksums.set(id, {
|
|
21
|
+
checksum: expr.checksum,
|
|
22
|
+
descendantChecksum: expr.descendantChecksum,
|
|
23
|
+
combinedChecksum: expr.combinedChecksum,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
// ── 2. Flush checksums to get fresh values ──
|
|
28
|
+
// Mark all expressions dirty so flush recomputes everything
|
|
29
|
+
for (const id of expressions.keys()) {
|
|
30
|
+
dirtyExpressionIds.add(id);
|
|
31
|
+
}
|
|
32
|
+
flushExpressionChecksums(dirtyExpressionIds, expressions, childExpressionIdsByParentId, config, collector);
|
|
33
|
+
// ── 3. Per-expression checks ──
|
|
34
|
+
// Build a sibling-position map for position uniqueness checks
|
|
35
|
+
const positionsByParent = new Map();
|
|
36
|
+
for (const [id, expr] of expressions) {
|
|
37
|
+
// 3a. Schema check
|
|
38
|
+
if (!Value.Check(CorePropositionalExpressionSchema, expr)) {
|
|
39
|
+
violations.push({
|
|
40
|
+
code: EXPR_SCHEMA_INVALID,
|
|
41
|
+
message: `Expression "${id}" does not conform to CorePropositionalExpressionSchema.`,
|
|
42
|
+
entityType: "expression",
|
|
43
|
+
entityId: id,
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
// 3b. Duplicate ID
|
|
47
|
+
if (seenIds.has(id)) {
|
|
48
|
+
violations.push({
|
|
49
|
+
code: EXPR_DUPLICATE_ID,
|
|
50
|
+
message: `Duplicate expression ID "${id}".`,
|
|
51
|
+
entityType: "expression",
|
|
52
|
+
entityId: id,
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
seenIds.add(id);
|
|
56
|
+
// 3c. Self-referential parent
|
|
57
|
+
if (expr.parentId === id) {
|
|
58
|
+
violations.push({
|
|
59
|
+
code: EXPR_SELF_REFERENTIAL_PARENT,
|
|
60
|
+
message: `Expression "${id}" references itself as parent.`,
|
|
61
|
+
entityType: "expression",
|
|
62
|
+
entityId: id,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
// 3d. Parent existence
|
|
66
|
+
if (expr.parentId !== null && !expressions.has(expr.parentId)) {
|
|
67
|
+
violations.push({
|
|
68
|
+
code: EXPR_PARENT_NOT_FOUND,
|
|
69
|
+
message: `Expression "${id}" references non-existent parent "${expr.parentId}".`,
|
|
70
|
+
entityType: "expression",
|
|
71
|
+
entityId: id,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
// 3e. Parent is container (operator or formula)
|
|
75
|
+
if (expr.parentId !== null && expressions.has(expr.parentId)) {
|
|
76
|
+
const parent = expressions.get(expr.parentId);
|
|
77
|
+
if (parent.type !== "operator" && parent.type !== "formula") {
|
|
78
|
+
violations.push({
|
|
79
|
+
code: EXPR_PARENT_NOT_CONTAINER,
|
|
80
|
+
message: `Expression "${id}" has parent "${expr.parentId}" of type "${parent.type}" (expected operator or formula).`,
|
|
81
|
+
entityType: "expression",
|
|
82
|
+
entityId: id,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
// 3f. Root-only: implies/iff must have parentId === null
|
|
87
|
+
if (expr.type === "operator" &&
|
|
88
|
+
(expr.operator === "implies" || expr.operator === "iff") &&
|
|
89
|
+
expr.parentId !== null) {
|
|
90
|
+
violations.push({
|
|
91
|
+
code: EXPR_ROOT_ONLY_VIOLATED,
|
|
92
|
+
message: `Root-only operator "${expr.operator}" expression "${id}" has non-null parentId "${expr.parentId}".`,
|
|
93
|
+
entityType: "expression",
|
|
94
|
+
entityId: id,
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
// The pre-v1.0 3g `EXPR_FORMULA_BETWEEN_OPERATORS_VIOLATED`
|
|
98
|
+
// legacy-validate() check (gated on
|
|
99
|
+
// `grammarConfig.enforceFormulaBetweenOperators`) is gone.
|
|
100
|
+
// P-1 is now surfaced via the grammar-tier validators —
|
|
101
|
+
// call `engine.validate('presentable')` and look for the
|
|
102
|
+
// `P-1` code. The `EXPR_FORMULA_BETWEEN_OPERATORS_VIOLATED`
|
|
103
|
+
// engine-error constant is gone in lockstep.
|
|
104
|
+
// Collect positions for uniqueness check
|
|
105
|
+
const parentKey = expr.parentId;
|
|
106
|
+
let parentPositions = positionsByParent.get(parentKey);
|
|
107
|
+
if (!parentPositions) {
|
|
108
|
+
parentPositions = new Map();
|
|
109
|
+
positionsByParent.set(parentKey, parentPositions);
|
|
110
|
+
}
|
|
111
|
+
const idsAtPosition = parentPositions.get(expr.position);
|
|
112
|
+
if (idsAtPosition) {
|
|
113
|
+
idsAtPosition.push(id);
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
parentPositions.set(expr.position, [id]);
|
|
117
|
+
}
|
|
118
|
+
// 3j. Checksum comparison
|
|
119
|
+
const pre = preFlushChecksums.get(id);
|
|
120
|
+
if (pre) {
|
|
121
|
+
const fresh = expressions.get(id);
|
|
122
|
+
if (pre.checksum !== fresh.checksum ||
|
|
123
|
+
pre.descendantChecksum !== fresh.descendantChecksum ||
|
|
124
|
+
pre.combinedChecksum !== fresh.combinedChecksum) {
|
|
125
|
+
violations.push({
|
|
126
|
+
code: EXPR_CHECKSUM_MISMATCH,
|
|
127
|
+
message: `Expression "${id}" checksum mismatch: stored does not match recomputed.`,
|
|
128
|
+
entityType: "expression",
|
|
129
|
+
entityId: id,
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
// ── 4. Child limit checks (not/formula: max 1 child) ──
|
|
135
|
+
for (const [id, expr] of expressions) {
|
|
136
|
+
if ((expr.type === "operator" && expr.operator === "not") ||
|
|
137
|
+
expr.type === "formula") {
|
|
138
|
+
const childIds = childExpressionIdsByParentId.get(id);
|
|
139
|
+
const childCount = childIds?.size ?? 0;
|
|
140
|
+
if (childCount > 1) {
|
|
141
|
+
const label = expr.type === "formula" ? "Formula" : `Operator "not"`;
|
|
142
|
+
violations.push({
|
|
143
|
+
code: EXPR_CHILD_LIMIT_EXCEEDED,
|
|
144
|
+
message: `${label} expression "${id}" has ${childCount} children (max 1).`,
|
|
145
|
+
entityType: "expression",
|
|
146
|
+
entityId: id,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
// ── 5. Position uniqueness ──
|
|
152
|
+
for (const [, posMap] of positionsByParent) {
|
|
153
|
+
for (const [position, ids] of posMap) {
|
|
154
|
+
if (ids.length > 1) {
|
|
155
|
+
for (const id of ids) {
|
|
156
|
+
violations.push({
|
|
157
|
+
code: EXPR_POSITION_DUPLICATE,
|
|
158
|
+
message: `Position ${position} is shared by expressions [${ids.join(", ")}].`,
|
|
159
|
+
entityType: "expression",
|
|
160
|
+
entityId: id,
|
|
161
|
+
});
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return {
|
|
167
|
+
ok: violations.length === 0,
|
|
168
|
+
violations,
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=expression-manager-invariants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"expression-manager-invariants.js","sourceRoot":"","sources":["../../../src/lib/core/expression-manager-invariants.ts"],"names":[],"mappings":"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"}
|
|
@@ -300,9 +300,8 @@ export declare class ExpressionManager<TExpr extends TCorePropositionalExpressio
|
|
|
300
300
|
*
|
|
301
301
|
* Collects ALL violations rather than failing on the first one. Checks:
|
|
302
302
|
* schema validity, duplicate IDs, self-referential parents, parent
|
|
303
|
-
* existence, parent container type, root-only operators,
|
|
304
|
-
*
|
|
305
|
-
* checksum integrity.
|
|
303
|
+
* existence, parent container type, root-only operators, child limits,
|
|
304
|
+
* position uniqueness, and checksum integrity.
|
|
306
305
|
*/
|
|
307
306
|
validate(): TInvariantValidationResult;
|
|
308
307
|
/** Returns a serializable snapshot of the current state. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"expression-manager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/expression-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,wBAAwB,EACxB,4BAA4B,EAC/B,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"expression-manager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/expression-manager.ts"],"names":[],"mappings":"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"}
|