@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,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module knowledge
|
|
3
|
+
* @description 지식 관련 타입 정의 - Fact, Inference, Pattern
|
|
4
|
+
*/
|
|
5
|
+
import type { Identifiable, Timestamped } from './base';
|
|
6
|
+
import type { AgentId } from './base';
|
|
7
|
+
/**
|
|
8
|
+
* 추론 방법
|
|
9
|
+
* @description 사실로부터 결론을 도출하는 방법
|
|
10
|
+
*/
|
|
11
|
+
export type InferenceMethod = 'deduction' | 'induction' | 'abduction';
|
|
12
|
+
/**
|
|
13
|
+
* 사실 (Fact)
|
|
14
|
+
* @description 검증된 정보
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const fact: Fact = {
|
|
19
|
+
* id: 'fact-001',
|
|
20
|
+
* content: '2025년 Q4 매출이 전년 대비 20% 증가',
|
|
21
|
+
* source: createAgentId('analyst-agent'),
|
|
22
|
+
* confidence: 0.95,
|
|
23
|
+
* category: 'finance',
|
|
24
|
+
* tags: ['revenue', 'growth'],
|
|
25
|
+
* expiresAt: null,
|
|
26
|
+
* createdAt: new Date(),
|
|
27
|
+
* updatedAt: new Date(),
|
|
28
|
+
* };
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export interface Fact extends Identifiable, Timestamped {
|
|
32
|
+
/** 사실 내용 */
|
|
33
|
+
content: string;
|
|
34
|
+
/** 출처 에이전트 */
|
|
35
|
+
source: AgentId;
|
|
36
|
+
/** 신뢰도 (0.0 - 1.0) */
|
|
37
|
+
confidence: number;
|
|
38
|
+
/** 카테고리 */
|
|
39
|
+
category: string;
|
|
40
|
+
/** 태그 */
|
|
41
|
+
tags: string[];
|
|
42
|
+
/** 유효 기간 (만료 시간, null이면 영구) */
|
|
43
|
+
expiresAt: Date | null;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* 추론 (Inference)
|
|
47
|
+
* @description 사실들로부터 도출된 결론
|
|
48
|
+
*
|
|
49
|
+
* @example
|
|
50
|
+
* ```typescript
|
|
51
|
+
* const inference: Inference = {
|
|
52
|
+
* id: 'inference-001',
|
|
53
|
+
* conclusion: '고객 만족도가 매출 증가와 상관관계가 있음',
|
|
54
|
+
* premises: ['fact-001', 'fact-002'],
|
|
55
|
+
* source: createAgentId('analyst-agent'),
|
|
56
|
+
* confidence: 0.8,
|
|
57
|
+
* tags: ['correlation'],
|
|
58
|
+
* createdAt: new Date(),
|
|
59
|
+
* updatedAt: new Date(),
|
|
60
|
+
* };
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
export interface Inference extends Identifiable, Timestamped {
|
|
64
|
+
/** 결론 */
|
|
65
|
+
conclusion: string;
|
|
66
|
+
/** 전제 (참조하는 Fact ID들) */
|
|
67
|
+
premises: string[];
|
|
68
|
+
/** 추론한 에이전트 (deprecated: source 사용) */
|
|
69
|
+
derivedBy?: AgentId;
|
|
70
|
+
/** 출처 에이전트 */
|
|
71
|
+
source: AgentId;
|
|
72
|
+
/** 추론 방법 */
|
|
73
|
+
method?: InferenceMethod;
|
|
74
|
+
/** 신뢰도 */
|
|
75
|
+
confidence: number;
|
|
76
|
+
/** 태그 */
|
|
77
|
+
tags: string[];
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* 패턴 조건/결과 항목
|
|
81
|
+
*/
|
|
82
|
+
export interface PatternCondition {
|
|
83
|
+
type: string;
|
|
84
|
+
value: string;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* 패턴 (Pattern)
|
|
88
|
+
* @description 학습된 패턴
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```typescript
|
|
92
|
+
* const pattern: Pattern = {
|
|
93
|
+
* id: 'pattern-001',
|
|
94
|
+
* name: '매출 증가 패턴',
|
|
95
|
+
* description: '고객 만족도 상승 후 2달 내 매출 증가',
|
|
96
|
+
* conditions: [{ type: 'trigger', value: 'satisfaction_up' }],
|
|
97
|
+
* consequences: [{ type: 'result', value: 'revenue_increase' }],
|
|
98
|
+
* confidence: 0.85,
|
|
99
|
+
* tags: ['finance'],
|
|
100
|
+
* createdAt: new Date(),
|
|
101
|
+
* updatedAt: new Date(),
|
|
102
|
+
* };
|
|
103
|
+
* ```
|
|
104
|
+
*/
|
|
105
|
+
export interface Pattern extends Identifiable, Timestamped {
|
|
106
|
+
/** 패턴 이름 */
|
|
107
|
+
name: string;
|
|
108
|
+
/** 패턴 설명 */
|
|
109
|
+
description: string;
|
|
110
|
+
/** 패턴 조건 */
|
|
111
|
+
conditions: PatternCondition[];
|
|
112
|
+
/** 패턴 결과 */
|
|
113
|
+
consequences: PatternCondition[];
|
|
114
|
+
/** 신뢰도 */
|
|
115
|
+
confidence: number;
|
|
116
|
+
/** 태그 */
|
|
117
|
+
tags: string[];
|
|
118
|
+
/** 발견한 에이전트 (optional) */
|
|
119
|
+
discoveredBy?: AgentId;
|
|
120
|
+
/** 적용 횟수 */
|
|
121
|
+
usageCount?: number;
|
|
122
|
+
/** 성공률 */
|
|
123
|
+
successRate?: number;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* 사실 생성 옵션
|
|
127
|
+
* @description 새 사실 생성 시 필요한 필드
|
|
128
|
+
*/
|
|
129
|
+
export interface FactCreateInput {
|
|
130
|
+
/** 사실 내용 */
|
|
131
|
+
content: string;
|
|
132
|
+
/** 출처 에이전트 */
|
|
133
|
+
source: AgentId;
|
|
134
|
+
/** 신뢰도 */
|
|
135
|
+
confidence: number;
|
|
136
|
+
/** 카테고리 */
|
|
137
|
+
category: string;
|
|
138
|
+
/** 태그 */
|
|
139
|
+
tags?: string[];
|
|
140
|
+
/** 유효 기간 (선택) */
|
|
141
|
+
expiresAt?: Date | null;
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* 추론 생성 옵션
|
|
145
|
+
* @description 새 추론 생성 시 필요한 필드
|
|
146
|
+
*/
|
|
147
|
+
export interface InferenceCreateInput {
|
|
148
|
+
/** 결론 */
|
|
149
|
+
conclusion: string;
|
|
150
|
+
/** 전제 (참조하는 Fact ID들) */
|
|
151
|
+
premises: string[];
|
|
152
|
+
/** 출처 에이전트 */
|
|
153
|
+
source: AgentId;
|
|
154
|
+
/** 추론 방법 (optional) */
|
|
155
|
+
method?: InferenceMethod;
|
|
156
|
+
/** 신뢰도 */
|
|
157
|
+
confidence: number;
|
|
158
|
+
/** 태그 */
|
|
159
|
+
tags?: string[];
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* 패턴 생성 옵션
|
|
163
|
+
* @description 새 패턴 생성 시 필요한 필드
|
|
164
|
+
*/
|
|
165
|
+
export interface PatternCreateInput {
|
|
166
|
+
/** 패턴 이름 */
|
|
167
|
+
name: string;
|
|
168
|
+
/** 패턴 설명 */
|
|
169
|
+
description: string;
|
|
170
|
+
/** 패턴 조건 */
|
|
171
|
+
conditions: PatternCondition[];
|
|
172
|
+
/** 패턴 결과 */
|
|
173
|
+
consequences: PatternCondition[];
|
|
174
|
+
/** 신뢰도 */
|
|
175
|
+
confidence: number;
|
|
176
|
+
/** 태그 */
|
|
177
|
+
tags?: string[];
|
|
178
|
+
/** 발견한 에이전트 (optional) */
|
|
179
|
+
discoveredBy?: AgentId;
|
|
180
|
+
/** 초기 적용 횟수 */
|
|
181
|
+
usageCount?: number;
|
|
182
|
+
/** 초기 성공률 */
|
|
183
|
+
successRate?: number;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* 지식 검색 쿼리
|
|
187
|
+
* @description 지식 섹션에서 검색하기 위한 쿼리 옵션
|
|
188
|
+
*/
|
|
189
|
+
export interface KnowledgeQuery {
|
|
190
|
+
/** 검색할 카테고리 */
|
|
191
|
+
category?: string;
|
|
192
|
+
/** 검색할 태그 (복수) */
|
|
193
|
+
tags?: string[];
|
|
194
|
+
/** 검색할 태그 (단일) */
|
|
195
|
+
tag?: string;
|
|
196
|
+
/** 최소 신뢰도 */
|
|
197
|
+
minConfidence?: number;
|
|
198
|
+
/** 만료되지 않은 것만 검색 */
|
|
199
|
+
validOnly?: boolean;
|
|
200
|
+
/** 출처 에이전트 ID */
|
|
201
|
+
source?: AgentId;
|
|
202
|
+
/** 검색 텍스트 */
|
|
203
|
+
text?: string;
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* 추론 검색 쿼리
|
|
207
|
+
*/
|
|
208
|
+
export interface InferenceQuery {
|
|
209
|
+
/** 출처 에이전트 */
|
|
210
|
+
source?: AgentId;
|
|
211
|
+
/** 전제 포함 */
|
|
212
|
+
premises?: string[];
|
|
213
|
+
/** 최소 신뢰도 */
|
|
214
|
+
minConfidence?: number;
|
|
215
|
+
}
|
|
216
|
+
/**
|
|
217
|
+
* 패턴 검색 쿼리
|
|
218
|
+
*/
|
|
219
|
+
export interface PatternQuery {
|
|
220
|
+
/** 태그 */
|
|
221
|
+
tag?: string;
|
|
222
|
+
/** 최소 신뢰도 */
|
|
223
|
+
minConfidence?: number;
|
|
224
|
+
}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module message
|
|
3
|
+
* @description 메시지 관련 타입 정의
|
|
4
|
+
*/
|
|
5
|
+
import type { Identifiable, Timestamped } from './base';
|
|
6
|
+
import type { AgentId, TaskId } from './base';
|
|
7
|
+
/**
|
|
8
|
+
* 메시지 타입 enum
|
|
9
|
+
* @description 시스템 내 모든 메시지 유형
|
|
10
|
+
*/
|
|
11
|
+
export declare enum MessageType {
|
|
12
|
+
/** 상태 읽기 요청 */
|
|
13
|
+
STATE_READ = "state.read",
|
|
14
|
+
/** 상태 쓰기 요청 */
|
|
15
|
+
STATE_WRITE = "state.write",
|
|
16
|
+
/** 상태 구독 */
|
|
17
|
+
STATE_SUBSCRIBE = "state.subscribe",
|
|
18
|
+
/** 상태 변경 알림 */
|
|
19
|
+
STATE_UPDATED = "state.updated",
|
|
20
|
+
/** 안건 제출 요청 */
|
|
21
|
+
DECISION_REQUEST = "decision.request",
|
|
22
|
+
/** 의견 제출 */
|
|
23
|
+
OPINION_SUBMIT = "opinion.submit",
|
|
24
|
+
/** 투표 제출 */
|
|
25
|
+
VOTE_SUBMIT = "vote.submit",
|
|
26
|
+
/** 합의 도달 알림 */
|
|
27
|
+
CONSENSUS_REACHED = "consensus.reached",
|
|
28
|
+
/** 작업 할당 */
|
|
29
|
+
TASK_ASSIGN = "task.assign",
|
|
30
|
+
/** 작업 완료 */
|
|
31
|
+
TASK_COMPLETE = "task.complete",
|
|
32
|
+
/** 작업 실패 */
|
|
33
|
+
TASK_FAILED = "task.failed",
|
|
34
|
+
/** 작업 진행 상황 */
|
|
35
|
+
TASK_PROGRESS = "task.progress",
|
|
36
|
+
/** 사실 추가 */
|
|
37
|
+
KNOWLEDGE_FACT_ADD = "knowledge.fact.add",
|
|
38
|
+
/** 추론 추가 */
|
|
39
|
+
KNOWLEDGE_INFERENCE_ADD = "knowledge.inference.add",
|
|
40
|
+
/** 하트비트 */
|
|
41
|
+
HEARTBEAT = "heartbeat",
|
|
42
|
+
/** 에러 */
|
|
43
|
+
ERROR = "error",
|
|
44
|
+
/** 시스템 알림 */
|
|
45
|
+
SYSTEM_NOTIFICATION = "system.notification"
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* 메시지 기본 인터페이스
|
|
49
|
+
* @description 시스템 내에서 주고받는 모든 메시지의 기본 구조
|
|
50
|
+
* @typeParam T - 페이로드 타입
|
|
51
|
+
*
|
|
52
|
+
* @example
|
|
53
|
+
* ```typescript
|
|
54
|
+
* const message: Message<string> = {
|
|
55
|
+
* id: 'msg-001',
|
|
56
|
+
* type: MessageType.HEARTBEAT,
|
|
57
|
+
* from: createAgentId('agent-001'),
|
|
58
|
+
* to: 'broadcast',
|
|
59
|
+
* payload: 'ping',
|
|
60
|
+
* priority: 1,
|
|
61
|
+
* ttl: null,
|
|
62
|
+
* createdAt: new Date(),
|
|
63
|
+
* updatedAt: new Date(),
|
|
64
|
+
* };
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export interface Message<T = unknown> extends Identifiable, Timestamped {
|
|
68
|
+
/** 메시지 타입 */
|
|
69
|
+
type: MessageType;
|
|
70
|
+
/** 발신자 ID */
|
|
71
|
+
from: AgentId;
|
|
72
|
+
/** 수신자 ID ('broadcast'면 전체) */
|
|
73
|
+
to: AgentId | 'broadcast';
|
|
74
|
+
/** 메시지 내용 */
|
|
75
|
+
payload: T;
|
|
76
|
+
/** 상관 ID (요청-응답 연결용) */
|
|
77
|
+
correlationId?: string;
|
|
78
|
+
/** 우선순위 */
|
|
79
|
+
priority: number;
|
|
80
|
+
/** TTL (밀리초, null이면 무제한) */
|
|
81
|
+
ttl: number | null;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* 상태 읽기 요청 페이로드
|
|
85
|
+
* @description Blackboard의 특정 섹션을 읽기 위한 요청
|
|
86
|
+
*/
|
|
87
|
+
export interface StateReadPayload {
|
|
88
|
+
/** 읽을 섹션 */
|
|
89
|
+
section: 'state' | 'knowledge' | 'decisions';
|
|
90
|
+
/** 경로 */
|
|
91
|
+
path: string;
|
|
92
|
+
/** 쿼리 파라미터 */
|
|
93
|
+
query?: Record<string, unknown>;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* 상태 쓰기 요청 페이로드
|
|
97
|
+
* @description Blackboard의 특정 섹션에 쓰기 위한 요청
|
|
98
|
+
*/
|
|
99
|
+
export interface StateWritePayload {
|
|
100
|
+
/** 쓸 섹션 */
|
|
101
|
+
section: 'state' | 'knowledge' | 'decisions';
|
|
102
|
+
/** 경로 */
|
|
103
|
+
path: string;
|
|
104
|
+
/** 데이터 */
|
|
105
|
+
data: unknown;
|
|
106
|
+
/** 기대 버전 (optimistic locking용) */
|
|
107
|
+
expectedVersion?: number;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* 에러 페이로드
|
|
111
|
+
* @description 에러 발생 시 전달하는 정보
|
|
112
|
+
*/
|
|
113
|
+
export interface ErrorPayload {
|
|
114
|
+
/** 에러 코드 */
|
|
115
|
+
code: string;
|
|
116
|
+
/** 에러 메시지 */
|
|
117
|
+
message: string;
|
|
118
|
+
/** 상세 정보 */
|
|
119
|
+
details?: Record<string, unknown>;
|
|
120
|
+
/** 재시도 가능 여부 */
|
|
121
|
+
retryable: boolean;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* 하트비트 페이로드
|
|
125
|
+
* @description 에이전트 하트비트 정보
|
|
126
|
+
*/
|
|
127
|
+
export interface HeartbeatPayload {
|
|
128
|
+
/** 에이전트 ID */
|
|
129
|
+
agentId: AgentId;
|
|
130
|
+
/** 현재 작업 ID (없으면 null) */
|
|
131
|
+
currentTask?: TaskId | null;
|
|
132
|
+
/** 타임스탬프 */
|
|
133
|
+
timestamp: Date;
|
|
134
|
+
/** 추가 상태 정보 */
|
|
135
|
+
status?: Record<string, unknown>;
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* 메시지 전송 옵션
|
|
139
|
+
* @description 메시지 전송 시 설정 가능한 옵션
|
|
140
|
+
*/
|
|
141
|
+
export interface MessageSendOptions {
|
|
142
|
+
/** 수신자 ID */
|
|
143
|
+
to: AgentId | 'broadcast';
|
|
144
|
+
/** 메시지 타입 */
|
|
145
|
+
type: MessageType;
|
|
146
|
+
/** 우선순위 (기본: 1) */
|
|
147
|
+
priority?: number;
|
|
148
|
+
/** TTL (밀리초) */
|
|
149
|
+
ttl?: number | null;
|
|
150
|
+
/** 상관 ID */
|
|
151
|
+
correlationId?: string;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* 메시지 핸들러 타입
|
|
155
|
+
* @description 메시지를 처리하는 핸들러 함수의 타입
|
|
156
|
+
*/
|
|
157
|
+
export type MessageHandler<T = unknown> = (message: Message<T>) => void | Promise<void>;
|
|
158
|
+
/**
|
|
159
|
+
* 메시지 필터 타입
|
|
160
|
+
* @description 메시지를 필터링하는 조건 함수의 타입
|
|
161
|
+
*/
|
|
162
|
+
export type MessageFilter<T = unknown> = (message: Message<T>) => boolean;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module task
|
|
3
|
+
* @description 작업(Task) 관련 타입 정의
|
|
4
|
+
*/
|
|
5
|
+
import type { Identifiable, Timestamped, Versioned } from './base';
|
|
6
|
+
import type { AgentId, TaskId } from './base';
|
|
7
|
+
/**
|
|
8
|
+
* 작업 상태 enum
|
|
9
|
+
* @description 작업의 진행 상태를 나타냄
|
|
10
|
+
*/
|
|
11
|
+
export declare enum TaskStatus {
|
|
12
|
+
/** 대기 중 */
|
|
13
|
+
PENDING = "pending",
|
|
14
|
+
/** 실행 중 */
|
|
15
|
+
RUNNING = "running",
|
|
16
|
+
/** 완료됨 */
|
|
17
|
+
COMPLETED = "completed",
|
|
18
|
+
/** 실패함 */
|
|
19
|
+
FAILED = "failed",
|
|
20
|
+
/** 취소됨 */
|
|
21
|
+
CANCELLED = "cancelled"
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* 작업 우선순위
|
|
25
|
+
* @description 작업의 중요도를 나타내는 순위
|
|
26
|
+
*/
|
|
27
|
+
export declare enum TaskPriority {
|
|
28
|
+
LOW = 0,
|
|
29
|
+
NORMAL = 1,
|
|
30
|
+
HIGH = 2,
|
|
31
|
+
CRITICAL = 3
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 작업 정의
|
|
35
|
+
* @description 시스템에서 실행할 작업의 정의
|
|
36
|
+
*
|
|
37
|
+
* @example
|
|
38
|
+
* ```typescript
|
|
39
|
+
* const task: Task = {
|
|
40
|
+
* id: createTaskId('task-001'),
|
|
41
|
+
* name: '데이터 분석',
|
|
42
|
+
* description: '사용자 행동 데이터 분석',
|
|
43
|
+
* assignedTo: createAgentId('agent-001'),
|
|
44
|
+
* status: TaskStatus.PENDING,
|
|
45
|
+
* priority: TaskPriority.HIGH,
|
|
46
|
+
* inputs: { dataset: 'users-2026-01' },
|
|
47
|
+
* outputs: null,
|
|
48
|
+
* dependsOn: [],
|
|
49
|
+
* error: null,
|
|
50
|
+
* startedAt: null,
|
|
51
|
+
* completedAt: null,
|
|
52
|
+
* timeout: 3600000,
|
|
53
|
+
* version: 1,
|
|
54
|
+
* createdAt: new Date(),
|
|
55
|
+
* updatedAt: new Date(),
|
|
56
|
+
* };
|
|
57
|
+
* ```
|
|
58
|
+
*/
|
|
59
|
+
export interface Task extends Identifiable<TaskId>, Timestamped, Versioned {
|
|
60
|
+
/** 작업 이름 */
|
|
61
|
+
name: string;
|
|
62
|
+
/** 작업 설명 */
|
|
63
|
+
description: string;
|
|
64
|
+
/** 할당된 에이전트 */
|
|
65
|
+
assignedTo: AgentId | null;
|
|
66
|
+
/** 현재 상태 */
|
|
67
|
+
status: TaskStatus;
|
|
68
|
+
/** 우선순위 */
|
|
69
|
+
priority: TaskPriority;
|
|
70
|
+
/** 입력 데이터 */
|
|
71
|
+
inputs: Record<string, unknown>;
|
|
72
|
+
/** 출력 데이터 (완료 시) */
|
|
73
|
+
outputs: Record<string, unknown> | null;
|
|
74
|
+
/** 의존하는 작업 ID 목록 */
|
|
75
|
+
dependsOn: TaskId[];
|
|
76
|
+
/** 에러 정보 (실패 시) */
|
|
77
|
+
error: TaskError | null;
|
|
78
|
+
/** 시작 시간 */
|
|
79
|
+
startedAt: Date | null;
|
|
80
|
+
/** 완료 시간 */
|
|
81
|
+
completedAt: Date | null;
|
|
82
|
+
/** 제한 시간 (밀리초) */
|
|
83
|
+
timeout: number | null;
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* 작업 에러 정보
|
|
87
|
+
* @description 작업 실행 중 발생한 에러의 상세 정보
|
|
88
|
+
*/
|
|
89
|
+
export interface TaskError {
|
|
90
|
+
/** 에러 코드 */
|
|
91
|
+
code: string;
|
|
92
|
+
/** 에러 메시지 */
|
|
93
|
+
message: string;
|
|
94
|
+
/** 스택 트레이스 */
|
|
95
|
+
stack?: string;
|
|
96
|
+
/** 재시도 가능 여부 */
|
|
97
|
+
retryable: boolean;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* 작업 생성 옵션
|
|
101
|
+
* @description 새 작업 생성 시 필요한 필드
|
|
102
|
+
*/
|
|
103
|
+
export interface TaskCreateInput {
|
|
104
|
+
/** 작업 이름 */
|
|
105
|
+
name: string;
|
|
106
|
+
/** 작업 설명 */
|
|
107
|
+
description: string;
|
|
108
|
+
/** 할당할 에이전트 (선택) */
|
|
109
|
+
assignedTo?: AgentId | null;
|
|
110
|
+
/** 우선순위 (기본: NORMAL) */
|
|
111
|
+
priority?: TaskPriority;
|
|
112
|
+
/** 입력 데이터 */
|
|
113
|
+
inputs?: Record<string, unknown>;
|
|
114
|
+
/** 의존하는 작업 ID 목록 */
|
|
115
|
+
dependsOn?: TaskId[];
|
|
116
|
+
/** 제한 시간 (밀리초) */
|
|
117
|
+
timeout?: number | null;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* 작업 업데이트 옵션
|
|
121
|
+
* @description 작업 상태 업데이트를 위한 선택적 필드
|
|
122
|
+
*/
|
|
123
|
+
export interface TaskUpdateInput {
|
|
124
|
+
/** 새로운 상태 */
|
|
125
|
+
status?: TaskStatus;
|
|
126
|
+
/** 할당된 에이전트 */
|
|
127
|
+
assignedTo?: AgentId | null;
|
|
128
|
+
/** 우선순위 */
|
|
129
|
+
priority?: TaskPriority;
|
|
130
|
+
/** 출력 데이터 */
|
|
131
|
+
outputs?: Record<string, unknown> | null;
|
|
132
|
+
/** 에러 정보 */
|
|
133
|
+
error?: TaskError | null;
|
|
134
|
+
/** 시작 시간 */
|
|
135
|
+
startedAt?: Date | null;
|
|
136
|
+
/** 완료 시간 */
|
|
137
|
+
completedAt?: Date | null;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* 작업 진행 상황
|
|
141
|
+
* @description 작업 실행 중의 진행 상황 보고
|
|
142
|
+
*/
|
|
143
|
+
export interface TaskProgress {
|
|
144
|
+
/** 작업 ID */
|
|
145
|
+
taskId: TaskId;
|
|
146
|
+
/** 진행률 (0.0 - 1.0) */
|
|
147
|
+
progress: number;
|
|
148
|
+
/** 현재 단계 설명 */
|
|
149
|
+
currentStep: string;
|
|
150
|
+
/** 남은 예상 시간 (밀리초) */
|
|
151
|
+
estimatedTimeRemaining?: number;
|
|
152
|
+
/** 추가 메시지 */
|
|
153
|
+
message?: string;
|
|
154
|
+
}
|