visionclaw 0.1.219-beta.0 → 0.1.219-dev.codex-issue-2805-worker-runtime.1
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/dist/agent/api-proxy.d.ts +0 -16
- package/dist/agent/api-proxy.d.ts.map +1 -1
- package/dist/agent/api-proxy.js +9 -8
- package/dist/agent/api-proxy.js.map +1 -1
- package/dist/agent/browser-launcher.d.ts +3 -0
- package/dist/agent/browser-launcher.d.ts.map +1 -1
- package/dist/agent/browser-launcher.js +101 -43
- package/dist/agent/browser-launcher.js.map +1 -1
- package/dist/agent/coding-conventions.d.ts +8 -0
- package/dist/agent/coding-conventions.d.ts.map +1 -0
- package/dist/agent/coding-conventions.js +19 -0
- package/dist/agent/coding-conventions.js.map +1 -0
- package/dist/agent/command-handlers.d.ts.map +1 -1
- package/dist/agent/command-handlers.js +4 -16
- package/dist/agent/command-handlers.js.map +1 -1
- package/dist/agent/context-action-restart-fallback.d.ts.map +1 -1
- package/dist/agent/context-action-restart-fallback.js +9 -3
- package/dist/agent/context-action-restart-fallback.js.map +1 -1
- package/dist/agent/context-refresh.d.ts.map +1 -1
- package/dist/agent/context-refresh.js +0 -7
- package/dist/agent/context-refresh.js.map +1 -1
- package/dist/agent/context.d.ts +2 -4
- package/dist/agent/context.d.ts.map +1 -1
- package/dist/agent/context.js +12 -21
- package/dist/agent/context.js.map +1 -1
- package/dist/agent/engine-fallback.d.ts +0 -35
- package/dist/agent/engine-fallback.d.ts.map +1 -1
- package/dist/agent/engine-fallback.js +4 -3
- package/dist/agent/engine-fallback.js.map +1 -1
- package/dist/agent/engine-switch.d.ts +19 -38
- package/dist/agent/engine-switch.d.ts.map +1 -1
- package/dist/agent/engine-switch.js +46 -111
- package/dist/agent/engine-switch.js.map +1 -1
- package/dist/agent/engines/browser-tool-policy.d.ts +12 -1
- package/dist/agent/engines/browser-tool-policy.d.ts.map +1 -1
- package/dist/agent/engines/browser-tool-policy.js +17 -2
- package/dist/agent/engines/browser-tool-policy.js.map +1 -1
- package/dist/agent/engines/claude/executor-shell-groups.d.ts +11 -0
- package/dist/agent/engines/claude/executor-shell-groups.d.ts.map +1 -0
- package/dist/agent/engines/claude/executor-shell-groups.js +22 -0
- package/dist/agent/engines/claude/executor-shell-groups.js.map +1 -0
- package/dist/agent/engines/claude/session.d.ts +13 -4
- package/dist/agent/engines/claude/session.d.ts.map +1 -1
- package/dist/agent/engines/claude/session.js +165 -84
- package/dist/agent/engines/claude/session.js.map +1 -1
- package/dist/agent/engines/pi/shared/usage.d.ts +6 -8
- package/dist/agent/engines/pi/shared/usage.d.ts.map +1 -1
- package/dist/agent/engines/pi/shared/usage.js +24 -7
- package/dist/agent/engines/pi/shared/usage.js.map +1 -1
- package/dist/agent/engines/pi/tools.d.ts +3 -10
- package/dist/agent/engines/pi/tools.d.ts.map +1 -1
- package/dist/agent/engines/pi/tools.js +6 -20
- package/dist/agent/engines/pi/tools.js.map +1 -1
- package/dist/agent/engines/pi-coding/executor-shell.d.ts +4 -0
- package/dist/agent/engines/pi-coding/executor-shell.d.ts.map +1 -0
- package/dist/agent/engines/pi-coding/executor-shell.js +175 -0
- package/dist/agent/engines/pi-coding/executor-shell.js.map +1 -0
- package/dist/agent/engines/pi-coding/session.d.ts +4 -4
- package/dist/agent/engines/pi-coding/session.d.ts.map +1 -1
- package/dist/agent/engines/pi-coding/session.js +118 -66
- package/dist/agent/engines/pi-coding/session.js.map +1 -1
- package/dist/agent/engines/pi-coding/tools.d.ts +2 -5
- package/dist/agent/engines/pi-coding/tools.d.ts.map +1 -1
- package/dist/agent/engines/pi-coding/tools.js +7 -5
- package/dist/agent/engines/pi-coding/tools.js.map +1 -1
- package/dist/agent/engines/session-types.d.ts +8 -8
- package/dist/agent/engines/session-types.d.ts.map +1 -1
- package/dist/agent/external-context/interrupt.d.ts +0 -2
- package/dist/agent/external-context/interrupt.d.ts.map +1 -1
- package/dist/agent/external-context/interrupt.js +0 -1
- package/dist/agent/external-context/interrupt.js.map +1 -1
- package/dist/agent/external-context/registry.d.ts +0 -2
- package/dist/agent/external-context/registry.d.ts.map +1 -1
- package/dist/agent/external-context/registry.js +2 -4
- package/dist/agent/external-context/registry.js.map +1 -1
- package/dist/agent/external-context/runtime.d.ts.map +1 -1
- package/dist/agent/external-context/runtime.js +15 -14
- package/dist/agent/external-context/runtime.js.map +1 -1
- package/dist/agent/external-context/types.d.ts +0 -2
- package/dist/agent/external-context/types.d.ts.map +1 -1
- package/dist/agent/fast-responder.d.ts +4 -20
- package/dist/agent/fast-responder.d.ts.map +1 -1
- package/dist/agent/fast-responder.js +28 -42
- package/dist/agent/fast-responder.js.map +1 -1
- package/dist/agent/interrupt-handler.d.ts +0 -6
- package/dist/agent/interrupt-handler.d.ts.map +1 -1
- package/dist/agent/interrupt-handler.js +5 -47
- package/dist/agent/interrupt-handler.js.map +1 -1
- package/dist/agent/lab-run-system-prompt.d.ts.map +1 -1
- package/dist/agent/lab-run-system-prompt.js +4 -1
- package/dist/agent/lab-run-system-prompt.js.map +1 -1
- package/dist/agent/lifecycle-trace.d.ts.map +1 -1
- package/dist/agent/lifecycle-trace.js +6 -5
- package/dist/agent/lifecycle-trace.js.map +1 -1
- package/dist/agent/loop.d.ts +8 -2
- package/dist/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +287 -156
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/memory-protocol.d.ts +2 -2
- package/dist/agent/memory-protocol.d.ts.map +1 -1
- package/dist/agent/memory-protocol.js +3 -15
- package/dist/agent/memory-protocol.js.map +1 -1
- package/dist/agent/memory-store.d.ts +58 -0
- package/dist/agent/memory-store.d.ts.map +1 -0
- package/dist/agent/memory-store.js +152 -0
- package/dist/agent/memory-store.js.map +1 -0
- package/dist/agent/model-provider.d.ts +18 -5
- package/dist/agent/model-provider.d.ts.map +1 -1
- package/dist/agent/model-provider.js +58 -18
- package/dist/agent/model-provider.js.map +1 -1
- package/dist/agent/nightly-maintenance/dreaming-batch.d.ts +184 -0
- package/dist/agent/nightly-maintenance/dreaming-batch.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-batch.js +192 -0
- package/dist/agent/nightly-maintenance/dreaming-batch.js.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-files.d.ts +48 -0
- package/dist/agent/nightly-maintenance/dreaming-files.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-files.js +109 -0
- package/dist/agent/nightly-maintenance/dreaming-files.js.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-ledger.d.ts +62 -0
- package/dist/agent/nightly-maintenance/dreaming-ledger.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-ledger.js +146 -0
- package/dist/agent/nightly-maintenance/dreaming-ledger.js.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-planner.d.ts +86 -0
- package/dist/agent/nightly-maintenance/dreaming-planner.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-planner.js +304 -0
- package/dist/agent/nightly-maintenance/dreaming-planner.js.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-runner.d.ts +93 -0
- package/dist/agent/nightly-maintenance/dreaming-runner.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-runner.js +156 -0
- package/dist/agent/nightly-maintenance/dreaming-runner.js.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-sources.d.ts +115 -0
- package/dist/agent/nightly-maintenance/dreaming-sources.d.ts.map +1 -0
- package/dist/agent/nightly-maintenance/dreaming-sources.js +270 -0
- package/dist/agent/nightly-maintenance/dreaming-sources.js.map +1 -0
- package/dist/agent/nightly-maintenance/index.d.ts +28 -8
- package/dist/agent/nightly-maintenance/index.d.ts.map +1 -1
- package/dist/agent/nightly-maintenance/index.js +42 -15
- package/dist/agent/nightly-maintenance/index.js.map +1 -1
- package/dist/agent/nightly-maintenance/skill-learning-gate.js +1 -1
- package/dist/agent/nightly-maintenance/skill-learning-gate.js.map +1 -1
- package/dist/agent/nightly-maintenance/vocabulary-processor.d.ts +1 -1
- package/dist/agent/nightly-maintenance/vocabulary-processor.d.ts.map +1 -1
- package/dist/agent/product-identity.d.ts +5 -4
- package/dist/agent/product-identity.d.ts.map +1 -1
- package/dist/agent/product-identity.js +7 -6
- package/dist/agent/product-identity.js.map +1 -1
- package/dist/agent/public-activity.js +1 -1
- package/dist/agent/public-activity.js.map +1 -1
- package/dist/agent/runtime-context.d.ts +27 -0
- package/dist/agent/runtime-context.d.ts.map +1 -0
- package/dist/agent/runtime-context.js +60 -0
- package/dist/agent/runtime-context.js.map +1 -0
- package/dist/agent/runtime-disclosure-policy.d.ts +6 -0
- package/dist/agent/runtime-disclosure-policy.d.ts.map +1 -0
- package/dist/agent/runtime-disclosure-policy.js +16 -0
- package/dist/agent/runtime-disclosure-policy.js.map +1 -0
- package/dist/agent/runtime-surface.d.ts +15 -4
- package/dist/agent/runtime-surface.d.ts.map +1 -1
- package/dist/agent/runtime-surface.js +0 -1
- package/dist/agent/runtime-surface.js.map +1 -1
- package/dist/agent/session-manager.d.ts +30 -126
- package/dist/agent/session-manager.d.ts.map +1 -1
- package/dist/agent/session-manager.js +60 -484
- package/dist/agent/session-manager.js.map +1 -1
- package/dist/agent/state.d.ts +42 -2
- package/dist/agent/state.d.ts.map +1 -1
- package/dist/agent/state.js +21 -11
- package/dist/agent/state.js.map +1 -1
- package/dist/agent/stream-handler.d.ts +6 -13
- package/dist/agent/stream-handler.d.ts.map +1 -1
- package/dist/agent/stream-handler.js +8 -62
- package/dist/agent/stream-handler.js.map +1 -1
- package/dist/agent/system-prompt.d.ts +2 -0
- package/dist/agent/system-prompt.d.ts.map +1 -1
- package/dist/agent/system-prompt.js +21 -20
- package/dist/agent/system-prompt.js.map +1 -1
- package/dist/agent/tool-usage.d.ts.map +1 -1
- package/dist/agent/tool-usage.js +0 -1
- package/dist/agent/tool-usage.js.map +1 -1
- package/dist/agent/transcript/transcript-backfill.js +3 -3
- package/dist/agent/transcript/transcript-backfill.js.map +1 -1
- package/dist/agent/transcript/transcript-indexer.d.ts +3 -31
- package/dist/agent/transcript/transcript-indexer.d.ts.map +1 -1
- package/dist/agent/transcript/transcript-indexer.js +58 -57
- package/dist/agent/transcript/transcript-indexer.js.map +1 -1
- package/dist/agent/transcript-parsers/trivial-tools.d.ts.map +1 -1
- package/dist/agent/transcript-parsers/trivial-tools.js +0 -2
- package/dist/agent/transcript-parsers/trivial-tools.js.map +1 -1
- package/dist/agent/transcript-parsers/types.d.ts +1 -1
- package/dist/agent/transcript-summarizer.d.ts +14 -0
- package/dist/agent/transcript-summarizer.d.ts.map +1 -1
- package/dist/agent/transcript-summarizer.js +69 -45
- package/dist/agent/transcript-summarizer.js.map +1 -1
- package/dist/agent/usage/usage-report-queue.d.ts.map +1 -1
- package/dist/agent/usage/usage-report-queue.js +53 -52
- package/dist/agent/usage/usage-report-queue.js.map +1 -1
- package/dist/agent/usage/usage-report-types.d.ts +1 -1
- package/dist/agent/usage/usage-report-types.d.ts.map +1 -1
- package/dist/agent/vocabulary-glossary.d.ts +3 -3
- package/dist/agent/wake-cycle-runner.d.ts +14 -17
- package/dist/agent/wake-cycle-runner.d.ts.map +1 -1
- package/dist/agent/wake-cycle-runner.js +121 -290
- package/dist/agent/wake-cycle-runner.js.map +1 -1
- package/dist/builtin-skills/owner-manual/SKILL.md +2 -2
- package/dist/calendar/occurrence-ownership.d.ts.map +1 -1
- package/dist/calendar/occurrence-ownership.js +6 -5
- package/dist/calendar/occurrence-ownership.js.map +1 -1
- package/dist/calendar/scheduler.d.ts.map +1 -1
- package/dist/calendar/scheduler.js +4 -3
- package/dist/calendar/scheduler.js.map +1 -1
- package/dist/channels/interface.d.ts +8 -2
- package/dist/channels/interface.d.ts.map +1 -1
- package/dist/channels/interface.js +8 -1
- package/dist/channels/interface.js.map +1 -1
- package/dist/channels/manager.d.ts.map +1 -1
- package/dist/channels/manager.js +5 -1
- package/dist/channels/manager.js.map +1 -1
- package/dist/channels/queue.d.ts.map +1 -1
- package/dist/channels/queue.js +8 -0
- package/dist/channels/queue.js.map +1 -1
- package/dist/channels/tui.d.ts +14 -1
- package/dist/channels/tui.d.ts.map +1 -1
- package/dist/channels/tui.js +64 -2
- package/dist/channels/tui.js.map +1 -1
- package/dist/cli/index.d.ts +2 -2
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +22 -53
- package/dist/cli/index.js.map +1 -1
- package/dist/config/index.d.ts +13 -7
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +51 -64
- package/dist/config/index.js.map +1 -1
- package/dist/config/types.d.ts +28 -7
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +22 -20
- package/dist/config/types.js.map +1 -1
- package/dist/conversations/lazy-runtime.d.ts +5 -0
- package/dist/conversations/lazy-runtime.d.ts.map +1 -0
- package/dist/conversations/lazy-runtime.js +12 -0
- package/dist/conversations/lazy-runtime.js.map +1 -0
- package/dist/conversations/runtime.d.ts +17 -0
- package/dist/conversations/runtime.d.ts.map +1 -0
- package/dist/conversations/runtime.js +92 -0
- package/dist/conversations/runtime.js.map +1 -0
- package/dist/conversations/scheduler.d.ts +57 -0
- package/dist/conversations/scheduler.d.ts.map +1 -0
- package/dist/conversations/scheduler.js +175 -0
- package/dist/conversations/scheduler.js.map +1 -0
- package/dist/data-processing/pipeline.d.ts +0 -2
- package/dist/data-processing/pipeline.d.ts.map +1 -1
- package/dist/data-processing/pipeline.js +19 -24
- package/dist/data-processing/pipeline.js.map +1 -1
- package/dist/data-processing/restructure.d.ts +0 -2
- package/dist/data-processing/restructure.d.ts.map +1 -1
- package/dist/data-processing/restructure.js +6 -9
- package/dist/data-processing/restructure.js.map +1 -1
- package/dist/data-processing/types.d.ts +2 -9
- package/dist/data-processing/types.d.ts.map +1 -1
- package/dist/data-processing/types.js +2 -13
- package/dist/data-processing/types.js.map +1 -1
- package/dist/email/email-route-store.d.ts.map +1 -1
- package/dist/email/email-route-store.js +6 -5
- package/dist/email/email-route-store.js.map +1 -1
- package/dist/i18n/messages.d.ts +26 -2
- package/dist/i18n/messages.d.ts.map +1 -1
- package/dist/i18n/messages.js +30 -5
- package/dist/i18n/messages.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +11 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +49 -1
- package/dist/logger.js.map +1 -1
- package/dist/obs/mini-app/status.d.ts.map +1 -1
- package/dist/obs/mini-app/status.js +0 -1
- package/dist/obs/mini-app/status.js.map +1 -1
- package/dist/onboarding/onboarding-service-client.d.ts +1 -0
- package/dist/onboarding/onboarding-service-client.d.ts.map +1 -1
- package/dist/onboarding/onboarding-service-client.js.map +1 -1
- package/dist/onboarding/remote-set-owner.d.ts.map +1 -1
- package/dist/onboarding/remote-set-owner.js +0 -1
- package/dist/onboarding/remote-set-owner.js.map +1 -1
- package/dist/onboarding/set-owner.d.ts +1 -1
- package/dist/onboarding/set-owner.d.ts.map +1 -1
- package/dist/onboarding/set-owner.js +3 -6
- package/dist/onboarding/set-owner.js.map +1 -1
- package/dist/reconfigure.d.ts.map +1 -1
- package/dist/reconfigure.js +1 -32
- package/dist/reconfigure.js.map +1 -1
- package/dist/reset.d.ts.map +1 -1
- package/dist/reset.js +3 -1
- package/dist/reset.js.map +1 -1
- package/dist/threads/active-threads-store.d.ts.map +1 -1
- package/dist/threads/active-threads-store.js +8 -27
- package/dist/threads/active-threads-store.js.map +1 -1
- package/dist/threads/dreaming-execution.d.ts +10 -0
- package/dist/threads/dreaming-execution.d.ts.map +1 -0
- package/dist/threads/dreaming-execution.js +78 -0
- package/dist/threads/dreaming-execution.js.map +1 -0
- package/dist/threads/execution-authority.d.ts +43 -0
- package/dist/threads/execution-authority.d.ts.map +1 -0
- package/dist/threads/execution-authority.js +75 -0
- package/dist/threads/execution-authority.js.map +1 -0
- package/dist/threads/execution-budget.d.ts +107 -0
- package/dist/threads/execution-budget.d.ts.map +1 -0
- package/dist/threads/execution-budget.js +257 -0
- package/dist/threads/execution-budget.js.map +1 -0
- package/dist/threads/execution-host.d.ts +17 -0
- package/dist/threads/execution-host.d.ts.map +1 -0
- package/dist/threads/execution-host.js +66 -0
- package/dist/threads/execution-host.js.map +1 -0
- package/dist/threads/execution-scheduler.d.ts +162 -0
- package/dist/threads/execution-scheduler.d.ts.map +1 -0
- package/dist/threads/execution-scheduler.js +413 -0
- package/dist/threads/execution-scheduler.js.map +1 -0
- package/dist/threads/execution-snapshot.d.ts +91 -0
- package/dist/threads/execution-snapshot.d.ts.map +1 -0
- package/dist/threads/execution-snapshot.js +146 -0
- package/dist/threads/execution-snapshot.js.map +1 -0
- package/dist/threads/execution-store.d.ts +374 -0
- package/dist/threads/execution-store.d.ts.map +1 -0
- package/dist/threads/execution-store.js +910 -0
- package/dist/threads/execution-store.js.map +1 -0
- package/dist/threads/execution-thread-error.d.ts +9 -0
- package/dist/threads/execution-thread-error.d.ts.map +1 -0
- package/dist/threads/execution-thread-error.js +12 -0
- package/dist/threads/execution-thread-error.js.map +1 -0
- package/dist/threads/executor-exit.d.ts +18 -0
- package/dist/threads/executor-exit.d.ts.map +1 -0
- package/dist/threads/executor-exit.js +21 -0
- package/dist/threads/executor-exit.js.map +1 -0
- package/dist/threads/foreground-task.d.ts +91 -0
- package/dist/threads/foreground-task.d.ts.map +1 -0
- package/dist/threads/foreground-task.js +191 -0
- package/dist/threads/foreground-task.js.map +1 -0
- package/dist/threads/foreman-business.d.ts +9 -0
- package/dist/threads/foreman-business.d.ts.map +1 -0
- package/dist/threads/foreman-business.js +117 -0
- package/dist/threads/foreman-business.js.map +1 -0
- package/dist/threads/foreman-client.d.ts +18 -0
- package/dist/threads/foreman-client.d.ts.map +1 -0
- package/dist/threads/foreman-client.js +51 -0
- package/dist/threads/foreman-client.js.map +1 -0
- package/dist/threads/foreman-delivery.d.ts +5 -0
- package/dist/threads/foreman-delivery.d.ts.map +1 -0
- package/dist/threads/foreman-delivery.js +21 -0
- package/dist/threads/foreman-delivery.js.map +1 -0
- package/dist/threads/foreman-execution.d.ts +32 -0
- package/dist/threads/foreman-execution.d.ts.map +1 -0
- package/dist/threads/foreman-execution.js +90 -0
- package/dist/threads/foreman-execution.js.map +1 -0
- package/dist/threads/foreman-host.d.ts +77 -0
- package/dist/threads/foreman-host.d.ts.map +1 -0
- package/dist/threads/foreman-host.js +891 -0
- package/dist/threads/foreman-host.js.map +1 -0
- package/dist/threads/foreman-protocol.d.ts +242 -0
- package/dist/threads/foreman-protocol.d.ts.map +1 -0
- package/dist/threads/foreman-protocol.js +116 -0
- package/dist/threads/foreman-protocol.js.map +1 -0
- package/dist/threads/foreman-store.d.ts +151 -0
- package/dist/threads/foreman-store.d.ts.map +1 -0
- package/dist/threads/foreman-store.js +299 -0
- package/dist/threads/foreman-store.js.map +1 -0
- package/dist/threads/generic-execution.d.ts +25 -0
- package/dist/threads/generic-execution.d.ts.map +1 -0
- package/dist/threads/generic-execution.js +86 -0
- package/dist/threads/generic-execution.js.map +1 -0
- package/dist/threads/init-thread-dir.d.ts +2 -2
- package/dist/threads/init-thread-dir.d.ts.map +1 -1
- package/dist/threads/init-thread-dir.js +6 -6
- package/dist/threads/init-thread-dir.js.map +1 -1
- package/dist/threads/ipc.d.ts +108 -2
- package/dist/threads/ipc.d.ts.map +1 -1
- package/dist/threads/ipc.js +14 -2
- package/dist/threads/ipc.js.map +1 -1
- package/dist/threads/lab-run-thread.d.ts +3 -5
- package/dist/threads/lab-run-thread.d.ts.map +1 -1
- package/dist/threads/lab-run-thread.js +3 -5
- package/dist/threads/lab-run-thread.js.map +1 -1
- package/dist/threads/lab-runtime-policy.d.ts +26 -21
- package/dist/threads/lab-runtime-policy.d.ts.map +1 -1
- package/dist/threads/lab-runtime-policy.js +31 -126
- package/dist/threads/lab-runtime-policy.js.map +1 -1
- package/dist/threads/process-group.d.ts +41 -0
- package/dist/threads/process-group.d.ts.map +1 -0
- package/dist/threads/process-group.js +161 -0
- package/dist/threads/process-group.js.map +1 -0
- package/dist/threads/relay-adapter.d.ts +8 -0
- package/dist/threads/relay-adapter.d.ts.map +1 -1
- package/dist/threads/relay-adapter.js +26 -1
- package/dist/threads/relay-adapter.js.map +1 -1
- package/dist/threads/supervisor.d.ts +191 -57
- package/dist/threads/supervisor.d.ts.map +1 -1
- package/dist/threads/supervisor.js +766 -427
- package/dist/threads/supervisor.js.map +1 -1
- package/dist/threads/task-workspace.d.ts +8 -0
- package/dist/threads/task-workspace.d.ts.map +1 -0
- package/dist/threads/task-workspace.js +52 -0
- package/dist/threads/task-workspace.js.map +1 -0
- package/dist/threads/worker-entry.d.ts.map +1 -1
- package/dist/threads/worker-entry.js +314 -34
- package/dist/threads/worker-entry.js.map +1 -1
- package/dist/threads/worker-execution-runtime.d.ts +75 -0
- package/dist/threads/worker-execution-runtime.d.ts.map +1 -0
- package/dist/threads/worker-execution-runtime.js +142 -0
- package/dist/threads/worker-execution-runtime.js.map +1 -0
- package/dist/threads/worker-execution.d.ts +35 -0
- package/dist/threads/worker-execution.d.ts.map +1 -0
- package/dist/threads/worker-execution.js +2 -0
- package/dist/threads/worker-execution.js.map +1 -0
- package/dist/threads/worker-runtime-policy.d.ts +42 -0
- package/dist/threads/worker-runtime-policy.d.ts.map +1 -0
- package/dist/threads/worker-runtime-policy.js +98 -0
- package/dist/threads/worker-runtime-policy.js.map +1 -0
- package/dist/tools/adapter-tool.d.ts +12 -0
- package/dist/tools/adapter-tool.d.ts.map +1 -0
- package/dist/tools/adapter-tool.js +2 -0
- package/dist/tools/adapter-tool.js.map +1 -0
- package/dist/tools/data-service.d.ts +2 -2
- package/dist/tools/delegation.d.ts +121 -0
- package/dist/tools/delegation.d.ts.map +1 -0
- package/dist/tools/delegation.js +106 -0
- package/dist/tools/delegation.js.map +1 -0
- package/dist/tools/dream-memory.d.ts +122 -0
- package/dist/tools/dream-memory.d.ts.map +1 -0
- package/dist/tools/dream-memory.js +513 -0
- package/dist/tools/dream-memory.js.map +1 -0
- package/dist/tools/email.d.ts +1 -1
- package/dist/tools/execution-control.d.ts +31 -0
- package/dist/tools/execution-control.d.ts.map +1 -0
- package/dist/tools/execution-control.js +71 -0
- package/dist/tools/execution-control.js.map +1 -0
- package/dist/tools/index.d.ts +5 -7
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +7 -13
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/mcp-manager.d.ts +1 -1
- package/dist/tools/memory.d.ts +1 -1
- package/dist/tools/memory.d.ts.map +1 -1
- package/dist/tools/memory.js +69 -45
- package/dist/tools/memory.js.map +1 -1
- package/dist/tools/notify.d.ts +5 -0
- package/dist/tools/notify.d.ts.map +1 -1
- package/dist/tools/notify.js +45 -10
- package/dist/tools/notify.js.map +1 -1
- package/dist/tools/skill.d.ts +1 -1
- package/dist/tools/totp.d.ts +1 -1
- package/dist/tui/client.d.ts +1 -16
- package/dist/tui/client.d.ts.map +1 -1
- package/dist/tui/client.js +0 -4
- package/dist/tui/client.js.map +1 -1
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +0 -41
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/protocol.d.ts +2 -1
- package/dist/tui/protocol.d.ts.map +1 -1
- package/dist/tui/protocol.js +2 -1
- package/dist/tui/protocol.js.map +1 -1
- package/dist/tui/renderer.d.ts.map +1 -1
- package/dist/tui/renderer.js +0 -5
- package/dist/tui/renderer.js.map +1 -1
- package/dist/tui/request-store.d.ts +1 -1
- package/dist/tui/request-store.d.ts.map +1 -1
- package/dist/tui/request-store.js +2 -2
- package/dist/tui/request-store.js.map +1 -1
- package/dist/tui/server.d.ts.map +1 -1
- package/dist/tui/server.js +137 -25
- package/dist/tui/server.js.map +1 -1
- package/dist/utils/claude-transcripts.d.ts +6 -0
- package/dist/utils/claude-transcripts.d.ts.map +1 -1
- package/dist/utils/claude-transcripts.js +8 -2
- package/dist/utils/claude-transcripts.js.map +1 -1
- package/dist/utils/restart.d.ts.map +1 -1
- package/dist/utils/restart.js +6 -0
- package/dist/utils/restart.js.map +1 -1
- package/dist-agent/bundle.cjs +2 -2
- package/package.json +1 -1
- package/dist/agent/mailbox.d.ts +0 -50
- package/dist/agent/mailbox.d.ts.map +0 -1
- package/dist/agent/mailbox.js +0 -124
- package/dist/agent/mailbox.js.map +0 -1
- package/dist/agent/nightly-maintenance/memory-dreaming-sweep.d.ts +0 -77
- package/dist/agent/nightly-maintenance/memory-dreaming-sweep.d.ts.map +0 -1
- package/dist/agent/nightly-maintenance/memory-dreaming-sweep.js +0 -158
- package/dist/agent/nightly-maintenance/memory-dreaming-sweep.js.map +0 -1
- package/dist/agent/nightly-maintenance/memory-dreaming.d.ts +0 -116
- package/dist/agent/nightly-maintenance/memory-dreaming.d.ts.map +0 -1
- package/dist/agent/nightly-maintenance/memory-dreaming.js +0 -458
- package/dist/agent/nightly-maintenance/memory-dreaming.js.map +0 -1
- package/dist/threads/task-contracts.d.ts +0 -194
- package/dist/threads/task-contracts.d.ts.map +0 -1
- package/dist/threads/task-contracts.js +0 -82
- package/dist/threads/task-contracts.js.map +0 -1
- package/dist/threads/task-sidecar.d.ts +0 -145
- package/dist/threads/task-sidecar.d.ts.map +0 -1
- package/dist/threads/task-sidecar.js +0 -311
- package/dist/threads/task-sidecar.js.map +0 -1
- package/dist/threads/task-store.d.ts +0 -172
- package/dist/threads/task-store.d.ts.map +0 -1
- package/dist/threads/task-store.js +0 -599
- package/dist/threads/task-store.js.map +0 -1
- package/dist/threads/thread-task-context.d.ts +0 -40
- package/dist/threads/thread-task-context.d.ts.map +0 -1
- package/dist/threads/thread-task-context.js +0 -160
- package/dist/threads/thread-task-context.js.map +0 -1
- package/dist/threads/thread-task-controller.d.ts +0 -122
- package/dist/threads/thread-task-controller.d.ts.map +0 -1
- package/dist/threads/thread-task-controller.js +0 -276
- package/dist/threads/thread-task-controller.js.map +0 -1
- package/dist/threads/thread-task-runtime.d.ts +0 -354
- package/dist/threads/thread-task-runtime.d.ts.map +0 -1
- package/dist/threads/thread-task-runtime.js +0 -917
- package/dist/threads/thread-task-runtime.js.map +0 -1
- package/dist/tools/switch-session.d.ts +0 -15
- package/dist/tools/switch-session.d.ts.map +0 -1
- package/dist/tools/switch-session.js +0 -88
- package/dist/tools/switch-session.js.map +0 -1
- package/dist/tools/thread-tasks.d.ts +0 -23
- package/dist/tools/thread-tasks.d.ts.map +0 -1
- package/dist/tools/thread-tasks.js +0 -122
- package/dist/tools/thread-tasks.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-batch.js","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-batch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Which memory files Dreaming may see and edit (#2805 stage 2). Shared by the
|
|
3
|
+
* host, which selects consolidation work, and the worker's `dream_memory`
|
|
4
|
+
* tool, which enforces the same boundary on every call.
|
|
5
|
+
*
|
|
6
|
+
* Ordinary memory and Claude auto-memory keep their own locations and
|
|
7
|
+
* formats. Credentials, runtime-owned task snapshots, hidden files (including
|
|
8
|
+
* Dreaming's own `.dream_log`) and symlinks are outside the boundary.
|
|
9
|
+
*/
|
|
10
|
+
export interface MemoryStoreRoot {
|
|
11
|
+
prefix: "/memories" | "/auto-memory";
|
|
12
|
+
directory: string;
|
|
13
|
+
}
|
|
14
|
+
export declare function dreamingStores(options?: {
|
|
15
|
+
memoriesDir?: string;
|
|
16
|
+
autoMemoryDir?: string | null;
|
|
17
|
+
}): MemoryStoreRoot[];
|
|
18
|
+
/** A store-relative directory path Dreaming may list; "" is the store root. */
|
|
19
|
+
export declare function isMemoryDirectoryRelative(relative: string): boolean;
|
|
20
|
+
/** A store-relative path Dreaming may read and edit. */
|
|
21
|
+
export declare function isMemoryFileRelative(relative: string): boolean;
|
|
22
|
+
/** Reject links in every path component, including the store root. */
|
|
23
|
+
export declare function assertNoSymlinks(filePath: string, root: string): void;
|
|
24
|
+
export interface ResolvedMemoryPath {
|
|
25
|
+
store: MemoryStoreRoot;
|
|
26
|
+
/** Store-relative, "/"-separated; "" for the store root. */
|
|
27
|
+
relative: string;
|
|
28
|
+
fullPath: string;
|
|
29
|
+
virtualPath: string;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Map a `/memories/...` or `/auto-memory/...` path onto the store, refusing
|
|
33
|
+
* anything outside the Dreaming boundary. `kind` says what the caller needs:
|
|
34
|
+
* a listable directory or an editable file.
|
|
35
|
+
*/
|
|
36
|
+
export declare function resolveMemoryPath(stores: MemoryStoreRoot[], virtualPath: string, kind: "file" | "directory"): ResolvedMemoryPath;
|
|
37
|
+
export interface MemoryFileEntry {
|
|
38
|
+
virtualPath: string;
|
|
39
|
+
fullPath: string;
|
|
40
|
+
size: number;
|
|
41
|
+
mtimeMs: number;
|
|
42
|
+
}
|
|
43
|
+
/** Every editable memory file, without following links or entering hidden directories. */
|
|
44
|
+
export declare function listMemoryFiles(stores: MemoryStoreRoot[]): MemoryFileEntry[];
|
|
45
|
+
/** Dreaming's private state directory inside ordinary memory; hidden from every memory tool. */
|
|
46
|
+
export declare const DREAM_LOG_DIR = ".dream_log";
|
|
47
|
+
export declare function dreamLogDir(memoriesDir?: string): string;
|
|
48
|
+
//# sourceMappingURL=dreaming-files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-files.d.ts","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-files.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,WAAW,GAAG,cAAc,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,cAAc,CAAC,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAAG,eAAe,EAAE,CAKvH;AAiBD,+EAA+E;AAC/E,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,wDAAwD;AACxD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAK9D;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAYrE;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,eAAe,CAAC;IACvB,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,kBAAkB,CAUhI;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,0FAA0F;AAC1F,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,eAAe,EAAE,CA4B5E;AAED,gGAAgG;AAChG,eAAO,MAAM,aAAa,eAAe,CAAC;AAE1C,wBAAgB,WAAW,CAAC,WAAW,SAAmB,GAAG,MAAM,CAElE"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { getClaudeAutoMemoryDir, getMemoriesDir } from "../../config/index.js";
|
|
4
|
+
export function dreamingStores(options = {}) {
|
|
5
|
+
const stores = [{ prefix: "/memories", directory: options.memoriesDir ?? getMemoriesDir() }];
|
|
6
|
+
const autoMemoryDir = options.autoMemoryDir === undefined ? getClaudeAutoMemoryDir() : options.autoMemoryDir;
|
|
7
|
+
if (autoMemoryDir !== null)
|
|
8
|
+
stores.push({ prefix: "/auto-memory", directory: autoMemoryDir });
|
|
9
|
+
return stores;
|
|
10
|
+
}
|
|
11
|
+
// These files contain credentials, or are task snapshots the retired
|
|
12
|
+
// critical-state flush wrote (#1996 PR 6 keeps them on disk for reference,
|
|
13
|
+
// read-only). This is an ownership boundary, not a classification of
|
|
14
|
+
// agent-authored memory.
|
|
15
|
+
const PROTECTED_FILES = new Set([
|
|
16
|
+
"identity.md", "credentials.md", "secrets.md", "passwords.md",
|
|
17
|
+
"identity.txt", "credentials.txt", "secrets.txt", "passwords.txt",
|
|
18
|
+
"active_tasks.md", "pending_actions.md",
|
|
19
|
+
]);
|
|
20
|
+
function isVisibleSegment(part) {
|
|
21
|
+
return part.length > 0 && part !== "." && part !== ".." && !part.startsWith(".")
|
|
22
|
+
&& part !== "node_modules" && !part.includes("\\") && !part.includes("\0");
|
|
23
|
+
}
|
|
24
|
+
/** A store-relative directory path Dreaming may list; "" is the store root. */
|
|
25
|
+
export function isMemoryDirectoryRelative(relative) {
|
|
26
|
+
return relative === "" || relative.split("/").every(isVisibleSegment);
|
|
27
|
+
}
|
|
28
|
+
/** A store-relative path Dreaming may read and edit. */
|
|
29
|
+
export function isMemoryFileRelative(relative) {
|
|
30
|
+
const segments = relative.split("/");
|
|
31
|
+
return segments.every(isVisibleSegment)
|
|
32
|
+
&& /\.(md|txt)$/i.test(relative)
|
|
33
|
+
&& !PROTECTED_FILES.has(segments[segments.length - 1].toLowerCase());
|
|
34
|
+
}
|
|
35
|
+
/** Reject links in every path component, including the store root. */
|
|
36
|
+
export function assertNoSymlinks(filePath, root) {
|
|
37
|
+
const absolute = path.resolve(filePath);
|
|
38
|
+
const parent = path.dirname(absolute);
|
|
39
|
+
if (absolute !== path.resolve(root) && parent !== absolute)
|
|
40
|
+
assertNoSymlinks(parent, root);
|
|
41
|
+
try {
|
|
42
|
+
if (fs.lstatSync(absolute).isSymbolicLink()) {
|
|
43
|
+
// Store-relative: the message reaches the model, which must not learn host paths.
|
|
44
|
+
throw new Error(`Dreaming refuses a symlink: ${path.relative(path.resolve(root), absolute) || "store root"}`);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
if (err.code !== "ENOENT")
|
|
49
|
+
throw err;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Map a `/memories/...` or `/auto-memory/...` path onto the store, refusing
|
|
54
|
+
* anything outside the Dreaming boundary. `kind` says what the caller needs:
|
|
55
|
+
* a listable directory or an editable file.
|
|
56
|
+
*/
|
|
57
|
+
export function resolveMemoryPath(stores, virtualPath, kind) {
|
|
58
|
+
const normalized = virtualPath.replace(/\/+$/, "");
|
|
59
|
+
const store = stores.find((candidate) => normalized === candidate.prefix || normalized.startsWith(`${candidate.prefix}/`));
|
|
60
|
+
if (!store)
|
|
61
|
+
throw new Error(`Unknown memory store: ${virtualPath}. Paths start with ${stores.map((item) => item.prefix).join(" or ")}`);
|
|
62
|
+
const relative = normalized.slice(store.prefix.length + 1);
|
|
63
|
+
const allowed = kind === "file" ? isMemoryFileRelative(relative) : isMemoryDirectoryRelative(relative);
|
|
64
|
+
if (!allowed)
|
|
65
|
+
throw new Error(`Not ${kind === "file" ? "an editable memory file" : "a memory directory"}: ${virtualPath}`);
|
|
66
|
+
const fullPath = relative ? path.join(store.directory, ...relative.split("/")) : store.directory;
|
|
67
|
+
assertNoSymlinks(fullPath, store.directory);
|
|
68
|
+
return { store, relative, fullPath, virtualPath: relative ? `${store.prefix}/${relative}` : store.prefix };
|
|
69
|
+
}
|
|
70
|
+
/** Every editable memory file, without following links or entering hidden directories. */
|
|
71
|
+
export function listMemoryFiles(stores) {
|
|
72
|
+
const files = [];
|
|
73
|
+
for (const store of stores) {
|
|
74
|
+
const visit = (relative) => {
|
|
75
|
+
const directory = relative ? path.join(store.directory, ...relative.split("/")) : store.directory;
|
|
76
|
+
assertNoSymlinks(directory, store.directory);
|
|
77
|
+
let entries;
|
|
78
|
+
try {
|
|
79
|
+
entries = fs.readdirSync(directory, { withFileTypes: true });
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
if (err.code === "ENOENT")
|
|
83
|
+
return;
|
|
84
|
+
throw err;
|
|
85
|
+
}
|
|
86
|
+
for (const entry of entries.sort((a, b) => a.name.localeCompare(b.name))) {
|
|
87
|
+
if (!isVisibleSegment(entry.name) || entry.isSymbolicLink())
|
|
88
|
+
continue;
|
|
89
|
+
const child = relative ? `${relative}/${entry.name}` : entry.name;
|
|
90
|
+
if (entry.isDirectory()) {
|
|
91
|
+
visit(child);
|
|
92
|
+
}
|
|
93
|
+
else if (entry.isFile() && isMemoryFileRelative(child)) {
|
|
94
|
+
const fullPath = path.join(directory, entry.name);
|
|
95
|
+
const stat = fs.statSync(fullPath);
|
|
96
|
+
files.push({ virtualPath: `${store.prefix}/${child}`, fullPath, size: stat.size, mtimeMs: stat.mtimeMs });
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
visit("");
|
|
101
|
+
}
|
|
102
|
+
return files;
|
|
103
|
+
}
|
|
104
|
+
/** Dreaming's private state directory inside ordinary memory; hidden from every memory tool. */
|
|
105
|
+
export const DREAM_LOG_DIR = ".dream_log";
|
|
106
|
+
export function dreamLogDir(memoriesDir = getMemoriesDir()) {
|
|
107
|
+
return path.join(memoriesDir, DREAM_LOG_DIR);
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=dreaming-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-files.js","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-files.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
/**
|
|
3
|
+
* Dreaming's durable progress (#2805 stage 2), written only by the
|
|
4
|
+
* maintenance host in the main process.
|
|
5
|
+
*
|
|
6
|
+
* Two independent records:
|
|
7
|
+
* - ingestion: a watermark per transcript source. It advances only when a
|
|
8
|
+
* batch reports the slice ingested or explicitly free of new facts.
|
|
9
|
+
* - consolidation: per memory file, the content hash it was last reviewed
|
|
10
|
+
* at. Tidying never moves an ingestion watermark back or forward.
|
|
11
|
+
*
|
|
12
|
+
* A source or file whose batch failed or was left unfinished is deferred to
|
|
13
|
+
* the next local day, so a failing input does not spin within one night but
|
|
14
|
+
* is never dropped either.
|
|
15
|
+
*/
|
|
16
|
+
declare const WatermarkSchema: z.ZodObject<{
|
|
17
|
+
record: z.ZodNullable<z.ZodString>;
|
|
18
|
+
recordOffset: z.ZodOptional<z.ZodNumber>;
|
|
19
|
+
recordTextHash: z.ZodOptional<z.ZodString>;
|
|
20
|
+
timestamp: z.ZodNullable<z.ZodString>;
|
|
21
|
+
cutoffMs: z.ZodNumber;
|
|
22
|
+
sourceMtimeMs: z.ZodDefault<z.ZodNullable<z.ZodNumber>>;
|
|
23
|
+
}, z.core.$strict>;
|
|
24
|
+
declare const ReviewSchema: z.ZodObject<{
|
|
25
|
+
hash: z.ZodString;
|
|
26
|
+
reviewedAt: z.ZodString;
|
|
27
|
+
}, z.core.$strict>;
|
|
28
|
+
export type DreamingWatermark = z.infer<typeof WatermarkSchema>;
|
|
29
|
+
/** Keyed lookups may miss; the parsed schema type is widened to say so. */
|
|
30
|
+
export interface DreamingLedgerData {
|
|
31
|
+
version: 1;
|
|
32
|
+
ingestion: Partial<Record<string, DreamingWatermark>>;
|
|
33
|
+
consolidation: Partial<Record<string, z.infer<typeof ReviewSchema>>>;
|
|
34
|
+
deferred: Partial<Record<string, number>>;
|
|
35
|
+
}
|
|
36
|
+
export declare const DREAMING_LEDGER_FILE = "dreaming-ledger.json";
|
|
37
|
+
export declare function dreamingLedgerPath(memoriesDir?: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Read the ledger. A missing file is a fresh start; an unreadable one fails
|
|
40
|
+
* loudly, because silently resetting watermarks would re-ingest history.
|
|
41
|
+
*/
|
|
42
|
+
export declare function readDreamingLedger(memoriesDir?: string): DreamingLedgerData;
|
|
43
|
+
export declare function writeDreamingLedger(ledger: DreamingLedgerData, memoriesDir?: string): void;
|
|
44
|
+
/** Apply `mutate` to the current ledger and save it. */
|
|
45
|
+
export declare function updateDreamingLedger(mutate: (ledger: DreamingLedgerData) => void, memoriesDir?: string): DreamingLedgerData;
|
|
46
|
+
/**
|
|
47
|
+
* Per-transcript watermarks of the previous single-pass Dreaming
|
|
48
|
+
* (`.dream_log/state.json`: transcript path → mtime when last dreamed). Read
|
|
49
|
+
* only to place a session seen for the first time after an upgrade, so its
|
|
50
|
+
* already-dreamed history is not read again.
|
|
51
|
+
*/
|
|
52
|
+
export declare function readLegacyDreamWatermarks(memoriesDir?: string): Map<string, number>;
|
|
53
|
+
/** Edit metadata is kept for diagnosis; backups hold memory content and are kept briefly. */
|
|
54
|
+
export declare const DREAM_EDIT_LOG_RETENTION_DAYS = 90;
|
|
55
|
+
export declare const DREAM_BACKUP_RETENTION_DAYS = 14;
|
|
56
|
+
/** Bound Dreaming's local records: dated edit logs, legacy dream logs and per-batch backups. */
|
|
57
|
+
export declare function pruneDreamingRecords(now: Date, memoriesDir?: string): void;
|
|
58
|
+
export declare function isDeferred(ledger: DreamingLedgerData, key: string, localDay: number): boolean;
|
|
59
|
+
/** Defer `key` until the day after `localDay`. */
|
|
60
|
+
export declare function deferToNextDay(ledger: DreamingLedgerData, key: string, localDay: number): void;
|
|
61
|
+
export {};
|
|
62
|
+
//# sourceMappingURL=dreaming-ledger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-ledger.d.ts","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-ledger.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,eAAe;;;;;;;kBAcV,CAAC;AAEZ,QAAA,MAAM,YAAY;;;kBAGP,CAAC;AAUZ,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAChE,2EAA2E;AAC3E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,CAAC,CAAC;IACX,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC;IACtD,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;IACrE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAC3C;AAED,eAAO,MAAM,oBAAoB,yBAAyB,CAAC;AAE3D,wBAAgB,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAW3E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,kBAAkB,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAI1F;AAED,wDAAwD;AACxD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,kBAAkB,KAAK,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAK3H;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAWnF;AAGD,6FAA6F;AAC7F,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAChD,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,gGAAgG;AAChG,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CA4B1E;AAED,wBAAgB,UAAU,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAG7F;AAED,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAE9F"}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import fs from "node:fs";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { z } from "zod";
|
|
4
|
+
import { writeJsonAtomically } from "../../utils/atomic-json.js";
|
|
5
|
+
import { dreamLogDir } from "./dreaming-files.js";
|
|
6
|
+
/**
|
|
7
|
+
* Dreaming's durable progress (#2805 stage 2), written only by the
|
|
8
|
+
* maintenance host in the main process.
|
|
9
|
+
*
|
|
10
|
+
* Two independent records:
|
|
11
|
+
* - ingestion: a watermark per transcript source. It advances only when a
|
|
12
|
+
* batch reports the slice ingested or explicitly free of new facts.
|
|
13
|
+
* - consolidation: per memory file, the content hash it was last reviewed
|
|
14
|
+
* at. Tidying never moves an ingestion watermark back or forward.
|
|
15
|
+
*
|
|
16
|
+
* A source or file whose batch failed or was left unfinished is deferred to
|
|
17
|
+
* the next local day, so a failing input does not spin within one night but
|
|
18
|
+
* is never dropped either.
|
|
19
|
+
*/
|
|
20
|
+
const WatermarkSchema = z.object({
|
|
21
|
+
record: z.string().nullable(),
|
|
22
|
+
/** Non-zero while a long record is being consumed across slices. */
|
|
23
|
+
recordOffset: z.number().int().nonnegative().optional(),
|
|
24
|
+
/** Rendered text hash paired with a non-zero recordOffset. */
|
|
25
|
+
recordTextHash: z.string().optional(),
|
|
26
|
+
timestamp: z.string().nullable(),
|
|
27
|
+
cutoffMs: z.number(),
|
|
28
|
+
/**
|
|
29
|
+
* Newest file mtime of the source when its last fully consumed slice was
|
|
30
|
+
* planned. Unchanged files since then hold nothing new. Compared only with
|
|
31
|
+
* other mtimes, never with record timestamps (different clocks).
|
|
32
|
+
*/
|
|
33
|
+
sourceMtimeMs: z.number().nullable().default(null),
|
|
34
|
+
}).strict();
|
|
35
|
+
const ReviewSchema = z.object({
|
|
36
|
+
hash: z.string(),
|
|
37
|
+
reviewedAt: z.string(),
|
|
38
|
+
}).strict();
|
|
39
|
+
const LedgerSchema = z.object({
|
|
40
|
+
version: z.literal(1),
|
|
41
|
+
ingestion: z.record(z.string(), WatermarkSchema).default({}),
|
|
42
|
+
consolidation: z.record(z.string(), ReviewSchema).default({}),
|
|
43
|
+
/** sourceKey or memory path → local day before which it is not retried. */
|
|
44
|
+
deferred: z.record(z.string(), z.number().int()).default({}),
|
|
45
|
+
}).strict();
|
|
46
|
+
export const DREAMING_LEDGER_FILE = "dreaming-ledger.json";
|
|
47
|
+
export function dreamingLedgerPath(memoriesDir) {
|
|
48
|
+
return path.join(dreamLogDir(memoriesDir), DREAMING_LEDGER_FILE);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Read the ledger. A missing file is a fresh start; an unreadable one fails
|
|
52
|
+
* loudly, because silently resetting watermarks would re-ingest history.
|
|
53
|
+
*/
|
|
54
|
+
export function readDreamingLedger(memoriesDir) {
|
|
55
|
+
let raw;
|
|
56
|
+
try {
|
|
57
|
+
raw = fs.readFileSync(dreamingLedgerPath(memoriesDir), "utf8");
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
if (error.code === "ENOENT")
|
|
61
|
+
return { version: 1, ingestion: {}, consolidation: {}, deferred: {} };
|
|
62
|
+
throw error;
|
|
63
|
+
}
|
|
64
|
+
const parsed = LedgerSchema.safeParse(JSON.parse(raw));
|
|
65
|
+
if (!parsed.success)
|
|
66
|
+
throw new Error("Dreaming ledger is unreadable; refusing to reset watermarks");
|
|
67
|
+
return parsed.data;
|
|
68
|
+
}
|
|
69
|
+
export function writeDreamingLedger(ledger, memoriesDir) {
|
|
70
|
+
const file = dreamingLedgerPath(memoriesDir);
|
|
71
|
+
fs.mkdirSync(path.dirname(file), { recursive: true, mode: 0o700 });
|
|
72
|
+
writeJsonAtomically(file, LedgerSchema.parse(ledger));
|
|
73
|
+
}
|
|
74
|
+
/** Apply `mutate` to the current ledger and save it. */
|
|
75
|
+
export function updateDreamingLedger(mutate, memoriesDir) {
|
|
76
|
+
const ledger = readDreamingLedger(memoriesDir);
|
|
77
|
+
mutate(ledger);
|
|
78
|
+
writeDreamingLedger(ledger, memoriesDir);
|
|
79
|
+
return ledger;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Per-transcript watermarks of the previous single-pass Dreaming
|
|
83
|
+
* (`.dream_log/state.json`: transcript path → mtime when last dreamed). Read
|
|
84
|
+
* only to place a session seen for the first time after an upgrade, so its
|
|
85
|
+
* already-dreamed history is not read again.
|
|
86
|
+
*/
|
|
87
|
+
export function readLegacyDreamWatermarks(memoriesDir) {
|
|
88
|
+
const watermarks = new Map();
|
|
89
|
+
try {
|
|
90
|
+
const parsed = JSON.parse(fs.readFileSync(path.join(dreamLogDir(memoriesDir), "state.json"), "utf8"));
|
|
91
|
+
if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) {
|
|
92
|
+
for (const [key, value] of Object.entries(parsed)) {
|
|
93
|
+
if (key.startsWith("/") && typeof value === "number" && Number.isFinite(value))
|
|
94
|
+
watermarks.set(key, value);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
catch { /* none, or unreadable: start from the recent window */ }
|
|
99
|
+
return watermarks;
|
|
100
|
+
}
|
|
101
|
+
const DAY_MS = 24 * 60 * 60 * 1000;
|
|
102
|
+
/** Edit metadata is kept for diagnosis; backups hold memory content and are kept briefly. */
|
|
103
|
+
export const DREAM_EDIT_LOG_RETENTION_DAYS = 90;
|
|
104
|
+
export const DREAM_BACKUP_RETENTION_DAYS = 14;
|
|
105
|
+
/** Bound Dreaming's local records: dated edit logs, legacy dream logs and per-batch backups. */
|
|
106
|
+
export function pruneDreamingRecords(now, memoriesDir) {
|
|
107
|
+
const root = dreamLogDir(memoriesDir);
|
|
108
|
+
const prune = (dir, keepDays, ageOf) => {
|
|
109
|
+
let names;
|
|
110
|
+
try {
|
|
111
|
+
names = fs.readdirSync(dir);
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
for (const name of names) {
|
|
117
|
+
const full = path.join(dir, name);
|
|
118
|
+
const at = ageOf(name, full);
|
|
119
|
+
if (at !== null && now.getTime() - at > keepDays * DAY_MS)
|
|
120
|
+
fs.rmSync(full, { recursive: true, force: true });
|
|
121
|
+
}
|
|
122
|
+
};
|
|
123
|
+
const dated = (pattern) => (name) => {
|
|
124
|
+
const match = pattern.exec(name);
|
|
125
|
+
return match ? Date.parse(match[1]) : null;
|
|
126
|
+
};
|
|
127
|
+
prune(path.join(root, "edits"), DREAM_EDIT_LOG_RETENTION_DAYS, dated(/^(\d{4}-\d{2}-\d{2})\.jsonl$/));
|
|
128
|
+
prune(root, DREAM_EDIT_LOG_RETENTION_DAYS, dated(/^(\d{4}-\d{2}-\d{2})\.md$/));
|
|
129
|
+
prune(path.join(root, "backups"), DREAM_BACKUP_RETENTION_DAYS, (_name, full) => {
|
|
130
|
+
try {
|
|
131
|
+
return fs.statSync(full).mtimeMs;
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
});
|
|
137
|
+
}
|
|
138
|
+
export function isDeferred(ledger, key, localDay) {
|
|
139
|
+
const until = ledger.deferred[key];
|
|
140
|
+
return until !== undefined && localDay < until;
|
|
141
|
+
}
|
|
142
|
+
/** Defer `key` until the day after `localDay`. */
|
|
143
|
+
export function deferToNextDay(ledger, key, localDay) {
|
|
144
|
+
ledger.deferred[key] = localDay + 1;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=dreaming-ledger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-ledger.js","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-ledger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The maintenance host's side of Dreaming (#2805 stage 2): plan one bounded
|
|
3
|
+
* batch, submit it as an internal execution, and apply its outcome.
|
|
4
|
+
*
|
|
5
|
+
* Runs in the main process only. It is the only writer of the Dreaming
|
|
6
|
+
* ledger, the batch files and the vocabulary glossary; the worker edits
|
|
7
|
+
* memory through `dream_memory` and reports everything else.
|
|
8
|
+
*
|
|
9
|
+
* Ingestion and consolidation are separate queues with separate progress:
|
|
10
|
+
* - ingestion takes the oldest pending slice of one transcript session and
|
|
11
|
+
* advances that session's watermark only for `ingested` or `no_new_facts`;
|
|
12
|
+
* - consolidation reviews a few memory files and records the hash each was
|
|
13
|
+
* reviewed at; a file changes or new files appear → it is due again.
|
|
14
|
+
* A failed, cancelled or unfinished batch keeps its inputs and defers them to
|
|
15
|
+
* the next local day.
|
|
16
|
+
*/
|
|
17
|
+
import { type DreamingBatch } from "./dreaming-batch.js";
|
|
18
|
+
export type DreamingOutcome = "completed" | "no_new_facts" | "partial" | "failed" | "cancelled";
|
|
19
|
+
export interface DreamingBatchSummary {
|
|
20
|
+
batchId: string;
|
|
21
|
+
kind: DreamingBatch["kind"];
|
|
22
|
+
outcome: DreamingOutcome;
|
|
23
|
+
committedEdits: number;
|
|
24
|
+
/** Files with a committed edit; paths only. */
|
|
25
|
+
editedPaths: string[];
|
|
26
|
+
vocabularyAccepted: number;
|
|
27
|
+
vocabularyRejected: number;
|
|
28
|
+
vocabularyMutated: boolean;
|
|
29
|
+
}
|
|
30
|
+
export interface DreamingPlannerOptions {
|
|
31
|
+
/** Persisted worker thread ids; the main thread is always included. */
|
|
32
|
+
threadIds: () => string[];
|
|
33
|
+
vocabularyLearning: () => boolean;
|
|
34
|
+
ownerPublicId: () => string | undefined;
|
|
35
|
+
now?: () => Date;
|
|
36
|
+
memoriesDir?: string;
|
|
37
|
+
autoMemoryDir?: string | null;
|
|
38
|
+
}
|
|
39
|
+
export declare class DreamingPlanner {
|
|
40
|
+
private readonly options;
|
|
41
|
+
private legacyWatermarks;
|
|
42
|
+
constructor(options: DreamingPlannerOptions);
|
|
43
|
+
/** Once per night: bound the local edit log and backups. */
|
|
44
|
+
startNight(): void;
|
|
45
|
+
private now;
|
|
46
|
+
private get memoriesDir();
|
|
47
|
+
private stores;
|
|
48
|
+
/**
|
|
49
|
+
* The next batch for `localDay`, written to disk, or null when both queues
|
|
50
|
+
* are empty for tonight. Ingestion goes first: new facts are what tidying
|
|
51
|
+
* should be informed by.
|
|
52
|
+
*/
|
|
53
|
+
planNext(localDay: number): DreamingBatch | null;
|
|
54
|
+
private newBatch;
|
|
55
|
+
/**
|
|
56
|
+
* The oldest pending slice among transcript sessions not deferred tonight.
|
|
57
|
+
* A session seen for the first time is registered with a fixed cutoff, so
|
|
58
|
+
* a later night continues from the same point instead of a moving window.
|
|
59
|
+
*/
|
|
60
|
+
private planIngestion;
|
|
61
|
+
private planConsolidation;
|
|
62
|
+
/**
|
|
63
|
+
* Apply a finished batch execution to the ledger and the glossary, then
|
|
64
|
+
* remove the batch file. Idempotent: a batch already applied is gone and
|
|
65
|
+
* returns null. `result` is the execution's terminal result; null when the
|
|
66
|
+
* execution never reached the store.
|
|
67
|
+
*/
|
|
68
|
+
applyResult(batchId: string, result: {
|
|
69
|
+
status: string;
|
|
70
|
+
data?: unknown;
|
|
71
|
+
} | null, options?: {
|
|
72
|
+
retryTonight?: boolean;
|
|
73
|
+
}): DreamingBatchSummary | null;
|
|
74
|
+
/** The watermark moves only for an explicit ingested or no_new_facts report. */
|
|
75
|
+
private applyIngestion;
|
|
76
|
+
/**
|
|
77
|
+
* Reviewed files record the hash they were reviewed at; the rest wait for
|
|
78
|
+
* the next night. Only a review the worker attests (it viewed the whole
|
|
79
|
+
* file) counts, and a file changed after its review is due again.
|
|
80
|
+
*/
|
|
81
|
+
private applyConsolidation;
|
|
82
|
+
private hashOf;
|
|
83
|
+
/** Batch files left by a host that stopped before applying them. */
|
|
84
|
+
pendingBatchIds(): string[];
|
|
85
|
+
}
|
|
86
|
+
//# sourceMappingURL=dreaming-planner.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dreaming-planner.d.ts","sourceRoot":"","sources":["../../../src/agent/nightly-maintenance/dreaming-planner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAQH,OAAO,EAQL,KAAK,aAAa,EAEnB,MAAM,qBAAqB,CAAC;AA4B7B,MAAM,MAAM,eAAe,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEhG,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,EAAE,eAAe,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,+CAA+C;IAC/C,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,WAAW,sBAAsB;IACrC,uEAAuE;IACvE,SAAS,EAAE,MAAM,MAAM,EAAE,CAAC;IAC1B,kBAAkB,EAAE,MAAM,OAAO,CAAC;IAClC,aAAa,EAAE,MAAM,MAAM,GAAG,SAAS,CAAC;IACxC,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAOD,qBAAa,eAAe;IAGd,OAAO,CAAC,QAAQ,CAAC,OAAO;IAFpC,OAAO,CAAC,gBAAgB,CAAoC;gBAE/B,OAAO,EAAE,sBAAsB;IAE5D,4DAA4D;IAC5D,UAAU,IAAI,IAAI;IAIlB,OAAO,CAAC,GAAG;IAEX,OAAO,KAAK,WAAW,GAAmE;IAE1F,OAAO,CAAC,MAAM;IAId;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWhD,OAAO,CAAC,QAAQ;IAahB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IAsErB,OAAO,CAAC,iBAAiB;IAoBzB;;;;;OAKG;IACH,WAAW,CACT,OAAO,EAAE,MAAM,EACf,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,EACjD,OAAO,GAAE;QAAE,YAAY,CAAC,EAAE,OAAO,CAAA;KAAO,GACvC,oBAAoB,GAAG,IAAI;IAqD9B,gFAAgF;IAChF,OAAO,CAAC,cAAc;IA+BtB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA+B1B,OAAO,CAAC,MAAM;IAQd,oEAAoE;IACpE,eAAe,IAAI,MAAM,EAAE;CAG5B"}
|