moflo 4.8.21 → 4.8.22

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 (260) hide show
  1. package/.claude/agents/browser/browser-agent.yaml +182 -182
  2. package/.claude/agents/core/coder.md +265 -265
  3. package/.claude/agents/core/planner.md +167 -167
  4. package/.claude/agents/core/researcher.md +189 -189
  5. package/.claude/agents/core/reviewer.md +325 -325
  6. package/.claude/agents/core/tester.md +318 -318
  7. package/.claude/agents/database-specialist.yaml +21 -21
  8. package/.claude/agents/dual-mode/codex-coordinator.md +224 -224
  9. package/.claude/agents/dual-mode/codex-worker.md +211 -211
  10. package/.claude/agents/dual-mode/dual-orchestrator.md +291 -291
  11. package/.claude/agents/github/code-review-swarm.md +537 -537
  12. package/.claude/agents/github/github-modes.md +172 -172
  13. package/.claude/agents/github/issue-tracker.md +318 -318
  14. package/.claude/agents/github/multi-repo-swarm.md +552 -552
  15. package/.claude/agents/github/pr-manager.md +190 -190
  16. package/.claude/agents/github/project-board-sync.md +508 -508
  17. package/.claude/agents/github/release-manager.md +366 -366
  18. package/.claude/agents/github/release-swarm.md +582 -582
  19. package/.claude/agents/github/repo-architect.md +397 -397
  20. package/.claude/agents/github/swarm-issue.md +572 -572
  21. package/.claude/agents/github/swarm-pr.md +427 -427
  22. package/.claude/agents/github/sync-coordinator.md +451 -451
  23. package/.claude/agents/github/workflow-automation.md +634 -634
  24. package/.claude/agents/goal/code-goal-planner.md +445 -445
  25. package/.claude/agents/hive-mind/collective-intelligence-coordinator.md +129 -129
  26. package/.claude/agents/hive-mind/queen-coordinator.md +202 -202
  27. package/.claude/agents/hive-mind/scout-explorer.md +241 -241
  28. package/.claude/agents/hive-mind/swarm-memory-manager.md +192 -192
  29. package/.claude/agents/hive-mind/worker-specialist.md +216 -216
  30. package/.claude/agents/index.yaml +17 -17
  31. package/.claude/agents/neural/safla-neural.md +73 -73
  32. package/.claude/agents/project-coordinator.yaml +15 -15
  33. package/.claude/agents/python-specialist.yaml +21 -21
  34. package/.claude/agents/reasoning/goal-planner.md +72 -72
  35. package/.claude/agents/security-auditor.yaml +20 -20
  36. package/.claude/agents/swarm/adaptive-coordinator.md +395 -395
  37. package/.claude/agents/swarm/hierarchical-coordinator.md +326 -326
  38. package/.claude/agents/swarm/mesh-coordinator.md +391 -391
  39. package/.claude/agents/templates/migration-plan.md +745 -745
  40. package/.claude/agents/typescript-specialist.yaml +21 -21
  41. package/.claude/checkpoints/1767754460.json +8 -8
  42. package/.claude/commands/agents/agent-spawning.md +28 -28
  43. package/.claude/commands/github/github-modes.md +146 -146
  44. package/.claude/commands/github/github-swarm.md +121 -121
  45. package/.claude/commands/github/issue-tracker.md +291 -291
  46. package/.claude/commands/github/pr-manager.md +169 -169
  47. package/.claude/commands/github/release-manager.md +337 -337
  48. package/.claude/commands/github/repo-architect.md +366 -366
  49. package/.claude/commands/github/sync-coordinator.md +300 -300
  50. package/.claude/commands/memory/neural.md +47 -47
  51. package/.claude/commands/sparc/analyzer.md +51 -51
  52. package/.claude/commands/sparc/architect.md +53 -53
  53. package/.claude/commands/sparc/ask.md +97 -97
  54. package/.claude/commands/sparc/batch-executor.md +54 -54
  55. package/.claude/commands/sparc/code.md +89 -89
  56. package/.claude/commands/sparc/coder.md +54 -54
  57. package/.claude/commands/sparc/debug.md +83 -83
  58. package/.claude/commands/sparc/debugger.md +54 -54
  59. package/.claude/commands/sparc/designer.md +53 -53
  60. package/.claude/commands/sparc/devops.md +109 -109
  61. package/.claude/commands/sparc/docs-writer.md +80 -80
  62. package/.claude/commands/sparc/documenter.md +54 -54
  63. package/.claude/commands/sparc/innovator.md +54 -54
  64. package/.claude/commands/sparc/integration.md +83 -83
  65. package/.claude/commands/sparc/mcp.md +117 -117
  66. package/.claude/commands/sparc/memory-manager.md +54 -54
  67. package/.claude/commands/sparc/optimizer.md +54 -54
  68. package/.claude/commands/sparc/orchestrator.md +131 -131
  69. package/.claude/commands/sparc/post-deployment-monitoring-mode.md +83 -83
  70. package/.claude/commands/sparc/refinement-optimization-mode.md +83 -83
  71. package/.claude/commands/sparc/researcher.md +54 -54
  72. package/.claude/commands/sparc/reviewer.md +54 -54
  73. package/.claude/commands/sparc/security-review.md +80 -80
  74. package/.claude/commands/sparc/sparc-modes.md +174 -174
  75. package/.claude/commands/sparc/sparc.md +111 -111
  76. package/.claude/commands/sparc/spec-pseudocode.md +80 -80
  77. package/.claude/commands/sparc/supabase-admin.md +348 -348
  78. package/.claude/commands/sparc/swarm-coordinator.md +54 -54
  79. package/.claude/commands/sparc/tdd.md +54 -54
  80. package/.claude/commands/sparc/tester.md +54 -54
  81. package/.claude/commands/sparc/tutorial.md +79 -79
  82. package/.claude/commands/sparc/workflow-manager.md +54 -54
  83. package/.claude/commands/sparc.md +166 -166
  84. package/.claude/commands/swarm/analysis.md +95 -95
  85. package/.claude/commands/swarm/development.md +96 -96
  86. package/.claude/commands/swarm/examples.md +168 -168
  87. package/.claude/commands/swarm/maintenance.md +102 -102
  88. package/.claude/commands/swarm/optimization.md +117 -117
  89. package/.claude/commands/swarm/research.md +136 -136
  90. package/.claude/commands/swarm/testing.md +131 -131
  91. package/.claude/commands/workflows/development.md +77 -77
  92. package/.claude/commands/workflows/research.md +62 -62
  93. package/.claude/guidance/moflo-bootstrap.md +126 -126
  94. package/.claude/guidance/shipped/agent-bootstrap.md +126 -126
  95. package/.claude/guidance/shipped/guidance-memory-strategy.md +262 -262
  96. package/.claude/guidance/shipped/memory-strategy.md +204 -204
  97. package/.claude/guidance/shipped/moflo.md +668 -653
  98. package/.claude/guidance/shipped/task-swarm-integration.md +441 -441
  99. package/.claude/helpers/intelligence.cjs +207 -207
  100. package/.claude/helpers/statusline.cjs +851 -851
  101. package/.claude/settings.local.json +18 -0
  102. package/.claude/skills/fl/SKILL.md +583 -583
  103. package/.claude/skills/flo/SKILL.md +583 -583
  104. package/.claude/skills/github-code-review/SKILL.md +1140 -1140
  105. package/.claude/skills/github-multi-repo/SKILL.md +874 -874
  106. package/.claude/skills/github-project-management/SKILL.md +1277 -1277
  107. package/.claude/skills/github-release-management/SKILL.md +1081 -1081
  108. package/.claude/skills/github-workflow-automation/SKILL.md +1065 -1065
  109. package/.claude/skills/hive-mind-advanced/SKILL.md +712 -712
  110. package/.claude/skills/hooks-automation/SKILL.md +1201 -1201
  111. package/.claude/skills/performance-analysis/SKILL.md +563 -563
  112. package/.claude/skills/sparc-methodology/SKILL.md +1115 -1115
  113. package/.claude/skills/swarm-advanced/SKILL.md +973 -973
  114. package/.claude/workflow-state.json +4 -4
  115. package/LICENSE +21 -21
  116. package/README.md +685 -685
  117. package/bin/cli.js +0 -0
  118. package/bin/gate-hook.mjs +50 -50
  119. package/bin/gate.cjs +138 -138
  120. package/bin/generate-code-map.mjs +775 -775
  121. package/bin/hook-handler.cjs +83 -83
  122. package/bin/hooks.mjs +656 -656
  123. package/bin/index-guidance.mjs +892 -892
  124. package/bin/index-tests.mjs +709 -709
  125. package/bin/lib/process-manager.mjs +243 -243
  126. package/bin/lib/registry-cleanup.cjs +41 -41
  127. package/bin/prompt-hook.mjs +72 -72
  128. package/bin/semantic-search.mjs +472 -472
  129. package/bin/session-start-launcher.mjs +238 -238
  130. package/bin/setup-project.mjs +250 -250
  131. package/package.json +123 -123
  132. package/src/@claude-flow/cli/README.md +452 -452
  133. package/src/@claude-flow/cli/bin/cli.js +180 -180
  134. package/src/@claude-flow/cli/bin/preinstall.cjs +2 -2
  135. package/src/@claude-flow/cli/dist/src/commands/completions.js +409 -409
  136. package/src/@claude-flow/cli/dist/src/commands/doctor.js +5 -1
  137. package/src/@claude-flow/cli/dist/src/commands/embeddings.js +25 -25
  138. package/src/@claude-flow/cli/dist/src/commands/github.js +61 -61
  139. package/src/@claude-flow/cli/dist/src/commands/hive-mind.js +90 -90
  140. package/src/@claude-flow/cli/dist/src/commands/hooks.js +9 -9
  141. package/src/@claude-flow/cli/dist/src/commands/ruvector/import.js +14 -14
  142. package/src/@claude-flow/cli/dist/src/commands/ruvector/setup.js +624 -624
  143. package/src/@claude-flow/cli/dist/src/config/moflo-config.d.ts +3 -0
  144. package/src/@claude-flow/cli/dist/src/config/moflo-config.js +101 -91
  145. package/src/@claude-flow/cli/dist/src/index.d.ts +5 -0
  146. package/src/@claude-flow/cli/dist/src/index.js +44 -0
  147. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.d.ts +29 -29
  148. package/src/@claude-flow/cli/dist/src/init/claudemd-generator.js +43 -43
  149. package/src/@claude-flow/cli/dist/src/init/executor.js +453 -453
  150. package/src/@claude-flow/cli/dist/src/init/helpers-generator.js +482 -482
  151. package/src/@claude-flow/cli/dist/src/init/moflo-init.d.ts +30 -30
  152. package/src/@claude-flow/cli/dist/src/init/moflo-init.js +140 -140
  153. package/src/@claude-flow/cli/dist/src/init/statusline-generator.js +876 -876
  154. package/src/@claude-flow/cli/dist/src/memory/memory-initializer.js +371 -371
  155. package/src/@claude-flow/cli/dist/src/runtime/headless.js +28 -28
  156. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.d.ts +197 -0
  157. package/src/@claude-flow/cli/dist/src/services/container-worker-pool.js +584 -0
  158. package/src/@claude-flow/cli/dist/src/services/daemon-lock.d.ts +14 -0
  159. package/src/@claude-flow/cli/dist/src/services/daemon-lock.js +1 -1
  160. package/src/@claude-flow/cli/dist/src/services/headless-worker-executor.js +84 -84
  161. package/src/@claude-flow/cli/package.json +1 -1
  162. package/src/@claude-flow/guidance/README.md +1195 -1195
  163. package/src/@claude-flow/guidance/package.json +198 -198
  164. package/src/@claude-flow/memory/README.md +587 -587
  165. package/src/@claude-flow/memory/dist/agent-memory-scope.test.js +4 -7
  166. package/src/@claude-flow/memory/dist/agentdb-backend.d.ts +2 -0
  167. package/src/@claude-flow/memory/dist/agentdb-backend.js +28 -26
  168. package/src/@claude-flow/memory/dist/auto-memory-bridge.test.js +36 -39
  169. package/src/@claude-flow/memory/dist/benchmark.test.js +1 -1
  170. package/src/@claude-flow/memory/dist/controller-registry.test.js +43 -0
  171. package/src/@claude-flow/memory/dist/database-provider.d.ts +2 -2
  172. package/src/@claude-flow/memory/dist/database-provider.js +6 -3
  173. package/src/@claude-flow/memory/dist/database-provider.test.js +1 -3
  174. package/src/@claude-flow/memory/dist/hybrid-backend.d.ts +245 -0
  175. package/src/@claude-flow/memory/dist/hybrid-backend.js +569 -0
  176. package/src/@claude-flow/memory/dist/hybrid-backend.test.d.ts +8 -0
  177. package/src/@claude-flow/memory/dist/hybrid-backend.test.js +320 -0
  178. package/src/@claude-flow/memory/dist/index.d.ts +3 -0
  179. package/src/@claude-flow/memory/dist/index.js +3 -0
  180. package/src/@claude-flow/memory/dist/sqlite-backend.d.ts +121 -0
  181. package/src/@claude-flow/memory/dist/sqlite-backend.js +572 -0
  182. package/src/@claude-flow/memory/dist/sqljs-backend.d.ts +4 -3
  183. package/src/@claude-flow/memory/dist/sqljs-backend.js +31 -30
  184. package/src/@claude-flow/memory/package.json +44 -44
  185. package/src/@claude-flow/shared/README.md +323 -323
  186. package/src/@claude-flow/shared/dist/core/config/defaults.js +1 -1
  187. package/src/@claude-flow/shared/dist/core/config/loader.js +1 -1
  188. package/src/@claude-flow/shared/dist/core/config/schema.js +1 -1
  189. package/src/@claude-flow/shared/dist/events/event-store.js +34 -50
  190. package/src/@claude-flow/shared/dist/events/event-store.test.js +4 -8
  191. package/src/@claude-flow/shared/dist/hooks/executor.js +4 -7
  192. package/src/@claude-flow/shared/dist/hooks/safety/file-organization.js +1 -1
  193. package/src/@claude-flow/shared/dist/hooks/safety/git-commit.js +3 -3
  194. package/src/@claude-flow/shared/dist/hooks/verify-exports.test.js +6 -6
  195. package/src/@claude-flow/shared/dist/utils/secure-logger.js +1 -1
  196. package/src/README.md +493 -493
  197. package/src/@claude-flow/guidance/dist/adversarial.d.ts +0 -284
  198. package/src/@claude-flow/guidance/dist/adversarial.js +0 -572
  199. package/src/@claude-flow/guidance/dist/analyzer.d.ts +0 -530
  200. package/src/@claude-flow/guidance/dist/analyzer.js +0 -2518
  201. package/src/@claude-flow/guidance/dist/artifacts.d.ts +0 -283
  202. package/src/@claude-flow/guidance/dist/artifacts.js +0 -356
  203. package/src/@claude-flow/guidance/dist/authority.d.ts +0 -290
  204. package/src/@claude-flow/guidance/dist/authority.js +0 -558
  205. package/src/@claude-flow/guidance/dist/capabilities.d.ts +0 -209
  206. package/src/@claude-flow/guidance/dist/capabilities.js +0 -485
  207. package/src/@claude-flow/guidance/dist/coherence.d.ts +0 -233
  208. package/src/@claude-flow/guidance/dist/coherence.js +0 -372
  209. package/src/@claude-flow/guidance/dist/compiler.d.ts +0 -87
  210. package/src/@claude-flow/guidance/dist/compiler.js +0 -419
  211. package/src/@claude-flow/guidance/dist/conformance-kit.d.ts +0 -225
  212. package/src/@claude-flow/guidance/dist/conformance-kit.js +0 -629
  213. package/src/@claude-flow/guidance/dist/continue-gate.d.ts +0 -214
  214. package/src/@claude-flow/guidance/dist/continue-gate.js +0 -353
  215. package/src/@claude-flow/guidance/dist/crypto-utils.d.ts +0 -17
  216. package/src/@claude-flow/guidance/dist/crypto-utils.js +0 -24
  217. package/src/@claude-flow/guidance/dist/evolution.d.ts +0 -282
  218. package/src/@claude-flow/guidance/dist/evolution.js +0 -500
  219. package/src/@claude-flow/guidance/dist/gates.d.ts +0 -79
  220. package/src/@claude-flow/guidance/dist/gates.js +0 -302
  221. package/src/@claude-flow/guidance/dist/gateway.d.ts +0 -206
  222. package/src/@claude-flow/guidance/dist/gateway.js +0 -452
  223. package/src/@claude-flow/guidance/dist/generators.d.ts +0 -153
  224. package/src/@claude-flow/guidance/dist/generators.js +0 -682
  225. package/src/@claude-flow/guidance/dist/headless.d.ts +0 -177
  226. package/src/@claude-flow/guidance/dist/headless.js +0 -342
  227. package/src/@claude-flow/guidance/dist/hooks.d.ts +0 -109
  228. package/src/@claude-flow/guidance/dist/hooks.js +0 -347
  229. package/src/@claude-flow/guidance/dist/index.d.ts +0 -205
  230. package/src/@claude-flow/guidance/dist/index.js +0 -321
  231. package/src/@claude-flow/guidance/dist/ledger.d.ts +0 -162
  232. package/src/@claude-flow/guidance/dist/ledger.js +0 -375
  233. package/src/@claude-flow/guidance/dist/manifest-validator.d.ts +0 -289
  234. package/src/@claude-flow/guidance/dist/manifest-validator.js +0 -838
  235. package/src/@claude-flow/guidance/dist/memory-gate.d.ts +0 -222
  236. package/src/@claude-flow/guidance/dist/memory-gate.js +0 -382
  237. package/src/@claude-flow/guidance/dist/meta-governance.d.ts +0 -265
  238. package/src/@claude-flow/guidance/dist/meta-governance.js +0 -348
  239. package/src/@claude-flow/guidance/dist/optimizer.d.ts +0 -104
  240. package/src/@claude-flow/guidance/dist/optimizer.js +0 -329
  241. package/src/@claude-flow/guidance/dist/persistence.d.ts +0 -189
  242. package/src/@claude-flow/guidance/dist/persistence.js +0 -464
  243. package/src/@claude-flow/guidance/dist/proof.d.ts +0 -185
  244. package/src/@claude-flow/guidance/dist/proof.js +0 -238
  245. package/src/@claude-flow/guidance/dist/retriever.d.ts +0 -116
  246. package/src/@claude-flow/guidance/dist/retriever.js +0 -394
  247. package/src/@claude-flow/guidance/dist/ruvbot-integration.d.ts +0 -370
  248. package/src/@claude-flow/guidance/dist/ruvbot-integration.js +0 -738
  249. package/src/@claude-flow/guidance/dist/temporal.d.ts +0 -426
  250. package/src/@claude-flow/guidance/dist/temporal.js +0 -658
  251. package/src/@claude-flow/guidance/dist/trust.d.ts +0 -283
  252. package/src/@claude-flow/guidance/dist/trust.js +0 -473
  253. package/src/@claude-flow/guidance/dist/truth-anchors.d.ts +0 -276
  254. package/src/@claude-flow/guidance/dist/truth-anchors.js +0 -488
  255. package/src/@claude-flow/guidance/dist/types.d.ts +0 -378
  256. package/src/@claude-flow/guidance/dist/types.js +0 -10
  257. package/src/@claude-flow/guidance/dist/uncertainty.d.ts +0 -372
  258. package/src/@claude-flow/guidance/dist/uncertainty.js +0 -619
  259. package/src/@claude-flow/guidance/dist/wasm-kernel.d.ts +0 -48
  260. package/src/@claude-flow/guidance/dist/wasm-kernel.js +0 -158
