@obora/runtime 0.1.0

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 (323) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +183 -0
  3. package/dist/_legacy/actor/base/BaseActor.d.ts +87 -0
  4. package/dist/_legacy/actor/pool/ActorPool.d.ts +194 -0
  5. package/dist/_legacy/actor/pool/NoOpMessageBus.d.ts +16 -0
  6. package/dist/_legacy/actor/pool/PoolManager.d.ts +76 -0
  7. package/dist/_legacy/actor/pool/index.d.ts +3 -0
  8. package/dist/_legacy/actor/runtime/ActorRunner.d.ts +54 -0
  9. package/dist/_legacy/actor/runtime/ActorRuntime.d.ts +161 -0
  10. package/dist/_legacy/actor/runtime/DefaultActorFactory.d.ts +44 -0
  11. package/dist/_legacy/actor/runtime/types.d.ts +41 -0
  12. package/dist/_legacy/actor/runtime/utils/delay.d.ts +7 -0
  13. package/dist/_legacy/actor/supervision/Supervisor.d.ts +102 -0
  14. package/dist/_legacy/actor/supervision/SupervisorTree.d.ts +54 -0
  15. package/dist/_legacy/actor/supervision/types.d.ts +130 -0
  16. package/dist/_legacy/actor/types/action.d.ts +65 -0
  17. package/dist/_legacy/actor/types/actor.d.ts +251 -0
  18. package/dist/_legacy/actor/types/blackboard.d.ts +46 -0
  19. package/dist/_legacy/actor/types/crypto.d.ts +6 -0
  20. package/dist/_legacy/actor/types/message.d.ts +209 -0
  21. package/dist/_legacy/actor/types/metrics.d.ts +43 -0
  22. package/dist/_legacy/actor/types/observation.d.ts +45 -0
  23. package/dist/_legacy/actor/types/result.d.ts +110 -0
  24. package/dist/_legacy/agents/roles/analyst-agent.d.ts +18 -0
  25. package/dist/_legacy/agents/roles/base-agent.d.ts +320 -0
  26. package/dist/_legacy/agents/roles/director-agent.d.ts +26 -0
  27. package/dist/_legacy/agents/roles/executor-agent.d.ts +26 -0
  28. package/dist/_legacy/agents/roles/factory.d.ts +30 -0
  29. package/dist/_legacy/agents/roles/index.d.ts +6 -0
  30. package/dist/_legacy/agents/roles/verifier-agent.d.ts +18 -0
  31. package/dist/_legacy/blackboard/core/accessors/decisions-accessor.d.ts +190 -0
  32. package/dist/_legacy/blackboard/core/accessors/index.d.ts +7 -0
  33. package/dist/_legacy/blackboard/core/accessors/knowledge-accessor.d.ts +154 -0
  34. package/dist/_legacy/blackboard/core/accessors/state-accessor.d.ts +173 -0
  35. package/dist/_legacy/blackboard/core/blackboard-events.d.ts +105 -0
  36. package/dist/_legacy/blackboard/core/blackboard.d.ts +286 -0
  37. package/dist/_legacy/blackboard/core/id-generator.d.ts +53 -0
  38. package/dist/_legacy/blackboard/core/immutable.d.ts +45 -0
  39. package/dist/_legacy/blackboard/core/index.d.ts +13 -0
  40. package/dist/_legacy/blackboard/core/path-utils.d.ts +75 -0
  41. package/dist/_legacy/blackboard/core/tkg.d.ts +50 -0
  42. package/dist/_legacy/blackboard/core/versioning.d.ts +80 -0
  43. package/dist/_legacy/blackboard/domains/agenda/AgendaStore.d.ts +34 -0
  44. package/dist/_legacy/blackboard/domains/agenda/events.d.ts +12 -0
  45. package/dist/_legacy/blackboard/domains/agenda/index.d.ts +6 -0
  46. package/dist/_legacy/blackboard/domains/agenda/types.d.ts +26 -0
  47. package/dist/_legacy/blackboard/domains/consensus/ConsensusRuleEngine.d.ts +10 -0
  48. package/dist/_legacy/blackboard/domains/consensus/index.d.ts +4 -0
  49. package/dist/_legacy/blackboard/domains/consensus/types.d.ts +27 -0
  50. package/dist/_legacy/blackboard/domains/tkg/InMemoryTKG.d.ts +38 -0
  51. package/dist/_legacy/blackboard/domains/tkg/JsonFileReflectorStateStore.d.ts +9 -0
  52. package/dist/_legacy/blackboard/domains/tkg/ObserverReflector.d.ts +114 -0
  53. package/dist/_legacy/blackboard/domains/tkg/index.d.ts +4 -0
  54. package/dist/_legacy/blackboard/domains/voting/VotingSessionStore.d.ts +14 -0
  55. package/dist/_legacy/blackboard/domains/voting/index.d.ts +3 -0
  56. package/dist/_legacy/blackboard/domains/voting/types.d.ts +32 -0
  57. package/dist/_legacy/blackboard/events/event-bus.d.ts +254 -0
  58. package/dist/_legacy/blackboard/events/event-factory.d.ts +80 -0
  59. package/dist/_legacy/blackboard/events/index.d.ts +17 -0
  60. package/dist/_legacy/blackboard/events/types.d.ts +554 -0
  61. package/dist/_legacy/blackboard/snapshot/compression.d.ts +170 -0
  62. package/dist/_legacy/blackboard/snapshot/id-utils.d.ts +20 -0
  63. package/dist/_legacy/blackboard/snapshot/index.d.ts +21 -0
  64. package/dist/_legacy/blackboard/snapshot/serializer.d.ts +123 -0
  65. package/dist/_legacy/blackboard/snapshot/snapshot-comparer.d.ts +102 -0
  66. package/dist/_legacy/blackboard/snapshot/snapshot-creator.d.ts +49 -0
  67. package/dist/_legacy/blackboard/snapshot/snapshot-manager.d.ts +253 -0
  68. package/dist/_legacy/blackboard/snapshot/snapshot-restorer.d.ts +54 -0
  69. package/dist/_legacy/blackboard/snapshot/snapshot-serializer.d.ts +45 -0
  70. package/dist/_legacy/blackboard/snapshot/snapshot-validator.d.ts +55 -0
  71. package/dist/_legacy/blackboard/snapshot/type-guards.d.ts +12 -0
  72. package/dist/_legacy/blackboard/snapshot/types.d.ts +151 -0
  73. package/dist/_legacy/blackboard/snapshot/utils.d.ts +20 -0
  74. package/dist/_legacy/blackboard/types/agent.d.ts +89 -0
  75. package/dist/_legacy/blackboard/types/base.d.ts +213 -0
  76. package/dist/_legacy/blackboard/types/blackboard.d.ts +217 -0
  77. package/dist/_legacy/blackboard/types/decision.d.ts +260 -0
  78. package/dist/_legacy/blackboard/types/index.d.ts +12 -0
  79. package/dist/_legacy/blackboard/types/knowledge.d.ts +224 -0
  80. package/dist/_legacy/blackboard/types/message.d.ts +162 -0
  81. package/dist/_legacy/blackboard/types/task.d.ts +154 -0
  82. package/dist/_legacy/blackboard/types/tkg.d.ts +189 -0
  83. package/dist/_legacy/blackboard/workflow/meeting-state-machine/MeetingStateMachine.d.ts +22 -0
  84. package/dist/_legacy/blackboard/workflow/meeting-state-machine/types.d.ts +30 -0
  85. package/dist/_legacy/cli-runtime/runtime/agent-registry.d.ts +33 -0
  86. package/dist/_legacy/cli-runtime/runtime/blackboard.d.ts +41 -0
  87. package/dist/_legacy/cli-runtime/runtime/context-builder.d.ts +88 -0
  88. package/dist/_legacy/cli-runtime/runtime/retry-policy.d.ts +8 -0
  89. package/dist/_legacy/cli-runtime/runtime/step-executor.d.ts +33 -0
  90. package/dist/_legacy/cli-runtime/runtime/types.d.ts +12 -0
  91. package/dist/_legacy/cli-runtime/runtime/utils.d.ts +2 -0
  92. package/dist/_legacy/database/src/duckdb-client.d.ts +178 -0
  93. package/dist/_legacy/workflow/errors/diagnosis.d.ts +32 -0
  94. package/dist/_legacy/workflow/errors/index.d.ts +52 -0
  95. package/dist/_legacy/workflow/graph/index.d.ts +57 -0
  96. package/dist/_legacy/workflow/index.d.ts +9 -0
  97. package/dist/_legacy/workflow/parser/workflow-parser.d.ts +13 -0
  98. package/dist/_legacy/workflow/resolver/dependency-resolver.d.ts +83 -0
  99. package/dist/_legacy/workflow/types/workflow.d.ts +173 -0
  100. package/dist/_legacy/workflow/utils.d.ts +2 -0
  101. package/dist/_legacy/workflow/validator/workflow-validator.d.ts +71 -0
  102. package/dist/artifacts/index.d.ts +2 -0
  103. package/dist/artifacts/local-file-artifact-store.d.ts +22 -0
  104. package/dist/artifacts/types.d.ts +19 -0
  105. package/dist/audit/AuditReplay.d.ts +4 -0
  106. package/dist/audit/AuditStore.d.ts +13 -0
  107. package/dist/audit/AuditTrail.d.ts +28 -0
  108. package/dist/audit/DefaultAuditRecorder.d.ts +10 -0
  109. package/dist/audit/EventBusAdapter.d.ts +12 -0
  110. package/dist/audit/InMemoryAuditStore.d.ts +9 -0
  111. package/dist/audit/ReExecutionDiffReport.d.ts +24 -0
  112. package/dist/audit/ReExecutionPlanner.d.ts +30 -0
  113. package/dist/audit/ReExecutionRuntime.d.ts +35 -0
  114. package/dist/audit/database-api.d.ts +32 -0
  115. package/dist/audit/database-index.d.ts +5 -0
  116. package/dist/audit/event-bus.d.ts +1 -0
  117. package/dist/audit/event-factory.d.ts +1 -0
  118. package/dist/audit/index.d.ts +12 -0
  119. package/dist/audit/testing.d.ts +15 -0
  120. package/dist/audit/tkg/InMemoryTKG.d.ts +1 -0
  121. package/dist/audit/tkg/JsonFileReflectorStateStore.d.ts +1 -0
  122. package/dist/audit/tkg/ObserverReflector.d.ts +1 -0
  123. package/dist/audit/tkg/index.d.ts +1 -0
  124. package/dist/audit/types.d.ts +23 -0
  125. package/dist/blackboard/core/accessors/decisions-accessor.d.ts +190 -0
  126. package/dist/blackboard/core/accessors/index.d.ts +7 -0
  127. package/dist/blackboard/core/accessors/knowledge-accessor.d.ts +154 -0
  128. package/dist/blackboard/core/accessors/state-accessor.d.ts +173 -0
  129. package/dist/blackboard/core/blackboard-events.d.ts +105 -0
  130. package/dist/blackboard/core/blackboard.d.ts +286 -0
  131. package/dist/blackboard/core/id-generator.d.ts +53 -0
  132. package/dist/blackboard/core/immutable.d.ts +45 -0
  133. package/dist/blackboard/core/index.d.ts +13 -0
  134. package/dist/blackboard/core/path-utils.d.ts +75 -0
  135. package/dist/blackboard/core/tkg.d.ts +50 -0
  136. package/dist/blackboard/core/versioning.d.ts +80 -0
  137. package/dist/blackboard/events/event-bus.d.ts +254 -0
  138. package/dist/blackboard/events/event-factory.d.ts +80 -0
  139. package/dist/blackboard/events/index.d.ts +17 -0
  140. package/dist/blackboard/events/types.d.ts +554 -0
  141. package/dist/blackboard/index.d.ts +20 -0
  142. package/dist/blackboard/observer-reflector.d.ts +114 -0
  143. package/dist/blackboard/snapshot/compression.d.ts +170 -0
  144. package/dist/blackboard/snapshot/id-utils.d.ts +20 -0
  145. package/dist/blackboard/snapshot/index.d.ts +21 -0
  146. package/dist/blackboard/snapshot/serializer.d.ts +123 -0
  147. package/dist/blackboard/snapshot/snapshot-comparer.d.ts +102 -0
  148. package/dist/blackboard/snapshot/snapshot-creator.d.ts +49 -0
  149. package/dist/blackboard/snapshot/snapshot-manager.d.ts +253 -0
  150. package/dist/blackboard/snapshot/snapshot-restorer.d.ts +54 -0
  151. package/dist/blackboard/snapshot/snapshot-serializer.d.ts +45 -0
  152. package/dist/blackboard/snapshot/snapshot-validator.d.ts +55 -0
  153. package/dist/blackboard/snapshot/type-guards.d.ts +12 -0
  154. package/dist/blackboard/snapshot/types.d.ts +151 -0
  155. package/dist/blackboard/snapshot/utils.d.ts +20 -0
  156. package/dist/blackboard/types/agent.d.ts +89 -0
  157. package/dist/blackboard/types/base.d.ts +213 -0
  158. package/dist/blackboard/types/blackboard.d.ts +217 -0
  159. package/dist/blackboard/types/decision.d.ts +260 -0
  160. package/dist/blackboard/types/index.d.ts +12 -0
  161. package/dist/blackboard/types/knowledge.d.ts +224 -0
  162. package/dist/blackboard/types/message.d.ts +162 -0
  163. package/dist/blackboard/types/task.d.ts +154 -0
  164. package/dist/blackboard/types/tkg.d.ts +189 -0
  165. package/dist/cell/ActorPool.d.ts +1 -0
  166. package/dist/cell/AgentFactory.d.ts +1 -0
  167. package/dist/cell/AgentRegistry.d.ts +1 -0
  168. package/dist/cell/BaseActor.d.ts +1 -0
  169. package/dist/cell/CellContext.d.ts +39 -0
  170. package/dist/cell/CellManager.d.ts +80 -0
  171. package/dist/cell/ExecutionCell.d.ts +44 -0
  172. package/dist/cell/PoolManager.d.ts +1 -0
  173. package/dist/cell/actor-types/action.d.ts +65 -0
  174. package/dist/cell/actor-types/actor.d.ts +251 -0
  175. package/dist/cell/actor-types/blackboard.d.ts +46 -0
  176. package/dist/cell/actor-types/crypto.d.ts +6 -0
  177. package/dist/cell/actor-types/index.d.ts +12 -0
  178. package/dist/cell/actor-types/message.d.ts +209 -0
  179. package/dist/cell/actor-types/metrics.d.ts +43 -0
  180. package/dist/cell/actor-types/observation.d.ts +45 -0
  181. package/dist/cell/actor-types/result.d.ts +110 -0
  182. package/dist/cell/agents/AnalystCellAgent.d.ts +2 -0
  183. package/dist/cell/agents/BaseRuntimeAgent.d.ts +2 -0
  184. package/dist/cell/agents/DirectorCellAgent.d.ts +2 -0
  185. package/dist/cell/agents/ExecutorCellAgent.d.ts +2 -0
  186. package/dist/cell/agents/VerifierCellAgent.d.ts +2 -0
  187. package/dist/cell/agents/index.d.ts +5 -0
  188. package/dist/cell/index.d.ts +9 -0
  189. package/dist/cell/internal/ActorRunnerAdapter.d.ts +2 -0
  190. package/dist/cell/internal/CellActorFactory.d.ts +2 -0
  191. package/dist/cell/internal/NoOpRuntimeBus.d.ts +2 -0
  192. package/dist/cell/internal/delay.d.ts +1 -0
  193. package/dist/cell/pool-index.d.ts +1 -0
  194. package/dist/cell/types.d.ts +47 -0
  195. package/dist/checkpoint/CheckpointFactoryRegistry.d.ts +16 -0
  196. package/dist/checkpoint/CheckpointManager.d.ts +41 -0
  197. package/dist/checkpoint/index.d.ts +5 -0
  198. package/dist/checkpoint/policy-hash.d.ts +11 -0
  199. package/dist/consensus/ConsensusGate.d.ts +83 -0
  200. package/dist/consensus/ConsensusRuleEngine.d.ts +1 -0
  201. package/dist/consensus/agenda/AgendaStore.d.ts +1 -0
  202. package/dist/consensus/agenda/events.d.ts +1 -0
  203. package/dist/consensus/agenda/index.d.ts +1 -0
  204. package/dist/consensus/agenda/types.d.ts +1 -0
  205. package/dist/consensus/index.d.ts +2 -0
  206. package/dist/consensus/types.d.ts +1 -0
  207. package/dist/consensus/voting/VotingSessionStore.d.ts +1 -0
  208. package/dist/consensus/voting/index.d.ts +1 -0
  209. package/dist/consensus/voting/types.d.ts +1 -0
  210. package/dist/errors/OboraErrorCode.d.ts +28 -0
  211. package/dist/errors/index.d.ts +1 -0
  212. package/dist/gates/GateAssignment.d.ts +28 -0
  213. package/dist/gates/MultiStageApproval.d.ts +74 -0
  214. package/dist/gates/SLAManager.d.ts +21 -0
  215. package/dist/gates/index.d.ts +4 -0
  216. package/dist/gates/types.d.ts +19 -0
  217. package/dist/index.cjs +26588 -0
  218. package/dist/index.cjs.map +1 -0
  219. package/dist/index.d.ts +39 -0
  220. package/dist/index.js +26330 -0
  221. package/dist/index.js.map +1 -0
  222. package/dist/judgment/JudgmentEngine.d.ts +24 -0
  223. package/dist/judgment/JudgmentNormalizer.d.ts +37 -0
  224. package/dist/judgment/JudgmentPolicy.d.ts +74 -0
  225. package/dist/judgment/JudgmentReporter.d.ts +70 -0
  226. package/dist/judgment/OperationalLogger.d.ts +68 -0
  227. package/dist/judgment/index.d.ts +6 -0
  228. package/dist/judgment/types.d.ts +42 -0
  229. package/dist/orchestrator/ExecutionContextBuilder.d.ts +1 -0
  230. package/dist/orchestrator/RuntimeOrchestrator.d.ts +94 -0
  231. package/dist/orchestrator/StepScheduler.d.ts +2 -0
  232. package/dist/orchestrator/index.d.ts +4 -0
  233. package/dist/orchestrator/types.d.ts +80 -0
  234. package/dist/orchestrator/utils.d.ts +1 -0
  235. package/dist/patterns/CustomPatternAPI.d.ts +10 -0
  236. package/dist/patterns/PatternRegistry.d.ts +19 -0
  237. package/dist/patterns/builtin/BrainstormPattern.d.ts +13 -0
  238. package/dist/patterns/builtin/CompositePattern.d.ts +11 -0
  239. package/dist/patterns/builtin/ConsensusPattern.d.ts +17 -0
  240. package/dist/patterns/builtin/DiscussionPattern.d.ts +13 -0
  241. package/dist/patterns/builtin/FanOutFanInPattern.d.ts +21 -0
  242. package/dist/patterns/builtin/PeerReviewPattern.d.ts +40 -0
  243. package/dist/patterns/builtin/PipelinePattern.d.ts +6 -0
  244. package/dist/patterns/builtin/RedBluePattern.d.ts +13 -0
  245. package/dist/patterns/builtin/SupervisorPattern.d.ts +13 -0
  246. package/dist/patterns/builtin/discussion/MeetingStateMachine.d.ts +1 -0
  247. package/dist/patterns/builtin/discussion/index.d.ts +2 -0
  248. package/dist/patterns/builtin/discussion/types.d.ts +1 -0
  249. package/dist/patterns/examples/OxfordDebatePattern.d.ts +11 -0
  250. package/dist/patterns/examples/index.d.ts +1 -0
  251. package/dist/patterns/index.d.ts +14 -0
  252. package/dist/patterns/resolveCustomPattern.d.ts +22 -0
  253. package/dist/patterns/types.d.ts +252 -0
  254. package/dist/plugins/PluginLoader.d.ts +16 -0
  255. package/dist/plugins/PluginRegistry.d.ts +15 -0
  256. package/dist/plugins/builtins.d.ts +137 -0
  257. package/dist/plugins/index.d.ts +5 -0
  258. package/dist/plugins/types.d.ts +52 -0
  259. package/dist/plugins/validator.d.ts +3 -0
  260. package/dist/policy/DefaultPolicyEngine.d.ts +43 -0
  261. package/dist/policy/DynamicPolicyContext.d.ts +21 -0
  262. package/dist/policy/DynamicQuotaEvaluator.d.ts +9 -0
  263. package/dist/policy/DynamicToolPolicy.d.ts +10 -0
  264. package/dist/policy/PolicyEngine.d.ts +14 -0
  265. package/dist/policy/PolicyLoader.d.ts +3 -0
  266. package/dist/policy/expressions/ExpressionEvaluator.d.ts +37 -0
  267. package/dist/policy/expressions/ExpressionParser.d.ts +35 -0
  268. package/dist/policy/expressions/constants.d.ts +5 -0
  269. package/dist/policy/expressions/index.d.ts +2 -0
  270. package/dist/policy/index.d.ts +9 -0
  271. package/dist/policy/rules/GateRule.d.ts +7 -0
  272. package/dist/policy/rules/ResourceRule.d.ts +7 -0
  273. package/dist/policy/rules/SandboxRule.d.ts +7 -0
  274. package/dist/policy/rules/ToolRule.d.ts +23 -0
  275. package/dist/policy/rules/index.d.ts +4 -0
  276. package/dist/policy/types.d.ts +156 -0
  277. package/dist/recovery/RecoveryEngine.d.ts +11 -0
  278. package/dist/recovery/RetryStrategy.d.ts +2 -0
  279. package/dist/recovery/SupervisionTree.d.ts +1 -0
  280. package/dist/recovery/index.d.ts +4 -0
  281. package/dist/recovery/types.d.ts +103 -0
  282. package/dist/state/RuntimeBlackboardCompat.d.ts +1 -0
  283. package/dist/state/StateBinder.d.ts +40 -0
  284. package/dist/state/StateManager.d.ts +1 -0
  285. package/dist/state/accessors/decisions-accessor.d.ts +1 -0
  286. package/dist/state/accessors/index.d.ts +1 -0
  287. package/dist/state/accessors/knowledge-accessor.d.ts +1 -0
  288. package/dist/state/accessors/state-accessor.d.ts +1 -0
  289. package/dist/state/blackboard-events.d.ts +1 -0
  290. package/dist/state/core-index.d.ts +1 -0
  291. package/dist/state/id-generator.d.ts +1 -0
  292. package/dist/state/immutable.d.ts +1 -0
  293. package/dist/state/index.d.ts +6 -0
  294. package/dist/state/path-utils.d.ts +1 -0
  295. package/dist/state/snapshot/compression.d.ts +1 -0
  296. package/dist/state/snapshot/id-utils.d.ts +1 -0
  297. package/dist/state/snapshot/index.d.ts +1 -0
  298. package/dist/state/snapshot/serializer.d.ts +1 -0
  299. package/dist/state/snapshot/snapshot-comparer.d.ts +1 -0
  300. package/dist/state/snapshot/snapshot-creator.d.ts +1 -0
  301. package/dist/state/snapshot/snapshot-manager.d.ts +1 -0
  302. package/dist/state/snapshot/snapshot-restorer.d.ts +1 -0
  303. package/dist/state/snapshot/snapshot-serializer.d.ts +1 -0
  304. package/dist/state/snapshot/snapshot-validator.d.ts +1 -0
  305. package/dist/state/snapshot/type-guards.d.ts +1 -0
  306. package/dist/state/snapshot/types.d.ts +1 -0
  307. package/dist/state/snapshot/utils.d.ts +1 -0
  308. package/dist/state/tkg.d.ts +1 -0
  309. package/dist/state/types/agent.d.ts +1 -0
  310. package/dist/state/types/base.d.ts +1 -0
  311. package/dist/state/types/blackboard.d.ts +1 -0
  312. package/dist/state/types/decision.d.ts +1 -0
  313. package/dist/state/types/index.d.ts +1 -0
  314. package/dist/state/types/knowledge.d.ts +1 -0
  315. package/dist/state/types/message.d.ts +1 -0
  316. package/dist/state/types/task.d.ts +1 -0
  317. package/dist/state/types/tkg.d.ts +1 -0
  318. package/dist/state/versioning.d.ts +1 -0
  319. package/dist/storage/index.d.ts +3 -0
  320. package/dist/storage/inmemory-adapter.d.ts +27 -0
  321. package/dist/storage/sqlite-adapter.d.ts +43 -0
  322. package/dist/storage/types.d.ts +129 -0
  323. package/package.json +76 -0
