@proposit/proposit-core 0.8.16 → 0.8.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.
@@ -1,5 +1,5 @@
1
1
  import { randomUUID } from "node:crypto";
2
- import yaml from "js-yaml";
2
+ import { parse as parseYaml } from "yaml";
3
3
  import { Value } from "typebox/value";
4
4
  import { CoreYamlArgumentSchema } from "../lib/schemata/import.js";
5
5
  import { parseFormula } from "../lib/core/parser/formula.js";
@@ -158,7 +158,7 @@ function buildExpressions(ast, parentId, position, argumentId, argumentVersion,
158
158
  * parse errors, nested implies/iff operators, or multiple conclusions.
159
159
  */
160
160
  export function importArgumentFromYaml(yamlString) {
161
- const raw = yaml.load(yamlString);
161
+ const raw = parseYaml(yamlString);
162
162
  const input = Value.Parse(CoreYamlArgumentSchema, raw);
163
163
  // Parse all formulas and validate root-only constraint
164
164
  const parsedFormulas = [];
@@ -1 +1 @@
1
- {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"import.js","sourceRoot":"","sources":["../../src/cli/import.ts"],"names":[],"mappings":"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"}
@@ -100,21 +100,25 @@ export type TOrderedOperation<TExpr extends TCorePropositionalExpression = TCore
100
100
  * Ordering phases:
101
101
  * 1. Update premises — ensure premise rows have correct metadata before
102
102
  * dependent deletes run.
103
- * 2. Delete expressions — expression rows hold FKs to variables and premises,
103
+ * 2. Reparent expressions — update expressions whose IDs are NOT in the
104
+ * removed set. This detaches reparented children from doomed parents
105
+ * before ON DELETE CASCADE runs. Expressions that appear in both
106
+ * modified and removed are skipped (the row is about to be deleted).
107
+ * 3. Delete expressions — expression rows hold FKs to variables and premises,
104
108
  * so they must be removed first.
105
- * 3. Delete variables — safe after expression deletes (no remaining FK
109
+ * 4. Delete variables — safe after expression deletes (no remaining FK
106
110
  * references from expressions).
107
- * 4. Delete premises — safe after all child rows are removed.
108
- * 5. Insert premises — new premises must exist before their expressions and
111
+ * 5. Delete premises — safe after all child rows are removed.
112
+ * 6. Insert premises — new premises must exist before their expressions and
109
113
  * variables can be inserted.
110
- * 6. Insert variables — new variables must exist before variable-type
114
+ * 7. Insert variables — new variables must exist before variable-type
111
115
  * expressions can reference them.
112
- * 7. Insert expressions — topologically sorted so parent expressions are
116
+ * 8. Insert expressions — topologically sorted so parent expressions are
113
117
  * inserted before their children (satisfies the parentId self-FK).
114
- * 8. Update variables — grouped after inserts for clarity.
115
- * 9. Update expressions checksum and position updates.
116
- * 10. Update argument metadata — if present.
117
- * 11. Update role state — if present.
118
+ * 9. Update variables — grouped after inserts for clarity.
119
+ * 10. (No-opexpression updates are now emitted in Phase 2.)
120
+ * 11. Update argument metadata — if present.
121
+ * 12. Update role state — if present.
118
122
  *
119
123
  * @param changeset - The changeset to convert into ordered operations.
120
124
  * @returns A flat array of {@link TOrderedOperation} entries in FK-safe
@@ -1 +1 @@
1
- {"version":3,"file":"changeset.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/changeset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changeset.d.ts","sourceRoot":"","sources":["../../../src/lib/utils/changeset.ts"],"names":[],"mappings":"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"}
@@ -105,21 +105,25 @@ function mergeEntityChanges(a, b, categoryName) {
105
105
  * Ordering phases:
106
106
  * 1. Update premises — ensure premise rows have correct metadata before
107
107
  * dependent deletes run.
108
- * 2. Delete expressions — expression rows hold FKs to variables and premises,
108
+ * 2. Reparent expressions — update expressions whose IDs are NOT in the
109
+ * removed set. This detaches reparented children from doomed parents
110
+ * before ON DELETE CASCADE runs. Expressions that appear in both
111
+ * modified and removed are skipped (the row is about to be deleted).
112
+ * 3. Delete expressions — expression rows hold FKs to variables and premises,
109
113
  * so they must be removed first.
110
- * 3. Delete variables — safe after expression deletes (no remaining FK
114
+ * 4. Delete variables — safe after expression deletes (no remaining FK
111
115
  * references from expressions).
112
- * 4. Delete premises — safe after all child rows are removed.
113
- * 5. Insert premises — new premises must exist before their expressions and
116
+ * 5. Delete premises — safe after all child rows are removed.
117
+ * 6. Insert premises — new premises must exist before their expressions and
114
118
  * variables can be inserted.
115
- * 6. Insert variables — new variables must exist before variable-type
119
+ * 7. Insert variables — new variables must exist before variable-type
116
120
  * expressions can reference them.
117
- * 7. Insert expressions — topologically sorted so parent expressions are
121
+ * 8. Insert expressions — topologically sorted so parent expressions are
118
122
  * inserted before their children (satisfies the parentId self-FK).
119
- * 8. Update variables — grouped after inserts for clarity.
120
- * 9. Update expressions checksum and position updates.
121
- * 10. Update argument metadata — if present.
122
- * 11. Update role state — if present.
123
+ * 9. Update variables — grouped after inserts for clarity.
124
+ * 10. (No-opexpression updates are now emitted in Phase 2.)
125
+ * 11. Update argument metadata — if present.
126
+ * 12. Update role state — if present.
123
127
  *
124
128
  * @param changeset - The changeset to convert into ordered operations.
125
129
  * @returns A flat array of {@link TOrderedOperation} entries in FK-safe
@@ -127,54 +131,65 @@ function mergeEntityChanges(a, b, categoryName) {
127
131
  */
128
132
  export function orderChangeset(changeset) {
129
133
  const ops = [];
134
+ // Build a set of removed expression IDs so we can skip them in modified
135
+ // phases. An expression that appears in both modified and removed is a
136
+ // no-op update — the row is about to be deleted.
137
+ const removedExprIds = new Set((changeset.expressions?.removed ?? []).map((e) => e.id));
130
138
  // Phase 1: Update premises — ensure premise rows have correct metadata
131
139
  // before dependent deletes run.
132
140
  for (const p of changeset.premises?.modified ?? []) {
133
141
  ops.push({ type: "update", entity: "premise", data: p });
134
142
  }
135
- // Phase 2: Delete expressions — reverse-topologically sorted so children
143
+ // Phase 2: Reparent expressions — update expressions whose IDs are NOT
144
+ // in the removed set. This detaches reparented children from doomed
145
+ // parents before ON DELETE CASCADE runs in Phase 3.
146
+ for (const e of changeset.expressions?.modified ?? []) {
147
+ if (!removedExprIds.has(e.id)) {
148
+ ops.push({ type: "update", entity: "expression", data: e });
149
+ }
150
+ }
151
+ // Phase 3: Delete expressions — reverse-topologically sorted so children
136
152
  // are deleted before parents (satisfies the parentId self-FK).
137
153
  const removedExprs = changeset.expressions?.removed ?? [];
138
154
  const sortedRemoved = topologicalSortExpressions(removedExprs).reverse();
139
155
  for (const e of sortedRemoved) {
140
156
  ops.push({ type: "delete", entity: "expression", data: e });
141
157
  }
142
- // Phase 3: Delete variables — safe after expression deletes (no
158
+ // Phase 4: Delete variables — safe after expression deletes (no
143
159
  // remaining FK references from expressions).
144
160
  for (const v of changeset.variables?.removed ?? []) {
145
161
  ops.push({ type: "delete", entity: "variable", data: v });
146
162
  }
147
- // Phase 4: Delete premises — safe after all child rows (expressions,
163
+ // Phase 5: Delete premises — safe after all child rows (expressions,
148
164
  // variables) are removed.
149
165
  for (const p of changeset.premises?.removed ?? []) {
150
166
  ops.push({ type: "delete", entity: "premise", data: p });
151
167
  }
152
- // Phase 5: Insert premises — new premises must exist before their
168
+ // Phase 6: Insert premises — new premises must exist before their
153
169
  // expressions and variables can be inserted.
154
170
  for (const p of changeset.premises?.added ?? []) {
155
171
  ops.push({ type: "insert", entity: "premise", data: p });
156
172
  }
157
- // Phase 6: Insert variables — new variables must exist before
173
+ // Phase 7: Insert variables — new variables must exist before
158
174
  // variable-type expressions can reference them.
159
175
  for (const v of changeset.variables?.added ?? []) {
160
176
  ops.push({ type: "insert", entity: "variable", data: v });
161
177
  }
162
- // Phase 7: Insert expressions — topologically sorted so parent
178
+ // Phase 8: Insert expressions — topologically sorted so parent
163
179
  // expressions are inserted before their children (satisfies the
164
180
  // parentId self-FK).
165
181
  const sortedInsertExprs = topologicalSortExpressions(changeset.expressions?.added ?? []);
166
182
  for (const e of sortedInsertExprs) {
167
183
  ops.push({ type: "insert", entity: "expression", data: e });
168
184
  }
169
- // Phase 8: Update variables — grouped after inserts for clarity.
185
+ // Phase 9: Update variables — grouped after inserts for clarity.
170
186
  for (const v of changeset.variables?.modified ?? []) {
171
187
  ops.push({ type: "update", entity: "variable", data: v });
172
188
  }
173
- // Phase 9: Update expressions — checksum and position updates.
174
- for (const e of changeset.expressions?.modified ?? []) {
175
- ops.push({ type: "update", entity: "expression", data: e });
176
- }
177
- // Phase 10: Update argument metadata — if present.
189
+ // Phase 10: Update expressions — no-op. All non-removed modified
190
+ // expressions were already emitted in Phase 2 (reparent). This phase is
191
+ // retained as a logical placeholder to keep the phase numbering stable.
192
+ // Phase 11: Update argument metadata — if present.
178
193
  if (changeset.argument !== undefined) {
179
194
  ops.push({
180
195
  type: "update",
@@ -182,7 +197,7 @@ export function orderChangeset(changeset) {
182
197
  data: changeset.argument,
183
198
  });
184
199
  }
185
- // Phase 11: Update role state — if present.
200
+ // Phase 12: Update role state — if present.
186
201
  if (changeset.roles !== undefined) {
187
202
  ops.push({ type: "update", entity: "roles", data: changeset.roles });
188
203
  }
@@ -1 +1 @@
1
- {"version":3,"file":"changeset.js","sourceRoot":"","sources":["../../../src/lib/utils/changeset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changeset.js","sourceRoot":"","sources":["../../../src/lib/utils/changeset.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@proposit/proposit-core",
3
- "version": "0.8.16",
3
+ "version": "0.8.18",
4
4
  "description": "Core engine for building and manipulating propositional logic arguments.",
5
5
  "license": "MIT",
6
6
  "keywords": [
@@ -46,7 +46,6 @@
46
46
  "access": "public"
47
47
  },
48
48
  "devDependencies": {
49
- "@types/js-yaml": "^4.0.9",
50
49
  "@types/node": "^25.5.2",
51
50
  "eslint": "^9.28.0",
52
51
  "eslint-plugin-check-file": "^3.3.1",
@@ -61,8 +60,8 @@
61
60
  },
62
61
  "dependencies": {
63
62
  "commander": "^14.0.3",
64
- "js-yaml": "^4.1.1",
65
- "typebox": "^1.1.14"
63
+ "typebox": "^1.1.14",
64
+ "yaml": "^2.8.3"
66
65
  },
67
66
  "scripts": {
68
67
  "generate:parser": "peggy --format es -o src/lib/core/parser/formula-gen.js src/lib/core/parser/formula.peggy",
@@ -75,6 +74,7 @@
75
74
  "check": "pnpm run typecheck && pnpm run lint && pnpm run test && pnpm run build",
76
75
  "docs": "typedoc",
77
76
  "cli": "node dist/cli.js",
78
- "preversion": "pnpm run check"
77
+ "preversion": "pnpm run check",
78
+ "postinstall": "pnpm prettier -w package.json pnpm-lock.yaml"
79
79
  }
80
80
  }