@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.
- package/LICENSE +21 -0
- package/README.md +183 -0
- package/dist/_legacy/actor/base/BaseActor.d.ts +87 -0
- package/dist/_legacy/actor/pool/ActorPool.d.ts +194 -0
- package/dist/_legacy/actor/pool/NoOpMessageBus.d.ts +16 -0
- package/dist/_legacy/actor/pool/PoolManager.d.ts +76 -0
- package/dist/_legacy/actor/pool/index.d.ts +3 -0
- package/dist/_legacy/actor/runtime/ActorRunner.d.ts +54 -0
- package/dist/_legacy/actor/runtime/ActorRuntime.d.ts +161 -0
- package/dist/_legacy/actor/runtime/DefaultActorFactory.d.ts +44 -0
- package/dist/_legacy/actor/runtime/types.d.ts +41 -0
- package/dist/_legacy/actor/runtime/utils/delay.d.ts +7 -0
- package/dist/_legacy/actor/supervision/Supervisor.d.ts +102 -0
- package/dist/_legacy/actor/supervision/SupervisorTree.d.ts +54 -0
- package/dist/_legacy/actor/supervision/types.d.ts +130 -0
- package/dist/_legacy/actor/types/action.d.ts +65 -0
- package/dist/_legacy/actor/types/actor.d.ts +251 -0
- package/dist/_legacy/actor/types/blackboard.d.ts +46 -0
- package/dist/_legacy/actor/types/crypto.d.ts +6 -0
- package/dist/_legacy/actor/types/message.d.ts +209 -0
- package/dist/_legacy/actor/types/metrics.d.ts +43 -0
- package/dist/_legacy/actor/types/observation.d.ts +45 -0
- package/dist/_legacy/actor/types/result.d.ts +110 -0
- package/dist/_legacy/agents/roles/analyst-agent.d.ts +18 -0
- package/dist/_legacy/agents/roles/base-agent.d.ts +320 -0
- package/dist/_legacy/agents/roles/director-agent.d.ts +26 -0
- package/dist/_legacy/agents/roles/executor-agent.d.ts +26 -0
- package/dist/_legacy/agents/roles/factory.d.ts +30 -0
- package/dist/_legacy/agents/roles/index.d.ts +6 -0
- package/dist/_legacy/agents/roles/verifier-agent.d.ts +18 -0
- package/dist/_legacy/blackboard/core/accessors/decisions-accessor.d.ts +190 -0
- package/dist/_legacy/blackboard/core/accessors/index.d.ts +7 -0
- package/dist/_legacy/blackboard/core/accessors/knowledge-accessor.d.ts +154 -0
- package/dist/_legacy/blackboard/core/accessors/state-accessor.d.ts +173 -0
- package/dist/_legacy/blackboard/core/blackboard-events.d.ts +105 -0
- package/dist/_legacy/blackboard/core/blackboard.d.ts +286 -0
- package/dist/_legacy/blackboard/core/id-generator.d.ts +53 -0
- package/dist/_legacy/blackboard/core/immutable.d.ts +45 -0
- package/dist/_legacy/blackboard/core/index.d.ts +13 -0
- package/dist/_legacy/blackboard/core/path-utils.d.ts +75 -0
- package/dist/_legacy/blackboard/core/tkg.d.ts +50 -0
- package/dist/_legacy/blackboard/core/versioning.d.ts +80 -0
- package/dist/_legacy/blackboard/domains/agenda/AgendaStore.d.ts +34 -0
- package/dist/_legacy/blackboard/domains/agenda/events.d.ts +12 -0
- package/dist/_legacy/blackboard/domains/agenda/index.d.ts +6 -0
- package/dist/_legacy/blackboard/domains/agenda/types.d.ts +26 -0
- package/dist/_legacy/blackboard/domains/consensus/ConsensusRuleEngine.d.ts +10 -0
- package/dist/_legacy/blackboard/domains/consensus/index.d.ts +4 -0
- package/dist/_legacy/blackboard/domains/consensus/types.d.ts +27 -0
- package/dist/_legacy/blackboard/domains/tkg/InMemoryTKG.d.ts +38 -0
- package/dist/_legacy/blackboard/domains/tkg/JsonFileReflectorStateStore.d.ts +9 -0
- package/dist/_legacy/blackboard/domains/tkg/ObserverReflector.d.ts +114 -0
- package/dist/_legacy/blackboard/domains/tkg/index.d.ts +4 -0
- package/dist/_legacy/blackboard/domains/voting/VotingSessionStore.d.ts +14 -0
- package/dist/_legacy/blackboard/domains/voting/index.d.ts +3 -0
- package/dist/_legacy/blackboard/domains/voting/types.d.ts +32 -0
- package/dist/_legacy/blackboard/events/event-bus.d.ts +254 -0
- package/dist/_legacy/blackboard/events/event-factory.d.ts +80 -0
- package/dist/_legacy/blackboard/events/index.d.ts +17 -0
- package/dist/_legacy/blackboard/events/types.d.ts +554 -0
- package/dist/_legacy/blackboard/snapshot/compression.d.ts +170 -0
- package/dist/_legacy/blackboard/snapshot/id-utils.d.ts +20 -0
- package/dist/_legacy/blackboard/snapshot/index.d.ts +21 -0
- package/dist/_legacy/blackboard/snapshot/serializer.d.ts +123 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-comparer.d.ts +102 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-creator.d.ts +49 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-manager.d.ts +253 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-restorer.d.ts +54 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-serializer.d.ts +45 -0
- package/dist/_legacy/blackboard/snapshot/snapshot-validator.d.ts +55 -0
- package/dist/_legacy/blackboard/snapshot/type-guards.d.ts +12 -0
- package/dist/_legacy/blackboard/snapshot/types.d.ts +151 -0
- package/dist/_legacy/blackboard/snapshot/utils.d.ts +20 -0
- package/dist/_legacy/blackboard/types/agent.d.ts +89 -0
- package/dist/_legacy/blackboard/types/base.d.ts +213 -0
- package/dist/_legacy/blackboard/types/blackboard.d.ts +217 -0
- package/dist/_legacy/blackboard/types/decision.d.ts +260 -0
- package/dist/_legacy/blackboard/types/index.d.ts +12 -0
- package/dist/_legacy/blackboard/types/knowledge.d.ts +224 -0
- package/dist/_legacy/blackboard/types/message.d.ts +162 -0
- package/dist/_legacy/blackboard/types/task.d.ts +154 -0
- package/dist/_legacy/blackboard/types/tkg.d.ts +189 -0
- package/dist/_legacy/blackboard/workflow/meeting-state-machine/MeetingStateMachine.d.ts +22 -0
- package/dist/_legacy/blackboard/workflow/meeting-state-machine/types.d.ts +30 -0
- package/dist/_legacy/cli-runtime/runtime/agent-registry.d.ts +33 -0
- package/dist/_legacy/cli-runtime/runtime/blackboard.d.ts +41 -0
- package/dist/_legacy/cli-runtime/runtime/context-builder.d.ts +88 -0
- package/dist/_legacy/cli-runtime/runtime/retry-policy.d.ts +8 -0
- package/dist/_legacy/cli-runtime/runtime/step-executor.d.ts +33 -0
- package/dist/_legacy/cli-runtime/runtime/types.d.ts +12 -0
- package/dist/_legacy/cli-runtime/runtime/utils.d.ts +2 -0
- package/dist/_legacy/database/src/duckdb-client.d.ts +178 -0
- package/dist/_legacy/workflow/errors/diagnosis.d.ts +32 -0
- package/dist/_legacy/workflow/errors/index.d.ts +52 -0
- package/dist/_legacy/workflow/graph/index.d.ts +57 -0
- package/dist/_legacy/workflow/index.d.ts +9 -0
- package/dist/_legacy/workflow/parser/workflow-parser.d.ts +13 -0
- package/dist/_legacy/workflow/resolver/dependency-resolver.d.ts +83 -0
- package/dist/_legacy/workflow/types/workflow.d.ts +173 -0
- package/dist/_legacy/workflow/utils.d.ts +2 -0
- package/dist/_legacy/workflow/validator/workflow-validator.d.ts +71 -0
- package/dist/artifacts/index.d.ts +2 -0
- package/dist/artifacts/local-file-artifact-store.d.ts +22 -0
- package/dist/artifacts/types.d.ts +19 -0
- package/dist/audit/AuditReplay.d.ts +4 -0
- package/dist/audit/AuditStore.d.ts +13 -0
- package/dist/audit/AuditTrail.d.ts +28 -0
- package/dist/audit/DefaultAuditRecorder.d.ts +10 -0
- package/dist/audit/EventBusAdapter.d.ts +12 -0
- package/dist/audit/InMemoryAuditStore.d.ts +9 -0
- package/dist/audit/ReExecutionDiffReport.d.ts +24 -0
- package/dist/audit/ReExecutionPlanner.d.ts +30 -0
- package/dist/audit/ReExecutionRuntime.d.ts +35 -0
- package/dist/audit/database-api.d.ts +32 -0
- package/dist/audit/database-index.d.ts +5 -0
- package/dist/audit/event-bus.d.ts +1 -0
- package/dist/audit/event-factory.d.ts +1 -0
- package/dist/audit/index.d.ts +12 -0
- package/dist/audit/testing.d.ts +15 -0
- package/dist/audit/tkg/InMemoryTKG.d.ts +1 -0
- package/dist/audit/tkg/JsonFileReflectorStateStore.d.ts +1 -0
- package/dist/audit/tkg/ObserverReflector.d.ts +1 -0
- package/dist/audit/tkg/index.d.ts +1 -0
- package/dist/audit/types.d.ts +23 -0
- package/dist/blackboard/core/accessors/decisions-accessor.d.ts +190 -0
- package/dist/blackboard/core/accessors/index.d.ts +7 -0
- package/dist/blackboard/core/accessors/knowledge-accessor.d.ts +154 -0
- package/dist/blackboard/core/accessors/state-accessor.d.ts +173 -0
- package/dist/blackboard/core/blackboard-events.d.ts +105 -0
- package/dist/blackboard/core/blackboard.d.ts +286 -0
- package/dist/blackboard/core/id-generator.d.ts +53 -0
- package/dist/blackboard/core/immutable.d.ts +45 -0
- package/dist/blackboard/core/index.d.ts +13 -0
- package/dist/blackboard/core/path-utils.d.ts +75 -0
- package/dist/blackboard/core/tkg.d.ts +50 -0
- package/dist/blackboard/core/versioning.d.ts +80 -0
- package/dist/blackboard/events/event-bus.d.ts +254 -0
- package/dist/blackboard/events/event-factory.d.ts +80 -0
- package/dist/blackboard/events/index.d.ts +17 -0
- package/dist/blackboard/events/types.d.ts +554 -0
- package/dist/blackboard/index.d.ts +20 -0
- package/dist/blackboard/observer-reflector.d.ts +114 -0
- package/dist/blackboard/snapshot/compression.d.ts +170 -0
- package/dist/blackboard/snapshot/id-utils.d.ts +20 -0
- package/dist/blackboard/snapshot/index.d.ts +21 -0
- package/dist/blackboard/snapshot/serializer.d.ts +123 -0
- package/dist/blackboard/snapshot/snapshot-comparer.d.ts +102 -0
- package/dist/blackboard/snapshot/snapshot-creator.d.ts +49 -0
- package/dist/blackboard/snapshot/snapshot-manager.d.ts +253 -0
- package/dist/blackboard/snapshot/snapshot-restorer.d.ts +54 -0
- package/dist/blackboard/snapshot/snapshot-serializer.d.ts +45 -0
- package/dist/blackboard/snapshot/snapshot-validator.d.ts +55 -0
- package/dist/blackboard/snapshot/type-guards.d.ts +12 -0
- package/dist/blackboard/snapshot/types.d.ts +151 -0
- package/dist/blackboard/snapshot/utils.d.ts +20 -0
- package/dist/blackboard/types/agent.d.ts +89 -0
- package/dist/blackboard/types/base.d.ts +213 -0
- package/dist/blackboard/types/blackboard.d.ts +217 -0
- package/dist/blackboard/types/decision.d.ts +260 -0
- package/dist/blackboard/types/index.d.ts +12 -0
- package/dist/blackboard/types/knowledge.d.ts +224 -0
- package/dist/blackboard/types/message.d.ts +162 -0
- package/dist/blackboard/types/task.d.ts +154 -0
- package/dist/blackboard/types/tkg.d.ts +189 -0
- package/dist/cell/ActorPool.d.ts +1 -0
- package/dist/cell/AgentFactory.d.ts +1 -0
- package/dist/cell/AgentRegistry.d.ts +1 -0
- package/dist/cell/BaseActor.d.ts +1 -0
- package/dist/cell/CellContext.d.ts +39 -0
- package/dist/cell/CellManager.d.ts +80 -0
- package/dist/cell/ExecutionCell.d.ts +44 -0
- package/dist/cell/PoolManager.d.ts +1 -0
- package/dist/cell/actor-types/action.d.ts +65 -0
- package/dist/cell/actor-types/actor.d.ts +251 -0
- package/dist/cell/actor-types/blackboard.d.ts +46 -0
- package/dist/cell/actor-types/crypto.d.ts +6 -0
- package/dist/cell/actor-types/index.d.ts +12 -0
- package/dist/cell/actor-types/message.d.ts +209 -0
- package/dist/cell/actor-types/metrics.d.ts +43 -0
- package/dist/cell/actor-types/observation.d.ts +45 -0
- package/dist/cell/actor-types/result.d.ts +110 -0
- package/dist/cell/agents/AnalystCellAgent.d.ts +2 -0
- package/dist/cell/agents/BaseRuntimeAgent.d.ts +2 -0
- package/dist/cell/agents/DirectorCellAgent.d.ts +2 -0
- package/dist/cell/agents/ExecutorCellAgent.d.ts +2 -0
- package/dist/cell/agents/VerifierCellAgent.d.ts +2 -0
- package/dist/cell/agents/index.d.ts +5 -0
- package/dist/cell/index.d.ts +9 -0
- package/dist/cell/internal/ActorRunnerAdapter.d.ts +2 -0
- package/dist/cell/internal/CellActorFactory.d.ts +2 -0
- package/dist/cell/internal/NoOpRuntimeBus.d.ts +2 -0
- package/dist/cell/internal/delay.d.ts +1 -0
- package/dist/cell/pool-index.d.ts +1 -0
- package/dist/cell/types.d.ts +47 -0
- package/dist/checkpoint/CheckpointFactoryRegistry.d.ts +16 -0
- package/dist/checkpoint/CheckpointManager.d.ts +41 -0
- package/dist/checkpoint/index.d.ts +5 -0
- package/dist/checkpoint/policy-hash.d.ts +11 -0
- package/dist/consensus/ConsensusGate.d.ts +83 -0
- package/dist/consensus/ConsensusRuleEngine.d.ts +1 -0
- package/dist/consensus/agenda/AgendaStore.d.ts +1 -0
- package/dist/consensus/agenda/events.d.ts +1 -0
- package/dist/consensus/agenda/index.d.ts +1 -0
- package/dist/consensus/agenda/types.d.ts +1 -0
- package/dist/consensus/index.d.ts +2 -0
- package/dist/consensus/types.d.ts +1 -0
- package/dist/consensus/voting/VotingSessionStore.d.ts +1 -0
- package/dist/consensus/voting/index.d.ts +1 -0
- package/dist/consensus/voting/types.d.ts +1 -0
- package/dist/errors/OboraErrorCode.d.ts +28 -0
- package/dist/errors/index.d.ts +1 -0
- package/dist/gates/GateAssignment.d.ts +28 -0
- package/dist/gates/MultiStageApproval.d.ts +74 -0
- package/dist/gates/SLAManager.d.ts +21 -0
- package/dist/gates/index.d.ts +4 -0
- package/dist/gates/types.d.ts +19 -0
- package/dist/index.cjs +26588 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +39 -0
- package/dist/index.js +26330 -0
- package/dist/index.js.map +1 -0
- package/dist/judgment/JudgmentEngine.d.ts +24 -0
- package/dist/judgment/JudgmentNormalizer.d.ts +37 -0
- package/dist/judgment/JudgmentPolicy.d.ts +74 -0
- package/dist/judgment/JudgmentReporter.d.ts +70 -0
- package/dist/judgment/OperationalLogger.d.ts +68 -0
- package/dist/judgment/index.d.ts +6 -0
- package/dist/judgment/types.d.ts +42 -0
- package/dist/orchestrator/ExecutionContextBuilder.d.ts +1 -0
- package/dist/orchestrator/RuntimeOrchestrator.d.ts +94 -0
- package/dist/orchestrator/StepScheduler.d.ts +2 -0
- package/dist/orchestrator/index.d.ts +4 -0
- package/dist/orchestrator/types.d.ts +80 -0
- package/dist/orchestrator/utils.d.ts +1 -0
- package/dist/patterns/CustomPatternAPI.d.ts +10 -0
- package/dist/patterns/PatternRegistry.d.ts +19 -0
- package/dist/patterns/builtin/BrainstormPattern.d.ts +13 -0
- package/dist/patterns/builtin/CompositePattern.d.ts +11 -0
- package/dist/patterns/builtin/ConsensusPattern.d.ts +17 -0
- package/dist/patterns/builtin/DiscussionPattern.d.ts +13 -0
- package/dist/patterns/builtin/FanOutFanInPattern.d.ts +21 -0
- package/dist/patterns/builtin/PeerReviewPattern.d.ts +40 -0
- package/dist/patterns/builtin/PipelinePattern.d.ts +6 -0
- package/dist/patterns/builtin/RedBluePattern.d.ts +13 -0
- package/dist/patterns/builtin/SupervisorPattern.d.ts +13 -0
- package/dist/patterns/builtin/discussion/MeetingStateMachine.d.ts +1 -0
- package/dist/patterns/builtin/discussion/index.d.ts +2 -0
- package/dist/patterns/builtin/discussion/types.d.ts +1 -0
- package/dist/patterns/examples/OxfordDebatePattern.d.ts +11 -0
- package/dist/patterns/examples/index.d.ts +1 -0
- package/dist/patterns/index.d.ts +14 -0
- package/dist/patterns/resolveCustomPattern.d.ts +22 -0
- package/dist/patterns/types.d.ts +252 -0
- package/dist/plugins/PluginLoader.d.ts +16 -0
- package/dist/plugins/PluginRegistry.d.ts +15 -0
- package/dist/plugins/builtins.d.ts +137 -0
- package/dist/plugins/index.d.ts +5 -0
- package/dist/plugins/types.d.ts +52 -0
- package/dist/plugins/validator.d.ts +3 -0
- package/dist/policy/DefaultPolicyEngine.d.ts +43 -0
- package/dist/policy/DynamicPolicyContext.d.ts +21 -0
- package/dist/policy/DynamicQuotaEvaluator.d.ts +9 -0
- package/dist/policy/DynamicToolPolicy.d.ts +10 -0
- package/dist/policy/PolicyEngine.d.ts +14 -0
- package/dist/policy/PolicyLoader.d.ts +3 -0
- package/dist/policy/expressions/ExpressionEvaluator.d.ts +37 -0
- package/dist/policy/expressions/ExpressionParser.d.ts +35 -0
- package/dist/policy/expressions/constants.d.ts +5 -0
- package/dist/policy/expressions/index.d.ts +2 -0
- package/dist/policy/index.d.ts +9 -0
- package/dist/policy/rules/GateRule.d.ts +7 -0
- package/dist/policy/rules/ResourceRule.d.ts +7 -0
- package/dist/policy/rules/SandboxRule.d.ts +7 -0
- package/dist/policy/rules/ToolRule.d.ts +23 -0
- package/dist/policy/rules/index.d.ts +4 -0
- package/dist/policy/types.d.ts +156 -0
- package/dist/recovery/RecoveryEngine.d.ts +11 -0
- package/dist/recovery/RetryStrategy.d.ts +2 -0
- package/dist/recovery/SupervisionTree.d.ts +1 -0
- package/dist/recovery/index.d.ts +4 -0
- package/dist/recovery/types.d.ts +103 -0
- package/dist/state/RuntimeBlackboardCompat.d.ts +1 -0
- package/dist/state/StateBinder.d.ts +40 -0
- package/dist/state/StateManager.d.ts +1 -0
- package/dist/state/accessors/decisions-accessor.d.ts +1 -0
- package/dist/state/accessors/index.d.ts +1 -0
- package/dist/state/accessors/knowledge-accessor.d.ts +1 -0
- package/dist/state/accessors/state-accessor.d.ts +1 -0
- package/dist/state/blackboard-events.d.ts +1 -0
- package/dist/state/core-index.d.ts +1 -0
- package/dist/state/id-generator.d.ts +1 -0
- package/dist/state/immutable.d.ts +1 -0
- package/dist/state/index.d.ts +6 -0
- package/dist/state/path-utils.d.ts +1 -0
- package/dist/state/snapshot/compression.d.ts +1 -0
- package/dist/state/snapshot/id-utils.d.ts +1 -0
- package/dist/state/snapshot/index.d.ts +1 -0
- package/dist/state/snapshot/serializer.d.ts +1 -0
- package/dist/state/snapshot/snapshot-comparer.d.ts +1 -0
- package/dist/state/snapshot/snapshot-creator.d.ts +1 -0
- package/dist/state/snapshot/snapshot-manager.d.ts +1 -0
- package/dist/state/snapshot/snapshot-restorer.d.ts +1 -0
- package/dist/state/snapshot/snapshot-serializer.d.ts +1 -0
- package/dist/state/snapshot/snapshot-validator.d.ts +1 -0
- package/dist/state/snapshot/type-guards.d.ts +1 -0
- package/dist/state/snapshot/types.d.ts +1 -0
- package/dist/state/snapshot/utils.d.ts +1 -0
- package/dist/state/tkg.d.ts +1 -0
- package/dist/state/types/agent.d.ts +1 -0
- package/dist/state/types/base.d.ts +1 -0
- package/dist/state/types/blackboard.d.ts +1 -0
- package/dist/state/types/decision.d.ts +1 -0
- package/dist/state/types/index.d.ts +1 -0
- package/dist/state/types/knowledge.d.ts +1 -0
- package/dist/state/types/message.d.ts +1 -0
- package/dist/state/types/task.d.ts +1 -0
- package/dist/state/types/tkg.d.ts +1 -0
- package/dist/state/versioning.d.ts +1 -0
- package/dist/storage/index.d.ts +3 -0
- package/dist/storage/inmemory-adapter.d.ts +27 -0
- package/dist/storage/sqlite-adapter.d.ts +43 -0
- package/dist/storage/types.d.ts +129 -0
- package/package.json +76 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import type { AuditTrail } from "../audit/AuditTrail.js";
|
|
2
|
+
import { VotingSessionStore } from "./voting/VotingSessionStore.js";
|
|
3
|
+
export interface ConsensusVoterSpec {
|
|
4
|
+
id: string;
|
|
5
|
+
weight?: number;
|
|
6
|
+
}
|
|
7
|
+
export interface ConsensusIssue {
|
|
8
|
+
severity: "P0" | "P1" | "P2";
|
|
9
|
+
description: string;
|
|
10
|
+
}
|
|
11
|
+
export interface ConsensusVoteInput {
|
|
12
|
+
voterId: string;
|
|
13
|
+
score?: number;
|
|
14
|
+
approved: boolean;
|
|
15
|
+
issues?: ConsensusIssue[];
|
|
16
|
+
timestamp?: Date;
|
|
17
|
+
}
|
|
18
|
+
export interface ConsensusVote {
|
|
19
|
+
voterId: string;
|
|
20
|
+
score?: number;
|
|
21
|
+
approved: boolean;
|
|
22
|
+
issues?: ConsensusIssue[];
|
|
23
|
+
timestamp: Date;
|
|
24
|
+
}
|
|
25
|
+
export interface ConsensusConfig {
|
|
26
|
+
type: "majority" | "unanimous" | "weighted" | "score-threshold" | "custom";
|
|
27
|
+
voters: ConsensusVoterSpec[];
|
|
28
|
+
minRequired: number;
|
|
29
|
+
threshold?: number;
|
|
30
|
+
timeout?: string;
|
|
31
|
+
bestEffort?: string[];
|
|
32
|
+
customEvaluate?: (votes: ConsensusVote[]) => GateConsensusResult;
|
|
33
|
+
}
|
|
34
|
+
export interface ConsensusSession {
|
|
35
|
+
id: string;
|
|
36
|
+
config: ConsensusConfig;
|
|
37
|
+
startedAt: Date;
|
|
38
|
+
bestEffortMarked: string[];
|
|
39
|
+
}
|
|
40
|
+
export type GateConsensusResult = {
|
|
41
|
+
status: "pass";
|
|
42
|
+
votes: ConsensusVote[];
|
|
43
|
+
} | {
|
|
44
|
+
status: "fail";
|
|
45
|
+
reason: string;
|
|
46
|
+
votes: ConsensusVote[];
|
|
47
|
+
} | {
|
|
48
|
+
status: "pending";
|
|
49
|
+
received: number;
|
|
50
|
+
required: number;
|
|
51
|
+
} | {
|
|
52
|
+
status: "timeout";
|
|
53
|
+
partial: ConsensusVote[];
|
|
54
|
+
};
|
|
55
|
+
export interface ConsensusGate {
|
|
56
|
+
setup(config: ConsensusConfig): ConsensusSession;
|
|
57
|
+
registerVote(sessionId: string, vote: ConsensusVoteInput): void;
|
|
58
|
+
evaluate(sessionId: string): GateConsensusResult;
|
|
59
|
+
onTimeout(sessionId: string): GateConsensusResult;
|
|
60
|
+
markBestEffort(sessionId: string, voterId: string): void;
|
|
61
|
+
}
|
|
62
|
+
export declare class DefaultConsensusGate implements ConsensusGate {
|
|
63
|
+
private readonly options;
|
|
64
|
+
private readonly sessions;
|
|
65
|
+
private readonly votingSessionStore;
|
|
66
|
+
constructor(options: {
|
|
67
|
+
executionId: string;
|
|
68
|
+
auditTrail?: AuditTrail;
|
|
69
|
+
votingSessionStore?: VotingSessionStore;
|
|
70
|
+
now?: () => Date;
|
|
71
|
+
sessionIdFactory?: () => string;
|
|
72
|
+
});
|
|
73
|
+
setup(config: ConsensusConfig): ConsensusSession;
|
|
74
|
+
registerVote(sessionId: string, vote: ConsensusVoteInput): void;
|
|
75
|
+
evaluate(sessionId: string): GateConsensusResult;
|
|
76
|
+
onTimeout(sessionId: string): GateConsensusResult;
|
|
77
|
+
markBestEffort(sessionId: string, voterId: string): void;
|
|
78
|
+
private evaluateInternal;
|
|
79
|
+
private findVotingSessionId;
|
|
80
|
+
private findWeight;
|
|
81
|
+
private requireState;
|
|
82
|
+
private recordConsensusResult;
|
|
83
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../_legacy/blackboard/domains/consensus/ConsensusRuleEngine.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/agenda/AgendaStore.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/agenda/events.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/agenda/index.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/agenda/types.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../_legacy/blackboard/domains/consensus/types.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/voting/VotingSessionStore.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/voting/index.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../_legacy/blackboard/domains/voting/types.js";
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare enum OboraErrorCode {
|
|
2
|
+
CELL_TIMEOUT = "CELL_1001",
|
|
3
|
+
CELL_TOOL_DENIED = "CELL_1002",
|
|
4
|
+
CELL_LLM_ERROR = "CELL_1003",
|
|
5
|
+
CELL_ABORTED = "CELL_1004",
|
|
6
|
+
POLICY_DENY = "POLICY_2001",
|
|
7
|
+
POLICY_GATE_REQUIRED = "POLICY_2002",
|
|
8
|
+
POLICY_GATE_TIMEOUT = "POLICY_2003",
|
|
9
|
+
POLICY_GATE_REJECTED = "POLICY_2004",
|
|
10
|
+
POLICY_SANDBOX_VIOLATION = "POLICY_2005",
|
|
11
|
+
POLICY_RESOURCE_EXCEEDED = "POLICY_2006",
|
|
12
|
+
POLICY_LOAD_FAILED = "POLICY_2007",
|
|
13
|
+
CONSENSUS_FAIL = "CONSENSUS_3001",
|
|
14
|
+
CONSENSUS_TIMEOUT = "CONSENSUS_3002",
|
|
15
|
+
CONSENSUS_QUORUM_NOT_MET = "CONSENSUS_3003",
|
|
16
|
+
RECOVERY_RETRY_EXHAUSTED = "RECOVERY_4001",
|
|
17
|
+
RECOVERY_ROLLBACK_FAILED = "RECOVERY_4002",
|
|
18
|
+
RECOVERY_ESCALATION_TIMEOUT = "RECOVERY_4003",
|
|
19
|
+
ORCH_WORKFLOW_NOT_FOUND = "ORCH_5001",
|
|
20
|
+
ORCH_STEP_NOT_FOUND = "ORCH_5002",
|
|
21
|
+
ORCH_DEPENDENCY_FAILED = "ORCH_5003",
|
|
22
|
+
ORCH_EXECUTION_TIMEOUT = "ORCH_5004",
|
|
23
|
+
AUDIT_STORE_ERROR = "AUDIT_6001",
|
|
24
|
+
AUDIT_REPLAY_NOT_FOUND = "AUDIT_6002",
|
|
25
|
+
ADAPTER_LLM_UNAVAILABLE = "ADAPTER_7001",
|
|
26
|
+
ADAPTER_AUTH_FAILED = "ADAPTER_7002",
|
|
27
|
+
ADAPTER_TOOL_NOT_FOUND = "ADAPTER_7003"
|
|
28
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./OboraErrorCode.js";
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { type GateRuntimeContext } from "./types.js";
|
|
2
|
+
export interface GateAssignment {
|
|
3
|
+
gateId: string;
|
|
4
|
+
stepName: string;
|
|
5
|
+
assignedTo: string;
|
|
6
|
+
assignedAt: Date;
|
|
7
|
+
expiresAt?: Date;
|
|
8
|
+
status: "pending" | "completed" | "expired" | "reassigned";
|
|
9
|
+
reassignedFrom?: string;
|
|
10
|
+
reassignmentReason?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare class GateAssignmentManager {
|
|
13
|
+
private readonly context;
|
|
14
|
+
private readonly assignments;
|
|
15
|
+
constructor(context?: GateRuntimeContext);
|
|
16
|
+
assign(gateId: string, stepName: string, assignee: string, timeout?: string): GateAssignment;
|
|
17
|
+
/**
|
|
18
|
+
* Reassign a gate to a new assignee. The expiresAt is refreshed:
|
|
19
|
+
* - If an explicit `timeout` is provided, use it from now.
|
|
20
|
+
* - Otherwise, preserve the original timeout duration relative to new assignedAt.
|
|
21
|
+
* - If the original had no timeout, expiresAt remains undefined.
|
|
22
|
+
*/
|
|
23
|
+
reassign(gateId: string, newAssignee: string, reason: string, timeout?: string): GateAssignment;
|
|
24
|
+
expire(gateId: string): GateAssignment;
|
|
25
|
+
getAssignment(gateId: string): GateAssignment | undefined;
|
|
26
|
+
getActiveAssignments(): GateAssignment[];
|
|
27
|
+
private now;
|
|
28
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { type GateFallback, type GateRuntimeContext } from "./types.js";
|
|
2
|
+
export interface ApprovalStage {
|
|
3
|
+
name: string;
|
|
4
|
+
approvers: string[];
|
|
5
|
+
required: number;
|
|
6
|
+
timeout?: string;
|
|
7
|
+
fallback?: GateFallback;
|
|
8
|
+
escalation_to?: string;
|
|
9
|
+
condition?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface MultiStageGateConfig {
|
|
12
|
+
stages: ApprovalStage[];
|
|
13
|
+
on_reject?: "fail" | "restart" | "reassign";
|
|
14
|
+
allow_comments?: boolean;
|
|
15
|
+
track_history?: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface ApprovalDecision {
|
|
18
|
+
stageIndex: number;
|
|
19
|
+
stageName: string;
|
|
20
|
+
approver: string;
|
|
21
|
+
decision: "approved" | "rejected" | "abstained";
|
|
22
|
+
comment?: string;
|
|
23
|
+
timestamp: Date;
|
|
24
|
+
}
|
|
25
|
+
export interface MultiStageApprovalResult {
|
|
26
|
+
approved: boolean;
|
|
27
|
+
stages: Array<{
|
|
28
|
+
name: string;
|
|
29
|
+
status: "approved" | "rejected" | "pending" | "skipped" | "timeout";
|
|
30
|
+
decisions: ApprovalDecision[];
|
|
31
|
+
}>;
|
|
32
|
+
reason?: string;
|
|
33
|
+
/**
|
|
34
|
+
* Signals the distinct on_reject action the caller should take:
|
|
35
|
+
* - "fail": terminal rejection, no retry.
|
|
36
|
+
* - "restart": caller should reset all stages and re-collect decisions from stage 0.
|
|
37
|
+
* - "reassign": caller should reassign the rejecting stage to a different approver.
|
|
38
|
+
* Only set when a rejection occurs.
|
|
39
|
+
*/
|
|
40
|
+
action?: "fail" | "restart" | "reassign";
|
|
41
|
+
/** When action="reassign", identifies the stage index to reassign. */
|
|
42
|
+
reassignStageIndex?: number;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Stage-level timeout/fallback/escalation_to mapping to SLAManager:
|
|
46
|
+
*
|
|
47
|
+
* Each ApprovalStage may declare `timeout`, `fallback`, and `escalation_to`.
|
|
48
|
+
* These fields map to SLAManager.checkSLA() as follows:
|
|
49
|
+
* - stage.timeout → SLAConfig.timeout
|
|
50
|
+
* - stage.fallback → SLAConfig.fallback (defaults to "fail")
|
|
51
|
+
* - stage.escalation_to → SLAConfig.escalation_chain[0]
|
|
52
|
+
*
|
|
53
|
+
* The caller is responsible for constructing an SLAConfig from stage fields
|
|
54
|
+
* and invoking SLAManager.checkSLA() with the relevant GateAssignment.
|
|
55
|
+
* Use `buildSLAConfigFromStage()` below for the canonical mapping.
|
|
56
|
+
*/
|
|
57
|
+
export interface StageSLAConfig {
|
|
58
|
+
timeout: string;
|
|
59
|
+
fallback: GateFallback;
|
|
60
|
+
escalation_chain?: string[];
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Build an SLAConfig from stage-level timeout/fallback/escalation_to fields.
|
|
64
|
+
* Returns undefined if the stage has no timeout configured.
|
|
65
|
+
*/
|
|
66
|
+
export declare function buildSLAConfigFromStage(stage: ApprovalStage): StageSLAConfig | undefined;
|
|
67
|
+
export declare class MultiStageApprovalGate {
|
|
68
|
+
private readonly config;
|
|
69
|
+
private readonly context;
|
|
70
|
+
constructor(config: MultiStageGateConfig, context?: GateRuntimeContext);
|
|
71
|
+
evaluate(decisions: ApprovalDecision[]): Promise<MultiStageApprovalResult>;
|
|
72
|
+
private normalizeDecisions;
|
|
73
|
+
private pickStageDecisions;
|
|
74
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { GateAssignment } from "./GateAssignment.js";
|
|
2
|
+
import { type GateFallback, type GateRuntimeContext } from "./types.js";
|
|
3
|
+
export interface SLAConfig {
|
|
4
|
+
timeout: string;
|
|
5
|
+
warning_at?: string;
|
|
6
|
+
fallback: GateFallback;
|
|
7
|
+
escalation_chain?: string[];
|
|
8
|
+
}
|
|
9
|
+
export interface SLACheckResult {
|
|
10
|
+
status: "ok" | "warning" | "expired";
|
|
11
|
+
remainingMs?: number;
|
|
12
|
+
action?: "none" | "warn" | "escalate" | "auto-approve" | "fail";
|
|
13
|
+
escalationTarget?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class SLAManager {
|
|
16
|
+
private readonly context;
|
|
17
|
+
constructor(context?: GateRuntimeContext);
|
|
18
|
+
checkSLA(assignment: GateAssignment, config: SLAConfig): SLACheckResult;
|
|
19
|
+
private resolveExpired;
|
|
20
|
+
private now;
|
|
21
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type GateFallback = "fail" | "escalate" | "auto-approve";
|
|
2
|
+
export type HITLAuditEventType = "gate_assignment_created" | "gate_assignment_reassigned" | "gate_assignment_expired" | "gate_approval_decision" | "gate_sla_warning" | "gate_sla_expired";
|
|
3
|
+
export interface GateAuditEvent {
|
|
4
|
+
type: HITLAuditEventType;
|
|
5
|
+
payload: Record<string, unknown>;
|
|
6
|
+
}
|
|
7
|
+
export interface GateRuntimeContext {
|
|
8
|
+
emit?: (event: GateAuditEvent) => Promise<void> | void;
|
|
9
|
+
now?: () => Date;
|
|
10
|
+
conditionContext?: Record<string, unknown>;
|
|
11
|
+
}
|
|
12
|
+
export declare function parseDurationToMs(duration?: string): number | undefined;
|
|
13
|
+
/**
|
|
14
|
+
* Evaluate a gate condition expression.
|
|
15
|
+
*
|
|
16
|
+
* @throws {Error} When parsing or evaluation fails. Callers must handle this
|
|
17
|
+
* as a fail-closed error path (stage failure), not as a skipped stage.
|
|
18
|
+
*/
|
|
19
|
+
export declare function evaluateGateCondition(condition: string | undefined, context: Record<string, unknown>): boolean;
|