@@ -0,0 +1,40 @@
1
+ import { CollaborationPatternBase, type BuiltinPatternKind, type PatternPayloadResult, type PatternRuntimeContext, type PeerReviewPatternConfig } from "../types.js";
2
+ /**
3
+ * Peer review pattern contract.
4
+ *
5
+ * Quorum
6
+ * - required reviewers = participants - best_effort
7
+ * - quorum = all required reviewers responded in the same round
8
+ * - best_effort reviewers do not block quorum when missing
9
+ * - if quorum is not met, continue to next round until max_rounds
10
+ * - when max_rounds is exhausted without quorum, return success:false with reason "quorum_not_met"
11
+ *
12
+ * Termination channel
13
+ * - Return `success:false` (business failure) for:
14
+ * - average score < min_score => reason "score_below_threshold"
15
+ * - P0 count > p0_allowed => reason "p0_exceeded"
16
+ * - quorum not met after max_rounds => reason "quorum_not_met"
17
+ * - all business failures include `OboraErrorCode.CONSENSUS_FAIL` in output.error_codes
18
+ * - Throw for external constraint violations:
19
+ * - timeout exceeded (`startedAt` + `config.timeout`) => throws with `OboraErrorCode.CONSENSUS_TIMEOUT`
20
+ *
21
+ * best_effort semantics
22
+ * - `best_effort` is a list of participant IDs
23
+ * - missing best_effort reviewers are ignored for quorum
24
+ * - responded best_effort reviews are included in average score, issue aggregation, and P0 checks
25
+ */
26
+ export declare class PeerReviewPattern extends CollaborationPatternBase {
27
+ readonly name = "peer-review";
28
+ readonly kind: BuiltinPatternKind;
29
+ validateConfig(config: PeerReviewPatternConfig & {
30
+ timeout?: string;
31
+ }): void;
32
+ protected onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
33
+ private buildBusinessFailureResult;
34
+ private getInput;
35
+ private resolveRounds;
36
+ private collectReviews;
37
+ private buildReport;
38
+ private hasTimedOut;
39
+ private resolveNow;
40
+ }
@@ -0,0 +1,6 @@
1
+ import { CollaborationPatternBase, type BuiltinPatternKind, type PatternPayloadResult, type PatternRuntimeContext } from "../types.js";
2
+ export declare class PipelinePattern extends CollaborationPatternBase {
3
+ readonly name = "pipeline";
4
+ readonly kind: BuiltinPatternKind;
5
+ protected onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { CollaborationPatternBase, type BuiltinPatternKind, type PatternPayloadResult, type PatternRuntimeContext, type RedBluePatternConfig } from "../types.js";
2
+ export declare class RedBluePattern extends CollaborationPatternBase {
3
+ readonly name = "red-blue";
4
+ readonly kind: BuiltinPatternKind;
5
+ validateConfig(config: RedBluePatternConfig): void;
6
+ protected onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
7
+ private getInput;
8
+ private resolveRounds;
9
+ private resolveTeams;
10
+ private normalizeTeam;
11
+ private normalizeRecord;
12
+ private checkConvergence;
13
+ }
@@ -0,0 +1,13 @@
1
+ import { CollaborationPatternBase, type BuiltinPatternKind, type PatternPayloadResult, type PatternRuntimeContext, type SupervisorPatternConfig } from "../types.js";
2
+ export declare class SupervisorPattern extends CollaborationPatternBase {
3
+ readonly name = "supervisor";
4
+ readonly kind: BuiltinPatternKind;
5
+ validateConfig(config: SupervisorPatternConfig): void;
6
+ protected onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
7
+ private getInput;
8
+ private normalizeResult;
9
+ private buildAttemptQueues;
10
+ private extractAttempts;
11
+ private shiftAttempt;
12
+ private computeBackoff;
13
+ }
@@ -0,0 +1 @@
1
+ export * from "../../../_legacy/blackboard/workflow/meeting-state-machine/MeetingStateMachine.js";
@@ -0,0 +1,2 @@
1
+ export * from "./MeetingStateMachine.js";
2
+ export * from "./types.js";
@@ -0,0 +1 @@
1
+ export * from "../../../_legacy/blackboard/workflow/meeting-state-machine/types.js";
@@ -0,0 +1,11 @@
1
+ import { CollaborationPatternBase, type PatternPayloadResult, type PatternRuntimeContext } from "../types.js";
2
+ export declare class OxfordDebatePattern extends CollaborationPatternBase {
3
+ readonly name = "oxford-debate";
4
+ readonly kind = "oxford-debate";
5
+ readonly version = "1.0.0";
6
+ validateConfig(config: Record<string, unknown>): void;
7
+ protected onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
8
+ private parseInput;
9
+ private resolveParticipant;
10
+ private vote;
11
+ }
@@ -0,0 +1 @@
1
+ export * from "./OxfordDebatePattern.js";
@@ -0,0 +1,14 @@
1
+ export * from "./types.js";
2
+ export * from "./PatternRegistry.js";
3
+ export * from "./CustomPatternAPI.js";
4
+ export * from "./resolveCustomPattern.js";
5
+ export * from "./builtin/PipelinePattern.js";
6
+ export * from "./builtin/DiscussionPattern.js";
7
+ export * from "./builtin/ConsensusPattern.js";
8
+ export * from "./builtin/BrainstormPattern.js";
9
+ export * from "./builtin/PeerReviewPattern.js";
10
+ export * from "./builtin/SupervisorPattern.js";
11
+ export * from "./builtin/FanOutFanInPattern.js";
12
+ export * from "./builtin/RedBluePattern.js";
13
+ export * from "./builtin/CompositePattern.js";
14
+ export * from "./builtin/discussion/index.js";
@@ -0,0 +1,22 @@
1
+ import type { PatternRegistry } from "./PatternRegistry.js";
2
+ import type { CollaborationPattern } from "./types.js";
3
+ export interface ResolveCustomPatternOptions {
4
+ cwd?: string;
5
+ loadFromFile?: (filePath: string, options?: {
6
+ cwd?: string;
7
+ }) => CollaborationPattern | Promise<CollaborationPattern>;
8
+ }
9
+ export declare function resolveCustomPattern(registry: PatternRegistry, patternRef: string, options?: ResolveCustomPatternOptions): CollaborationPattern;
10
+ export declare function resolveCustomPatternAsync(registry: PatternRegistry, patternRef: string, options?: ResolveCustomPatternOptions): Promise<CollaborationPattern>;
11
+ /**
12
+ * Load a CollaborationPattern from a YAML file.
13
+ * Reads the file synchronously, parses YAML, and returns the parsed object.
14
+ */
15
+ export declare function loadPatternFromYamlFile(resolvedPath: string): CollaborationPattern;
16
+ /**
17
+ * Default file-path based pattern loading for JS/TS modules.
18
+ * Path is already resolved by the caller.
19
+ */
20
+ export declare function loadCustomPatternFromFile(filePath: string, options?: {
21
+ cwd?: string;
22
+ }): CollaborationPattern;
@@ -0,0 +1,252 @@
1
+ import { OboraErrorCode } from "../errors/OboraErrorCode.js";
2
+ export { OboraErrorCode };
3
+ /**
4
+ * Core domain patterns. "composite" is a meta-pattern registered separately
5
+ * because it orchestrates other patterns rather than implementing domain logic.
6
+ */
7
+ export declare const BUILTIN_PATTERN_KINDS: readonly ["pipeline", "discussion", "consensus", "brainstorming", "peer-review", "red-blue", "fan-out-fan-in", "supervisor"];
8
+ export type BuiltinPatternKind = (typeof BUILTIN_PATTERN_KINDS)[number];
9
+ export type PatternFailureCategory = "failure" | "timeout" | "escalation";
10
+ export interface PatternRuntimeHooks {
11
+ onStart?(context: PatternRuntimeContext): Promise<void> | void;
12
+ onEvent?(event: PatternRuntimeEvent, context: PatternRuntimeContext): Promise<void> | void;
13
+ onComplete?(result: PatternRuntimeResult, context: PatternRuntimeContext): Promise<void> | void;
14
+ onError?(error: unknown, context: PatternRuntimeContext): Promise<void> | void;
15
+ }
16
+ export type PatternExecutionFn = (context: PatternRuntimeContext) => Promise<PatternRuntimeResult>;
17
+ /**
18
+ * External runtime contract used by orchestrator/executors.
19
+ * `run` is the stable entrypoint for runtime integration.
20
+ */
21
+ export interface PatternRuntimeContract {
22
+ readonly name: string;
23
+ readonly kind: BuiltinPatternKind | (string & {});
24
+ readonly version?: string;
25
+ validateConfig?(config: PatternConfig): void;
26
+ run: PatternExecutionFn;
27
+ }
28
+ export interface PatternRuntimeEvent {
29
+ type: string;
30
+ payload?: unknown;
31
+ timestamp?: string;
32
+ }
33
+ export interface PatternPayloadContext {
34
+ steps?: Array<(input: unknown) => unknown | Promise<unknown>>;
35
+ input?: unknown;
36
+ [key: string]: unknown;
37
+ }
38
+ export interface PatternRuntimeContext extends PatternPayloadContext {
39
+ executionId?: string;
40
+ stepName?: string;
41
+ pattern: string;
42
+ participants?: Record<string, string>;
43
+ config?: PatternConfig;
44
+ emit?: (event: PatternRuntimeEvent) => Promise<void> | void;
45
+ hooks?: PatternRuntimeHooks;
46
+ }
47
+ export interface PatternPayloadResult {
48
+ success: boolean;
49
+ output: unknown;
50
+ metadata?: Record<string, unknown>;
51
+ }
52
+ export interface PatternRuntimeResult extends PatternPayloadResult {
53
+ pattern: string;
54
+ }
55
+ /**
56
+ * SCHEMAS SSOT naming uses PatternContext/PatternResult.
57
+ * Keep these aliases bound to runtime I/O types.
58
+ */
59
+ export type PatternContext = PatternRuntimeContext;
60
+ export type PatternResult = PatternRuntimeResult;
61
+ export type CustomConvergenceFn = (context: {
62
+ round: number;
63
+ opinions: Record<string, string>;
64
+ participants: string[];
65
+ }) => boolean;
66
+ export type VoterRole = "ai" | "human" | "service";
67
+ export interface VoterRoleConfig {
68
+ /** Role of this voter. Default: "ai". */
69
+ role: VoterRole;
70
+ /** Voter ids assigned this role. */
71
+ voters: string[];
72
+ }
73
+ export type EscalationTrigger = "timeout" | "quorum_not_met";
74
+ export interface EscalationConfig {
75
+ /** Which failure conditions trigger escalation instead of plain failure/throw. */
76
+ triggers: EscalationTrigger[];
77
+ /** Opaque target identifier for the escalation handler. */
78
+ target?: string;
79
+ }
80
+ export type CustomEvaluator = (context: {
81
+ votes: Array<{
82
+ voterId: string;
83
+ approved: boolean;
84
+ score?: number;
85
+ reason?: string;
86
+ role?: VoterRole;
87
+ }>;
88
+ participants: string[];
89
+ requiredParticipants: string[];
90
+ config: ConsensusPatternConfig;
91
+ }) => boolean | {
92
+ approved: boolean;
93
+ reason?: string;
94
+ score?: number;
95
+ };
96
+ export interface DiscussionPatternConfig {
97
+ max_rounds?: number;
98
+ convergence?: "no_disagreements" | "majority" | "unanimous" | "custom";
99
+ on_deadlock?: "escalate" | "retry" | "fail";
100
+ /** Number of extra retry rounds when on_deadlock='retry'. Default 1. Must be >= 1. */
101
+ retry_budget?: number;
102
+ custom_convergence?: CustomConvergenceFn;
103
+ }
104
+ export interface ConsensusPatternConfig {
105
+ rule?: "majority" | "unanimous" | "weighted" | "score-threshold" | "custom";
106
+ weights?: Record<string, number>;
107
+ threshold?: number;
108
+ timeout?: string;
109
+ best_effort?: string[];
110
+ custom_evaluate?: CustomEvaluator;
111
+ /** Voter role assignments. Voters not listed default to "ai". */
112
+ voter_roles?: VoterRoleConfig[];
113
+ /** Escalation integration point for timeout/quorum failures. */
114
+ escalation?: EscalationConfig;
115
+ }
116
+ export interface BrainstormingPatternConfig {
117
+ phase_1?: "generate";
118
+ phase_2?: "evaluate";
119
+ top_n?: number;
120
+ dedup?: "semantic" | "exact";
121
+ }
122
+ export interface PeerReviewPatternConfig {
123
+ min_score?: number;
124
+ p0_allowed?: number;
125
+ max_rounds?: number;
126
+ best_effort?: string[];
127
+ }
128
+ export type RedBlueEscalationTrigger = "max_rounds_exhausted";
129
+ export interface RedBlueEscalationConfig {
130
+ /** Which failure conditions trigger escalation instead of plain failure. */
131
+ triggers: RedBlueEscalationTrigger[];
132
+ /** Opaque target identifier for the escalation handler. */
133
+ target?: string;
134
+ }
135
+ export interface RedBluePatternConfig {
136
+ red_team?: string[];
137
+ blue_team?: string[];
138
+ max_rounds?: number;
139
+ convergence?: "red_finds_nothing" | "max_rounds" | "custom";
140
+ /** Required when convergence='custom'. */
141
+ custom_convergence?: (payload: {
142
+ round: number;
143
+ rounds: Array<{
144
+ round: number;
145
+ red_findings: Record<string, unknown>;
146
+ blue_responses: Record<string, unknown>;
147
+ }>;
148
+ current_round: {
149
+ round: number;
150
+ red_findings: Record<string, unknown>;
151
+ blue_responses: Record<string, unknown>;
152
+ };
153
+ subject: unknown;
154
+ red_team: string[];
155
+ blue_team: string[];
156
+ }) => boolean;
157
+ /** Escalation integration point for failure paths. */
158
+ escalation?: RedBlueEscalationConfig;
159
+ }
160
+ export interface PipelinePatternConfig {
161
+ stages?: string[];
162
+ }
163
+ /**
164
+ * failure_policy controls how partial participant failures are handled:
165
+ * - "best_effort" (default): succeed if at least 1 participant succeeds.
166
+ * - "required": succeed only if >= min_success participants succeed.
167
+ * When min_success is omitted under "required", ALL participants must succeed.
168
+ *
169
+ * min_success: minimum number of successful participants for "required" mode.
170
+ * Must be >= 1 and <= participant count. Ignored under "best_effort".
171
+ */
172
+ export interface FanOutFanInPatternConfig {
173
+ merge?: "concatenate" | "rank" | "vote" | "custom";
174
+ failure_policy?: "best_effort" | "required";
175
+ /** Minimum successful participants for "required" mode. Defaults to total participant count. */
176
+ min_success?: number;
177
+ }
178
+ export interface SupervisorPatternConfig {
179
+ strategy?: "one_for_one" | "one_for_all";
180
+ max_restarts?: number;
181
+ backoff?: "linear" | "exponential";
182
+ }
183
+ export interface CompositeStage {
184
+ name: string;
185
+ pattern: string;
186
+ config?: Record<string, unknown>;
187
+ participants?: Record<string, string>;
188
+ input_from?: "previous" | "root" | string;
189
+ }
190
+ export interface CompositePatternConfig {
191
+ stages: CompositeStage[];
192
+ on_stage_failure?: "fail" | "skip" | "escalate";
193
+ }
194
+ export interface CustomPatternDefinition {
195
+ name: string;
196
+ version?: string;
197
+ kind?: string;
198
+ description?: string;
199
+ execute: (context: PatternRuntimeContext) => Promise<PatternPayloadResult>;
200
+ validateConfig?: (config: PatternConfig) => void;
201
+ }
202
+ export interface CustomPatternConfig {
203
+ [key: string]: unknown;
204
+ }
205
+ export type PatternConfig = DiscussionPatternConfig | ConsensusPatternConfig | BrainstormingPatternConfig | PeerReviewPatternConfig | RedBluePatternConfig | PipelinePatternConfig | FanOutFanInPatternConfig | SupervisorPatternConfig | CompositePatternConfig | CustomPatternConfig;
206
+ export type PatternConfigByKind = {
207
+ discussion: DiscussionPatternConfig;
208
+ consensus: ConsensusPatternConfig;
209
+ brainstorming: BrainstormingPatternConfig;
210
+ "peer-review": PeerReviewPatternConfig;
211
+ "red-blue": RedBluePatternConfig;
212
+ pipeline: PipelinePatternConfig;
213
+ "fan-out-fan-in": FanOutFanInPatternConfig;
214
+ supervisor: SupervisorPatternConfig;
215
+ composite: CompositePatternConfig;
216
+ };
217
+ export type PatternYamlStep<K extends keyof PatternConfigByKind = keyof PatternConfigByKind> = {
218
+ pattern: K;
219
+ config?: PatternConfigByKind[K];
220
+ };
221
+ export type BlackboardDomain = "agenda" | "meeting-state-machine" | "message-bus" | "consensus-rule-engine" | "voting-session-store" | "knowledge" | "decision" | "state" | "actor-pool" | "supervisor" | "supervisor-tree";
222
+ export type PatternBlackboardDomainMapping = Record<keyof PatternConfigByKind, readonly BlackboardDomain[]>;
223
+ export declare const PATTERN_BLACKBOARD_DOMAIN_MAP: PatternBlackboardDomainMapping;
224
+ export declare const PATTERN_ERROR_CODE_MAP: Record<keyof PatternConfigByKind, Record<PatternFailureCategory, OboraErrorCode>>;
225
+ export declare function isBuiltinPatternKind(value: string): value is BuiltinPatternKind;
226
+ /**
227
+ * Internal pattern implementation contract.
228
+ * - `run`: external runtime entrypoint (called by orchestrator/executors)
229
+ * - `execute`: internal compatibility entrypoint (delegates to `run`)
230
+ * External callers should always use `run`.
231
+ */
232
+ export interface CollaborationPattern extends PatternRuntimeContract {
233
+ execute: PatternExecutionFn;
234
+ }
235
+ export declare abstract class CollaborationPatternBase implements CollaborationPattern {
236
+ abstract readonly name: string;
237
+ abstract readonly kind: BuiltinPatternKind | (string & {});
238
+ readonly version = "1.0.0";
239
+ validateConfig(_config: PatternConfig): void;
240
+ /**
241
+ * Internal compatibility entrypoint; delegates to `run`.
242
+ */
243
+ execute(context: PatternRuntimeContext): Promise<PatternRuntimeResult>;
244
+ /**
245
+ * External runtime entrypoint used by orchestrator.
246
+ * Error channel contract:
247
+ * - throw: unrecoverable external constraint violations (timeout/policy/etc), handled by upper recovery.
248
+ * - return { success: false }: expected business-level failure (e.g., quorum not met / rejected).
249
+ */
250
+ run(context: PatternRuntimeContext): Promise<PatternRuntimeResult>;
251
+ protected abstract onExecute(context: PatternRuntimeContext): Promise<PatternPayloadResult>;
252
+ }
@@ -0,0 +1,16 @@
1
+ import type { AnyPlugin } from "./types.js";
2
+ import { PluginRegistry } from "./PluginRegistry.js";
3
+ export declare class PluginLoader {
4
+ private readonly registry;
5
+ private readonly loaded;
6
+ constructor(registry: PluginRegistry);
7
+ load(plugin: AnyPlugin, options?: {
8
+ replace?: boolean;
9
+ }): Promise<void>;
10
+ loadFromModule(modulePath: string, exportName?: string, options?: {
11
+ replace?: boolean;
12
+ }): Promise<void>;
13
+ unload(name: string): Promise<void>;
14
+ unloadAll(): Promise<void>;
15
+ listLoaded(): string[];
16
+ }
@@ -0,0 +1,15 @@
1
+ import type { AnyPlugin, OboraPlugin, PluginType } from "./types.js";
2
+ export interface RegisterOptions {
3
+ replace?: boolean;
4
+ }
5
+ export declare class PluginRegistry {
6
+ private readonly byName;
7
+ private readonly byType;
8
+ register(plugin: AnyPlugin, options?: RegisterOptions): Promise<void>;
9
+ registerAll(plugins: readonly AnyPlugin[], options?: RegisterOptions): Promise<void>;
10
+ unregister(name: string): Promise<void>;
11
+ get<T extends OboraPlugin>(type: PluginType, name: string): T;
12
+ has(type: PluginType, name: string): boolean;
13
+ list(type?: PluginType): OboraPlugin[];
14
+ clear(): Promise<void>;
15
+ }
@@ -0,0 +1,137 @@
1
+ import type { AuditEvent, AuditFilter } from "../audit/types.js";
2
+ import { PipelinePattern } from "../patterns/builtin/PipelinePattern.js";
3
+ import { DiscussionPattern } from "../patterns/builtin/DiscussionPattern.js";
4
+ import { ConsensusPattern } from "../patterns/builtin/ConsensusPattern.js";
5
+ import { BrainstormPattern } from "../patterns/builtin/BrainstormPattern.js";
6
+ import { PeerReviewPattern } from "../patterns/builtin/PeerReviewPattern.js";
7
+ import { SupervisorPattern } from "../patterns/builtin/SupervisorPattern.js";
8
+ import { FanOutFanInPattern } from "../patterns/builtin/FanOutFanInPattern.js";
9
+ import { RedBluePattern } from "../patterns/builtin/RedBluePattern.js";
10
+ import { CompositePattern } from "../patterns/builtin/CompositePattern.js";
11
+ import type { PatternRegistry } from "../patterns/PatternRegistry.js";
12
+ import type { AgentPlugin, AnyPlugin, AuditStorePlugin, ConsensusRulePlugin, PatternPlugin, PolicyRulePlugin, RecoveryStrategyPlugin, StateTransformPlugin, ToolPlugin } from "./types.js";
13
+ import type { PluginRegistry } from "./PluginRegistry.js";
14
+ export declare class BuiltinAgentPlugin implements AgentPlugin {
15
+ readonly type: "agent";
16
+ readonly name = "builtin-agent";
17
+ readonly version = "1.0.0";
18
+ createAgent(config: unknown): unknown;
19
+ }
20
+ export declare class FileWriteToolPlugin implements ToolPlugin {
21
+ private readonly sandboxRoot;
22
+ readonly type: "tool";
23
+ readonly name = "file-write";
24
+ readonly version = "1.0.0";
25
+ readonly schema: {
26
+ type: string;
27
+ required: string[];
28
+ properties: {
29
+ path: {
30
+ type: string;
31
+ };
32
+ content: {
33
+ type: string;
34
+ };
35
+ };
36
+ };
37
+ constructor(sandboxRoot?: string);
38
+ execute(params: unknown): Promise<{
39
+ path: string;
40
+ bytes: number;
41
+ }>;
42
+ }
43
+ export declare class PipelinePatternPlugin extends PipelinePattern implements PatternPlugin {
44
+ readonly type: "pattern";
45
+ readonly name = "pipeline";
46
+ readonly version = "1.0.0";
47
+ }
48
+ export declare class DiscussionPatternPlugin extends DiscussionPattern implements PatternPlugin {
49
+ readonly type: "pattern";
50
+ readonly name = "discussion";
51
+ readonly version = "1.0.0";
52
+ }
53
+ export declare class ConsensusPatternPlugin extends ConsensusPattern implements PatternPlugin {
54
+ readonly type: "pattern";
55
+ readonly name = "consensus";
56
+ readonly version = "1.0.0";
57
+ }
58
+ export declare class BrainstormPatternPlugin extends BrainstormPattern implements PatternPlugin {
59
+ readonly type: "pattern";
60
+ readonly name = "brainstorming";
61
+ readonly version = "1.0.0";
62
+ }
63
+ export declare class PeerReviewPatternPlugin extends PeerReviewPattern implements PatternPlugin {
64
+ readonly type: "pattern";
65
+ readonly name = "peer-review";
66
+ readonly version = "1.0.0";
67
+ }
68
+ export declare class SupervisorPatternPlugin extends SupervisorPattern implements PatternPlugin {
69
+ readonly type: "pattern";
70
+ readonly name = "supervisor";
71
+ readonly version = "1.0.0";
72
+ }
73
+ export declare class FanOutFanInPatternPlugin extends FanOutFanInPattern implements PatternPlugin {
74
+ readonly type: "pattern";
75
+ readonly name = "fan-out-fan-in";
76
+ readonly version = "1.0.0";
77
+ }
78
+ export declare class RedBluePatternPlugin extends RedBluePattern implements PatternPlugin {
79
+ readonly type: "pattern";
80
+ readonly name = "red-blue";
81
+ readonly version = "1.0.0";
82
+ }
83
+ export declare class CompositePatternPlugin extends CompositePattern implements PatternPlugin {
84
+ readonly type: "pattern";
85
+ readonly name = "composite";
86
+ readonly version = "1.0.0";
87
+ constructor(registry: PatternRegistry);
88
+ }
89
+ export declare class AllowAllPolicyRulePlugin implements PolicyRulePlugin {
90
+ readonly type: "policy-rule";
91
+ readonly name = "allow-all-policy";
92
+ readonly version = "1.0.0";
93
+ evaluate(): {
94
+ type: "allow";
95
+ };
96
+ }
97
+ export declare class RetryRecoveryStrategyPlugin implements RecoveryStrategyPlugin {
98
+ readonly type: "recovery-strategy";
99
+ readonly name = "retry-recovery";
100
+ readonly version = "1.0.0";
101
+ handle(): Promise<{
102
+ status: "recovered";
103
+ }>;
104
+ }
105
+ export declare class MajorityConsensusRulePlugin implements ConsensusRulePlugin {
106
+ readonly type: "consensus-rule";
107
+ readonly name = "majority-consensus";
108
+ readonly version = "1.0.0";
109
+ evaluate(votes: unknown[]): {
110
+ status: "pass" | "fail";
111
+ approved: number;
112
+ total: number;
113
+ };
114
+ }
115
+ export declare class InMemoryAuditStorePlugin implements AuditStorePlugin {
116
+ readonly type: "audit-store";
117
+ readonly name = "in-memory-audit-store";
118
+ readonly version = "1.0.0";
119
+ private readonly store;
120
+ record(event: AuditEvent): Promise<void>;
121
+ query(filter: AuditFilter): Promise<AuditEvent[]>;
122
+ }
123
+ export declare class IdentityStateTransformPlugin implements StateTransformPlugin {
124
+ readonly type: "state-transform";
125
+ readonly name = "identity-transform";
126
+ readonly version = "1.0.0";
127
+ transform(value: unknown): unknown;
128
+ }
129
+ export declare function createBuiltinPlugins(options?: {
130
+ sandboxRoot?: string;
131
+ patternRegistry?: PatternRegistry;
132
+ }): AnyPlugin[];
133
+ export declare function registerBuiltinPlugins(registry: PluginRegistry, options?: {
134
+ sandboxRoot?: string;
135
+ replace?: boolean;
136
+ patternRegistry?: PatternRegistry;
137
+ }): Promise<void>;
@@ -0,0 +1,5 @@
1
+ export * from "./types.js";
2
+ export * from "./validator.js";
3
+ export * from "./PluginRegistry.js";
4
+ export * from "./PluginLoader.js";
5
+ export * from "./builtins.js";
@@ -0,0 +1,52 @@
1
+ import type { AuditEvent, AuditFilter } from "../audit/types.js";
2
+ import type { PatternRuntimeContract, PatternRuntimeContext, PatternRuntimeResult } from "../patterns/types.js";
3
+ export type PluginType = "agent" | "tool" | "pattern" | "policy-rule" | "recovery-strategy" | "consensus-rule" | "audit-store" | "state-transform";
4
+ export interface OboraPlugin {
5
+ name: string;
6
+ version: string;
7
+ type: PluginType;
8
+ onLoad?(): Promise<void>;
9
+ onUnload?(): Promise<void>;
10
+ }
11
+ export interface AgentPlugin extends OboraPlugin {
12
+ type: "agent";
13
+ createAgent(config: unknown): unknown;
14
+ }
15
+ export interface ToolPlugin extends OboraPlugin {
16
+ type: "tool";
17
+ schema: Record<string, unknown>;
18
+ execute(params: unknown, context: unknown): Promise<unknown>;
19
+ }
20
+ export interface PatternPlugin extends OboraPlugin, PatternRuntimeContract {
21
+ type: "pattern";
22
+ /** Explicitly restated for pattern plugin contract readability. */
23
+ name: string;
24
+ version: string;
25
+ execute(context: PatternRuntimeContext): Promise<PatternRuntimeResult>;
26
+ }
27
+ export interface PolicyRulePlugin extends OboraPlugin {
28
+ type: "policy-rule";
29
+ evaluate(action: unknown, context: unknown): unknown;
30
+ }
31
+ export interface RecoveryStrategyPlugin extends OboraPlugin {
32
+ type: "recovery-strategy";
33
+ handle(failure: unknown): Promise<unknown>;
34
+ }
35
+ export interface ConsensusRulePlugin extends OboraPlugin {
36
+ type: "consensus-rule";
37
+ evaluate(votes: unknown[]): unknown;
38
+ }
39
+ export interface AuditStorePlugin extends OboraPlugin {
40
+ type: "audit-store";
41
+ record(event: AuditEvent): Promise<void>;
42
+ query(filter: AuditFilter): Promise<AuditEvent[]>;
43
+ }
44
+ export interface StateTransformPlugin extends OboraPlugin {
45
+ type: "state-transform";
46
+ transform(value: unknown): unknown;
47
+ }
48
+ export type AnyPlugin = AgentPlugin | ToolPlugin | PatternPlugin | PolicyRulePlugin | RecoveryStrategyPlugin | ConsensusRulePlugin | AuditStorePlugin | StateTransformPlugin;
49
+ export interface PluginValidationResult {
50
+ valid: boolean;
51
+ errors: string[];
52
+ }
@@ -0,0 +1,3 @@
1
+ import type { AnyPlugin, PluginValidationResult } from "./types.js";
2
+ export declare function validatePlugin(plugin: unknown): PluginValidationResult;
3
+ export declare function assertValidPlugin(plugin: unknown): asserts plugin is AnyPlugin;