@lucern/confidence 0.1.0-alpha.2
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/README.md +34 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +1833 -0
- package/dist/index.js.map +1 -0
- package/dist/v1/index.d.ts +17 -0
- package/dist/v1/index.js +1833 -0
- package/dist/v1/index.js.map +1 -0
- package/dist/v1/interfaces.d.ts +28 -0
- package/dist/v1/interfaces.js +3 -0
- package/dist/v1/interfaces.js.map +1 -0
- package/dist/v1/operations/approximation.d.ts +8 -0
- package/dist/v1/operations/approximation.js +219 -0
- package/dist/v1/operations/approximation.js.map +1 -0
- package/dist/v1/operations/bridge/index.d.ts +12 -0
- package/dist/v1/operations/bridge/index.js +89 -0
- package/dist/v1/operations/bridge/index.js.map +1 -0
- package/dist/v1/operations/canonical.d.ts +7 -0
- package/dist/v1/operations/canonical.js +199 -0
- package/dist/v1/operations/canonical.js.map +1 -0
- package/dist/v1/operations/contracts/epistemicContract.d.ts +51 -0
- package/dist/v1/operations/contracts/epistemicContract.js +320 -0
- package/dist/v1/operations/contracts/epistemicContract.js.map +1 -0
- package/dist/v1/operations/contradiction/detectTupleContradiction.d.ts +13 -0
- package/dist/v1/operations/contradiction/detectTupleContradiction.js +40 -0
- package/dist/v1/operations/contradiction/detectTupleContradiction.js.map +1 -0
- package/dist/v1/operations/contradiction/index.d.ts +2 -0
- package/dist/v1/operations/contradiction/index.js +40 -0
- package/dist/v1/operations/contradiction/index.js.map +1 -0
- package/dist/v1/operations/dynamics/cascade.d.ts +6 -0
- package/dist/v1/operations/dynamics/cascade.js +56 -0
- package/dist/v1/operations/dynamics/cascade.js.map +1 -0
- package/dist/v1/operations/dynamics/decay.d.ts +25 -0
- package/dist/v1/operations/dynamics/decay.js +271 -0
- package/dist/v1/operations/dynamics/decay.js.map +1 -0
- package/dist/v1/operations/dynamics/defeat.d.ts +6 -0
- package/dist/v1/operations/dynamics/defeat.js +134 -0
- package/dist/v1/operations/dynamics/defeat.js.map +1 -0
- package/dist/v1/operations/dynamics/propagation.d.ts +58 -0
- package/dist/v1/operations/dynamics/propagation.js +399 -0
- package/dist/v1/operations/dynamics/propagation.js.map +1 -0
- package/dist/v1/operations/dynamics/revision.d.ts +24 -0
- package/dist/v1/operations/dynamics/revision.js +111 -0
- package/dist/v1/operations/dynamics/revision.js.map +1 -0
- package/dist/v1/operations/index.d.ts +2 -0
- package/dist/v1/operations/index.js +66 -0
- package/dist/v1/operations/index.js.map +1 -0
- package/dist/v1/operations/lucern.d.ts +14 -0
- package/dist/v1/operations/lucern.js +1280 -0
- package/dist/v1/operations/lucern.js.map +1 -0
- package/dist/v1/operations/operatorTaxonomy.d.ts +366 -0
- package/dist/v1/operations/operatorTaxonomy.js +508 -0
- package/dist/v1/operations/operatorTaxonomy.js.map +1 -0
- package/dist/v1/operations/scoring.d.ts +28 -0
- package/dist/v1/operations/scoring.js +107 -0
- package/dist/v1/operations/scoring.js.map +1 -0
- package/dist/v1/operations/subjectiveLogic/index.d.ts +26 -0
- package/dist/v1/operations/subjectiveLogic/index.js +285 -0
- package/dist/v1/operations/subjectiveLogic/index.js.map +1 -0
- package/dist/v1/operations/temporalDecay.d.ts +24 -0
- package/dist/v1/operations/temporalDecay.js +66 -0
- package/dist/v1/operations/temporalDecay.js.map +1 -0
- package/dist/v1/types.d.ts +208 -0
- package/dist/v1/types.js +3 -0
- package/dist/v1/types.js.map +1 -0
- package/package.json +46 -0
package/README.md
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
# Confidence
|
|
2
|
+
|
|
3
|
+
Pillar 6 module for Lucern's Reactive Confidence System.
|
|
4
|
+
|
|
5
|
+
Scope:
|
|
6
|
+
- Append-only confidence scoring from Subjective Logic opinions
|
|
7
|
+
- Five confidence dynamics: propagation, revision, decay, defeat, and cascade
|
|
8
|
+
- Subjective Logic operators for fusion, discounting, deduction, negation, and constraint handling
|
|
9
|
+
- Epistemic contract evaluation helpers and modulation planning
|
|
10
|
+
|
|
11
|
+
This module contains the pure logic for confidence updates. Convex-facing adapters remain in the kernel and graph-primitives layers.
|
|
12
|
+
|
|
13
|
+
Constraints:
|
|
14
|
+
- `modulateConfidence` remains append-only at the mutation boundary
|
|
15
|
+
- Confidence history continues to be written through the existing belief-confidence ledger
|
|
16
|
+
- Public mutation signatures do not change; only the pure scoring and evaluation math moves here
|
|
17
|
+
|
|
18
|
+
## SL rigor
|
|
19
|
+
|
|
20
|
+
- The canonical confidence shape is the 4-tuple `(b, d, u, a)`.
|
|
21
|
+
- `b + d + u = 1`, and the projected scalar remains `P = b + a*u`.
|
|
22
|
+
- Use `opinionFromScalar(value, mode, options?)` for scalar conversion.
|
|
23
|
+
- Supported modes are `base_rate`, `dogmatic`, and `projected_with_u`.
|
|
24
|
+
- `toDogmaticOpinion()` remains as a deprecated shim to the explicit dogmatic mode.
|
|
25
|
+
- Bridge operators live in `src/v1/operations/bridge/index.ts` and default to Jøsang's non-informative weight `W = 2`.
|
|
26
|
+
- `opinionFromBeta(alpha, beta, W, a)` maps binomial evidence counts into `(b, d, u, a)` with `b = alpha/(alpha + beta + W)`, `d = beta/(alpha + beta + W)`, and `u = W/(alpha + beta + W)`.
|
|
27
|
+
- `opinionFromDirichlet(alpha[], W, a[])` maps multinomial evidence counts into `({ b[] }, u, { a[] })` with the same denominator `sum(alpha) + W`.
|
|
28
|
+
- `projectDirichletOpinion()` maps a Dirichlet opinion back into its projected multinomial probability vector.
|
|
29
|
+
- `betaFromOpinion()` maps a non-dogmatic opinion back into `(alpha, beta)`.
|
|
30
|
+
- The conditional pair is `conditionalDeduction()` for forward inference and `conditionalAbduction()` for inverse inference.
|
|
31
|
+
- `depends_on` uses textbook conditional deduction only when edge metadata provides both `conditionalA` and `conditionalNotA`; otherwise it falls back to the Lucern-specific `dampedDependencyCascade()`.
|
|
32
|
+
- `temporalDecay(sourceOpinion, now, { referenceTime, halfLifeMs })` ages evidential mass back into uncertainty while preserving `a`; the default half-life is 90 days in the kernel adapter.
|
|
33
|
+
- `src/v1/operations/operatorTaxonomy.ts` is the hard boundary between `SL_CANONICAL`, `SL_APPROXIMATION`, and `LUCERN_SPECIFIC` exports.
|
|
34
|
+
- Confidence triggers are worktree-canonical: use `worktree_outcome` and `worktree_completed`, not `sprint_*`.
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export { BeliefLifecycleBucket, ConfidencePolicyConfig, ConfidenceScoringMode, ContractConfirmedRule, ContractDisconfirmedRule, ContractExpiredRule, ContractModulationPlan, ContractPartialRule, DeadlineUrgency, DeadlineUrgencyLabel, DeadlineUrgencyTier, DecayTier, DecayTierLabel, DirichletOpinion, EdgeConstraint, EdgeMetadata, EdgeNormalization, EffectiveDecay, EpistemicContractCompositeOperator, EpistemicContractCondition, EpistemicContractConditionType, EpistemicContractDirection, EpistemicContractEvaluationResult, EpistemicContractLineageSource, EpistemicContractModulation, EpistemicContractRecord, EpistemicContractSchedule, EpistemicContractStatus, EvidentialAction, EvidentialEvaluatorConfig, EvidentialMetric, EvidentialMetricSnapshot, EvidentialOperator, MarketIndexComparatorConfig, MetricCheckerEvaluatorConfig, Opinion, PropagationMode, PropagationResult, ReferenceCheckCounterConfig, RescoringSchedule, SLOperator, StoredOpinionFields, TemporalDeadlineEvaluatorConfig, TupleContradictionPolicy, TupleContradictionTransition, VerificationConfidenceTrigger } from './v1/types.js';
|
|
2
|
+
export { ConfidenceEngine, ContractEvaluatorPort, SubjectiveLogicOperatorPort } from './v1/interfaces.js';
|
|
3
|
+
export { DEFAULT_TEMPORAL_DECAY_HALF_LIFE_MS, TemporalDecayParams, temporalDecay } from './v1/operations/temporalDecay.js';
|
|
4
|
+
export { DEFAULT_NON_INFORMATIVE_WEIGHT, betaFromOpinion, opinionFromBeta, opinionFromDirichlet, projectDirichletOpinion } from './v1/operations/bridge/index.js';
|
|
5
|
+
export { OpinionFromScalarMode, clamp01, confidenceFromOpinion, confidenceFromSL, hasProjectedOpinionChanged, opinionFromBaseRate, opinionFromDogmatic, opinionFromProjected, opinionFromScalar, readOpinionFromRecord, toDogmaticOpinion, toStoredOpinionFields } from './v1/operations/scoring.js';
|
|
6
|
+
export { DEFAULT_TUPLE_CONTRADICTION_BELIEF_THRESHOLD, DEFAULT_TUPLE_CONTRADICTION_DISBELIEF_THRESHOLD, detectTupleContradiction, evaluateTupleContradictionTransition, normalizeTupleContradictionPolicy } from './v1/operations/contradiction/detectTupleContradiction.js';
|
|
7
|
+
export { areTensioned, averagingFusion, conditionalAbduction, conditionalDeduction, confidenceLevel, constraintFusion, cumulativeFusion, dogmatic, evidenceBalance, informationGain, negate, opinion, project, trustDiscount, vacuous } from './v1/operations/subjectiveLogic/index.js';
|
|
8
|
+
export { PROPAGATION_TRAVERSAL_SPECS, PropagationEdgeType, PropagationTraversalDirection, PropagationTraversalSpec, getPropagationTraversalSpecs, isPropagationEdgeType, propagateAllEdges, propagateThroughEdge } from './v1/operations/dynamics/propagation.js';
|
|
9
|
+
export { bayesianUpdate, reviseConfidence, reviseConfidenceOpinion } from './v1/operations/dynamics/revision.js';
|
|
10
|
+
export { DEADLINE_URGENCY, DECAY_TIERS, computeBaseDecay, computeDeadlineUrgency, computeEffectiveDecay, decay, getRescoringSchedule } from './v1/operations/dynamics/decay.js';
|
|
11
|
+
export { applyNegativeEvidence, applyNegativeSupport } from './v1/operations/dynamics/defeat.js';
|
|
12
|
+
export { dampedDependencyCascade, dampedDependencyOpinion } from './v1/operations/dynamics/cascade.js';
|
|
13
|
+
export { BUILT_IN_EVIDENTIAL_ALIASES, BUILT_IN_EVIDENTIAL_EVALUATOR, BUILT_IN_MARKET_INDEX_COMPARATOR, BUILT_IN_METRIC_CHECKER, BUILT_IN_REFERENCE_CHECK_COUNTER, BUILT_IN_TEMPORAL_DEADLINE, buildComparisonRationale, buildEvidentialRationale, compareMetricValue, createInheritedContractRecord, deriveContractModulationPlan, deriveContractStatus, deriveVerificationTrigger, getEvaluatorInputRecord, normalizeEvidentialAction, parseComparisonOperator, parseEvidentialEvaluatorConfig, parseMarketIndexComparatorConfig, parseMetricCheckerConfig, parseNumericThreshold, parseReferenceCheckCounterConfig, parseTemporalDeadlineConfig, pickFiniteNumber, resolveComparisonResult } from './v1/operations/contracts/epistemicContract.js';
|
|
14
|
+
export { ConfidenceOperatorName, OPERATOR_TAXONOMY, OPERATOR_TAXONOMY_BY_TAG, OPERATOR_TAXONOMY_ENTRIES, OPERATOR_TAXONOMY_TAGS, OperatorTaxonomyEntry, OperatorTaxonomyTag, PUBLIC_OPERATOR_EXPORT_NAMES } from './v1/operations/operatorTaxonomy.js';
|
|
15
|
+
import './v1/operations/approximation.js';
|
|
16
|
+
import './v1/operations/canonical.js';
|
|
17
|
+
import './v1/operations/lucern.js';
|