@polintpro/proposit-core 0.2.6 → 0.2.7

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.
Files changed (33) hide show
  1. package/README.md +75 -4
  2. package/dist/cli/commands/expressions.d.ts.map +1 -1
  3. package/dist/cli/commands/expressions.js +15 -3
  4. package/dist/cli/commands/expressions.js.map +1 -1
  5. package/dist/cli/engine.d.ts.map +1 -1
  6. package/dist/cli/engine.js +4 -4
  7. package/dist/cli/engine.js.map +1 -1
  8. package/dist/lib/consts.d.ts.map +1 -1
  9. package/dist/lib/consts.js +1 -6
  10. package/dist/lib/consts.js.map +1 -1
  11. package/dist/lib/core/ArgumentEngine.d.ts +30 -0
  12. package/dist/lib/core/ArgumentEngine.d.ts.map +1 -1
  13. package/dist/lib/core/ArgumentEngine.js +98 -4
  14. package/dist/lib/core/ArgumentEngine.js.map +1 -1
  15. package/dist/lib/core/PremiseEngine.d.ts +8 -3
  16. package/dist/lib/core/PremiseEngine.d.ts.map +1 -1
  17. package/dist/lib/core/PremiseEngine.js +51 -30
  18. package/dist/lib/core/PremiseEngine.js.map +1 -1
  19. package/dist/lib/core/VariableManager.d.ts +3 -1
  20. package/dist/lib/core/VariableManager.d.ts.map +1 -1
  21. package/dist/lib/core/VariableManager.js +15 -8
  22. package/dist/lib/core/VariableManager.js.map +1 -1
  23. package/dist/lib/core/diff.d.ts +2 -2
  24. package/dist/lib/core/diff.d.ts.map +1 -1
  25. package/dist/lib/core/diff.js +12 -16
  26. package/dist/lib/core/diff.js.map +1 -1
  27. package/dist/lib/schemata/propositional.d.ts +0 -32
  28. package/dist/lib/schemata/propositional.d.ts.map +1 -1
  29. package/dist/lib/schemata/propositional.js +1 -10
  30. package/dist/lib/schemata/propositional.js.map +1 -1
  31. package/dist/lib/types/checksum.d.ts +1 -1
  32. package/dist/lib/types/checksum.d.ts.map +1 -1
  33. package/package.json +1 -1
@@ -6,6 +6,7 @@ import type { TExpressionInput, TExpressionManagerSnapshot, TExpressionWithoutPo
6
6
  import { VariableManager } from "./VariableManager.js";
7
7
  export type TPremiseEngineSnapshot<TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression> = {
8
8
  premise: TOptionalChecksum<TPremise>;
9
+ rootExpressionId?: string;
9
10
  expressions: TExpressionManagerSnapshot<TExpr>;
10
11
  config?: TLogicEngineOptions;
11
12
  };
@@ -19,9 +20,11 @@ export declare class PremiseEngine<TArg extends TCoreArgument = TCoreArgument, T
19
20
  private checksumConfig?;
20
21
  private checksumDirty;
21
22
  private cachedChecksum;
23
+ private expressionIndex?;
22
24
  constructor(premise: TOptionalChecksum<TPremise>, deps: {
23
25
  argument: TOptionalChecksum<TArg>;
24
26
  variables: VariableManager<TVar>;
27
+ expressionIndex?: Map<string, string>;
25
28
  }, config?: TLogicEngineOptions);
26
29
  /**
27
30
  * Deletes all expressions that reference the given variable ID,
@@ -165,8 +168,9 @@ export declare class PremiseEngine<TArg extends TCoreArgument = TCoreArgument, T
165
168
  getReferencedVariableIds(): Set<string>;
166
169
  /**
167
170
  * Returns a serializable TPremise representation of this premise.
168
- * Builds the premise data from the snapshot, including expressions,
169
- * referenced variable IDs, and checksum.
171
+ * Contains only premise identity/metadata and checksum use
172
+ * getRootExpressionId(), getExpressions(), getReferencedVariableIds()
173
+ * for runtime state.
170
174
  */
171
175
  toPremiseData(): TPremise;
172
176
  /**
@@ -189,7 +193,8 @@ export declare class PremiseEngine<TArg extends TCoreArgument = TCoreArgument, T
189
193
  /** Returns a serializable snapshot of the premise's owned state. */
190
194
  snapshot(): TPremiseEngineSnapshot<TPremise, TExpr>;
191
195
  /** Creates a new PremiseEngine from a previously captured snapshot. */
192
- static fromSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable>(snapshot: TPremiseEngineSnapshot<TPremise, TExpr>, argument: TOptionalChecksum<TArg>, variables: VariableManager<TVar>): PremiseEngine<TArg, TPremise, TExpr, TVar>;
196
+ static fromSnapshot<TArg extends TCoreArgument = TCoreArgument, TPremise extends TCorePremise = TCorePremise, TExpr extends TCorePropositionalExpression = TCorePropositionalExpression, TVar extends TCorePropositionalVariable = TCorePropositionalVariable>(snapshot: TPremiseEngineSnapshot<TPremise, TExpr>, argument: TOptionalChecksum<TArg>, variables: VariableManager<TVar>, expressionIndex?: Map<string, string>): PremiseEngine<TArg, TPremise, TExpr, TVar>;
197
+ private syncExpressionIndex;
193
198
  private rebuildVariableIndex;
194
199
  }