@@ -1,372 +0,0 @@
1
- /**
2
- * Uncertainty as a First-Class State
3
- *
4
- * Probabilistic belief tracking with confidence intervals, evidence counts,
5
- * and opposing evidence pointers. Uncertainty is preserved, not eliminated.
6
- *
7
- * Every piece of knowledge in the system carries explicit uncertainty metadata.
8
- * Claims can be partial, unresolved, or contested. Confidence propagates
9
- * through inference chains and decays over time.
10
- *
11
- * UncertaintyLedger:
12
- * - Asserts beliefs with explicit confidence intervals and evidence
13
- * - Recomputes confidence from weighted supporting/opposing evidence
14
- * - Propagates uncertainty through inference chains (child bounded by parent)
15
- * - Applies time-based decay to all beliefs
16
- * - Queries by namespace, status, confidence, and tags
17
- * - Traces full inference chains back to root beliefs
18
- *
19
- * UncertaintyAggregator:
20
- * - Computes aggregate confidence across multiple beliefs (geometric mean)
21
- * - Worst-case and best-case confidence queries
22
- * - Contested and confirmed status checks across belief sets
23
- *
24
- * @module @claude-flow/guidance/uncertainty
25
- */
26
- /**
27
- * Lifecycle status of a belief.
28
- *
29
- * - confirmed: evidence strongly supports; manually or automatically resolved
30
- * - probable: confidence is high but not confirmed
31
- * - uncertain: insufficient evidence to decide
32
- * - contested: significant opposing evidence exists
33
- * - refuted: evidence strongly opposes the claim
34
- * - unknown: no evidence has been provided yet
35
- */
36
- export type BeliefStatus = 'confirmed' | 'probable' | 'uncertain' | 'contested' | 'refuted' | 'unknown';
37
- /**
38
- * A bounded confidence estimate with lower, point, and upper values.
39
- * All values are in the range [0.0, 1.0].
40
- */
41
- export interface ConfidenceInterval {
42
- /** Lower bound of the confidence interval (0.0 - 1.0) */
43
- lower: number;
44
- /** Best point estimate of confidence (0.0 - 1.0) */
45
- point: number;
46
- /** Upper bound of the confidence interval (0.0 - 1.0) */
47
- upper: number;
48
- }
49
- /**
50
- * A pointer to a piece of evidence that supports or opposes a belief.
51
- */
52
- export interface EvidencePointer {
53
- /** Unique identifier of the evidence source */
54
- sourceId: string;
55
- /** Classification of the evidence origin */
56
- sourceType: 'memory-read' | 'tool-output' | 'truth-anchor' | 'inference' | 'human-input' | 'agent-report';
57
- /** true = supporting evidence, false = opposing evidence */
58
- supports: boolean;
59
- /** Strength of this evidence (0.0 - 1.0) */
60
- weight: number;
61
- /** Unix timestamp (ms) when this evidence was recorded */
62
- timestamp: number;
63
- }
64
- /**
65
- * A tracked belief with full uncertainty metadata.
66
- */
67
- export interface Belief {
68
- /** Unique belief identifier (UUID) */
69
- id: string;
70
- /** The claim this belief represents */
71
- claim: string;
72
- /** Namespace for grouping related beliefs */
73
- namespace: string;
74
- /** Bounded confidence estimate */
75
- confidence: ConfidenceInterval;
76
- /** Current lifecycle status */
77
- status: BeliefStatus;
78
- /** Evidence that supports the claim */
79
- evidence: EvidencePointer[];
80
- /** Evidence that opposes the claim */
81
- opposingEvidence: EvidencePointer[];
82
- /** Parent belief IDs this belief was inferred from */
83
- inferredFrom: string[];
84
- /** Unix timestamp (ms) when this belief was first asserted */
85
- firstAsserted: number;
86
- /** Unix timestamp (ms) of the most recent update */
87
- lastUpdated: number;
88
- /** Per-belief decay rate (confidence points lost per hour) */
89
- decayRate: number;
90
- /** Searchable tags */
91
- tags: string[];
92
- }
93
- /**
94
- * Configuration for the UncertaintyLedger.
95
- */
96
- export interface UncertaintyConfig {
97
- /** Default point estimate for new beliefs (0.0 - 1.0) */
98
- defaultConfidence: number;
99
- /** Default confidence decay rate per hour */
100
- decayRatePerHour: number;
101
- /** Opposing/total evidence ratio threshold to mark a belief contested */
102
- contestedThreshold: number;
103
- /** Opposing/total evidence ratio threshold to mark a belief refuted */
104
- refutedThreshold: number;
105
- /** Minimum confidence.point required for an action; below this requires confirmation */
106
- minConfidenceForAction: number;
107
- }
108
- /**
109
- * Query options for filtering beliefs.
110
- */
111
- export interface BeliefQueryOptions {
112
- /** Filter by namespace */
113
- namespace?: string;
114
- /** Filter by status */
115
- status?: BeliefStatus;
116
- /** Only include beliefs with confidence.point >= this value */
117
- minConfidence?: number;
118
- /** Only include beliefs that have all specified tags */
119
- tags?: string[];
120
- }
121
- /**
122
- * A node in a confidence inference chain.
123
- */
124
- export interface ConfidenceChainNode {
125
- /** The belief at this node */
126
- belief: Belief;
127
- /** Depth in the inference chain (0 = the queried belief) */
128
- depth: number;
129
- }
130
- /**
131
- * Serializable ledger representation for export/import.
132
- */
133
- export interface SerializedUncertaintyLedger {
134
- beliefs: Belief[];
135
- createdAt: string;
136
- version: number;
137
- }
138
- /**
139
- * A ledger that tracks beliefs with explicit uncertainty metadata.
140
- *
141
- * Every belief carries a confidence interval, supporting and opposing evidence,
142
- * inference chain links, and time-based decay. The ledger recomputes confidence
143
- * from evidence weights and propagates uncertainty through inference chains.
144
- */
145
- export declare class UncertaintyLedger {
146
- private readonly config;
147
- private readonly beliefs;
148
- constructor(config?: Partial<UncertaintyConfig>);
149
- /**
150
- * Assert a new belief in the ledger.
151
- *
152
- * Creates a belief with the given claim, namespace, and initial evidence.
153
- * If no confidence is provided, the default confidence is used to build
154
- * the initial confidence interval.
155
- *
156
- * @param claim - The claim this belief represents
157
- * @param namespace - Namespace for grouping
158
- * @param evidence - Initial evidence pointers
159
- * @param confidence - Optional explicit confidence interval
160
- * @returns The newly created Belief
161
- */
162
- assert(claim: string, namespace: string, evidence: EvidencePointer[], confidence?: Partial<ConfidenceInterval>): Belief;
163
- /**
164
- * Add a piece of evidence to an existing belief.
165
- *
166
- * Appends the evidence to the appropriate list (supporting or opposing),
167
- * then recomputes the belief's confidence and status.
168
- *
169
- * @param beliefId - The belief to update
170
- * @param evidence - The new evidence pointer
171
- * @returns The updated belief, or undefined if not found
172
- */
173
- addEvidence(beliefId: string, evidence: EvidencePointer): Belief | undefined;
174
- /**
175
- * Retrieve a belief by its ID.
176
- *
177
- * @param id - The belief ID
178
- * @returns The belief, or undefined if not found
179
- */
180
- getBelief(id: string): Belief | undefined;
181
- /**
182
- * Query beliefs with optional filters.
183
- *
184
- * All specified filters are ANDed together. Returns beliefs ordered
185
- * by lastUpdated descending.
186
- *
187
- * @param opts - Filter criteria
188
- * @returns Matching beliefs
189
- */
190
- query(opts?: BeliefQueryOptions): Belief[];
191
- /**
192
- * Get all beliefs with status 'contested'.
193
- *
194
- * @returns Array of contested beliefs
195
- */
196
- getContested(): Belief[];
197
- /**
198
- * Get all beliefs with status 'uncertain' or 'contested'.
199
- *
200
- * @returns Array of unresolved beliefs
201
- */
202
- getUnresolved(): Belief[];
203
- /**
204
- * Recompute the confidence interval for a belief from all evidence.
205
- *
206
- * The point estimate is a weighted average: total supporting weight minus
207
- * total opposing weight, normalized to [0, 1]. The interval bounds are
208
- * derived from the spread of evidence weights.
209
- *
210
- * @param beliefId - The belief to recompute
211
- * @returns The updated confidence interval, or undefined if not found
212
- */
213
- computeConfidence(beliefId: string): ConfidenceInterval | undefined;
214
- /**
215
- * Propagate uncertainty from a parent belief to a child belief.
216
- *
217
- * The child's confidence is bounded by the parent's confidence multiplied
218
- * by the inference weight. This ensures that downstream beliefs cannot
219
- * be more confident than their sources warrant.
220
- *
221
- * @param parentId - The parent belief ID
222
- * @param childId - The child belief ID
223
- * @param inferenceWeight - How strongly the parent supports the child (0.0 - 1.0)
224
- * @returns The updated child belief, or undefined if either belief is not found
225
- */
226
- propagateUncertainty(parentId: string, childId: string, inferenceWeight: number): Belief | undefined;
227
- /**
228
- * Apply time-based decay to all beliefs.
229
- *
230
- * Each belief's confidence.point is reduced by its decayRate for every
231
- * hour elapsed since lastUpdated. The lower and upper bounds shrink
232
- * proportionally. Status is updated if confidence drops below thresholds.
233
- *
234
- * @param currentTime - The reference time for computing elapsed decay (defaults to now)
235
- */
236
- decayAll(currentTime?: number): void;
237
- /**
238
- * Manually resolve a belief to a definitive status.
239
- *
240
- * This overrides the computed status. Typically used for 'confirmed' or
241
- * 'refuted' after human review or authoritative evidence.
242
- *
243
- * @param beliefId - The belief to resolve
244
- * @param status - The new status to assign
245
- * @param reason - Human-readable reason for the resolution
246
- * @returns The updated belief, or undefined if not found
247
- */
248
- resolve(beliefId: string, status: BeliefStatus, reason: string): Belief | undefined;
249
- /**
250
- * Check whether a belief's confidence meets the minimum threshold for action.
251
- *
252
- * @param beliefId - The belief to check
253
- * @returns true if confidence.point >= minConfidenceForAction, false otherwise
254
- */
255
- isActionable(beliefId: string): boolean;
256
- /**
257
- * Trace the full inference chain from a belief back to its root beliefs.
258
- *
259
- * Returns an array of { belief, depth } nodes, starting with the queried
260
- * belief at depth 0, then its parents at depth 1, their parents at depth 2,
261
- * and so on. Handles cycles by tracking visited IDs.
262
- *
263
- * @param beliefId - The belief whose chain to trace
264
- * @returns Array of chain nodes ordered by depth, or empty if not found
265
- */
266
- getConfidenceChain(beliefId: string): ConfidenceChainNode[];
267
- /**
268
- * Export all beliefs for persistence.
269
- *
270
- * @returns Serialized ledger data suitable for JSON.stringify
271
- */
272
- exportBeliefs(): SerializedUncertaintyLedger;
273
- /**
274
- * Import previously exported beliefs, replacing all current contents.
275
- *
276
- * @param data - Serialized ledger data
277
- * @throws If the version is unsupported
278
- */
279
- importBeliefs(data: SerializedUncertaintyLedger): void;
280
- /**
281
- * Get the number of tracked beliefs.
282
- */
283
- get size(): number;
284
- /**
285
- * Get the current configuration.
286
- */
287
- getConfig(): UncertaintyConfig;
288
- /**
289
- * Remove all beliefs from the ledger.
290
- */
291
- clear(): void;
292
- /**
293
- * Recompute the confidence interval for a belief from its evidence arrays.
294
- *
295
- * Point estimate is derived from the balance of supporting vs opposing
296
- * evidence weights. Bounds reflect the spread of evidence.
297
- */
298
- private recomputeConfidence;
299
- /**
300
- * Derive the belief status from its current confidence and evidence ratios.
301
- */
302
- private deriveStatus;
303
- }
304
- /**
305
- * Computes aggregate confidence metrics across multiple beliefs.
306
- *
307
- * Provides geometric mean, worst-case, best-case, and status checks
308
- * over sets of beliefs referenced by ID.
309
- */
310
- export declare class UncertaintyAggregator {
311
- private readonly ledger;
312
- constructor(ledger: UncertaintyLedger);
313
- /**
314
- * Compute the aggregate confidence across multiple beliefs using
315
- * the geometric mean of their point estimates.
316
- *
317
- * The geometric mean penalizes any single low-confidence belief more
318
- * heavily than an arithmetic mean, making it appropriate for combining
319
- * independent confidence estimates.
320
- *
321
- * @param beliefIds - IDs of beliefs to aggregate
322
- * @returns Geometric mean of confidence points, or 0 if no valid beliefs
323
- */
324
- aggregate(beliefIds: string[]): number;
325
- /**
326
- * Return the lowest confidence point among the specified beliefs.
327
- *
328
- * @param beliefIds - IDs of beliefs to check
329
- * @returns The minimum confidence point, or 0 if no valid beliefs
330
- */
331
- worstCase(beliefIds: string[]): number;
332
- /**
333
- * Return the highest confidence point among the specified beliefs.
334
- *
335
- * @param beliefIds - IDs of beliefs to check
336
- * @returns The maximum confidence point, or 0 if no valid beliefs
337
- */
338
- bestCase(beliefIds: string[]): number;
339
- /**
340
- * Check if any of the specified beliefs is contested.
341
- *
342
- * @param beliefIds - IDs of beliefs to check
343
- * @returns true if at least one belief has status 'contested'
344
- */
345
- anyContested(beliefIds: string[]): boolean;
346
- /**
347
- * Check if all of the specified beliefs are confirmed.
348
- *
349
- * @param beliefIds - IDs of beliefs to check
350
- * @returns true only if every belief exists and has status 'confirmed'
351
- */
352
- allConfirmed(beliefIds: string[]): boolean;
353
- /**
354
- * Collect the confidence point estimates for all valid belief IDs.
355
- */
356
- private collectConfidences;
357
- }
358
- /**
359
- * Create an UncertaintyLedger with optional configuration.
360
- *
361
- * @param config - Partial configuration; unspecified values use defaults
362
- * @returns A fresh UncertaintyLedger
363
- */
364
- export declare function createUncertaintyLedger(config?: Partial<UncertaintyConfig>): UncertaintyLedger;
365
- /**
366
- * Create an UncertaintyAggregator backed by the given ledger.
367
- *
368
- * @param ledger - The UncertaintyLedger to aggregate over
369
- * @returns A fresh UncertaintyAggregator
370
- */
371
- export declare function createUncertaintyAggregator(ledger: UncertaintyLedger): UncertaintyAggregator;
372
- //# sourceMappingURL=uncertainty.d.ts.map