@higher.archi/boe 1.0.7 → 1.0.9

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 (125) hide show
  1. package/dist/core/errors.d.ts +48 -0
  2. package/dist/core/errors.d.ts.map +1 -0
  3. package/dist/core/errors.js +63 -0
  4. package/dist/core/errors.js.map +1 -0
  5. package/dist/core/evaluation/decay.d.ts +60 -0
  6. package/dist/core/evaluation/decay.d.ts.map +1 -0
  7. package/dist/core/evaluation/decay.js +111 -0
  8. package/dist/core/evaluation/decay.js.map +1 -0
  9. package/dist/core/evaluation/index.d.ts +2 -0
  10. package/dist/core/evaluation/index.d.ts.map +1 -1
  11. package/dist/core/evaluation/index.js +5 -1
  12. package/dist/core/evaluation/index.js.map +1 -1
  13. package/dist/core/index.d.ts +2 -0
  14. package/dist/core/index.d.ts.map +1 -1
  15. package/dist/core/index.js +6 -1
  16. package/dist/core/index.js.map +1 -1
  17. package/dist/core/types/rule.d.ts +1 -0
  18. package/dist/core/types/rule.d.ts.map +1 -1
  19. package/dist/engines/backward/compiler.js +1 -1
  20. package/dist/engines/backward/compiler.js.map +1 -1
  21. package/dist/engines/bayesian/compiler.d.ts.map +1 -1
  22. package/dist/engines/bayesian/compiler.js +21 -9
  23. package/dist/engines/bayesian/compiler.js.map +1 -1
  24. package/dist/engines/bayesian/strategy.d.ts.map +1 -1
  25. package/dist/engines/bayesian/strategy.js +46 -9
  26. package/dist/engines/bayesian/strategy.js.map +1 -1
  27. package/dist/engines/bayesian/types.d.ts +16 -0
  28. package/dist/engines/bayesian/types.d.ts.map +1 -1
  29. package/dist/engines/bayesian/types.js.map +1 -1
  30. package/dist/engines/constraint/compiler.d.ts.map +1 -1
  31. package/dist/engines/constraint/compiler.js +10 -10
  32. package/dist/engines/constraint/compiler.js.map +1 -1
  33. package/dist/engines/defeasible/compiler.d.ts.map +1 -1
  34. package/dist/engines/defeasible/compiler.js +17 -3
  35. package/dist/engines/defeasible/compiler.js.map +1 -1
  36. package/dist/engines/defeasible/strategy.d.ts.map +1 -1
  37. package/dist/engines/defeasible/strategy.js +47 -2
  38. package/dist/engines/defeasible/strategy.js.map +1 -1
  39. package/dist/engines/defeasible/types.d.ts +29 -1
  40. package/dist/engines/defeasible/types.d.ts.map +1 -1
  41. package/dist/engines/defeasible/types.js.map +1 -1
  42. package/dist/engines/expert/compiler.d.ts.map +1 -1
  43. package/dist/engines/expert/compiler.js +6 -6
  44. package/dist/engines/expert/compiler.js.map +1 -1
  45. package/dist/engines/forward/compiler.d.ts.map +1 -1
  46. package/dist/engines/forward/compiler.js +4 -4
  47. package/dist/engines/forward/compiler.js.map +1 -1
  48. package/dist/engines/forward/strategy.d.ts.map +1 -1
  49. package/dist/engines/forward/strategy.js +4 -4
  50. package/dist/engines/forward/strategy.js.map +1 -1
  51. package/dist/engines/fuzzy/compiler.js +1 -1
  52. package/dist/engines/fuzzy/compiler.js.map +1 -1
  53. package/dist/engines/fuzzy/strategy.d.ts.map +1 -1
  54. package/dist/engines/fuzzy/strategy.js +8 -8
  55. package/dist/engines/fuzzy/strategy.js.map +1 -1
  56. package/dist/engines/monte-carlo/compiler.d.ts.map +1 -1
  57. package/dist/engines/monte-carlo/compiler.js +8 -8
  58. package/dist/engines/monte-carlo/compiler.js.map +1 -1
  59. package/dist/engines/monte-carlo/strategy.js +1 -1
  60. package/dist/engines/monte-carlo/strategy.js.map +1 -1
  61. package/dist/engines/pricing/compiler.d.ts.map +1 -1
  62. package/dist/engines/pricing/compiler.js +9 -9
  63. package/dist/engines/pricing/compiler.js.map +1 -1
  64. package/dist/engines/pricing/strategy.js +7 -6
  65. package/dist/engines/pricing/strategy.js.map +1 -1
  66. package/dist/engines/pricing/types.d.ts +2 -0
  67. package/dist/engines/pricing/types.d.ts.map +1 -1
  68. package/dist/engines/scoring/compiler.d.ts.map +1 -1
  69. package/dist/engines/scoring/compiler.js +24 -10
  70. package/dist/engines/scoring/compiler.js.map +1 -1
  71. package/dist/engines/scoring/strategy.d.ts.map +1 -1
  72. package/dist/engines/scoring/strategy.js +51 -2
  73. package/dist/engines/scoring/strategy.js.map +1 -1
  74. package/dist/engines/scoring/types.d.ts +16 -0
  75. package/dist/engines/scoring/types.d.ts.map +1 -1
  76. package/dist/engines/sequential/compiler.d.ts.map +1 -1
  77. package/dist/engines/sequential/compiler.js +4 -4
  78. package/dist/engines/sequential/compiler.js.map +1 -1
  79. package/dist/engines/sequential/strategy.js +1 -1
  80. package/dist/engines/sequential/strategy.js.map +1 -1
  81. package/dist/engines/state-machine/compiler.js +4 -4
  82. package/dist/engines/state-machine/compiler.js.map +1 -1
  83. package/dist/engines/state-machine/strategy.d.ts.map +1 -1
  84. package/dist/engines/state-machine/strategy.js +2 -1
  85. package/dist/engines/state-machine/strategy.js.map +1 -1
  86. package/dist/engines/utility/compiler.d.ts.map +1 -1
  87. package/dist/engines/utility/compiler.js +7 -7
  88. package/dist/engines/utility/compiler.js.map +1 -1
  89. package/dist/index.d.ts +4 -0
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +10 -1
  92. package/dist/index.js.map +1 -1
  93. package/package.json +1 -1
  94. package/src/core/errors.ts +69 -0
  95. package/src/core/evaluation/decay.ts +165 -0
  96. package/src/core/evaluation/index.ts +13 -0
  97. package/src/core/index.ts +4 -0
  98. package/src/core/types/rule.ts +1 -0
  99. package/src/engines/backward/compiler.ts +1 -1
  100. package/src/engines/bayesian/compiler.ts +24 -10
  101. package/src/engines/bayesian/strategy.ts +61 -10
  102. package/src/engines/bayesian/types.ts +17 -0
  103. package/src/engines/constraint/compiler.ts +12 -11
  104. package/src/engines/defeasible/compiler.ts +18 -3
  105. package/src/engines/defeasible/strategy.ts +62 -2
  106. package/src/engines/defeasible/types.ts +33 -0
  107. package/src/engines/expert/compiler.ts +8 -7
  108. package/src/engines/forward/compiler.ts +6 -5
  109. package/src/engines/forward/strategy.ts +6 -5
  110. package/src/engines/fuzzy/compiler.ts +1 -1
  111. package/src/engines/fuzzy/strategy.ts +9 -9
  112. package/src/engines/monte-carlo/compiler.ts +10 -9
  113. package/src/engines/monte-carlo/strategy.ts +2 -2
  114. package/src/engines/pricing/compiler.ts +11 -10
  115. package/src/engines/pricing/strategy.ts +7 -7
  116. package/src/engines/pricing/types.ts +2 -0
  117. package/src/engines/scoring/compiler.ts +27 -11
  118. package/src/engines/scoring/strategy.ts +67 -3
  119. package/src/engines/scoring/types.ts +17 -0
  120. package/src/engines/sequential/compiler.ts +6 -5
  121. package/src/engines/sequential/strategy.ts +2 -2
  122. package/src/engines/state-machine/compiler.ts +5 -5
  123. package/src/engines/state-machine/strategy.ts +3 -1
  124. package/src/engines/utility/compiler.ts +9 -8
  125. package/src/index.ts +16 -0
