@roackb2/heddle 1.4.0 → 1.5.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/README.md +10 -2
- package/dist/examples/conversation-engine.js +2 -2
- package/dist/examples/conversation-engine.js.map +1 -1
- package/dist/examples/cyberloop-observer.js +2 -2
- package/dist/examples/cyberloop-observer.js.map +1 -1
- package/dist/examples/heartbeat-scheduler.js +15 -11
- package/dist/examples/heartbeat-scheduler.js.map +1 -1
- package/dist/examples/heartbeat.js +5 -5
- package/dist/examples/heartbeat.js.map +1 -1
- package/dist/examples/host-events.js +4 -4
- package/dist/examples/host-events.js.map +1 -1
- package/dist/examples/programmatic-loop.js +5 -6
- package/dist/examples/programmatic-loop.js.map +1 -1
- package/dist/examples/repo-investigator.js +2 -2
- package/dist/examples/repo-investigator.js.map +1 -1
- package/dist/src/cli/ask.d.ts +1 -1
- package/dist/src/cli/ask.d.ts.map +1 -1
- package/dist/src/cli/ask.js +6 -6
- package/dist/src/cli/ask.js.map +1 -1
- package/dist/src/cli/chat/adapters/slash-command-context.d.ts.map +1 -1
- package/dist/src/cli/chat/adapters/slash-command-context.js +5 -5
- package/dist/src/cli/chat/adapters/slash-command-context.js.map +1 -1
- package/dist/src/cli/chat/components/RuntimeHostInterstitial.d.ts +1 -1
- package/dist/src/cli/chat/components/RuntimeHostInterstitial.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.d.ts +1 -2
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js +6 -7
- package/dist/src/cli/chat/hooks/controllers/run/tui-direct-shell.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.d.ts +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-run-loop-events.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-tool-approval.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/run/tui-tool-approval.js +7 -8
- package/dist/src/cli/chat/hooks/controllers/run/tui-tool-approval.js.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js +9 -9
- package/dist/src/cli/chat/hooks/controllers/useAgentRunController.js.map +1 -1
- package/dist/src/cli/chat/hooks/useChatSessions.js +2 -2
- package/dist/src/cli/chat/hooks/useChatSessions.js.map +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts +1 -1
- package/dist/src/cli/chat/hooks/useChatStatusSummary.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useProjectApprovals.d.ts +2 -2
- package/dist/src/cli/chat/hooks/useProjectApprovals.d.ts.map +1 -1
- package/dist/src/cli/chat/hooks/useProjectApprovals.js +17 -8
- package/dist/src/cli/chat/hooks/useProjectApprovals.js.map +1 -1
- package/dist/src/cli/chat/utils/runtime.d.ts +2 -2
- package/dist/src/cli/chat/utils/runtime.d.ts.map +1 -1
- package/dist/src/cli/chat/utils/runtime.js +8 -8
- package/dist/src/cli/chat/utils/runtime.js.map +1 -1
- package/dist/src/cli/heartbeat/output.d.ts +2 -2
- package/dist/src/cli/heartbeat/output.d.ts.map +1 -1
- package/dist/src/cli/heartbeat/output.js +7 -5
- package/dist/src/cli/heartbeat/output.js.map +1 -1
- package/dist/src/cli/heartbeat/store.js +2 -2
- package/dist/src/cli/heartbeat/store.js.map +1 -1
- package/dist/src/cli/heartbeat/task-commands.js +42 -30
- package/dist/src/cli/heartbeat/task-commands.js.map +1 -1
- package/dist/src/cli/heartbeat/types.d.ts +1 -1
- package/dist/src/cli/heartbeat/types.d.ts.map +1 -1
- package/dist/src/cli/heartbeat/worker.d.ts.map +1 -1
- package/dist/src/cli/heartbeat/worker.js +26 -17
- package/dist/src/cli/heartbeat/worker.js.map +1 -1
- package/dist/src/cli/main.js +12 -12
- package/dist/src/cli/main.js.map +1 -1
- package/dist/src/cli/remote/control-plane-client.d.ts +10 -10
- package/dist/src/cli/remote/control-plane-client.d.ts.map +1 -1
- package/dist/src/core/agent/constants.d.ts +4 -0
- package/dist/src/core/agent/constants.d.ts.map +1 -0
- package/dist/src/core/agent/constants.js +4 -0
- package/dist/src/core/agent/constants.js.map +1 -0
- package/dist/src/core/agent/context/index.d.ts +3 -0
- package/dist/src/core/agent/context/index.d.ts.map +1 -0
- package/dist/src/core/agent/context/index.js +2 -0
- package/dist/src/core/agent/context/index.js.map +1 -0
- package/dist/src/core/agent/context/run-context-builder.d.ts +11 -0
- package/dist/src/core/agent/context/run-context-builder.d.ts.map +1 -0
- package/dist/src/core/agent/context/run-context-builder.js +76 -0
- package/dist/src/core/agent/context/run-context-builder.js.map +1 -0
- package/dist/src/core/agent/context/types.d.ts +11 -0
- package/dist/src/core/agent/context/types.d.ts.map +1 -0
- package/dist/src/core/agent/context/types.js +2 -0
- package/dist/src/core/agent/context/types.js.map +1 -0
- package/dist/src/core/agent/finish/index.d.ts +3 -0
- package/dist/src/core/agent/finish/index.d.ts.map +1 -0
- package/dist/src/core/agent/finish/index.js +2 -0
- package/dist/src/core/agent/finish/index.js.map +1 -0
- package/dist/src/core/agent/finish/run-finisher.d.ts +16 -0
- package/dist/src/core/agent/finish/run-finisher.d.ts.map +1 -0
- package/dist/src/core/agent/finish/run-finisher.js +67 -0
- package/dist/src/core/agent/finish/run-finisher.js.map +1 -0
- package/dist/src/core/agent/finish/types.d.ts +23 -0
- package/dist/src/core/agent/finish/types.d.ts.map +1 -0
- package/dist/src/core/agent/finish/types.js +2 -0
- package/dist/src/core/agent/finish/types.js.map +1 -0
- package/dist/src/core/agent/history/history-sanitizer.d.ts +15 -0
- package/dist/src/core/agent/history/history-sanitizer.d.ts.map +1 -0
- package/dist/src/core/agent/history/history-sanitizer.js +40 -0
- package/dist/src/core/agent/history/history-sanitizer.js.map +1 -0
- package/dist/src/core/agent/history/index.d.ts +3 -0
- package/dist/src/core/agent/history/index.d.ts.map +1 -0
- package/dist/src/core/agent/history/index.js +2 -0
- package/dist/src/core/agent/history/index.js.map +1 -0
- package/dist/src/core/agent/history/types.d.ts +16 -0
- package/dist/src/core/agent/history/types.d.ts.map +1 -0
- package/dist/src/core/agent/history/types.js +2 -0
- package/dist/src/core/agent/history/types.js.map +1 -0
- package/dist/src/core/agent/index.d.ts +3 -0
- package/dist/src/core/agent/index.d.ts.map +1 -0
- package/dist/src/core/agent/index.js +2 -0
- package/dist/src/core/agent/index.js.map +1 -0
- package/dist/src/core/agent/memory/index.d.ts +3 -0
- package/dist/src/core/agent/memory/index.d.ts.map +1 -0
- package/dist/src/core/agent/memory/index.js +2 -0
- package/dist/src/core/agent/memory/index.js.map +1 -0
- package/dist/src/core/agent/memory/memory-checkpoint-tracker.d.ts +16 -0
- package/dist/src/core/agent/memory/memory-checkpoint-tracker.d.ts.map +1 -0
- package/dist/src/core/agent/memory/memory-checkpoint-tracker.js +92 -0
- package/dist/src/core/agent/memory/memory-checkpoint-tracker.js.map +1 -0
- package/dist/src/core/agent/memory/types.d.ts +13 -0
- package/dist/src/core/agent/memory/types.d.ts.map +1 -0
- package/dist/src/core/agent/memory/types.js +2 -0
- package/dist/src/core/agent/memory/types.js.map +1 -0
- package/dist/src/core/agent/model/index.d.ts +3 -0
- package/dist/src/core/agent/model/index.d.ts.map +1 -0
- package/dist/src/core/agent/model/index.js +2 -0
- package/dist/src/core/agent/model/index.js.map +1 -0
- package/dist/src/core/agent/model/model-turn-service.d.ts +12 -0
- package/dist/src/core/agent/model/model-turn-service.d.ts.map +1 -0
- package/dist/src/core/agent/model/model-turn-service.js +103 -0
- package/dist/src/core/agent/model/model-turn-service.js.map +1 -0
- package/dist/src/core/agent/model/types.d.ts +12 -0
- package/dist/src/core/agent/model/types.d.ts.map +1 -0
- package/dist/src/core/agent/model/types.js +2 -0
- package/dist/src/core/agent/model/types.js.map +1 -0
- package/dist/src/core/agent/mutation/index.d.ts +3 -0
- package/dist/src/core/agent/mutation/index.d.ts.map +1 -0
- package/dist/src/core/agent/mutation/index.js +2 -0
- package/dist/src/core/agent/mutation/index.js.map +1 -0
- package/dist/src/core/agent/mutation/mutation-tracker.d.ts +20 -0
- package/dist/src/core/agent/mutation/mutation-tracker.d.ts.map +1 -0
- package/dist/src/core/agent/mutation/mutation-tracker.js +75 -0
- package/dist/src/core/agent/mutation/mutation-tracker.js.map +1 -0
- package/dist/src/core/agent/mutation/types.d.ts +13 -0
- package/dist/src/core/agent/mutation/types.d.ts.map +1 -0
- package/dist/src/core/agent/mutation/types.js +2 -0
- package/dist/src/core/agent/mutation/types.js.map +1 -0
- package/dist/src/core/agent/planning/index.d.ts +3 -0
- package/dist/src/core/agent/planning/index.d.ts.map +1 -0
- package/dist/src/core/agent/planning/index.js +2 -0
- package/dist/src/core/agent/planning/index.js.map +1 -0
- package/dist/src/core/agent/planning/plan-state-parser.d.ts +9 -0
- package/dist/src/core/agent/planning/plan-state-parser.d.ts.map +1 -0
- package/dist/src/core/agent/planning/plan-state-parser.js +35 -0
- package/dist/src/core/agent/planning/plan-state-parser.js.map +1 -0
- package/dist/src/core/agent/planning/types.d.ts +7 -0
- package/dist/src/core/agent/planning/types.d.ts.map +1 -0
- package/dist/src/core/agent/planning/types.js +2 -0
- package/dist/src/core/agent/planning/types.js.map +1 -0
- package/dist/src/core/agent/service.d.ts +10 -0
- package/dist/src/core/agent/service.d.ts.map +1 -0
- package/dist/src/core/agent/service.js +44 -0
- package/dist/src/core/agent/service.js.map +1 -0
- package/dist/src/core/agent/tools/index.d.ts +4 -0
- package/dist/src/core/agent/tools/index.d.ts.map +1 -0
- package/dist/src/core/agent/tools/index.js +3 -0
- package/dist/src/core/agent/tools/index.js.map +1 -0
- package/dist/src/core/agent/tools/tool-dispatcher.d.ts +47 -0
- package/dist/src/core/agent/tools/tool-dispatcher.d.ts.map +1 -0
- package/dist/src/core/agent/tools/tool-dispatcher.js +123 -0
- package/dist/src/core/agent/tools/tool-dispatcher.js.map +1 -0
- package/dist/src/core/agent/tools/tool-turn-service.d.ts +13 -0
- package/dist/src/core/agent/tools/tool-turn-service.d.ts.map +1 -0
- package/dist/src/core/agent/tools/tool-turn-service.js +129 -0
- package/dist/src/core/agent/tools/tool-turn-service.js.map +1 -0
- package/dist/src/core/agent/tools/types.d.ts +19 -0
- package/dist/src/core/agent/tools/types.d.ts.map +1 -0
- package/dist/src/core/agent/tools/types.js +2 -0
- package/dist/src/core/agent/tools/types.js.map +1 -0
- package/dist/src/core/agent/types.d.ts +83 -0
- package/dist/src/core/agent/types.d.ts.map +1 -0
- package/dist/src/core/agent/types.js +2 -0
- package/dist/src/core/agent/types.js.map +1 -0
- package/dist/src/core/agent/utils/abort.d.ts +2 -0
- package/dist/src/core/agent/utils/abort.d.ts.map +1 -0
- package/dist/src/core/agent/utils/abort.js +9 -0
- package/dist/src/core/agent/utils/abort.js.map +1 -0
- package/dist/src/core/agent/utils/index.d.ts +4 -0
- package/dist/src/core/agent/utils/index.d.ts.map +1 -0
- package/dist/src/core/agent/utils/index.js +4 -0
- package/dist/src/core/agent/utils/index.js.map +1 -0
- package/dist/src/core/agent/utils/serialization.d.ts +2 -0
- package/dist/src/core/agent/utils/serialization.d.ts.map +1 -0
- package/dist/src/core/agent/utils/serialization.js +11 -0
- package/dist/src/core/agent/utils/serialization.js.map +1 -0
- package/dist/src/core/agent/utils/tool-input.d.ts +3 -0
- package/dist/src/core/agent/utils/tool-input.d.ts.map +1 -0
- package/dist/src/core/agent/{util.js → utils/tool-input.js} +1 -28
- package/dist/src/core/agent/utils/tool-input.js.map +1 -0
- package/dist/src/core/approvals/index.d.ts +5 -0
- package/dist/src/core/approvals/index.d.ts.map +1 -0
- package/dist/src/core/approvals/index.js +4 -0
- package/dist/src/core/approvals/index.js.map +1 -0
- package/dist/src/core/approvals/pending-approval.d.ts +17 -0
- package/dist/src/core/approvals/pending-approval.d.ts.map +1 -0
- package/dist/src/core/approvals/pending-approval.js +27 -0
- package/dist/src/core/approvals/pending-approval.js.map +1 -0
- package/dist/src/core/approvals/policies.d.ts +20 -0
- package/dist/src/core/approvals/policies.d.ts.map +1 -0
- package/dist/src/core/approvals/policies.js +56 -0
- package/dist/src/core/approvals/policies.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/codec.d.ts +17 -0
- package/dist/src/core/approvals/remembered-rules/codec.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/codec.js +117 -0
- package/dist/src/core/approvals/remembered-rules/codec.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/index.d.ts +5 -0
- package/dist/src/core/approvals/remembered-rules/index.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/index.js +4 -0
- package/dist/src/core/approvals/remembered-rules/index.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/repository.d.ts +11 -0
- package/dist/src/core/approvals/remembered-rules/repository.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/repository.js +29 -0
- package/dist/src/core/approvals/remembered-rules/repository.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/schemas.d.ts +55 -0
- package/dist/src/core/approvals/remembered-rules/schemas.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/schemas.js +24 -0
- package/dist/src/core/approvals/remembered-rules/schemas.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/service.d.ts +28 -0
- package/dist/src/core/approvals/remembered-rules/service.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/service.js +200 -0
- package/dist/src/core/approvals/remembered-rules/service.js.map +1 -0
- package/dist/src/core/approvals/remembered-rules/types.d.ts +12 -0
- package/dist/src/core/approvals/remembered-rules/types.d.ts.map +1 -0
- package/dist/src/core/approvals/remembered-rules/types.js +2 -0
- package/dist/src/core/approvals/remembered-rules/types.js.map +1 -0
- package/dist/src/core/approvals/service.d.ts +13 -0
- package/dist/src/core/approvals/service.d.ts.map +1 -0
- package/dist/src/core/approvals/service.js +45 -0
- package/dist/src/core/approvals/service.js.map +1 -0
- package/dist/src/core/approvals/types.d.ts +24 -1
- package/dist/src/core/approvals/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/compaction/summarizer/service.d.ts.map +1 -1
- package/dist/src/core/chat/engine/compaction/summarizer/service.js +4 -4
- package/dist/src/core/chat/engine/compaction/summarizer/service.js.map +1 -1
- package/dist/src/core/chat/engine/compaction/types.d.ts +1 -1
- package/dist/src/core/chat/engine/compaction/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/context/turn-context-builder.js +2 -2
- package/dist/src/core/chat/engine/turns/context/turn-context-builder.js.map +1 -1
- package/dist/src/core/chat/engine/turns/host/types.d.ts +2 -2
- package/dist/src/core/chat/engine/turns/host/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/memory/turn-memory-maintenance.d.ts +1 -1
- package/dist/src/core/chat/engine/turns/memory/types.d.ts +2 -2
- package/dist/src/core/chat/engine/turns/memory/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/persistence/types.d.ts +2 -2
- package/dist/src/core/chat/engine/turns/persistence/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.js +5 -5
- package/dist/src/core/chat/engine/turns/runtime/runtime-resolver.js.map +1 -1
- package/dist/src/core/chat/engine/turns/runtime/types.d.ts +1 -1
- package/dist/src/core/chat/engine/turns/runtime/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/turns/service.js +2 -2
- package/dist/src/core/chat/engine/turns/service.js.map +1 -1
- package/dist/src/core/chat/engine/turns/types.d.ts +4 -4
- package/dist/src/core/chat/engine/turns/types.d.ts.map +1 -1
- package/dist/src/core/chat/engine/types.d.ts +1 -1
- package/dist/src/core/commands/slash/modules/context.d.ts +2 -2
- package/dist/src/core/commands/slash/modules/context.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/heartbeat/heartbeat-commands.d.ts +1 -1
- package/dist/src/core/commands/slash/modules/heartbeat/heartbeat-commands.d.ts.map +1 -1
- package/dist/src/core/commands/slash/modules/heartbeat/heartbeat-commands.js +20 -18
- package/dist/src/core/commands/slash/modules/heartbeat/heartbeat-commands.js.map +1 -1
- package/dist/src/core/heartbeat/checkpoint/index.d.ts +4 -0
- package/dist/src/core/heartbeat/checkpoint/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/index.js +3 -0
- package/dist/src/core/heartbeat/checkpoint/index.js.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/repository.d.ts +9 -0
- package/dist/src/core/heartbeat/checkpoint/repository.d.ts.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/repository.js +33 -0
- package/dist/src/core/heartbeat/checkpoint/repository.js.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/service.d.ts +5 -0
- package/dist/src/core/heartbeat/checkpoint/service.d.ts.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/service.js +24 -0
- package/dist/src/core/heartbeat/checkpoint/service.js.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/types.d.ts +17 -0
- package/dist/src/core/heartbeat/checkpoint/types.d.ts.map +1 -0
- package/dist/src/core/heartbeat/checkpoint/types.js +2 -0
- package/dist/src/core/heartbeat/checkpoint/types.js.map +1 -0
- package/dist/src/core/heartbeat/index.d.ts +11 -0
- package/dist/src/core/heartbeat/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/index.js +6 -0
- package/dist/src/core/heartbeat/index.js.map +1 -0
- package/dist/src/core/heartbeat/scheduler/index.d.ts +4 -0
- package/dist/src/core/heartbeat/scheduler/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/scheduler/index.js +3 -0
- package/dist/src/core/heartbeat/scheduler/index.js.map +1 -0
- package/dist/src/core/heartbeat/scheduler/runner.d.ts +19 -0
- package/dist/src/core/heartbeat/scheduler/runner.d.ts.map +1 -0
- package/dist/src/core/heartbeat/scheduler/runner.js +16 -0
- package/dist/src/core/heartbeat/scheduler/runner.js.map +1 -0
- package/dist/src/core/heartbeat/scheduler/service.d.ts +8 -0
- package/dist/src/core/heartbeat/scheduler/service.d.ts.map +1 -0
- package/dist/src/core/heartbeat/scheduler/service.js +125 -0
- package/dist/src/core/heartbeat/scheduler/service.js.map +1 -0
- package/dist/src/core/{runtime/heartbeat-scheduler.d.ts → heartbeat/scheduler/types.d.ts} +5 -18
- package/dist/src/core/heartbeat/scheduler/types.d.ts.map +1 -0
- package/dist/src/core/heartbeat/scheduler/types.js +2 -0
- package/dist/src/core/heartbeat/scheduler/types.js.map +1 -0
- package/dist/src/core/heartbeat/tasks/index.d.ts +4 -0
- package/dist/src/core/heartbeat/tasks/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/tasks/index.js +3 -0
- package/dist/src/core/heartbeat/tasks/index.js.map +1 -0
- package/dist/src/core/heartbeat/tasks/repository.d.ts +24 -0
- package/dist/src/core/heartbeat/tasks/repository.d.ts.map +1 -0
- package/dist/src/core/heartbeat/tasks/repository.js +116 -0
- package/dist/src/core/heartbeat/tasks/repository.js.map +1 -0
- package/dist/src/core/heartbeat/tasks/schemas.d.ts +212 -0
- package/dist/src/core/heartbeat/tasks/schemas.d.ts.map +1 -0
- package/dist/src/core/heartbeat/tasks/schemas.js +78 -0
- package/dist/src/core/heartbeat/tasks/schemas.js.map +1 -0
- package/dist/src/core/heartbeat/tasks/task-state.d.ts +33 -0
- package/dist/src/core/heartbeat/tasks/task-state.d.ts.map +1 -0
- package/dist/src/core/heartbeat/tasks/task-state.js +122 -0
- package/dist/src/core/heartbeat/tasks/task-state.js.map +1 -0
- package/dist/src/core/{runtime/heartbeat-task-store.d.ts → heartbeat/tasks/types.d.ts} +24 -29
- package/dist/src/core/heartbeat/tasks/types.d.ts.map +1 -0
- package/dist/src/core/heartbeat/tasks/types.js +2 -0
- package/dist/src/core/heartbeat/tasks/types.js.map +1 -0
- package/dist/src/core/heartbeat/views/index.d.ts +4 -0
- package/dist/src/core/heartbeat/views/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/views/index.js +3 -0
- package/dist/src/core/heartbeat/views/index.js.map +1 -0
- package/dist/src/core/heartbeat/views/lucid-presenter.d.ts +20 -0
- package/dist/src/core/heartbeat/views/lucid-presenter.d.ts.map +1 -0
- package/dist/src/core/heartbeat/views/lucid-presenter.js +112 -0
- package/dist/src/core/heartbeat/views/lucid-presenter.js.map +1 -0
- package/dist/src/core/heartbeat/views/presenter.d.ts +22 -0
- package/dist/src/core/heartbeat/views/presenter.d.ts.map +1 -0
- package/dist/src/core/heartbeat/views/presenter.js +50 -0
- package/dist/src/core/heartbeat/views/presenter.js.map +1 -0
- package/dist/src/core/{runtime/heartbeat-lucid.d.ts → heartbeat/views/types.d.ts} +24 -8
- package/dist/src/core/heartbeat/views/types.d.ts.map +1 -0
- package/dist/src/core/heartbeat/views/types.js +2 -0
- package/dist/src/core/heartbeat/views/types.js.map +1 -0
- package/dist/src/core/heartbeat/wake/decision.d.ts +13 -0
- package/dist/src/core/heartbeat/wake/decision.d.ts.map +1 -0
- package/dist/src/core/heartbeat/wake/decision.js +24 -0
- package/dist/src/core/heartbeat/wake/decision.js.map +1 -0
- package/dist/src/core/heartbeat/wake/index.d.ts +5 -0
- package/dist/src/core/heartbeat/wake/index.d.ts.map +1 -0
- package/dist/src/core/heartbeat/wake/index.js +4 -0
- package/dist/src/core/heartbeat/wake/index.js.map +1 -0
- package/dist/src/core/heartbeat/wake/prompt.d.ts +11 -0
- package/dist/src/core/heartbeat/wake/prompt.d.ts.map +1 -0
- package/dist/src/core/heartbeat/wake/prompt.js +39 -0
- package/dist/src/core/heartbeat/wake/prompt.js.map +1 -0
- package/dist/src/core/heartbeat/wake/service.d.ts +6 -0
- package/dist/src/core/heartbeat/wake/service.d.ts.map +1 -0
- package/dist/src/core/heartbeat/wake/service.js +75 -0
- package/dist/src/core/heartbeat/wake/service.js.map +1 -0
- package/dist/src/core/heartbeat/wake/types.d.ts +33 -0
- package/dist/src/core/heartbeat/wake/types.d.ts.map +1 -0
- package/dist/src/core/heartbeat/wake/types.js +2 -0
- package/dist/src/core/heartbeat/wake/types.js.map +1 -0
- package/dist/src/core/llm/factory.js +2 -2
- package/dist/src/core/llm/factory.js.map +1 -1
- package/dist/src/core/llm/model-policy.d.ts +1 -1
- package/dist/src/core/llm/model-policy.d.ts.map +1 -1
- package/dist/src/core/memory/maintainer.js +2 -2
- package/dist/src/core/memory/maintainer.js.map +1 -1
- package/dist/src/core/observability/conversation-activity.d.ts +1 -1
- package/dist/src/core/observability/conversation-activity.d.ts.map +1 -1
- package/dist/src/core/runtime/credentials/index.d.ts +3 -0
- package/dist/src/core/runtime/credentials/index.d.ts.map +1 -0
- package/dist/src/core/runtime/credentials/index.js +2 -0
- package/dist/src/core/runtime/credentials/index.js.map +1 -0
- package/dist/src/core/runtime/credentials/service.d.ts +22 -0
- package/dist/src/core/runtime/credentials/service.d.ts.map +1 -0
- package/dist/src/core/runtime/credentials/service.js +83 -0
- package/dist/src/core/runtime/credentials/service.js.map +1 -0
- package/dist/src/core/runtime/credentials/types.d.ts +22 -0
- package/dist/src/core/runtime/credentials/types.d.ts.map +1 -0
- package/dist/src/core/runtime/credentials/types.js +2 -0
- package/dist/src/core/runtime/credentials/types.js.map +1 -0
- package/dist/src/core/runtime/daemon/host-resolver.d.ts +7 -0
- package/dist/src/core/runtime/daemon/host-resolver.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/host-resolver.js +61 -0
- package/dist/src/core/runtime/daemon/host-resolver.js.map +1 -0
- package/dist/src/core/runtime/daemon/index.d.ts +6 -0
- package/dist/src/core/runtime/daemon/index.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/index.js +5 -0
- package/dist/src/core/runtime/daemon/index.js.map +1 -0
- package/dist/src/core/runtime/daemon/messages.d.ts +13 -0
- package/dist/src/core/runtime/daemon/messages.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/messages.js +43 -0
- package/dist/src/core/runtime/daemon/messages.js.map +1 -0
- package/dist/src/core/runtime/daemon/registry-repository.d.ts +12 -0
- package/dist/src/core/runtime/daemon/registry-repository.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/registry-repository.js +33 -0
- package/dist/src/core/runtime/daemon/registry-repository.js.map +1 -0
- package/dist/src/core/runtime/daemon/registry-service.d.ts +16 -0
- package/dist/src/core/runtime/daemon/registry-service.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/registry-service.js +141 -0
- package/dist/src/core/runtime/daemon/registry-service.js.map +1 -0
- package/dist/src/core/runtime/daemon/schemas.d.ts +96 -0
- package/dist/src/core/runtime/daemon/schemas.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/schemas.js +36 -0
- package/dist/src/core/runtime/daemon/schemas.js.map +1 -0
- package/dist/src/core/runtime/daemon/types.d.ts +66 -0
- package/dist/src/core/runtime/daemon/types.d.ts.map +1 -0
- package/dist/src/core/runtime/daemon/types.js +2 -0
- package/dist/src/core/runtime/daemon/types.js.map +1 -0
- package/dist/src/core/runtime/loop/checkpoint.d.ts +33 -0
- package/dist/src/core/runtime/loop/checkpoint.d.ts.map +1 -0
- package/dist/src/core/runtime/loop/checkpoint.js +69 -0
- package/dist/src/core/runtime/loop/checkpoint.js.map +1 -0
- package/dist/src/core/runtime/loop/index.d.ts +4 -0
- package/dist/src/core/runtime/loop/index.d.ts.map +1 -0
- package/dist/src/core/runtime/loop/index.js +3 -0
- package/dist/src/core/runtime/loop/index.js.map +1 -0
- package/dist/src/core/runtime/loop/service.d.ts +11 -0
- package/dist/src/core/runtime/loop/service.d.ts.map +1 -0
- package/dist/src/core/runtime/loop/service.js +179 -0
- package/dist/src/core/runtime/loop/service.js.map +1 -0
- package/dist/src/core/runtime/{events.d.ts → loop/types.d.ts} +38 -38
- package/dist/src/core/runtime/loop/types.d.ts.map +1 -0
- package/dist/src/core/runtime/loop/types.js +2 -0
- package/dist/src/core/runtime/loop/types.js.map +1 -0
- package/dist/src/core/runtime/tools/index.d.ts +3 -0
- package/dist/src/core/runtime/tools/index.d.ts.map +1 -0
- package/dist/src/core/runtime/tools/index.js +2 -0
- package/dist/src/core/runtime/tools/index.js.map +1 -0
- package/dist/src/core/runtime/tools/service.d.ts +11 -0
- package/dist/src/core/runtime/tools/service.d.ts.map +1 -0
- package/dist/src/core/runtime/tools/service.js +54 -0
- package/dist/src/core/runtime/tools/service.js.map +1 -0
- package/dist/src/core/runtime/{default-tools.d.ts → tools/types.d.ts} +2 -4
- package/dist/src/core/runtime/tools/types.d.ts.map +1 -0
- package/dist/src/core/runtime/tools/types.js +2 -0
- package/dist/src/core/runtime/tools/types.js.map +1 -0
- package/dist/src/core/runtime/workspaces/index.d.ts +5 -0
- package/dist/src/core/runtime/workspaces/index.d.ts.map +1 -0
- package/dist/src/core/runtime/workspaces/index.js +4 -0
- package/dist/src/core/runtime/workspaces/index.js.map +1 -0
- package/dist/src/core/runtime/workspaces/repository.d.ts +14 -0
- package/dist/src/core/runtime/workspaces/repository.d.ts.map +1 -0
- package/dist/src/core/runtime/workspaces/repository.js +38 -0
- package/dist/src/core/runtime/workspaces/repository.js.map +1 -0
- package/dist/src/core/runtime/workspaces/schemas.d.ts +42 -0
- package/dist/src/core/runtime/workspaces/schemas.d.ts.map +1 -0
- package/dist/src/core/runtime/workspaces/schemas.js +26 -0
- package/dist/src/core/runtime/workspaces/schemas.js.map +1 -0
- package/dist/src/core/runtime/workspaces/service.d.ts +15 -0
- package/dist/src/core/runtime/workspaces/service.d.ts.map +1 -0
- package/dist/src/core/runtime/workspaces/service.js +177 -0
- package/dist/src/core/runtime/workspaces/service.js.map +1 -0
- package/dist/src/core/runtime/workspaces/types.d.ts +42 -0
- package/dist/src/core/runtime/workspaces/types.d.ts.map +1 -0
- package/dist/src/core/runtime/workspaces/types.js +2 -0
- package/dist/src/core/runtime/workspaces/types.js.map +1 -0
- package/dist/src/core/tools/toolkit.d.ts +1 -1
- package/dist/src/core/tools/toolkit.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/view-image.d.ts +1 -1
- package/dist/src/core/tools/toolkits/external-context/view-image.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/view-image.js +2 -2
- package/dist/src/core/tools/toolkits/external-context/view-image.js.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/web-search.d.ts +1 -1
- package/dist/src/core/tools/toolkits/external-context/web-search.d.ts.map +1 -1
- package/dist/src/core/tools/toolkits/external-context/web-search.js +2 -2
- package/dist/src/core/tools/toolkits/external-context/web-search.js.map +1 -1
- package/dist/src/core/types.d.ts +1 -1
- package/dist/src/index.d.ts +24 -26
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +12 -14
- package/dist/src/index.js.map +1 -1
- package/dist/src/integrations/cyberloop.d.ts +5 -4
- package/dist/src/integrations/cyberloop.d.ts.map +1 -1
- package/dist/src/integrations/cyberloop.js.map +1 -1
- package/dist/src/server/app.js +5 -5
- package/dist/src/server/app.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/ask.js +3 -3
- package/dist/src/server/features/control-plane/controllers/ask.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/chat-session-events.d.ts +1 -1
- package/dist/src/server/features/control-plane/controllers/chat-session-events.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js +7 -7
- package/dist/src/server/features/control-plane/controllers/chat-sessions-controller.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/control-plane-state.js +7 -7
- package/dist/src/server/features/control-plane/controllers/control-plane-state.js.map +1 -1
- package/dist/src/server/features/control-plane/controllers/heartbeat.d.ts +6 -5
- package/dist/src/server/features/control-plane/controllers/heartbeat.d.ts.map +1 -1
- package/dist/src/server/features/control-plane/controllers/heartbeat.js +31 -19
- package/dist/src/server/features/control-plane/controllers/heartbeat.js.map +1 -1
- package/dist/src/server/features/control-plane/router.d.ts +7 -7
- package/dist/src/server/features/control-plane/router.js +9 -9
- package/dist/src/server/features/control-plane/router.js.map +1 -1
- package/dist/src/server/features/control-plane/types.d.ts +5 -5
- package/dist/src/server/features/control-plane/types.d.ts.map +1 -1
- package/dist/src/server/index.d.ts.map +1 -1
- package/dist/src/server/index.js +7 -7
- package/dist/src/server/index.js.map +1 -1
- package/dist/src/server/router.d.ts +9 -9
- package/dist/src/server/types.d.ts +2 -2
- package/dist/src/server/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/src/cli/chat/state/approval-rules.d.ts +0 -3
- package/dist/src/cli/chat/state/approval-rules.d.ts.map +0 -1
- package/dist/src/cli/chat/state/approval-rules.js +0 -2
- package/dist/src/cli/chat/state/approval-rules.js.map +0 -1
- package/dist/src/core/agent/history.d.ts +0 -3
- package/dist/src/core/agent/history.d.ts.map +0 -1
- package/dist/src/core/agent/history.js +0 -36
- package/dist/src/core/agent/history.js.map +0 -1
- package/dist/src/core/agent/mutation-tracking.d.ts +0 -13
- package/dist/src/core/agent/mutation-tracking.d.ts.map +0 -1
- package/dist/src/core/agent/mutation-tracking.js +0 -71
- package/dist/src/core/agent/mutation-tracking.js.map +0 -1
- package/dist/src/core/agent/post-mutation.d.ts +0 -8
- package/dist/src/core/agent/post-mutation.d.ts.map +0 -1
- package/dist/src/core/agent/post-mutation.js +0 -9
- package/dist/src/core/agent/post-mutation.js.map +0 -1
- package/dist/src/core/agent/progress-reminders.d.ts +0 -10
- package/dist/src/core/agent/progress-reminders.d.ts.map +0 -1
- package/dist/src/core/agent/progress-reminders.js +0 -13
- package/dist/src/core/agent/progress-reminders.js.map +0 -1
- package/dist/src/core/agent/run-agent.d.ts +0 -41
- package/dist/src/core/agent/run-agent.d.ts.map +0 -1
- package/dist/src/core/agent/run-agent.js +0 -490
- package/dist/src/core/agent/run-agent.js.map +0 -1
- package/dist/src/core/agent/tool-dispatch.d.ts +0 -36
- package/dist/src/core/agent/tool-dispatch.d.ts.map +0 -1
- package/dist/src/core/agent/tool-dispatch.js +0 -120
- package/dist/src/core/agent/tool-dispatch.js.map +0 -1
- package/dist/src/core/agent/util.d.ts +0 -6
- package/dist/src/core/agent/util.d.ts.map +0 -1
- package/dist/src/core/agent/util.js.map +0 -1
- package/dist/src/core/approvals/default-policies.d.ts +0 -10
- package/dist/src/core/approvals/default-policies.d.ts.map +0 -1
- package/dist/src/core/approvals/default-policies.js +0 -37
- package/dist/src/core/approvals/default-policies.js.map +0 -1
- package/dist/src/core/approvals/policy-chain.d.ts +0 -9
- package/dist/src/core/approvals/policy-chain.d.ts.map +0 -1
- package/dist/src/core/approvals/policy-chain.js +0 -36
- package/dist/src/core/approvals/policy-chain.js.map +0 -1
- package/dist/src/core/approvals/remembered-rules.d.ts +0 -22
- package/dist/src/core/approvals/remembered-rules.d.ts.map +0 -1
- package/dist/src/core/approvals/remembered-rules.js +0 -284
- package/dist/src/core/approvals/remembered-rules.js.map +0 -1
- package/dist/src/core/approvals/surface.d.ts +0 -20
- package/dist/src/core/approvals/surface.d.ts.map +0 -1
- package/dist/src/core/approvals/surface.js +0 -22
- package/dist/src/core/approvals/surface.js.map +0 -1
- package/dist/src/core/runtime/agent-loop.d.ts +0 -45
- package/dist/src/core/runtime/agent-loop.d.ts.map +0 -1
- package/dist/src/core/runtime/agent-loop.js +0 -200
- package/dist/src/core/runtime/agent-loop.js.map +0 -1
- package/dist/src/core/runtime/api-keys.d.ts +0 -35
- package/dist/src/core/runtime/api-keys.d.ts.map +0 -1
- package/dist/src/core/runtime/api-keys.js +0 -78
- package/dist/src/core/runtime/api-keys.js.map +0 -1
- package/dist/src/core/runtime/daemon-registry.d.ts +0 -44
- package/dist/src/core/runtime/daemon-registry.d.ts.map +0 -1
- package/dist/src/core/runtime/daemon-registry.js +0 -147
- package/dist/src/core/runtime/daemon-registry.js.map +0 -1
- package/dist/src/core/runtime/default-tools.d.ts.map +0 -1
- package/dist/src/core/runtime/default-tools.js +0 -49
- package/dist/src/core/runtime/default-tools.js.map +0 -1
- package/dist/src/core/runtime/events.d.ts.map +0 -1
- package/dist/src/core/runtime/events.js +0 -41
- package/dist/src/core/runtime/events.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-lucid.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-lucid.js +0 -188
- package/dist/src/core/runtime/heartbeat-lucid.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-scheduler.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-scheduler.js +0 -135
- package/dist/src/core/runtime/heartbeat-scheduler.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-store.d.ts +0 -20
- package/dist/src/core/runtime/heartbeat-store.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-store.js +0 -42
- package/dist/src/core/runtime/heartbeat-store.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-task-state.d.ts +0 -5
- package/dist/src/core/runtime/heartbeat-task-state.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-task-state.js +0 -81
- package/dist/src/core/runtime/heartbeat-task-state.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-task-store.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-task-store.js +0 -96
- package/dist/src/core/runtime/heartbeat-task-store.js.map +0 -1
- package/dist/src/core/runtime/heartbeat-views.d.ts +0 -52
- package/dist/src/core/runtime/heartbeat-views.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat-views.js +0 -62
- package/dist/src/core/runtime/heartbeat-views.js.map +0 -1
- package/dist/src/core/runtime/heartbeat.d.ts +0 -41
- package/dist/src/core/runtime/heartbeat.d.ts.map +0 -1
- package/dist/src/core/runtime/heartbeat.js +0 -113
- package/dist/src/core/runtime/heartbeat.js.map +0 -1
- package/dist/src/core/runtime/runtime-hosts.d.ts +0 -30
- package/dist/src/core/runtime/runtime-hosts.d.ts.map +0 -1
- package/dist/src/core/runtime/runtime-hosts.js +0 -95
- package/dist/src/core/runtime/runtime-hosts.js.map +0 -1
- package/dist/src/core/runtime/workspaces.d.ts +0 -55
- package/dist/src/core/runtime/workspaces.d.ts.map +0 -1
- package/dist/src/core/runtime/workspaces.js +0 -168
- package/dist/src/core/runtime/workspaces.js.map +0 -1
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { join } from 'node:path';
|
|
2
|
-
import { createToolkitToolBundle } from '../tools/toolkit.js';
|
|
3
|
-
import { codingAwarenessToolkit } from '../tools/toolkits/coding-awareness/toolkit.js';
|
|
4
|
-
import { codingFilesToolkit } from '../tools/toolkits/coding-files/toolkit.js';
|
|
5
|
-
import { externalContextToolkit } from '../tools/toolkits/external-context/toolkit.js';
|
|
6
|
-
import { knowledgeToolkit } from '../tools/toolkits/knowledge/toolkit.js';
|
|
7
|
-
import { internalToolkit } from '../tools/toolkits/internal/toolkit.js';
|
|
8
|
-
import { shellProcessToolkit } from '../tools/toolkits/shell-process/toolkit.js';
|
|
9
|
-
export function createDefaultAgentTools(options) {
|
|
10
|
-
const workspaceRoot = options.workspaceRoot ?? process.cwd();
|
|
11
|
-
const memoryDir = options.memoryDir ??
|
|
12
|
-
join(workspaceRoot, options.stateDir ?? '.heddle', 'memory');
|
|
13
|
-
const memoryMode = options.memoryMode ?? 'read-and-record';
|
|
14
|
-
return createToolkitToolBundle({
|
|
15
|
-
toolkits: createDefaultToolkits({ includePlanTool: options.includePlanTool }),
|
|
16
|
-
context: {
|
|
17
|
-
workspaceRoot,
|
|
18
|
-
model: options.model,
|
|
19
|
-
apiKey: options.apiKey,
|
|
20
|
-
providerCredentialSource: options.providerCredentialSource,
|
|
21
|
-
credentialStorePath: options.credentialStorePath,
|
|
22
|
-
memoryDir,
|
|
23
|
-
memoryMode,
|
|
24
|
-
searchIgnoreDirs: options.searchIgnoreDirs,
|
|
25
|
-
},
|
|
26
|
-
});
|
|
27
|
-
}
|
|
28
|
-
function createDefaultToolkits(args) {
|
|
29
|
-
return [
|
|
30
|
-
codingAwarenessToolkit,
|
|
31
|
-
codingFilesToolkit,
|
|
32
|
-
externalContextToolkit,
|
|
33
|
-
knowledgeToolkit,
|
|
34
|
-
createDefaultInternalToolkit({ includePlanTool: args.includePlanTool }),
|
|
35
|
-
shellProcessToolkit,
|
|
36
|
-
];
|
|
37
|
-
}
|
|
38
|
-
function createDefaultInternalToolkit(args) {
|
|
39
|
-
if (args.includePlanTool ?? true) {
|
|
40
|
-
return internalToolkit;
|
|
41
|
-
}
|
|
42
|
-
return {
|
|
43
|
-
id: internalToolkit.id,
|
|
44
|
-
createTools(context) {
|
|
45
|
-
return internalToolkit.createTools(context).filter((tool) => tool.name !== 'update_plan');
|
|
46
|
-
},
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=default-tools.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"default-tools.js","sourceRoot":"","sources":["../../../../src/core/runtime/default-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,uBAAuB,EAAoB,MAAM,qBAAqB,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,2CAA2C,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,uCAAuC,CAAC;AACxE,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAgBjF,MAAM,UAAU,uBAAuB,CAAC,OAAiC;IACvE,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAC7D,MAAM,SAAS,GACb,OAAO,CAAC,SAAS;QACjB,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,IAAI,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB,CAAC;IAE3D,OAAO,uBAAuB,CAAC;QAC7B,QAAQ,EAAE,qBAAqB,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7E,OAAO,EAAE;YACP,aAAa;YACb,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,wBAAwB,EAAE,OAAO,CAAC,wBAAwB;YAC1D,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,SAAS;YACT,UAAU;YACV,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;SAC3C;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,IAE9B;IACC,OAAO;QACL,sBAAsB;QACtB,kBAAkB;QAClB,sBAAsB;QACtB,gBAAgB;QAChB,4BAA4B,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC;QACvE,mBAAmB;KACpB,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CAAC,IAErC;IACC,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;QACjC,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,OAAO;QACL,EAAE,EAAE,eAAe,CAAC,EAAE;QACtB,WAAW,CAAC,OAAO;YACjB,OAAO,eAAe,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;QAC5F,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/events.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
export function createFinishedAgentLoopState(args) {
|
|
2
|
-
return {
|
|
3
|
-
status: 'finished',
|
|
4
|
-
runId: args.runId,
|
|
5
|
-
goal: args.goal,
|
|
6
|
-
model: args.model,
|
|
7
|
-
provider: args.provider,
|
|
8
|
-
workspaceRoot: args.workspaceRoot,
|
|
9
|
-
startedAt: args.startedAt,
|
|
10
|
-
finishedAt: args.finishedAt,
|
|
11
|
-
outcome: args.result.outcome,
|
|
12
|
-
summary: args.result.summary,
|
|
13
|
-
usage: args.result.usage,
|
|
14
|
-
transcript: args.result.transcript,
|
|
15
|
-
trace: args.result.trace,
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
export function createAgentLoopCheckpoint(state, options = {}) {
|
|
19
|
-
return {
|
|
20
|
-
version: 1,
|
|
21
|
-
runId: state.runId,
|
|
22
|
-
createdAt: options.createdAt ?? new Date().toISOString(),
|
|
23
|
-
state,
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Generate a unique run ID for event correlation.
|
|
28
|
-
* Format: run_<timestamp>_<random>
|
|
29
|
-
*/
|
|
30
|
-
export function generateRunId() {
|
|
31
|
-
const timestamp = Date.now().toString(36);
|
|
32
|
-
const random = Math.random().toString(36).slice(2, 6);
|
|
33
|
-
return `run_${timestamp}_${random}`;
|
|
34
|
-
}
|
|
35
|
-
export function getHistoryFromAgentLoopState(state) {
|
|
36
|
-
return state.transcript;
|
|
37
|
-
}
|
|
38
|
-
export function getHistoryFromAgentLoopCheckpoint(checkpoint) {
|
|
39
|
-
return getHistoryFromAgentLoopState(checkpoint.state);
|
|
40
|
-
}
|
|
41
|
-
//# sourceMappingURL=events.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../../src/core/runtime/events.ts"],"names":[],"mappings":"AAsHA,MAAM,UAAU,4BAA4B,CAAC,IAS5C;IACC,OAAO;QACL,MAAM,EAAE,UAAU;QAClB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,aAAa,EAAE,IAAI,CAAC,aAAa;QACjC,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,UAAU,EAAE,IAAI,CAAC,UAAU;QAC3B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;QAC5B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;QAC5B,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;QACxB,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU;QAClC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,yBAAyB,CACvC,KAAqB,EACrB,UAAkC,EAAE;IAEpC,OAAO;QACL,OAAO,EAAE,CAAC;QACV,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,OAAO,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACxD,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa;IAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,OAAO,OAAO,SAAS,IAAI,MAAM,EAAE,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,KAAqB;IAChE,OAAO,KAAK,CAAC,UAAU,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,UAA+B;IAC/E,OAAO,4BAA4B,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-lucid.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-lucid.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEhF,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAErG,MAAM,MAAM,4BAA4B,GAAG;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB;IAAE,KAAK,EAAE,cAAc,CAAC;IAAC,IAAI,EAAE;QAAE,MAAM,EAAE,4BAA4B,CAAA;KAAE,CAAA;CAAE,GACzE;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,8BAA8B,CAAA;KAAE,CAAA;CAAE,GAC/E;IAAE,KAAK,EAAE,gBAAgB,CAAC;IAAC,IAAI,EAAE;QAAE,QAAQ,EAAE,8BAA8B,CAAA;KAAE,CAAA;CAAE,CAAC;AAEpF,MAAM,MAAM,mBAAmB,GAAG;IAChC,eAAe,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;CAC9C,CAAC;AAEF,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,mBAAmB,GAAG,gBAAgB,CAc9F;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,iBAAiB,EACvB,OAAO,GAAE,mBAAwB,GAChC,iBAAiB,EAAE,CA2CrB;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,gBAAgB,EACrB,OAAO,GAAE,mBAAwB,GAChC,iBAAiB,EAAE,CAyCrB;AAED,wBAAgB,sCAAsC,CACpD,KAAK,EAAE,uBAAuB,EAC9B,OAAO,GAAE,mBAAwB,GAChC,iBAAiB,EAAE,CA0FrB"}
|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
export function heartbeatTaskStatusToLucidStatus(status) {
|
|
2
|
-
switch (status) {
|
|
3
|
-
case 'running':
|
|
4
|
-
return 'running';
|
|
5
|
-
case 'waiting':
|
|
6
|
-
case 'idle':
|
|
7
|
-
return 'asleep';
|
|
8
|
-
case 'complete':
|
|
9
|
-
return 'terminated';
|
|
10
|
-
case 'blocked':
|
|
11
|
-
return 'blocked';
|
|
12
|
-
case 'failed':
|
|
13
|
-
return 'failed';
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
export function heartbeatTaskViewToLucidMessages(task, options = {}) {
|
|
17
|
-
const agentId = resolveAgentId(task.taskId, options);
|
|
18
|
-
const timestamp = task.lastRunAt ?? task.nextRunAt ?? new Date().toISOString();
|
|
19
|
-
const messages = [
|
|
20
|
-
{
|
|
21
|
-
event: 'agent_status',
|
|
22
|
-
data: {
|
|
23
|
-
status: {
|
|
24
|
-
agent_id: agentId,
|
|
25
|
-
status: heartbeatTaskStatusToLucidStatus(task.status),
|
|
26
|
-
timestamp,
|
|
27
|
-
},
|
|
28
|
-
},
|
|
29
|
-
},
|
|
30
|
-
];
|
|
31
|
-
if (task.progress) {
|
|
32
|
-
messages.push({
|
|
33
|
-
event: 'agent_progress',
|
|
34
|
-
data: {
|
|
35
|
-
progress: {
|
|
36
|
-
agent_id: agentId,
|
|
37
|
-
progress: task.progress,
|
|
38
|
-
timestamp,
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
});
|
|
42
|
-
}
|
|
43
|
-
if (task.summary) {
|
|
44
|
-
messages.push({
|
|
45
|
-
event: 'agent_response',
|
|
46
|
-
data: {
|
|
47
|
-
response: {
|
|
48
|
-
agent_id: agentId,
|
|
49
|
-
response: task.summary,
|
|
50
|
-
timestamp,
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
});
|
|
54
|
-
}
|
|
55
|
-
return messages;
|
|
56
|
-
}
|
|
57
|
-
export function heartbeatRunViewToLucidMessages(run, options = {}) {
|
|
58
|
-
const agentId = resolveAgentId(run.taskId, options);
|
|
59
|
-
const timestamp = run.createdAt;
|
|
60
|
-
const messages = [
|
|
61
|
-
{
|
|
62
|
-
event: 'agent_status',
|
|
63
|
-
data: {
|
|
64
|
-
status: {
|
|
65
|
-
agent_id: agentId,
|
|
66
|
-
status: heartbeatTaskStatusToLucidStatus(run.status),
|
|
67
|
-
timestamp,
|
|
68
|
-
},
|
|
69
|
-
},
|
|
70
|
-
},
|
|
71
|
-
];
|
|
72
|
-
if (run.progress) {
|
|
73
|
-
messages.push({
|
|
74
|
-
event: 'agent_progress',
|
|
75
|
-
data: {
|
|
76
|
-
progress: {
|
|
77
|
-
agent_id: agentId,
|
|
78
|
-
progress: run.progress,
|
|
79
|
-
timestamp,
|
|
80
|
-
},
|
|
81
|
-
},
|
|
82
|
-
});
|
|
83
|
-
}
|
|
84
|
-
messages.push({
|
|
85
|
-
event: 'agent_response',
|
|
86
|
-
data: {
|
|
87
|
-
response: {
|
|
88
|
-
agent_id: agentId,
|
|
89
|
-
response: run.summary,
|
|
90
|
-
timestamp,
|
|
91
|
-
},
|
|
92
|
-
},
|
|
93
|
-
});
|
|
94
|
-
return messages;
|
|
95
|
-
}
|
|
96
|
-
export function heartbeatSchedulerEventToLucidMessages(event, options = {}) {
|
|
97
|
-
if (event.type === 'heartbeat.scheduler.started' || event.type === 'heartbeat.scheduler.stopped') {
|
|
98
|
-
return [];
|
|
99
|
-
}
|
|
100
|
-
const agentId = resolveAgentId(event.taskId, options);
|
|
101
|
-
switch (event.type) {
|
|
102
|
-
case 'heartbeat.task.due':
|
|
103
|
-
return [];
|
|
104
|
-
case 'heartbeat.task.started':
|
|
105
|
-
return [
|
|
106
|
-
{
|
|
107
|
-
event: 'agent_status',
|
|
108
|
-
data: {
|
|
109
|
-
status: {
|
|
110
|
-
agent_id: agentId,
|
|
111
|
-
status: heartbeatTaskStatusToLucidStatus(event.status),
|
|
112
|
-
timestamp: event.timestamp,
|
|
113
|
-
},
|
|
114
|
-
},
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
event: 'agent_progress',
|
|
118
|
-
data: {
|
|
119
|
-
progress: {
|
|
120
|
-
agent_id: agentId,
|
|
121
|
-
progress: event.progress,
|
|
122
|
-
timestamp: event.timestamp,
|
|
123
|
-
},
|
|
124
|
-
},
|
|
125
|
-
},
|
|
126
|
-
];
|
|
127
|
-
case 'heartbeat.task.finished':
|
|
128
|
-
return [
|
|
129
|
-
{
|
|
130
|
-
event: 'agent_status',
|
|
131
|
-
data: {
|
|
132
|
-
status: {
|
|
133
|
-
agent_id: agentId,
|
|
134
|
-
status: heartbeatTaskStatusToLucidStatus(event.status),
|
|
135
|
-
timestamp: event.timestamp,
|
|
136
|
-
},
|
|
137
|
-
},
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
event: 'agent_progress',
|
|
141
|
-
data: {
|
|
142
|
-
progress: {
|
|
143
|
-
agent_id: agentId,
|
|
144
|
-
progress: event.progress,
|
|
145
|
-
timestamp: event.timestamp,
|
|
146
|
-
},
|
|
147
|
-
},
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
event: 'agent_response',
|
|
151
|
-
data: {
|
|
152
|
-
response: {
|
|
153
|
-
agent_id: agentId,
|
|
154
|
-
response: event.summary,
|
|
155
|
-
timestamp: event.timestamp,
|
|
156
|
-
},
|
|
157
|
-
},
|
|
158
|
-
},
|
|
159
|
-
];
|
|
160
|
-
case 'heartbeat.task.failed':
|
|
161
|
-
return [
|
|
162
|
-
{
|
|
163
|
-
event: 'agent_status',
|
|
164
|
-
data: {
|
|
165
|
-
status: {
|
|
166
|
-
agent_id: agentId,
|
|
167
|
-
status: heartbeatTaskStatusToLucidStatus(event.status),
|
|
168
|
-
timestamp: event.timestamp,
|
|
169
|
-
},
|
|
170
|
-
},
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
event: 'agent_progress',
|
|
174
|
-
data: {
|
|
175
|
-
progress: {
|
|
176
|
-
agent_id: agentId,
|
|
177
|
-
progress: `${event.progress}${event.error ? ` Error: ${event.error}` : ''}`,
|
|
178
|
-
timestamp: event.timestamp,
|
|
179
|
-
},
|
|
180
|
-
},
|
|
181
|
-
},
|
|
182
|
-
];
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
function resolveAgentId(taskId, options) {
|
|
186
|
-
return options.taskIdToAgentId?.(taskId) ?? taskId;
|
|
187
|
-
}
|
|
188
|
-
//# sourceMappingURL=heartbeat-lucid.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-lucid.js","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-lucid.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-scheduler.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-scheduler.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AACxG,OAAO,KAAK,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,OAAO,KAAK,EACV,aAAa,EACb,sBAAsB,EACtB,kBAAkB,EAClB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EACL,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AACnC,YAAY,EACV,6BAA6B,EAC7B,aAAa,EACb,sBAAsB,EACtB,2BAA2B,EAC3B,kBAAkB,EAClB,mBAAmB,GACpB,MAAM,2BAA2B,CAAC;AAEnC,MAAM,MAAM,uBAAuB,GAC/B;IAAE,IAAI,EAAE,6BAA6B,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,6BAA6B,CAAC;IAAC,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,OAAO,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACrG;IAAE,IAAI,EAAE,oBAAoB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GACjE;IACE,IAAI,EAAE,wBAAwB,CAAC;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,OAAO,CAAC;IAC1B,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GACD;IACE,IAAI,EAAE,yBAAyB,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GACD;IACE,IAAI,EAAE,uBAAuB,CAAC;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,mBAAmB,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,CAChC,IAAI,EAAE,aAAa,EACnB,UAAU,EAAE,cAAc,GAAG,mBAAmB,GAAG,SAAS,KACzD,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAEnC,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,kBAAkB,CAAC;IAC1B,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,GAAG,YAAY,CAAC,CAAC;IAClE,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,IAAI,CAAC;IACnD,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,MAAM,MAAM,0BAA0B,GAAG;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,sBAAsB,EAAE,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,4BAA4B,GAAG,2BAA2B,GAAG;IACvE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7D,CAAC;AAIF,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,2BAA2B,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA2EpH;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBhG"}
|
|
@@ -1,135 +0,0 @@
|
|
|
1
|
-
import { runAgentHeartbeat } from './heartbeat.js';
|
|
2
|
-
import { updateTaskAfterFailure, updateTaskAfterResult } from './heartbeat-task-state.js';
|
|
3
|
-
export { createFileHeartbeatTaskStore, } from './heartbeat-task-store.js';
|
|
4
|
-
const DEFAULT_FAILURE_RETRY_MS = 5 * 60_000;
|
|
5
|
-
export async function runDueHeartbeatTasks(options) {
|
|
6
|
-
const now = options.now?.() ?? new Date();
|
|
7
|
-
const tasks = await options.store.listTasks();
|
|
8
|
-
const dueTasks = tasks.filter((task) => isTaskDue(task, now));
|
|
9
|
-
const records = [];
|
|
10
|
-
let failed = 0;
|
|
11
|
-
for (const task of dueTasks) {
|
|
12
|
-
options.onEvent?.({ type: 'heartbeat.task.due', taskId: task.id, timestamp: now.toISOString() });
|
|
13
|
-
try {
|
|
14
|
-
const checkpoint = await options.store.loadCheckpoint(task);
|
|
15
|
-
const runningTask = {
|
|
16
|
-
...task,
|
|
17
|
-
status: 'running',
|
|
18
|
-
lastProgress: checkpoint ?
|
|
19
|
-
'Resuming heartbeat wake from the last checkpoint.'
|
|
20
|
-
: 'Starting a new heartbeat wake cycle.',
|
|
21
|
-
lastLoadedCheckpoint: Boolean(checkpoint),
|
|
22
|
-
lastError: undefined,
|
|
23
|
-
updatedAt: now.toISOString(),
|
|
24
|
-
};
|
|
25
|
-
await options.store.saveTask(runningTask);
|
|
26
|
-
options.onEvent?.({
|
|
27
|
-
type: 'heartbeat.task.started',
|
|
28
|
-
taskId: task.id,
|
|
29
|
-
loadedCheckpoint: Boolean(checkpoint),
|
|
30
|
-
status: runningTask.status,
|
|
31
|
-
progress: runningTask.lastProgress,
|
|
32
|
-
timestamp: now.toISOString(),
|
|
33
|
-
});
|
|
34
|
-
const result = await runHeartbeatTask(task, checkpoint, options);
|
|
35
|
-
await options.store.saveCheckpoint(task, result.checkpoint);
|
|
36
|
-
const nextTask = updateTaskAfterResult(task, result, now, Boolean(checkpoint));
|
|
37
|
-
await options.store.saveTask(nextTask);
|
|
38
|
-
const record = { task: nextTask, result, loadedCheckpoint: Boolean(checkpoint) };
|
|
39
|
-
await options.store.saveRunRecord?.(record);
|
|
40
|
-
records.push(record);
|
|
41
|
-
options.onEvent?.({
|
|
42
|
-
type: 'heartbeat.task.finished',
|
|
43
|
-
taskId: task.id,
|
|
44
|
-
decision: result.decision,
|
|
45
|
-
outcome: result.state.outcome,
|
|
46
|
-
status: nextTask.status ?? 'waiting',
|
|
47
|
-
progress: nextTask.lastProgress ?? '',
|
|
48
|
-
summary: result.summary,
|
|
49
|
-
runId: result.state.runId,
|
|
50
|
-
usage: result.state.usage,
|
|
51
|
-
nextRunAt: nextTask.nextRunAt,
|
|
52
|
-
enabled: nextTask.enabled,
|
|
53
|
-
timestamp: now.toISOString(),
|
|
54
|
-
});
|
|
55
|
-
}
|
|
56
|
-
catch (error) {
|
|
57
|
-
failed++;
|
|
58
|
-
const nextTask = updateTaskAfterFailure(task, error, now, options.failureRetryMs ?? DEFAULT_FAILURE_RETRY_MS);
|
|
59
|
-
await options.store.saveTask(nextTask);
|
|
60
|
-
options.onEvent?.({
|
|
61
|
-
type: 'heartbeat.task.failed',
|
|
62
|
-
taskId: task.id,
|
|
63
|
-
error: error instanceof Error ? error.message : String(error),
|
|
64
|
-
status: nextTask.status ?? 'failed',
|
|
65
|
-
progress: nextTask.lastProgress ?? '',
|
|
66
|
-
nextRunAt: nextTask.nextRunAt,
|
|
67
|
-
timestamp: now.toISOString(),
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
return {
|
|
72
|
-
checked: tasks.length,
|
|
73
|
-
ran: records.length,
|
|
74
|
-
failed,
|
|
75
|
-
records,
|
|
76
|
-
};
|
|
77
|
-
}
|
|
78
|
-
export async function runHeartbeatScheduler(options) {
|
|
79
|
-
options.onEvent?.({ type: 'heartbeat.scheduler.started', timestamp: (options.now?.() ?? new Date()).toISOString() });
|
|
80
|
-
try {
|
|
81
|
-
while (!options.signal?.aborted) {
|
|
82
|
-
await runDueHeartbeatTasks(options);
|
|
83
|
-
await (options.sleep ?? sleep)(options.pollIntervalMs ?? 60_000, options.signal);
|
|
84
|
-
}
|
|
85
|
-
options.onEvent?.({ type: 'heartbeat.scheduler.stopped', reason: 'aborted', timestamp: (options.now?.() ?? new Date()).toISOString() });
|
|
86
|
-
}
|
|
87
|
-
catch (error) {
|
|
88
|
-
if (options.signal?.aborted) {
|
|
89
|
-
options.onEvent?.({ type: 'heartbeat.scheduler.stopped', reason: 'aborted', timestamp: (options.now?.() ?? new Date()).toISOString() });
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
options.onEvent?.({ type: 'heartbeat.scheduler.stopped', reason: 'error', timestamp: (options.now?.() ?? new Date()).toISOString() });
|
|
93
|
-
throw error;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
function isTaskDue(task, now) {
|
|
97
|
-
if (!task.enabled) {
|
|
98
|
-
return false;
|
|
99
|
-
}
|
|
100
|
-
if (!task.nextRunAt) {
|
|
101
|
-
return true;
|
|
102
|
-
}
|
|
103
|
-
const nextRunAt = Date.parse(task.nextRunAt);
|
|
104
|
-
return Number.isFinite(nextRunAt) && nextRunAt <= now.getTime();
|
|
105
|
-
}
|
|
106
|
-
async function runHeartbeatTask(task, checkpoint, options) {
|
|
107
|
-
if (options.runner) {
|
|
108
|
-
return options.runner(task, checkpoint);
|
|
109
|
-
}
|
|
110
|
-
return runAgentHeartbeat({
|
|
111
|
-
...options.heartbeat,
|
|
112
|
-
task: task.task,
|
|
113
|
-
checkpoint,
|
|
114
|
-
model: task.model ?? options.heartbeat?.model,
|
|
115
|
-
maxSteps: task.maxSteps ?? options.heartbeat?.maxSteps,
|
|
116
|
-
workspaceRoot: task.workspaceRoot ?? options.heartbeat?.workspaceRoot,
|
|
117
|
-
stateDir: task.stateDir ?? options.heartbeat?.stateDir,
|
|
118
|
-
memoryDir: task.memoryDir ?? options.heartbeat?.memoryDir,
|
|
119
|
-
searchIgnoreDirs: task.searchIgnoreDirs ?? options.heartbeat?.searchIgnoreDirs,
|
|
120
|
-
systemContext: task.systemContext ?? options.heartbeat?.systemContext,
|
|
121
|
-
});
|
|
122
|
-
}
|
|
123
|
-
function sleep(ms, signal) {
|
|
124
|
-
if (signal?.aborted) {
|
|
125
|
-
return Promise.resolve();
|
|
126
|
-
}
|
|
127
|
-
return new Promise((resolve) => {
|
|
128
|
-
const timeout = setTimeout(resolve, ms);
|
|
129
|
-
signal?.addEventListener('abort', () => {
|
|
130
|
-
clearTimeout(timeout);
|
|
131
|
-
resolve();
|
|
132
|
-
}, { once: true });
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
//# sourceMappingURL=heartbeat-scheduler.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-scheduler.js","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-scheduler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAInD,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAQ1F,OAAO,EACL,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AAyEnC,MAAM,wBAAwB,GAAG,CAAC,GAAG,MAAM,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAAoC;IAC7E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC;IAC1C,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9D,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACjG,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YAC5D,MAAM,WAAW,GAAG;gBAClB,GAAG,IAAI;gBACP,MAAM,EAAE,SAAkB;gBAC1B,YAAY,EACV,UAAU,CAAC,CAAC;oBACV,mDAAmD;oBACrD,CAAC,CAAC,sCAAsC;gBAC1C,oBAAoB,EAAE,OAAO,CAAC,UAAU,CAAC;gBACzC,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;aAC7B,CAAC;YACF,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YAC1C,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,wBAAwB;gBAC9B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,gBAAgB,EAAE,OAAO,CAAC,UAAU,CAAC;gBACrC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,QAAQ,EAAE,WAAW,CAAC,YAAY;gBAClC,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;aAC7B,CAAC,CAAC;YAEH,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;YACjE,MAAM,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YAC/E,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvC,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YACjF,MAAM,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC,CAAC;YAC5C,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACrB,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,yBAAyB;gBAC/B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO;gBAC7B,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,SAAS;gBACpC,QAAQ,EAAE,QAAQ,CAAC,YAAY,IAAI,EAAE;gBACrC,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;gBACzB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;gBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,EAAE,CAAC;YACT,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,cAAc,IAAI,wBAAwB,CAAC,CAAC;YAC9G,MAAM,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACvC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAChB,IAAI,EAAE,uBAAuB;gBAC7B,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,QAAQ;gBACnC,QAAQ,EAAE,QAAQ,CAAC,YAAY,IAAI,EAAE;gBACrC,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;aAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO;QACL,OAAO,EAAE,KAAK,CAAC,MAAM;QACrB,GAAG,EAAE,OAAO,CAAC,MAAM;QACnB,MAAM;QACN,OAAO;KACR,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAAqC;IAC/E,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IACrH,IAAI,CAAC;QACH,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAChC,MAAM,oBAAoB,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,OAAO,CAAC,cAAc,IAAI,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;QACnF,CAAC;QACD,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC1I,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;YAC5B,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YACxI,OAAO;QACT,CAAC;QAED,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,6BAA6B,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACtI,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,IAAmB,EAAE,GAAS;IAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACpB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;AAClE,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,IAAmB,EACnB,UAA4D,EAC5D,OAAoC;IAEpC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAC1C,CAAC;IAED,OAAO,iBAAiB,CAAC;QACvB,GAAG,OAAO,CAAC,SAAS;QACpB,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,UAAU;QACV,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,OAAO,CAAC,SAAS,EAAE,KAAK;QAC7C,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,QAAQ;QACtD,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,SAAS,EAAE,aAAa;QACrE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,EAAE,QAAQ;QACtD,SAAS,EAAE,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,SAAS,EAAE,SAAS;QACzD,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,IAAI,OAAO,CAAC,SAAS,EAAE,gBAAgB;QAC9E,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,OAAO,CAAC,SAAS,EAAE,aAAa;KACtE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,KAAK,CAAC,EAAU,EAAE,MAAoB;IAC7C,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QACxC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE;YACrC,YAAY,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,EAAE,CAAC;QACZ,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type { AgentHeartbeatResult, RunAgentHeartbeatOptions } from './heartbeat.js';
|
|
2
|
-
import type { AgentLoopCheckpoint } from './events.js';
|
|
3
|
-
export type HeartbeatCheckpointStore = {
|
|
4
|
-
load: () => Promise<AgentLoopCheckpoint | undefined>;
|
|
5
|
-
save: (checkpoint: AgentLoopCheckpoint) => Promise<void>;
|
|
6
|
-
};
|
|
7
|
-
export type FileHeartbeatCheckpointStoreOptions = {
|
|
8
|
-
path: string;
|
|
9
|
-
};
|
|
10
|
-
export type RunStoredHeartbeatOptions = Omit<RunAgentHeartbeatOptions, 'checkpoint'> & {
|
|
11
|
-
store: HeartbeatCheckpointStore;
|
|
12
|
-
};
|
|
13
|
-
export type StoredHeartbeatResult = AgentHeartbeatResult & {
|
|
14
|
-
loadedCheckpoint: boolean;
|
|
15
|
-
nextDelayMs?: number;
|
|
16
|
-
};
|
|
17
|
-
export declare function createFileHeartbeatCheckpointStore(options: FileHeartbeatCheckpointStoreOptions): HeartbeatCheckpointStore;
|
|
18
|
-
export declare function runStoredHeartbeat(options: RunStoredHeartbeatOptions): Promise<StoredHeartbeatResult>;
|
|
19
|
-
export declare function suggestNextHeartbeatDelayMs(decision: AgentHeartbeatResult['decision']): number | undefined;
|
|
20
|
-
//# sourceMappingURL=heartbeat-store.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-store.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-store.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,oBAAoB,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AACrF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAEvD,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,MAAM,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAAC;IACrD,IAAI,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAAG;IAChD,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,IAAI,CAAC,wBAAwB,EAAE,YAAY,CAAC,GAAG;IACrF,KAAK,EAAE,wBAAwB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,oBAAoB,GAAG;IACzD,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,wBAAgB,kCAAkC,CAAC,OAAO,EAAE,mCAAmC,GAAG,wBAAwB,CAczH;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,yBAAyB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAa3G;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,GAAG,MAAM,GAAG,SAAS,CAU1G"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
-
import { dirname } from 'node:path';
|
|
3
|
-
import { runAgentHeartbeat } from './heartbeat.js';
|
|
4
|
-
export function createFileHeartbeatCheckpointStore(options) {
|
|
5
|
-
return {
|
|
6
|
-
async load() {
|
|
7
|
-
if (!existsSync(options.path)) {
|
|
8
|
-
return undefined;
|
|
9
|
-
}
|
|
10
|
-
return JSON.parse(readFileSync(options.path, 'utf8'));
|
|
11
|
-
},
|
|
12
|
-
async save(checkpoint) {
|
|
13
|
-
mkdirSync(dirname(options.path), { recursive: true });
|
|
14
|
-
writeFileSync(options.path, JSON.stringify(checkpoint, null, 2));
|
|
15
|
-
},
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
export async function runStoredHeartbeat(options) {
|
|
19
|
-
const checkpoint = await options.store.load();
|
|
20
|
-
const result = await runAgentHeartbeat({
|
|
21
|
-
...options,
|
|
22
|
-
checkpoint,
|
|
23
|
-
});
|
|
24
|
-
await options.store.save(result.checkpoint);
|
|
25
|
-
return {
|
|
26
|
-
...result,
|
|
27
|
-
loadedCheckpoint: Boolean(checkpoint),
|
|
28
|
-
nextDelayMs: suggestNextHeartbeatDelayMs(result.decision),
|
|
29
|
-
};
|
|
30
|
-
}
|
|
31
|
-
export function suggestNextHeartbeatDelayMs(decision) {
|
|
32
|
-
switch (decision) {
|
|
33
|
-
case 'continue':
|
|
34
|
-
return 60_000;
|
|
35
|
-
case 'pause':
|
|
36
|
-
return 15 * 60_000;
|
|
37
|
-
case 'complete':
|
|
38
|
-
case 'escalate':
|
|
39
|
-
return undefined;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=heartbeat-store.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-store.js","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-store.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAsBnD,MAAM,UAAU,kCAAkC,CAAC,OAA4C;IAC7F,OAAO;QACL,KAAK,CAAC,IAAI;YACR,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAwB,CAAC;QAC/E,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,UAAU;YACnB,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACtD,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACnE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,OAAkC;IACzE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAC9C,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC;QACrC,GAAG,OAAO;QACV,UAAU;KACX,CAAC,CAAC;IACH,MAAM,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE5C,OAAO;QACL,GAAG,MAAM;QACT,gBAAgB,EAAE,OAAO,CAAC,UAAU,CAAC;QACrC,WAAW,EAAE,2BAA2B,CAAC,MAAM,CAAC,QAAQ,CAAC;KAC1D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,QAA0C;IACpF,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,UAAU;YACb,OAAO,MAAM,CAAC;QAChB,KAAK,OAAO;YACV,OAAO,EAAE,GAAG,MAAM,CAAC;QACrB,KAAK,UAAU,CAAC;QAChB,KAAK,UAAU;YACb,OAAO,SAAS,CAAC;IACrB,CAAC;AACH,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { AgentHeartbeatResult } from './heartbeat.js';
|
|
2
|
-
import type { HeartbeatTask } from './heartbeat-task-store.js';
|
|
3
|
-
export declare function updateTaskAfterResult(task: HeartbeatTask, result: AgentHeartbeatResult, now: Date, loadedCheckpoint: boolean): HeartbeatTask;
|
|
4
|
-
export declare function updateTaskAfterFailure(task: HeartbeatTask, error: unknown, now: Date, retryMs: number): HeartbeatTask;
|
|
5
|
-
//# sourceMappingURL=heartbeat-task-state.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-task-state.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-task-state.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAE3D,OAAO,KAAK,EAAE,aAAa,EAAuB,MAAM,2BAA2B,CAAC;AAGpF,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,oBAAoB,EAC5B,GAAG,EAAE,IAAI,EACT,gBAAgB,EAAE,OAAO,GACxB,aAAa,CAyBf;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,GAAG,aAAa,CAUrH"}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
import { suggestNextHeartbeatDelayMs } from './heartbeat-store.js';
|
|
2
|
-
import { normalizeTaskForSave } from './heartbeat-task-store.js';
|
|
3
|
-
export function updateTaskAfterResult(task, result, now, loadedCheckpoint) {
|
|
4
|
-
const terminal = result.decision === 'complete' || result.decision === 'escalate';
|
|
5
|
-
const delayMs = terminal ? undefined
|
|
6
|
-
: result.decision === 'continue' ? task.intervalMs
|
|
7
|
-
: suggestNextHeartbeatDelayMs(result.decision) ?? task.intervalMs;
|
|
8
|
-
const projection = projectionForResult(result, delayMs);
|
|
9
|
-
return normalizeTaskForSave({
|
|
10
|
-
...task,
|
|
11
|
-
enabled: terminal ? false : task.enabled,
|
|
12
|
-
status: projection.status,
|
|
13
|
-
lastProgress: projection.progress,
|
|
14
|
-
nextRunAt: delayMs === undefined ? undefined : new Date(now.getTime() + delayMs).toISOString(),
|
|
15
|
-
lastRunAt: now.toISOString(),
|
|
16
|
-
lastRunId: result.state.runId,
|
|
17
|
-
lastLoadedCheckpoint: loadedCheckpoint,
|
|
18
|
-
resumable: result.decision !== 'complete',
|
|
19
|
-
lastUsage: result.state.usage,
|
|
20
|
-
lastDecision: result.decision,
|
|
21
|
-
lastOutcome: result.state.outcome,
|
|
22
|
-
lastSummary: result.summary,
|
|
23
|
-
lastError: undefined,
|
|
24
|
-
updatedAt: now.toISOString(),
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
export function updateTaskAfterFailure(task, error, now, retryMs) {
|
|
28
|
-
return normalizeTaskForSave({
|
|
29
|
-
...task,
|
|
30
|
-
status: 'failed',
|
|
31
|
-
lastProgress: 'Heartbeat wake failed and will retry later.',
|
|
32
|
-
nextRunAt: new Date(now.getTime() + retryMs).toISOString(),
|
|
33
|
-
lastRunAt: now.toISOString(),
|
|
34
|
-
lastError: error instanceof Error ? error.message : String(error),
|
|
35
|
-
updatedAt: now.toISOString(),
|
|
36
|
-
});
|
|
37
|
-
}
|
|
38
|
-
function projectionForResult(result, delayMs) {
|
|
39
|
-
switch (result.decision) {
|
|
40
|
-
case 'continue':
|
|
41
|
-
return {
|
|
42
|
-
status: 'waiting',
|
|
43
|
-
progress: delayMs === undefined ?
|
|
44
|
-
'Heartbeat wake finished.'
|
|
45
|
-
: `Heartbeat wake finished. Waiting until the next scheduled run in ${formatDelay(delayMs)}.`,
|
|
46
|
-
};
|
|
47
|
-
case 'pause':
|
|
48
|
-
return {
|
|
49
|
-
status: 'waiting',
|
|
50
|
-
progress: delayMs === undefined ?
|
|
51
|
-
'Heartbeat paused.'
|
|
52
|
-
: `Heartbeat paused. Waiting ${formatDelay(delayMs)} before the next wake.`,
|
|
53
|
-
};
|
|
54
|
-
case 'complete':
|
|
55
|
-
return {
|
|
56
|
-
status: 'complete',
|
|
57
|
-
progress: 'Heartbeat task completed and will not wake again.',
|
|
58
|
-
};
|
|
59
|
-
case 'escalate':
|
|
60
|
-
return {
|
|
61
|
-
status: 'blocked',
|
|
62
|
-
progress: 'Heartbeat escalated for user input and is waiting for follow-up.',
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
function formatDelay(ms) {
|
|
67
|
-
if (ms % (24 * 60 * 60_000) === 0) {
|
|
68
|
-
return `${ms / (24 * 60 * 60_000)}d`;
|
|
69
|
-
}
|
|
70
|
-
if (ms % (60 * 60_000) === 0) {
|
|
71
|
-
return `${ms / (60 * 60_000)}h`;
|
|
72
|
-
}
|
|
73
|
-
if (ms % 60_000 === 0) {
|
|
74
|
-
return `${ms / 60_000}m`;
|
|
75
|
-
}
|
|
76
|
-
if (ms % 1_000 === 0) {
|
|
77
|
-
return `${ms / 1_000}s`;
|
|
78
|
-
}
|
|
79
|
-
return `${ms}ms`;
|
|
80
|
-
}
|
|
81
|
-
//# sourceMappingURL=heartbeat-task-state.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-task-state.js","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-task-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"heartbeat-task-store.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime/heartbeat-task-store.ts"],"names":[],"mappings":"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"}
|