195
200
  //# sourceMappingURL=PremiseEngine.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PremiseEngine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/PremiseEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PremiseEngine.d.ts","sourceRoot":"","sources":["../../../src/lib/core/PremiseEngine.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EAEb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC1B,iBAAiB,EACpB,MAAM,sBAAsB,CAAA;AAG7B,OAAO,KAAK,EACR,yBAAyB,EACzB,4BAA4B,EAI5B,qBAAqB,EACxB,MAAM,wBAAwB,CAAA;AAC/B,OAAO,KAAK,EAAE,mBAAmB,EAAkB,MAAM,sBAAsB,CAAA;AAY/E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAI9D,OAAO,KAAK,EACR,gBAAgB,EAChB,0BAA0B,EAC1B,0BAA0B,EAC1B,iBAAiB,EACpB,MAAM,wBAAwB,CAAA;AAE/B,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAA;AAEtD,MAAM,MAAM,sBAAsB,CAC9B,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,IACzE;IACA,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IACpC,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,WAAW,EAAE,0BAA0B,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B,CAAA;AAED,qBAAa,aAAa,CACtB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B;IAEpE,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,gBAAgB,CAAoB;IAC5C,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,WAAW,CAA0B;IAC7C,OAAO,CAAC,uBAAuB,CAAiC;IAChE,OAAO,CAAC,QAAQ,CAAyB;IACzC,OAAO,CAAC,cAAc,CAAC,CAAqB;IAC5C,OAAO,CAAC,aAAa,CAAO;IAC5B,OAAO,CAAC,cAAc,CAAoB;IAC1C,OAAO,CAAC,eAAe,CAAC,CAAqB;gBAGzC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EACpC,IAAI,EAAE;QACF,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAA;QACjC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,CAAA;QAChC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;KACxC,EACD,MAAM,CAAC,EAAE,mBAAmB;IAYhC;;;;OAIG;IACI,8BAA8B,CACjC,UAAU,EAAE,MAAM,GACnB,mBAAmB,CAAC,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAkC5D;;;;;;;;;;;;;;OAcG;IACI,aAAa,CAChB,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,GACpC,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAyD1D;;;;;;;;;OASG;IACI,gBAAgB,CACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,UAAU,EAAE,0BAA0B,CAAC,KAAK,CAAC,GAC9C,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAuD1D;;;;;;;OAOG;IACI,qBAAqB,CACxB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,QAAQ,GAAG,OAAO,EACpC,UAAU,EAAE,0BAA0B,CAAC,KAAK,CAAC,GAC9C,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAgD1D;;;;;;;;;;;;;;OAcG;IACI,gBAAgB,CACnB,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,iBAAiB,GAC3B,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAuD1D;;;;;;;;OAQG;IACI,gBAAgB,CACnB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,OAAO,GACvB,mBAAmB,CAAC,KAAK,GAAG,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IAsDtE;;;;;;;;;;;;;OAaG;IACI,gBAAgB,CACnB,UAAU,EAAE,gBAAgB,CAAC,KAAK,CAAC,EACnC,UAAU,CAAC,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,MAAM,GACrB,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC;IA4C1D;;;OAGG;IACI,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS;IAI5C,KAAK,IAAI,MAAM;IAIf,SAAS,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAWpC,SAAS,CACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAChC,mBAAmB,CAClB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACvB,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,IAAI,CACP;IAeM,mBAAmB,IAAI,MAAM,GAAG,SAAS;IAIzC,iBAAiB,IAAI,KAAK,GAAG,SAAS;IAO7C;;;;;OAKG;IACI,YAAY,IAAI,IAAI,EAAE;IAItB,cAAc,IAAI,KAAK,EAAE;IAIzB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,KAAK,EAAE;IAI5D;;;OAGG;IACI,WAAW,IAAI,OAAO;IAQ7B;;;OAGG;IACI,YAAY,IAAI,OAAO;IAIvB,oBAAoB,IAAI,qBAAqB;IAoJpD;;;;;;;;;;OAUG;IACI,QAAQ,CACX,UAAU,EAAE,yBAAyB,EACrC,OAAO,CAAC,EAAE;QACN,iBAAiB,CAAC,EAAE,OAAO,CAAA;QAC3B,oBAAoB,CAAC,EAAE,OAAO,CAAA;KACjC,GACF,4BAA4B;IAuL/B;;;;OAIG;IACI,eAAe,IAAI,MAAM;IAOhC;;;;OAIG;IACI,wBAAwB,IAAI,GAAG,CAAC,MAAM,CAAC;IAU9C;;;;;OAKG;IACI,aAAa,IAAI,QAAQ;IAOhC;;;OAGG;IACI,QAAQ,IAAI,MAAM;IAYzB,OAAO,CAAC,eAAe;IAoBvB,qEAAqE;IAC9D,SAAS,IAAI,IAAI;IAIxB;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,cAAc;IAetB,OAAO,CAAC,uBAAuB;IAgB/B,OAAO,CAAC,gBAAgB;IA0CxB,OAAO,CAAC,cAAc;IAetB,oEAAoE;IAC7D,QAAQ,IAAI,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC;IAa1D,uEAAuE;WACzD,YAAY,CACtB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GACtC,4BAA4B,EAChC,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EAEpE,QAAQ,EAAE,sBAAsB,CAAC,QAAQ,EAAE,KAAK,CAAC,EACjD,QAAQ,EAAE,iBAAiB,CAAC,IAAI,CAAC,EACjC,SAAS,EAAE,eAAe,CAAC,IAAI,CAAC,EAChC,eAAe,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GACtC,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC;IAuB7C,OAAO,CAAC,mBAAmB;IAY3B,OAAO,CAAC,oBAAoB;CAQ/B"}
