@aitne/daemon 0.1.3 → 0.1.6
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/notification-manager.d.ts +12 -0
- package/dist/adapters/notification-manager.d.ts.map +1 -1
- package/dist/adapters/notification-manager.js +39 -1
- package/dist/adapters/notification-manager.js.map +1 -1
- package/dist/adapters/whatsapp-adapter.d.ts.map +1 -1
- package/dist/adapters/whatsapp-adapter.js +0 -1
- package/dist/adapters/whatsapp-adapter.js.map +1 -1
- package/dist/api/integration-route-gate.d.ts +15 -11
- package/dist/api/integration-route-gate.d.ts.map +1 -1
- package/dist/api/integration-route-gate.js +60 -23
- package/dist/api/integration-route-gate.js.map +1 -1
- package/dist/api/json-body.d.ts +22 -7
- package/dist/api/json-body.d.ts.map +1 -1
- package/dist/api/json-body.js +27 -8
- package/dist/api/json-body.js.map +1 -1
- package/dist/api/routes/agent.d.ts.map +1 -1
- package/dist/api/routes/agent.js +25 -0
- package/dist/api/routes/agent.js.map +1 -1
- package/dist/api/routes/backends.d.ts.map +1 -1
- package/dist/api/routes/backends.js +96 -1
- package/dist/api/routes/backends.js.map +1 -1
- package/dist/api/routes/books.js +1 -1
- package/dist/api/routes/books.js.map +1 -1
- package/dist/api/routes/commands.d.ts.map +1 -1
- package/dist/api/routes/commands.js +16 -13
- package/dist/api/routes/commands.js.map +1 -1
- package/dist/api/routes/context.d.ts.map +1 -1
- package/dist/api/routes/context.js +26 -3
- package/dist/api/routes/context.js.map +1 -1
- package/dist/api/routes/dashboard.d.ts.map +1 -1
- package/dist/api/routes/dashboard.js +103 -5
- package/dist/api/routes/dashboard.js.map +1 -1
- package/dist/api/routes/fs.d.ts +23 -0
- package/dist/api/routes/fs.d.ts.map +1 -0
- package/dist/api/routes/fs.js +156 -0
- package/dist/api/routes/fs.js.map +1 -0
- package/dist/api/routes/fs.logic.d.ts +62 -0
- package/dist/api/routes/fs.logic.d.ts.map +1 -0
- package/dist/api/routes/fs.logic.js +137 -0
- package/dist/api/routes/fs.logic.js.map +1 -0
- package/dist/api/routes/github.d.ts.map +1 -1
- package/dist/api/routes/github.js +38 -5
- package/dist/api/routes/github.js.map +1 -1
- package/dist/api/routes/health.d.ts.map +1 -1
- package/dist/api/routes/health.js +4 -2
- package/dist/api/routes/health.js.map +1 -1
- package/dist/api/routes/integrations.d.ts +35 -6
- package/dist/api/routes/integrations.d.ts.map +1 -1
- package/dist/api/routes/integrations.js +192 -15
- package/dist/api/routes/integrations.js.map +1 -1
- package/dist/api/routes/mail.d.ts.map +1 -1
- package/dist/api/routes/mail.js +112 -46
- package/dist/api/routes/mail.js.map +1 -1
- package/dist/api/routes/metrics.d.ts +1 -0
- package/dist/api/routes/metrics.d.ts.map +1 -1
- package/dist/api/routes/metrics.js +24 -0
- package/dist/api/routes/metrics.js.map +1 -1
- package/dist/api/routes/observations.d.ts.map +1 -1
- package/dist/api/routes/observations.js +696 -30
- package/dist/api/routes/observations.js.map +1 -1
- package/dist/api/routes/setup-migrate.d.ts +9 -1
- package/dist/api/routes/setup-migrate.d.ts.map +1 -1
- package/dist/api/routes/setup-migrate.js +4 -2
- package/dist/api/routes/setup-migrate.js.map +1 -1
- package/dist/api/routes/skills.d.ts +9 -1
- package/dist/api/routes/skills.d.ts.map +1 -1
- package/dist/api/routes/skills.js +77 -17
- package/dist/api/routes/skills.js.map +1 -1
- package/dist/api/routes/voice.d.ts.map +1 -1
- package/dist/api/routes/voice.js +62 -4
- package/dist/api/routes/voice.js.map +1 -1
- package/dist/api/routes/wiki.d.ts +4 -0
- package/dist/api/routes/wiki.d.ts.map +1 -0
- package/dist/api/routes/wiki.js +1075 -0
- package/dist/api/routes/wiki.js.map +1 -0
- package/dist/api/server.d.ts +13 -0
- package/dist/api/server.d.ts.map +1 -1
- package/dist/api/server.js +27 -1
- package/dist/api/server.js.map +1 -1
- package/dist/bootstrap/adapters.d.ts +109 -0
- package/dist/bootstrap/adapters.d.ts.map +1 -0
- package/dist/bootstrap/adapters.js +237 -0
- package/dist/bootstrap/adapters.js.map +1 -0
- package/dist/bootstrap/catchup.d.ts +23 -0
- package/dist/bootstrap/catchup.d.ts.map +1 -0
- package/dist/bootstrap/catchup.js +124 -0
- package/dist/bootstrap/catchup.js.map +1 -0
- package/dist/bootstrap/schedule-helpers.d.ts +18 -0
- package/dist/bootstrap/schedule-helpers.d.ts.map +1 -0
- package/dist/bootstrap/schedule-helpers.js +96 -0
- package/dist/bootstrap/schedule-helpers.js.map +1 -0
- package/dist/bootstrap/services.d.ts +60 -0
- package/dist/bootstrap/services.d.ts.map +1 -0
- package/dist/bootstrap/services.js +209 -0
- package/dist/bootstrap/services.js.map +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +26 -0
- package/dist/config.js.map +1 -1
- package/dist/core/agent-core.d.ts +25 -0
- package/dist/core/agent-core.d.ts.map +1 -1
- package/dist/core/agent-core.js.map +1 -1
- package/dist/core/backends/backend-router.d.ts +28 -1
- package/dist/core/backends/backend-router.d.ts.map +1 -1
- package/dist/core/backends/backend-router.js +58 -4
- package/dist/core/backends/backend-router.js.map +1 -1
- package/dist/core/backends/claude-auth.d.ts +70 -0
- package/dist/core/backends/claude-auth.d.ts.map +1 -0
- package/dist/core/backends/claude-auth.js +198 -0
- package/dist/core/backends/claude-auth.js.map +1 -0
- package/dist/core/backends/claude-code-core.d.ts +47 -119
- package/dist/core/backends/claude-code-core.d.ts.map +1 -1
- package/dist/core/backends/claude-code-core.js +166 -1561
- package/dist/core/backends/claude-code-core.js.map +1 -1
- package/dist/core/backends/claude-delegated.d.ts +86 -0
- package/dist/core/backends/claude-delegated.d.ts.map +1 -0
- package/dist/core/backends/claude-delegated.js +801 -0
- package/dist/core/backends/claude-delegated.js.map +1 -0
- package/dist/core/backends/claude-errors.d.ts +39 -0
- package/dist/core/backends/claude-errors.d.ts.map +1 -0
- package/dist/core/backends/claude-errors.js +71 -0
- package/dist/core/backends/claude-errors.js.map +1 -0
- package/dist/core/backends/claude-probe.d.ts +103 -0
- package/dist/core/backends/claude-probe.d.ts.map +1 -0
- package/dist/core/backends/claude-probe.js +336 -0
- package/dist/core/backends/claude-probe.js.map +1 -0
- package/dist/core/backends/claude-tool-collection.d.ts +135 -0
- package/dist/core/backends/claude-tool-collection.d.ts.map +1 -0
- package/dist/core/backends/claude-tool-collection.js +1093 -0
- package/dist/core/backends/claude-tool-collection.js.map +1 -0
- package/dist/core/backends/codex-core.d.ts.map +1 -1
- package/dist/core/backends/codex-core.js +36 -0
- package/dist/core/backends/codex-core.js.map +1 -1
- package/dist/core/backends/gemini-cli-core.d.ts +45 -5
- package/dist/core/backends/gemini-cli-core.d.ts.map +1 -1
- package/dist/core/backends/gemini-cli-core.js +146 -36
- package/dist/core/backends/gemini-cli-core.js.map +1 -1
- package/dist/core/backends/plan-presets.d.ts +3 -1
- package/dist/core/backends/plan-presets.d.ts.map +1 -1
- package/dist/core/backends/plan-presets.js +42 -2
- package/dist/core/backends/plan-presets.js.map +1 -1
- package/dist/core/backends/prompt-utils.d.ts +1 -0
- package/dist/core/backends/prompt-utils.d.ts.map +1 -1
- package/dist/core/backends/prompt-utils.js +60 -3
- package/dist/core/backends/prompt-utils.js.map +1 -1
- package/dist/core/bang-commands/commands-help.d.ts +5 -0
- package/dist/core/bang-commands/commands-help.d.ts.map +1 -0
- package/dist/core/bang-commands/commands-help.js +69 -0
- package/dist/core/bang-commands/commands-help.js.map +1 -0
- package/dist/core/bang-commands/commands-wiki.d.ts +75 -0
- package/dist/core/bang-commands/commands-wiki.d.ts.map +1 -0
- package/dist/core/bang-commands/commands-wiki.js +574 -0
- package/dist/core/bang-commands/commands-wiki.js.map +1 -0
- package/dist/core/bang-commands/index.d.ts +4 -2
- package/dist/core/bang-commands/index.d.ts.map +1 -1
- package/dist/core/bang-commands/index.js +15 -1
- package/dist/core/bang-commands/index.js.map +1 -1
- package/dist/core/bang-commands/registry.d.ts +47 -4
- package/dist/core/bang-commands/registry.d.ts.map +1 -1
- package/dist/core/bang-commands/registry.js +85 -15
- package/dist/core/bang-commands/registry.js.map +1 -1
- package/dist/core/context-builder.d.ts +53 -12
- package/dist/core/context-builder.d.ts.map +1 -1
- package/dist/core/context-builder.js +240 -92
- package/dist/core/context-builder.js.map +1 -1
- package/dist/core/daemon-api-cli.d.ts.map +1 -1
- package/dist/core/daemon-api-cli.js +50 -2
- package/dist/core/daemon-api-cli.js.map +1 -1
- package/dist/core/dispatcher-date-utils.d.ts +49 -0
- package/dist/core/dispatcher-date-utils.d.ts.map +1 -0
- package/dist/core/dispatcher-date-utils.js +132 -0
- package/dist/core/dispatcher-date-utils.js.map +1 -0
- package/dist/core/dispatcher-error-handling.d.ts +159 -0
- package/dist/core/dispatcher-error-handling.d.ts.map +1 -0
- package/dist/core/dispatcher-error-handling.js +393 -0
- package/dist/core/dispatcher-error-handling.js.map +1 -0
- package/dist/core/dispatcher-hourly-check.d.ts +150 -0
- package/dist/core/dispatcher-hourly-check.d.ts.map +1 -0
- package/dist/core/dispatcher-hourly-check.js +665 -0
- package/dist/core/dispatcher-hourly-check.js.map +1 -0
- package/dist/core/dispatcher-message-handler.d.ts +170 -0
- package/dist/core/dispatcher-message-handler.d.ts.map +1 -0
- package/dist/core/dispatcher-message-handler.js +1064 -0
- package/dist/core/dispatcher-message-handler.js.map +1 -0
- package/dist/core/dispatcher-morning-routine.d.ts +169 -0
- package/dist/core/dispatcher-morning-routine.d.ts.map +1 -0
- package/dist/core/dispatcher-morning-routine.js +449 -0
- package/dist/core/dispatcher-morning-routine.js.map +1 -0
- package/dist/core/dispatcher-prompt.d.ts +107 -0
- package/dist/core/dispatcher-prompt.d.ts.map +1 -0
- package/dist/core/dispatcher-prompt.js +227 -0
- package/dist/core/dispatcher-prompt.js.map +1 -0
- package/dist/core/dispatcher-repository-helpers.d.ts +39 -0
- package/dist/core/dispatcher-repository-helpers.d.ts.map +1 -0
- package/dist/core/dispatcher-repository-helpers.js +86 -0
- package/dist/core/dispatcher-repository-helpers.js.map +1 -0
- package/dist/core/dispatcher-result-processor.d.ts +168 -0
- package/dist/core/dispatcher-result-processor.d.ts.map +1 -0
- package/dist/core/dispatcher-result-processor.js +533 -0
- package/dist/core/dispatcher-result-processor.js.map +1 -0
- package/dist/core/dispatcher-scheduled-tasks.d.ts +406 -0
- package/dist/core/dispatcher-scheduled-tasks.d.ts.map +1 -0
- package/dist/core/dispatcher-scheduled-tasks.js +1032 -0
- package/dist/core/dispatcher-scheduled-tasks.js.map +1 -0
- package/dist/core/dispatcher-types.d.ts +411 -0
- package/dist/core/dispatcher-types.d.ts.map +1 -0
- package/dist/core/dispatcher-types.js +106 -0
- package/dist/core/dispatcher-types.js.map +1 -0
- package/dist/core/dispatcher.d.ts +122 -610
- package/dist/core/dispatcher.d.ts.map +1 -1
- package/dist/core/dispatcher.js +365 -3521
- package/dist/core/dispatcher.js.map +1 -1
- package/dist/core/integration-health.d.ts +18 -10
- package/dist/core/integration-health.d.ts.map +1 -1
- package/dist/core/integration-health.js +31 -1
- package/dist/core/integration-health.js.map +1 -1
- package/dist/core/integration-lifecycle.d.ts +65 -0
- package/dist/core/integration-lifecycle.d.ts.map +1 -1
- package/dist/core/integration-lifecycle.js +163 -14
- package/dist/core/integration-lifecycle.js.map +1 -1
- package/dist/core/integration-main-backend.d.ts +40 -0
- package/dist/core/integration-main-backend.d.ts.map +1 -1
- package/dist/core/integration-main-backend.js +89 -2
- package/dist/core/integration-main-backend.js.map +1 -1
- package/dist/core/management-md.d.ts +51 -17
- package/dist/core/management-md.d.ts.map +1 -1
- package/dist/core/management-md.js +233 -56
- package/dist/core/management-md.js.map +1 -1
- package/dist/core/metrics.d.ts +127 -0
- package/dist/core/metrics.d.ts.map +1 -1
- package/dist/core/metrics.js +256 -1
- package/dist/core/metrics.js.map +1 -1
- package/dist/core/output-language-policy.d.ts +74 -0
- package/dist/core/output-language-policy.d.ts.map +1 -0
- package/dist/core/output-language-policy.js +194 -0
- package/dist/core/output-language-policy.js.map +1 -0
- package/dist/core/prompts.d.ts +3 -1
- package/dist/core/prompts.d.ts.map +1 -1
- package/dist/core/prompts.js +161 -3
- package/dist/core/prompts.js.map +1 -1
- package/dist/core/repository-management-docs.d.ts +24 -0
- package/dist/core/repository-management-docs.d.ts.map +1 -1
- package/dist/core/repository-management-docs.js +210 -26
- package/dist/core/repository-management-docs.js.map +1 -1
- package/dist/core/roadmap-validate.js +13 -1
- package/dist/core/roadmap-validate.js.map +1 -1
- package/dist/core/routine-acquisition-plan.d.ts +182 -0
- package/dist/core/routine-acquisition-plan.d.ts.map +1 -0
- package/dist/core/routine-acquisition-plan.js +367 -0
- package/dist/core/routine-acquisition-plan.js.map +1 -0
- package/dist/core/routine-fetch-window-retry.d.ts +109 -0
- package/dist/core/routine-fetch-window-retry.d.ts.map +1 -0
- package/dist/core/routine-fetch-window-retry.js +210 -0
- package/dist/core/routine-fetch-window-retry.js.map +1 -0
- package/dist/core/routine-fetch-window-runner.d.ts +427 -0
- package/dist/core/routine-fetch-window-runner.d.ts.map +1 -0
- package/dist/core/routine-fetch-window-runner.js +1591 -0
- package/dist/core/routine-fetch-window-runner.js.map +1 -0
- package/dist/core/routine-windows.d.ts +171 -0
- package/dist/core/routine-windows.d.ts.map +1 -0
- package/dist/core/routine-windows.js +377 -0
- package/dist/core/routine-windows.js.map +1 -0
- package/dist/core/scheduler.d.ts +50 -2
- package/dist/core/scheduler.d.ts.map +1 -1
- package/dist/core/scheduler.js +88 -7
- package/dist/core/scheduler.js.map +1 -1
- package/dist/core/skill-curation/declarations.d.ts.map +1 -1
- package/dist/core/skill-curation/declarations.js +11 -12
- package/dist/core/skill-curation/declarations.js.map +1 -1
- package/dist/core/skill-source-paths.d.ts +14 -0
- package/dist/core/skill-source-paths.d.ts.map +1 -0
- package/dist/core/skill-source-paths.js +82 -0
- package/dist/core/skill-source-paths.js.map +1 -0
- package/dist/core/skills-compiler.d.ts +29 -0
- package/dist/core/skills-compiler.d.ts.map +1 -1
- package/dist/core/skills-compiler.js +166 -30
- package/dist/core/skills-compiler.js.map +1 -1
- package/dist/core/skills-manifest.d.ts.map +1 -1
- package/dist/core/skills-manifest.js +72 -0
- package/dist/core/skills-manifest.js.map +1 -1
- package/dist/core/system-reset.d.ts +25 -0
- package/dist/core/system-reset.d.ts.map +1 -1
- package/dist/core/system-reset.js +72 -2
- package/dist/core/system-reset.js.map +1 -1
- package/dist/core/wiki/approval-queue.d.ts +31 -0
- package/dist/core/wiki/approval-queue.d.ts.map +1 -0
- package/dist/core/wiki/approval-queue.js +44 -0
- package/dist/core/wiki/approval-queue.js.map +1 -0
- package/dist/core/wiki/bridge.d.ts +74 -0
- package/dist/core/wiki/bridge.d.ts.map +1 -0
- package/dist/core/wiki/bridge.js +405 -0
- package/dist/core/wiki/bridge.js.map +1 -0
- package/dist/core/wiki/compile-lock.d.ts +42 -0
- package/dist/core/wiki/compile-lock.d.ts.map +1 -0
- package/dist/core/wiki/compile-lock.js +55 -0
- package/dist/core/wiki/compile-lock.js.map +1 -0
- package/dist/core/wiki/compile-preview.d.ts +8 -0
- package/dist/core/wiki/compile-preview.d.ts.map +1 -0
- package/dist/core/wiki/compile-preview.js +200 -0
- package/dist/core/wiki/compile-preview.js.map +1 -0
- package/dist/core/wiki/cost-estimate.d.ts +30 -0
- package/dist/core/wiki/cost-estimate.d.ts.map +1 -0
- package/dist/core/wiki/cost-estimate.js +243 -0
- package/dist/core/wiki/cost-estimate.js.map +1 -0
- package/dist/core/wiki/dispatcher.d.ts +48 -0
- package/dist/core/wiki/dispatcher.d.ts.map +1 -0
- package/dist/core/wiki/dispatcher.js +92 -0
- package/dist/core/wiki/dispatcher.js.map +1 -0
- package/dist/core/wiki/git-precompile.d.ts +86 -0
- package/dist/core/wiki/git-precompile.d.ts.map +1 -0
- package/dist/core/wiki/git-precompile.js +96 -0
- package/dist/core/wiki/git-precompile.js.map +1 -0
- package/dist/core/wiki/import-migrate.d.ts +38 -0
- package/dist/core/wiki/import-migrate.d.ts.map +1 -0
- package/dist/core/wiki/import-migrate.js +310 -0
- package/dist/core/wiki/import-migrate.js.map +1 -0
- package/dist/core/wiki/import-probe.d.ts +76 -0
- package/dist/core/wiki/import-probe.d.ts.map +1 -0
- package/dist/core/wiki/import-probe.js +245 -0
- package/dist/core/wiki/import-probe.js.map +1 -0
- package/dist/core/wiki/index-cache.d.ts +39 -0
- package/dist/core/wiki/index-cache.d.ts.map +1 -0
- package/dist/core/wiki/index-cache.js +152 -0
- package/dist/core/wiki/index-cache.js.map +1 -0
- package/dist/core/wiki/multi-url-dispatch.d.ts +52 -0
- package/dist/core/wiki/multi-url-dispatch.d.ts.map +1 -0
- package/dist/core/wiki/multi-url-dispatch.js +72 -0
- package/dist/core/wiki/multi-url-dispatch.js.map +1 -0
- package/dist/core/wiki/wiki-fts.d.ts +75 -0
- package/dist/core/wiki/wiki-fts.d.ts.map +1 -0
- package/dist/core/wiki/wiki-fts.js +265 -0
- package/dist/core/wiki/wiki-fts.js.map +1 -0
- package/dist/core/wiki/workspaces.d.ts +101 -0
- package/dist/core/wiki/workspaces.d.ts.map +1 -0
- package/dist/core/wiki/workspaces.js +352 -0
- package/dist/core/wiki/workspaces.js.map +1 -0
- package/dist/core/wiki/write-strategy.d.ts +70 -0
- package/dist/core/wiki/write-strategy.d.ts.map +1 -0
- package/dist/core/wiki/write-strategy.js +112 -0
- package/dist/core/wiki/write-strategy.js.map +1 -0
- package/dist/core/workdir.d.ts +8 -1
- package/dist/core/workdir.d.ts.map +1 -1
- package/dist/core/workdir.js +4 -1
- package/dist/core/workdir.js.map +1 -1
- package/dist/db/observations.d.ts +45 -2
- package/dist/db/observations.d.ts.map +1 -1
- package/dist/db/observations.js +112 -14
- package/dist/db/observations.js.map +1 -1
- package/dist/db/schema.d.ts.map +1 -1
- package/dist/db/schema.js +135 -25
- package/dist/db/schema.js.map +1 -1
- package/dist/db/wiki-store.d.ts +3 -0
- package/dist/db/wiki-store.d.ts.map +1 -0
- package/dist/db/wiki-store.js +7 -0
- package/dist/db/wiki-store.js.map +1 -0
- package/dist/index.js +159 -610
- package/dist/index.js.map +1 -1
- package/dist/messaging/url-extract.d.ts +8 -0
- package/dist/messaging/url-extract.d.ts.map +1 -0
- package/dist/messaging/url-extract.js +41 -0
- package/dist/messaging/url-extract.js.map +1 -0
- package/dist/observers/delegated-sync-worker.d.ts +52 -1
- package/dist/observers/delegated-sync-worker.d.ts.map +1 -1
- package/dist/observers/delegated-sync-worker.js +75 -18
- package/dist/observers/delegated-sync-worker.js.map +1 -1
- package/dist/observers/imminent-event-scheduler.d.ts +20 -7
- package/dist/observers/imminent-event-scheduler.d.ts.map +1 -1
- package/dist/observers/imminent-event-scheduler.js +134 -29
- package/dist/observers/imminent-event-scheduler.js.map +1 -1
- package/dist/observers/mail-poller.d.ts +12 -5
- package/dist/observers/mail-poller.d.ts.map +1 -1
- package/dist/observers/mail-poller.js +36 -14
- package/dist/observers/mail-poller.js.map +1 -1
- package/dist/observers/manager.d.ts +37 -5
- package/dist/observers/manager.d.ts.map +1 -1
- package/dist/observers/manager.js +28 -10
- package/dist/observers/manager.js.map +1 -1
- package/dist/safety/always-disallowed.d.ts +65 -0
- package/dist/safety/always-disallowed.d.ts.map +1 -1
- package/dist/safety/always-disallowed.js +106 -10
- package/dist/safety/always-disallowed.js.map +1 -1
- package/dist/safety/audit.d.ts +46 -1
- package/dist/safety/audit.d.ts.map +1 -1
- package/dist/safety/audit.js +79 -16
- package/dist/safety/audit.js.map +1 -1
- package/dist/safety/risk-classifier.d.ts.map +1 -1
- package/dist/safety/risk-classifier.js +29 -0
- package/dist/safety/risk-classifier.js.map +1 -1
- package/dist/services/delegated-backend-invoker.d.ts +1 -51
- package/dist/services/delegated-backend-invoker.d.ts.map +1 -1
- package/dist/services/delegated-backend-invoker.js +41 -480
- package/dist/services/delegated-backend-invoker.js.map +1 -1
- package/dist/services/delegated-invoker-audit.d.ts +94 -0
- package/dist/services/delegated-invoker-audit.d.ts.map +1 -0
- package/dist/services/delegated-invoker-audit.js +238 -0
- package/dist/services/delegated-invoker-audit.js.map +1 -0
- package/dist/services/delegated-invoker-cache-hits.d.ts +34 -0
- package/dist/services/delegated-invoker-cache-hits.d.ts.map +1 -0
- package/dist/services/delegated-invoker-cache-hits.js +104 -0
- package/dist/services/delegated-invoker-cache-hits.js.map +1 -0
- package/dist/services/delegated-invoker-janitors.d.ts +28 -0
- package/dist/services/delegated-invoker-janitors.d.ts.map +1 -0
- package/dist/services/delegated-invoker-janitors.js +104 -0
- package/dist/services/delegated-invoker-janitors.js.map +1 -0
- package/dist/services/delegated-invoker-utils.d.ts +42 -0
- package/dist/services/delegated-invoker-utils.d.ts.map +1 -0
- package/dist/services/delegated-invoker-utils.js +100 -0
- package/dist/services/delegated-invoker-utils.js.map +1 -0
- package/dist/services/delegated-task-runtime.d.ts +1 -1
- package/dist/services/delegated-task-runtime.js +1 -1
- package/dist/services/integrations/snapshot-partitions.d.ts +5 -0
- package/dist/services/integrations/snapshot-partitions.d.ts.map +1 -1
- package/dist/services/integrations/snapshot-partitions.js +12 -0
- package/dist/services/integrations/snapshot-partitions.js.map +1 -1
- package/dist/services/voice/transcriber-impl.d.ts.map +1 -1
- package/dist/services/voice/transcriber-impl.js +7 -8
- package/dist/services/voice/transcriber-impl.js.map +1 -1
- package/dist/settings/runtime-settings.d.ts +12 -1
- package/dist/settings/runtime-settings.d.ts.map +1 -1
- package/dist/settings/runtime-settings.js +59 -1
- package/dist/settings/runtime-settings.js.map +1 -1
- package/package.json +2 -2
package/dist/core/metrics.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getAgentDayBoundsUtc, getAgentDayDateStr } from "@aitne/shared";
|
|
2
|
-
import { snapshotManagementTelemetry, } from "./management-telemetry.js";
|
|
2
|
+
import { snapshotManagementTelemetry, summarize, } from "./management-telemetry.js";
|
|
3
3
|
export class MetricsCollector {
|
|
4
4
|
db;
|
|
5
5
|
timezoneConfig;
|
|
@@ -240,6 +240,90 @@ export class MetricsCollector {
|
|
|
240
240
|
costUsd: aggregateCost(parsed),
|
|
241
241
|
};
|
|
242
242
|
}
|
|
243
|
+
/**
|
|
244
|
+
* PRE_PASS_FAN_OUT_DESIGN.md §7.3 — pre-pass fan-out metrics.
|
|
245
|
+
*
|
|
246
|
+
* Aggregates `routine.fetch_window` audit rows (one per attempt per
|
|
247
|
+
* integration per parent routine) into the four metric families
|
|
248
|
+
* called out in the design table:
|
|
249
|
+
* - `pre_pass_total{routine, integration, status}` — chain-level
|
|
250
|
+
* count keyed by terminal status.
|
|
251
|
+
* - `pre_pass_attempts{routine, integration}` — distribution of
|
|
252
|
+
* attempt counts per chain.
|
|
253
|
+
* - `pre_pass_cost_usd{routine}` — distribution of total cost per
|
|
254
|
+
* chain, rolled up by routine.
|
|
255
|
+
* - `pre_pass_duration_ms{routine, integration}` — distribution of
|
|
256
|
+
* total wall-clock duration per chain.
|
|
257
|
+
*
|
|
258
|
+
* A "chain" is the set of attempts sharing one
|
|
259
|
+
* (`detail.prePass.parentCorrelationId`,
|
|
260
|
+
* `detail.prePass.integrationKey`) pair. The chain's terminal
|
|
261
|
+
* status is the MAX(`attempt`) row's `status`. Aggregation runs in JS
|
|
262
|
+
* after a single SELECT — the per-window row volume is bounded
|
|
263
|
+
* (~170/day worst case per §5) so an in-memory rollup is cheaper
|
|
264
|
+
* than nested SQL window-functions.
|
|
265
|
+
*
|
|
266
|
+
* Soft-fails on every block: a malformed JSON `detail` cell skips
|
|
267
|
+
* the row but does not blank the entire snapshot, mirroring the
|
|
268
|
+
* delegated-task / management aggregators.
|
|
269
|
+
*/
|
|
270
|
+
collectPrePassMetrics(days = 30) {
|
|
271
|
+
const window = Number.isFinite(days)
|
|
272
|
+
? Math.min(Math.max(Math.floor(days), 1), 90)
|
|
273
|
+
: 30;
|
|
274
|
+
const collectedAt = new Date().toISOString();
|
|
275
|
+
let rows = [];
|
|
276
|
+
try {
|
|
277
|
+
rows = this.db
|
|
278
|
+
.prepare(`SELECT cost_usd, duration_ms, backend, detail
|
|
279
|
+
FROM agent_actions
|
|
280
|
+
WHERE action_type = 'routine.fetch_window'
|
|
281
|
+
AND started_at > datetime('now', '-' || ? || ' days')
|
|
282
|
+
AND detail IS NOT NULL`)
|
|
283
|
+
.all(window);
|
|
284
|
+
}
|
|
285
|
+
catch {
|
|
286
|
+
// Table missing in tests / fresh DB — return the empty snapshot.
|
|
287
|
+
return emptyPrePassSnapshot(window, collectedAt);
|
|
288
|
+
}
|
|
289
|
+
const attempts = [];
|
|
290
|
+
for (const row of rows) {
|
|
291
|
+
let detail = {};
|
|
292
|
+
try {
|
|
293
|
+
detail = row.detail ? JSON.parse(row.detail) : {};
|
|
294
|
+
}
|
|
295
|
+
catch {
|
|
296
|
+
continue; // malformed JSON — skip silently
|
|
297
|
+
}
|
|
298
|
+
const prePass = detail.prePass;
|
|
299
|
+
if (!prePass || typeof prePass !== "object")
|
|
300
|
+
continue;
|
|
301
|
+
const pp = prePass;
|
|
302
|
+
const pcid = typeof pp.parentCorrelationId === "string" ? pp.parentCorrelationId : null;
|
|
303
|
+
const routine = typeof pp.parentRoutine === "string" ? pp.parentRoutine : null;
|
|
304
|
+
const integration = typeof pp.integrationKey === "string" ? pp.integrationKey : null;
|
|
305
|
+
const attempt = typeof pp.attempt === "number" ? pp.attempt : null;
|
|
306
|
+
const status = typeof pp.status === "string"
|
|
307
|
+
&& (pp.status === "success" || pp.status === "partial" || pp.status === "failed" || pp.status === "skipped")
|
|
308
|
+
? pp.status
|
|
309
|
+
: null;
|
|
310
|
+
if (!pcid || !routine || !integration || attempt === null || status === null)
|
|
311
|
+
continue;
|
|
312
|
+
attempts.push({
|
|
313
|
+
pcid,
|
|
314
|
+
routine,
|
|
315
|
+
integration,
|
|
316
|
+
attempt,
|
|
317
|
+
status,
|
|
318
|
+
costUsd: row.cost_usd ?? 0,
|
|
319
|
+
durationMs: row.duration_ms ?? 0,
|
|
320
|
+
fallbackTriggered: pp.fallbackTriggered === true,
|
|
321
|
+
requestedBackend: typeof pp.requestedBackend === "string" ? pp.requestedBackend : null,
|
|
322
|
+
actualBackend: row.backend,
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
return aggregatePrePassMetrics(attempts, window, collectedAt);
|
|
326
|
+
}
|
|
243
327
|
/**
|
|
244
328
|
* docs/design/21-management-registry-and-entities.md §14.3 — the six
|
|
245
329
|
* Phase-8 metrics, shaped for the dashboard's Management → History tab
|
|
@@ -744,4 +828,175 @@ export function aggregateManagedTaskRuns(rows) {
|
|
|
744
828
|
}
|
|
745
829
|
return totals;
|
|
746
830
|
}
|
|
831
|
+
function emptyPrePassSnapshot(windowDays, collectedAt) {
|
|
832
|
+
return {
|
|
833
|
+
windowDays,
|
|
834
|
+
collectedAt,
|
|
835
|
+
totalChains: 0,
|
|
836
|
+
totalAttempts: 0,
|
|
837
|
+
chainsByStatus: [],
|
|
838
|
+
attemptsPerChain: [],
|
|
839
|
+
costUsdByRoutine: [],
|
|
840
|
+
durationMsByIntegration: [],
|
|
841
|
+
fallbacks: [],
|
|
842
|
+
};
|
|
843
|
+
}
|
|
844
|
+
/**
|
|
845
|
+
* Pure aggregation kernel for `collectPrePassMetrics`. Takes the parsed
|
|
846
|
+
* attempt rows and rolls them up into the §7.3 snapshot shape. Exported
|
|
847
|
+
* for direct unit testing without a SQLite fixture.
|
|
848
|
+
*
|
|
849
|
+
* Chain identity = (parentCorrelationId, integrationKey). Each chain's
|
|
850
|
+
* terminal status is the MAX(`attempt`) row's status; each chain's
|
|
851
|
+
* total cost / duration is the sum across attempts.
|
|
852
|
+
*/
|
|
853
|
+
export function aggregatePrePassMetrics(attempts, windowDays, collectedAt) {
|
|
854
|
+
if (attempts.length === 0)
|
|
855
|
+
return emptyPrePassSnapshot(windowDays, collectedAt);
|
|
856
|
+
// pcid → integration → ChainSummary.
|
|
857
|
+
const chainsByPcid = new Map();
|
|
858
|
+
for (const att of attempts) {
|
|
859
|
+
let perPcid = chainsByPcid.get(att.pcid);
|
|
860
|
+
if (!perPcid) {
|
|
861
|
+
perPcid = new Map();
|
|
862
|
+
chainsByPcid.set(att.pcid, perPcid);
|
|
863
|
+
}
|
|
864
|
+
const existing = perPcid.get(att.integration);
|
|
865
|
+
if (existing === undefined) {
|
|
866
|
+
perPcid.set(att.integration, {
|
|
867
|
+
routine: att.routine,
|
|
868
|
+
integration: att.integration,
|
|
869
|
+
attempts: 1,
|
|
870
|
+
finalAttempt: att.attempt,
|
|
871
|
+
finalStatus: att.status,
|
|
872
|
+
totalCostUsd: att.costUsd,
|
|
873
|
+
totalDurationMs: att.durationMs,
|
|
874
|
+
});
|
|
875
|
+
}
|
|
876
|
+
else {
|
|
877
|
+
existing.attempts += 1;
|
|
878
|
+
existing.totalCostUsd += att.costUsd;
|
|
879
|
+
existing.totalDurationMs += att.durationMs;
|
|
880
|
+
// Update terminal status to the row with the highest attempt
|
|
881
|
+
// index — chain status mirrors the runner's `final` attempt.
|
|
882
|
+
if (att.attempt > existing.finalAttempt) {
|
|
883
|
+
existing.finalAttempt = att.attempt;
|
|
884
|
+
existing.finalStatus = att.status;
|
|
885
|
+
}
|
|
886
|
+
}
|
|
887
|
+
}
|
|
888
|
+
// Flatten chain summaries into a single iterable for the next pass.
|
|
889
|
+
const allChains = [];
|
|
890
|
+
for (const perPcid of chainsByPcid.values()) {
|
|
891
|
+
for (const chain of perPcid.values())
|
|
892
|
+
allChains.push(chain);
|
|
893
|
+
}
|
|
894
|
+
// chainsByStatus — routine → integration → status → count.
|
|
895
|
+
const statusCounts = new Map();
|
|
896
|
+
// routine → integration → samples (per-chain attempt counts).
|
|
897
|
+
const attemptsSamples = new Map();
|
|
898
|
+
// routine → samples (per-chain total cost).
|
|
899
|
+
const costSamples = new Map();
|
|
900
|
+
// routine → integration → samples (per-chain total duration).
|
|
901
|
+
const durationSamples = new Map();
|
|
902
|
+
function getOrCreateMap(m, k, factory) {
|
|
903
|
+
const existing = m.get(k);
|
|
904
|
+
if (existing !== undefined)
|
|
905
|
+
return existing;
|
|
906
|
+
const created = factory();
|
|
907
|
+
m.set(k, created);
|
|
908
|
+
return created;
|
|
909
|
+
}
|
|
910
|
+
for (const chain of allChains) {
|
|
911
|
+
const byRoutine = getOrCreateMap(statusCounts, chain.routine, () => new Map());
|
|
912
|
+
const byIntegration = getOrCreateMap(byRoutine, chain.integration, () => new Map());
|
|
913
|
+
byIntegration.set(chain.finalStatus, (byIntegration.get(chain.finalStatus) ?? 0) + 1);
|
|
914
|
+
const attemptsByRoutine = getOrCreateMap(attemptsSamples, chain.routine, () => new Map());
|
|
915
|
+
getOrCreateMap(attemptsByRoutine, chain.integration, () => []).push(chain.attempts);
|
|
916
|
+
getOrCreateMap(costSamples, chain.routine, () => []).push(chain.totalCostUsd);
|
|
917
|
+
const durationByRoutine = getOrCreateMap(durationSamples, chain.routine, () => new Map());
|
|
918
|
+
getOrCreateMap(durationByRoutine, chain.integration, () => []).push(chain.totalDurationMs);
|
|
919
|
+
}
|
|
920
|
+
const chainsByStatus = [];
|
|
921
|
+
for (const [routine, byIntegration] of statusCounts.entries()) {
|
|
922
|
+
for (const [integration, byStatus] of byIntegration.entries()) {
|
|
923
|
+
for (const [status, count] of byStatus.entries()) {
|
|
924
|
+
chainsByStatus.push({
|
|
925
|
+
routine,
|
|
926
|
+
integrationKey: integration,
|
|
927
|
+
status: status,
|
|
928
|
+
count,
|
|
929
|
+
});
|
|
930
|
+
}
|
|
931
|
+
}
|
|
932
|
+
}
|
|
933
|
+
chainsByStatus.sort((a, b) => {
|
|
934
|
+
return (a.routine.localeCompare(b.routine)
|
|
935
|
+
|| a.integrationKey.localeCompare(b.integrationKey)
|
|
936
|
+
|| a.status.localeCompare(b.status));
|
|
937
|
+
});
|
|
938
|
+
const attemptsPerChain = [];
|
|
939
|
+
for (const [routine, byIntegration] of attemptsSamples.entries()) {
|
|
940
|
+
for (const [integration, samples] of byIntegration.entries()) {
|
|
941
|
+
attemptsPerChain.push({
|
|
942
|
+
routine,
|
|
943
|
+
integrationKey: integration,
|
|
944
|
+
histogram: summarize(samples),
|
|
945
|
+
});
|
|
946
|
+
}
|
|
947
|
+
}
|
|
948
|
+
attemptsPerChain.sort((a, b) => a.routine.localeCompare(b.routine)
|
|
949
|
+
|| a.integrationKey.localeCompare(b.integrationKey));
|
|
950
|
+
const costUsdByRoutine = [];
|
|
951
|
+
for (const [routine, samples] of costSamples.entries()) {
|
|
952
|
+
costUsdByRoutine.push({ routine, histogram: summarize(samples) });
|
|
953
|
+
}
|
|
954
|
+
costUsdByRoutine.sort((a, b) => a.routine.localeCompare(b.routine));
|
|
955
|
+
const durationMsByIntegration = [];
|
|
956
|
+
for (const [routine, byIntegration] of durationSamples.entries()) {
|
|
957
|
+
for (const [integration, samples] of byIntegration.entries()) {
|
|
958
|
+
durationMsByIntegration.push({
|
|
959
|
+
routine,
|
|
960
|
+
integrationKey: integration,
|
|
961
|
+
histogram: summarize(samples),
|
|
962
|
+
});
|
|
963
|
+
}
|
|
964
|
+
}
|
|
965
|
+
durationMsByIntegration.sort((a, b) => a.routine.localeCompare(b.routine)
|
|
966
|
+
|| a.integrationKey.localeCompare(b.integrationKey));
|
|
967
|
+
// Fallbacks — counted at the attempt level (one fallback observation
|
|
968
|
+
// per attempt that triggered it). routine → requested → actual → count.
|
|
969
|
+
const fallbackCounts = new Map();
|
|
970
|
+
for (const att of attempts) {
|
|
971
|
+
if (!att.fallbackTriggered)
|
|
972
|
+
continue;
|
|
973
|
+
if (!att.requestedBackend || !att.actualBackend)
|
|
974
|
+
continue;
|
|
975
|
+
const byRequested = getOrCreateMap(fallbackCounts, att.routine, () => new Map());
|
|
976
|
+
const byActual = getOrCreateMap(byRequested, att.requestedBackend, () => new Map());
|
|
977
|
+
byActual.set(att.actualBackend, (byActual.get(att.actualBackend) ?? 0) + 1);
|
|
978
|
+
}
|
|
979
|
+
const fallbacks = [];
|
|
980
|
+
for (const [routine, byRequested] of fallbackCounts.entries()) {
|
|
981
|
+
for (const [requestedBackend, byActual] of byRequested.entries()) {
|
|
982
|
+
for (const [actualBackend, count] of byActual.entries()) {
|
|
983
|
+
fallbacks.push({ routine, requestedBackend, actualBackend, count });
|
|
984
|
+
}
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
fallbacks.sort((a, b) => a.routine.localeCompare(b.routine)
|
|
988
|
+
|| a.requestedBackend.localeCompare(b.requestedBackend)
|
|
989
|
+
|| a.actualBackend.localeCompare(b.actualBackend));
|
|
990
|
+
return {
|
|
991
|
+
windowDays,
|
|
992
|
+
collectedAt,
|
|
993
|
+
totalChains: allChains.length,
|
|
994
|
+
totalAttempts: attempts.length,
|
|
995
|
+
chainsByStatus,
|
|
996
|
+
attemptsPerChain,
|
|
997
|
+
costUsdByRoutine,
|
|
998
|
+
durationMsByIntegration,
|
|
999
|
+
fallbacks,
|
|
1000
|
+
};
|
|
1001
|
+
}
|
|
747
1002
|
//# sourceMappingURL=metrics.js.map
|
package/dist/core/metrics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/core/metrics.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/core/metrics.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Output language policy — one source of truth for the rule injected into
|
|
3
|
+
* every backend session.
|
|
4
|
+
*
|
|
5
|
+
* Design: `docs/design/appendices/output-language-policy.md`
|
|
6
|
+
*
|
|
7
|
+
* Two surfaces consume this module:
|
|
8
|
+
*
|
|
9
|
+
* 1. `ContextBuilder` (per-turn XML context). `renderOutputLanguagePolicyBlock`
|
|
10
|
+
* emits the full `<output_language_policy>` block alongside
|
|
11
|
+
* `<settings primary_language=…>`. Refreshes every turn, so it
|
|
12
|
+
* tracks runtime `PATCH /api/config` changes to `primaryLanguage`.
|
|
13
|
+
*
|
|
14
|
+
* 2. `skills-compiler` (persistent system prompt). The renderer in the
|
|
15
|
+
* instruction-file path emits the much shorter
|
|
16
|
+
* `## Output language` pointer paragraph. Identical byte-for-byte
|
|
17
|
+
* across CLAUDE.md / AGENTS.md / GEMINI.md so the agent reads the
|
|
18
|
+
* same rule on every backend; intentionally carries NO value
|
|
19
|
+
* substitutions (no inlined `primaryLanguage`) — the live value
|
|
20
|
+
* lives in the per-turn XML and would go stale here.
|
|
21
|
+
*
|
|
22
|
+
* Treat both renderers as the unique source of the policy text. The
|
|
23
|
+
* grep guard in `output-language-policy.test.ts` enforces this — adding
|
|
24
|
+
* the same prose elsewhere will fail CI.
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Sentinel substring that any duplicate of the policy text would contain.
|
|
28
|
+
* The grep guard test scans `src/` and `agent-assets/` (excluding this
|
|
29
|
+
* file and the related test) for the sentinel and fails CI if it
|
|
30
|
+
* appears anywhere else.
|
|
31
|
+
*/
|
|
32
|
+
export declare const OUTPUT_LANGUAGE_POLICY_SENTINEL = "Apply primary_language to:";
|
|
33
|
+
/**
|
|
34
|
+
* Full `<output_language_policy>` block, populated with the current
|
|
35
|
+
* `primaryLanguage`. Injected by `ContextBuilder` once per turn,
|
|
36
|
+
* immediately after the existing `<settings primary_language=… />`
|
|
37
|
+
* line.
|
|
38
|
+
*/
|
|
39
|
+
export declare function renderOutputLanguagePolicyBlock(primaryLanguage: string): string;
|
|
40
|
+
/** Heading line used by the instruction-file pointer block. */
|
|
41
|
+
export declare const OUTPUT_LANGUAGE_POINTER_HEADING = "## Output language";
|
|
42
|
+
/**
|
|
43
|
+
* Insert the `## Output language` pointer block into the rendered Claude
|
|
44
|
+
* instruction body. Placement mirrors the design §13.3 stack ordering —
|
|
45
|
+
* after safety, after the user-defined character block (if any), and
|
|
46
|
+
* before the runtime profile body.
|
|
47
|
+
*
|
|
48
|
+
* Placement search order:
|
|
49
|
+
*
|
|
50
|
+
* 1. Right after the character-block end marker (`<!-- character:end -->`
|
|
51
|
+
* followed by the FOOTER paragraph and a blank line). When the
|
|
52
|
+
* character block is present this is the natural "below character"
|
|
53
|
+
* seam.
|
|
54
|
+
* 2. Right after the safety-end sentinel when the character block is
|
|
55
|
+
* absent.
|
|
56
|
+
* 3. Before the first `## ` section heading as a final fallback for
|
|
57
|
+
* legacy bodies that carry neither sentinel.
|
|
58
|
+
*
|
|
59
|
+
* Idempotent: a body that already contains the heading is returned
|
|
60
|
+
* unchanged. This matters because `applyCharacterBlockRewrite` is
|
|
61
|
+
* idempotent in the same way and the two helpers may run in succession
|
|
62
|
+
* across re-materialization.
|
|
63
|
+
*/
|
|
64
|
+
export declare function applyOutputLanguagePointerRewrite(content: string): string;
|
|
65
|
+
/**
|
|
66
|
+
* Short `## Output language` pointer paragraph inlined verbatim into
|
|
67
|
+
* CLAUDE.md / AGENTS.md / GEMINI.md by `skills-compiler`. Declarative,
|
|
68
|
+
* no value substitutions — the live `primaryLanguage` is carried by
|
|
69
|
+
* the per-turn `<output_language_policy>` XML block instead, so the
|
|
70
|
+
* instruction file never goes stale when the user PATCHes the setting
|
|
71
|
+
* mid-session. See design §13.4 / §13.5.
|
|
72
|
+
*/
|
|
73
|
+
export declare function renderOutputLanguagePolicyPointer(): string;
|
|
74
|
+
//# sourceMappingURL=output-language-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"output-language-policy.d.ts","sourceRoot":"","sources":["../../src/core/output-language-policy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAKH;;;;;GAKG;AACH,eAAO,MAAM,+BAA+B,+BACd,CAAC;AAE/B;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,eAAe,EAAE,MAAM,GACtB,MAAM,CA2CR;AAED,+DAA+D;AAC/D,eAAO,MAAM,+BAA+B,uBAAuB,CAAC;AAQpE;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA4CzE;AAQD;;;;;;;GAOG;AACH,wBAAgB,iCAAiC,IAAI,MAAM,CAsB1D"}
|
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Output language policy — one source of truth for the rule injected into
|
|
3
|
+
* every backend session.
|
|
4
|
+
*
|
|
5
|
+
* Design: `docs/design/appendices/output-language-policy.md`
|
|
6
|
+
*
|
|
7
|
+
* Two surfaces consume this module:
|
|
8
|
+
*
|
|
9
|
+
* 1. `ContextBuilder` (per-turn XML context). `renderOutputLanguagePolicyBlock`
|
|
10
|
+
* emits the full `<output_language_policy>` block alongside
|
|
11
|
+
* `<settings primary_language=…>`. Refreshes every turn, so it
|
|
12
|
+
* tracks runtime `PATCH /api/config` changes to `primaryLanguage`.
|
|
13
|
+
*
|
|
14
|
+
* 2. `skills-compiler` (persistent system prompt). The renderer in the
|
|
15
|
+
* instruction-file path emits the much shorter
|
|
16
|
+
* `## Output language` pointer paragraph. Identical byte-for-byte
|
|
17
|
+
* across CLAUDE.md / AGENTS.md / GEMINI.md so the agent reads the
|
|
18
|
+
* same rule on every backend; intentionally carries NO value
|
|
19
|
+
* substitutions (no inlined `primaryLanguage`) — the live value
|
|
20
|
+
* lives in the per-turn XML and would go stale here.
|
|
21
|
+
*
|
|
22
|
+
* Treat both renderers as the unique source of the policy text. The
|
|
23
|
+
* grep guard in `output-language-policy.test.ts` enforces this — adding
|
|
24
|
+
* the same prose elsewhere will fail CI.
|
|
25
|
+
*/
|
|
26
|
+
const POLICY_BLOCK_OPEN = "<output_language_policy>";
|
|
27
|
+
const POLICY_BLOCK_CLOSE = "</output_language_policy>";
|
|
28
|
+
/**
|
|
29
|
+
* Sentinel substring that any duplicate of the policy text would contain.
|
|
30
|
+
* The grep guard test scans `src/` and `agent-assets/` (excluding this
|
|
31
|
+
* file and the related test) for the sentinel and fails CI if it
|
|
32
|
+
* appears anywhere else.
|
|
33
|
+
*/
|
|
34
|
+
export const OUTPUT_LANGUAGE_POLICY_SENTINEL = "Apply primary_language to:";
|
|
35
|
+
/**
|
|
36
|
+
* Full `<output_language_policy>` block, populated with the current
|
|
37
|
+
* `primaryLanguage`. Injected by `ContextBuilder` once per turn,
|
|
38
|
+
* immediately after the existing `<settings primary_language=… />`
|
|
39
|
+
* line.
|
|
40
|
+
*/
|
|
41
|
+
export function renderOutputLanguagePolicyBlock(primaryLanguage) {
|
|
42
|
+
const lang = primaryLanguage.trim() || "en";
|
|
43
|
+
return [
|
|
44
|
+
POLICY_BLOCK_OPEN,
|
|
45
|
+
` Setting: primary_language="${lang}"`,
|
|
46
|
+
"",
|
|
47
|
+
" Apply primary_language to:",
|
|
48
|
+
" - Body prose, bullets, summaries, and narrative written via",
|
|
49
|
+
" /api/context/* (knowledge files under ~/.personal-agent/context/)",
|
|
50
|
+
" - Notes the agent creates in the user's Obsidian vault or Notion",
|
|
51
|
+
" - Section content under user-customized headers (whatever language",
|
|
52
|
+
" the user wrote the header in, content matches)",
|
|
53
|
+
"",
|
|
54
|
+
" DM replies to the owner:",
|
|
55
|
+
" - Match the language of the user's most recent message",
|
|
56
|
+
" - Fall back to primary_language when the input is ambiguous, empty,",
|
|
57
|
+
" or system-generated",
|
|
58
|
+
" - Character block (tone, formality, emoji, verbosity) overrides",
|
|
59
|
+
" locale defaults — preserve the user's chosen voice in any language",
|
|
60
|
+
"",
|
|
61
|
+
" Do NOT translate:",
|
|
62
|
+
" - Structural H2/H3 headers that match the shipped template skeleton",
|
|
63
|
+
" (Identity, Work Pattern, Annual Goals, etc.) — keep English so",
|
|
64
|
+
" parsers (management-md, profile-importer, journal readers) keep",
|
|
65
|
+
" working",
|
|
66
|
+
" - YAML frontmatter keys, wiki-link targets ([[user/profile]]),",
|
|
67
|
+
" file paths, tool names, identifiers, env vars",
|
|
68
|
+
" - Fenced code blocks, JSON, CLI commands, URLs",
|
|
69
|
+
" - The agent journal (agent/journal.md is English by",
|
|
70
|
+
" rules/journal-format.md)",
|
|
71
|
+
" - rules/*.md files (management, redaction, mcp, policies) — these",
|
|
72
|
+
" are a structured registry, not prose",
|
|
73
|
+
"",
|
|
74
|
+
" User-customized headers win:",
|
|
75
|
+
" - If the running file already uses a translated header (e.g.",
|
|
76
|
+
` "## アイデンティティ"), preserve it and write content under it;`,
|
|
77
|
+
" do not revert to the English template header",
|
|
78
|
+
"",
|
|
79
|
+
" Skeleton precedence:",
|
|
80
|
+
" - When creating a fresh file, copy the template skeleton verbatim",
|
|
81
|
+
" (English H2s) and fill the body in primary_language",
|
|
82
|
+
POLICY_BLOCK_CLOSE,
|
|
83
|
+
].join("\n");
|
|
84
|
+
}
|
|
85
|
+
/** Heading line used by the instruction-file pointer block. */
|
|
86
|
+
export const OUTPUT_LANGUAGE_POINTER_HEADING = "## Output language";
|
|
87
|
+
/** End-of-character-block sentinel emitted by `character-block.ts`. */
|
|
88
|
+
const CHARACTER_END_MARKER = "<!-- character:end -->";
|
|
89
|
+
/** End-of-safety-preamble sentinel emitted by `skills-compiler.ts`. */
|
|
90
|
+
const SAFETY_END_MARKER = "<!-- safety:end -->";
|
|
91
|
+
/**
|
|
92
|
+
* Insert the `## Output language` pointer block into the rendered Claude
|
|
93
|
+
* instruction body. Placement mirrors the design §13.3 stack ordering —
|
|
94
|
+
* after safety, after the user-defined character block (if any), and
|
|
95
|
+
* before the runtime profile body.
|
|
96
|
+
*
|
|
97
|
+
* Placement search order:
|
|
98
|
+
*
|
|
99
|
+
* 1. Right after the character-block end marker (`<!-- character:end -->`
|
|
100
|
+
* followed by the FOOTER paragraph and a blank line). When the
|
|
101
|
+
* character block is present this is the natural "below character"
|
|
102
|
+
* seam.
|
|
103
|
+
* 2. Right after the safety-end sentinel when the character block is
|
|
104
|
+
* absent.
|
|
105
|
+
* 3. Before the first `## ` section heading as a final fallback for
|
|
106
|
+
* legacy bodies that carry neither sentinel.
|
|
107
|
+
*
|
|
108
|
+
* Idempotent: a body that already contains the heading is returned
|
|
109
|
+
* unchanged. This matters because `applyCharacterBlockRewrite` is
|
|
110
|
+
* idempotent in the same way and the two helpers may run in succession
|
|
111
|
+
* across re-materialization.
|
|
112
|
+
*/
|
|
113
|
+
export function applyOutputLanguagePointerRewrite(content) {
|
|
114
|
+
if (content.includes(OUTPUT_LANGUAGE_POINTER_HEADING)) {
|
|
115
|
+
return content;
|
|
116
|
+
}
|
|
117
|
+
const block = renderOutputLanguagePolicyPointer();
|
|
118
|
+
const characterEndIdx = content.indexOf(CHARACTER_END_MARKER);
|
|
119
|
+
if (characterEndIdx >= 0) {
|
|
120
|
+
// The character block ends with FOOTER prose after the end-marker.
|
|
121
|
+
// Insert *after* the FOOTER, immediately before the next `## ` heading
|
|
122
|
+
// so the pointer block becomes a peer section of Character (mirrors
|
|
123
|
+
// the §13.3 stack ordering).
|
|
124
|
+
const searchFrom = characterEndIdx + CHARACTER_END_MARKER.length;
|
|
125
|
+
const tail = content.slice(searchFrom);
|
|
126
|
+
const nextHeadingOffset = tail.search(/\n## /);
|
|
127
|
+
if (nextHeadingOffset >= 0) {
|
|
128
|
+
const insertAt = searchFrom + nextHeadingOffset + 1;
|
|
129
|
+
const before = content.slice(0, insertAt);
|
|
130
|
+
const after = content.slice(insertAt);
|
|
131
|
+
return `${before}${block}\n\n${after}`;
|
|
132
|
+
}
|
|
133
|
+
const trimmed = content.replace(/\s+$/, "");
|
|
134
|
+
return `${trimmed}\n\n${block}\n`;
|
|
135
|
+
}
|
|
136
|
+
const safetyEndIdx = content.indexOf(SAFETY_END_MARKER);
|
|
137
|
+
if (safetyEndIdx >= 0) {
|
|
138
|
+
const afterSentinel = safetyEndIdx + SAFETY_END_MARKER.length;
|
|
139
|
+
let cursor = afterSentinel;
|
|
140
|
+
while (cursor < content.length && /\s/.test(content[cursor]))
|
|
141
|
+
cursor++;
|
|
142
|
+
const before = content.slice(0, afterSentinel);
|
|
143
|
+
const after = content.slice(cursor);
|
|
144
|
+
return after ? `${before}\n\n${block}\n\n${after}` : `${before}\n\n${block}\n`;
|
|
145
|
+
}
|
|
146
|
+
const firstHeadingIdx = findFirstSectionHeading(content);
|
|
147
|
+
if (firstHeadingIdx < 0) {
|
|
148
|
+
const trimmed = content.replace(/\s+$/, "");
|
|
149
|
+
if (!trimmed)
|
|
150
|
+
return `${block}\n`;
|
|
151
|
+
return `${trimmed}\n\n${block}\n`;
|
|
152
|
+
}
|
|
153
|
+
const before = content.slice(0, firstHeadingIdx);
|
|
154
|
+
const after = content.slice(firstHeadingIdx);
|
|
155
|
+
return `${before}${block}\n\n${after}`;
|
|
156
|
+
}
|
|
157
|
+
function findFirstSectionHeading(content) {
|
|
158
|
+
if (content.startsWith("## "))
|
|
159
|
+
return 0;
|
|
160
|
+
const idx = content.indexOf("\n## ");
|
|
161
|
+
return idx < 0 ? -1 : idx + 1;
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* Short `## Output language` pointer paragraph inlined verbatim into
|
|
165
|
+
* CLAUDE.md / AGENTS.md / GEMINI.md by `skills-compiler`. Declarative,
|
|
166
|
+
* no value substitutions — the live `primaryLanguage` is carried by
|
|
167
|
+
* the per-turn `<output_language_policy>` XML block instead, so the
|
|
168
|
+
* instruction file never goes stale when the user PATCHes the setting
|
|
169
|
+
* mid-session. See design §13.4 / §13.5.
|
|
170
|
+
*/
|
|
171
|
+
export function renderOutputLanguagePolicyPointer() {
|
|
172
|
+
return [
|
|
173
|
+
"## Output language",
|
|
174
|
+
"",
|
|
175
|
+
"Output language is governed by `<output_language_policy>` in your",
|
|
176
|
+
"turn context (full text, refreshes on every turn so it tracks runtime",
|
|
177
|
+
"setting changes). In short:",
|
|
178
|
+
"",
|
|
179
|
+
"- **Knowledge files** under `/api/context/*`, **Obsidian** notes,",
|
|
180
|
+
" **Notion** pages, and other user-facing notes → write the body in",
|
|
181
|
+
" `<settings primary_language>`; keep template H2/H3 headers in",
|
|
182
|
+
" English (or preserve user-customized headers verbatim).",
|
|
183
|
+
"- **DM replies** to the owner → match the user's input language;",
|
|
184
|
+
" fall back to `<settings primary_language>` when input is ambiguous",
|
|
185
|
+
" or the turn is system-initiated. Character block (tone, formality,",
|
|
186
|
+
" emoji) overrides locale defaults.",
|
|
187
|
+
"- **Agent-internal surfaces** (this file, skill bodies, the agent",
|
|
188
|
+
" journal, API/log/audit, `rules/*.md` registry) → English. Always.",
|
|
189
|
+
"",
|
|
190
|
+
"See `docs/design/appendices/output-language-policy.md` for the full",
|
|
191
|
+
"rule and policy taxonomy.",
|
|
192
|
+
].join("\n");
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=output-language-policy.js.map
|