@aitne/daemon 0.1.7 → 0.1.9
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/adapters/composite-dashboard-stream.d.ts +8 -11
- package/dist/adapters/composite-dashboard-stream.js +8 -11
- package/dist/adapters/dashboard-adapter.d.ts +18 -6
- package/dist/adapters/dashboard-adapter.js +101 -55
- package/dist/adapters/discord.d.ts +10 -3
- package/dist/adapters/discord.js +102 -26
- package/dist/adapters/docs-qa-adapter.d.ts +15 -16
- package/dist/adapters/docs-qa-adapter.js +14 -15
- package/dist/adapters/message-hub.d.ts +2 -3
- package/dist/adapters/message-hub.js +9 -3
- package/dist/adapters/notification-manager.d.ts +100 -3
- package/dist/adapters/notification-manager.js +244 -23
- package/dist/adapters/outbound-text.d.ts +17 -4
- package/dist/adapters/outbound-text.js +119 -5
- package/dist/adapters/primary-platform-resolver.d.ts +68 -0
- package/dist/adapters/primary-platform-resolver.js +54 -0
- package/dist/adapters/slack-adapter.d.ts +32 -5
- package/dist/adapters/slack-adapter.js +146 -58
- package/dist/adapters/telegram-adapter.d.ts +11 -8
- package/dist/adapters/telegram-adapter.js +63 -42
- package/dist/adapters/types.d.ts +3 -4
- package/dist/adapters/types.js +0 -1
- package/dist/adapters/whatsapp-adapter.d.ts +104 -18
- package/dist/adapters/whatsapp-adapter.js +305 -69
- package/dist/api/chat-binding-query.d.ts +0 -1
- package/dist/api/chat-binding-query.js +0 -1
- package/dist/api/chat-session-resume.d.ts +0 -1
- package/dist/api/chat-session-resume.js +0 -1
- package/dist/api/directory-picker.d.ts +0 -1
- package/dist/api/directory-picker.js +14 -1
- package/dist/api/env-writer.d.ts +0 -1
- package/dist/api/env-writer.js +108 -5
- package/dist/api/helpers/agent-errors-envelope.d.ts +116 -0
- package/dist/api/helpers/agent-errors-envelope.js +165 -0
- package/dist/api/helpers/agent-errors-registry.d.ts +2290 -0
- package/dist/api/helpers/agent-errors-registry.js +2197 -0
- package/dist/api/helpers/agent-errors-types.d.ts +193 -0
- package/dist/api/helpers/agent-errors-types.js +15 -0
- package/dist/api/helpers/agent-errors-zod.d.ts +33 -0
- package/dist/api/helpers/agent-errors-zod.js +138 -0
- package/dist/api/helpers/agent-errors.d.ts +4 -0
- package/dist/api/helpers/agent-errors.js +17 -0
- package/dist/api/integration-route-gate.d.ts +0 -1
- package/dist/api/integration-route-gate.js +10 -4
- package/dist/api/json-body.d.ts +3 -4
- package/dist/api/json-body.js +3 -4
- package/dist/api/routes/activity-sources.d.ts +1 -2
- package/dist/api/routes/activity-sources.js +0 -1
- package/dist/api/routes/agent-schedule-plan-match.d.ts +4 -0
- package/dist/api/routes/agent-schedule-plan-match.js +100 -0
- package/dist/api/routes/agent-schedule.d.ts +3 -0
- package/dist/api/routes/agent-schedule.js +790 -0
- package/dist/api/routes/agent.d.ts +0 -1
- package/dist/api/routes/agent.js +233 -367
- package/dist/api/routes/agents/index.d.ts +3 -0
- package/dist/api/routes/agents/index.js +404 -0
- package/dist/api/routes/agents/views.d.ts +185 -0
- package/dist/api/routes/agents/views.js +514 -0
- package/dist/api/routes/apple-calendar.d.ts +1 -2
- package/dist/api/routes/apple-calendar.js +110 -29
- package/dist/api/routes/attachments.d.ts +0 -1
- package/dist/api/routes/attachments.js +113 -22
- package/dist/api/routes/backends.d.ts +0 -1
- package/dist/api/routes/backends.js +144 -40
- package/dist/api/routes/books.d.ts +0 -1
- package/dist/api/routes/books.js +65 -26
- package/dist/api/routes/browser-automation-purchase.d.ts +31 -0
- package/dist/api/routes/browser-automation-purchase.js +251 -0
- package/dist/api/routes/browser-automation-sites.d.ts +22 -0
- package/dist/api/routes/browser-automation-sites.js +238 -0
- package/dist/api/routes/browser-history-managed.d.ts +23 -0
- package/dist/api/routes/browser-history-managed.js +202 -0
- package/dist/api/routes/browser-history.d.ts +3 -0
- package/dist/api/routes/browser-history.js +433 -0
- package/dist/api/routes/browser-task.d.ts +43 -0
- package/dist/api/routes/browser-task.js +617 -0
- package/dist/api/routes/calendar.d.ts +3 -3
- package/dist/api/routes/calendar.js +330 -56
- package/dist/api/routes/commands.d.ts +0 -1
- package/dist/api/routes/commands.js +27 -2
- package/dist/api/routes/context/frontmatter-merge.d.ts +28 -0
- package/dist/api/routes/context/frontmatter-merge.js +56 -0
- package/dist/api/routes/context/index.d.ts +40 -0
- package/dist/api/routes/context/index.js +174 -0
- package/dist/api/routes/context/locks.d.ts +3 -0
- package/dist/api/routes/context/locks.js +136 -0
- package/dist/api/routes/context/path-resolve.d.ts +26 -0
- package/dist/api/routes/context/path-resolve.js +125 -0
- package/dist/api/routes/context/permissions.d.ts +58 -0
- package/dist/api/routes/context/permissions.js +234 -0
- package/dist/api/routes/context/read.d.ts +3 -0
- package/dist/api/routes/context/read.js +306 -0
- package/dist/api/routes/context/repair.d.ts +3 -0
- package/dist/api/routes/context/repair.js +114 -0
- package/dist/api/routes/context/snapshots.d.ts +3 -0
- package/dist/api/routes/context/snapshots.js +208 -0
- package/dist/api/routes/context/write-step.d.ts +132 -0
- package/dist/api/routes/context/write-step.js +151 -0
- package/dist/api/routes/context/write.d.ts +3 -0
- package/dist/api/routes/context/write.js +781 -0
- package/dist/api/routes/dashboard/config.d.ts +3 -0
- package/dist/api/routes/dashboard/config.js +507 -0
- package/dist/api/routes/dashboard/conversations.d.ts +3 -0
- package/dist/api/routes/dashboard/conversations.js +308 -0
- package/dist/api/routes/dashboard/cost-approvals.d.ts +28 -0
- package/dist/api/routes/dashboard/cost-approvals.js +258 -0
- package/dist/api/routes/dashboard/index.d.ts +26 -0
- package/dist/api/routes/dashboard/index.js +46 -0
- package/dist/api/routes/dashboard/messaging.d.ts +3 -0
- package/dist/api/routes/dashboard/messaging.js +349 -0
- package/dist/api/routes/dashboard/notifications.d.ts +3 -0
- package/dist/api/routes/dashboard/notifications.js +108 -0
- package/dist/api/routes/dashboard/oauth-google.d.ts +3 -0
- package/dist/api/routes/dashboard/oauth-google.js +288 -0
- package/dist/api/routes/dashboard/schedule-readonly.d.ts +3 -0
- package/dist/api/routes/dashboard/schedule-readonly.js +54 -0
- package/dist/api/routes/dashboard/secrets.d.ts +23 -0
- package/dist/api/routes/dashboard/secrets.js +306 -0
- package/dist/api/routes/dashboard/snapshots.d.ts +3 -0
- package/dist/api/routes/dashboard/snapshots.js +32 -0
- package/dist/api/routes/delegated-sync.d.ts +0 -1
- package/dist/api/routes/delegated-sync.js +0 -1
- package/dist/api/routes/delegated.d.ts +5 -5
- package/dist/api/routes/delegated.js +6 -6
- package/dist/api/routes/docs.d.ts +0 -1
- package/dist/api/routes/docs.js +72 -10
- package/dist/api/routes/entities.d.ts +0 -1
- package/dist/api/routes/entities.js +114 -45
- package/dist/api/routes/fs.d.ts +0 -1
- package/dist/api/routes/fs.js +27 -13
- package/dist/api/routes/fs.logic.d.ts +0 -1
- package/dist/api/routes/fs.logic.js +6 -2
- package/dist/api/routes/git-accounts.d.ts +0 -1
- package/dist/api/routes/git-accounts.js +0 -1
- package/dist/api/routes/git-templates.d.ts +0 -1
- package/dist/api/routes/git-templates.js +113 -28
- package/dist/api/routes/git.d.ts +0 -1
- package/dist/api/routes/git.js +65 -16
- package/dist/api/routes/github.d.ts +0 -1
- package/dist/api/routes/github.js +130 -24
- package/dist/api/routes/health.d.ts +0 -1
- package/dist/api/routes/health.js +4 -3
- package/dist/api/routes/integrations/crud-patch.d.ts +16 -0
- package/dist/api/routes/integrations/crud-patch.js +638 -0
- package/dist/api/routes/integrations/crud.d.ts +15 -0
- package/dist/api/routes/integrations/crud.js +157 -0
- package/dist/api/routes/integrations/exec.d.ts +22 -0
- package/dist/api/routes/integrations/exec.js +349 -0
- package/dist/api/routes/integrations/index.d.ts +61 -0
- package/dist/api/routes/integrations/index.js +69 -0
- package/dist/api/routes/integrations/probe.d.ts +20 -0
- package/dist/api/routes/integrations/probe.js +246 -0
- package/dist/api/routes/integrations-reconcile.d.ts +0 -1
- package/dist/api/routes/integrations-reconcile.js +0 -1
- package/dist/api/routes/knowledge.d.ts +0 -1
- package/dist/api/routes/knowledge.js +14 -4
- package/dist/api/routes/mail/accounts.d.ts +3 -0
- package/dist/api/routes/mail/accounts.js +288 -0
- package/dist/api/routes/mail/app-password.d.ts +3 -0
- package/dist/api/routes/mail/app-password.js +191 -0
- package/dist/api/routes/mail/body-helpers.d.ts +55 -0
- package/dist/api/routes/mail/body-helpers.js +90 -0
- package/dist/api/routes/mail/dependencies.d.ts +35 -0
- package/dist/api/routes/mail/dependencies.js +1 -0
- package/dist/api/routes/mail/drafts.d.ts +4 -0
- package/dist/api/routes/mail/drafts.js +138 -0
- package/dist/api/routes/mail/gating.d.ts +44 -0
- package/dist/api/routes/mail/gating.js +98 -0
- package/dist/api/routes/mail/index.d.ts +17 -0
- package/dist/api/routes/mail/index.js +39 -0
- package/dist/api/routes/mail/messages.d.ts +14 -0
- package/dist/api/routes/mail/messages.js +238 -0
- package/dist/api/routes/mail/outlook-config.d.ts +3 -0
- package/dist/api/routes/mail/outlook-config.js +72 -0
- package/dist/api/routes/mail/provider-resolver.d.ts +63 -0
- package/dist/api/routes/mail/provider-resolver.js +285 -0
- package/dist/api/routes/mail/providers.d.ts +3 -0
- package/dist/api/routes/mail/providers.js +72 -0
- package/dist/api/routes/mail/search-health.d.ts +3 -0
- package/dist/api/routes/mail/search-health.js +130 -0
- package/dist/api/routes/mail/tags-folders.d.ts +4 -0
- package/dist/api/routes/mail/tags-folders.js +34 -0
- package/dist/api/routes/mail/validators.d.ts +22 -0
- package/dist/api/routes/mail/validators.js +130 -0
- package/dist/api/routes/managed-tasks.d.ts +0 -1
- package/dist/api/routes/managed-tasks.js +154 -63
- package/dist/api/routes/mcp.d.ts +0 -1
- package/dist/api/routes/mcp.js +115 -48
- package/dist/api/routes/metrics.d.ts +1 -2
- package/dist/api/routes/metrics.js +2 -3
- package/dist/api/routes/notion.d.ts +0 -1
- package/dist/api/routes/notion.js +234 -55
- package/dist/api/routes/observations.d.ts +0 -1
- package/dist/api/routes/observations.js +53 -184
- package/dist/api/routes/obsidian.d.ts +0 -1
- package/dist/api/routes/obsidian.js +193 -33
- package/dist/api/routes/profile-questions.d.ts +0 -1
- package/dist/api/routes/profile-questions.js +26 -5
- package/dist/api/routes/receipts.d.ts +0 -1
- package/dist/api/routes/receipts.js +64 -25
- package/dist/api/routes/recurring-schedules.d.ts +0 -1
- package/dist/api/routes/recurring-schedules.js +288 -15
- package/dist/api/routes/repositories.d.ts +0 -1
- package/dist/api/routes/repositories.js +278 -105
- package/dist/api/routes/schedule-model-resolver.d.ts +152 -0
- package/dist/api/routes/schedule-model-resolver.js +285 -0
- package/dist/api/routes/schedule-options.d.ts +24 -0
- package/dist/api/routes/schedule-options.js +76 -0
- package/dist/api/routes/schedule-validation.d.ts +145 -0
- package/dist/api/routes/schedule-validation.js +152 -0
- package/dist/api/routes/setup-migrate.d.ts +0 -1
- package/dist/api/routes/setup-migrate.js +6 -4
- package/dist/api/routes/setup.d.ts +0 -1
- package/dist/api/routes/setup.js +142 -27
- package/dist/api/routes/skill-curation.d.ts +0 -1
- package/dist/api/routes/skill-curation.js +0 -1
- package/dist/api/routes/skills.d.ts +2 -1
- package/dist/api/routes/skills.js +92 -33
- package/dist/api/routes/sot-bindings.d.ts +1 -2
- package/dist/api/routes/sot-bindings.js +46 -12
- package/dist/api/routes/sse.d.ts +0 -1
- package/dist/api/routes/sse.js +6 -2
- package/dist/api/routes/system.d.ts +0 -1
- package/dist/api/routes/system.js +15 -3
- package/dist/api/routes/task-flows.d.ts +0 -1
- package/dist/api/routes/task-flows.js +0 -1
- package/dist/api/routes/travel-bookings.d.ts +0 -1
- package/dist/api/routes/travel-bookings.js +26 -10
- package/dist/api/routes/triggers.d.ts +0 -1
- package/dist/api/routes/triggers.js +0 -1
- package/dist/api/routes/voice.d.ts +0 -1
- package/dist/api/routes/voice.js +0 -1
- package/dist/api/routes/wiki.d.ts +0 -1
- package/dist/api/routes/wiki.js +84 -17
- package/dist/api/server.d.ts +55 -6
- package/dist/api/server.js +76 -22
- package/dist/bootstrap/adapters.d.ts +0 -1
- package/dist/bootstrap/adapters.js +7 -5
- package/dist/bootstrap/api.d.ts +219 -0
- package/dist/bootstrap/api.js +502 -0
- package/dist/bootstrap/catchup.d.ts +0 -1
- package/dist/bootstrap/catchup.js +1 -2
- package/dist/bootstrap/db.d.ts +213 -0
- package/dist/bootstrap/db.js +617 -0
- package/dist/bootstrap/event-pipeline.d.ts +329 -0
- package/dist/bootstrap/event-pipeline.js +1203 -0
- package/dist/bootstrap/managed-chromium.d.ts +26 -0
- package/dist/bootstrap/managed-chromium.js +66 -0
- package/dist/bootstrap/observers.d.ts +147 -0
- package/dist/bootstrap/observers.js +586 -0
- package/dist/bootstrap/schedule-helpers.d.ts +122 -1
- package/dist/bootstrap/schedule-helpers.js +206 -6
- package/dist/bootstrap/services.d.ts +0 -1
- package/dist/bootstrap/services.js +1 -11
- package/dist/config.d.ts +1 -2
- package/dist/config.js +32 -15
- package/dist/core/abort-utils.d.ts +13 -0
- package/dist/core/abort-utils.js +35 -0
- package/dist/core/agent-core.d.ts +36 -4
- package/dist/core/agent-core.js +3 -2
- package/dist/core/agent-execution-recorder.d.ts +78 -0
- package/dist/core/agent-execution-recorder.js +60 -0
- package/dist/core/agents/agent-execution-tracker.d.ts +91 -0
- package/dist/core/agents/agent-execution-tracker.js +226 -0
- package/dist/core/agents/agent-frontmatter.d.ts +57 -0
- package/dist/core/agents/agent-frontmatter.js +74 -0
- package/dist/core/agents/agent-id-resolver.d.ts +47 -0
- package/dist/core/agents/agent-id-resolver.js +61 -0
- package/dist/core/agents/builtin-registry.d.ts +156 -0
- package/dist/core/agents/builtin-registry.js +257 -0
- package/dist/core/agents/cron-substitute.d.ts +60 -0
- package/dist/core/agents/cron-substitute.js +100 -0
- package/dist/core/agents/definition-criteria.d.ts +14 -0
- package/dist/core/agents/definition-criteria.js +25 -0
- package/dist/core/agents/effective-definition.d.ts +47 -0
- package/dist/core/agents/effective-definition.js +101 -0
- package/dist/core/agents/firing-blocked.d.ts +28 -0
- package/dist/core/agents/firing-blocked.js +27 -0
- package/dist/core/agents/loader-boot.d.ts +26 -0
- package/dist/core/agents/loader-boot.js +98 -0
- package/dist/core/agents/loader-watcher.d.ts +23 -0
- package/dist/core/agents/loader-watcher.js +84 -0
- package/dist/core/agents/loader.d.ts +188 -0
- package/dist/core/agents/loader.js +754 -0
- package/dist/core/agents/override-merge.d.ts +57 -0
- package/dist/core/agents/override-merge.js +131 -0
- package/dist/core/agents/recurrence-convert.d.ts +92 -0
- package/dist/core/agents/recurrence-convert.js +207 -0
- package/dist/core/agents/recurring-schedule-adapter.d.ts +24 -0
- package/dist/core/agents/recurring-schedule-adapter.js +157 -0
- package/dist/core/agents/success-criteria.d.ts +60 -0
- package/dist/core/agents/success-criteria.js +139 -0
- package/dist/core/agents/validate-agent-md.d.ts +17 -0
- package/dist/core/agents/validate-agent-md.js +64 -0
- package/dist/core/alerts.d.ts +0 -1
- package/dist/core/alerts.js +0 -1
- package/dist/core/atomic-write.d.ts +0 -1
- package/dist/core/atomic-write.js +17 -4
- package/dist/core/backends/api-key-probe.d.ts +0 -1
- package/dist/core/backends/api-key-probe.js +0 -1
- package/dist/core/backends/auth-health-monitor.d.ts +0 -1
- package/dist/core/backends/auth-health-monitor.js +31 -5
- package/dist/core/backends/auth-recovery.d.ts +0 -1
- package/dist/core/backends/auth-recovery.js +17 -4
- package/dist/core/backends/auth-telemetry.d.ts +0 -1
- package/dist/core/backends/auth-telemetry.js +0 -1
- package/dist/core/backends/backend-router.d.ts +44 -3
- package/dist/core/backends/backend-router.js +230 -3
- package/dist/core/backends/claude-auth.d.ts +0 -1
- package/dist/core/backends/claude-auth.js +0 -1
- package/dist/core/backends/claude-code-core.d.ts +53 -2
- package/dist/core/backends/claude-code-core.js +202 -29
- package/dist/core/backends/claude-credentials-store.d.ts +0 -1
- package/dist/core/backends/claude-credentials-store.js +0 -1
- package/dist/core/backends/claude-delegated.d.ts +0 -1
- package/dist/core/backends/claude-delegated.js +14 -15
- package/dist/core/backends/claude-errors.d.ts +0 -1
- package/dist/core/backends/claude-errors.js +0 -1
- package/dist/core/backends/claude-probe.d.ts +0 -1
- package/dist/core/backends/claude-probe.js +0 -1
- package/dist/core/backends/claude-tool-collection.d.ts +0 -1
- package/dist/core/backends/claude-tool-collection.js +177 -32
- package/dist/core/backends/cli-quota-guards.d.ts +100 -0
- package/dist/core/backends/cli-quota-guards.js +95 -0
- package/dist/core/backends/cli-utils.d.ts +26 -2
- package/dist/core/backends/cli-utils.js +133 -15
- package/dist/core/backends/codex-core.d.ts +13 -2
- package/dist/core/backends/codex-core.js +470 -63
- package/dist/core/backends/gemini-cli-core.d.ts +5 -2
- package/dist/core/backends/gemini-cli-core.js +348 -68
- package/dist/core/backends/idle-watchdog.d.ts +0 -1
- package/dist/core/backends/idle-watchdog.js +0 -1
- package/dist/core/backends/install-methods.d.ts +0 -1
- package/dist/core/backends/install-methods.js +22 -1
- package/dist/core/backends/model-registry.d.ts +10 -6
- package/dist/core/backends/model-registry.js +204 -34
- package/dist/core/backends/native-skill-discovery-probe.d.ts +77 -0
- package/dist/core/backends/native-skill-discovery-probe.js +172 -0
- package/dist/core/backends/opencode-basic-auth-fetch.d.ts +26 -0
- package/dist/core/backends/opencode-basic-auth-fetch.js +39 -0
- package/dist/core/backends/opencode-config-builder.d.ts +113 -0
- package/dist/core/backends/opencode-config-builder.js +184 -0
- package/dist/core/backends/opencode-core.d.ts +315 -0
- package/dist/core/backends/opencode-core.js +1508 -0
- package/dist/core/backends/opencode-event-mapper.d.ts +132 -0
- package/dist/core/backends/opencode-event-mapper.js +197 -0
- package/dist/core/backends/opencode-mcp.d.ts +81 -0
- package/dist/core/backends/opencode-mcp.js +157 -0
- package/dist/core/backends/opencode-server-manager.d.ts +113 -0
- package/dist/core/backends/opencode-server-manager.js +221 -0
- package/dist/core/backends/opencode-types.d.ts +45 -0
- package/dist/core/backends/opencode-types.js +13 -0
- package/dist/core/backends/plan-presets.d.ts +18 -6
- package/dist/core/backends/plan-presets.js +191 -24
- package/dist/core/backends/price-fetcher.d.ts +0 -1
- package/dist/core/backends/price-fetcher.js +0 -1
- package/dist/core/backends/process-config-cascade.d.ts +35 -1
- package/dist/core/backends/process-config-cascade.js +35 -2
- package/dist/core/backends/prompt-utils.d.ts +0 -1
- package/dist/core/backends/prompt-utils.js +0 -3
- package/dist/core/backends/proxy-model-registry.d.ts +0 -1
- package/dist/core/backends/proxy-model-registry.js +0 -1
- package/dist/core/backends/quota-reset-hints.d.ts +43 -0
- package/dist/core/backends/quota-reset-hints.js +116 -0
- package/dist/core/backends/silent-api-error-detector.d.ts +0 -1
- package/dist/core/backends/silent-api-error-detector.js +0 -1
- package/dist/core/bang-commands/commands-checks.d.ts +16 -0
- package/dist/core/bang-commands/commands-checks.js +58 -0
- package/dist/core/bang-commands/commands-close.d.ts +23 -0
- package/dist/core/bang-commands/commands-close.js +23 -0
- package/dist/core/bang-commands/commands-cost.d.ts +0 -1
- package/dist/core/bang-commands/commands-cost.js +13 -1
- package/dist/core/bang-commands/commands-help.d.ts +0 -1
- package/dist/core/bang-commands/commands-help.js +44 -6
- package/dist/core/bang-commands/commands-report.d.ts +0 -1
- package/dist/core/bang-commands/commands-report.js +1 -1
- package/dist/core/bang-commands/commands-research.d.ts +36 -0
- package/dist/core/bang-commands/commands-research.js +284 -0
- package/dist/core/bang-commands/commands-stop-start.d.ts +0 -1
- package/dist/core/bang-commands/commands-stop-start.js +2 -1
- package/dist/core/bang-commands/commands-wiki.d.ts +0 -1
- package/dist/core/bang-commands/commands-wiki.js +53 -14
- package/dist/core/bang-commands/format-utils.d.ts +15 -3
- package/dist/core/bang-commands/format-utils.js +23 -4
- package/dist/core/bang-commands/index.d.ts +3 -1
- package/dist/core/bang-commands/index.js +14 -1
- package/dist/core/bang-commands/registry.d.ts +59 -1
- package/dist/core/bang-commands/registry.js +175 -23
- package/dist/core/bang-commands/user-commands.d.ts +0 -1
- package/dist/core/bang-commands/user-commands.js +0 -1
- package/dist/core/browser-history/pre-morning-digest-job.d.ts +79 -0
- package/dist/core/browser-history/pre-morning-digest-job.js +89 -0
- package/dist/core/browser-history/research-cluster-fanout.d.ts +40 -0
- package/dist/core/browser-history/research-cluster-fanout.js +47 -0
- package/dist/core/browser-history/research-events.d.ts +37 -0
- package/dist/core/browser-history/research-events.js +70 -0
- package/dist/core/channel-timeline.d.ts +18 -2
- package/dist/core/channel-timeline.js +44 -1
- package/dist/core/character-block.d.ts +0 -1
- package/dist/core/character-block.js +0 -1
- package/dist/core/context/activity-sources.d.ts +3 -4
- package/dist/core/context/activity-sources.js +0 -1
- package/dist/core/context/activity-view-reconciler.d.ts +1 -2
- package/dist/core/context/activity-view-reconciler.js +10 -10
- package/dist/core/context/activity-view-runner.d.ts +0 -1
- package/dist/core/context/activity-view-runner.js +11 -3
- package/dist/core/context/default-schedules-reconciler.d.ts +1 -2
- package/dist/core/context/default-schedules-reconciler.js +1 -2
- package/dist/core/context/default-schedules-runner.d.ts +0 -1
- package/dist/core/context/default-schedules-runner.js +44 -5
- package/dist/core/context/domain-index-reconciler.d.ts +3 -1
- package/dist/core/context/domain-index-reconciler.js +11 -5
- package/dist/core/context/domain-index-runner.d.ts +0 -1
- package/dist/core/context/domain-index-runner.js +9 -2
- package/dist/core/context/entity-mirror.d.ts +9 -7
- package/dist/core/context/entity-mirror.js +21 -9
- package/dist/core/context/entity-source-rename.d.ts +0 -1
- package/dist/core/context/entity-source-rename.js +9 -2
- package/dist/core/context/index-reconciler.d.ts +26 -5
- package/dist/core/context/index-reconciler.js +110 -56
- package/dist/core/context/policy-index-reconciler.d.ts +6 -7
- package/dist/core/context/policy-index-reconciler.js +6 -7
- package/dist/core/context/policy-index-runner.d.ts +2 -3
- package/dist/core/context/policy-index-runner.js +10 -3
- package/dist/core/context/reconciler-runner.d.ts +0 -1
- package/dist/core/context/reconciler-runner.js +46 -6
- package/dist/core/context/reconciler-section.d.ts +30 -0
- package/dist/core/context/reconciler-section.js +39 -0
- package/dist/core/context-builder-calendar.d.ts +36 -0
- package/dist/core/context-builder-calendar.js +245 -0
- package/dist/core/context-builder-conversation.d.ts +95 -0
- package/dist/core/context-builder-conversation.js +444 -0
- package/dist/core/context-builder-format.d.ts +8 -0
- package/dist/core/context-builder-format.js +22 -0
- package/dist/core/context-builder-projects.d.ts +11 -0
- package/dist/core/context-builder-projects.js +102 -0
- package/dist/core/context-builder-yesterday.d.ts +30 -0
- package/dist/core/context-builder-yesterday.js +198 -0
- package/dist/core/context-builder.d.ts +73 -124
- package/dist/core/context-builder.js +272 -903
- package/dist/core/context-file-serializer.d.ts +92 -0
- package/dist/core/context-file-serializer.js +126 -0
- package/dist/core/context-frontmatter-extract.d.ts +32 -0
- package/dist/core/context-frontmatter-extract.js +98 -0
- package/dist/core/context-frontmatter.d.ts +14 -1
- package/dist/core/context-frontmatter.js +180 -109
- package/dist/core/context-health.d.ts +0 -1
- package/dist/core/context-health.js +25 -14
- package/dist/core/context-paths.d.ts +128 -85
- package/dist/core/context-paths.js +190 -108
- package/dist/core/context-staleness.d.ts +0 -1
- package/dist/core/context-staleness.js +2 -3
- package/dist/core/context-validation/frontmatter.d.ts +73 -0
- package/dist/core/context-validation/frontmatter.js +216 -0
- package/dist/core/context-validation/index.d.ts +19 -0
- package/dist/core/context-validation/index.js +19 -0
- package/dist/core/context-validation/prepare-write.d.ts +94 -0
- package/dist/core/context-validation/prepare-write.js +145 -0
- package/dist/core/context-validation/routine-rulebook.d.ts +59 -0
- package/dist/core/context-validation/routine-rulebook.js +155 -0
- package/dist/core/context-validation/section.d.ts +40 -0
- package/dist/core/context-validation/section.js +90 -0
- package/dist/core/context-validation/snapshot-debounce.d.ts +51 -0
- package/dist/core/context-validation/snapshot-debounce.js +109 -0
- package/dist/core/context-validation/today.d.ts +84 -0
- package/dist/core/context-validation/today.js +167 -0
- package/dist/core/context-vault-aliases.d.ts +107 -0
- package/dist/core/context-vault-aliases.js +253 -0
- package/dist/core/custom-routine-scheduler.d.ts +5 -6
- package/dist/core/custom-routine-scheduler.js +3 -4
- package/dist/core/daemon-api-cli.d.ts +6 -6
- package/dist/core/daemon-api-cli.js +132 -33
- package/dist/core/dashboard-session-cleanup.d.ts +0 -1
- package/dist/core/dashboard-session-cleanup.js +0 -1
- package/dist/core/dashboard-session-controls.d.ts +0 -1
- package/dist/core/dashboard-session-controls.js +0 -1
- package/dist/core/delegated-connector-health.d.ts +0 -1
- package/dist/core/delegated-connector-health.js +0 -1
- package/dist/core/dispatcher-date-utils.d.ts +0 -1
- package/dist/core/dispatcher-date-utils.js +0 -1
- package/dist/core/dispatcher-error-handling.d.ts +13 -1
- package/dist/core/dispatcher-error-handling.js +69 -1
- package/dist/core/dispatcher-hourly-check.d.ts +73 -2
- package/dist/core/dispatcher-hourly-check.js +258 -153
- package/dist/core/dispatcher-message-handler.d.ts +32 -2
- package/dist/core/dispatcher-message-handler.js +310 -53
- package/dist/core/dispatcher-morning-routine.d.ts +38 -31
- package/dist/core/dispatcher-morning-routine.js +238 -156
- package/dist/core/dispatcher-prompt.d.ts +4 -2
- package/dist/core/dispatcher-prompt.js +19 -4
- package/dist/core/dispatcher-repository-helpers.d.ts +0 -1
- package/dist/core/dispatcher-repository-helpers.js +5 -2
- package/dist/core/dispatcher-result-processor.d.ts +20 -1
- package/dist/core/dispatcher-result-processor.js +94 -5
- package/dist/core/dispatcher-scheduled-browser-task.d.ts +91 -0
- package/dist/core/dispatcher-scheduled-browser-task.js +228 -0
- package/dist/core/dispatcher-scheduled-tasks.d.ts +69 -2
- package/dist/core/dispatcher-scheduled-tasks.js +452 -29
- package/dist/core/dispatcher-types.d.ts +140 -13
- package/dist/core/dispatcher-types.js +0 -1
- package/dist/core/dispatcher.d.ts +194 -5
- package/dist/core/dispatcher.js +487 -11
- package/dist/core/dm-freshness-metrics.d.ts +6 -6
- package/dist/core/dm-freshness-metrics.js +7 -7
- package/dist/core/dm-token-router.d.ts +58 -0
- package/dist/core/dm-token-router.js +58 -0
- package/dist/core/docs/citation-validator.d.ts +0 -1
- package/dist/core/docs/citation-validator.js +0 -1
- package/dist/core/docs/extract-terms.d.ts +0 -1
- package/dist/core/docs/extract-terms.js +0 -1
- package/dist/core/docs/indexer.d.ts +0 -1
- package/dist/core/docs/indexer.js +0 -1
- package/dist/core/drift-effects.d.ts +0 -1
- package/dist/core/drift-effects.js +6 -3
- package/dist/core/evening-review-verify.d.ts +163 -0
- package/dist/core/evening-review-verify.js +636 -0
- package/dist/core/event-bus.d.ts +0 -1
- package/dist/core/event-bus.js +0 -1
- package/dist/core/fetch-window-prompt-loader.d.ts +46 -0
- package/dist/core/fetch-window-prompt-loader.js +71 -0
- package/dist/core/git-project-docs.d.ts +0 -1
- package/dist/core/git-project-docs.js +13 -6
- package/dist/core/health-monitor.d.ts +2 -2
- package/dist/core/health-monitor.js +6 -3
- package/dist/core/heartbeat.d.ts +0 -1
- package/dist/core/heartbeat.js +0 -1
- package/dist/core/injection-policy.d.ts +107 -0
- package/dist/core/injection-policy.js +117 -0
- package/dist/core/integration-health.d.ts +0 -1
- package/dist/core/integration-health.js +1 -2
- package/dist/core/integration-lifecycle.d.ts +0 -1
- package/dist/core/integration-lifecycle.js +0 -1
- package/dist/core/integration-main-backend.d.ts +0 -1
- package/dist/core/integration-main-backend.js +11 -4
- package/dist/core/integration-probe.d.ts +0 -1
- package/dist/core/integration-probe.js +0 -1
- package/dist/core/management-md-write-lock.d.ts +1 -2
- package/dist/core/management-md-write-lock.js +1 -2
- package/dist/core/management-md.d.ts +24 -10
- package/dist/core/management-md.js +65 -33
- package/dist/core/management-registry.d.ts +16 -25
- package/dist/core/management-registry.js +32 -54
- package/dist/core/management-telemetry.d.ts +1 -2
- package/dist/core/management-telemetry.js +1 -2
- package/dist/core/message-recorder.d.ts +3 -4
- package/dist/core/message-recorder.js +3 -4
- package/dist/core/metrics.d.ts +88 -2
- package/dist/core/metrics.js +78 -3
- package/dist/core/migration-backup.d.ts +0 -1
- package/dist/core/migration-backup.js +11 -1
- package/dist/core/morning/agent-journal-appender.d.ts +264 -0
- package/dist/core/morning/agent-journal-appender.js +632 -0
- package/dist/core/morning/daily-journal-composer.d.ts +183 -0
- package/dist/core/morning/daily-journal-composer.js +421 -0
- package/dist/core/morning/handoff-parser.d.ts +43 -0
- package/dist/core/morning/handoff-parser.js +115 -0
- package/dist/core/morning/journal-skeleton-builder.d.ts +155 -0
- package/dist/core/morning/journal-skeleton-builder.js +301 -0
- package/dist/core/morning/orchestrator.d.ts +424 -0
- package/dist/core/morning/orchestrator.js +1230 -0
- package/dist/core/morning/parent-audit-emitter.d.ts +80 -0
- package/dist/core/morning/parent-audit-emitter.js +118 -0
- package/dist/core/morning/partial-extract-streak.d.ts +76 -0
- package/dist/core/morning/partial-extract-streak.js +165 -0
- package/dist/core/morning/roadmap-skeleton-builder.d.ts +158 -0
- package/dist/core/morning/roadmap-skeleton-builder.js +337 -0
- package/dist/core/output-language-policy.d.ts +0 -1
- package/dist/core/output-language-policy.js +7 -8
- package/dist/core/overview-write-lock.d.ts +0 -1
- package/dist/core/overview-write-lock.js +0 -1
- package/dist/core/path-compat.d.ts +0 -1
- package/dist/core/path-compat.js +0 -1
- package/dist/core/path-rewrite.d.ts +1 -2
- package/dist/core/path-rewrite.js +0 -1
- package/dist/core/policy-files.d.ts +39 -13
- package/dist/core/policy-files.js +62 -12
- package/dist/core/pre-pass-freshness.d.ts +27 -0
- package/dist/core/pre-pass-freshness.js +9 -0
- package/dist/core/previous-week-digest.d.ts +129 -0
- package/dist/core/previous-week-digest.js +256 -0
- package/dist/core/profile-questions/seed.d.ts +2 -3
- package/dist/core/profile-questions/seed.js +4 -4
- package/dist/core/profile-questions/slot-filled.d.ts +0 -1
- package/dist/core/profile-questions/slot-filled.js +0 -1
- package/dist/core/prompts.d.ts +0 -1
- package/dist/core/prompts.js +6 -7
- package/dist/core/quiet-hours-sync.d.ts +0 -1
- package/dist/core/quiet-hours-sync.js +7 -1
- package/dist/core/quiet-hours.d.ts +35 -0
- package/dist/core/quiet-hours.js +93 -0
- package/dist/core/read-sensitive-token-manager.d.ts +0 -1
- package/dist/core/read-sensitive-token-manager.js +0 -1
- package/dist/core/recurrence.d.ts +13 -1
- package/dist/core/recurrence.js +108 -14
- package/dist/core/reinstall.d.ts +5 -1
- package/dist/core/reinstall.js +12 -2
- package/dist/core/release-assets.d.ts +39 -4
- package/dist/core/release-assets.js +83 -8
- package/dist/core/repository-management-docs.d.ts +0 -1
- package/dist/core/repository-management-docs.js +32 -11
- package/dist/core/retention.d.ts +49 -4
- package/dist/core/retention.js +218 -5
- package/dist/core/review-context.d.ts +10 -1
- package/dist/core/review-context.js +51 -6
- package/dist/core/roadmap-horizon.d.ts +0 -1
- package/dist/core/roadmap-horizon.js +0 -1
- package/dist/core/roadmap-ids.d.ts +4 -6
- package/dist/core/roadmap-ids.js +4 -6
- package/dist/core/roadmap-maintenance.d.ts +212 -0
- package/dist/core/roadmap-maintenance.js +732 -0
- package/dist/core/roadmap-refresh-triggers.d.ts +0 -1
- package/dist/core/roadmap-refresh-triggers.js +0 -1
- package/dist/core/roadmap-truncate.d.ts +0 -1
- package/dist/core/roadmap-truncate.js +0 -1
- package/dist/core/roadmap-validate.d.ts +5 -1
- package/dist/core/roadmap-validate.js +12 -75
- package/dist/core/roadmap-write-lock.d.ts +0 -1
- package/dist/core/roadmap-write-lock.js +0 -1
- package/dist/core/routine-acquisition-plan.d.ts +43 -8
- package/dist/core/routine-acquisition-plan.js +99 -9
- package/dist/core/routine-fetch-window-retry.d.ts +40 -3
- package/dist/core/routine-fetch-window-retry.js +90 -9
- package/dist/core/routine-fetch-window-runner.d.ts +55 -22
- package/dist/core/routine-fetch-window-runner.js +287 -41
- package/dist/core/routine-windows.d.ts +17 -19
- package/dist/core/routine-windows.js +80 -44
- package/dist/core/schedule-insert-helper.d.ts +0 -1
- package/dist/core/schedule-insert-helper.js +0 -1
- package/dist/core/schedule-maintenance.d.ts +0 -1
- package/dist/core/schedule-maintenance.js +0 -1
- package/dist/core/scheduler.d.ts +179 -37
- package/dist/core/scheduler.js +614 -91
- package/dist/core/semaphore.d.ts +0 -1
- package/dist/core/semaphore.js +0 -1
- package/dist/core/session-gate.d.ts +0 -1
- package/dist/core/session-gate.js +0 -1
- package/dist/core/session-manager.d.ts +25 -7
- package/dist/core/session-manager.js +32 -16
- package/dist/core/signal-detector.d.ts +2 -3
- package/dist/core/signal-detector.js +3 -4
- package/dist/core/skeleton.d.ts +1 -2
- package/dist/core/skeleton.js +31 -32
- package/dist/core/skill-curation/apply-proposal.d.ts +0 -1
- package/dist/core/skill-curation/apply-proposal.js +0 -1
- package/dist/core/skill-curation/auto-revert.d.ts +0 -1
- package/dist/core/skill-curation/auto-revert.js +4 -5
- package/dist/core/skill-curation/classify-diff.d.ts +0 -1
- package/dist/core/skill-curation/classify-diff.js +0 -0
- package/dist/core/skill-curation/declarations.d.ts +0 -1
- package/dist/core/skill-curation/declarations.js +0 -1
- package/dist/core/skill-curation/knowledge-map.d.ts +0 -1
- package/dist/core/skill-curation/knowledge-map.js +0 -1
- package/dist/core/skill-curation/orphan-overlay.d.ts +2 -3
- package/dist/core/skill-curation/orphan-overlay.js +5 -6
- package/dist/core/skill-curation/overlay-store.d.ts +6 -4
- package/dist/core/skill-curation/overlay-store.js +12 -7
- package/dist/core/skill-curation/render/convention-notes.d.ts +0 -1
- package/dist/core/skill-curation/render/convention-notes.js +0 -1
- package/dist/core/skill-curation/render/cross-references.d.ts +0 -1
- package/dist/core/skill-curation/render/cross-references.js +0 -1
- package/dist/core/skill-curation/render/frontmatter-schema.d.ts +0 -1
- package/dist/core/skill-curation/render/frontmatter-schema.js +0 -1
- package/dist/core/skill-curation/render/index.d.ts +0 -1
- package/dist/core/skill-curation/render/index.js +0 -1
- package/dist/core/skill-curation/render/knowledge-layout.d.ts +0 -1
- package/dist/core/skill-curation/render/knowledge-layout.js +0 -1
- package/dist/core/skill-curation/render/routing-table.d.ts +0 -1
- package/dist/core/skill-curation/render/routing-table.js +0 -1
- package/dist/core/skill-curation/render/search-recipes.d.ts +0 -1
- package/dist/core/skill-curation/render/search-recipes.js +0 -1
- package/dist/core/skill-curation/run-token.d.ts +0 -1
- package/dist/core/skill-curation/run-token.js +0 -1
- package/dist/core/skill-curation/signals.d.ts +0 -1
- package/dist/core/skill-curation/signals.js +0 -1
- package/dist/core/skill-curation/smoke-test.d.ts +0 -1
- package/dist/core/skill-curation/smoke-test.js +0 -1
- package/dist/core/skill-curation/splicer.d.ts +0 -1
- package/dist/core/skill-curation/splicer.js +0 -1
- package/dist/core/skill-curation/workdir.d.ts +0 -1
- package/dist/core/skill-curation/workdir.js +0 -1
- package/dist/core/skill-source-paths.d.ts +0 -1
- package/dist/core/skill-source-paths.js +0 -1
- package/dist/core/skills-compiler-cli-renderer.d.ts +79 -0
- package/dist/core/skills-compiler-cli-renderer.js +289 -0
- package/dist/core/skills-compiler-denied-tools.d.ts +57 -0
- package/dist/core/skills-compiler-denied-tools.js +204 -0
- package/dist/core/skills-compiler-skill-index.d.ts +117 -0
- package/dist/core/skills-compiler-skill-index.js +262 -0
- package/dist/core/skills-compiler-tree.d.ts +38 -0
- package/dist/core/skills-compiler-tree.js +157 -0
- package/dist/core/skills-compiler-types.d.ts +46 -0
- package/dist/core/skills-compiler-types.js +1 -0
- package/dist/core/skills-compiler-variants.d.ts +117 -0
- package/dist/core/skills-compiler-variants.js +337 -0
- package/dist/core/skills-compiler.d.ts +169 -217
- package/dist/core/skills-compiler.js +385 -940
- package/dist/core/skills-manifest.d.ts +133 -1
- package/dist/core/skills-manifest.js +507 -40
- package/dist/core/system-reset.d.ts +1 -2
- package/dist/core/system-reset.js +1 -2
- package/dist/core/template-store.d.ts +2 -3
- package/dist/core/template-store.js +7 -4
- package/dist/core/template-versions.d.ts +1 -2
- package/dist/core/template-versions.js +1 -2
- package/dist/core/today-agent-plan.d.ts +0 -1
- package/dist/core/today-agent-plan.js +0 -1
- package/dist/core/today-direct-writer.d.ts +11 -2
- package/dist/core/today-direct-writer.js +42 -27
- package/dist/core/today-write-lock.d.ts +0 -1
- package/dist/core/today-write-lock.js +0 -1
- package/dist/core/trigger-dispatch.d.ts +0 -1
- package/dist/core/trigger-dispatch.js +0 -1
- package/dist/core/trigger-evaluator.d.ts +0 -1
- package/dist/core/trigger-evaluator.js +0 -1
- package/dist/core/user-skills-root.d.ts +24 -0
- package/dist/core/user-skills-root.js +29 -0
- package/dist/core/wiki/approval-queue.d.ts +0 -1
- package/dist/core/wiki/approval-queue.js +7 -3
- package/dist/core/wiki/bridge.d.ts +0 -1
- package/dist/core/wiki/bridge.js +0 -1
- package/dist/core/wiki/compile-lock.d.ts +0 -1
- package/dist/core/wiki/compile-lock.js +0 -1
- package/dist/core/wiki/compile-preview.d.ts +0 -1
- package/dist/core/wiki/compile-preview.js +0 -1
- package/dist/core/wiki/cost-estimate.d.ts +0 -1
- package/dist/core/wiki/cost-estimate.js +23 -3
- package/dist/core/wiki/dispatcher.d.ts +1 -21
- package/dist/core/wiki/dispatcher.js +0 -26
- package/dist/core/wiki/git-precompile.d.ts +9 -1
- package/dist/core/wiki/git-precompile.js +7 -2
- package/dist/core/wiki/import-migrate.d.ts +0 -1
- package/dist/core/wiki/import-migrate.js +0 -1
- package/dist/core/wiki/import-probe.d.ts +0 -1
- package/dist/core/wiki/import-probe.js +7 -5
- package/dist/core/wiki/index-cache.d.ts +0 -1
- package/dist/core/wiki/index-cache.js +0 -1
- package/dist/core/wiki/multi-url-dispatch.d.ts +0 -1
- package/dist/core/wiki/multi-url-dispatch.js +19 -9
- package/dist/core/wiki/wiki-fts.d.ts +0 -1
- package/dist/core/wiki/wiki-fts.js +0 -1
- package/dist/core/wiki/workspaces.d.ts +17 -2
- package/dist/core/wiki/workspaces.js +28 -17
- package/dist/core/wiki/write-strategy.d.ts +0 -1
- package/dist/core/wiki/write-strategy.js +19 -3
- package/dist/core/workdir.d.ts +38 -2
- package/dist/core/workdir.js +159 -17
- package/dist/db/agent-executions-store.d.ts +149 -0
- package/dist/db/agent-executions-store.js +209 -0
- package/dist/db/agents-store.d.ts +179 -0
- package/dist/db/agents-store.js +264 -0
- package/dist/db/automation-triggers.d.ts +0 -1
- package/dist/db/automation-triggers.js +0 -1
- package/dist/db/browser-automation-b4-config-store.d.ts +68 -0
- package/dist/db/browser-automation-b4-config-store.js +111 -0
- package/dist/db/browser-automation-purchase-primary-channels-store.d.ts +48 -0
- package/dist/db/browser-automation-purchase-primary-channels-store.js +88 -0
- package/dist/db/browser-automation-purchase-replies-store.d.ts +48 -0
- package/dist/db/browser-automation-purchase-replies-store.js +71 -0
- package/dist/db/browser-automation-purchase-tokens-store.d.ts +276 -0
- package/dist/db/browser-automation-purchase-tokens-store.js +483 -0
- package/dist/db/browser-automation-store.d.ts +37 -0
- package/dist/db/browser-automation-store.js +41 -0
- package/dist/db/browser-history-store.d.ts +231 -0
- package/dist/db/browser-history-store.js +601 -0
- package/dist/db/browser-task-action-log-store.d.ts +41 -0
- package/dist/db/browser-task-action-log-store.js +74 -0
- package/dist/db/browser-task-clarifications-store.d.ts +67 -0
- package/dist/db/browser-task-clarifications-store.js +118 -0
- package/dist/db/browser-task-final-confirm-tokens-store.d.ts +108 -0
- package/dist/db/browser-task-final-confirm-tokens-store.js +251 -0
- package/dist/db/browser-task-store.d.ts +114 -0
- package/dist/db/browser-task-store.js +250 -0
- package/dist/db/client.d.ts +0 -1
- package/dist/db/client.js +0 -1
- package/dist/db/entities-store.d.ts +6 -7
- package/dist/db/entities-store.js +5 -6
- package/dist/db/hourly-check-signals.d.ts +0 -1
- package/dist/db/hourly-check-signals.js +121 -36
- package/dist/db/integration-probe-store.d.ts +0 -1
- package/dist/db/integration-probe-store.js +0 -1
- package/dist/db/integrations-store.d.ts +0 -1
- package/dist/db/integrations-store.js +0 -1
- package/dist/db/managed-chromium-sites-store.d.ts +110 -0
- package/dist/db/managed-chromium-sites-store.js +174 -0
- package/dist/db/managed-chromium-state.d.ts +58 -0
- package/dist/db/managed-chromium-state.js +104 -0
- package/dist/db/managed-tasks-store.d.ts +0 -1
- package/dist/db/managed-tasks-store.js +0 -1
- package/dist/db/management-parse-failures-store.d.ts +0 -1
- package/dist/db/management-parse-failures-store.js +0 -1
- package/dist/db/migrations/context-vault-restructure.d.ts +263 -0
- package/dist/db/migrations/context-vault-restructure.js +1384 -0
- package/dist/db/migrations.d.ts +111 -0
- package/dist/db/migrations.js +476 -0
- package/dist/db/observations.d.ts +1 -2
- package/dist/db/observations.js +13 -4
- package/dist/db/recurring-schedules.d.ts +44 -3
- package/dist/db/recurring-schedules.js +116 -21
- package/dist/db/repositories-store.d.ts +2 -2
- package/dist/db/repositories-store.js +41 -4
- package/dist/db/runtime-state.d.ts +32 -2
- package/dist/db/runtime-state.js +33 -2
- package/dist/db/schema.d.ts +0 -1
- package/dist/db/schema.js +923 -54
- package/dist/db/sot-bindings-store.d.ts +0 -1
- package/dist/db/sot-bindings-store.js +0 -1
- package/dist/db/voice-transcripts-store.d.ts +0 -1
- package/dist/db/voice-transcripts-store.js +0 -1
- package/dist/db/wiki-store.d.ts +0 -1
- package/dist/db/wiki-store.js +3 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +408 -1522
- package/dist/init.d.ts +0 -1
- package/dist/init.js +0 -2
- package/dist/log-buffer.d.ts +0 -1
- package/dist/log-buffer.js +0 -2
- package/dist/logging.d.ts +0 -1
- package/dist/logging.js +0 -2
- package/dist/management-rules.d.ts +0 -1
- package/dist/management-rules.js +0 -1
- package/dist/messaging/browser-task-mcp-notifier.d.ts +77 -0
- package/dist/messaging/browser-task-mcp-notifier.js +164 -0
- package/dist/messaging/browser-task-screenshot-attachment.d.ts +62 -0
- package/dist/messaging/browser-task-screenshot-attachment.js +115 -0
- package/dist/messaging/constants.d.ts +0 -1
- package/dist/messaging/constants.js +0 -1
- package/dist/messaging/final-confirm-system-message-sender.d.ts +53 -0
- package/dist/messaging/final-confirm-system-message-sender.js +165 -0
- package/dist/messaging/magic-phrase.d.ts +16 -1
- package/dist/messaging/magic-phrase.js +60 -3
- package/dist/messaging/owner-channels.d.ts +40 -1
- package/dist/messaging/owner-channels.js +59 -1
- package/dist/messaging/purchase-system-message-sender.d.ts +54 -0
- package/dist/messaging/purchase-system-message-sender.js +213 -0
- package/dist/messaging/setup-welcome-dm.d.ts +0 -1
- package/dist/messaging/setup-welcome-dm.js +0 -1
- package/dist/messaging/url-extract.d.ts +0 -1
- package/dist/messaging/url-extract.js +5 -1
- package/dist/observers/browser-history-poller.d.ts +113 -0
- package/dist/observers/browser-history-poller.js +404 -0
- package/dist/observers/calendar-poller.d.ts +2 -1
- package/dist/observers/calendar-poller.js +76 -55
- package/dist/observers/context-index-reconciler-observer.d.ts +0 -1
- package/dist/observers/context-index-reconciler-observer.js +0 -1
- package/dist/observers/delegated-probe-observer.d.ts +0 -1
- package/dist/observers/delegated-probe-observer.js +0 -1
- package/dist/observers/delegated-sync-worker.d.ts +70 -10
- package/dist/observers/delegated-sync-worker.js +138 -12
- package/dist/observers/entity-mirror-observer.d.ts +0 -1
- package/dist/observers/entity-mirror-observer.js +0 -1
- package/dist/observers/git-delegated-cron.d.ts +0 -1
- package/dist/observers/git-delegated-cron.js +0 -1
- package/dist/observers/git-event-classifier.d.ts +0 -1
- package/dist/observers/git-event-classifier.js +0 -1
- package/dist/observers/git-watcher.d.ts +22 -1
- package/dist/observers/git-watcher.js +38 -9
- package/dist/observers/github-poller-classifier.d.ts +0 -1
- package/dist/observers/github-poller-classifier.js +0 -1
- package/dist/observers/github-poller.d.ts +3 -1
- package/dist/observers/github-poller.js +28 -3
- package/dist/observers/imminent-event-scheduler.d.ts +2 -1
- package/dist/observers/imminent-event-scheduler.js +30 -2
- package/dist/observers/mail-poller.d.ts +0 -1
- package/dist/observers/mail-poller.js +45 -18
- package/dist/observers/mail-reconciliation.d.ts +1 -2
- package/dist/observers/mail-reconciliation.js +1 -2
- package/dist/observers/manager.d.ts +7 -8
- package/dist/observers/manager.js +7 -8
- package/dist/observers/notion-poller.d.ts +2 -1
- package/dist/observers/notion-poller.js +44 -7
- package/dist/observers/observation-summarizer/index.d.ts +0 -1
- package/dist/observers/observation-summarizer/index.js +0 -1
- package/dist/observers/observation-summarizer/pre-filter.d.ts +0 -1
- package/dist/observers/observation-summarizer/pre-filter.js +0 -1
- package/dist/observers/observation-summarizer/response-parser.d.ts +0 -1
- package/dist/observers/observation-summarizer/response-parser.js +7 -7
- package/dist/observers/observation-summarizer/summarizer-client.d.ts +0 -1
- package/dist/observers/observation-summarizer/summarizer-client.js +0 -1
- package/dist/observers/observation-summarizer/summarizer-prompts.d.ts +0 -1
- package/dist/observers/observation-summarizer/summarizer-prompts.js +0 -1
- package/dist/observers/observation-summarizer/worker.d.ts +2 -1
- package/dist/observers/observation-summarizer/worker.js +25 -1
- package/dist/observers/obsidian-watcher.d.ts +0 -1
- package/dist/observers/obsidian-watcher.js +0 -1
- package/dist/observers/poll-guard.d.ts +62 -0
- package/dist/observers/poll-guard.js +88 -0
- package/dist/observers/primary-vault-watcher.d.ts +0 -1
- package/dist/observers/primary-vault-watcher.js +0 -1
- package/dist/observers/repository-management-cron.d.ts +0 -1
- package/dist/observers/repository-management-cron.js +0 -1
- package/dist/observers/skill-curation-walker.d.ts +0 -1
- package/dist/observers/skill-curation-walker.js +0 -1
- package/dist/safety/absolute-block-audit.d.ts +17 -1
- package/dist/safety/absolute-block-audit.js +28 -3
- package/dist/safety/agent-write-tracker.d.ts +42 -2
- package/dist/safety/agent-write-tracker.js +81 -2
- package/dist/safety/always-disallowed.d.ts +93 -3
- package/dist/safety/always-disallowed.js +504 -20
- package/dist/safety/audit.d.ts +37 -6
- package/dist/safety/audit.js +263 -15
- package/dist/safety/integration-write-tracker.d.ts +0 -1
- package/dist/safety/integration-write-tracker.js +0 -1
- package/dist/safety/outbound-purchase-guard.d.ts +60 -0
- package/dist/safety/outbound-purchase-guard.js +82 -0
- package/dist/safety/risk-classifier.d.ts +21 -6
- package/dist/safety/risk-classifier.js +296 -70
- package/dist/safety/subprocess-block-scanner.d.ts +88 -0
- package/dist/safety/subprocess-block-scanner.js +176 -0
- package/dist/scheduler/hourly-check-gate.d.ts +23 -10
- package/dist/scheduler/hourly-check-gate.js +11 -7
- package/dist/secrets/backend-api-key-env.d.ts +0 -1
- package/dist/secrets/backend-api-key-env.js +1 -1
- package/dist/secrets/codex-home-materializer.d.ts +0 -1
- package/dist/secrets/codex-home-materializer.js +0 -1
- package/dist/secrets/encrypted-blob-store.d.ts +0 -1
- package/dist/secrets/encrypted-blob-store.js +0 -1
- package/dist/secrets/platform-secret-store.d.ts +0 -1
- package/dist/secrets/platform-secret-store.js +0 -1
- package/dist/secrets/redaction.d.ts +0 -1
- package/dist/secrets/redaction.js +0 -1
- package/dist/secrets/secret-broker.d.ts +0 -2
- package/dist/secrets/secret-broker.js +0 -4
- package/dist/secrets/secret-names.d.ts +1 -2
- package/dist/secrets/secret-names.js +0 -2
- package/dist/secrets/secret-store.d.ts +0 -1
- package/dist/secrets/secret-store.js +0 -1
- package/dist/secrets/types.d.ts +0 -1
- package/dist/secrets/types.js +0 -1
- package/dist/services/apple-calendar/caldav-client.d.ts +0 -1
- package/dist/services/apple-calendar/caldav-client.js +0 -1
- package/dist/services/apple-calendar/caldav-codec.d.ts +0 -1
- package/dist/services/apple-calendar/caldav-codec.js +0 -1
- package/dist/services/apple-calendar/index.d.ts +0 -1
- package/dist/services/apple-calendar/index.js +0 -1
- package/dist/services/apple-calendar/service.d.ts +0 -1
- package/dist/services/apple-calendar/service.js +0 -1
- package/dist/services/apple-calendar/types.d.ts +0 -1
- package/dist/services/apple-calendar/types.js +0 -1
- package/dist/services/attachments/hardlink.d.ts +0 -1
- package/dist/services/attachments/hardlink.js +0 -1
- package/dist/services/attachments/sanitize.d.ts +0 -1
- package/dist/services/attachments/sanitize.js +0 -1
- package/dist/services/attachments/store.d.ts +0 -1
- package/dist/services/attachments/store.js +1 -3
- package/dist/services/browser-history/automation/browser-task-tools/dom-snapshot-output.d.ts +48 -0
- package/dist/services/browser-history/automation/browser-task-tools/dom-snapshot-output.js +98 -0
- package/dist/services/browser-history/automation/browser-task-tools/extract-cap.d.ts +76 -0
- package/dist/services/browser-history/automation/browser-task-tools/extract-cap.js +79 -0
- package/dist/services/browser-history/automation/browser-task-tools/extract-output.d.ts +66 -0
- package/dist/services/browser-history/automation/browser-task-tools/extract-output.js +69 -0
- package/dist/services/browser-history/automation/browser-task-tools/final-confirm-gate.d.ts +129 -0
- package/dist/services/browser-history/automation/browser-task-tools/final-confirm-gate.js +150 -0
- package/dist/services/browser-history/automation/browser-task-tools/loop-guard.d.ts +95 -0
- package/dist/services/browser-history/automation/browser-task-tools/loop-guard.js +123 -0
- package/dist/services/browser-history/automation/browser-task-tools/navigate-guard.d.ts +54 -0
- package/dist/services/browser-history/automation/browser-task-tools/navigate-guard.js +62 -0
- package/dist/services/browser-history/automation/browser-task-tools/schemas.d.ts +201 -0
- package/dist/services/browser-history/automation/browser-task-tools/schemas.js +248 -0
- package/dist/services/browser-history/automation/browser-task-tools/screenshot-output.d.ts +76 -0
- package/dist/services/browser-history/automation/browser-task-tools/screenshot-output.js +101 -0
- package/dist/services/browser-history/automation/browser-task-tools/server.d.ts +240 -0
- package/dist/services/browser-history/automation/browser-task-tools/server.js +1016 -0
- package/dist/services/browser-history/automation/cdp-network-interception.d.ts +74 -0
- package/dist/services/browser-history/automation/cdp-network-interception.js +106 -0
- package/dist/services/browser-history/automation/egress-denylist.d.ts +167 -0
- package/dist/services/browser-history/automation/egress-denylist.js +452 -0
- package/dist/services/browser-history/automation/external-content.d.ts +72 -0
- package/dist/services/browser-history/automation/external-content.js +0 -0
- package/dist/services/browser-history/automation/final-confirm-handler.d.ts +178 -0
- package/dist/services/browser-history/automation/final-confirm-handler.js +462 -0
- package/dist/services/browser-history/automation/lite-final-confirm-tokens.d.ts +100 -0
- package/dist/services/browser-history/automation/lite-final-confirm-tokens.js +126 -0
- package/dist/services/browser-history/automation/payment-path-blocker.d.ts +62 -0
- package/dist/services/browser-history/automation/payment-path-blocker.js +113 -0
- package/dist/services/browser-history/automation/purchase-handler.d.ts +344 -0
- package/dist/services/browser-history/automation/purchase-handler.js +666 -0
- package/dist/services/browser-history/automation/purchase-tokens.d.ts +265 -0
- package/dist/services/browser-history/automation/purchase-tokens.js +271 -0
- package/dist/services/browser-history/automation/site-registry.d.ts +176 -0
- package/dist/services/browser-history/automation/site-registry.js +290 -0
- package/dist/services/browser-history/automation/trace-store-paths.d.ts +80 -0
- package/dist/services/browser-history/automation/trace-store-paths.js +119 -0
- package/dist/services/browser-history/automation/trace-store.d.ts +29 -0
- package/dist/services/browser-history/automation/trace-store.js +63 -0
- package/dist/services/browser-history/cleanup-interests-reflection.d.ts +39 -0
- package/dist/services/browser-history/cleanup-interests-reflection.js +204 -0
- package/dist/services/browser-history/detectors/atlas.d.ts +2 -0
- package/dist/services/browser-history/detectors/atlas.js +4 -0
- package/dist/services/browser-history/detectors/chrome.d.ts +2 -0
- package/dist/services/browser-history/detectors/chrome.js +4 -0
- package/dist/services/browser-history/detectors/chromium.d.ts +2 -0
- package/dist/services/browser-history/detectors/chromium.js +193 -0
- package/dist/services/browser-history/detectors/comet.d.ts +2 -0
- package/dist/services/browser-history/detectors/comet.js +4 -0
- package/dist/services/browser-history/detectors/registry.d.ts +15 -0
- package/dist/services/browser-history/detectors/registry.js +82 -0
- package/dist/services/browser-history/history-mtime.d.ts +8 -0
- package/dist/services/browser-history/history-mtime.js +31 -0
- package/dist/services/browser-history/interests-reflection-lock.d.ts +26 -0
- package/dist/services/browser-history/interests-reflection-lock.js +84 -0
- package/dist/services/browser-history/lifecycle/chromium-install.d.ts +78 -0
- package/dist/services/browser-history/lifecycle/chromium-install.js +206 -0
- package/dist/services/browser-history/lifecycle/chromium-launcher.d.ts +77 -0
- package/dist/services/browser-history/lifecycle/chromium-launcher.js +288 -0
- package/dist/services/browser-history/lifecycle/failure-escalation.d.ts +3 -0
- package/dist/services/browser-history/lifecycle/failure-escalation.js +54 -0
- package/dist/services/browser-history/lifecycle/health-check.d.ts +8 -0
- package/dist/services/browser-history/lifecycle/health-check.js +17 -0
- package/dist/services/browser-history/lifecycle/platform.d.ts +99 -0
- package/dist/services/browser-history/lifecycle/platform.js +597 -0
- package/dist/services/browser-history/lifecycle/supervisor.d.ts +24 -0
- package/dist/services/browser-history/lifecycle/supervisor.js +334 -0
- package/dist/services/browser-history/managed-chromium/cdp-connect.d.ts +110 -0
- package/dist/services/browser-history/managed-chromium/cdp-connect.js +171 -0
- package/dist/services/browser-history/managed-chromium/instance-a-config.d.ts +116 -0
- package/dist/services/browser-history/managed-chromium/instance-a-config.js +164 -0
- package/dist/services/browser-history/managed-chromium/instance-a-launcher.d.ts +82 -0
- package/dist/services/browser-history/managed-chromium/instance-a-launcher.js +200 -0
- package/dist/services/browser-history/managed-chromium/managed-chromium-supervisor.d.ts +69 -0
- package/dist/services/browser-history/managed-chromium/managed-chromium-supervisor.js +334 -0
- package/dist/services/browser-history/managed-chromium/reauth-detector.d.ts +60 -0
- package/dist/services/browser-history/managed-chromium/reauth-detector.js +179 -0
- package/dist/services/browser-history/managed-chromium/sandbox-install.d.ts +69 -0
- package/dist/services/browser-history/managed-chromium/sandbox-install.js +123 -0
- package/dist/services/browser-history/managed-chromium/sandbox-launcher.d.ts +117 -0
- package/dist/services/browser-history/managed-chromium/sandbox-launcher.js +244 -0
- package/dist/services/browser-history/managed-chromium/setup-bootstrap.d.ts +149 -0
- package/dist/services/browser-history/managed-chromium/setup-bootstrap.js +404 -0
- package/dist/services/browser-history/managed-chromium/site-bootstrap.d.ts +133 -0
- package/dist/services/browser-history/managed-chromium/site-bootstrap.js +360 -0
- package/dist/services/browser-history/managed-chromium/supervisor-config.d.ts +75 -0
- package/dist/services/browser-history/managed-chromium/supervisor-config.js +146 -0
- package/dist/services/browser-history/managed-chromium/types.d.ts +199 -0
- package/dist/services/browser-history/managed-chromium/types.js +116 -0
- package/dist/services/browser-history/pipeline/amazon-extractor.d.ts +11 -0
- package/dist/services/browser-history/pipeline/amazon-extractor.js +33 -0
- package/dist/services/browser-history/pipeline/classifier.d.ts +7 -0
- package/dist/services/browser-history/pipeline/classifier.js +208 -0
- package/dist/services/browser-history/pipeline/cluster-extractor.d.ts +76 -0
- package/dist/services/browser-history/pipeline/cluster-extractor.js +271 -0
- package/dist/services/browser-history/pipeline/interests-block.d.ts +99 -0
- package/dist/services/browser-history/pipeline/interests-block.js +333 -0
- package/dist/services/browser-history/pipeline/meaningful-filter.d.ts +47 -0
- package/dist/services/browser-history/pipeline/meaningful-filter.js +228 -0
- package/dist/services/browser-history/pipeline/offer-rate-limit.d.ts +75 -0
- package/dist/services/browser-history/pipeline/offer-rate-limit.js +188 -0
- package/dist/services/browser-history/pipeline/offer-triggers.d.ts +150 -0
- package/dist/services/browser-history/pipeline/offer-triggers.js +164 -0
- package/dist/services/browser-history/pipeline/pre-morning-digest.d.ts +118 -0
- package/dist/services/browser-history/pipeline/pre-morning-digest.js +399 -0
- package/dist/services/browser-history/pipeline/project-matcher.d.ts +26 -0
- package/dist/services/browser-history/pipeline/project-matcher.js +314 -0
- package/dist/services/browser-history/pipeline/redactor.d.ts +15 -0
- package/dist/services/browser-history/pipeline/redactor.js +119 -0
- package/dist/services/browser-history/pipeline/reload-detector.d.ts +6 -0
- package/dist/services/browser-history/pipeline/reload-detector.js +16 -0
- package/dist/services/browser-history/pipeline/sensitive-hosts.d.ts +2 -0
- package/dist/services/browser-history/pipeline/sensitive-hosts.js +173 -0
- package/dist/services/browser-history/pipeline/summarizer.d.ts +52 -0
- package/dist/services/browser-history/pipeline/summarizer.js +97 -0
- package/dist/services/browser-history/pipeline/weekly-interests-summary.d.ts +139 -0
- package/dist/services/browser-history/pipeline/weekly-interests-summary.js +227 -0
- package/dist/services/browser-history/readers/chromium-reader.d.ts +30 -0
- package/dist/services/browser-history/readers/chromium-reader.js +139 -0
- package/dist/services/browser-history/readers/snapshot.d.ts +19 -0
- package/dist/services/browser-history/readers/snapshot.js +67 -0
- package/dist/services/browser-history/refresh-interests-reflection.d.ts +125 -0
- package/dist/services/browser-history/refresh-interests-reflection.js +424 -0
- package/dist/services/browser-history/types.d.ts +60 -0
- package/dist/services/browser-history/types.js +1 -0
- package/dist/services/browser-task/browser-task-allowlist.d.ts +107 -0
- package/dist/services/browser-task/browser-task-allowlist.js +247 -0
- package/dist/services/browser-task/browser-task-deadline-scanner.d.ts +76 -0
- package/dist/services/browser-task/browser-task-deadline-scanner.js +68 -0
- package/dist/services/browser-task/browser-task-driver.d.ts +188 -0
- package/dist/services/browser-task/browser-task-driver.js +714 -0
- package/dist/services/browser-task/browser-task-runner.d.ts +166 -0
- package/dist/services/browser-task/browser-task-runner.js +781 -0
- package/dist/services/browser-task/browser-task-slots.d.ts +212 -0
- package/dist/services/browser-task/browser-task-slots.js +404 -0
- package/dist/services/browser-task/browser-task-transition-events.d.ts +76 -0
- package/dist/services/browser-task/browser-task-transition-events.js +80 -0
- package/dist/services/calendar/outlook/graph-calendar-client.d.ts +0 -1
- package/dist/services/calendar/outlook/graph-calendar-client.js +0 -1
- package/dist/services/calendar.d.ts +0 -1
- package/dist/services/calendar.js +21 -16
- package/dist/services/delegated-backend-invoker.d.ts +0 -1
- package/dist/services/delegated-backend-invoker.js +8 -2
- package/dist/services/delegated-invoker-audit.d.ts +0 -1
- package/dist/services/delegated-invoker-audit.js +5 -2
- package/dist/services/delegated-invoker-cache-hits.d.ts +0 -1
- package/dist/services/delegated-invoker-cache-hits.js +0 -1
- package/dist/services/delegated-invoker-janitors.d.ts +0 -1
- package/dist/services/delegated-invoker-janitors.js +0 -1
- package/dist/services/delegated-invoker-utils.d.ts +0 -1
- package/dist/services/delegated-invoker-utils.js +0 -1
- package/dist/services/delegated-proxy-config.d.ts +3 -3
- package/dist/services/delegated-proxy-config.js +0 -1
- package/dist/services/delegated-task-result-cache.d.ts +0 -1
- package/dist/services/delegated-task-result-cache.js +0 -0
- package/dist/services/delegated-task-runtime.d.ts +0 -1
- package/dist/services/delegated-task-runtime.js +0 -1
- package/dist/services/delegated-task-session-pool.d.ts +0 -1
- package/dist/services/delegated-task-session-pool.js +0 -1
- package/dist/services/delegated-tool-runtime.d.ts +0 -1
- package/dist/services/delegated-tool-runtime.js +0 -1
- package/dist/services/fts5.d.ts +0 -1
- package/dist/services/fts5.js +0 -1
- package/dist/services/git-account-registry.d.ts +0 -1
- package/dist/services/git-account-registry.js +0 -1
- package/dist/services/github.d.ts +9 -40
- package/dist/services/github.js +9 -107
- package/dist/services/gmail-classifier.d.ts +0 -1
- package/dist/services/gmail-classifier.js +0 -1
- package/dist/services/gmail.d.ts +0 -1
- package/dist/services/gmail.js +31 -52
- package/dist/services/google-auth.d.ts +0 -1
- package/dist/services/google-auth.js +0 -1
- package/dist/services/integrations/extract-write-item-id.d.ts +5 -3
- package/dist/services/integrations/extract-write-item-id.js +6 -1
- package/dist/services/integrations/reconcile.d.ts +0 -1
- package/dist/services/integrations/reconcile.js +0 -1
- package/dist/services/integrations/snapshot-partitions.d.ts +0 -1
- package/dist/services/integrations/snapshot-partitions.js +8 -1
- package/dist/services/journal/render.d.ts +0 -1
- package/dist/services/journal/render.js +0 -1
- package/dist/services/journal/writer.d.ts +0 -1
- package/dist/services/journal/writer.js +0 -1
- package/dist/services/mail/account-registry.d.ts +0 -1
- package/dist/services/mail/account-registry.js +7 -3
- package/dist/services/mail/gmail/auth-failure-classifier.d.ts +0 -1
- package/dist/services/mail/gmail/auth-failure-classifier.js +0 -1
- package/dist/services/mail/gmail/gmail-provider.d.ts +0 -1
- package/dist/services/mail/gmail/gmail-provider.js +0 -1
- package/dist/services/mail/gmail/legacy-row.d.ts +0 -1
- package/dist/services/mail/gmail/legacy-row.js +0 -1
- package/dist/services/mail/gmail/poll-cursor.d.ts +0 -1
- package/dist/services/mail/gmail/poll-cursor.js +0 -1
- package/dist/services/mail/html-to-plaintext.d.ts +0 -1
- package/dist/services/mail/html-to-plaintext.js +0 -1
- package/dist/services/mail/imap/app-password.d.ts +0 -1
- package/dist/services/mail/imap/app-password.js +0 -1
- package/dist/services/mail/imap/auth-failure-classifier.d.ts +0 -1
- package/dist/services/mail/imap/auth-failure-classifier.js +0 -1
- package/dist/services/mail/imap/capabilities.d.ts +0 -1
- package/dist/services/mail/imap/capabilities.js +0 -1
- package/dist/services/mail/imap/client.d.ts +0 -1
- package/dist/services/mail/imap/client.js +0 -1
- package/dist/services/mail/imap/cursor.d.ts +0 -1
- package/dist/services/mail/imap/cursor.js +0 -1
- package/dist/services/mail/imap/folder-resolver.d.ts +0 -1
- package/dist/services/mail/imap/folder-resolver.js +0 -1
- package/dist/services/mail/imap/icloud-provider.d.ts +0 -1
- package/dist/services/mail/imap/icloud-provider.js +0 -1
- package/dist/services/mail/imap/imap-provider-base.d.ts +0 -1
- package/dist/services/mail/imap/imap-provider-base.js +12 -7
- package/dist/services/mail/imap/query-translator.d.ts +0 -1
- package/dist/services/mail/imap/query-translator.js +0 -1
- package/dist/services/mail/imap/reconcile-planner.d.ts +0 -1
- package/dist/services/mail/imap/reconcile-planner.js +0 -1
- package/dist/services/mail/imap/reply-mime.d.ts +0 -1
- package/dist/services/mail/imap/reply-mime.js +0 -1
- package/dist/services/mail/imap/yahoo-provider.d.ts +0 -1
- package/dist/services/mail/imap/yahoo-provider.js +0 -1
- package/dist/services/mail/mail-search.d.ts +0 -1
- package/dist/services/mail/mail-search.js +0 -1
- package/dist/services/mail/outlook/auth-failure-classifier.d.ts +0 -1
- package/dist/services/mail/outlook/auth-failure-classifier.js +0 -1
- package/dist/services/mail/outlook/client-config.d.ts +0 -1
- package/dist/services/mail/outlook/client-config.js +0 -1
- package/dist/services/mail/outlook/delta-cursor.d.ts +0 -1
- package/dist/services/mail/outlook/delta-cursor.js +0 -1
- package/dist/services/mail/outlook/graph-client.d.ts +0 -1
- package/dist/services/mail/outlook/graph-client.js +0 -1
- package/dist/services/mail/outlook/msal-app-factory.d.ts +0 -1
- package/dist/services/mail/outlook/msal-app-factory.js +0 -1
- package/dist/services/mail/outlook/msal-cache-plugin.d.ts +0 -1
- package/dist/services/mail/outlook/msal-cache-plugin.js +0 -1
- package/dist/services/mail/outlook/oauth-device-code.d.ts +0 -1
- package/dist/services/mail/outlook/oauth-device-code.js +0 -1
- package/dist/services/mail/outlook/oauth-loopback.d.ts +0 -1
- package/dist/services/mail/outlook/oauth-loopback.js +0 -1
- package/dist/services/mail/outlook/outlook-provider.d.ts +0 -1
- package/dist/services/mail/outlook/outlook-provider.js +0 -1
- package/dist/services/mail/outlook/query-translator.d.ts +0 -1
- package/dist/services/mail/outlook/query-translator.js +0 -1
- package/dist/services/mail/provider.d.ts +0 -1
- package/dist/services/mail/provider.js +0 -1
- package/dist/services/mail/query-utils.d.ts +0 -1
- package/dist/services/mail/query-utils.js +0 -1
- package/dist/services/mail-classifier.d.ts +0 -1
- package/dist/services/mail-classifier.js +0 -1
- package/dist/services/mail-ingestion.d.ts +0 -1
- package/dist/services/mail-ingestion.js +0 -1
- package/dist/services/mcp/auto-probe.d.ts +0 -1
- package/dist/services/mcp/auto-probe.js +0 -1
- package/dist/services/mcp/generators/claude.d.ts +0 -1
- package/dist/services/mcp/generators/claude.js +0 -1
- package/dist/services/mcp/generators/codex.d.ts +0 -1
- package/dist/services/mcp/generators/codex.js +0 -1
- package/dist/services/mcp/generators/gemini.d.ts +0 -1
- package/dist/services/mcp/generators/gemini.js +0 -1
- package/dist/services/mcp/generators/index.d.ts +1 -1
- package/dist/services/mcp/generators/index.js +3 -1
- package/dist/services/mcp/generators/types.d.ts +0 -1
- package/dist/services/mcp/generators/types.js +0 -1
- package/dist/services/mcp/probe.d.ts +0 -1
- package/dist/services/mcp/probe.js +7 -1
- package/dist/services/mcp/registry.d.ts +0 -1
- package/dist/services/mcp/registry.js +0 -1
- package/dist/services/mcp/risk.d.ts +1 -2
- package/dist/services/mcp/risk.js +1 -2
- package/dist/services/mcp/sdk-observations-server.d.ts +59 -0
- package/dist/services/mcp/sdk-observations-server.js +160 -0
- package/dist/services/mcp/session-materializer.d.ts +2 -3
- package/dist/services/mcp/session-materializer.js +15 -12
- package/dist/services/mcp/tool-audit.d.ts +0 -1
- package/dist/services/mcp/tool-audit.js +0 -1
- package/dist/services/mcp/types.d.ts +1 -1
- package/dist/services/mcp/types.js +0 -1
- package/dist/services/notion.d.ts +17 -2
- package/dist/services/notion.js +39 -3
- package/dist/services/observations-batch.d.ts +98 -0
- package/dist/services/observations-batch.js +256 -0
- package/dist/services/obsidian.d.ts +0 -1
- package/dist/services/obsidian.js +0 -1
- package/dist/services/service-registry.d.ts +0 -3
- package/dist/services/service-registry.js +0 -2
- package/dist/services/voice/transcriber-impl.d.ts +0 -1
- package/dist/services/voice/transcriber-impl.js +21 -20
- package/dist/services/voice/transcriber.d.ts +22 -2
- package/dist/services/voice/transcriber.js +68 -11
- package/dist/settings/runtime-settings.d.ts +52 -8
- package/dist/settings/runtime-settings.js +172 -20
- package/dist/settings/settings-store.d.ts +0 -1
- package/dist/settings/settings-store.js +44 -2
- package/native/win-appcontainer/README.md +66 -0
- package/native/win-appcontainer/binding.gyp +33 -0
- package/native/win-appcontainer/loader.js +29 -0
- package/native/win-appcontainer/package.json +18 -0
- package/native/win-appcontainer/src/win_appcontainer.cc +67 -0
- package/package.json +8 -3
- package/dist/adapters/composite-dashboard-stream.d.ts.map +0 -1
- package/dist/adapters/composite-dashboard-stream.js.map +0 -1
- package/dist/adapters/dashboard-adapter.d.ts.map +0 -1
- package/dist/adapters/dashboard-adapter.js.map +0 -1
- package/dist/adapters/discord.d.ts.map +0 -1
- package/dist/adapters/discord.js.map +0 -1
- package/dist/adapters/docs-qa-adapter.d.ts.map +0 -1
- package/dist/adapters/docs-qa-adapter.js.map +0 -1
- package/dist/adapters/message-hub.d.ts.map +0 -1
- package/dist/adapters/message-hub.js.map +0 -1
- package/dist/adapters/notification-manager.d.ts.map +0 -1
- package/dist/adapters/notification-manager.js.map +0 -1
- package/dist/adapters/outbound-text.d.ts.map +0 -1
- package/dist/adapters/outbound-text.js.map +0 -1
- package/dist/adapters/slack-adapter.d.ts.map +0 -1
- package/dist/adapters/slack-adapter.js.map +0 -1
- package/dist/adapters/telegram-adapter.d.ts.map +0 -1
- package/dist/adapters/telegram-adapter.js.map +0 -1
- package/dist/adapters/types.d.ts.map +0 -1
- package/dist/adapters/types.js.map +0 -1
- package/dist/adapters/whatsapp-adapter.d.ts.map +0 -1
- package/dist/adapters/whatsapp-adapter.js.map +0 -1
- package/dist/api/chat-binding-query.d.ts.map +0 -1
- package/dist/api/chat-binding-query.js.map +0 -1
- package/dist/api/chat-session-resume.d.ts.map +0 -1
- package/dist/api/chat-session-resume.js.map +0 -1
- package/dist/api/delegated-proxy-helper.d.ts +0 -33
- package/dist/api/delegated-proxy-helper.d.ts.map +0 -1
- package/dist/api/delegated-proxy-helper.js +0 -54
- package/dist/api/delegated-proxy-helper.js.map +0 -1
- package/dist/api/directory-picker.d.ts.map +0 -1
- package/dist/api/directory-picker.js.map +0 -1
- package/dist/api/env-writer.d.ts.map +0 -1
- package/dist/api/env-writer.js.map +0 -1
- package/dist/api/integration-route-gate.d.ts.map +0 -1
- package/dist/api/integration-route-gate.js.map +0 -1
- package/dist/api/json-body.d.ts.map +0 -1
- package/dist/api/json-body.js.map +0 -1
- package/dist/api/routes/activity-sources.d.ts.map +0 -1
- package/dist/api/routes/activity-sources.js.map +0 -1
- package/dist/api/routes/agent.d.ts.map +0 -1
- package/dist/api/routes/agent.js.map +0 -1
- package/dist/api/routes/apple-calendar.d.ts.map +0 -1
- package/dist/api/routes/apple-calendar.js.map +0 -1
- package/dist/api/routes/attachments.d.ts.map +0 -1
- package/dist/api/routes/attachments.js.map +0 -1
- package/dist/api/routes/backends.d.ts.map +0 -1
- package/dist/api/routes/backends.js.map +0 -1
- package/dist/api/routes/books.d.ts.map +0 -1
- package/dist/api/routes/books.js.map +0 -1
- package/dist/api/routes/calendar.d.ts.map +0 -1
- package/dist/api/routes/calendar.js.map +0 -1
- package/dist/api/routes/commands.d.ts.map +0 -1
- package/dist/api/routes/commands.js.map +0 -1
- package/dist/api/routes/context.d.ts +0 -57
- package/dist/api/routes/context.d.ts.map +0 -1
- package/dist/api/routes/context.js +0 -1788
- package/dist/api/routes/context.js.map +0 -1
- package/dist/api/routes/dashboard.d.ts +0 -29
- package/dist/api/routes/dashboard.d.ts.map +0 -1
- package/dist/api/routes/dashboard.js +0 -2160
- package/dist/api/routes/dashboard.js.map +0 -1
- package/dist/api/routes/delegated-sync.d.ts.map +0 -1
- package/dist/api/routes/delegated-sync.js.map +0 -1
- package/dist/api/routes/delegated.d.ts.map +0 -1
- package/dist/api/routes/delegated.js.map +0 -1
- package/dist/api/routes/docs.d.ts.map +0 -1
- package/dist/api/routes/docs.js.map +0 -1
- package/dist/api/routes/entities.d.ts.map +0 -1
- package/dist/api/routes/entities.js.map +0 -1
- package/dist/api/routes/fs.d.ts.map +0 -1
- package/dist/api/routes/fs.js.map +0 -1
- package/dist/api/routes/fs.logic.d.ts.map +0 -1
- package/dist/api/routes/fs.logic.js.map +0 -1
- package/dist/api/routes/git-accounts.d.ts.map +0 -1
- package/dist/api/routes/git-accounts.js.map +0 -1
- package/dist/api/routes/git-templates.d.ts.map +0 -1
- package/dist/api/routes/git-templates.js.map +0 -1
- package/dist/api/routes/git.d.ts.map +0 -1
- package/dist/api/routes/git.js.map +0 -1
- package/dist/api/routes/github.d.ts.map +0 -1
- package/dist/api/routes/github.js.map +0 -1
- package/dist/api/routes/health.d.ts.map +0 -1
- package/dist/api/routes/health.js.map +0 -1
- package/dist/api/routes/integrations-reconcile.d.ts.map +0 -1
- package/dist/api/routes/integrations-reconcile.js.map +0 -1
- package/dist/api/routes/integrations.d.ts +0 -48
- package/dist/api/routes/integrations.d.ts.map +0 -1
- package/dist/api/routes/integrations.js +0 -1572
- package/dist/api/routes/integrations.js.map +0 -1
- package/dist/api/routes/knowledge.d.ts.map +0 -1
- package/dist/api/routes/knowledge.js.map +0 -1
- package/dist/api/routes/mail.d.ts +0 -39
- package/dist/api/routes/mail.d.ts.map +0 -1
- package/dist/api/routes/mail.js +0 -1472
- package/dist/api/routes/mail.js.map +0 -1
- package/dist/api/routes/managed-tasks.d.ts.map +0 -1
- package/dist/api/routes/managed-tasks.js.map +0 -1
- package/dist/api/routes/mcp.d.ts.map +0 -1
- package/dist/api/routes/mcp.js.map +0 -1
- package/dist/api/routes/metrics.d.ts.map +0 -1
- package/dist/api/routes/metrics.js.map +0 -1
- package/dist/api/routes/notion.d.ts.map +0 -1
- package/dist/api/routes/notion.js.map +0 -1
- package/dist/api/routes/observations.d.ts.map +0 -1
- package/dist/api/routes/observations.js.map +0 -1
- package/dist/api/routes/obsidian.d.ts.map +0 -1
- package/dist/api/routes/obsidian.js.map +0 -1
- package/dist/api/routes/profile-questions.d.ts.map +0 -1
- package/dist/api/routes/profile-questions.js.map +0 -1
- package/dist/api/routes/receipts.d.ts.map +0 -1
- package/dist/api/routes/receipts.js.map +0 -1
- package/dist/api/routes/recurring-schedules.d.ts.map +0 -1
- package/dist/api/routes/recurring-schedules.js.map +0 -1
- package/dist/api/routes/repositories.d.ts.map +0 -1
- package/dist/api/routes/repositories.js.map +0 -1
- package/dist/api/routes/setup-migrate.d.ts.map +0 -1
- package/dist/api/routes/setup-migrate.js.map +0 -1
- package/dist/api/routes/setup.d.ts.map +0 -1
- package/dist/api/routes/setup.js.map +0 -1
- package/dist/api/routes/skill-curation.d.ts.map +0 -1
- package/dist/api/routes/skill-curation.js.map +0 -1
- package/dist/api/routes/skills.d.ts.map +0 -1
- package/dist/api/routes/skills.js.map +0 -1
- package/dist/api/routes/sot-bindings.d.ts.map +0 -1
- package/dist/api/routes/sot-bindings.js.map +0 -1
- package/dist/api/routes/sse.d.ts.map +0 -1
- package/dist/api/routes/sse.js.map +0 -1
- package/dist/api/routes/system.d.ts.map +0 -1
- package/dist/api/routes/system.js.map +0 -1
- package/dist/api/routes/task-flows.d.ts.map +0 -1
- package/dist/api/routes/task-flows.js.map +0 -1
- package/dist/api/routes/travel-bookings.d.ts.map +0 -1
- package/dist/api/routes/travel-bookings.js.map +0 -1
- package/dist/api/routes/travel-time.d.ts +0 -8
- package/dist/api/routes/travel-time.d.ts.map +0 -1
- package/dist/api/routes/travel-time.js +0 -87
- package/dist/api/routes/travel-time.js.map +0 -1
- package/dist/api/routes/triggers.d.ts.map +0 -1
- package/dist/api/routes/triggers.js.map +0 -1
- package/dist/api/routes/voice.d.ts.map +0 -1
- package/dist/api/routes/voice.js.map +0 -1
- package/dist/api/routes/wiki.d.ts.map +0 -1
- package/dist/api/routes/wiki.js.map +0 -1
- package/dist/api/server.d.ts.map +0 -1
- package/dist/api/server.js.map +0 -1
- package/dist/bootstrap/adapters.d.ts.map +0 -1
- package/dist/bootstrap/adapters.js.map +0 -1
- package/dist/bootstrap/catchup.d.ts.map +0 -1
- package/dist/bootstrap/catchup.js.map +0 -1
- package/dist/bootstrap/schedule-helpers.d.ts.map +0 -1
- package/dist/bootstrap/schedule-helpers.js.map +0 -1
- package/dist/bootstrap/services.d.ts.map +0 -1
- package/dist/bootstrap/services.js.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/core/agent-core.d.ts.map +0 -1
- package/dist/core/agent-core.js.map +0 -1
- package/dist/core/alerts.d.ts.map +0 -1
- package/dist/core/alerts.js.map +0 -1
- package/dist/core/atomic-write.d.ts.map +0 -1
- package/dist/core/atomic-write.js.map +0 -1
- package/dist/core/backends/api-key-probe.d.ts.map +0 -1
- package/dist/core/backends/api-key-probe.js.map +0 -1
- package/dist/core/backends/auth-health-monitor.d.ts.map +0 -1
- package/dist/core/backends/auth-health-monitor.js.map +0 -1
- package/dist/core/backends/auth-recovery.d.ts.map +0 -1
- package/dist/core/backends/auth-recovery.js.map +0 -1
- package/dist/core/backends/auth-telemetry.d.ts.map +0 -1
- package/dist/core/backends/auth-telemetry.js.map +0 -1
- package/dist/core/backends/backend-router.d.ts.map +0 -1
- package/dist/core/backends/backend-router.js.map +0 -1
- package/dist/core/backends/claude-auth.d.ts.map +0 -1
- package/dist/core/backends/claude-auth.js.map +0 -1
- package/dist/core/backends/claude-code-core.d.ts.map +0 -1
- package/dist/core/backends/claude-code-core.js.map +0 -1
- package/dist/core/backends/claude-credentials-store.d.ts.map +0 -1
- package/dist/core/backends/claude-credentials-store.js.map +0 -1
- package/dist/core/backends/claude-delegated.d.ts.map +0 -1
- package/dist/core/backends/claude-delegated.js.map +0 -1
- package/dist/core/backends/claude-errors.d.ts.map +0 -1
- package/dist/core/backends/claude-errors.js.map +0 -1
- package/dist/core/backends/claude-probe.d.ts.map +0 -1
- package/dist/core/backends/claude-probe.js.map +0 -1
- package/dist/core/backends/claude-tool-collection.d.ts.map +0 -1
- package/dist/core/backends/claude-tool-collection.js.map +0 -1
- package/dist/core/backends/cli-utils.d.ts.map +0 -1
- package/dist/core/backends/cli-utils.js.map +0 -1
- package/dist/core/backends/codex-core.d.ts.map +0 -1
- package/dist/core/backends/codex-core.js.map +0 -1
- package/dist/core/backends/gemini-cli-core.d.ts.map +0 -1
- package/dist/core/backends/gemini-cli-core.js.map +0 -1
- package/dist/core/backends/idle-watchdog.d.ts.map +0 -1
- package/dist/core/backends/idle-watchdog.js.map +0 -1
- package/dist/core/backends/install-methods.d.ts.map +0 -1
- package/dist/core/backends/install-methods.js.map +0 -1
- package/dist/core/backends/model-registry.d.ts.map +0 -1
- package/dist/core/backends/model-registry.js.map +0 -1
- package/dist/core/backends/plan-presets.d.ts.map +0 -1
- package/dist/core/backends/plan-presets.js.map +0 -1
- package/dist/core/backends/price-fetcher.d.ts.map +0 -1
- package/dist/core/backends/price-fetcher.js.map +0 -1
- package/dist/core/backends/process-config-cascade.d.ts.map +0 -1
- package/dist/core/backends/process-config-cascade.js.map +0 -1
- package/dist/core/backends/prompt-utils.d.ts.map +0 -1
- package/dist/core/backends/prompt-utils.js.map +0 -1
- package/dist/core/backends/proxy-model-registry.d.ts.map +0 -1
- package/dist/core/backends/proxy-model-registry.js.map +0 -1
- package/dist/core/backends/silent-api-error-detector.d.ts.map +0 -1
- package/dist/core/backends/silent-api-error-detector.js.map +0 -1
- package/dist/core/bang-commands/commands-cost.d.ts.map +0 -1
- package/dist/core/bang-commands/commands-cost.js.map +0 -1
- package/dist/core/bang-commands/commands-help.d.ts.map +0 -1
- package/dist/core/bang-commands/commands-help.js.map +0 -1
- package/dist/core/bang-commands/commands-report.d.ts.map +0 -1
- package/dist/core/bang-commands/commands-report.js.map +0 -1
- package/dist/core/bang-commands/commands-stop-start.d.ts.map +0 -1
- package/dist/core/bang-commands/commands-stop-start.js.map +0 -1
- package/dist/core/bang-commands/commands-wiki.d.ts.map +0 -1
- package/dist/core/bang-commands/commands-wiki.js.map +0 -1
- package/dist/core/bang-commands/format-utils.d.ts.map +0 -1
- package/dist/core/bang-commands/format-utils.js.map +0 -1
- package/dist/core/bang-commands/index.d.ts.map +0 -1
- package/dist/core/bang-commands/index.js.map +0 -1
- package/dist/core/bang-commands/registry.d.ts.map +0 -1
- package/dist/core/bang-commands/registry.js.map +0 -1
- package/dist/core/bang-commands/user-commands.d.ts.map +0 -1
- package/dist/core/bang-commands/user-commands.js.map +0 -1
- package/dist/core/channel-timeline.d.ts.map +0 -1
- package/dist/core/channel-timeline.js.map +0 -1
- package/dist/core/character-block.d.ts.map +0 -1
- package/dist/core/character-block.js.map +0 -1
- package/dist/core/context/activity-sources.d.ts.map +0 -1
- package/dist/core/context/activity-sources.js.map +0 -1
- package/dist/core/context/activity-view-reconciler.d.ts.map +0 -1
- package/dist/core/context/activity-view-reconciler.js.map +0 -1
- package/dist/core/context/activity-view-runner.d.ts.map +0 -1
- package/dist/core/context/activity-view-runner.js.map +0 -1
- package/dist/core/context/default-schedules-reconciler.d.ts.map +0 -1
- package/dist/core/context/default-schedules-reconciler.js.map +0 -1
- package/dist/core/context/default-schedules-runner.d.ts.map +0 -1
- package/dist/core/context/default-schedules-runner.js.map +0 -1
- package/dist/core/context/domain-index-reconciler.d.ts.map +0 -1
- package/dist/core/context/domain-index-reconciler.js.map +0 -1
- package/dist/core/context/domain-index-runner.d.ts.map +0 -1
- package/dist/core/context/domain-index-runner.js.map +0 -1
- package/dist/core/context/entity-mirror.d.ts.map +0 -1
- package/dist/core/context/entity-mirror.js.map +0 -1
- package/dist/core/context/entity-source-rename.d.ts.map +0 -1
- package/dist/core/context/entity-source-rename.js.map +0 -1
- package/dist/core/context/index-reconciler.d.ts.map +0 -1
- package/dist/core/context/index-reconciler.js.map +0 -1
- package/dist/core/context/policy-index-reconciler.d.ts.map +0 -1
- package/dist/core/context/policy-index-reconciler.js.map +0 -1
- package/dist/core/context/policy-index-runner.d.ts.map +0 -1
- package/dist/core/context/policy-index-runner.js.map +0 -1
- package/dist/core/context/reconciler-runner.d.ts.map +0 -1
- package/dist/core/context/reconciler-runner.js.map +0 -1
- package/dist/core/context-builder.d.ts.map +0 -1
- package/dist/core/context-builder.js.map +0 -1
- package/dist/core/context-frontmatter-backfill.d.ts +0 -33
- package/dist/core/context-frontmatter-backfill.d.ts.map +0 -1
- package/dist/core/context-frontmatter-backfill.js +0 -111
- package/dist/core/context-frontmatter-backfill.js.map +0 -1
- package/dist/core/context-frontmatter.d.ts.map +0 -1
- package/dist/core/context-frontmatter.js.map +0 -1
- package/dist/core/context-health.d.ts.map +0 -1
- package/dist/core/context-health.js.map +0 -1
- package/dist/core/context-paths.d.ts.map +0 -1
- package/dist/core/context-paths.js.map +0 -1
- package/dist/core/context-staleness.d.ts.map +0 -1
- package/dist/core/context-staleness.js.map +0 -1
- package/dist/core/custom-routine-scheduler.d.ts.map +0 -1
- package/dist/core/custom-routine-scheduler.js.map +0 -1
- package/dist/core/daemon-api-cli.d.ts.map +0 -1
- package/dist/core/daemon-api-cli.js.map +0 -1
- package/dist/core/dashboard-session-cleanup.d.ts.map +0 -1
- package/dist/core/dashboard-session-cleanup.js.map +0 -1
- package/dist/core/dashboard-session-controls.d.ts.map +0 -1
- package/dist/core/dashboard-session-controls.js.map +0 -1
- package/dist/core/delegated-connector-health.d.ts.map +0 -1
- package/dist/core/delegated-connector-health.js.map +0 -1
- package/dist/core/dispatcher-date-utils.d.ts.map +0 -1
- package/dist/core/dispatcher-date-utils.js.map +0 -1
- package/dist/core/dispatcher-error-handling.d.ts.map +0 -1
- package/dist/core/dispatcher-error-handling.js.map +0 -1
- package/dist/core/dispatcher-hourly-check.d.ts.map +0 -1
- package/dist/core/dispatcher-hourly-check.js.map +0 -1
- package/dist/core/dispatcher-message-handler.d.ts.map +0 -1
- package/dist/core/dispatcher-message-handler.js.map +0 -1
- package/dist/core/dispatcher-morning-routine.d.ts.map +0 -1
- package/dist/core/dispatcher-morning-routine.js.map +0 -1
- package/dist/core/dispatcher-prompt.d.ts.map +0 -1
- package/dist/core/dispatcher-prompt.js.map +0 -1
- package/dist/core/dispatcher-repository-helpers.d.ts.map +0 -1
- package/dist/core/dispatcher-repository-helpers.js.map +0 -1
- package/dist/core/dispatcher-result-processor.d.ts.map +0 -1
- package/dist/core/dispatcher-result-processor.js.map +0 -1
- package/dist/core/dispatcher-scheduled-tasks.d.ts.map +0 -1
- package/dist/core/dispatcher-scheduled-tasks.js.map +0 -1
- package/dist/core/dispatcher-types.d.ts.map +0 -1
- package/dist/core/dispatcher-types.js.map +0 -1
- package/dist/core/dispatcher.d.ts.map +0 -1
- package/dist/core/dispatcher.js.map +0 -1
- package/dist/core/dm-freshness-metrics.d.ts.map +0 -1
- package/dist/core/dm-freshness-metrics.js.map +0 -1
- package/dist/core/docs/citation-validator.d.ts.map +0 -1
- package/dist/core/docs/citation-validator.js.map +0 -1
- package/dist/core/docs/extract-terms.d.ts.map +0 -1
- package/dist/core/docs/extract-terms.js.map +0 -1
- package/dist/core/docs/indexer.d.ts.map +0 -1
- package/dist/core/docs/indexer.js.map +0 -1
- package/dist/core/drift-effects.d.ts.map +0 -1
- package/dist/core/drift-effects.js.map +0 -1
- package/dist/core/event-bus.d.ts.map +0 -1
- package/dist/core/event-bus.js.map +0 -1
- package/dist/core/git-project-docs.d.ts.map +0 -1
- package/dist/core/git-project-docs.js.map +0 -1
- package/dist/core/health-monitor.d.ts.map +0 -1
- package/dist/core/health-monitor.js.map +0 -1
- package/dist/core/heartbeat.d.ts.map +0 -1
- package/dist/core/heartbeat.js.map +0 -1
- package/dist/core/integration-health.d.ts.map +0 -1
- package/dist/core/integration-health.js.map +0 -1
- package/dist/core/integration-lifecycle.d.ts.map +0 -1
- package/dist/core/integration-lifecycle.js.map +0 -1
- package/dist/core/integration-main-backend.d.ts.map +0 -1
- package/dist/core/integration-main-backend.js.map +0 -1
- package/dist/core/integration-probe.d.ts.map +0 -1
- package/dist/core/integration-probe.js.map +0 -1
- package/dist/core/management-md-write-lock.d.ts.map +0 -1
- package/dist/core/management-md-write-lock.js.map +0 -1
- package/dist/core/management-md.d.ts.map +0 -1
- package/dist/core/management-md.js.map +0 -1
- package/dist/core/management-registry.d.ts.map +0 -1
- package/dist/core/management-registry.js.map +0 -1
- package/dist/core/management-telemetry.d.ts.map +0 -1
- package/dist/core/management-telemetry.js.map +0 -1
- package/dist/core/message-recorder.d.ts.map +0 -1
- package/dist/core/message-recorder.js.map +0 -1
- package/dist/core/metrics.d.ts.map +0 -1
- package/dist/core/metrics.js.map +0 -1
- package/dist/core/migration-backup.d.ts.map +0 -1
- package/dist/core/migration-backup.js.map +0 -1
- package/dist/core/output-language-policy.d.ts.map +0 -1
- package/dist/core/output-language-policy.js.map +0 -1
- package/dist/core/overview-write-lock.d.ts.map +0 -1
- package/dist/core/overview-write-lock.js.map +0 -1
- package/dist/core/path-compat.d.ts.map +0 -1
- package/dist/core/path-compat.js.map +0 -1
- package/dist/core/path-rewrite.d.ts.map +0 -1
- package/dist/core/path-rewrite.js.map +0 -1
- package/dist/core/policy-files.d.ts.map +0 -1
- package/dist/core/policy-files.js.map +0 -1
- package/dist/core/profile-questions/seed.d.ts.map +0 -1
- package/dist/core/profile-questions/seed.js.map +0 -1
- package/dist/core/profile-questions/slot-filled.d.ts.map +0 -1
- package/dist/core/profile-questions/slot-filled.js.map +0 -1
- package/dist/core/prompts.d.ts.map +0 -1
- package/dist/core/prompts.js.map +0 -1
- package/dist/core/quiet-hours-sync.d.ts.map +0 -1
- package/dist/core/quiet-hours-sync.js.map +0 -1
- package/dist/core/read-sensitive-token-manager.d.ts.map +0 -1
- package/dist/core/read-sensitive-token-manager.js.map +0 -1
- package/dist/core/recurrence.d.ts.map +0 -1
- package/dist/core/recurrence.js.map +0 -1
- package/dist/core/reinstall.d.ts.map +0 -1
- package/dist/core/reinstall.js.map +0 -1
- package/dist/core/release-assets.d.ts.map +0 -1
- package/dist/core/release-assets.js.map +0 -1
- package/dist/core/repository-management-docs.d.ts.map +0 -1
- package/dist/core/repository-management-docs.js.map +0 -1
- package/dist/core/retention.d.ts.map +0 -1
- package/dist/core/retention.js.map +0 -1
- package/dist/core/review-context.d.ts.map +0 -1
- package/dist/core/review-context.js.map +0 -1
- package/dist/core/roadmap-horizon.d.ts.map +0 -1
- package/dist/core/roadmap-horizon.js.map +0 -1
- package/dist/core/roadmap-ids.d.ts.map +0 -1
- package/dist/core/roadmap-ids.js.map +0 -1
- package/dist/core/roadmap-merge.d.ts +0 -7
- package/dist/core/roadmap-merge.d.ts.map +0 -1
- package/dist/core/roadmap-merge.js +0 -187
- package/dist/core/roadmap-merge.js.map +0 -1
- package/dist/core/roadmap-refresh-triggers.d.ts.map +0 -1
- package/dist/core/roadmap-refresh-triggers.js.map +0 -1
- package/dist/core/roadmap-truncate.d.ts.map +0 -1
- package/dist/core/roadmap-truncate.js.map +0 -1
- package/dist/core/roadmap-validate.d.ts.map +0 -1
- package/dist/core/roadmap-validate.js.map +0 -1
- package/dist/core/roadmap-write-lock.d.ts.map +0 -1
- package/dist/core/roadmap-write-lock.js.map +0 -1
- package/dist/core/routine-acquisition-plan.d.ts.map +0 -1
- package/dist/core/routine-acquisition-plan.js.map +0 -1
- package/dist/core/routine-fetch-window-retry.d.ts.map +0 -1
- package/dist/core/routine-fetch-window-retry.js.map +0 -1
- package/dist/core/routine-fetch-window-runner.d.ts.map +0 -1
- package/dist/core/routine-fetch-window-runner.js.map +0 -1
- package/dist/core/routine-windows.d.ts.map +0 -1
- package/dist/core/routine-windows.js.map +0 -1
- package/dist/core/schedule-insert-helper.d.ts.map +0 -1
- package/dist/core/schedule-insert-helper.js.map +0 -1
- package/dist/core/schedule-maintenance.d.ts.map +0 -1
- package/dist/core/schedule-maintenance.js.map +0 -1
- package/dist/core/scheduler.d.ts.map +0 -1
- package/dist/core/scheduler.js.map +0 -1
- package/dist/core/semaphore.d.ts.map +0 -1
- package/dist/core/semaphore.js.map +0 -1
- package/dist/core/session-gate.d.ts.map +0 -1
- package/dist/core/session-gate.js.map +0 -1
- package/dist/core/session-manager.d.ts.map +0 -1
- package/dist/core/session-manager.js.map +0 -1
- package/dist/core/signal-detector.d.ts.map +0 -1
- package/dist/core/signal-detector.js.map +0 -1
- package/dist/core/skeleton.d.ts.map +0 -1
- package/dist/core/skeleton.js.map +0 -1
- package/dist/core/skill-curation/apply-proposal.d.ts.map +0 -1
- package/dist/core/skill-curation/apply-proposal.js.map +0 -1
- package/dist/core/skill-curation/auto-revert.d.ts.map +0 -1
- package/dist/core/skill-curation/auto-revert.js.map +0 -1
- package/dist/core/skill-curation/classify-diff.d.ts.map +0 -1
- package/dist/core/skill-curation/classify-diff.js.map +0 -1
- package/dist/core/skill-curation/declarations.d.ts.map +0 -1
- package/dist/core/skill-curation/declarations.js.map +0 -1
- package/dist/core/skill-curation/knowledge-map.d.ts.map +0 -1
- package/dist/core/skill-curation/knowledge-map.js.map +0 -1
- package/dist/core/skill-curation/orphan-overlay.d.ts.map +0 -1
- package/dist/core/skill-curation/orphan-overlay.js.map +0 -1
- package/dist/core/skill-curation/overlay-store.d.ts.map +0 -1
- package/dist/core/skill-curation/overlay-store.js.map +0 -1
- package/dist/core/skill-curation/render/convention-notes.d.ts.map +0 -1
- package/dist/core/skill-curation/render/convention-notes.js.map +0 -1
- package/dist/core/skill-curation/render/cross-references.d.ts.map +0 -1
- package/dist/core/skill-curation/render/cross-references.js.map +0 -1
- package/dist/core/skill-curation/render/frontmatter-schema.d.ts.map +0 -1
- package/dist/core/skill-curation/render/frontmatter-schema.js.map +0 -1
- package/dist/core/skill-curation/render/index.d.ts.map +0 -1
- package/dist/core/skill-curation/render/index.js.map +0 -1
- package/dist/core/skill-curation/render/knowledge-layout.d.ts.map +0 -1
- package/dist/core/skill-curation/render/knowledge-layout.js.map +0 -1
- package/dist/core/skill-curation/render/routing-table.d.ts.map +0 -1
- package/dist/core/skill-curation/render/routing-table.js.map +0 -1
- package/dist/core/skill-curation/render/search-recipes.d.ts.map +0 -1
- package/dist/core/skill-curation/render/search-recipes.js.map +0 -1
- package/dist/core/skill-curation/run-token.d.ts.map +0 -1
- package/dist/core/skill-curation/run-token.js.map +0 -1
- package/dist/core/skill-curation/signals.d.ts.map +0 -1
- package/dist/core/skill-curation/signals.js.map +0 -1
- package/dist/core/skill-curation/smoke-test.d.ts.map +0 -1
- package/dist/core/skill-curation/smoke-test.js.map +0 -1
- package/dist/core/skill-curation/splicer.d.ts.map +0 -1
- package/dist/core/skill-curation/splicer.js.map +0 -1
- package/dist/core/skill-curation/workdir.d.ts.map +0 -1
- package/dist/core/skill-curation/workdir.js.map +0 -1
- package/dist/core/skill-source-paths.d.ts.map +0 -1
- package/dist/core/skill-source-paths.js.map +0 -1
- package/dist/core/skills-compiler.d.ts.map +0 -1
- package/dist/core/skills-compiler.js.map +0 -1
- package/dist/core/skills-manifest.d.ts.map +0 -1
- package/dist/core/skills-manifest.js.map +0 -1
- package/dist/core/system-reset.d.ts.map +0 -1
- package/dist/core/system-reset.js.map +0 -1
- package/dist/core/template-store.d.ts.map +0 -1
- package/dist/core/template-store.js.map +0 -1
- package/dist/core/template-versions.d.ts.map +0 -1
- package/dist/core/template-versions.js.map +0 -1
- package/dist/core/today-agent-plan.d.ts.map +0 -1
- package/dist/core/today-agent-plan.js.map +0 -1
- package/dist/core/today-direct-writer.d.ts.map +0 -1
- package/dist/core/today-direct-writer.js.map +0 -1
- package/dist/core/today-write-lock.d.ts.map +0 -1
- package/dist/core/today-write-lock.js.map +0 -1
- package/dist/core/trigger-dispatch.d.ts.map +0 -1
- package/dist/core/trigger-dispatch.js.map +0 -1
- package/dist/core/trigger-evaluator.d.ts.map +0 -1
- package/dist/core/trigger-evaluator.js.map +0 -1
- package/dist/core/wiki/approval-queue.d.ts.map +0 -1
- package/dist/core/wiki/approval-queue.js.map +0 -1
- package/dist/core/wiki/bridge.d.ts.map +0 -1
- package/dist/core/wiki/bridge.js.map +0 -1
- package/dist/core/wiki/compile-lock.d.ts.map +0 -1
- package/dist/core/wiki/compile-lock.js.map +0 -1
- package/dist/core/wiki/compile-preview.d.ts.map +0 -1
- package/dist/core/wiki/compile-preview.js.map +0 -1
- package/dist/core/wiki/cost-estimate.d.ts.map +0 -1
- package/dist/core/wiki/cost-estimate.js.map +0 -1
- package/dist/core/wiki/dispatcher.d.ts.map +0 -1
- package/dist/core/wiki/dispatcher.js.map +0 -1
- package/dist/core/wiki/git-precompile.d.ts.map +0 -1
- package/dist/core/wiki/git-precompile.js.map +0 -1
- package/dist/core/wiki/import-migrate.d.ts.map +0 -1
- package/dist/core/wiki/import-migrate.js.map +0 -1
- package/dist/core/wiki/import-probe.d.ts.map +0 -1
- package/dist/core/wiki/import-probe.js.map +0 -1
- package/dist/core/wiki/index-cache.d.ts.map +0 -1
- package/dist/core/wiki/index-cache.js.map +0 -1
- package/dist/core/wiki/multi-url-dispatch.d.ts.map +0 -1
- package/dist/core/wiki/multi-url-dispatch.js.map +0 -1
- package/dist/core/wiki/wiki-fts.d.ts.map +0 -1
- package/dist/core/wiki/wiki-fts.js.map +0 -1
- package/dist/core/wiki/workspaces.d.ts.map +0 -1
- package/dist/core/wiki/workspaces.js.map +0 -1
- package/dist/core/wiki/write-strategy.d.ts.map +0 -1
- package/dist/core/wiki/write-strategy.js.map +0 -1
- package/dist/core/workdir.d.ts.map +0 -1
- package/dist/core/workdir.js.map +0 -1
- package/dist/db/automation-triggers.d.ts.map +0 -1
- package/dist/db/automation-triggers.js.map +0 -1
- package/dist/db/client.d.ts.map +0 -1
- package/dist/db/client.js.map +0 -1
- package/dist/db/entities-store.d.ts.map +0 -1
- package/dist/db/entities-store.js.map +0 -1
- package/dist/db/hourly-check-signals.d.ts.map +0 -1
- package/dist/db/hourly-check-signals.js.map +0 -1
- package/dist/db/integration-probe-store.d.ts.map +0 -1
- package/dist/db/integration-probe-store.js.map +0 -1
- package/dist/db/integrations-store.d.ts.map +0 -1
- package/dist/db/integrations-store.js.map +0 -1
- package/dist/db/managed-tasks-store.d.ts.map +0 -1
- package/dist/db/managed-tasks-store.js.map +0 -1
- package/dist/db/management-parse-failures-store.d.ts.map +0 -1
- package/dist/db/management-parse-failures-store.js.map +0 -1
- package/dist/db/observations.d.ts.map +0 -1
- package/dist/db/observations.js.map +0 -1
- package/dist/db/recurring-schedules.d.ts.map +0 -1
- package/dist/db/recurring-schedules.js.map +0 -1
- package/dist/db/repositories-store.d.ts.map +0 -1
- package/dist/db/repositories-store.js.map +0 -1
- package/dist/db/runtime-state.d.ts.map +0 -1
- package/dist/db/runtime-state.js.map +0 -1
- package/dist/db/schema.d.ts.map +0 -1
- package/dist/db/schema.js.map +0 -1
- package/dist/db/sot-bindings-store.d.ts.map +0 -1
- package/dist/db/sot-bindings-store.js.map +0 -1
- package/dist/db/test-schemas.d.ts +0 -23
- package/dist/db/test-schemas.d.ts.map +0 -1
- package/dist/db/test-schemas.js +0 -111
- package/dist/db/test-schemas.js.map +0 -1
- package/dist/db/voice-transcripts-store.d.ts.map +0 -1
- package/dist/db/voice-transcripts-store.js.map +0 -1
- package/dist/db/wiki-store.d.ts.map +0 -1
- package/dist/db/wiki-store.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/init.d.ts.map +0 -1
- package/dist/init.js.map +0 -1
- package/dist/log-buffer.d.ts.map +0 -1
- package/dist/log-buffer.js.map +0 -1
- package/dist/logging.d.ts.map +0 -1
- package/dist/logging.js.map +0 -1
- package/dist/management-rules.d.ts.map +0 -1
- package/dist/management-rules.js.map +0 -1
- package/dist/messaging/constants.d.ts.map +0 -1
- package/dist/messaging/constants.js.map +0 -1
- package/dist/messaging/magic-phrase.d.ts.map +0 -1
- package/dist/messaging/magic-phrase.js.map +0 -1
- package/dist/messaging/owner-channels.d.ts.map +0 -1
- package/dist/messaging/owner-channels.js.map +0 -1
- package/dist/messaging/setup-welcome-dm.d.ts.map +0 -1
- package/dist/messaging/setup-welcome-dm.js.map +0 -1
- package/dist/messaging/url-extract.d.ts.map +0 -1
- package/dist/messaging/url-extract.js.map +0 -1
- package/dist/observers/calendar-poller.d.ts.map +0 -1
- package/dist/observers/calendar-poller.js.map +0 -1
- package/dist/observers/context-index-reconciler-observer.d.ts.map +0 -1
- package/dist/observers/context-index-reconciler-observer.js.map +0 -1
- package/dist/observers/delegated-probe-observer.d.ts.map +0 -1
- package/dist/observers/delegated-probe-observer.js.map +0 -1
- package/dist/observers/delegated-sync-worker.d.ts.map +0 -1
- package/dist/observers/delegated-sync-worker.js.map +0 -1
- package/dist/observers/entity-mirror-observer.d.ts.map +0 -1
- package/dist/observers/entity-mirror-observer.js.map +0 -1
- package/dist/observers/git-delegated-cron.d.ts.map +0 -1
- package/dist/observers/git-delegated-cron.js.map +0 -1
- package/dist/observers/git-event-classifier.d.ts.map +0 -1
- package/dist/observers/git-event-classifier.js.map +0 -1
- package/dist/observers/git-watcher.d.ts.map +0 -1
- package/dist/observers/git-watcher.js.map +0 -1
- package/dist/observers/github-poller-classifier.d.ts.map +0 -1
- package/dist/observers/github-poller-classifier.js.map +0 -1
- package/dist/observers/github-poller.d.ts.map +0 -1
- package/dist/observers/github-poller.js.map +0 -1
- package/dist/observers/imminent-event-scheduler.d.ts.map +0 -1
- package/dist/observers/imminent-event-scheduler.js.map +0 -1
- package/dist/observers/mail-poller.d.ts.map +0 -1
- package/dist/observers/mail-poller.js.map +0 -1
- package/dist/observers/mail-reconciliation.d.ts.map +0 -1
- package/dist/observers/mail-reconciliation.js.map +0 -1
- package/dist/observers/manager.d.ts.map +0 -1
- package/dist/observers/manager.js.map +0 -1
- package/dist/observers/notion-poller.d.ts.map +0 -1
- package/dist/observers/notion-poller.js.map +0 -1
- package/dist/observers/observation-summarizer/index.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/index.js.map +0 -1
- package/dist/observers/observation-summarizer/pre-filter.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/pre-filter.js.map +0 -1
- package/dist/observers/observation-summarizer/response-parser.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/response-parser.js.map +0 -1
- package/dist/observers/observation-summarizer/summarizer-client.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/summarizer-client.js.map +0 -1
- package/dist/observers/observation-summarizer/summarizer-prompts.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/summarizer-prompts.js.map +0 -1
- package/dist/observers/observation-summarizer/worker.d.ts.map +0 -1
- package/dist/observers/observation-summarizer/worker.js.map +0 -1
- package/dist/observers/obsidian-watcher.d.ts.map +0 -1
- package/dist/observers/obsidian-watcher.js.map +0 -1
- package/dist/observers/primary-vault-watcher.d.ts.map +0 -1
- package/dist/observers/primary-vault-watcher.js.map +0 -1
- package/dist/observers/repository-management-cron.d.ts.map +0 -1
- package/dist/observers/repository-management-cron.js.map +0 -1
- package/dist/observers/skill-curation-walker.d.ts.map +0 -1
- package/dist/observers/skill-curation-walker.js.map +0 -1
- package/dist/safety/absolute-block-audit.d.ts.map +0 -1
- package/dist/safety/absolute-block-audit.js.map +0 -1
- package/dist/safety/agent-write-tracker.d.ts.map +0 -1
- package/dist/safety/agent-write-tracker.js.map +0 -1
- package/dist/safety/always-disallowed.d.ts.map +0 -1
- package/dist/safety/always-disallowed.js.map +0 -1
- package/dist/safety/audit.d.ts.map +0 -1
- package/dist/safety/audit.js.map +0 -1
- package/dist/safety/integration-write-tracker.d.ts.map +0 -1
- package/dist/safety/integration-write-tracker.js.map +0 -1
- package/dist/safety/risk-classifier.d.ts.map +0 -1
- package/dist/safety/risk-classifier.js.map +0 -1
- package/dist/scheduler/hourly-check-gate.d.ts.map +0 -1
- package/dist/scheduler/hourly-check-gate.js.map +0 -1
- package/dist/secrets/backend-api-key-env.d.ts.map +0 -1
- package/dist/secrets/backend-api-key-env.js.map +0 -1
- package/dist/secrets/codex-home-materializer.d.ts.map +0 -1
- package/dist/secrets/codex-home-materializer.js.map +0 -1
- package/dist/secrets/encrypted-blob-store.d.ts.map +0 -1
- package/dist/secrets/encrypted-blob-store.js.map +0 -1
- package/dist/secrets/platform-secret-store.d.ts.map +0 -1
- package/dist/secrets/platform-secret-store.js.map +0 -1
- package/dist/secrets/redaction.d.ts.map +0 -1
- package/dist/secrets/redaction.js.map +0 -1
- package/dist/secrets/secret-broker.d.ts.map +0 -1
- package/dist/secrets/secret-broker.js.map +0 -1
- package/dist/secrets/secret-names.d.ts.map +0 -1
- package/dist/secrets/secret-names.js.map +0 -1
- package/dist/secrets/secret-store.d.ts.map +0 -1
- package/dist/secrets/secret-store.js.map +0 -1
- package/dist/secrets/types.d.ts.map +0 -1
- package/dist/secrets/types.js.map +0 -1
- package/dist/services/apple-calendar/caldav-client.d.ts.map +0 -1
- package/dist/services/apple-calendar/caldav-client.js.map +0 -1
- package/dist/services/apple-calendar/caldav-codec.d.ts.map +0 -1
- package/dist/services/apple-calendar/caldav-codec.js.map +0 -1
- package/dist/services/apple-calendar/index.d.ts.map +0 -1
- package/dist/services/apple-calendar/index.js.map +0 -1
- package/dist/services/apple-calendar/service.d.ts.map +0 -1
- package/dist/services/apple-calendar/service.js.map +0 -1
- package/dist/services/apple-calendar/types.d.ts.map +0 -1
- package/dist/services/apple-calendar/types.js.map +0 -1
- package/dist/services/attachments/hardlink.d.ts.map +0 -1
- package/dist/services/attachments/hardlink.js.map +0 -1
- package/dist/services/attachments/sanitize.d.ts.map +0 -1
- package/dist/services/attachments/sanitize.js.map +0 -1
- package/dist/services/attachments/store.d.ts.map +0 -1
- package/dist/services/attachments/store.js.map +0 -1
- package/dist/services/calendar/outlook/graph-calendar-client.d.ts.map +0 -1
- package/dist/services/calendar/outlook/graph-calendar-client.js.map +0 -1
- package/dist/services/calendar.d.ts.map +0 -1
- package/dist/services/calendar.js.map +0 -1
- package/dist/services/delegated-backend-invoker.d.ts.map +0 -1
- package/dist/services/delegated-backend-invoker.js.map +0 -1
- package/dist/services/delegated-invoker-audit.d.ts.map +0 -1
- package/dist/services/delegated-invoker-audit.js.map +0 -1
- package/dist/services/delegated-invoker-cache-hits.d.ts.map +0 -1
- package/dist/services/delegated-invoker-cache-hits.js.map +0 -1
- package/dist/services/delegated-invoker-janitors.d.ts.map +0 -1
- package/dist/services/delegated-invoker-janitors.js.map +0 -1
- package/dist/services/delegated-invoker-utils.d.ts.map +0 -1
- package/dist/services/delegated-invoker-utils.js.map +0 -1
- package/dist/services/delegated-proxy-config.d.ts.map +0 -1
- package/dist/services/delegated-proxy-config.js.map +0 -1
- package/dist/services/delegated-task-result-cache.d.ts.map +0 -1
- package/dist/services/delegated-task-result-cache.js.map +0 -1
- package/dist/services/delegated-task-runtime.d.ts.map +0 -1
- package/dist/services/delegated-task-runtime.js.map +0 -1
- package/dist/services/delegated-task-session-pool.d.ts.map +0 -1
- package/dist/services/delegated-task-session-pool.js.map +0 -1
- package/dist/services/delegated-tool-runtime.d.ts.map +0 -1
- package/dist/services/delegated-tool-runtime.js.map +0 -1
- package/dist/services/fts5.d.ts.map +0 -1
- package/dist/services/fts5.js.map +0 -1
- package/dist/services/git-account-registry.d.ts.map +0 -1
- package/dist/services/git-account-registry.js.map +0 -1
- package/dist/services/github.d.ts.map +0 -1
- package/dist/services/github.js.map +0 -1
- package/dist/services/gmail-classifier.d.ts.map +0 -1
- package/dist/services/gmail-classifier.js.map +0 -1
- package/dist/services/gmail.d.ts.map +0 -1
- package/dist/services/gmail.js.map +0 -1
- package/dist/services/google-auth.d.ts.map +0 -1
- package/dist/services/google-auth.js.map +0 -1
- package/dist/services/google-maps.d.ts +0 -35
- package/dist/services/google-maps.d.ts.map +0 -1
- package/dist/services/google-maps.js +0 -82
- package/dist/services/google-maps.js.map +0 -1
- package/dist/services/integrations/extract-write-item-id.d.ts.map +0 -1
- package/dist/services/integrations/extract-write-item-id.js.map +0 -1
- package/dist/services/integrations/reconcile.d.ts.map +0 -1
- package/dist/services/integrations/reconcile.js.map +0 -1
- package/dist/services/integrations/snapshot-partitions.d.ts.map +0 -1
- package/dist/services/integrations/snapshot-partitions.js.map +0 -1
- package/dist/services/journal/render.d.ts.map +0 -1
- package/dist/services/journal/render.js.map +0 -1
- package/dist/services/journal/writer.d.ts.map +0 -1
- package/dist/services/journal/writer.js.map +0 -1
- package/dist/services/mail/account-registry.d.ts.map +0 -1
- package/dist/services/mail/account-registry.js.map +0 -1
- package/dist/services/mail/gmail/auth-failure-classifier.d.ts.map +0 -1
- package/dist/services/mail/gmail/auth-failure-classifier.js.map +0 -1
- package/dist/services/mail/gmail/gmail-provider.d.ts.map +0 -1
- package/dist/services/mail/gmail/gmail-provider.js.map +0 -1
- package/dist/services/mail/gmail/legacy-row.d.ts.map +0 -1
- package/dist/services/mail/gmail/legacy-row.js.map +0 -1
- package/dist/services/mail/gmail/poll-cursor.d.ts.map +0 -1
- package/dist/services/mail/gmail/poll-cursor.js.map +0 -1
- package/dist/services/mail/html-to-plaintext.d.ts.map +0 -1
- package/dist/services/mail/html-to-plaintext.js.map +0 -1
- package/dist/services/mail/imap/app-password.d.ts.map +0 -1
- package/dist/services/mail/imap/app-password.js.map +0 -1
- package/dist/services/mail/imap/auth-failure-classifier.d.ts.map +0 -1
- package/dist/services/mail/imap/auth-failure-classifier.js.map +0 -1
- package/dist/services/mail/imap/capabilities.d.ts.map +0 -1
- package/dist/services/mail/imap/capabilities.js.map +0 -1
- package/dist/services/mail/imap/client.d.ts.map +0 -1
- package/dist/services/mail/imap/client.js.map +0 -1
- package/dist/services/mail/imap/cursor.d.ts.map +0 -1
- package/dist/services/mail/imap/cursor.js.map +0 -1
- package/dist/services/mail/imap/folder-resolver.d.ts.map +0 -1
- package/dist/services/mail/imap/folder-resolver.js.map +0 -1
- package/dist/services/mail/imap/icloud-provider.d.ts.map +0 -1
- package/dist/services/mail/imap/icloud-provider.js.map +0 -1
- package/dist/services/mail/imap/imap-provider-base.d.ts.map +0 -1
- package/dist/services/mail/imap/imap-provider-base.js.map +0 -1
- package/dist/services/mail/imap/query-translator.d.ts.map +0 -1
- package/dist/services/mail/imap/query-translator.js.map +0 -1
- package/dist/services/mail/imap/reconcile-planner.d.ts.map +0 -1
- package/dist/services/mail/imap/reconcile-planner.js.map +0 -1
- package/dist/services/mail/imap/reply-mime.d.ts.map +0 -1
- package/dist/services/mail/imap/reply-mime.js.map +0 -1
- package/dist/services/mail/imap/yahoo-provider.d.ts.map +0 -1
- package/dist/services/mail/imap/yahoo-provider.js.map +0 -1
- package/dist/services/mail/mail-search.d.ts.map +0 -1
- package/dist/services/mail/mail-search.js.map +0 -1
- package/dist/services/mail/outlook/auth-failure-classifier.d.ts.map +0 -1
- package/dist/services/mail/outlook/auth-failure-classifier.js.map +0 -1
- package/dist/services/mail/outlook/client-config.d.ts.map +0 -1
- package/dist/services/mail/outlook/client-config.js.map +0 -1
- package/dist/services/mail/outlook/delta-cursor.d.ts.map +0 -1
- package/dist/services/mail/outlook/delta-cursor.js.map +0 -1
- package/dist/services/mail/outlook/graph-client.d.ts.map +0 -1
- package/dist/services/mail/outlook/graph-client.js.map +0 -1
- package/dist/services/mail/outlook/msal-app-factory.d.ts.map +0 -1
- package/dist/services/mail/outlook/msal-app-factory.js.map +0 -1
- package/dist/services/mail/outlook/msal-cache-plugin.d.ts.map +0 -1
- package/dist/services/mail/outlook/msal-cache-plugin.js.map +0 -1
- package/dist/services/mail/outlook/oauth-device-code.d.ts.map +0 -1
- package/dist/services/mail/outlook/oauth-device-code.js.map +0 -1
- package/dist/services/mail/outlook/oauth-loopback.d.ts.map +0 -1
- package/dist/services/mail/outlook/oauth-loopback.js.map +0 -1
- package/dist/services/mail/outlook/outlook-provider.d.ts.map +0 -1
- package/dist/services/mail/outlook/outlook-provider.js.map +0 -1
- package/dist/services/mail/outlook/query-translator.d.ts.map +0 -1
- package/dist/services/mail/outlook/query-translator.js.map +0 -1
- package/dist/services/mail/provider.d.ts.map +0 -1
- package/dist/services/mail/provider.js.map +0 -1
- package/dist/services/mail/query-utils.d.ts.map +0 -1
- package/dist/services/mail/query-utils.js.map +0 -1
- package/dist/services/mail-classifier.d.ts.map +0 -1
- package/dist/services/mail-classifier.js.map +0 -1
- package/dist/services/mail-ingestion.d.ts.map +0 -1
- package/dist/services/mail-ingestion.js.map +0 -1
- package/dist/services/mcp/auto-probe.d.ts.map +0 -1
- package/dist/services/mcp/auto-probe.js.map +0 -1
- package/dist/services/mcp/generators/claude.d.ts.map +0 -1
- package/dist/services/mcp/generators/claude.js.map +0 -1
- package/dist/services/mcp/generators/codex.d.ts.map +0 -1
- package/dist/services/mcp/generators/codex.js.map +0 -1
- package/dist/services/mcp/generators/gemini.d.ts.map +0 -1
- package/dist/services/mcp/generators/gemini.js.map +0 -1
- package/dist/services/mcp/generators/index.d.ts.map +0 -1
- package/dist/services/mcp/generators/index.js.map +0 -1
- package/dist/services/mcp/generators/types.d.ts.map +0 -1
- package/dist/services/mcp/generators/types.js.map +0 -1
- package/dist/services/mcp/probe.d.ts.map +0 -1
- package/dist/services/mcp/probe.js.map +0 -1
- package/dist/services/mcp/registry.d.ts.map +0 -1
- package/dist/services/mcp/registry.js.map +0 -1
- package/dist/services/mcp/risk.d.ts.map +0 -1
- package/dist/services/mcp/risk.js.map +0 -1
- package/dist/services/mcp/session-materializer.d.ts.map +0 -1
- package/dist/services/mcp/session-materializer.js.map +0 -1
- package/dist/services/mcp/tool-audit.d.ts.map +0 -1
- package/dist/services/mcp/tool-audit.js.map +0 -1
- package/dist/services/mcp/types.d.ts.map +0 -1
- package/dist/services/mcp/types.js.map +0 -1
- package/dist/services/notion.d.ts.map +0 -1
- package/dist/services/notion.js.map +0 -1
- package/dist/services/obsidian.d.ts.map +0 -1
- package/dist/services/obsidian.js.map +0 -1
- package/dist/services/service-registry.d.ts.map +0 -1
- package/dist/services/service-registry.js.map +0 -1
- package/dist/services/voice/transcriber-impl.d.ts.map +0 -1
- package/dist/services/voice/transcriber-impl.js.map +0 -1
- package/dist/services/voice/transcriber.d.ts.map +0 -1
- package/dist/services/voice/transcriber.js.map +0 -1
- package/dist/settings/runtime-settings.d.ts.map +0 -1
- package/dist/settings/runtime-settings.js.map +0 -1
- package/dist/settings/settings-store.d.ts.map +0 -1
- package/dist/settings/settings-store.js.map +0 -1
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Site registry — Phase B-2.5 of the managed-Chromium plan.
|
|
3
|
+
*
|
|
4
|
+
* MANAGED_CHROMIUM_IMPLEMENTATION_PLAN.md §16.2.
|
|
5
|
+
*
|
|
6
|
+
* A `<siteKey>` is the per-site authentication boundary for the
|
|
7
|
+
* Instance A `auth` variant: every B-2.5 workflow declares a `siteKey`,
|
|
8
|
+
* and the per-site profile dir
|
|
9
|
+
* `<PA_DATA_DIR>/chromium-automation-auth/<siteKey>/` carries cookies
|
|
10
|
+
* scoped exclusively to that site. A workflow can only see cookies for
|
|
11
|
+
* its registered site — there is no shared profile dir across sites.
|
|
12
|
+
*
|
|
13
|
+
* The registry is enumerated, not synthesised: `Object.freeze`d at
|
|
14
|
+
* module load and reviewed in code review. The LLM cannot register
|
|
15
|
+
* sites at runtime. Same structural pattern as the workflow registry
|
|
16
|
+
* (`workflows/registry.ts`) and the per-domain user allowlist.
|
|
17
|
+
*
|
|
18
|
+
* Lives in the covered set — the consistency test (frozen object,
|
|
19
|
+
* stable lookup keys, signedInSelector + allowedHostPattern shape) is
|
|
20
|
+
* the structural guarantee.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* Per-site authentication definition. Every field is immutable post-
|
|
24
|
+
* declaration; the workflow runner reads from this shape and never
|
|
25
|
+
* mutates it. Adding a new site is a 1-line edit to `SITE_REGISTRY`
|
|
26
|
+
* below — no runtime registration path exists.
|
|
27
|
+
*/
|
|
28
|
+
export interface SiteDefinition {
|
|
29
|
+
/** Stable identifier — also the URL path segment for
|
|
30
|
+
* `/api/browser-automation/sites/:siteKey/*` and the on-disk
|
|
31
|
+
* profile dir name. Must match `/^[a-z][a-z0-9_]*$/`. */
|
|
32
|
+
siteKey: string;
|
|
33
|
+
/** Human-readable label rendered in the dashboard's per-site
|
|
34
|
+
* status card and DM prompts ("Connect Amazon Japan to use this
|
|
35
|
+
* workflow"). */
|
|
36
|
+
displayName: string;
|
|
37
|
+
/** Sign-in entry-point URL opened in the bootstrap UI Chromium
|
|
38
|
+
* window when the user clicks "Connect <site>". */
|
|
39
|
+
signInUrl: string;
|
|
40
|
+
/** Site root, used by the bootstrap status probe as a navigation
|
|
41
|
+
* fallback when `profileVerifyUrl` is unreachable. */
|
|
42
|
+
homeUrl: string;
|
|
43
|
+
/** Page the bootstrap status probe navigates to in order to
|
|
44
|
+
* observe whether the cookies in the profile dir produce a
|
|
45
|
+
* signed-in session. Distinct from `homeUrl` because some sites
|
|
46
|
+
* (Amazon, Netflix) gate the "your account" link behind a hover
|
|
47
|
+
* menu — `profileVerifyUrl` is the directly-addressable signed-in
|
|
48
|
+
* page. */
|
|
49
|
+
profileVerifyUrl: string;
|
|
50
|
+
/** Playwright-flavoured selector the bootstrap probe matches to
|
|
51
|
+
* confirm signed-in state. Kept as a string so the registry stays
|
|
52
|
+
* pure (no live `Page` reference); the runner translates it into
|
|
53
|
+
* the real `page.locator(...)` call. */
|
|
54
|
+
signedInSelector: string;
|
|
55
|
+
/** Per-site URL allowlist — workflows targeting this `siteKey`
|
|
56
|
+
* MUST declare an `allowlistRegex` whose source is a string-prefix
|
|
57
|
+
* subset of this pattern. The registry validator enforces the
|
|
58
|
+
* subset relation at module load so a mis-scoped workflow fails
|
|
59
|
+
* daemon boot rather than landing in production. */
|
|
60
|
+
allowedHostPattern: RegExp;
|
|
61
|
+
/** Cookies / Local Storage older than this are considered stale —
|
|
62
|
+
* the runner returns `site_not_connected` and the dashboard's
|
|
63
|
+
* per-site card prompts for a re-auth. Independent of any
|
|
64
|
+
* upstream session lifetime the site itself enforces; this is the
|
|
65
|
+
* daemon's own freshness floor. */
|
|
66
|
+
sessionMaxAgeDays: number;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* The canonical site registry. Every authenticated workflow's
|
|
70
|
+
* `siteKey` MUST resolve here. The registry is frozen at module
|
|
71
|
+
* load so neither the LLM nor a stray test helper can mutate it at
|
|
72
|
+
* runtime.
|
|
73
|
+
*
|
|
74
|
+
* The first three entries (amazon_jp, amazon_com, netflix) are the
|
|
75
|
+
* B-2.5 initial set. The next four (x_com, facebook, instagram,
|
|
76
|
+
* linkedin) land in BROWSER_TASK_REDESIGN_PLAN.md §8 (Phase 4) and
|
|
77
|
+
* widen the open-ended-task surface to the social platforms the
|
|
78
|
+
* `browser_task` sub-agent is most often asked to drive ("post X to
|
|
79
|
+
* Twitter at 09:00 tomorrow"). The `generic_anon` entry from earlier
|
|
80
|
+
* drafts is intentionally NOT added — its `.*` outer fence would
|
|
81
|
+
* invert the safety floor (see §8 of the plan for the rejection
|
|
82
|
+
* trail).
|
|
83
|
+
*/
|
|
84
|
+
export declare const SITE_REGISTRY: Readonly<Record<string, SiteDefinition>>;
|
|
85
|
+
/**
|
|
86
|
+
* Lookup helper. Returns `null` on miss so callers can render the
|
|
87
|
+
* canonical "unknown_site" / 404 path rather than throwing. Resilient
|
|
88
|
+
* against prototype-pollution attempts (`__proto__`, `constructor`)
|
|
89
|
+
* by gating on `hasOwnProperty`.
|
|
90
|
+
*/
|
|
91
|
+
export declare function getSite(siteKey: string): SiteDefinition | null;
|
|
92
|
+
/**
|
|
93
|
+
* Enumerate every registered site. Powers the dashboard's per-site
|
|
94
|
+
* card grid (`GET /api/browser-automation/sites`) and the registry
|
|
95
|
+
* validator's "every workflow's siteKey resolves" check.
|
|
96
|
+
*/
|
|
97
|
+
export declare function listSites(): readonly SiteDefinition[];
|
|
98
|
+
/**
|
|
99
|
+
* Validate every entry in the registry against the structural
|
|
100
|
+
* invariants. Throws on the first violation so daemon boot fails fast
|
|
101
|
+
* rather than landing a misshapen registry in production. Exported so
|
|
102
|
+
* the peer test can exercise each throw branch with bogus inputs.
|
|
103
|
+
*
|
|
104
|
+
* - `siteKey` matches `SITE_KEY_REGEX` and equals the map key.
|
|
105
|
+
* - `sessionMaxAgeDays` is between 1 and 365.
|
|
106
|
+
* - URL fields parse as HTTPS URLs.
|
|
107
|
+
* - `signedInSelector` is a non-empty string ≤ 200 chars.
|
|
108
|
+
* - `allowedHostPattern` covers `homeUrl` and `signInUrl`.
|
|
109
|
+
*/
|
|
110
|
+
export declare function validateSiteRegistry(entries: Readonly<Record<string, SiteDefinition>>): void;
|
|
111
|
+
/**
|
|
112
|
+
* Returns true when `child.source` is a string-prefix subset of
|
|
113
|
+
* `parent.source`. The subset relation enforced for every workflow's
|
|
114
|
+
* `allowlistRegex` against its site's `allowedHostPattern` (§16.4).
|
|
115
|
+
*
|
|
116
|
+
* Exported as a pure helper so the workflow registry's startup
|
|
117
|
+
* assertion can reuse the exact same comparator the tests cover.
|
|
118
|
+
*
|
|
119
|
+
* The comparison is intentionally simple — pattern equivalence is
|
|
120
|
+
* undecidable in general, but every shipping site's
|
|
121
|
+
* `allowedHostPattern` is anchored to `^` and ends with a `/` that
|
|
122
|
+
* roots the URL space. A workflow's `allowlistRegex` that starts
|
|
123
|
+
* with the site pattern's source as a literal prefix is provably a
|
|
124
|
+
* subset under URL strings the runner is allowed to navigate to.
|
|
125
|
+
*
|
|
126
|
+
* Equal patterns count as a subset (every regex is its own subset).
|
|
127
|
+
*/
|
|
128
|
+
export declare function isAllowlistSubsetOfSitePattern(child: RegExp, parent: RegExp): boolean;
|
|
129
|
+
/**
|
|
130
|
+
* Wall-time freshness check: returns true when a connection record
|
|
131
|
+
* for `site` (created at `connectedAtMs`) is still within the site's
|
|
132
|
+
* `sessionMaxAgeDays` floor. The workflow runner's
|
|
133
|
+
* site_not_connected gate (§16.4) and the dashboard's per-site card
|
|
134
|
+
* both call this — kept pure so a single source of truth covers both.
|
|
135
|
+
*/
|
|
136
|
+
export declare function isSiteConnectionFresh(site: SiteDefinition, connectedAtMs: number, nowMs: number): boolean;
|
|
137
|
+
/**
|
|
138
|
+
* Surfaced state value for the dashboard's per-site card — single
|
|
139
|
+
* source of truth so the route handler stays thin.
|
|
140
|
+
*/
|
|
141
|
+
export type SiteSurfaceState = "connected" | "needs_reauth" | "not_connected" | "bootstrap_running";
|
|
142
|
+
export interface ResolveSiteSurfaceInput {
|
|
143
|
+
site: SiteDefinition;
|
|
144
|
+
/** Persistent connection row, if any. */
|
|
145
|
+
connection: {
|
|
146
|
+
connectedAt: number;
|
|
147
|
+
accountLabel: string | null;
|
|
148
|
+
lastWorkflowAt: number | null;
|
|
149
|
+
} | null;
|
|
150
|
+
/** True when a bootstrap window is currently up. */
|
|
151
|
+
bootstrapRunning: boolean;
|
|
152
|
+
nowMs: number;
|
|
153
|
+
}
|
|
154
|
+
export interface ResolveSiteSurfaceResult {
|
|
155
|
+
state: SiteSurfaceState;
|
|
156
|
+
accountLabel: string | null;
|
|
157
|
+
connectedAt: number | null;
|
|
158
|
+
lastWorkflowAt: number | null;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Pure projection of (site definition, persistent connection,
|
|
162
|
+
* bootstrap flag, now) into the dashboard-facing summary. Computing
|
|
163
|
+
* this once on the daemon side keeps the dashboard's render logic
|
|
164
|
+
* trivial and lets the workflow runner reuse the same predicate for
|
|
165
|
+
* its `site_not_connected` gate.
|
|
166
|
+
*
|
|
167
|
+
* Precedence:
|
|
168
|
+
* 1. `bootstrap_running` if a UI window is up — even if a stale
|
|
169
|
+
* connection row exists. The dashboard surfaces "Finishing sign-in…"
|
|
170
|
+
* and the user finalizes via the connect flow.
|
|
171
|
+
* 2. `not_connected` when no connection row exists.
|
|
172
|
+
* 3. `needs_reauth` when a row exists but is past
|
|
173
|
+
* `sessionMaxAgeDays`.
|
|
174
|
+
* 4. `connected` otherwise.
|
|
175
|
+
*/
|
|
176
|
+
export declare function resolveSiteSurface(input: ResolveSiteSurfaceInput): ResolveSiteSurfaceResult;
|
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Site registry — Phase B-2.5 of the managed-Chromium plan.
|
|
3
|
+
*
|
|
4
|
+
* MANAGED_CHROMIUM_IMPLEMENTATION_PLAN.md §16.2.
|
|
5
|
+
*
|
|
6
|
+
* A `<siteKey>` is the per-site authentication boundary for the
|
|
7
|
+
* Instance A `auth` variant: every B-2.5 workflow declares a `siteKey`,
|
|
8
|
+
* and the per-site profile dir
|
|
9
|
+
* `<PA_DATA_DIR>/chromium-automation-auth/<siteKey>/` carries cookies
|
|
10
|
+
* scoped exclusively to that site. A workflow can only see cookies for
|
|
11
|
+
* its registered site — there is no shared profile dir across sites.
|
|
12
|
+
*
|
|
13
|
+
* The registry is enumerated, not synthesised: `Object.freeze`d at
|
|
14
|
+
* module load and reviewed in code review. The LLM cannot register
|
|
15
|
+
* sites at runtime. Same structural pattern as the workflow registry
|
|
16
|
+
* (`workflows/registry.ts`) and the per-domain user allowlist.
|
|
17
|
+
*
|
|
18
|
+
* Lives in the covered set — the consistency test (frozen object,
|
|
19
|
+
* stable lookup keys, signedInSelector + allowedHostPattern shape) is
|
|
20
|
+
* the structural guarantee.
|
|
21
|
+
*/
|
|
22
|
+
/**
|
|
23
|
+
* The canonical site registry. Every authenticated workflow's
|
|
24
|
+
* `siteKey` MUST resolve here. The registry is frozen at module
|
|
25
|
+
* load so neither the LLM nor a stray test helper can mutate it at
|
|
26
|
+
* runtime.
|
|
27
|
+
*
|
|
28
|
+
* The first three entries (amazon_jp, amazon_com, netflix) are the
|
|
29
|
+
* B-2.5 initial set. The next four (x_com, facebook, instagram,
|
|
30
|
+
* linkedin) land in BROWSER_TASK_REDESIGN_PLAN.md §8 (Phase 4) and
|
|
31
|
+
* widen the open-ended-task surface to the social platforms the
|
|
32
|
+
* `browser_task` sub-agent is most often asked to drive ("post X to
|
|
33
|
+
* Twitter at 09:00 tomorrow"). The `generic_anon` entry from earlier
|
|
34
|
+
* drafts is intentionally NOT added — its `.*` outer fence would
|
|
35
|
+
* invert the safety floor (see §8 of the plan for the rejection
|
|
36
|
+
* trail).
|
|
37
|
+
*/
|
|
38
|
+
export const SITE_REGISTRY = Object.freeze({
|
|
39
|
+
amazon_jp: {
|
|
40
|
+
siteKey: "amazon_jp",
|
|
41
|
+
displayName: "Amazon Japan",
|
|
42
|
+
signInUrl: "https://www.amazon.co.jp/ap/signin",
|
|
43
|
+
homeUrl: "https://www.amazon.co.jp/",
|
|
44
|
+
profileVerifyUrl: "https://www.amazon.co.jp/gp/your-account",
|
|
45
|
+
signedInSelector: "#nav-link-accountList",
|
|
46
|
+
allowedHostPattern: /^https?:\/\/(www\.)?amazon\.co\.jp\//,
|
|
47
|
+
sessionMaxAgeDays: 90,
|
|
48
|
+
},
|
|
49
|
+
amazon_com: {
|
|
50
|
+
siteKey: "amazon_com",
|
|
51
|
+
displayName: "Amazon US",
|
|
52
|
+
signInUrl: "https://www.amazon.com/ap/signin",
|
|
53
|
+
homeUrl: "https://www.amazon.com/",
|
|
54
|
+
profileVerifyUrl: "https://www.amazon.com/gp/your-account",
|
|
55
|
+
signedInSelector: "#nav-link-accountList",
|
|
56
|
+
allowedHostPattern: /^https?:\/\/(www\.)?amazon\.com\//,
|
|
57
|
+
sessionMaxAgeDays: 90,
|
|
58
|
+
},
|
|
59
|
+
netflix: {
|
|
60
|
+
siteKey: "netflix",
|
|
61
|
+
displayName: "Netflix",
|
|
62
|
+
signInUrl: "https://www.netflix.com/login",
|
|
63
|
+
homeUrl: "https://www.netflix.com/",
|
|
64
|
+
profileVerifyUrl: "https://www.netflix.com/YourAccount",
|
|
65
|
+
signedInSelector: "[data-uia='account-menu-item']",
|
|
66
|
+
allowedHostPattern: /^https?:\/\/(www\.)?netflix\.com\//,
|
|
67
|
+
sessionMaxAgeDays: 60,
|
|
68
|
+
},
|
|
69
|
+
// BROWSER_TASK_REDESIGN_PLAN.md §8 — Phase 4 social-platform entries.
|
|
70
|
+
// The `allowedHostPattern` for `x_com` covers both `x.com` and
|
|
71
|
+
// `twitter.com` (the legacy domain still serves redirects + asset
|
|
72
|
+
// URLs); `*.amazon-style` CDN subdomains for the social sites live in
|
|
73
|
+
// `browser-task-allowlist.ts:EXTRA_ALLOWED_ETLD_HELPERS` so per-task
|
|
74
|
+
// `extraAllowedHosts` requests admitting them carry the same review
|
|
75
|
+
// weight as adding a new siteKey.
|
|
76
|
+
x_com: {
|
|
77
|
+
siteKey: "x_com",
|
|
78
|
+
displayName: "X (Twitter)",
|
|
79
|
+
signInUrl: "https://x.com/i/flow/login",
|
|
80
|
+
homeUrl: "https://x.com/",
|
|
81
|
+
profileVerifyUrl: "https://x.com/home",
|
|
82
|
+
signedInSelector: "[data-testid='SideNav_AccountSwitcher_Button']",
|
|
83
|
+
allowedHostPattern: /^https?:\/\/(www\.|mobile\.)?(x\.com|twitter\.com)\//,
|
|
84
|
+
sessionMaxAgeDays: 60,
|
|
85
|
+
},
|
|
86
|
+
facebook: {
|
|
87
|
+
siteKey: "facebook",
|
|
88
|
+
displayName: "Facebook",
|
|
89
|
+
signInUrl: "https://www.facebook.com/login/",
|
|
90
|
+
homeUrl: "https://www.facebook.com/",
|
|
91
|
+
profileVerifyUrl: "https://www.facebook.com/me",
|
|
92
|
+
signedInSelector: "[role='banner'] [aria-label*='account']",
|
|
93
|
+
allowedHostPattern: /^https?:\/\/(www\.|m\.)?facebook\.com\//,
|
|
94
|
+
sessionMaxAgeDays: 90,
|
|
95
|
+
},
|
|
96
|
+
instagram: {
|
|
97
|
+
siteKey: "instagram",
|
|
98
|
+
displayName: "Instagram",
|
|
99
|
+
signInUrl: "https://www.instagram.com/accounts/login/",
|
|
100
|
+
homeUrl: "https://www.instagram.com/",
|
|
101
|
+
profileVerifyUrl: "https://www.instagram.com/accounts/edit/",
|
|
102
|
+
// The Explore link in Instagram's top global nav is only rendered
|
|
103
|
+
// when signed in. The earlier draft used `[role='main']` (per
|
|
104
|
+
// BROWSER_TASK_REDESIGN_PLAN.md §8's original table) but that
|
|
105
|
+
// selector matches BOTH the signed-in edit form AND the signed-out
|
|
106
|
+
// login page (Instagram redirects `/accounts/edit/` → `/accounts/
|
|
107
|
+
// login/?next=...` when no session, and the login page also wraps
|
|
108
|
+
// its form in `<main role="main">`). The bootstrap probe at
|
|
109
|
+
// `site-bootstrap.ts:432` would have reported `signedIn: true`
|
|
110
|
+
// after a user closed the window without authenticating — a
|
|
111
|
+
// false-positive that leaves the per-site profile dir empty while
|
|
112
|
+
// the dashboard says "Connected". The `/explore/` link sits in the
|
|
113
|
+
// signed-in chrome only; the login page has no top nav. Selector
|
|
114
|
+
// uses `*=` (substring) to tolerate query-string suffixes Instagram
|
|
115
|
+
// sometimes appends (`/explore/?source=...`) and absolute-URL
|
|
116
|
+
// variants. Validated by site-registry.test.ts's regression guard.
|
|
117
|
+
signedInSelector: "a[href*='/explore/']",
|
|
118
|
+
allowedHostPattern: /^https?:\/\/(www\.)?instagram\.com\//,
|
|
119
|
+
sessionMaxAgeDays: 90,
|
|
120
|
+
},
|
|
121
|
+
linkedin: {
|
|
122
|
+
siteKey: "linkedin",
|
|
123
|
+
displayName: "LinkedIn",
|
|
124
|
+
signInUrl: "https://www.linkedin.com/login",
|
|
125
|
+
homeUrl: "https://www.linkedin.com/",
|
|
126
|
+
profileVerifyUrl: "https://www.linkedin.com/feed/",
|
|
127
|
+
signedInSelector: "[data-test-global-nav-link='me']",
|
|
128
|
+
allowedHostPattern: /^https?:\/\/(www\.)?linkedin\.com\//,
|
|
129
|
+
sessionMaxAgeDays: 60,
|
|
130
|
+
},
|
|
131
|
+
});
|
|
132
|
+
/** Stable site-key naming rule, mirrors the workflow naming rule. */
|
|
133
|
+
const SITE_KEY_REGEX = /^[a-z][a-z0-9_]*$/;
|
|
134
|
+
/**
|
|
135
|
+
* Lookup helper. Returns `null` on miss so callers can render the
|
|
136
|
+
* canonical "unknown_site" / 404 path rather than throwing. Resilient
|
|
137
|
+
* against prototype-pollution attempts (`__proto__`, `constructor`)
|
|
138
|
+
* by gating on `hasOwnProperty`.
|
|
139
|
+
*/
|
|
140
|
+
export function getSite(siteKey) {
|
|
141
|
+
if (!Object.prototype.hasOwnProperty.call(SITE_REGISTRY, siteKey))
|
|
142
|
+
return null;
|
|
143
|
+
return SITE_REGISTRY[siteKey];
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Enumerate every registered site. Powers the dashboard's per-site
|
|
147
|
+
* card grid (`GET /api/browser-automation/sites`) and the registry
|
|
148
|
+
* validator's "every workflow's siteKey resolves" check.
|
|
149
|
+
*/
|
|
150
|
+
export function listSites() {
|
|
151
|
+
return Object.values(SITE_REGISTRY);
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Validate every entry in the registry against the structural
|
|
155
|
+
* invariants. Throws on the first violation so daemon boot fails fast
|
|
156
|
+
* rather than landing a misshapen registry in production. Exported so
|
|
157
|
+
* the peer test can exercise each throw branch with bogus inputs.
|
|
158
|
+
*
|
|
159
|
+
* - `siteKey` matches `SITE_KEY_REGEX` and equals the map key.
|
|
160
|
+
* - `sessionMaxAgeDays` is between 1 and 365.
|
|
161
|
+
* - URL fields parse as HTTPS URLs.
|
|
162
|
+
* - `signedInSelector` is a non-empty string ≤ 200 chars.
|
|
163
|
+
* - `allowedHostPattern` covers `homeUrl` and `signInUrl`.
|
|
164
|
+
*/
|
|
165
|
+
export function validateSiteRegistry(entries) {
|
|
166
|
+
for (const [key, def] of Object.entries(entries)) {
|
|
167
|
+
if (key !== def.siteKey) {
|
|
168
|
+
throw new Error(`site registry: map key "${key}" does not match siteKey "${def.siteKey}"`);
|
|
169
|
+
}
|
|
170
|
+
if (!SITE_KEY_REGEX.test(def.siteKey)) {
|
|
171
|
+
throw new Error(`site registry: siteKey "${def.siteKey}" violates naming convention`);
|
|
172
|
+
}
|
|
173
|
+
if (def.sessionMaxAgeDays < 1 || def.sessionMaxAgeDays > 365) {
|
|
174
|
+
throw new Error(`site registry: sessionMaxAgeDays out of range for "${def.siteKey}"`);
|
|
175
|
+
}
|
|
176
|
+
if (def.displayName.length === 0 || def.displayName.length > 120) {
|
|
177
|
+
throw new Error(`site registry: displayName length out of range for "${def.siteKey}"`);
|
|
178
|
+
}
|
|
179
|
+
if (def.signedInSelector.length === 0 || def.signedInSelector.length > 200) {
|
|
180
|
+
throw new Error(`site registry: signedInSelector length out of range for "${def.siteKey}"`);
|
|
181
|
+
}
|
|
182
|
+
for (const [field, url] of [
|
|
183
|
+
["signInUrl", def.signInUrl],
|
|
184
|
+
["homeUrl", def.homeUrl],
|
|
185
|
+
["profileVerifyUrl", def.profileVerifyUrl],
|
|
186
|
+
]) {
|
|
187
|
+
let parsed;
|
|
188
|
+
try {
|
|
189
|
+
parsed = new URL(url);
|
|
190
|
+
}
|
|
191
|
+
catch {
|
|
192
|
+
throw new Error(`site registry: ${field} for "${def.siteKey}" is not a valid URL`);
|
|
193
|
+
}
|
|
194
|
+
if (parsed.protocol !== "https:") {
|
|
195
|
+
throw new Error(`site registry: ${field} for "${def.siteKey}" must be https://`);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
if (!def.allowedHostPattern.test(def.homeUrl)) {
|
|
199
|
+
throw new Error(`site registry: allowedHostPattern for "${def.siteKey}" does not cover homeUrl`);
|
|
200
|
+
}
|
|
201
|
+
if (!def.allowedHostPattern.test(def.signInUrl)) {
|
|
202
|
+
throw new Error(`site registry: allowedHostPattern for "${def.siteKey}" does not cover signInUrl`);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
// Run the structural validation at module load — a misshapen entry
|
|
207
|
+
// throws here, surfacing as a daemon-boot failure. Matches the workflow
|
|
208
|
+
// registry's `validateWorkflowRegistry` pattern.
|
|
209
|
+
validateSiteRegistry(SITE_REGISTRY);
|
|
210
|
+
/**
|
|
211
|
+
* Returns true when `child.source` is a string-prefix subset of
|
|
212
|
+
* `parent.source`. The subset relation enforced for every workflow's
|
|
213
|
+
* `allowlistRegex` against its site's `allowedHostPattern` (§16.4).
|
|
214
|
+
*
|
|
215
|
+
* Exported as a pure helper so the workflow registry's startup
|
|
216
|
+
* assertion can reuse the exact same comparator the tests cover.
|
|
217
|
+
*
|
|
218
|
+
* The comparison is intentionally simple — pattern equivalence is
|
|
219
|
+
* undecidable in general, but every shipping site's
|
|
220
|
+
* `allowedHostPattern` is anchored to `^` and ends with a `/` that
|
|
221
|
+
* roots the URL space. A workflow's `allowlistRegex` that starts
|
|
222
|
+
* with the site pattern's source as a literal prefix is provably a
|
|
223
|
+
* subset under URL strings the runner is allowed to navigate to.
|
|
224
|
+
*
|
|
225
|
+
* Equal patterns count as a subset (every regex is its own subset).
|
|
226
|
+
*/
|
|
227
|
+
export function isAllowlistSubsetOfSitePattern(child, parent) {
|
|
228
|
+
return child.source === parent.source || child.source.startsWith(parent.source);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Wall-time freshness check: returns true when a connection record
|
|
232
|
+
* for `site` (created at `connectedAtMs`) is still within the site's
|
|
233
|
+
* `sessionMaxAgeDays` floor. The workflow runner's
|
|
234
|
+
* site_not_connected gate (§16.4) and the dashboard's per-site card
|
|
235
|
+
* both call this — kept pure so a single source of truth covers both.
|
|
236
|
+
*/
|
|
237
|
+
export function isSiteConnectionFresh(site, connectedAtMs, nowMs) {
|
|
238
|
+
if (connectedAtMs <= 0 || nowMs < connectedAtMs)
|
|
239
|
+
return false;
|
|
240
|
+
const maxAgeMs = site.sessionMaxAgeDays * 24 * 60 * 60 * 1000;
|
|
241
|
+
return nowMs - connectedAtMs <= maxAgeMs;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Pure projection of (site definition, persistent connection,
|
|
245
|
+
* bootstrap flag, now) into the dashboard-facing summary. Computing
|
|
246
|
+
* this once on the daemon side keeps the dashboard's render logic
|
|
247
|
+
* trivial and lets the workflow runner reuse the same predicate for
|
|
248
|
+
* its `site_not_connected` gate.
|
|
249
|
+
*
|
|
250
|
+
* Precedence:
|
|
251
|
+
* 1. `bootstrap_running` if a UI window is up — even if a stale
|
|
252
|
+
* connection row exists. The dashboard surfaces "Finishing sign-in…"
|
|
253
|
+
* and the user finalizes via the connect flow.
|
|
254
|
+
* 2. `not_connected` when no connection row exists.
|
|
255
|
+
* 3. `needs_reauth` when a row exists but is past
|
|
256
|
+
* `sessionMaxAgeDays`.
|
|
257
|
+
* 4. `connected` otherwise.
|
|
258
|
+
*/
|
|
259
|
+
export function resolveSiteSurface(input) {
|
|
260
|
+
if (input.bootstrapRunning) {
|
|
261
|
+
return {
|
|
262
|
+
state: "bootstrap_running",
|
|
263
|
+
accountLabel: input.connection?.accountLabel ?? null,
|
|
264
|
+
connectedAt: input.connection?.connectedAt ?? null,
|
|
265
|
+
lastWorkflowAt: input.connection?.lastWorkflowAt ?? null,
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
if (!input.connection) {
|
|
269
|
+
return {
|
|
270
|
+
state: "not_connected",
|
|
271
|
+
accountLabel: null,
|
|
272
|
+
connectedAt: null,
|
|
273
|
+
lastWorkflowAt: null,
|
|
274
|
+
};
|
|
275
|
+
}
|
|
276
|
+
if (!isSiteConnectionFresh(input.site, input.connection.connectedAt, input.nowMs)) {
|
|
277
|
+
return {
|
|
278
|
+
state: "needs_reauth",
|
|
279
|
+
accountLabel: input.connection.accountLabel,
|
|
280
|
+
connectedAt: input.connection.connectedAt,
|
|
281
|
+
lastWorkflowAt: input.connection.lastWorkflowAt,
|
|
282
|
+
};
|
|
283
|
+
}
|
|
284
|
+
return {
|
|
285
|
+
state: "connected",
|
|
286
|
+
accountLabel: input.connection.accountLabel,
|
|
287
|
+
connectedAt: input.connection.connectedAt,
|
|
288
|
+
lastWorkflowAt: input.connection.lastWorkflowAt,
|
|
289
|
+
};
|
|
290
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure path helpers for the automation trace store.
|
|
3
|
+
*
|
|
4
|
+
* BROWSER_TASK_REDESIGN_PLAN.md §6.4 — the disk layout stayed the same
|
|
5
|
+
* (one subdirectory per task id under `${PA_DATA_DIR}/automation-traces/`)
|
|
6
|
+
* but the legacy `/api/browser-automation/traces/...` route was retired in
|
|
7
|
+
* Phase 6 alongside the workflow-runner. Screenshot URLs are now served
|
|
8
|
+
* from `/api/browser-task/:id/screenshots/:file`, defined in
|
|
9
|
+
* `api/routes/browser-task.ts`. The file-system side lives in
|
|
10
|
+
* `trace-store.ts` (I/O); this module owns the path arithmetic shared
|
|
11
|
+
* by the browser-task runner, the screenshot route's static-file
|
|
12
|
+
* handler, and the daily cleanup cron.
|
|
13
|
+
*
|
|
14
|
+
* The two purposes of pulling these helpers out as pure functions:
|
|
15
|
+
*
|
|
16
|
+
* 1. **Directory-traversal defence.** The API route validates that
|
|
17
|
+
* the requested `<workflowId>/<file>` resolves inside the trace
|
|
18
|
+
* directory before opening the file. `resolveTraceFilePath`
|
|
19
|
+
* returns null on any pattern that would escape (`..`, absolute
|
|
20
|
+
* override, NUL byte, separator characters in the file segment).
|
|
21
|
+
*
|
|
22
|
+
* 2. **Coverage gate.** The schema + path layer is the safety-
|
|
23
|
+
* critical piece — wrong path validation here would let an agent
|
|
24
|
+
* read arbitrary disk. Putting it in a pure module lets the test
|
|
25
|
+
* suite enforce 100% coverage on exactly the surface that matters.
|
|
26
|
+
*/
|
|
27
|
+
/** Subdirectory of `PA_DATA_DIR` where all trace assets live. */
|
|
28
|
+
export declare const AUTOMATION_TRACES_DIRNAME = "automation-traces";
|
|
29
|
+
/** UUID v4 / non-canonical format permissive — the runner generates via
|
|
30
|
+
* `crypto.randomUUID()` which returns the canonical hyphenated form. */
|
|
31
|
+
export declare const WORKFLOW_ID_PATTERN: RegExp;
|
|
32
|
+
/** Allowed filename pattern for a single asset under
|
|
33
|
+
* `automation-traces/<workflowId>/`. Lower-case letters, digits,
|
|
34
|
+
* hyphen, underscore, dot — no `/`, no `\`, no NUL, no leading dot
|
|
35
|
+
* (so `.env` or `..` cannot appear here). */
|
|
36
|
+
export declare const TRACE_FILE_PATTERN: RegExp;
|
|
37
|
+
export interface TracePathInputs {
|
|
38
|
+
paDataDir: string;
|
|
39
|
+
workflowId: string;
|
|
40
|
+
}
|
|
41
|
+
/** Build the per-workflow directory: `<PA_DATA_DIR>/automation-traces/<wfid>`. */
|
|
42
|
+
export declare function workflowTraceDir(input: TracePathInputs): string;
|
|
43
|
+
/** Build the root trace directory: `<PA_DATA_DIR>/automation-traces`. */
|
|
44
|
+
export declare function tracesRootDir(paDataDir: string): string;
|
|
45
|
+
/**
|
|
46
|
+
* Resolve an API-served trace path (e.g.
|
|
47
|
+
* `/api/browser-task/<taskId>/screenshots/<file>`) to an on-disk
|
|
48
|
+
* absolute path under `paDataDir`, OR return null when the inputs do
|
|
49
|
+
* not pass validation.
|
|
50
|
+
*
|
|
51
|
+
* Null is returned for any of these failure modes:
|
|
52
|
+
* - `workflowId` does not match `WORKFLOW_ID_PATTERN` (defence against
|
|
53
|
+
* `../etc` style escapes inserted before the legitimate id)
|
|
54
|
+
* - `fileName` does not match `TRACE_FILE_PATTERN` (rejects empty,
|
|
55
|
+
* too-long, embedded-separator, NUL, dotfile, unknown-extension
|
|
56
|
+
* forms)
|
|
57
|
+
* - normalised join escapes `<PA_DATA_DIR>/<AUTOMATION_TRACES_DIRNAME>`
|
|
58
|
+
*
|
|
59
|
+
* The third check is belt-and-braces — the regex validation already
|
|
60
|
+
* forbids `/` and `\\`, but a normalize() round-trip catches anything
|
|
61
|
+
* we missed (e.g., an unrecognised Unicode path-separator equivalent).
|
|
62
|
+
*/
|
|
63
|
+
export declare function resolveTraceFilePath(paDataDir: string, workflowId: string, fileName: string): string | null;
|
|
64
|
+
/** Build the API-served path for a captured screenshot.
|
|
65
|
+
*
|
|
66
|
+
* BROWSER_TASK_REDESIGN_PLAN.md §6.4 — the URL is served by
|
|
67
|
+
* `/api/browser-task/:id/screenshots/:file` (see
|
|
68
|
+
* `api/routes/browser-task.ts`). `taskId` is the `browser_task.id`
|
|
69
|
+
* (uuid v4); `fileName` must pass `TRACE_FILE_PATTERN`.
|
|
70
|
+
*
|
|
71
|
+
* Previously named for the now-removed `/api/browser-automation/traces/...`
|
|
72
|
+
* route. Kept as `apiPathForTraceFile` so its existing call sites in
|
|
73
|
+
* `browser-task-tools/server.ts` continue to compile; the parameter
|
|
74
|
+
* name on disk + in callers (`workflowId`) is a historical artefact
|
|
75
|
+
* the browser-task runtime carries through unchanged. */
|
|
76
|
+
export declare function apiPathForTraceFile(workflowId: string, fileName: string): string;
|
|
77
|
+
/** Per-asset filename built from a label + a tag (timestamp or seq).
|
|
78
|
+
* Workflow code shouldn't construct filenames by hand — calling this
|
|
79
|
+
* ensures the result passes `TRACE_FILE_PATTERN`. */
|
|
80
|
+
export declare function makeScreenshotFileName(label: string, tagMs: number): string;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure path helpers for the automation trace store.
|
|
3
|
+
*
|
|
4
|
+
* BROWSER_TASK_REDESIGN_PLAN.md §6.4 — the disk layout stayed the same
|
|
5
|
+
* (one subdirectory per task id under `${PA_DATA_DIR}/automation-traces/`)
|
|
6
|
+
* but the legacy `/api/browser-automation/traces/...` route was retired in
|
|
7
|
+
* Phase 6 alongside the workflow-runner. Screenshot URLs are now served
|
|
8
|
+
* from `/api/browser-task/:id/screenshots/:file`, defined in
|
|
9
|
+
* `api/routes/browser-task.ts`. The file-system side lives in
|
|
10
|
+
* `trace-store.ts` (I/O); this module owns the path arithmetic shared
|
|
11
|
+
* by the browser-task runner, the screenshot route's static-file
|
|
12
|
+
* handler, and the daily cleanup cron.
|
|
13
|
+
*
|
|
14
|
+
* The two purposes of pulling these helpers out as pure functions:
|
|
15
|
+
*
|
|
16
|
+
* 1. **Directory-traversal defence.** The API route validates that
|
|
17
|
+
* the requested `<workflowId>/<file>` resolves inside the trace
|
|
18
|
+
* directory before opening the file. `resolveTraceFilePath`
|
|
19
|
+
* returns null on any pattern that would escape (`..`, absolute
|
|
20
|
+
* override, NUL byte, separator characters in the file segment).
|
|
21
|
+
*
|
|
22
|
+
* 2. **Coverage gate.** The schema + path layer is the safety-
|
|
23
|
+
* critical piece — wrong path validation here would let an agent
|
|
24
|
+
* read arbitrary disk. Putting it in a pure module lets the test
|
|
25
|
+
* suite enforce 100% coverage on exactly the surface that matters.
|
|
26
|
+
*/
|
|
27
|
+
import { isAbsolute, join, normalize, sep } from "node:path";
|
|
28
|
+
/** Subdirectory of `PA_DATA_DIR` where all trace assets live. */
|
|
29
|
+
export const AUTOMATION_TRACES_DIRNAME = "automation-traces";
|
|
30
|
+
/** UUID v4 / non-canonical format permissive — the runner generates via
|
|
31
|
+
* `crypto.randomUUID()` which returns the canonical hyphenated form. */
|
|
32
|
+
export const WORKFLOW_ID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;
|
|
33
|
+
/** Allowed filename pattern for a single asset under
|
|
34
|
+
* `automation-traces/<workflowId>/`. Lower-case letters, digits,
|
|
35
|
+
* hyphen, underscore, dot — no `/`, no `\`, no NUL, no leading dot
|
|
36
|
+
* (so `.env` or `..` cannot appear here). */
|
|
37
|
+
export const TRACE_FILE_PATTERN = /^[a-z0-9][a-z0-9._-]{0,127}\.(png|zip|json|jpg|jpeg|webp)$/i;
|
|
38
|
+
/** Build the per-workflow directory: `<PA_DATA_DIR>/automation-traces/<wfid>`. */
|
|
39
|
+
export function workflowTraceDir(input) {
|
|
40
|
+
return join(input.paDataDir, AUTOMATION_TRACES_DIRNAME, input.workflowId);
|
|
41
|
+
}
|
|
42
|
+
/** Build the root trace directory: `<PA_DATA_DIR>/automation-traces`. */
|
|
43
|
+
export function tracesRootDir(paDataDir) {
|
|
44
|
+
return join(paDataDir, AUTOMATION_TRACES_DIRNAME);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Resolve an API-served trace path (e.g.
|
|
48
|
+
* `/api/browser-task/<taskId>/screenshots/<file>`) to an on-disk
|
|
49
|
+
* absolute path under `paDataDir`, OR return null when the inputs do
|
|
50
|
+
* not pass validation.
|
|
51
|
+
*
|
|
52
|
+
* Null is returned for any of these failure modes:
|
|
53
|
+
* - `workflowId` does not match `WORKFLOW_ID_PATTERN` (defence against
|
|
54
|
+
* `../etc` style escapes inserted before the legitimate id)
|
|
55
|
+
* - `fileName` does not match `TRACE_FILE_PATTERN` (rejects empty,
|
|
56
|
+
* too-long, embedded-separator, NUL, dotfile, unknown-extension
|
|
57
|
+
* forms)
|
|
58
|
+
* - normalised join escapes `<PA_DATA_DIR>/<AUTOMATION_TRACES_DIRNAME>`
|
|
59
|
+
*
|
|
60
|
+
* The third check is belt-and-braces — the regex validation already
|
|
61
|
+
* forbids `/` and `\\`, but a normalize() round-trip catches anything
|
|
62
|
+
* we missed (e.g., an unrecognised Unicode path-separator equivalent).
|
|
63
|
+
*/
|
|
64
|
+
export function resolveTraceFilePath(paDataDir, workflowId, fileName) {
|
|
65
|
+
if (!WORKFLOW_ID_PATTERN.test(workflowId))
|
|
66
|
+
return null;
|
|
67
|
+
if (!TRACE_FILE_PATTERN.test(fileName))
|
|
68
|
+
return null;
|
|
69
|
+
/* c8 ignore start -- defensive: TRACE_FILE_PATTERN's leading [a-z0-9] anchor rejects any filename that would survive `isAbsolute()` or carry a NUL byte, but both checks stay as a structural assert in case the regex is ever loosened */
|
|
70
|
+
if (fileName.includes("\0"))
|
|
71
|
+
return null;
|
|
72
|
+
if (isAbsolute(fileName))
|
|
73
|
+
return null;
|
|
74
|
+
/* c8 ignore stop */
|
|
75
|
+
const baseDir = tracesRootDir(paDataDir);
|
|
76
|
+
const candidate = normalize(join(baseDir, workflowId, fileName));
|
|
77
|
+
// Either equal to baseDir + sep or starts with baseDir + sep. We use
|
|
78
|
+
// `sep` rather than `/` so the check works on Windows where the
|
|
79
|
+
// normaliser uses `\\`. The `endsWith(sep)` branch on the prefix
|
|
80
|
+
// computation handles operator-supplied PA_DATA_DIRs that carry a
|
|
81
|
+
// trailing separator; in practice the daemon strips it before
|
|
82
|
+
// boot, so the false branch is the hot path. The `startsWith` guard
|
|
83
|
+
// is defensive — every other path validation above already prevents
|
|
84
|
+
// an escape, but the prefix check is the structural lock.
|
|
85
|
+
const prefix =
|
|
86
|
+
/* c8 ignore next -- defensive: PA_DATA_DIR is canonicalised at boot */
|
|
87
|
+
baseDir.endsWith(sep) ? baseDir : `${baseDir}${sep}`;
|
|
88
|
+
/* c8 ignore next -- defensive: regex pre-filter forbids the segment characters that could make `candidate` escape `baseDir` */
|
|
89
|
+
if (!candidate.startsWith(prefix))
|
|
90
|
+
return null;
|
|
91
|
+
return candidate;
|
|
92
|
+
}
|
|
93
|
+
/** Build the API-served path for a captured screenshot.
|
|
94
|
+
*
|
|
95
|
+
* BROWSER_TASK_REDESIGN_PLAN.md §6.4 — the URL is served by
|
|
96
|
+
* `/api/browser-task/:id/screenshots/:file` (see
|
|
97
|
+
* `api/routes/browser-task.ts`). `taskId` is the `browser_task.id`
|
|
98
|
+
* (uuid v4); `fileName` must pass `TRACE_FILE_PATTERN`.
|
|
99
|
+
*
|
|
100
|
+
* Previously named for the now-removed `/api/browser-automation/traces/...`
|
|
101
|
+
* route. Kept as `apiPathForTraceFile` so its existing call sites in
|
|
102
|
+
* `browser-task-tools/server.ts` continue to compile; the parameter
|
|
103
|
+
* name on disk + in callers (`workflowId`) is a historical artefact
|
|
104
|
+
* the browser-task runtime carries through unchanged. */
|
|
105
|
+
export function apiPathForTraceFile(workflowId, fileName) {
|
|
106
|
+
return `/api/browser-task/${workflowId}/screenshots/${fileName}`;
|
|
107
|
+
}
|
|
108
|
+
/** Per-asset filename built from a label + a tag (timestamp or seq).
|
|
109
|
+
* Workflow code shouldn't construct filenames by hand — calling this
|
|
110
|
+
* ensures the result passes `TRACE_FILE_PATTERN`. */
|
|
111
|
+
export function makeScreenshotFileName(label, tagMs) {
|
|
112
|
+
const safeLabel = label
|
|
113
|
+
.toLowerCase()
|
|
114
|
+
.replace(/[^a-z0-9-]/g, "-")
|
|
115
|
+
.replace(/^-+|-+$/g, "")
|
|
116
|
+
.slice(0, 32);
|
|
117
|
+
const stable = safeLabel.length > 0 ? safeLabel : "screenshot";
|
|
118
|
+
return `${tagMs}-${stable}.png`;
|
|
119
|
+
}
|