@@ -16,6 +16,7 @@ export class PremiseEngine {
16
16
  checksumConfig;
17
17
  checksumDirty = true;
18
18
  cachedChecksum;
19
+ expressionIndex;
19
20
  constructor(premise, deps, config) {
20
21
  this.premise = { ...premise };
21
22
  this.argument = deps.argument;
@@ -24,6 +25,7 @@ export class PremiseEngine {
24
25
  this.variables = deps.variables;
25
26
  this.expressions = new ExpressionManager(config);
26
27
  this.expressionsByVariableId = new DefaultMap(() => new Set());
28
+ this.expressionIndex = deps.expressionIndex;
27
29
  }
28
30
  /**
29
31
  * Deletes all expressions that reference the given variable ID,
@@ -54,9 +56,11 @@ export class PremiseEngine {
54
56
  }
55
57
  // Expressions in the collector already have checksums attached
56
58
  // (from ExpressionManager which stores expressions with checksums).
59
+ const changes = collector.toChangeset();
60
+ this.syncExpressionIndex(changes);
57
61
  return {
58
62
  result: removed,
59
- changes: collector.toChangeset(),
63
+ changes,
60
64
  };
61
65
  }
62
66
  /**
@@ -105,9 +109,11 @@ export class PremiseEngine {
105
109
  .add(expression.id);
106
110
  }
107
111
  this.markDirty();
112
+ const changes = collector.toChangeset();
113
+ this.syncExpressionIndex(changes);
108
114
  return {
109
115
  result: this.expressions.getExpression(expression.id),
110
- changes: collector.toChangeset(),
116
+ changes,
111
117
  };
112
118
  }
113
119
  finally {
@@ -153,9 +159,11 @@ export class PremiseEngine {
153
159
  .add(expression.id);
154
160
  }
155
161
  this.markDirty();
162
+ const changes = collector.toChangeset();
163
+ this.syncExpressionIndex(changes);
156
164
  return {
157
165
  result: this.expressions.getExpression(expression.id),
158
- changes: collector.toChangeset(),
166
+ changes,
159
167
  };
160
168
  }
161
169
  finally {
@@ -189,9 +197,11 @@ export class PremiseEngine {
189
197
  .add(expression.id);
190
198
  }
191
199
  this.markDirty();
200
+ const changes = collector.toChangeset();
201
+ this.syncExpressionIndex(changes);
192
202
  return {
193
203
  result: this.expressions.getExpression(expression.id),
194
- changes: collector.toChangeset(),
204
+ changes,
195
205
  };
196
206
  }
197
207
  finally {
@@ -242,6 +252,7 @@ export class PremiseEngine {
242
252
  if (changeset.expressions !== undefined) {
243
253
  this.markDirty();
244
254
  }
255
+ this.syncExpressionIndex(changeset);
245
256
  return {
246
257
  result: updated,
247
258
  changes: changeset,
@@ -298,9 +309,11 @@ export class PremiseEngine {
298
309
  }
299
310
  this.syncRootExpressionId();
300
311
  this.markDirty();
312
+ const changes = collector.toChangeset();
313
+ this.syncExpressionIndex(changes);
301
314
  return {
302
315
  result: snapshot,
303
- changes: collector.toChangeset(),
316
+ changes,
304
317
  };
305
318
  }
306
319
  finally {
@@ -338,9 +351,11 @@ export class PremiseEngine {
338
351
  }
339
352
  this.syncRootExpressionId();
340
353
  this.markDirty();
354
+ const changes = collector.toChangeset();
355
+ this.syncExpressionIndex(changes);
341
356
  return {
342
357
  result: this.expressions.getExpression(expression.id),
343
- changes: collector.toChangeset(),
358
+ changes,
344
359
  };
345
360
  }
346
361
  finally {
@@ -358,20 +373,18 @@ export class PremiseEngine {
358
373
  return this.premise.id;
359
374
  }
360
375
  getExtras() {
361
- const { id: _id, argumentId: _argumentId, argumentVersion: _argumentVersion, rootExpressionId: _rootExpressionId, variables: _variables, expressions: _expressions, checksum: _checksum, ...extras } = this.premise;
376
+ const { id: _id, argumentId: _argumentId, argumentVersion: _argumentVersion, checksum: _checksum, ...extras } = this.premise;
362
377
  return { ...extras };
363
378
  }
364
379
  setExtras(extras) {
365
380
  // Strip old extras and replace with new ones
366
- const { id, argumentId, argumentVersion, rootExpressionId, variables, expressions, checksum, } = this.premise;
381
+ const { id, argumentId, argumentVersion, checksum } = this
382
+ .premise;
367
383
  this.premise = {
368
384
  ...extras,
369
385
  id,
370
386
  argumentId,
371
387
  argumentVersion,
372
- ...(rootExpressionId !== undefined ? { rootExpressionId } : {}),
373
- ...(variables !== undefined ? { variables } : {}),
374
- ...(expressions !== undefined ? { expressions } : {}),
375
388
  ...(checksum !== undefined ? { checksum } : {}),
376
389
  };
377
390
  this.markDirty();
@@ -690,15 +703,13 @@ export class PremiseEngine {
690
703
  }
691
704
  /**
692
705
  * Returns a serializable TPremise representation of this premise.
693
- * Builds the premise data from the snapshot, including expressions,
694
- * referenced variable IDs, and checksum.
706
+ * Contains only premise identity/metadata and checksum use
707
+ * getRootExpressionId(), getExpressions(), getReferencedVariableIds()
708
+ * for runtime state.
695
709
  */
696
710
  toPremiseData() {
697
- const snap = this.snapshot();
698
711
  return {
699
- ...snap.premise,
700
- expressions: snap.expressions.expressions,
701
- variables: [...this.getReferencedVariableIds()].sort(),
712
+ ...this.premise,
702
713
  checksum: this.checksum(),
703
714
  };
704
715
  }
@@ -721,10 +732,7 @@ export class PremiseEngine {
721
732
  // Premise's own entity checksum
722
733
  const premiseFields = this.checksumConfig?.premiseFields ??
723
734
  DEFAULT_CHECKSUM_CONFIG.premiseFields;
724
- checksumMap[this.premise.id] = entityChecksum({
725
- id: this.premise.id,
726
- rootExpressionId: this.rootExpressionId,
727
- }, premiseFields);
735
+ checksumMap[this.premise.id] = entityChecksum({ id: this.premise.id }, premiseFields);
728
736
  // All owned expression checksums
729
737
  for (const expr of this.expressions.toArray()) {
730
738
  checksumMap[expr.id] = expr.checksum;
@@ -816,10 +824,8 @@ export class PremiseEngine {
816
824
  snapshot() {
817
825
  const exprSnapshot = this.expressions.snapshot();
818
826
  return {
819
- premise: {
820
- ...this.premise,
821
- rootExpressionId: this.rootExpressionId,
822
- },
827
+ premise: { ...this.premise },
828
+ rootExpressionId: this.rootExpressionId,
823
829
  expressions: exprSnapshot,
824
830
  config: {
825
831
  checksumConfig: this.checksumConfig,
@@ -828,17 +834,32 @@ export class PremiseEngine {
828
834
  };
829
835
  }
830
836
  /** Creates a new PremiseEngine from a previously captured snapshot. */
831
- static fromSnapshot(snapshot, argument, variables) {
832
- const pe = new PremiseEngine(snapshot.premise, { argument, variables }, snapshot.config);
837
+ static fromSnapshot(snapshot, argument, variables, expressionIndex) {
838
+ const pe = new PremiseEngine(snapshot.premise, { argument, variables, expressionIndex }, snapshot.config);
833
839
  // Restore expressions from the snapshot
834
840
  pe.expressions = ExpressionManager.fromSnapshot(snapshot.expressions);
835
- // Restore rootExpressionId from premise data
836
- pe.rootExpressionId = snapshot.premise
837
- .rootExpressionId;
841
+ // Restore rootExpressionId from snapshot
842
+ pe.rootExpressionId = snapshot.rootExpressionId;
838
843
  // Rebuild the expressionsByVariableId index
839
844
  pe.rebuildVariableIndex();
845
+ // Populate the shared expression index if provided
846
+ if (expressionIndex) {
847
+ for (const expr of pe.expressions.toArray()) {
848
+ expressionIndex.set(expr.id, pe.getId());
849
+ }
850
+ }
840
851
  return pe;
841
852
  }
853
+ syncExpressionIndex(changes) {
854
+ if (!this.expressionIndex || !changes.expressions)
855
+ return;
856
+ for (const expr of changes.expressions.added) {
857
+ this.expressionIndex.set(expr.id, this.premise.id);
858
+ }
859
+ for (const expr of changes.expressions.removed) {
860
+ this.expressionIndex.delete(expr.id);
861
+ }
862
+ }
842
863
  rebuildVariableIndex() {
843
864
  this.expressionsByVariableId = new DefaultMap(() => new Set());
844
865
  for (const expr of this.expressions.toArray()) {
@@ -1 +1 @@
1
- {"version":3,"file":"PremiseEngine.js","sourceRoot":"","sources":["../../../src/lib/core/PremiseEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PremiseEngine.js","sourceRoot":"","sources":["../../../src/lib/core/PremiseEngine.ts"],"names":[],"mappings":"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"}
@@ -14,7 +14,7 @@ export type TVariableManagerSnapshot<TVar extends TCorePropositionalVariable = T
14
14
  */
15
15
  export declare class VariableManager<TVar extends TCorePropositionalVariable = TCorePropositionalVariable> {
16
16
  private variables;
17
- private variableSymbols;
17
+ private variablesBySymbol;
18
18
  private config?;
19
19
  constructor(config?: TLogicEngineOptions);
20
20
  /** Returns all registered variables sorted by ID for deterministic output. */
@@ -35,6 +35,8 @@ export declare class VariableManager<TVar extends TCorePropositionalVariable = T
35
35
  hasVariable(variableId: string): boolean;
36
36
  /** Returns the variable with the given ID, or `undefined` if not found. */
37
37
  getVariable(variableId: string): TVar | undefined;
38
+ /** Returns the variable with the given symbol, or `undefined` if not found. */
39
+ getVariableBySymbol(symbol: string): TVar | undefined;
38
40
  /**
39
41
  * Changes the symbol of an existing variable.
40
42
  *
@@ -1 +1 @@
1
- {"version":3,"file":"VariableManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,MAAM,MAAM,wBAAwB,CAChC,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,IACpE;IACA,SAAS,EAAE,IAAI,EAAE,CAAA;IACjB,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B,CAAA;AAED;;;;;;;GAOG;AACH,qBAAa,eAAe,CACxB,IAAI,SAAS,0BAA0B,GAAG,0BAA0B;IAEpE,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,MAAM,CAAC,CAAqB;gBAExB,MAAM,CAAC,EAAE,mBAAmB;IAMxC,8EAA8E;IACvE,OAAO,IAAI,IAAI,EAAE;IAMxB;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,IAAI;IAcjC;;;OAGG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAW3D,oEAAoE;IAC7D,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI/C,2EAA2E;IACpE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAIxD;;;;;OAKG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAmBlE;;;;;;OAMG;IACI,cAAc,CACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7B,IAAI,GAAG,SAAS;IAWnB,4DAA4D;IACrD,QAAQ,IAAI,wBAAwB,CAAC,IAAI,CAAC;IAOjD,yEAAyE;WAC3D,YAAY,CACtB,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EACtE,QAAQ,EAAE,wBAAwB,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC;CAOrE"}
1
+ {"version":3,"file":"VariableManager.d.ts","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAA;AACtE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAE9D,MAAM,MAAM,wBAAwB,CAChC,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,IACpE;IACA,SAAS,EAAE,IAAI,EAAE,CAAA;IACjB,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAC/B,CAAA;AAED;;;;;;;GAOG;AACH,qBAAa,eAAe,CACxB,IAAI,SAAS,0BAA0B,GAAG,0BAA0B;IAEpE,OAAO,CAAC,SAAS,CAAmB;IACpC,OAAO,CAAC,iBAAiB,CAAqB;IAC9C,OAAO,CAAC,MAAM,CAAC,CAAqB;gBAExB,MAAM,CAAC,EAAE,mBAAmB;IAMxC,8EAA8E;IACvE,OAAO,IAAI,IAAI,EAAE;IAMxB;;;;;OAKG;IACI,WAAW,CAAC,QAAQ,EAAE,IAAI;IAcjC;;;OAGG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAW3D,oEAAoE;IAC7D,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAI/C,2EAA2E;IACpE,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAIxD,+EAA+E;IACxE,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS;IAM5D;;;;;OAKG;IACI,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAmBlE;;;;;;OAMG;IACI,cAAc,CACjB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAC7B,IAAI,GAAG,SAAS;IAWnB,4DAA4D;IACrD,QAAQ,IAAI,wBAAwB,CAAC,IAAI,CAAC;IAOjD,yEAAyE;WAC3D,YAAY,CACtB,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EACtE,QAAQ,EAAE,wBAAwB,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,IAAI,CAAC;CAOrE"}
@@ -8,11 +8,11 @@
8
8
  */
9
9
  export class VariableManager {
10
10
  variables;
11
- variableSymbols;
11
+ variablesBySymbol;
12
12
  config;
13
13
  constructor(config) {
14
14
  this.variables = new Map();
15
- this.variableSymbols = new Set();
15
+ this.variablesBySymbol = new Map();
16
16
  this.config = config;
17
17
  }
18
18
  /** Returns all registered variables sorted by ID for deterministic output. */
@@ -26,14 +26,14 @@ export class VariableManager {
26
26
  * @throws If the ID already exists.
27
27
  */
28
28
  addVariable(variable) {
29
- if (this.variableSymbols.has(variable.symbol)) {
29
+ if (this.variablesBySymbol.has(variable.symbol)) {
30
30
  throw new Error(`Variable symbol "${variable.symbol}" already exists.`);
31
31
  }
32
32
  if (this.variables.has(variable.id)) {
33
33
  throw new Error(`Variable with ID "${variable.id}" already exists.`);
34
34
  }
35
35
  this.variables.set(variable.id, variable);
36
- this.variableSymbols.add(variable.symbol);
36
+ this.variablesBySymbol.set(variable.symbol, variable.id);
37
37
  }
38
38
  /**
39
39
  * Removes a variable by ID.
@@ -45,7 +45,7 @@ export class VariableManager {
45
45
  return undefined;
46
46
  }
47
47
  this.variables.delete(variableId);
48
- this.variableSymbols.delete(variable.symbol);
48
+ this.variablesBySymbol.delete(variable.symbol);
49
49
  return variable;
50
50
  }
51
51
  /** Returns `true` if a variable with the given ID is registered. */
@@ -56,6 +56,13 @@ export class VariableManager {
56
56
  getVariable(variableId) {
57
57
  return this.variables.get(variableId);
58
58
  }
59
+ /** Returns the variable with the given symbol, or `undefined` if not found. */
60
+ getVariableBySymbol(symbol) {
61
+ const id = this.variablesBySymbol.get(symbol);
62
+ if (id === undefined)
63
+ return undefined;
64
+ return this.variables.get(id);
65
+ }
59
66
  /**
60
67
  * Changes the symbol of an existing variable.
61
68
  *
@@ -67,12 +74,12 @@ export class VariableManager {
67
74
  if (!variable) {
68
75
  throw new Error(`Variable "${variableId}" does not exist.`);
69
76
  }
70
- if (this.variableSymbols.has(newSymbol) &&
77
+ if (this.variablesBySymbol.has(newSymbol) &&
71
78
  variable.symbol !== newSymbol) {
72
79
  throw new Error(`Variable symbol "${newSymbol}" is already in use.`);
73
80
  }
74
- this.variableSymbols.delete(variable.symbol);
75
- this.variableSymbols.add(newSymbol);
81
+ this.variablesBySymbol.delete(variable.symbol);
82
+ this.variablesBySymbol.set(newSymbol, variableId);
76
83
  this.variables.set(variableId, {
77
84
  ...variable,
78
85
  symbol: newSymbol,
@@ -1 +1 @@
1
- {"version":3,"file":"VariableManager.js","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VariableManager.js","sourceRoot":"","sources":["../../../src/lib/core/VariableManager.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,8 @@ import type { ArgumentEngine } from "./ArgumentEngine.js";
5
5
  export declare function defaultCompareArgument(_before: TCoreArgument, _after: TCoreArgument): TCoreFieldChange[];
6
6
  /** Compares two variables and returns field-level changes for `symbol`. */
7
7
  export declare function defaultCompareVariable(before: TCorePropositionalVariable, after: TCorePropositionalVariable): TCoreFieldChange[];
8
- /** Compares two premises and returns field-level changes for `rootExpressionId`. */
9
- export declare function defaultComparePremise(before: TCorePremise, after: TCorePremise): TCoreFieldChange[];
8
+ /** Compares two premises and returns field-level changes. Base premise has no diffable fields beyond identity. */
9
+ export declare function defaultComparePremise(_before: TCorePremise, _after: TCorePremise): TCoreFieldChange[];
10
10
  /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
11
11
  export declare function defaultCompareExpression(before: TCorePropositionalExpression, after: TCorePropositionalExpression): TCoreFieldChange[];
12
12
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,iBAAiB,EACjB,gBAAgB,EAGhB,gBAAgB,EAKnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,kHAAkH;AAClH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,GACtB,gBAAgB,EAAE,CAEpB;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,0BAA0B,GAClC,gBAAgB,EAAE,CAUpB;AAED,oFAAoF;AACpF,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,YAAY,GACpB,gBAAgB,EAAE,CAUpB;AAED,iJAAiJ;AACjJ,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,4BAA4B,GACpC,gBAAgB,EAAE,CA0CpB;AA0HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EAEpE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,GACxD,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CA6ChD"}
1
+ {"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EACb,YAAY,EACZ,4BAA4B,EAC5B,0BAA0B,EAC7B,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACR,iBAAiB,EACjB,gBAAgB,EAGhB,gBAAgB,EAKnB,MAAM,kBAAkB,CAAA;AACzB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,kHAAkH;AAClH,wBAAgB,sBAAsB,CAClC,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,aAAa,GACtB,gBAAgB,EAAE,CAEpB;AAED,2EAA2E;AAC3E,wBAAgB,sBAAsB,CAClC,MAAM,EAAE,0BAA0B,EAClC,KAAK,EAAE,0BAA0B,GAClC,gBAAgB,EAAE,CAUpB;AAED,kHAAkH;AAClH,wBAAgB,qBAAqB,CACjC,OAAO,EAAE,YAAY,EACrB,MAAM,EAAE,YAAY,GACrB,gBAAgB,EAAE,CAEpB;AAED,iJAAiJ;AACjJ,wBAAgB,wBAAwB,CACpC,MAAM,EAAE,4BAA4B,EACpC,KAAK,EAAE,4BAA4B,GACpC,gBAAgB,EAAE,CA0CpB;AA4HD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,IAAI,SAAS,aAAa,GAAG,aAAa,EAC1C,QAAQ,SAAS,YAAY,GAAG,YAAY,EAC5C,KAAK,SAAS,4BAA4B,GAAG,4BAA4B,EACzE,IAAI,SAAS,0BAA0B,GAAG,0BAA0B,EAEpE,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,EAAE,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,EACpD,OAAO,CAAC,EAAE,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,GACxD,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,CAAC,CAuDhD"}
@@ -14,17 +14,9 @@ export function defaultCompareVariable(before, after) {
14
14
  }
15
15
  return changes;
16
16
  }
17
- /** Compares two premises and returns field-level changes for `rootExpressionId`. */
18
- export function defaultComparePremise(before, after) {
19
- const changes = [];
20
- if (before.rootExpressionId !== after.rootExpressionId) {
21
- changes.push({
22
- field: "rootExpressionId",
23
- before: before.rootExpressionId,
24
- after: after.rootExpressionId,
25
- });
26
- }
27
- return changes;
17
+ /** Compares two premises and returns field-level changes. Base premise has no diffable fields beyond identity. */
18
+ export function defaultComparePremise(_before, _after) {
19
+ return [];
28
20
  }
29
21
  /** Compares two expressions and returns field-level changes for structural fields (`type`, `parentId`, `position`, `variableId`, `operator`). */
30
22
  export function defaultCompareExpression(before, after) {
@@ -97,7 +89,7 @@ function diffEntitySet(beforeItems, afterItems, compare) {
97
89
  }
98
90
  return { added, removed, modified };
99
91
  }
100
- function diffPremiseSet(beforePremises, afterPremises, comparePremise, compareExpression) {
92
+ function diffPremiseSet(beforePremises, afterPremises, beforeExpressions, afterExpressions, comparePremise, compareExpression) {
101
93
  const beforeById = new Map(beforePremises.map((p) => [p.id, p]));
102
94
  const afterById = new Map(afterPremises.map((p) => [p.id, p]));
103
95
  const added = [];
@@ -110,7 +102,7 @@ function diffPremiseSet(beforePremises, afterPremises, comparePremise, compareEx
110
102
  continue;
111
103
  }
112
104
  const premiseChanges = comparePremise(beforePremise, afterPremise);
113
- const expressionsDiff = diffEntitySet(beforePremise.expressions, afterPremise.expressions, compareExpression);
105
+ const expressionsDiff = diffEntitySet(beforeExpressions.get(id) ?? [], afterExpressions.get(id) ?? [], compareExpression);
114
106
  const hasExpressionChanges = expressionsDiff.added.length > 0 ||
115
107
  expressionsDiff.removed.length > 0 ||
116
108
  expressionsDiff.modified.length > 0;
@@ -161,8 +153,12 @@ function collectVariables(engine) {
161
153
  export function diffArguments(engineA, engineB, options) {
162
154
  const argA = engineA.getArgument();
163
155
  const argB = engineB.getArgument();
164
- const premisesA = engineA.listPremises().map((pe) => pe.toPremiseData());
165
- const premisesB = engineB.listPremises().map((pe) => pe.toPremiseData());
156
+ const premiseEnginesA = engineA.listPremises();
157
+ const premiseEnginesB = engineB.listPremises();
158
+ const premisesA = premiseEnginesA.map((pe) => pe.toPremiseData());
159
+ const premisesB = premiseEnginesB.map((pe) => pe.toPremiseData());
160
+ const expressionsA = new Map(premiseEnginesA.map((pe) => [pe.getId(), pe.getExpressions()]));
161
+ const expressionsB = new Map(premiseEnginesB.map((pe) => [pe.getId(), pe.getExpressions()]));
166
162
  const rolesA = engineA.getRoleState();
167
163
  const rolesB = engineB.getRoleState();
168
164
  const compareArg = options?.compareArgument ??
@@ -181,7 +177,7 @@ export function diffArguments(engineA, engineB, options) {
181
177
  changes: argumentChanges,
182
178
  },
183
179
  variables: diffEntitySet(collectVariables(engineA), collectVariables(engineB), compareVar),
184
- premises: diffPremiseSet(premisesA, premisesB, comparePrem, compareExpr),
180
+ premises: diffPremiseSet(premisesA, premisesB, expressionsA, expressionsB, comparePrem, compareExpr),
185
181
  roles: diffRoles(rolesA.conclusionPremiseId, rolesB.conclusionPremiseId),
186
182
  };
187
183
  }
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../../src/lib/core/diff.ts"],"names":[],"mappings":"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"}