@@ -8,6 +8,7 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.bayesianStrategy = exports.BayesianStrategy = void 0;
10
10
  const core_1 = require("../../core");
11
+ const decay_1 = require("../../core/evaluation/decay");
11
12
  /**
12
13
  * Check if value is a CompiledPath (fact reference)
13
14
  */
@@ -24,12 +25,12 @@ function isCompiledPath(value) {
24
25
  function resolvePathValue(compiledPath, context) {
25
26
  const fact = context[compiledPath.param];
26
27
  if (!fact) {
27
- throw new Error(`No fact bound to '${compiledPath.param}' for prior resolution`);
28
+ throw new core_1.RuntimeError(`No fact bound to '${compiledPath.param}' for prior resolution`);
28
29
  }
29
30
  let value = fact.data;
30
31
  for (const key of compiledPath.path) {
31
32
  if (value === undefined || value === null) {
32
- throw new Error(`Cannot resolve path '${compiledPath.param}.${compiledPath.path.join('.')}': intermediate value is ${value}`);
33
+ throw new core_1.RuntimeError(`Cannot resolve path '${compiledPath.param}.${compiledPath.path.join('.')}': intermediate value is ${value}`);
33
34
  }
34
35
  value = value[key];
35
36
  }
@@ -52,7 +53,7 @@ function resolvePrior(prior, context) {
52
53
  if (isCompiledPath(prior)) {
53
54
  const value = resolvePathValue(prior, context);
54
55
  if (typeof value !== 'number') {
55
- throw new Error(`Prior path '${prior.param}.${prior.path.join('.')}' must resolve to a number, got: ${typeof value}`);
56
+ throw new core_1.RuntimeError(`Prior path '${prior.param}.${prior.path.join('.')}' must resolve to a number, got: ${typeof value}`);
56
57
  }
57
58
  return value;
58
59
  }
@@ -60,11 +61,11 @@ function resolvePrior(prior, context) {
60
61
  if (typeof prior === 'object' && prior !== null && 'op' in prior) {
61
62
  const result = (0, core_1.evaluateCondition)(prior, context);
62
63
  if (typeof result !== 'number') {
63
- throw new Error(`Prior expression must evaluate to a number, got: ${typeof result}`);
64
+ throw new core_1.RuntimeError(`Prior expression must evaluate to a number, got: ${typeof result}`);
64
65
  }
65
66
  return result;
66
67
  }
67
- throw new Error(`Invalid prior value at runtime: ${JSON.stringify(prior)}`);
68
+ throw new core_1.RuntimeError(`Invalid prior value at runtime: ${JSON.stringify(prior)}`);
68
69
  }
69
70
  /**
70
71
  * Build context for resolving hypothesis priors from ruleset inputs
@@ -141,6 +142,8 @@ class BayesianStrategy {
141
142
  const fired = [];
142
143
  const evidence = [];
143
144
  let thresholdExceeded;
145
+ const decayInfoMap = {};
146
+ const now = new Date();
144
147
  // Track which hypotheses were below threshold initially
145
148
  // (so we can detect when they cross it)
146
149
  const belowThreshold = new Set();
@@ -159,18 +162,50 @@ class BayesianStrategy {
159
162
  if (!fired.includes(rule.id)) {
160
163
  fired.push(rule.id);
161
164
  }
165
+ // Compute decay for this rule's evidence
166
+ let effectiveLikelihoods = rule.likelihood;
167
+ let likelihoodsBeforeDecay;
168
+ let ruleDecayInfo;
169
+ const ruleDecay = rule.decay;
170
+ const engineDecay = config.decay;
171
+ if (ruleDecay || engineDecay) {
172
+ const tsRef = ruleDecay?.timestamp ?? engineDecay?.timestamp;
173
+ if (typeof tsRef === 'string') {
174
+ const dataTimestamp = (0, decay_1.resolveDecayTimestamp)(tsRef, activation.facts);
175
+ if (dataTimestamp) {
176
+ const decayConfig = {
177
+ ...(engineDecay?.config ?? { curve: 'exponential', timeUnit: 'days' }),
178
+ ...ruleDecay?.config
179
+ };
180
+ const info = (0, decay_1.calculateDecayMultiplier)(dataTimestamp, now, decayConfig);
181
+ ruleDecayInfo = info;
182
+ decayInfoMap[rule.id] = info;
183
+ // Decay likelihoods toward 1.0 (neutral)
184
+ // decayedLikelihood = 1.0 + (originalLikelihood - 1.0) * multiplier
185
+ if (info.multiplier < 1.0) {
186
+ likelihoodsBeforeDecay = { ...rule.likelihood };
187
+ effectiveLikelihoods = {};
188
+ for (const [h, lh] of Object.entries(rule.likelihood)) {
189
+ effectiveLikelihoods[h] = 1.0 + (lh - 1.0) * info.multiplier;
190
+ }
191
+ }
192
+ }
193
+ }
194
+ }
162
195
  // Record evidence
163
196
  evidence.push({
164
197
  ruleId: rule.id,
165
198
  ruleName: rule.name,
166
- likelihoods: rule.likelihood
199
+ likelihoods: effectiveLikelihoods,
200
+ likelihoodsBeforeDecay,
201
+ decayInfo: ruleDecayInfo
167
202
  });
168
203
  // Callback
169
204
  if (onFire) {
170
- onFire(rule.id, activation.facts, rule.likelihood);
205
+ onFire(rule.id, activation.facts, effectiveLikelihoods);
171
206
  }
172
- // Update posteriors with this evidence
173
- posteriors = applyEvidence(posteriors, rule.likelihood);
207
+ // Update posteriors with this evidence (using decayed likelihoods)
208
+ posteriors = applyEvidence(posteriors, effectiveLikelihoods);
174
209
  // Check if any hypothesis crossed the threshold (from below to above)
175
210
  if (threshold !== undefined && thresholdExceeded === undefined) {
176
211
  for (const [hypothesis, posterior] of Object.entries(posteriors)) {
@@ -194,6 +229,7 @@ class BayesianStrategy {
194
229
  // Store normalized priors for result
195
230
  const normalizedPriors = normalizePosteriors(priors);
196
231
  const executionTimeMs = Math.round((performance.now() - startTime) * 100) / 100;
232
+ const hasDecay = Object.keys(decayInfoMap).length > 0;
197
233
  return {
198
234
  priors: normalizedPriors,
199
235
  posteriors,
@@ -202,6 +238,7 @@ class BayesianStrategy {
202
238
  fired,
203
239
  evidence,
204
240
  thresholdExceeded,
241
+ ...(hasDecay ? { decayInfo: decayInfoMap } : {}),
205
242
  iterations: 1,
206
243
  executionTimeMs
207
244
  };
@@ -1 +1 @@
1
- {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../src/engines/bayesian/strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../src/engines/bayesian/strategy.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  * Updates belief in hypotheses based on evidence from rules.
6
6
  */
7
7
  import { BaseRule, BaseRuleSet, InputParameter, CompiledBaseRule, CompiledBaseRuleSet, CompiledCondition, CompiledPath, Expression, BindingContext } from '../../core';
8
+ import { DecayConfig, DecayInfo } from '../../core/evaluation/decay';
8
9
  /**
9
10
  * Semantic likelihood labels - human-readable strength indicators
10
11
  */
@@ -56,6 +57,10 @@ export type PriorDefault = 'uniform' | 'skeptical' | 'optimistic';
56
57
  */
57
58
  export type BayesianRule = BaseRule & {
58
59
  likelihood: LikelihoodMap;
60
+ decay?: {
61
+ timestamp: string | Expression;
62
+ config?: Partial<DecayConfig>;
63
+ };
59
64
  };
60
65
  /**
61
66
  * Bayesian ruleset configuration
@@ -64,6 +69,10 @@ export type BayesianConfig = {
64
69
  mode: 'bayesian';
65
70
  threshold?: number;
66
71
  priorDefault?: PriorDefault;
72
+ decay?: {
73
+ timestamp?: string | Expression;
74
+ config: DecayConfig;
75
+ };
67
76
  };
68
77
  /**
69
78
  * Bayesian ruleset
@@ -98,6 +107,10 @@ export type CompiledLikelihoodMap = Record<string, number>;
98
107
  */
99
108
  export type CompiledBayesianRule = CompiledBaseRule & {
100
109
  likelihood: CompiledLikelihoodMap;
110
+ decay?: {
111
+ timestamp: string;
112
+ config?: Partial<DecayConfig>;
113
+ };
101
114
  };
102
115
  /**
103
116
  * Compiled Bayesian ruleset
@@ -116,6 +129,8 @@ export type EvidenceEntry = {
116
129
  ruleId: string;
117
130
  ruleName?: string;
118
131
  likelihoods: CompiledLikelihoodMap;
132
+ likelihoodsBeforeDecay?: CompiledLikelihoodMap;
133
+ decayInfo?: DecayInfo;
119
134
  };
120
135
  /**
121
136
  * Runtime options for Bayesian execution
@@ -135,6 +150,7 @@ export type BayesianResult = {
135
150
  fired: string[];
136
151
  evidence: EvidenceEntry[];
137
152
  thresholdExceeded?: string;
153
+ decayInfo?: Record<string, DecayInfo>;
138
154
  iterations: 1;
139
155
  executionTimeMs: number;
140
156
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/engines/bayesian/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/engines/bayesian/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/engines/bayesian/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAsMH,2CAA2C;AAC3C,+BAA+B;AAC/B,2CAA2C;AAE3C;;GAEG;AACU,QAAA,oBAAoB,GAAuC;IACtE,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,GAAG;IAClB,sBAAsB,EAAE,GAAG;IAC3B,SAAS,EAAE,GAAG;IACd,sBAAsB,EAAE,CAAC,GAAG,GAAG,EAAG,SAAS;IAC3C,aAAa,EAAE,CAAC,GAAG,GAAG,EAAY,SAAS;IAC3C,cAAc,EAAE,CAAC,GAAG,GAAG,CAAW,MAAM;CACzC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/engines/bayesian/types.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAuNH,2CAA2C;AAC3C,+BAA+B;AAC/B,2CAA2C;AAE3C;;GAEG;AACU,QAAA,oBAAoB,GAAuC;IACtE,aAAa,EAAE,GAAG;IAClB,aAAa,EAAE,GAAG;IAClB,sBAAsB,EAAE,GAAG;IAC3B,SAAS,EAAE,GAAG;IACd,sBAAsB,EAAE,CAAC,GAAG,GAAG,EAAG,SAAS;IAC3C,aAAa,EAAE,CAAC,GAAG,GAAG,EAAY,SAAS;IAC3C,cAAc,EAAE,CAAC,GAAG,GAAG,CAAW,MAAM;CACzC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/engines/constraint/compiler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAS1B,MAAM,SAAS,CAAC;AAuLjB,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,iBAAiB,GACzB,yBAAyB,CAwD3B"}
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/engines/constraint/compiler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAS1B,MAAM,SAAS,CAAC;AAuLjB,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,iBAAiB,GACzB,yBAAyB,CAwD3B"}
@@ -27,10 +27,10 @@ const DEFAULT_CONFIG = {
27
27
  // ========================================
28
28
  function compileVariable(variable, index) {
29
29
  if (!variable.name) {
30
- throw new Error(`Variable at index ${index} must have a name`);
30
+ throw new core_1.CompilationError(`Variable at index ${index} must have a name`);
31
31
  }
32
32
  if (!Array.isArray(variable.domain) || variable.domain.length === 0) {
33
- throw new Error(`Variable '${variable.name}' must have a non-empty domain array`);
33
+ throw new core_1.CompilationError(`Variable '${variable.name}' must have a non-empty domain array`);
34
34
  }
35
35
  return {
36
36
  name: variable.name,
@@ -43,17 +43,17 @@ function compileVariable(variable, index) {
43
43
  // ========================================
44
44
  function compileConstraint(constraint, variableMap, constraintIndex) {
45
45
  if (!constraint.id) {
46
- throw new Error(`Constraint at index ${constraintIndex} must have an id`);
46
+ throw new core_1.CompilationError(`Constraint at index ${constraintIndex} must have an id`);
47
47
  }
48
48
  if (!Array.isArray(constraint.variables) || constraint.variables.length === 0) {
49
- throw new Error(`Constraint '${constraint.id}' must reference at least one variable`);
49
+ throw new core_1.CompilationError(`Constraint '${constraint.id}' must reference at least one variable`);
50
50
  }
51
51
  // Map variable names to indices
52
52
  const variableIndices = [];
53
53
  for (const varName of constraint.variables) {
54
54
  const index = variableMap.get(varName);
55
55
  if (index === undefined) {
56
- throw new Error(`Constraint '${constraint.id}' references unknown variable '${varName}'`);
56
+ throw new core_1.CompilationError(`Constraint '${constraint.id}' references unknown variable '${varName}'`);
57
57
  }
58
58
  variableIndices.push(index);
59
59
  }
@@ -82,17 +82,17 @@ function resolveWeight(weight) {
82
82
  }
83
83
  function compilePreference(preference, variableMap, preferenceIndex) {
84
84
  if (!preference.id) {
85
- throw new Error(`Preference at index ${preferenceIndex} must have an id`);
85
+ throw new core_1.CompilationError(`Preference at index ${preferenceIndex} must have an id`);
86
86
  }
87
87
  if (!Array.isArray(preference.variables) || preference.variables.length === 0) {
88
- throw new Error(`Preference '${preference.id}' must reference at least one variable`);
88
+ throw new core_1.CompilationError(`Preference '${preference.id}' must reference at least one variable`);
89
89
  }
90
90
  // Map variable names to indices
91
91
  const variableIndices = [];
92
92
  for (const varName of preference.variables) {
93
93
  const index = variableMap.get(varName);
94
94
  if (index === undefined) {
95
- throw new Error(`Preference '${preference.id}' references unknown variable '${varName}'`);
95
+ throw new core_1.CompilationError(`Preference '${preference.id}' references unknown variable '${varName}'`);
96
96
  }
97
97
  variableIndices.push(index);
98
98
  }
@@ -147,14 +147,14 @@ function compileInputParameter(input) {
147
147
  function compileConstraintRuleSet(ruleSet) {
148
148
  // Validate mode
149
149
  if (ruleSet.mode !== 'constraint') {
150
- throw new Error(`Expected mode 'constraint', got '${ruleSet.mode}'`);
150
+ throw new core_1.CompilationError(`Expected mode 'constraint', got '${ruleSet.mode}'`);
151
151
  }
152
152
  // Compile variables and build name->index map
153
153
  const variableMap = new Map();
154
154
  const compiledVariables = ruleSet.variables.map((variable, index) => {
155
155
  const compiled = compileVariable(variable, index);
156
156
  if (variableMap.has(variable.name)) {
157
- throw new Error(`Duplicate variable name: '${variable.name}'`);
157
+ throw new core_1.CompilationError(`Duplicate variable name: '${variable.name}'`);
158
158
  }
159
159
  variableMap.set(variable.name, index);
160
160
  return compiled;
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/engines/constraint/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/engines/constraint/compiler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/engines/defeasible/compiler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAW1B,MAAM,SAAS,CAAC;AAoOjB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,GAAG,yBAAyB,CA0B9F"}
1
+ {"version":3,"file":"compiler.d.ts","sourceRoot":"","sources":["../../../src/engines/defeasible/compiler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EACL,iBAAiB,EAEjB,yBAAyB,EAW1B,MAAM,SAAS,CAAC;AAmPjB;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,GAAG,yBAAyB,CA0B9F"}
@@ -16,7 +16,8 @@ const DEFAULT_CONFIG = {
16
16
  aggregation: 'average',
17
17
  threshold: 0.5,
18
18
  conflictResolution: 'specificity',
19
- maxIterations: 100
19
+ maxIterations: 100,
20
+ decay: undefined // Optional at runtime; Required<> demands a key
20
21
  };
21
22
  // ========================================
22
23
  // Helper Functions
@@ -155,6 +156,18 @@ function countConditionNodes(condition) {
155
156
  function compileRule(rule, index) {
156
157
  const inputs = (rule.inputs || []).map(compileInputParameter);
157
158
  const when = rule.when ? (0, core_1.compileCondition)(rule.when) : undefined;
159
+ // Compile decay — only pass through $-prefixed string timestamps
160
+ let compiledDecay;
161
+ if (rule.decay) {
162
+ const ts = rule.decay.timestamp;
163
+ if (typeof ts === 'string') {
164
+ compiledDecay = {
165
+ timestamp: ts,
166
+ config: rule.decay.config,
167
+ target: rule.decay.target
168
+ };
169
+ }
170
+ }
158
171
  return {
159
172
  id: rule.id,
160
173
  name: rule.name,
@@ -167,7 +180,8 @@ function compileRule(rule, index) {
167
180
  credibility: normalizeCredibility(rule.credibility),
168
181
  conclusion: compileConclusion(rule.conclude),
169
182
  defeats: (rule.defeats || []).map(normalizeDefeat),
170
- specificity: countSpecificity(rule)
183
+ specificity: countSpecificity(rule),
184
+ decay: compiledDecay
171
185
  };
172
186
  }
173
187
  /**
@@ -234,7 +248,7 @@ function compileDefeasibleRuleSet(ruleSet) {
234
248
  // Compile top-level inputs
235
249
  const inputs = (ruleSet.inputs || []).map(compileInputParameter);
236
250
  // Compile rules
237
- const rules = ruleSet.rules.map((rule, index) => compileRule(rule, index));
251
+ const rules = ruleSet.rules.filter(r => !r.disabled).map((rule, index) => compileRule(rule, index));
238
252
  // Build superiority map
239
253
  const superiority = buildSuperiorityMap(rules, ruleSet.superiority);
240
254
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/engines/defeasible/compiler.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAmRH,4DA0BC;AA3SD,qCAGoB;AAEpB,mCAciB;AAEjB,2CAA2C;AAC3C,wBAAwB;AACxB,2CAA2C;AAE3C,MAAM,cAAc,GAA+B;IACjD,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,SAAS;IACtB,SAAS,EAAE,GAAG;IACd,kBAAkB,EAAE,aAAa;IACjC,aAAa,EAAE,GAAG;CACnB,CAAC;AAEF,2CAA2C;AAC3C,mBAAmB;AACnB,2CAA2C;AAE3C;;GAEG;AACH,SAAS,oBAAoB,CAAC,WAAoC;IAChE,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC;IACb,CAAC;IACD,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,8BAAsB,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,MAAoB;IAC3C,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;QAClD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC,CAAC,iCAAyB,CAAC,MAAM,CAAC,QAAkC,CAAC,IAAI,GAAG,CAAC;IAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,QAA8C;IACvE,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE,CAAC;QACjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC/C,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACpD,CAAC;AAED;;GAEG;AACH,SAAS,eAAe,CAAC,SAAe;IACtC,IAAI,CAAC,SAAS;QAAE,OAAO,CAAC,CAAC;IACzB,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAW,EAAE,CAAM,EAAE,EAAE,CAAC,GAAG,GAAG,eAAe,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAa,EAAE,IAAU;IACpD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,MAAM,CAAC,MAAM,GAAG,EAAE,CAAC;IAC5B,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,IAAI,eAAe,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC5C,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;QACf,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;KACrB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,KAAU;IACvC,MAAM,QAAQ,GAAQ;QACpB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,qBAAc,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;KACvE,CAAC;IAEF,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,QAAQ,CAAC,KAAK,GAAG,IAAA,uBAAgB,EAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,IAAoB;IAC5C,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,0CAA0C;IAC1C,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAChB,KAAK,IAAI,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,KAAK,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,SAAc;IACzC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExB,8CAA8C;IAC9C,IAAI,EAAE,KAAK,KAAK,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,KAAK,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;QACjB,OAAO,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC;IAED,sCAAsC;IACtC,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,IAAoB,EAAE,KAAa;IACtD,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,uBAAgB,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,OAAO;QACL,EAAE,EAAE,IAAI,CAAC,EAAE;QACX,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,CAAC;QAC5B,UAAU,EAAE,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC;QAC7C,KAAK;QACL,MAAM;QACN,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,YAAY;QACvC,WAAW,EAAE,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC;QACnD,UAAU,EAAE,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC5C,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC;QAClD,WAAW,EAAE,gBAAgB,CAAC,IAAI,CAAC;KACpC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAC1B,KAA+B,EAC/B,YAAsD,EAAE;IAExD,MAAM,GAAG,GAAmB,IAAI,GAAG,EAAE,CAAC;IAEtC,qCAAqC;IACrC,KAAK,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,SAAS,EAAE,CAAC;QAC/C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvB,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QAC/B,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAED,kEAAkE;IAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAClC,oDAAoD;YACpD,IAAI,MAAM,CAAC,QAAQ,IAAI,GAAG,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;gBACD,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,2CAA2C;AAC3C,gBAAgB;AAChB,2CAA2C;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,SAAgB,wBAAwB,CAAC,OAA0B;IACjE,6BAA6B;IAC7B,MAAM,MAAM,GAA+B;QACzC,GAAG,cAAc;QACjB,GAAG,OAAO,CAAC,MAAM;KAClB,CAAC;IAEF,2BAA2B;IAC3B,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;IAEjE,gBAAgB;IAChB,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAE3E,wBAAwB;IACxB,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAEpE,OAAO;QACL,EAAE,EAAE,OAAO,CAAC,EAAE;QACd,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,qBAAc,EAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1E,MAAM;QACN,KAAK;QACL,WAAW;QACX,MAAM;KACP,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/engines/defeasible/compiler.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../src/engines/defeasible/strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,OAAO,EACL,yBAAyB,EAEzB,iBAAiB,EACjB,gBAAgB,EAOjB,MAAM,SAAS,CAAC;AAqEjB,qBAAa,kBAAkB;IAC7B,GAAG,CACD,OAAO,EAAE,yBAAyB,EAClC,EAAE,EAAE,cAAc,EAClB,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB;IAoNnB;;OAEG;IACH,OAAO,CAAC,eAAe;IA8IvB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0BtB;;OAEG;IACH,OAAO,CAAC,aAAa;CAqFtB;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
1
+ {"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../src/engines/defeasible/strategy.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQnD,OAAO,EACL,yBAAyB,EAEzB,iBAAiB,EACjB,gBAAgB,EAOjB,MAAM,SAAS,CAAC;AAqEjB,qBAAa,kBAAkB;IAC7B,GAAG,CACD,OAAO,EAAE,yBAAyB,EAClC,EAAE,EAAE,cAAc,EAClB,OAAO,GAAE,iBAAsB,GAC9B,gBAAgB;IA0QnB;;OAEG;IACH,OAAO,CAAC,eAAe;IA8IvB;;OAEG;IACH,OAAO,CAAC,cAAc;IA0BtB;;OAEG;IACH,OAAO,CAAC,aAAa;CAqFtB;AAGD,eAAO,MAAM,kBAAkB,oBAA2B,CAAC"}
@@ -8,6 +8,7 @@
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.defeasibleStrategy = exports.DefeasibleStrategy = void 0;
10
10
  const matching_1 = require("../../core/matching");
11
+ const decay_1 = require("../../core/evaluation/decay");
11
12
  // ========================================
12
13
  // Aggregation Strategies
13
14
  // ========================================
@@ -68,15 +69,48 @@ class DefeasibleStrategy {
68
69
  // Phase 1: Match all rules and collect fired rules
69
70
  const firedRules = [];
70
71
  const firedRuleIds = [];
72
+ const decayInfoMap = {};
73
+ const decayMultipliersByRule = {};
74
+ const now = new Date();
71
75
  for (const rule of ruleSet.rules) {
72
76
  // Match inputs against working memory (includes when clause evaluation)
73
77
  const activations = (0, matching_1.match)(rule, wm);
74
78
  for (const activation of activations) {
79
+ // Compute decay if configured
80
+ let effectiveCredibility = rule.credibility;
81
+ let credibilityBeforeDecay;
82
+ let ruleDecayInfo;
83
+ const ruleDecay = rule.decay;
84
+ const engineDecay = config.decay;
85
+ if (ruleDecay || engineDecay) {
86
+ const tsRef = ruleDecay?.timestamp ?? engineDecay?.timestamp;
87
+ const decayTarget = ruleDecay?.target ?? engineDecay?.target ?? 'credibility';
88
+ if (typeof tsRef === 'string') {
89
+ const dataTimestamp = (0, decay_1.resolveDecayTimestamp)(tsRef, activation.facts);
90
+ if (dataTimestamp) {
91
+ const decayConfig = {
92
+ ...(engineDecay?.config ?? { curve: 'exponential', timeUnit: 'days' }),
93
+ ...ruleDecay?.config
94
+ };
95
+ const info = (0, decay_1.calculateDecayMultiplier)(dataTimestamp, now, decayConfig);
96
+ ruleDecayInfo = info;
97
+ decayInfoMap[rule.id] = info;
98
+ decayMultipliersByRule[rule.id] = info.multiplier;
99
+ // Apply decay to credibility if target includes it
100
+ if (decayTarget === 'credibility' || decayTarget === 'both') {
101
+ credibilityBeforeDecay = rule.credibility;
102
+ effectiveCredibility = rule.credibility * info.multiplier;
103
+ }
104
+ }
105
+ }
106
+ }
75
107
  // Rule fires
76
108
  firedRules.push({
77
109
  ruleId: rule.id,
78
110
  conclusion: rule.conclusion,
79
- credibility: rule.credibility,
111
+ credibility: effectiveCredibility,
112
+ credibilityBeforeDecay,
113
+ decayInfo: ruleDecayInfo,
80
114
  bindings: activation.facts
81
115
  });
82
116
  if (!firedRuleIds.includes(rule.id)) {
@@ -121,9 +155,18 @@ class DefeasibleStrategy {
121
155
  if (!defeatsMap.has(defeat.rule)) {
122
156
  defeatsMap.set(defeat.rule, []);
123
157
  }
158
+ // Apply decay to defeat strength if target includes it
159
+ let effectiveStrength = defeat.strength;
160
+ const ruleDecay = rule.decay;
161
+ const engineDecay = config.decay;
162
+ const decayTarget = ruleDecay?.target ?? engineDecay?.target ?? 'credibility';
163
+ if ((decayTarget === 'defeat-strength' || decayTarget === 'both') &&
164
+ decayMultipliersByRule[fired.ruleId] !== undefined) {
165
+ effectiveStrength = defeat.strength * decayMultipliersByRule[fired.ruleId];
166
+ }
124
167
  defeatsMap.get(defeat.rule).push({
125
168
  by: fired.ruleId,
126
- strength: defeat.strength
169
+ strength: effectiveStrength
127
170
  });
128
171
  }
129
172
  }
@@ -227,6 +270,7 @@ class DefeasibleStrategy {
227
270
  };
228
271
  };
229
272
  const executionTimeMs = Math.round((performance.now() - startTime) * 100) / 100;
273
+ const hasDecay = Object.keys(decayInfoMap).length > 0;
230
274
  return {
231
275
  conclusions,
232
276
  definitely,
@@ -235,6 +279,7 @@ class DefeasibleStrategy {
235
279
  conflicts,
236
280
  fired: firedRuleIds,
237
281
  iterations: 1, // Current implementation is single-pass
282
+ ...(hasDecay ? { decayInfo: decayInfoMap } : {}),
238
283
  executionTimeMs,
239
284
  query
240
285
  };
@@ -1 +1 @@
1
- {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../src/engines/defeasible/strategy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../src/engines/defeasible/strategy.ts"],"names":[],"mappings":"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"}