pi-harness-runtime 1.1.398 → 1.1.403
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/AGENTS.md +44 -2
- package/CHANGELOG.md +28 -0
- package/RULES.md +28 -0
- package/harness/agent-handoff.ts +2 -3
- package/harness/autonomous-review.ts +1 -1
- package/harness/blackboard.ts +2 -3
- package/harness/context-compact-orchestrator.ts +1 -1
- package/harness/context-window-manager.ts +2 -2
- package/harness/e2e/playwright-runner.ts +6 -4
- package/harness/herdr-agents.ts +1 -1
- package/harness/job-state-machine.ts +1 -1
- package/harness/langchain/daemon.ts +3 -3
- package/harness/langchain/graph.ts +2 -2
- package/harness/langchain/ping-pong-middleware.ts +2 -2
- package/harness/loop-code-agent.ts +6 -4
- package/harness/loop-controller.ts +1 -1
- package/harness/loop-review-agent.ts +1 -1
- package/harness/loop-types.ts +1 -1
- package/harness/master-planner.ts +1 -1
- package/harness/project-detector/detector.ts +1 -2
- package/harness/repair-engine.ts +2 -4
- package/harness/service-diagnostics.ts +1 -1
- package/harness/skill-sync.ts +3 -3
- package/index.ts +276 -55
- package/mirror.ts +1 -1
- package/package.json +5 -3
- package/packages/a2a-adapter/dist/discovery.d.ts.map +1 -1
- package/packages/a2a-adapter/dist/discovery.js +0 -1
- package/packages/a2a-adapter/dist/discovery.js.map +1 -1
- package/packages/a2a-adapter/package.json +1 -1
- package/packages/a2a-adapter/src/discovery.ts +0 -1
- package/packages/agent-policy/package.json +1 -1
- package/packages/architecture-generator/package.json +1 -1
- package/packages/auth/dist/index.d.ts +9 -0
- package/packages/auth/dist/index.d.ts.map +1 -0
- package/packages/auth/dist/index.js +9 -0
- package/packages/auth/dist/index.js.map +1 -0
- package/packages/auth/package.json +1 -1
- package/packages/auth/src/index.ts +9 -0
- package/packages/autonomous-refactor/package.json +1 -1
- package/packages/autonomous-runtime/package.json +1 -1
- package/packages/cache-strategy/package.json +1 -1
- package/packages/capability-registry/package.json +1 -1
- package/packages/checkpoint/package.json +1 -1
- package/packages/cli-plugin-sdk/package.json +1 -1
- package/packages/clipboard/package.json +1 -1
- package/packages/clipboard-plugin/package.json +1 -1
- package/packages/code-generation/package.json +1 -1
- package/packages/code-review/package.json +1 -1
- package/packages/codex-adapter/package.json +1 -1
- package/packages/codex-watcher/package.json +1 -1
- package/packages/config-capture/dist/index.d.ts +52 -0
- package/packages/config-capture/dist/index.d.ts.map +1 -0
- package/packages/config-capture/dist/index.js +261 -0
- package/packages/config-capture/dist/index.js.map +1 -0
- package/packages/config-capture/package.json +1 -1
- package/packages/connection-runtime/package.json +1 -1
- package/packages/context-compiler/package.json +1 -1
- package/packages/context-discovery/package.json +1 -1
- package/packages/context-manager/package.json +1 -1
- package/packages/contracts/package.json +1 -1
- package/packages/cookie-sanitizer/package.json +1 -1
- package/packages/cost-optimizer/package.json +1 -1
- package/packages/dependency-analyzer/package.json +1 -1
- package/packages/django-plugin/package.json +1 -1
- package/packages/doc-generator/package.json +1 -1
- package/packages/durable-review/package.json +1 -1
- package/packages/e2e-tester/package.json +1 -1
- package/packages/evaluation-engine/package.json +1 -1
- package/packages/evaluation-runner/package.json +1 -1
- package/packages/event-bus/package.json +1 -1
- package/packages/event-sink/package.json +1 -1
- package/packages/event-store/package.json +1 -1
- package/packages/experience-replay/package.json +1 -1
- package/packages/feedback-collector/package.json +1 -1
- package/packages/file-copy-helper/dist/extension.d.ts +15 -0
- package/packages/file-copy-helper/dist/extension.d.ts.map +1 -0
- package/packages/file-copy-helper/dist/extension.debug.d.ts +15 -0
- package/packages/file-copy-helper/dist/extension.debug.d.ts.map +1 -0
- package/packages/file-copy-helper/dist/extension.debug.js +215 -0
- package/packages/file-copy-helper/dist/extension.debug.js.map +1 -0
- package/packages/file-copy-helper/dist/extension.js +222 -0
- package/packages/file-copy-helper/dist/extension.js.map +1 -0
- package/packages/file-copy-helper/dist/index.d.ts +3 -0
- package/packages/file-copy-helper/dist/index.d.ts.map +1 -0
- package/packages/file-copy-helper/dist/index.js +3 -0
- package/packages/file-copy-helper/dist/index.js.map +1 -0
- package/packages/file-copy-helper/dist/intent-detector.d.ts +21 -0
- package/packages/file-copy-helper/dist/intent-detector.d.ts.map +1 -0
- package/packages/file-copy-helper/dist/intent-detector.js +348 -0
- package/packages/file-copy-helper/dist/intent-detector.js.map +1 -0
- package/packages/file-copy-helper/package.json +1 -1
- package/packages/framework-detector/package.json +1 -1
- package/packages/framework-plugin-sdk/package.json +1 -1
- package/packages/frappe-plugin/package.json +1 -1
- package/packages/generic-web-plugin/package.json +1 -1
- package/packages/health-monitor/package.json +1 -1
- package/packages/intent-analyzer/package.json +1 -1
- package/packages/jev-judge/dist/auto-continue.d.ts +161 -2
- package/packages/jev-judge/dist/auto-continue.d.ts.map +1 -1
- package/packages/jev-judge/dist/auto-continue.js +267 -22
- package/packages/jev-judge/dist/auto-continue.js.map +1 -1
- package/packages/jev-judge/dist/index.d.ts +2 -0
- package/packages/jev-judge/dist/index.d.ts.map +1 -1
- package/packages/jev-judge/dist/index.js +2 -0
- package/packages/jev-judge/dist/index.js.map +1 -1
- package/packages/jev-judge/dist/question-risk.d.ts +53 -0
- package/packages/jev-judge/dist/question-risk.d.ts.map +1 -0
- package/packages/jev-judge/dist/question-risk.js +105 -0
- package/packages/jev-judge/dist/question-risk.js.map +1 -0
- package/packages/jev-judge/package.json +1 -1
- package/packages/jev-judge/src/auto-continue.ts +426 -29
- package/packages/jev-judge/src/index.ts +4 -0
- package/packages/jev-judge/src/question-risk.ts +155 -0
- package/packages/jev-judge/tests/auto-continue-context.test.ts +243 -0
- package/packages/jev-judge/tests/outcome-application.test.ts +132 -0
- package/packages/jev-judge/tests/question-risk.test.ts +129 -0
- package/packages/knowledge-graph/package.json +1 -1
- package/packages/knowledge-retrieval/package.json +1 -1
- package/packages/laravel-plugin/package.json +1 -1
- package/packages/learning-engine/package.json +1 -1
- package/packages/logging/README.md +36 -3
- package/packages/logging/dist/config.d.ts +7 -0
- package/packages/logging/dist/config.d.ts.map +1 -1
- package/packages/logging/dist/config.js +14 -0
- package/packages/logging/dist/config.js.map +1 -1
- package/packages/logging/dist/incidents/schema.d.ts +111 -0
- package/packages/logging/dist/incidents/schema.d.ts.map +1 -0
- package/packages/logging/dist/incidents/schema.js +0 -0
- package/packages/logging/dist/incidents/schema.js.map +1 -0
- package/packages/logging/dist/index.d.ts +2 -0
- package/packages/logging/dist/index.d.ts.map +1 -1
- package/packages/logging/dist/index.js +2 -0
- package/packages/logging/dist/index.js.map +1 -1
- package/packages/logging/dist/server/http.d.ts +4 -3
- package/packages/logging/dist/server/http.d.ts.map +1 -1
- package/packages/logging/dist/server/http.js +35 -3
- package/packages/logging/dist/server/http.js.map +1 -1
- package/packages/logging/dist/server/incident-qdrant.d.ts +83 -0
- package/packages/logging/dist/server/incident-qdrant.d.ts.map +1 -0
- package/packages/logging/dist/server/incident-qdrant.js +129 -0
- package/packages/logging/dist/server/incident-qdrant.js.map +1 -0
- package/packages/logging/dist/server/incident-store.d.ts +76 -0
- package/packages/logging/dist/server/incident-store.d.ts.map +1 -0
- package/packages/logging/dist/server/incident-store.js +157 -0
- package/packages/logging/dist/server/incident-store.js.map +1 -0
- package/packages/logging/dist/server/index.d.ts +4 -0
- package/packages/logging/dist/server/index.d.ts.map +1 -1
- package/packages/logging/dist/server/index.js +2 -0
- package/packages/logging/dist/server/index.js.map +1 -1
- package/packages/logging/dist/server/service.d.ts +33 -0
- package/packages/logging/dist/server/service.d.ts.map +1 -1
- package/packages/logging/dist/server/service.js +63 -0
- package/packages/logging/dist/server/service.js.map +1 -1
- package/packages/logging/dist/shipper.d.ts +74 -3
- package/packages/logging/dist/shipper.d.ts.map +1 -1
- package/packages/logging/dist/shipper.js +88 -5
- package/packages/logging/dist/shipper.js.map +1 -1
- package/packages/logging/dist/singleton.d.ts.map +1 -1
- package/packages/logging/dist/singleton.js +1 -0
- package/packages/logging/dist/singleton.js.map +1 -1
- package/packages/logging/package.json +1 -1
- package/packages/logging/src/config.ts +22 -0
- package/packages/logging/src/incidents/schema.ts +0 -0
- package/packages/logging/src/index.ts +17 -0
- package/packages/logging/src/server/http.ts +42 -3
- package/packages/logging/src/server/incident-qdrant.ts +177 -0
- package/packages/logging/src/server/incident-store.ts +192 -0
- package/packages/logging/src/server/index.ts +21 -0
- package/packages/logging/src/server/service.ts +79 -0
- package/packages/logging/src/shipper.ts +120 -5
- package/packages/logging/src/singleton.ts +1 -0
- package/packages/logging/test/fanout.test.ts +186 -0
- package/packages/logging/test/incidents.test.ts +404 -0
- package/packages/mcp-adapter/package.json +1 -1
- package/packages/memory-engine/package.json +1 -1
- package/packages/milestone-manager/package.json +1 -1
- package/packages/model-registry/package.json +1 -1
- package/packages/nextjs-plugin/package.json +1 -1
- package/packages/notification/dist/adapters/detail-format.d.ts +10 -2
- package/packages/notification/dist/adapters/detail-format.d.ts.map +1 -1
- package/packages/notification/dist/adapters/detail-format.js +39 -0
- package/packages/notification/dist/adapters/detail-format.js.map +1 -1
- package/packages/notification/dist/adapters/line-adapter.d.ts +33 -0
- package/packages/notification/dist/adapters/line-adapter.d.ts.map +1 -1
- package/packages/notification/dist/adapters/line-adapter.js +84 -7
- package/packages/notification/dist/adapters/line-adapter.js.map +1 -1
- package/packages/notification/dist/adapters/telegram-adapter.d.ts.map +1 -1
- package/packages/notification/dist/adapters/telegram-adapter.js +6 -2
- package/packages/notification/dist/adapters/telegram-adapter.js.map +1 -1
- package/packages/notification/dist/notification-center.d.ts.map +1 -1
- package/packages/notification/dist/notification-center.js +59 -7
- package/packages/notification/dist/notification-center.js.map +1 -1
- package/packages/notification/dist/pending-question.d.ts +69 -2
- package/packages/notification/dist/pending-question.d.ts.map +1 -1
- package/packages/notification/dist/pending-question.js +88 -2
- package/packages/notification/dist/pending-question.js.map +1 -1
- package/packages/notification/dist/types.d.ts +18 -0
- package/packages/notification/dist/types.d.ts.map +1 -1
- package/packages/notification/package.json +1 -1
- package/packages/notification/src/adapters/detail-format.ts +42 -2
- package/packages/notification/src/adapters/line-adapter.ts +94 -7
- package/packages/notification/src/adapters/telegram-adapter.ts +6 -2
- package/packages/notification/src/notification-center.ts +65 -8
- package/packages/notification/src/pending-question.ts +160 -8
- package/packages/notification/src/types.ts +18 -0
- package/packages/notification/test/approval-payload.test.ts +269 -0
- package/packages/notification/test/pending-question-lifecycle.test.ts +195 -0
- package/packages/observability/package.json +1 -1
- package/packages/okf-indexer/dist/index.d.ts +9 -0
- package/packages/okf-indexer/dist/index.d.ts.map +1 -0
- package/packages/okf-indexer/dist/index.js +9 -0
- package/packages/okf-indexer/dist/index.js.map +1 -0
- package/packages/okf-indexer/package.json +1 -1
- package/packages/okf-indexer/src/index.ts +9 -0
- package/packages/paperclip-integration/package.json +1 -1
- package/packages/performance-optimizer/package.json +1 -1
- package/packages/permission-mode/package.json +1 -1
- package/packages/privilege-broker/package.json +1 -1
- package/packages/project-analyzer/package.json +1 -1
- package/packages/project-bootstrap/package.json +1 -1
- package/packages/projection-engine/package.json +1 -1
- package/packages/prompt-compiler/package.json +1 -1
- package/packages/prompt-versioning/package.json +1 -1
- package/packages/provider-adapter-sdk/package.json +1 -1
- package/packages/provider-router/dist/provider-router.d.ts.map +1 -1
- package/packages/provider-router/dist/types.d.ts +2 -2
- package/packages/provider-router/dist/types.d.ts.map +1 -1
- package/packages/provider-router/dist/types.js +1 -1
- package/packages/provider-router/package.json +1 -1
- package/packages/provider-router/src/types.ts +2 -2
- package/packages/provider-selector/package.json +1 -1
- package/packages/providers/package.json +1 -1
- package/packages/qdrant-skills/package.json +1 -1
- package/packages/quota-manager/package.json +1 -1
- package/packages/rate-limiter/package.json +1 -1
- package/packages/react-vite-plugin/package.json +1 -1
- package/packages/relay/package.json +1 -1
- package/packages/release-manager/package.json +1 -1
- package/packages/requirement-compiler/package.json +1 -1
- package/packages/runtime/package.json +1 -1
- package/packages/scheduler/dist/index.d.ts +9 -0
- package/packages/scheduler/dist/index.d.ts.map +1 -0
- package/packages/scheduler/dist/index.js +9 -0
- package/packages/scheduler/dist/index.js.map +1 -0
- package/packages/scheduler/dist/scheduler.d.ts +17 -0
- package/packages/scheduler/dist/scheduler.d.ts.map +1 -0
- package/packages/scheduler/dist/scheduler.js +41 -0
- package/packages/scheduler/dist/scheduler.js.map +1 -0
- package/packages/scheduler/package.json +1 -1
- package/packages/scheduler/src/index.ts +9 -0
- package/packages/scheduler-adapter/package.json +1 -1
- package/packages/session/package.json +1 -1
- package/packages/session-api/package.json +1 -1
- package/packages/session-export/package.json +1 -1
- package/packages/shared-context/dist/index.d.ts +7 -0
- package/packages/shared-context/dist/index.d.ts.map +1 -0
- package/packages/shared-context/dist/index.js +7 -0
- package/packages/shared-context/dist/index.js.map +1 -0
- package/packages/shared-context/dist/shared-context.d.ts +12 -0
- package/packages/shared-context/dist/shared-context.d.ts.map +1 -0
- package/packages/shared-context/dist/shared-context.js +39 -0
- package/packages/shared-context/dist/shared-context.js.map +1 -0
- package/packages/shared-context/package.json +1 -1
- package/packages/skill-mcp-client/dist/client.d.ts +56 -0
- package/packages/skill-mcp-client/dist/client.d.ts.map +1 -0
- package/packages/skill-mcp-client/dist/client.js +101 -0
- package/packages/skill-mcp-client/dist/client.js.map +1 -0
- package/packages/skill-mcp-client/dist/errors.d.ts +44 -0
- package/packages/skill-mcp-client/dist/errors.d.ts.map +1 -0
- package/packages/skill-mcp-client/dist/errors.js +68 -0
- package/packages/skill-mcp-client/dist/errors.js.map +1 -0
- package/packages/skill-mcp-client/dist/index.d.ts +9 -0
- package/packages/skill-mcp-client/dist/index.d.ts.map +1 -0
- package/packages/skill-mcp-client/dist/index.js +9 -0
- package/packages/skill-mcp-client/dist/index.js.map +1 -0
- package/packages/skill-mcp-client/dist/types.d.ts +106 -0
- package/packages/skill-mcp-client/dist/types.d.ts.map +1 -0
- package/packages/skill-mcp-client/dist/types.js +14 -0
- package/packages/skill-mcp-client/dist/types.js.map +1 -0
- package/packages/skill-mcp-client/package.json +1 -1
- package/packages/skill-registry/package.json +1 -1
- package/packages/skills/package.json +1 -5
- package/packages/sprint-planner/package.json +1 -1
- package/packages/subscription-engine/package.json +1 -1
- package/packages/task-compiler/package.json +1 -1
- package/packages/telegram/package.json +1 -1
- package/packages/telegram/src/agent-messages.d.ts +28 -0
- package/packages/telegram/src/agent-messages.js +90 -0
- package/packages/telegram/src/bindings.d.ts +296 -0
- package/packages/telegram/src/bindings.js +1086 -0
- package/packages/telegram/src/bus.d.ts +759 -0
- package/packages/telegram/src/bus.js +2732 -0
- package/packages/telegram/src/commands.d.ts +761 -0
- package/packages/telegram/src/commands.js +2622 -0
- package/packages/telegram/src/config.d.ts +222 -0
- package/packages/telegram/src/config.js +844 -0
- package/packages/telegram/src/delivery.d.ts +161 -0
- package/packages/telegram/src/delivery.js +550 -0
- package/packages/telegram/src/extension.d.ts +7 -0
- package/packages/telegram/src/extension.js +2444 -0
- package/packages/telegram/src/inbound.d.ts +94 -0
- package/packages/telegram/src/inbound.js +478 -0
- package/packages/telegram/src/index.d.ts +6 -0
- package/packages/telegram/src/index.js +6 -0
- package/packages/telegram/src/keyboard.d.ts +21 -0
- package/packages/telegram/src/keyboard.js +37 -0
- package/packages/telegram/src/lifecycle.d.ts +210 -0
- package/packages/telegram/src/lifecycle.js +538 -0
- package/packages/telegram/src/pi.d.ts +76 -0
- package/packages/telegram/src/pi.js +130 -0
- package/packages/telegram/src/polling.d.ts +332 -0
- package/packages/telegram/src/polling.js +1219 -0
- package/packages/telegram/src/replies.d.ts +210 -0
- package/packages/telegram/src/replies.js +752 -0
- package/packages/telegram/src/routing.d.ts +388 -0
- package/packages/telegram/src/routing.js +7886 -0
- package/packages/telegram/src/runtime.d.ts +159 -0
- package/packages/telegram/src/runtime.js +351 -0
- package/packages/telegram/src/telegram-api.d.ts +564 -0
- package/packages/telegram/src/telegram-api.js +1332 -0
- package/packages/telegram/src/turns.d.ts +108 -0
- package/packages/telegram/src/turns.js +482 -0
- package/packages/telegram/src/updates.d.ts +1545 -0
- package/packages/telegram/src/updates.js +6420 -0
- package/packages/tencentdb-memory/package.json +1 -1
- package/packages/tencentdb-sync/package.json +1 -1
- package/packages/test-data-generator/package.json +1 -1
- package/packages/test-generator/package.json +1 -1
- package/packages/todo-bd-sync/dist/detector.d.ts +54 -0
- package/packages/todo-bd-sync/dist/detector.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/detector.js +132 -0
- package/packages/todo-bd-sync/dist/detector.js.map +1 -0
- package/packages/todo-bd-sync/dist/extension.d.ts +30 -0
- package/packages/todo-bd-sync/dist/extension.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/extension.js +35 -0
- package/packages/todo-bd-sync/dist/extension.js.map +1 -0
- package/packages/todo-bd-sync/dist/index.d.ts +87 -0
- package/packages/todo-bd-sync/dist/index.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/index.js +296 -0
- package/packages/todo-bd-sync/dist/index.js.map +1 -0
- package/packages/todo-bd-sync/dist/sync.d.ts +72 -0
- package/packages/todo-bd-sync/dist/sync.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/sync.js +290 -0
- package/packages/todo-bd-sync/dist/sync.js.map +1 -0
- package/packages/todo-bd-sync/dist/task-analyzer.d.ts +49 -0
- package/packages/todo-bd-sync/dist/task-analyzer.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/task-analyzer.js +240 -0
- package/packages/todo-bd-sync/dist/task-analyzer.js.map +1 -0
- package/packages/todo-bd-sync/dist/todo-reminder.d.ts +126 -0
- package/packages/todo-bd-sync/dist/todo-reminder.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/todo-reminder.js +329 -0
- package/packages/todo-bd-sync/dist/todo-reminder.js.map +1 -0
- package/packages/todo-bd-sync/dist/types.d.ts +65 -0
- package/packages/todo-bd-sync/dist/types.d.ts.map +1 -0
- package/packages/todo-bd-sync/dist/types.js +67 -0
- package/packages/todo-bd-sync/dist/types.js.map +1 -0
- package/packages/todo-bd-sync/package.json +1 -1
- package/packages/token-estimation/dist/index.d.ts +94 -0
- package/packages/token-estimation/dist/index.d.ts.map +1 -0
- package/packages/token-estimation/dist/index.js +115 -0
- package/packages/token-estimation/dist/index.js.map +1 -0
- package/packages/token-estimation/package.json +1 -1
- package/packages/token-optimizer/package.json +1 -1
- package/packages/trajectory/package.json +1 -1
- package/packages/tui/package.json +1 -1
- package/packages/types/dist/ai-providers.d.ts +36 -0
- package/packages/types/dist/ai-providers.d.ts.map +1 -0
- package/packages/types/dist/ai-providers.js +66 -0
- package/packages/types/dist/ai-providers.js.map +1 -0
- package/packages/types/dist/index.d.ts +12 -0
- package/packages/types/dist/index.d.ts.map +1 -0
- package/packages/types/dist/index.js +12 -0
- package/packages/types/dist/index.js.map +1 -0
- package/packages/types/package.json +5 -5
- package/packages/types/src/index.ts +12 -0
- package/packages/voice-api/package.json +1 -1
- package/packages/webmcp-tester/package.json +1 -1
- package/packages/wiki/package.json +1 -1
- package/packages/workflow-events/package.json +1 -1
- package/packages/workspace-scanner/package.json +1 -1
- package/packages/worktree/package.json +1 -1
- package/packages/worktree/worktree.ts +1 -1
- package/packages/write-review/package.json +1 -1
- package/renderer.ts +1 -1
- package/scripts/build-packages.ts +162 -0
- package/scripts/relay-client.ts +2 -2
- package/scripts/typecheck-packages.mjs +3 -3
- package/scripts/unified-webhook-server.ts +22 -10
- package/scripts/verify-package-contents.ts +345 -0
- package/scripts/ws-server.ts +1 -1
- package/tracker.ts +1 -1
- package/harness/browser-scrapers/base-browser-scraper.d.ts +0 -91
- package/harness/browser-scrapers/chrome-profile-manager.d.ts +0 -80
- package/harness/browser-scrapers/codex-browser-scraper.d.ts +0 -60
- package/harness/browser-scrapers/index.d.ts +0 -29
- package/harness/browser-scrapers/zai-browser-scraper.d.ts +0 -79
- package/harness/e2e/browser-scrapers/base-browser-scraper.d.ts +0 -92
- package/harness/e2e/browser-scrapers/chrome-profile-manager.d.ts +0 -81
- package/harness/e2e/browser-scrapers/codex-browser-scraper.d.ts +0 -61
- package/harness/e2e/browser-scrapers/index.d.ts +0 -30
- package/harness/e2e/browser-scrapers/zai-browser-scraper.d.ts +0 -80
- package/harness/langchain/agents.d.ts +0 -143
- package/harness/langchain/agents.test.d.ts +0 -2
- package/harness/langchain/checkpointer.d.ts +0 -48
- package/harness/langchain/checkpointer.test.d.ts +0 -8
- package/harness/langchain/cron-cli.d.ts +0 -12
- package/harness/langchain/daemon.d.ts +0 -161
- package/harness/langchain/daemon.test.d.ts +0 -11
- package/harness/langchain/file-tools.d.ts +0 -97
- package/harness/langchain/graph.d.ts +0 -706
- package/harness/langchain/model-router.d.ts +0 -63
- package/harness/langchain/model-router.test.d.ts +0 -2
- package/harness/langchain/models.d.ts +0 -72
- package/harness/langchain/ping-pong-middleware.d.ts +0 -28
- package/harness/langchain/ping-pong-middleware.test.d.ts +0 -2
- package/harness/langchain/run.d.ts +0 -15
- package/harness/langchain/scoreboard.test.d.ts +0 -13
- package/harness/langchain/status-line.d.ts +0 -91
- package/harness/langchain/status-line.test.d.ts +0 -8
- package/harness/langchain/surge.d.ts +0 -111
- package/harness/langchain/surge.test.d.ts +0 -10
- package/harness/langchain/widget.d.ts +0 -105
- package/harness/langchain/widget.test.d.ts +0 -8
- package/packages/autonomous-runtime/dist/worker.d.ts +0 -63
- package/packages/autonomous-runtime/dist/worker.js +0 -133
- package/packages/capability-registry/src/types.d.ts +0 -47
- package/packages/clipboard/dist/clipboard.d.ts +0 -11
- package/packages/clipboard/dist/clipboard.js +0 -40
- package/packages/clipboard/dist/index.d.ts +0 -2
- package/packages/clipboard/dist/index.js +0 -2
- package/packages/clipboard/dist/types.d.ts +0 -13
- package/packages/clipboard/dist/types.js +0 -5
- package/packages/context-discovery/dist/discover.d.ts +0 -3
- package/packages/context-discovery/dist/discover.js +0 -42
- package/packages/context-discovery/dist/discovery.d.ts +0 -28
- package/packages/context-discovery/dist/discovery.js +0 -21
- package/packages/context-discovery/dist/index.d.ts +0 -3
- package/packages/context-discovery/dist/index.js +0 -2
- package/packages/context-discovery/dist/types.d.ts +0 -16
- package/packages/context-discovery/dist/types.js +0 -2
- package/packages/event-bus/dist/bus.d.ts +0 -15
- package/packages/event-bus/dist/bus.js +0 -90
- package/packages/event-bus/dist/index.d.ts +0 -4
- package/packages/event-bus/dist/index.js +0 -3
- package/packages/event-bus/dist/test/bus.test.js +0 -52
- package/packages/event-bus/dist/types.d.ts +0 -27
- package/packages/event-bus/dist/types.js +0 -10
- package/packages/event-store/dist/index.d.ts +0 -3
- package/packages/event-store/dist/index.js +0 -2
- package/packages/event-store/dist/store.d.ts +0 -15
- package/packages/event-store/dist/store.js +0 -131
- package/packages/event-store/dist/test/store.test.js +0 -57
- package/packages/event-store/dist/types.d.ts +0 -48
- package/packages/event-store/dist/types.js +0 -5
- package/packages/event-store/src/types.d.ts +0 -48
- package/packages/file-copy-helper/dist/src/extension.js +0 -186
- package/packages/model-registry/src/types.d.ts +0 -63
- package/packages/notification/dist/src/adapters/email-adapter.d.ts +0 -17
- package/packages/notification/dist/src/adapters/email-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/adapters/email-adapter.js +0 -89
- package/packages/notification/dist/src/adapters/email-adapter.js.map +0 -1
- package/packages/notification/dist/src/adapters/line-adapter.d.ts +0 -17
- package/packages/notification/dist/src/adapters/line-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/adapters/line-adapter.js +0 -99
- package/packages/notification/dist/src/adapters/line-adapter.js.map +0 -1
- package/packages/notification/dist/src/adapters/ntfy-adapter.d.ts +0 -17
- package/packages/notification/dist/src/adapters/ntfy-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/adapters/ntfy-adapter.js +0 -84
- package/packages/notification/dist/src/adapters/ntfy-adapter.js.map +0 -1
- package/packages/notification/dist/src/adapters/telegram-adapter.d.ts +0 -56
- package/packages/notification/dist/src/adapters/telegram-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/adapters/telegram-adapter.js +0 -251
- package/packages/notification/dist/src/adapters/telegram-adapter.js.map +0 -1
- package/packages/notification/dist/src/adapters/webhook-adapter.d.ts +0 -15
- package/packages/notification/dist/src/adapters/webhook-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/adapters/webhook-adapter.js +0 -64
- package/packages/notification/dist/src/adapters/webhook-adapter.js.map +0 -1
- package/packages/notification/dist/src/base-adapter.d.ts +0 -36
- package/packages/notification/dist/src/base-adapter.d.ts.map +0 -1
- package/packages/notification/dist/src/base-adapter.js +0 -39
- package/packages/notification/dist/src/base-adapter.js.map +0 -1
- package/packages/notification/dist/src/index.d.ts +0 -12
- package/packages/notification/dist/src/index.d.ts.map +0 -1
- package/packages/notification/dist/src/index.js +0 -12
- package/packages/notification/dist/src/index.js.map +0 -1
- package/packages/notification/dist/src/notification-center.d.ts +0 -89
- package/packages/notification/dist/src/notification-center.d.ts.map +0 -1
- package/packages/notification/dist/src/notification-center.js +0 -356
- package/packages/notification/dist/src/notification-center.js.map +0 -1
- package/packages/notification/dist/src/notification-policy.d.ts +0 -66
- package/packages/notification/dist/src/notification-policy.d.ts.map +0 -1
- package/packages/notification/dist/src/notification-policy.js +0 -153
- package/packages/notification/dist/src/notification-policy.js.map +0 -1
- package/packages/notification/dist/src/telegram-webhook-handler.d.ts +0 -86
- package/packages/notification/dist/src/telegram-webhook-handler.d.ts.map +0 -1
- package/packages/notification/dist/src/telegram-webhook-handler.js +0 -149
- package/packages/notification/dist/src/telegram-webhook-handler.js.map +0 -1
- package/packages/notification/dist/src/types.d.ts +0 -106
- package/packages/notification/dist/src/types.d.ts.map +0 -1
- package/packages/notification/dist/src/types.js +0 -7
- package/packages/notification/dist/src/types.js.map +0 -1
- package/packages/projection-engine/dist/engine.d.ts +0 -61
- package/packages/projection-engine/dist/engine.js +0 -76
- package/packages/projection-engine/dist/index.d.ts +0 -2
- package/packages/projection-engine/dist/index.js +0 -2
- package/packages/projection-engine/dist/project.d.ts +0 -3
- package/packages/projection-engine/dist/project.js +0 -24
- package/packages/projection-engine/dist/types.d.ts +0 -55
- package/packages/projection-engine/dist/types.js +0 -5
- package/packages/projection-engine/src/types.d.ts +0 -55
- package/packages/provider-adapter-sdk/dist/src/builder.d.ts +0 -140
- package/packages/provider-adapter-sdk/dist/src/builder.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/builder.js +0 -332
- package/packages/provider-adapter-sdk/dist/src/builder.js.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/errors.d.ts +0 -71
- package/packages/provider-adapter-sdk/dist/src/errors.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/errors.js +0 -111
- package/packages/provider-adapter-sdk/dist/src/errors.js.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/index.d.ts +0 -15
- package/packages/provider-adapter-sdk/dist/src/index.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/index.js +0 -19
- package/packages/provider-adapter-sdk/dist/src/index.js.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/registry.d.ts +0 -108
- package/packages/provider-adapter-sdk/dist/src/registry.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/registry.js +0 -301
- package/packages/provider-adapter-sdk/dist/src/registry.js.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/tester.d.ts +0 -71
- package/packages/provider-adapter-sdk/dist/src/tester.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/tester.js +0 -392
- package/packages/provider-adapter-sdk/dist/src/tester.js.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/types.d.ts +0 -182
- package/packages/provider-adapter-sdk/dist/src/types.d.ts.map +0 -1
- package/packages/provider-adapter-sdk/dist/src/types.js +0 -11
- package/packages/provider-adapter-sdk/dist/src/types.js.map +0 -1
- package/packages/provider-router/dist/capability-registry/src/types.d.ts +0 -47
- package/packages/provider-router/dist/capability-registry/src/types.d.ts.map +0 -1
- package/packages/provider-router/dist/capability-registry/src/types.js +0 -10
- package/packages/provider-router/dist/capability-registry/src/types.js.map +0 -1
- package/packages/provider-router/dist/provider-router/src/index.d.ts +0 -23
- package/packages/provider-router/dist/provider-router/src/index.d.ts.map +0 -1
- package/packages/provider-router/dist/provider-router/src/index.js +0 -25
- package/packages/provider-router/dist/provider-router/src/index.js.map +0 -1
- package/packages/provider-router/dist/provider-router/src/policy.d.ts +0 -10
- package/packages/provider-router/dist/provider-router/src/policy.d.ts.map +0 -1
- package/packages/provider-router/dist/provider-router/src/policy.js +0 -45
- package/packages/provider-router/dist/provider-router/src/policy.js.map +0 -1
- package/packages/provider-router/dist/provider-router/src/provider-router.d.ts +0 -56
- package/packages/provider-router/dist/provider-router/src/provider-router.d.ts.map +0 -1
- package/packages/provider-router/dist/provider-router/src/provider-router.js +0 -222
- package/packages/provider-router/dist/provider-router/src/provider-router.js.map +0 -1
- package/packages/provider-router/dist/provider-router/src/strategies.d.ts +0 -19
- package/packages/provider-router/dist/provider-router/src/strategies.d.ts.map +0 -1
- package/packages/provider-router/dist/provider-router/src/strategies.js +0 -110
- package/packages/provider-router/dist/provider-router/src/strategies.js.map +0 -1
- package/packages/provider-router/dist/provider-router/src/types.d.ts +0 -91
- package/packages/provider-router/dist/provider-router/src/types.d.ts.map +0 -1
- package/packages/provider-router/dist/provider-router/src/types.js +0 -10
- package/packages/provider-router/dist/provider-router/src/types.js.map +0 -1
- package/packages/provider-router/dist/src/index.d.ts +0 -23
- package/packages/provider-router/dist/src/index.d.ts.map +0 -1
- package/packages/provider-router/dist/src/index.js +0 -25
- package/packages/provider-router/dist/src/index.js.map +0 -1
- package/packages/provider-router/dist/src/policy.d.ts +0 -10
- package/packages/provider-router/dist/src/policy.d.ts.map +0 -1
- package/packages/provider-router/dist/src/policy.js +0 -45
- package/packages/provider-router/dist/src/policy.js.map +0 -1
- package/packages/provider-router/dist/src/provider-router.d.ts +0 -56
- package/packages/provider-router/dist/src/provider-router.d.ts.map +0 -1
- package/packages/provider-router/dist/src/provider-router.js +0 -222
- package/packages/provider-router/dist/src/provider-router.js.map +0 -1
- package/packages/provider-router/dist/src/strategies.d.ts +0 -19
- package/packages/provider-router/dist/src/strategies.d.ts.map +0 -1
- package/packages/provider-router/dist/src/strategies.js +0 -110
- package/packages/provider-router/dist/src/strategies.js.map +0 -1
- package/packages/provider-router/dist/src/types.d.ts +0 -91
- package/packages/provider-router/dist/src/types.d.ts.map +0 -1
- package/packages/provider-router/dist/src/types.js +0 -10
- package/packages/provider-router/dist/src/types.js.map +0 -1
- package/packages/provider-router/dist/types/src/runtime-types.d.ts +0 -412
- package/packages/provider-router/dist/types/src/runtime-types.d.ts.map +0 -1
- package/packages/provider-router/dist/types/src/runtime-types.js +0 -2
- package/packages/provider-router/dist/types/src/runtime-types.js.map +0 -1
- package/packages/session-api/dist/api.d.ts +0 -83
- package/packages/session-api/dist/api.js +0 -35
- package/packages/session-api/dist/index.d.ts +0 -2
- package/packages/session-api/dist/index.js +0 -2
- package/packages/session-api/dist/types.d.ts +0 -22
- package/packages/session-api/dist/types.js +0 -5
- package/packages/session-export/dist/exporter.d.ts +0 -28
- package/packages/session-export/dist/exporter.js +0 -38
- package/packages/session-export/dist/index.d.ts +0 -2
- package/packages/session-export/dist/index.js +0 -2
- package/packages/session-export/dist/types.d.ts +0 -20
- package/packages/session-export/dist/types.js +0 -5
- package/packages/subscription-engine/dist/engine.d.ts +0 -13
- package/packages/subscription-engine/dist/engine.js +0 -40
- package/packages/subscription-engine/dist/index.d.ts +0 -2
- package/packages/subscription-engine/dist/index.js +0 -2
- package/packages/subscription-engine/dist/subscriptions.d.ts +0 -19
- package/packages/subscription-engine/dist/subscriptions.js +0 -32
- package/packages/subscription-engine/dist/types.d.ts +0 -24
- package/packages/subscription-engine/dist/types.js +0 -5
- package/packages/trajectory/test/store.test.d.ts +0 -2
- package/packages/workflow-events/dist/events.d.ts +0 -38
- package/packages/workflow-events/dist/events.js +0 -46
- package/packages/workflow-events/dist/index.d.ts +0 -2
- package/packages/workflow-events/dist/index.js +0 -2
- package/packages/workflow-events/dist/pipeline.d.ts +0 -21
- package/packages/workflow-events/dist/pipeline.js +0 -27
- package/packages/workflow-events/dist/types.d.ts +0 -110
- package/packages/workflow-events/dist/types.js +0 -5
- package/packages/workflow-events/src/types.d.ts +0 -110
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Event Store — JSONL-backed immutable event store
|
|
3
|
-
*/
|
|
4
|
-
import { appendFileSync, existsSync, mkdirSync, readFileSync, statSync, createReadStream } from "node:fs";
|
|
5
|
-
import { join, dirname } from "node:path";
|
|
6
|
-
import { homedir } from "node:os";
|
|
7
|
-
import { randomUUID } from "node:crypto";
|
|
8
|
-
export class EventStore {
|
|
9
|
-
sessionsDir;
|
|
10
|
-
constructor(opts = {}) {
|
|
11
|
-
this.sessionsDir = opts.sessionsDir ?? join(homedir(), ".pi", "sessions");
|
|
12
|
-
if (!existsSync(this.sessionsDir)) {
|
|
13
|
-
mkdirSync(this.sessionsDir, { recursive: true });
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
getPath(sessionId) {
|
|
17
|
-
return join(this.sessionsDir, `${sessionId}.jsonl`);
|
|
18
|
-
}
|
|
19
|
-
async append(event) {
|
|
20
|
-
const id = randomUUID();
|
|
21
|
-
const timestamp = new Date().toISOString();
|
|
22
|
-
const full = { ...event, id, timestamp };
|
|
23
|
-
const line = JSON.stringify(full) + "\n";
|
|
24
|
-
const path = this.getPath(full.sessionId);
|
|
25
|
-
const dir = dirname(path);
|
|
26
|
-
if (!existsSync(dir))
|
|
27
|
-
mkdirSync(dir, { recursive: true });
|
|
28
|
-
appendFileSync(path, line, "utf8");
|
|
29
|
-
return { id, timestamp, bytesWritten: Buffer.byteLength(line, "utf8") };
|
|
30
|
-
}
|
|
31
|
-
async read(opts = {}) {
|
|
32
|
-
const events = [];
|
|
33
|
-
const limit = opts.limit ?? Infinity;
|
|
34
|
-
const offset = opts.offset ?? 0;
|
|
35
|
-
let skipped = 0;
|
|
36
|
-
const sessionIds = opts.sessionId ? [opts.sessionId] : this.list();
|
|
37
|
-
for (const sid of sessionIds) {
|
|
38
|
-
const path = this.getPath(sid);
|
|
39
|
-
if (!existsSync(path))
|
|
40
|
-
continue;
|
|
41
|
-
const stream = createReadStream(path, { encoding: "utf8", highWaterMark: 64 * 1024 });
|
|
42
|
-
let buffer = "";
|
|
43
|
-
for await (const chunk of stream) {
|
|
44
|
-
buffer += chunk;
|
|
45
|
-
const lines = buffer.split("\n");
|
|
46
|
-
buffer = lines.pop() ?? "";
|
|
47
|
-
for (const line of lines) {
|
|
48
|
-
if (!line.trim())
|
|
49
|
-
continue;
|
|
50
|
-
try {
|
|
51
|
-
const evt = JSON.parse(line);
|
|
52
|
-
if (opts.since && evt.timestamp <= opts.since)
|
|
53
|
-
continue;
|
|
54
|
-
if (opts.types && !opts.types.includes(evt.type))
|
|
55
|
-
continue;
|
|
56
|
-
if (skipped < offset) {
|
|
57
|
-
skipped++;
|
|
58
|
-
continue;
|
|
59
|
-
}
|
|
60
|
-
events.push(evt);
|
|
61
|
-
if (events.length >= limit) {
|
|
62
|
-
stream.destroy();
|
|
63
|
-
return events;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
catch {
|
|
67
|
-
// skip corrupt lines
|
|
68
|
-
}
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
return events;
|
|
73
|
-
}
|
|
74
|
-
async search(opts) {
|
|
75
|
-
const events = [];
|
|
76
|
-
const limit = opts.limit ?? 100;
|
|
77
|
-
const query = opts.query.toLowerCase();
|
|
78
|
-
const sessionIds = opts.sessionId ? [opts.sessionId] : this.list();
|
|
79
|
-
for (const sid of sessionIds) {
|
|
80
|
-
const path = this.getPath(sid);
|
|
81
|
-
if (!existsSync(path))
|
|
82
|
-
continue;
|
|
83
|
-
const stream = createReadStream(path, { encoding: "utf8" });
|
|
84
|
-
for await (const chunk of stream) {
|
|
85
|
-
const lines = String(chunk).split("\n");
|
|
86
|
-
for (const line of lines) {
|
|
87
|
-
if (!line.trim())
|
|
88
|
-
continue;
|
|
89
|
-
try {
|
|
90
|
-
const evt = JSON.parse(line);
|
|
91
|
-
if (evt.content?.toLowerCase().includes(query)) {
|
|
92
|
-
events.push(evt);
|
|
93
|
-
if (events.length >= limit) {
|
|
94
|
-
stream.destroy();
|
|
95
|
-
return events;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
catch {
|
|
100
|
-
// skip
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
return events;
|
|
106
|
-
}
|
|
107
|
-
stats(sessionId) {
|
|
108
|
-
const path = this.getPath(sessionId);
|
|
109
|
-
if (!existsSync(path)) {
|
|
110
|
-
return { sessionId, totalEvents: 0, sizeBytes: 0, lastEventAt: null };
|
|
111
|
-
}
|
|
112
|
-
const st = statSync(path);
|
|
113
|
-
const events = readFileSync(path, "utf8").split("\n").filter(Boolean);
|
|
114
|
-
const last = events.length > 0
|
|
115
|
-
? JSON.parse(events[events.length - 1]).timestamp
|
|
116
|
-
: null;
|
|
117
|
-
return { sessionId, totalEvents: events.length, sizeBytes: st.size, lastEventAt: last };
|
|
118
|
-
}
|
|
119
|
-
list() {
|
|
120
|
-
try {
|
|
121
|
-
const { readdirSync } = require("node:fs");
|
|
122
|
-
return readdirSync(this.sessionsDir)
|
|
123
|
-
.filter((f) => f.endsWith(".jsonl"))
|
|
124
|
-
.map((f) => f.replace(".jsonl", ""));
|
|
125
|
-
}
|
|
126
|
-
catch {
|
|
127
|
-
return [];
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
//# sourceMappingURL=store.js.map
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { describe, it, beforeEach, afterEach } from "node:test";
|
|
2
|
-
import { equal } from "node:assert";
|
|
3
|
-
import { join } from "node:path";
|
|
4
|
-
import { mkdirSync, rmSync } from "node:fs";
|
|
5
|
-
import { tmpdir } from "node:os";
|
|
6
|
-
import { EventStore } from "../src/store.js";
|
|
7
|
-
describe("EventStore", () => {
|
|
8
|
-
const dir = join(tmpdir(), "event-store-test-" + Date.now());
|
|
9
|
-
beforeEach(() => mkdirSync(dir, { recursive: true }));
|
|
10
|
-
afterEach(() => rmSync(dir, { recursive: true, force: true }));
|
|
11
|
-
const store = new EventStore({ sessionsDir: dir });
|
|
12
|
-
it("append generates id and timestamp", async () => {
|
|
13
|
-
const result = await store.append({
|
|
14
|
-
sessionId: "test-1",
|
|
15
|
-
type: "message",
|
|
16
|
-
role: "user",
|
|
17
|
-
content: "hello",
|
|
18
|
-
});
|
|
19
|
-
equal(typeof result.id, "string");
|
|
20
|
-
equal(result.id.length > 0, true);
|
|
21
|
-
equal(typeof result.timestamp, "string");
|
|
22
|
-
});
|
|
23
|
-
it("read returns appended events", async () => {
|
|
24
|
-
await store.append({ sessionId: "s1", type: "message", role: "user", content: "hello" });
|
|
25
|
-
await store.append({ sessionId: "s1", type: "message", role: "assistant", content: "hi" });
|
|
26
|
-
const events = await store.read({ sessionId: "s1" });
|
|
27
|
-
equal(events.length, 2);
|
|
28
|
-
equal(events[0].content, "hello");
|
|
29
|
-
});
|
|
30
|
-
it("read filters by type", async () => {
|
|
31
|
-
await store.append({ sessionId: "s2", type: "message", role: "user", content: "a" });
|
|
32
|
-
await store.append({ sessionId: "s2", type: "tool_start", tool: "bash", content: "" });
|
|
33
|
-
const events = await store.read({ sessionId: "s2", types: ["message"] });
|
|
34
|
-
equal(events.length, 1);
|
|
35
|
-
});
|
|
36
|
-
it("search finds matching content", async () => {
|
|
37
|
-
await store.append({ sessionId: "s3", type: "message", role: "user", content: "fix the login bug" });
|
|
38
|
-
await store.append({ sessionId: "s3", type: "message", role: "user", content: "add dark mode" });
|
|
39
|
-
const events = await store.search({ query: "login" });
|
|
40
|
-
equal(events.length >= 1, true);
|
|
41
|
-
equal(events[0].content?.includes("login"), true);
|
|
42
|
-
});
|
|
43
|
-
it("stats returns counts", async () => {
|
|
44
|
-
await store.append({ sessionId: "s4", type: "message", role: "user", content: "a" });
|
|
45
|
-
await store.append({ sessionId: "s4", type: "message", role: "user", content: "b" });
|
|
46
|
-
const st = store.stats("s4");
|
|
47
|
-
equal(st.totalEvents, 2);
|
|
48
|
-
equal(st.sizeBytes > 0, true);
|
|
49
|
-
});
|
|
50
|
-
it("list returns session IDs", async () => {
|
|
51
|
-
await store.append({ sessionId: "alpha", type: "message", role: "user", content: "x" });
|
|
52
|
-
await store.append({ sessionId: "beta", type: "message", role: "user", content: "y" });
|
|
53
|
-
const sessions = store.list();
|
|
54
|
-
equal(sessions.includes("alpha"), true);
|
|
55
|
-
equal(sessions.includes("beta"), true);
|
|
56
|
-
});
|
|
57
|
-
});
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Event Store — Types
|
|
3
|
-
*/
|
|
4
|
-
export type SessionEventType = "message" | "tool_start" | "tool_end" | "tool_error" | "assistant_start" | "assistant_end" | "session_start" | "session_end" | "checkpoint" | "compact";
|
|
5
|
-
export interface EventMetadata {
|
|
6
|
-
model?: string;
|
|
7
|
-
provider?: string;
|
|
8
|
-
tokens?: number;
|
|
9
|
-
durationMs?: number;
|
|
10
|
-
}
|
|
11
|
-
export interface SessionEvent {
|
|
12
|
-
id: string;
|
|
13
|
-
sessionId: string;
|
|
14
|
-
timestamp: string;
|
|
15
|
-
type: SessionEventType;
|
|
16
|
-
role?: "user" | "assistant" | "system";
|
|
17
|
-
content?: string;
|
|
18
|
-
tool?: string;
|
|
19
|
-
error?: string;
|
|
20
|
-
metadata?: EventMetadata;
|
|
21
|
-
}
|
|
22
|
-
export interface StoreOptions {
|
|
23
|
-
sessionsDir?: string;
|
|
24
|
-
}
|
|
25
|
-
export interface StoreStats {
|
|
26
|
-
sessionId: string;
|
|
27
|
-
totalEvents: number;
|
|
28
|
-
sizeBytes: number;
|
|
29
|
-
lastEventAt: string | null;
|
|
30
|
-
}
|
|
31
|
-
export interface WriteResult {
|
|
32
|
-
id: string;
|
|
33
|
-
timestamp: string;
|
|
34
|
-
bytesWritten: number;
|
|
35
|
-
}
|
|
36
|
-
export interface ReadOptions {
|
|
37
|
-
sessionId?: string;
|
|
38
|
-
since?: string;
|
|
39
|
-
types?: SessionEventType[];
|
|
40
|
-
limit?: number;
|
|
41
|
-
offset?: number;
|
|
42
|
-
}
|
|
43
|
-
export interface SearchOptions {
|
|
44
|
-
sessionId?: string;
|
|
45
|
-
query: string;
|
|
46
|
-
limit?: number;
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Event Store — Types
|
|
3
|
-
*/
|
|
4
|
-
export type SessionEventType = "message" | "tool_start" | "tool_end" | "tool_error" | "assistant_start" | "assistant_end" | "session_start" | "session_end" | "checkpoint" | "compact";
|
|
5
|
-
export interface EventMetadata {
|
|
6
|
-
model?: string;
|
|
7
|
-
provider?: string;
|
|
8
|
-
tokens?: number;
|
|
9
|
-
durationMs?: number;
|
|
10
|
-
}
|
|
11
|
-
export interface SessionEvent {
|
|
12
|
-
id: string;
|
|
13
|
-
sessionId: string;
|
|
14
|
-
timestamp: string;
|
|
15
|
-
type: SessionEventType;
|
|
16
|
-
role?: "user" | "assistant" | "system";
|
|
17
|
-
content?: string;
|
|
18
|
-
tool?: string;
|
|
19
|
-
error?: string;
|
|
20
|
-
metadata?: EventMetadata;
|
|
21
|
-
}
|
|
22
|
-
export interface StoreOptions {
|
|
23
|
-
sessionsDir?: string;
|
|
24
|
-
}
|
|
25
|
-
export interface StoreStats {
|
|
26
|
-
sessionId: string;
|
|
27
|
-
totalEvents: number;
|
|
28
|
-
sizeBytes: number;
|
|
29
|
-
lastEventAt: string | null;
|
|
30
|
-
}
|
|
31
|
-
export interface WriteResult {
|
|
32
|
-
id: string;
|
|
33
|
-
timestamp: string;
|
|
34
|
-
bytesWritten: number;
|
|
35
|
-
}
|
|
36
|
-
export interface ReadOptions {
|
|
37
|
-
sessionId?: string;
|
|
38
|
-
since?: string;
|
|
39
|
-
types?: SessionEventType[];
|
|
40
|
-
limit?: number;
|
|
41
|
-
offset?: number;
|
|
42
|
-
}
|
|
43
|
-
export interface SearchOptions {
|
|
44
|
-
sessionId?: string;
|
|
45
|
-
query: string;
|
|
46
|
-
limit?: number;
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
// src/extension.ts
|
|
2
|
-
import * as fs from "fs";
|
|
3
|
-
var DEBUG_LOG = "/tmp/file-copy-helper-debug.log";
|
|
4
|
-
function debugLog(label, data) {
|
|
5
|
-
const timestamp = new Date().toISOString();
|
|
6
|
-
const entry = `[${timestamp}] ${label}: ${JSON.stringify(data, null, 2)}
|
|
7
|
-
`;
|
|
8
|
-
fs.appendFileSync(DEBUG_LOG, entry);
|
|
9
|
-
}
|
|
10
|
-
var COPY_KEYWORDS = ["mimic", "replicate", "clone"];
|
|
11
|
-
var COPY_DEST_CONTEXT = ["to ", "into ", "/dest/", "/target/", "over to"];
|
|
12
|
-
var COPY_SOURCE_CONTEXT = ["from ", "source", "/source/", "orig"];
|
|
13
|
-
var IMPORT_ERROR_TRIGGERS = [
|
|
14
|
-
"cannot find module",
|
|
15
|
-
"cannot resolve module",
|
|
16
|
-
"module not found",
|
|
17
|
-
"missing import"
|
|
18
|
-
];
|
|
19
|
-
var COPY_CONTEXT = [
|
|
20
|
-
"sudo cp",
|
|
21
|
-
" cp ",
|
|
22
|
-
" cp\t",
|
|
23
|
-
"\bcps+-r",
|
|
24
|
-
"\bmimic\b",
|
|
25
|
-
"\bclone\b",
|
|
26
|
-
"\breplicate\b",
|
|
27
|
-
"\bdeploy\b"
|
|
28
|
-
];
|
|
29
|
-
var COPY_RULE = `
|
|
30
|
-
## COPY FILES DIRECTLY (CRITICAL)
|
|
31
|
-
|
|
32
|
-
When asked to mimic, copy, clone, or replicate files:
|
|
33
|
-
|
|
34
|
-
1. **DO NOT read the source files** - just copy them directly
|
|
35
|
-
2. **Run \`sudo cp\` immediately** - no reading needed
|
|
36
|
-
3. **If files have different owners**, use sudo
|
|
37
|
-
|
|
38
|
-
Examples:
|
|
39
|
-
\`\`\`bash
|
|
40
|
-
# Copy single file
|
|
41
|
-
sudo cp /source/file.ts /dest/file.ts
|
|
42
|
-
|
|
43
|
-
# Copy entire folder
|
|
44
|
-
sudo cp -r /source/folder/ /dest/folder/
|
|
45
|
-
|
|
46
|
-
# Copy matching pattern
|
|
47
|
-
sudo cp /source/*.tsx /dest/
|
|
48
|
-
\`\`\`
|
|
49
|
-
|
|
50
|
-
**STOP**: Do NOT use \`read\`, \`expand\`, or \`cat\` on source files. Just copy.
|
|
51
|
-
|
|
52
|
-
**Why**: Reading wastes time. The source files are complete - copying preserves everything exactly.
|
|
53
|
-
`;
|
|
54
|
-
var IMPORT_ERROR_RULE = `
|
|
55
|
-
## IMPORT ERRORS? COPY THOSE FILES TOO!
|
|
56
|
-
|
|
57
|
-
When you see import/module errors after copying a file:
|
|
58
|
-
|
|
59
|
-
1. **STOP fixing imports one by one**
|
|
60
|
-
2. **STOP rolling back**
|
|
61
|
-
3. **LIST all missing import files** for the user
|
|
62
|
-
4. **Ask user which to copy**, then copy them via sudo cp
|
|
63
|
-
|
|
64
|
-
Example:
|
|
65
|
-
\`\`\`bash
|
|
66
|
-
# If error shows missing:
|
|
67
|
-
# - @repo/auth/server
|
|
68
|
-
# - @repo/design-system/components/ui/sidebar
|
|
69
|
-
# - ./components/notifications-provider
|
|
70
|
-
|
|
71
|
-
# Then copy these files the same way:
|
|
72
|
-
sudo cp /source/path/@repo/auth/server.ts /dest/path/@repo/auth/server.ts
|
|
73
|
-
sudo cp -r /source/path/@repo/design-system/components/ui/sidebar /dest/path/@repo/design-system/components/ui/sidebar
|
|
74
|
-
sudo cp /source/path/components/notifications-provider.tsx /dest/path/components/notifications-provider.tsx
|
|
75
|
-
\`\`\`
|
|
76
|
-
|
|
77
|
-
**NEVER fix imports one by one** - copy the missing files instead!
|
|
78
|
-
**NEVER roll back** - keep the copied file and copy its dependencies!
|
|
79
|
-
`;
|
|
80
|
-
function shouldInjectCopyRule(text) {
|
|
81
|
-
const lower = text.toLowerCase();
|
|
82
|
-
const hasIntent = COPY_KEYWORDS.some((keyword) => lower.includes(keyword));
|
|
83
|
-
if (!hasIntent) {
|
|
84
|
-
return {
|
|
85
|
-
triggered: false,
|
|
86
|
-
reason: `No intent keyword found. Keywords: ${COPY_KEYWORDS.join(", ")}`
|
|
87
|
-
};
|
|
88
|
-
}
|
|
89
|
-
const hasDest = COPY_DEST_CONTEXT.some((ctx) => lower.includes(ctx));
|
|
90
|
-
if (!hasDest) {
|
|
91
|
-
return {
|
|
92
|
-
triggered: false,
|
|
93
|
-
reason: `No destination context found. Dest contexts: ${COPY_DEST_CONTEXT.join(", ")}`
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
const hasSource = COPY_SOURCE_CONTEXT.some((ctx) => lower.includes(ctx));
|
|
97
|
-
if (!hasSource) {
|
|
98
|
-
return {
|
|
99
|
-
triggered: false,
|
|
100
|
-
reason: `No source context found. Source contexts: ${COPY_SOURCE_CONTEXT.join(", ")}`
|
|
101
|
-
};
|
|
102
|
-
}
|
|
103
|
-
return {
|
|
104
|
-
triggered: true,
|
|
105
|
-
reason: `All conditions met: hasIntent=${hasIntent}, hasDest=${hasDest}, hasSource=${hasSource}`
|
|
106
|
-
};
|
|
107
|
-
}
|
|
108
|
-
function shouldInjectImportErrorRule(text) {
|
|
109
|
-
const lower = text.toLowerCase();
|
|
110
|
-
const hasImportError = IMPORT_ERROR_TRIGGERS.some((t) => lower.includes(t));
|
|
111
|
-
if (!hasImportError) {
|
|
112
|
-
return { triggered: false, reason: "No import error triggers found" };
|
|
113
|
-
}
|
|
114
|
-
const hasCopyContext = COPY_CONTEXT.some((ctx) => lower.includes(ctx));
|
|
115
|
-
if (!hasCopyContext) {
|
|
116
|
-
return { triggered: false, reason: "No copy/deploy intent found" };
|
|
117
|
-
}
|
|
118
|
-
return { triggered: true, reason: "Has import error + copy intent" };
|
|
119
|
-
}
|
|
120
|
-
function registerFileCopyHelper(pi) {
|
|
121
|
-
fs.writeFileSync(DEBUG_LOG, `[${new Date().toISOString()}] === DEBUG SESSION STARTED ===
|
|
122
|
-
`);
|
|
123
|
-
pi.on("input", (event) => {
|
|
124
|
-
debugLog("INPUT_EVENT", {
|
|
125
|
-
source: event.source,
|
|
126
|
-
textLength: event.text?.length,
|
|
127
|
-
textPreview: event.text?.substring(0, 200),
|
|
128
|
-
fullText: event.text
|
|
129
|
-
});
|
|
130
|
-
if (event.source !== "interactive") {
|
|
131
|
-
debugLog("SKIP", "not interactive input - skipping");
|
|
132
|
-
return;
|
|
133
|
-
}
|
|
134
|
-
const text = event.text.trim();
|
|
135
|
-
debugLog("PROCESSING_TEXT", {
|
|
136
|
-
text,
|
|
137
|
-
length: text.length,
|
|
138
|
-
hasMinLength: text.length >= 10
|
|
139
|
-
});
|
|
140
|
-
if (!text || text.length < 10) {
|
|
141
|
-
debugLog("SKIP", "text too short (< 10 chars)");
|
|
142
|
-
return;
|
|
143
|
-
}
|
|
144
|
-
const copyCheck = shouldInjectCopyRule(text);
|
|
145
|
-
debugLog("COPY_RULE_CHECK", {
|
|
146
|
-
triggered: copyCheck.triggered,
|
|
147
|
-
reason: copyCheck.reason,
|
|
148
|
-
matchingKeywords: COPY_KEYWORDS.filter((k) => text.toLowerCase().includes(k)),
|
|
149
|
-
matchingDest: COPY_DEST_CONTEXT.filter((ctx) => text.toLowerCase().includes(ctx)),
|
|
150
|
-
matchingSource: COPY_SOURCE_CONTEXT.filter((ctx) => text.toLowerCase().includes(ctx))
|
|
151
|
-
});
|
|
152
|
-
if (copyCheck.triggered) {
|
|
153
|
-
debugLog("INJECT", { rule: "COPY_RULE", reason: copyCheck.reason });
|
|
154
|
-
return {
|
|
155
|
-
action: "transform",
|
|
156
|
-
text: text + COPY_RULE
|
|
157
|
-
};
|
|
158
|
-
}
|
|
159
|
-
const importCheck = shouldInjectImportErrorRule(text);
|
|
160
|
-
debugLog("IMPORT_ERROR_CHECK", {
|
|
161
|
-
triggered: importCheck.triggered,
|
|
162
|
-
reason: importCheck.reason,
|
|
163
|
-
hasImportError: IMPORT_ERROR_TRIGGERS.some((t) => text.toLowerCase().includes(t)),
|
|
164
|
-
hasCopyContext: COPY_CONTEXT.some((ctx) => text.toLowerCase().includes(ctx))
|
|
165
|
-
});
|
|
166
|
-
if (importCheck.triggered) {
|
|
167
|
-
debugLog("INJECT", {
|
|
168
|
-
rule: "IMPORT_ERROR_RULE",
|
|
169
|
-
reason: importCheck.reason
|
|
170
|
-
});
|
|
171
|
-
return {
|
|
172
|
-
action: "transform",
|
|
173
|
-
text: text + IMPORT_ERROR_RULE
|
|
174
|
-
};
|
|
175
|
-
}
|
|
176
|
-
debugLog("NO_INJECTION", "no rule matched - passing through");
|
|
177
|
-
return;
|
|
178
|
-
});
|
|
179
|
-
}
|
|
180
|
-
function fileCopyHelperExtension(pi) {
|
|
181
|
-
registerFileCopyHelper(pi);
|
|
182
|
-
}
|
|
183
|
-
export {
|
|
184
|
-
registerFileCopyHelper,
|
|
185
|
-
fileCopyHelperExtension as default
|
|
186
|
-
};
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Model Registry Types (RFC-0053)
|
|
3
|
-
*/
|
|
4
|
-
export type Currency = "USD" | "THB";
|
|
5
|
-
export interface Pricing {
|
|
6
|
-
currency: Currency;
|
|
7
|
-
inputPer1M: number;
|
|
8
|
-
outputPer1M: number;
|
|
9
|
-
batchInputPer1M?: number;
|
|
10
|
-
cacheReadPer1M?: number;
|
|
11
|
-
cacheWritePer1M?: number;
|
|
12
|
-
}
|
|
13
|
-
export type ModelStatus = "active" | "deprecated" | "disabled";
|
|
14
|
-
export interface ModelInfo {
|
|
15
|
-
id: string;
|
|
16
|
-
providerId: string;
|
|
17
|
-
name: string;
|
|
18
|
-
version?: string;
|
|
19
|
-
contextWindow: number;
|
|
20
|
-
maxOutputTokens: number;
|
|
21
|
-
pricing: Pricing;
|
|
22
|
-
capabilities: string[];
|
|
23
|
-
aliases: string[];
|
|
24
|
-
status: ModelStatus;
|
|
25
|
-
releasedAt?: string;
|
|
26
|
-
deprecatedAt?: string;
|
|
27
|
-
}
|
|
28
|
-
export interface ModelFilters {
|
|
29
|
-
providerId?: string;
|
|
30
|
-
minContextWindow?: number;
|
|
31
|
-
maxCostPer1M?: number;
|
|
32
|
-
capabilities?: string[];
|
|
33
|
-
status?: ModelStatus;
|
|
34
|
-
}
|
|
35
|
-
export interface ModelRegistry {
|
|
36
|
-
register(model: ModelInfo): void;
|
|
37
|
-
unregister(providerId: string, modelId: string): void;
|
|
38
|
-
get(providerId: string, modelId: string): ModelInfo | undefined;
|
|
39
|
-
getByAlias(alias: string): ModelInfo | undefined;
|
|
40
|
-
list(providerId?: string): ModelInfo[];
|
|
41
|
-
listActive(): ModelInfo[];
|
|
42
|
-
find(filters: ModelFilters): ModelInfo[];
|
|
43
|
-
updateStatus(providerId: string, modelId: string, status: ModelStatus): void;
|
|
44
|
-
}
|
|
45
|
-
export type ModelRegistryEvent = {
|
|
46
|
-
type: "model.registered";
|
|
47
|
-
providerId: string;
|
|
48
|
-
modelId: string;
|
|
49
|
-
} | {
|
|
50
|
-
type: "model.unregistered";
|
|
51
|
-
providerId: string;
|
|
52
|
-
modelId: string;
|
|
53
|
-
} | {
|
|
54
|
-
type: "model.status_changed";
|
|
55
|
-
providerId: string;
|
|
56
|
-
modelId: string;
|
|
57
|
-
status: ModelStatus;
|
|
58
|
-
} | {
|
|
59
|
-
type: "model.queried";
|
|
60
|
-
filters: ModelFilters;
|
|
61
|
-
results: number;
|
|
62
|
-
};
|
|
63
|
-
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Email Adapter — RFC-0022
|
|
3
|
-
*
|
|
4
|
-
* Sends notifications via SMTP.
|
|
5
|
-
*/
|
|
6
|
-
import type { NotificationPayload, NotificationResult, EmailConfig } from "../types.js";
|
|
7
|
-
import { BaseChannelAdapter } from "../base-adapter.js";
|
|
8
|
-
export declare class EmailAdapter extends BaseChannelAdapter {
|
|
9
|
-
readonly id = "email";
|
|
10
|
-
readonly type = "email";
|
|
11
|
-
constructor(config: EmailConfig);
|
|
12
|
-
initialize(): Promise<boolean>;
|
|
13
|
-
send(payload: NotificationPayload): Promise<NotificationResult>;
|
|
14
|
-
private formatBody;
|
|
15
|
-
private getEmoji;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=email-adapter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"email-adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/email-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,mBAAmB,EACnB,kBAAkB,EAClB,WAAW,EACX,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AA0BxD,qBAAa,YAAa,SAAQ,kBAAkB;IACnD,QAAQ,CAAC,EAAE,WAAW;IACtB,QAAQ,CAAC,IAAI,WAAW;IAExB,YAAY,MAAM,EAAE,WAAW,EAE9B;IAEK,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAWnC;IAEK,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0BpE;IAED,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,QAAQ;CAiBhB"}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Email Adapter — RFC-0022
|
|
3
|
-
*
|
|
4
|
-
* Sends notifications via SMTP.
|
|
5
|
-
*/
|
|
6
|
-
import { BaseChannelAdapter } from "../base-adapter.js";
|
|
7
|
-
// Simple SMTP client using built-in net module
|
|
8
|
-
async function sendSmtpEmail(host, port, user, password, from, to, subject, body, tls = false) {
|
|
9
|
-
// For a production implementation, you'd use a proper SMTP library
|
|
10
|
-
// This is a placeholder that logs the email
|
|
11
|
-
console.log(`[Email] Would send to ${to.join(", ")}`);
|
|
12
|
-
console.log(`[Email] Subject: ${subject}`);
|
|
13
|
-
console.log(`[Email] Body: ${body}`);
|
|
14
|
-
// In practice, you'd use something like:
|
|
15
|
-
// import { createClient } from "nodemailer";
|
|
16
|
-
// const transporter = nodemailer.createTransport({ ... });
|
|
17
|
-
// await transporter.sendMail({ ... });
|
|
18
|
-
}
|
|
19
|
-
export class EmailAdapter extends BaseChannelAdapter {
|
|
20
|
-
id = "email";
|
|
21
|
-
type = "email";
|
|
22
|
-
constructor(config) {
|
|
23
|
-
super({ id: "email", type: "email", enabled: true, config });
|
|
24
|
-
}
|
|
25
|
-
async initialize() {
|
|
26
|
-
// Verify SMTP connection
|
|
27
|
-
try {
|
|
28
|
-
const cfg = this.config.config;
|
|
29
|
-
// In production, verify SMTP credentials
|
|
30
|
-
return Boolean(cfg.smtpHost && cfg.smtpUser && cfg.from && cfg.to.length > 0);
|
|
31
|
-
}
|
|
32
|
-
catch {
|
|
33
|
-
return false;
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
async send(payload) {
|
|
37
|
-
try {
|
|
38
|
-
const cfg = this.config.config;
|
|
39
|
-
const subject = `${this.getEmoji(payload.event)} ${payload.title}`;
|
|
40
|
-
const body = this.formatBody(payload);
|
|
41
|
-
await sendSmtpEmail(cfg.smtpHost, cfg.smtpPort, cfg.smtpUser, cfg.smtpPassword, cfg.from, cfg.to, subject, body, cfg.tls);
|
|
42
|
-
return { success: true, channel: this.id };
|
|
43
|
-
}
|
|
44
|
-
catch (error) {
|
|
45
|
-
return {
|
|
46
|
-
success: false,
|
|
47
|
-
channel: this.id,
|
|
48
|
-
error: String(error),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
formatBody(payload) {
|
|
53
|
-
const lines = [
|
|
54
|
-
payload.message,
|
|
55
|
-
"",
|
|
56
|
-
"---",
|
|
57
|
-
`Event: ${payload.event}`,
|
|
58
|
-
`Time: ${payload.timestamp}`,
|
|
59
|
-
];
|
|
60
|
-
if (payload.details?.taskTitle) {
|
|
61
|
-
lines.push(`Task: ${payload.details.taskTitle}`);
|
|
62
|
-
}
|
|
63
|
-
if (payload.details?.jobId) {
|
|
64
|
-
lines.push(`Job ID: ${payload.details.jobId}`);
|
|
65
|
-
}
|
|
66
|
-
if (payload.details?.error) {
|
|
67
|
-
lines.push("", `Error: ${payload.details.error}`);
|
|
68
|
-
}
|
|
69
|
-
return lines.join("\n");
|
|
70
|
-
}
|
|
71
|
-
getEmoji(event) {
|
|
72
|
-
const map = {
|
|
73
|
-
JobStarted: "[🚀]",
|
|
74
|
-
TaskCompleted: "[✅]",
|
|
75
|
-
TaskFailed: "[❌]",
|
|
76
|
-
QuotaPaused: "[⏸]",
|
|
77
|
-
ResumeScheduled: "[▶]",
|
|
78
|
-
ContextCompacted: "[📦]",
|
|
79
|
-
OutputLimitContinued: "[🔄]",
|
|
80
|
-
E2EFailed: "[🧪]",
|
|
81
|
-
HumanReviewNeeded: "[👤]",
|
|
82
|
-
ReadyForClient: "[🎉]",
|
|
83
|
-
JobCancelled: "[🚫]",
|
|
84
|
-
Error: "[⚠]",
|
|
85
|
-
};
|
|
86
|
-
return map[event] ?? "[📢]";
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
//# sourceMappingURL=email-adapter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"email-adapter.js","sourceRoot":"","sources":["../../../src/adapters/email-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,+CAA+C;AAC/C,KAAK,UAAU,aAAa,CAC3B,IAAY,EACZ,IAAY,EACZ,IAAY,EACZ,QAAgB,EAChB,IAAY,EACZ,EAAY,EACZ,OAAe,EACf,IAAY,EACZ,GAAG,GAAY,KAAK;IAEpB,mEAAmE;IACnE,4CAA4C;IAC5C,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IAErC,yCAAyC;IACzC,6CAA6C;IAC7C,2DAA2D;IAC3D,uCAAuC;AACxC,CAAC;AAED,MAAM,OAAO,YAAa,SAAQ,kBAAkB;IAC1C,EAAE,GAAG,OAAO,CAAC;IACb,IAAI,GAAG,OAAO,CAAC;IAExB,YAAY,MAAmB;QAC9B,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,KAAK,CAAC,UAAU;QACf,yBAAyB;QACzB,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAqB,CAAC;YAC9C,yCAAyC;YACzC,OAAO,OAAO,CACb,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC,MAAM,GAAG,CAAC,CAC7D,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACR,OAAO,KAAK,CAAC;QACd,CAAC;IACF,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAA4B;QACtC,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAqB,CAAC;YAC9C,MAAM,OAAO,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACnE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YAEtC,MAAM,aAAa,CAClB,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,YAAY,EAChB,GAAG,CAAC,IAAI,EACR,GAAG,CAAC,EAAE,EACN,OAAO,EACP,IAAI,EACJ,GAAG,CAAC,GAAG,CACP,CAAC;YAEF,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;QAC5C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,IAAI,CAAC,EAAE;gBAChB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;aACpB,CAAC;QACH,CAAC;IACF,CAAC;IAEO,UAAU,CAAC,OAA4B;QAC9C,MAAM,KAAK,GAAG;YACb,OAAO,CAAC,OAAO;YACf,EAAE;YACF,KAAK;YACL,UAAU,OAAO,CAAC,KAAK,EAAE;YACzB,SAAS,OAAO,CAAC,SAAS,EAAE;SAC5B,CAAC;QAEF,IAAI,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC;YAChC,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,WAAW,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC;IAEO,QAAQ,CAAC,KAAmC;QACnD,MAAM,GAAG,GAA2B;YACnC,UAAU,EAAE,MAAM;YAClB,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,KAAK;YACjB,WAAW,EAAE,KAAK;YAClB,eAAe,EAAE,KAAK;YACtB,gBAAgB,EAAE,MAAM;YACxB,oBAAoB,EAAE,MAAM;YAC5B,SAAS,EAAE,MAAM;YACjB,iBAAiB,EAAE,MAAM;YACzB,cAAc,EAAE,MAAM;YACtB,YAAY,EAAE,MAAM;YACpB,KAAK,EAAE,KAAK;SACZ,CAAC;QACF,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;IAC7B,CAAC;CACD"}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* LINE Adapter — RFC-0022
|
|
3
|
-
*
|
|
4
|
-
* Sends notifications via LINE Messaging API.
|
|
5
|
-
*/
|
|
6
|
-
import type { NotificationPayload, NotificationResult, LineConfig } from "../types.js";
|
|
7
|
-
import { BaseChannelAdapter } from "../base-adapter.js";
|
|
8
|
-
export declare class LineAdapter extends BaseChannelAdapter {
|
|
9
|
-
readonly id = "line";
|
|
10
|
-
readonly type = "line";
|
|
11
|
-
constructor(config: LineConfig);
|
|
12
|
-
initialize(): Promise<boolean>;
|
|
13
|
-
send(payload: NotificationPayload): Promise<NotificationResult>;
|
|
14
|
-
private formatMessage;
|
|
15
|
-
private getEmoji;
|
|
16
|
-
}
|
|
17
|
-
//# sourceMappingURL=line-adapter.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"line-adapter.d.ts","sourceRoot":"","sources":["../../../src/adapters/line-adapter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAExD,qBAAa,WAAY,SAAQ,kBAAkB;IAClD,QAAQ,CAAC,EAAE,UAAU;IACrB,QAAQ,CAAC,IAAI,UAAU;IAEvB,YAAY,MAAM,EAAE,UAAU,EAE7B;IAEK,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,CAgBnC;IAEK,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA0CpE;IAED,OAAO,CAAC,aAAa;IAkBrB,OAAO,CAAC,QAAQ;CAiBhB"}
|