@a1hvdy/cc-openclaw 0.10.4 → 0.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/channels/telegram/card-renderer.d.ts +63 -0
- package/dist/src/channels/telegram/card-renderer.js +149 -0
- package/dist/src/channels/telegram/card-renderer.js.map +1 -0
- package/dist/src/channels/telegram/event-reducer.js +3 -15
- package/dist/src/channels/telegram/event-reducer.js.map +1 -1
- package/dist/src/channels/telegram/format-helpers.d.ts +20 -0
- package/dist/src/channels/telegram/format-helpers.js +34 -0
- package/dist/src/channels/telegram/format-helpers.js.map +1 -0
- package/dist/src/channels/telegram/insight-formatter.d.ts +36 -0
- package/dist/src/channels/telegram/insight-formatter.js +36 -0
- package/dist/src/channels/telegram/insight-formatter.js.map +1 -0
- package/dist/src/channels/telegram/live-card.d.ts +7 -90
- package/dist/src/channels/telegram/live-card.js +25 -286
- package/dist/src/channels/telegram/live-card.js.map +1 -1
- package/dist/src/channels/telegram/logger.d.ts +10 -0
- package/dist/src/channels/telegram/logger.js +13 -0
- package/dist/src/channels/telegram/logger.js.map +1 -0
- package/dist/src/channels/telegram/result-preview.d.ts +12 -0
- package/dist/src/channels/telegram/result-preview.js +48 -0
- package/dist/src/channels/telegram/result-preview.js.map +1 -0
- package/dist/src/channels/telegram/throttle-controller.d.ts +54 -0
- package/dist/src/channels/telegram/throttle-controller.js +132 -0
- package/dist/src/channels/telegram/throttle-controller.js.map +1 -0
- package/dist/src/channels/telegram/tool-tracker.d.ts +1 -2
- package/dist/src/channels/telegram/tool-tracker.js +9 -51
- package/dist/src/channels/telegram/tool-tracker.js.map +1 -1
- package/dist/src/cli/checks/bridge-wiring.d.ts +14 -0
- package/dist/src/cli/checks/bridge-wiring.js +64 -0
- package/dist/src/cli/checks/bridge-wiring.js.map +1 -0
- package/dist/src/cli/checks/config-schema.d.ts +11 -0
- package/dist/src/cli/checks/config-schema.js +51 -0
- package/dist/src/cli/checks/config-schema.js.map +1 -0
- package/dist/src/cli/checks/critical-openclaw-json-keys.d.ts +21 -0
- package/dist/src/cli/checks/critical-openclaw-json-keys.js +106 -0
- package/dist/src/cli/checks/critical-openclaw-json-keys.js.map +1 -0
- package/dist/src/cli/checks/install-path.d.ts +11 -0
- package/dist/src/cli/checks/install-path.js +89 -0
- package/dist/src/cli/checks/install-path.js.map +1 -0
- package/dist/src/cli/checks/patch-scaffold.d.ts +17 -0
- package/dist/src/cli/checks/patch-scaffold.js +56 -0
- package/dist/src/cli/checks/patch-scaffold.js.map +1 -0
- package/dist/src/cli/doctor.d.ts +20 -0
- package/dist/src/cli/doctor.js +93 -0
- package/dist/src/cli/doctor.js.map +1 -0
- package/dist/src/cli/index.d.ts +8 -0
- package/dist/src/cli/index.js +39 -0
- package/dist/src/cli/index.js.map +1 -0
- package/dist/src/cli/migrate.d.ts +29 -0
- package/dist/src/cli/migrate.js +75 -0
- package/dist/src/cli/migrate.js.map +1 -0
- package/dist/src/command-router/cc-handler.js +35 -709
- package/dist/src/command-router/cc-handler.js.map +1 -1
- package/dist/src/command-router/launch-policy.d.ts +93 -0
- package/dist/src/command-router/launch-policy.js +323 -0
- package/dist/src/command-router/launch-policy.js.map +1 -0
- package/dist/src/command-router/resume-policy.d.ts +18 -0
- package/dist/src/command-router/resume-policy.js +236 -0
- package/dist/src/command-router/resume-policy.js.map +1 -0
- package/dist/src/command-router/turn-formatter.d.ts +19 -0
- package/dist/src/command-router/turn-formatter.js +144 -0
- package/dist/src/command-router/turn-formatter.js.map +1 -0
- package/dist/src/config/drift-detector.d.ts +28 -0
- package/dist/src/config/drift-detector.js +75 -0
- package/dist/src/config/drift-detector.js.map +1 -0
- package/dist/src/config/loader.d.ts +8 -0
- package/dist/src/config/loader.js +69 -0
- package/dist/src/config/loader.js.map +1 -0
- package/dist/src/config/schema.d.ts +188 -0
- package/dist/src/config/schema.js +98 -0
- package/dist/src/config/schema.js.map +1 -0
- package/dist/src/council/build-agent-prompt.d.ts +11 -0
- package/dist/src/council/build-agent-prompt.js +96 -0
- package/dist/src/council/build-agent-prompt.js.map +1 -0
- package/dist/src/council/cleanup-worktrees.d.ts +10 -0
- package/dist/src/council/cleanup-worktrees.js +22 -0
- package/dist/src/council/cleanup-worktrees.js.map +1 -0
- package/dist/src/council/council.js +15 -186
- package/dist/src/council/council.js.map +1 -1
- package/dist/src/council/system-prompt.d.ts +16 -0
- package/dist/src/council/system-prompt.js +40 -0
- package/dist/src/council/system-prompt.js.map +1 -0
- package/dist/src/council/write-worktree-claude-md.d.ts +10 -0
- package/dist/src/council/write-worktree-claude-md.js +41 -0
- package/dist/src/council/write-worktree-claude-md.js.map +1 -0
- package/dist/src/engines/persistent-custom-session.js +3 -8
- package/dist/src/engines/persistent-custom-session.js.map +1 -1
- package/dist/src/engines/resolve-bin.d.ts +14 -0
- package/dist/src/engines/resolve-bin.js +18 -0
- package/dist/src/engines/resolve-bin.js.map +1 -0
- package/dist/src/lib/config-service.js +8 -0
- package/dist/src/lib/config-service.js.map +1 -1
- package/dist/src/lib/debounce.d.ts +12 -0
- package/dist/src/lib/debounce.js +23 -0
- package/dist/src/lib/debounce.js.map +1 -0
- package/dist/src/lib/domain-error.d.ts +59 -0
- package/dist/src/lib/domain-error.js +79 -0
- package/dist/src/lib/domain-error.js.map +1 -0
- package/dist/src/lib/json-array.d.ts +10 -0
- package/dist/src/lib/json-array.js +23 -0
- package/dist/src/lib/json-array.js.map +1 -0
- package/dist/src/lib/safe-upstream-probes.d.ts +25 -0
- package/dist/src/lib/safe-upstream-probes.js +42 -0
- package/dist/src/lib/safe-upstream-probes.js.map +1 -0
- package/dist/src/lib/spawn-async.d.ts +18 -0
- package/dist/src/lib/spawn-async.js +47 -0
- package/dist/src/lib/spawn-async.js.map +1 -0
- package/dist/src/lib/stale-pid-files.d.ts +17 -0
- package/dist/src/lib/stale-pid-files.js +40 -0
- package/dist/src/lib/stale-pid-files.js.map +1 -0
- package/dist/src/lifecycle/boot.d.ts +59 -0
- package/dist/src/lifecycle/boot.js +132 -0
- package/dist/src/lifecycle/boot.js.map +1 -0
- package/dist/src/lifecycle/patch-manifest.d.ts +82 -0
- package/dist/src/lifecycle/patch-manifest.js +126 -0
- package/dist/src/lifecycle/patch-manifest.js.map +1 -0
- package/dist/src/lifecycle/phase-import-upstream.d.ts +12 -0
- package/dist/src/lifecycle/phase-import-upstream.js +18 -0
- package/dist/src/lifecycle/phase-import-upstream.js.map +1 -0
- package/dist/src/lifecycle/phase-install-patches.d.ts +12 -0
- package/dist/src/lifecycle/phase-install-patches.js +31 -0
- package/dist/src/lifecycle/phase-install-patches.js.map +1 -0
- package/dist/src/lifecycle/phase-schedule-jobs.d.ts +12 -0
- package/dist/src/lifecycle/phase-schedule-jobs.js +15 -0
- package/dist/src/lifecycle/phase-schedule-jobs.js.map +1 -0
- package/dist/src/lifecycle/phase-start-server.d.ts +11 -0
- package/dist/src/lifecycle/phase-start-server.js +11 -0
- package/dist/src/lifecycle/phase-start-server.js.map +1 -0
- package/dist/src/lifecycle/phase-validate-config.d.ts +9 -0
- package/dist/src/lifecycle/phase-validate-config.js +25 -0
- package/dist/src/lifecycle/phase-validate-config.js.map +1 -0
- package/dist/src/lifecycle/phase-validate-upstream.d.ts +11 -0
- package/dist/src/lifecycle/phase-validate-upstream.js +16 -0
- package/dist/src/lifecycle/phase-validate-upstream.js.map +1 -0
- package/dist/src/lifecycle/phase-wire-handlers.d.ts +12 -0
- package/dist/src/lifecycle/phase-wire-handlers.js +16 -0
- package/dist/src/lifecycle/phase-wire-handlers.js.map +1 -0
- package/dist/src/observability/event-bus.d.ts +65 -0
- package/dist/src/observability/event-bus.js +52 -0
- package/dist/src/observability/event-bus.js.map +1 -0
- package/dist/src/observability/get-event-bus.d.ts +25 -0
- package/dist/src/observability/get-event-bus.js +34 -0
- package/dist/src/observability/get-event-bus.js.map +1 -0
- package/dist/src/observability/observability-service.d.ts +19 -0
- package/dist/src/observability/observability-service.js +24 -0
- package/dist/src/observability/observability-service.js.map +1 -0
- package/dist/src/observability/subscribers/metrics.d.ts +11 -0
- package/dist/src/observability/subscribers/metrics.js +21 -0
- package/dist/src/observability/subscribers/metrics.js.map +1 -0
- package/dist/src/observability/subscribers/session-capture.d.ts +15 -0
- package/dist/src/observability/subscribers/session-capture.js +25 -0
- package/dist/src/observability/subscribers/session-capture.js.map +1 -0
- package/dist/src/openai-compat/bridges/allowlist.d.ts +19 -0
- package/dist/src/openai-compat/bridges/allowlist.js +28 -0
- package/dist/src/openai-compat/bridges/allowlist.js.map +1 -0
- package/dist/src/openai-compat/bridges/factory.d.ts +30 -0
- package/dist/src/openai-compat/bridges/factory.js +84 -0
- package/dist/src/openai-compat/bridges/factory.js.map +1 -0
- package/dist/src/openai-compat/bridges/media-bridge.d.ts +34 -0
- package/dist/src/openai-compat/bridges/media-bridge.js +20 -0
- package/dist/src/openai-compat/bridges/media-bridge.js.map +1 -0
- package/dist/src/openai-compat/bridges/openclaw-api-shim.d.ts +54 -0
- package/dist/src/openai-compat/bridges/openclaw-api-shim.js +45 -0
- package/dist/src/openai-compat/bridges/openclaw-api-shim.js.map +1 -0
- package/dist/src/openai-compat/bridges/openclaw-native-tools.d.ts +61 -0
- package/dist/src/openai-compat/bridges/openclaw-native-tools.js +171 -0
- package/dist/src/openai-compat/bridges/openclaw-native-tools.js.map +1 -0
- package/dist/src/openai-compat/bridges/openclaw-tool-registry.d.ts +26 -0
- package/dist/src/openai-compat/bridges/openclaw-tool-registry.js +38 -0
- package/dist/src/openai-compat/bridges/openclaw-tool-registry.js.map +1 -0
- package/dist/src/openai-compat/bridges/tts-media-bridge.d.ts +19 -0
- package/dist/src/openai-compat/bridges/tts-media-bridge.js +59 -0
- package/dist/src/openai-compat/bridges/tts-media-bridge.js.map +1 -0
- package/dist/src/openai-compat/openai-chunk-types.d.ts +35 -0
- package/dist/src/openai-compat/openai-chunk-types.js +9 -0
- package/dist/src/openai-compat/openai-chunk-types.js.map +1 -0
- package/dist/src/openai-compat/openai-compat.d.ts +2 -90
- package/dist/src/openai-compat/openai-compat.js +68 -68
- package/dist/src/openai-compat/openai-compat.js.map +1 -1
- package/dist/src/openai-compat/openai-types.d.ts +71 -0
- package/dist/src/openai-compat/openai-types.js +11 -0
- package/dist/src/openai-compat/openai-types.js.map +1 -0
- package/dist/src/openai-compat/parse-route-body.d.ts +24 -0
- package/dist/src/openai-compat/parse-route-body.js +45 -0
- package/dist/src/openai-compat/parse-route-body.js.map +1 -0
- package/dist/src/openai-compat/tts-rule.d.ts +20 -0
- package/dist/src/openai-compat/tts-rule.js +58 -0
- package/dist/src/openai-compat/tts-rule.js.map +1 -0
- package/dist/src/openai-compat/voice-recovery.js +0 -1
- package/dist/src/openai-compat/voice-recovery.js.map +1 -1
- package/dist/src/patches/cache-parity-registry.d.ts +20 -0
- package/dist/src/patches/cache-parity-registry.js +64 -0
- package/dist/src/patches/cache-parity-registry.js.map +1 -0
- package/dist/src/patches/claude-md-injection.d.ts +10 -0
- package/dist/src/patches/claude-md-injection.js +46 -0
- package/dist/src/patches/claude-md-injection.js.map +1 -0
- package/dist/src/patches/cwd-redirect.d.ts +10 -0
- package/dist/src/patches/cwd-redirect.js +51 -0
- package/dist/src/patches/cwd-redirect.js.map +1 -0
- package/dist/src/patches/embedded-server-route.d.ts +23 -0
- package/dist/src/patches/embedded-server-route.js +64 -0
- package/dist/src/patches/embedded-server-route.js.map +1 -0
- package/dist/src/patches/pricing-overrides.d.ts +10 -0
- package/dist/src/patches/pricing-overrides.js +55 -0
- package/dist/src/patches/pricing-overrides.js.map +1 -0
- package/dist/src/patches/resume-registry-restore.d.ts +11 -0
- package/dist/src/patches/resume-registry-restore.js +48 -0
- package/dist/src/patches/resume-registry-restore.js.map +1 -0
- package/dist/src/patches/session-pid-tracking.d.ts +10 -0
- package/dist/src/patches/session-pid-tracking.js +45 -0
- package/dist/src/patches/session-pid-tracking.js.map +1 -0
- package/dist/src/patches/sysprompt-strip.d.ts +46 -0
- package/dist/src/patches/sysprompt-strip.js +78 -0
- package/dist/src/patches/sysprompt-strip.js.map +1 -0
- package/dist/src/patches/sysprompt-strip.spec.d.ts +33 -0
- package/dist/src/patches/sysprompt-strip.spec.js +53 -0
- package/dist/src/patches/sysprompt-strip.spec.js.map +1 -0
- package/dist/src/patches/tools-restoration.d.ts +12 -0
- package/dist/src/patches/tools-restoration.js +43 -0
- package/dist/src/patches/tools-restoration.js.map +1 -0
- package/dist/src/persistence/migration-v0.d.ts +24 -0
- package/dist/src/persistence/migration-v0.js +142 -0
- package/dist/src/persistence/migration-v0.js.map +1 -0
- package/dist/src/persistence/session-registry.d.ts +57 -0
- package/dist/src/persistence/session-registry.js +58 -0
- package/dist/src/persistence/session-registry.js.map +1 -0
- package/dist/src/persistence/snapshot.d.ts +18 -0
- package/dist/src/persistence/snapshot.js +32 -0
- package/dist/src/persistence/snapshot.js.map +1 -0
- package/dist/src/persistence/wal.d.ts +17 -0
- package/dist/src/persistence/wal.js +32 -0
- package/dist/src/persistence/wal.js.map +1 -0
- package/dist/src/session/persisted-sessions.d.ts +26 -0
- package/dist/src/session/persisted-sessions.js +70 -0
- package/dist/src/session/persisted-sessions.js.map +1 -0
- package/dist/src/session/session-manager.d.ts +2 -11
- package/dist/src/session/session-manager.js +22 -66
- package/dist/src/session/session-manager.js.map +1 -1
- package/dist/src/session-bootstrap/boot-self-heal.d.ts +32 -0
- package/dist/src/session-bootstrap/boot-self-heal.js +54 -0
- package/dist/src/session-bootstrap/boot-self-heal.js.map +1 -0
- package/dist/src/session-bootstrap/cwd-patch.js +11 -87
- package/dist/src/session-bootstrap/cwd-patch.js.map +1 -1
- package/dist/src/session-bootstrap/resume-registry.d.ts +29 -0
- package/dist/src/session-bootstrap/resume-registry.js +58 -0
- package/dist/src/session-bootstrap/resume-registry.js.map +1 -0
- package/dist/src/session-bootstrap/session-hygiene.d.ts +23 -0
- package/dist/src/session-bootstrap/session-hygiene.js +41 -0
- package/dist/src/session-bootstrap/session-hygiene.js.map +1 -0
- package/dist/src/types/runtime-config.d.ts +11 -0
- package/dist/src/types/runtime-config.js +9 -0
- package/dist/src/types/runtime-config.js.map +1 -1
- package/dist/src/types/tool-bridge.d.ts +2 -1
- package/dist/src/types/tool-bridge.js +1 -0
- package/dist/src/types/tool-bridge.js.map +1 -1
- package/package.json +1 -1
- package/dist/scripts/bench/ab-harness.d.ts +0 -58
- package/dist/scripts/bench/ab-harness.d.ts.map +0 -1
- package/dist/scripts/bench/ab-harness.js +0 -78
- package/dist/scripts/bench/ab-harness.js.map +0 -1
- package/dist/src/channels/adapter.d.ts.map +0 -1
- package/dist/src/channels/telegram/completion-summary.d.ts.map +0 -1
- package/dist/src/channels/telegram/error-renderer.d.ts.map +0 -1
- package/dist/src/channels/telegram/event-reducer.d.ts.map +0 -1
- package/dist/src/channels/telegram/index.d.ts.map +0 -1
- package/dist/src/channels/telegram/injector.d.ts.map +0 -1
- package/dist/src/channels/telegram/live-card.d.ts.map +0 -1
- package/dist/src/channels/telegram/state-machine.d.ts.map +0 -1
- package/dist/src/channels/telegram/tool-tracker.d.ts.map +0 -1
- package/dist/src/command-router/cc-handler.d.ts.map +0 -1
- package/dist/src/command-router/index.d.ts.map +0 -1
- package/dist/src/constants.d.ts.map +0 -1
- package/dist/src/council/consensus.d.ts.map +0 -1
- package/dist/src/council/council.d.ts.map +0 -1
- package/dist/src/council/index.d.ts.map +0 -1
- package/dist/src/engines/base-oneshot-session.d.ts.map +0 -1
- package/dist/src/engines/index.d.ts.map +0 -1
- package/dist/src/engines/persistent-codex-session.d.ts.map +0 -1
- package/dist/src/engines/persistent-cursor-session.d.ts.map +0 -1
- package/dist/src/engines/persistent-custom-session.d.ts.map +0 -1
- package/dist/src/engines/persistent-gemini-session.d.ts.map +0 -1
- package/dist/src/engines/persistent-session.d.ts.map +0 -1
- package/dist/src/health/handler.d.ts.map +0 -1
- package/dist/src/health/index.d.ts.map +0 -1
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/lib/auto-recovery.d.ts.map +0 -1
- package/dist/src/lib/cache-parity.d.ts.map +0 -1
- package/dist/src/lib/circuit-breaker.d.ts.map +0 -1
- package/dist/src/lib/config.d.ts.map +0 -1
- package/dist/src/lib/drift-detector.d.ts.map +0 -1
- package/dist/src/lib/error-formatter.d.ts.map +0 -1
- package/dist/src/lib/heartbeat-workaround.d.ts.map +0 -1
- package/dist/src/lib/index.d.ts.map +0 -1
- package/dist/src/lib/register-guard.d.ts.map +0 -1
- package/dist/src/lib/route-flag.d.ts +0 -49
- package/dist/src/lib/route-flag.d.ts.map +0 -1
- package/dist/src/lib/route-flag.js +0 -52
- package/dist/src/lib/route-flag.js.map +0 -1
- package/dist/src/lib/sysprompt-strip.d.ts.map +0 -1
- package/dist/src/lib/telemetry.d.ts.map +0 -1
- package/dist/src/lib/test-mode.d.ts.map +0 -1
- package/dist/src/lib/vendor-paths.d.ts.map +0 -1
- package/dist/src/logger.d.ts.map +0 -1
- package/dist/src/mcp/bridge.d.ts.map +0 -1
- package/dist/src/mcp/index.d.ts.map +0 -1
- package/dist/src/models.d.ts.map +0 -1
- package/dist/src/openai-compat/cli-stream-parser.d.ts.map +0 -1
- package/dist/src/openai-compat/index.d.ts.map +0 -1
- package/dist/src/openai-compat/openai-compat.d.ts.map +0 -1
- package/dist/src/openai-compat/skill-resolver.d.ts.map +0 -1
- package/dist/src/openai-compat/sse-translator.d.ts.map +0 -1
- package/dist/src/proxy/anthropic-adapter.d.ts.map +0 -1
- package/dist/src/proxy/handler.d.ts.map +0 -1
- package/dist/src/proxy/index.d.ts.map +0 -1
- package/dist/src/proxy/schema-cleaner.d.ts.map +0 -1
- package/dist/src/proxy/thought-cache.d.ts.map +0 -1
- package/dist/src/session/embedded-server.d.ts.map +0 -1
- package/dist/src/session/inbox-manager.d.ts.map +0 -1
- package/dist/src/session/index.d.ts.map +0 -1
- package/dist/src/session/session-manager.d.ts.map +0 -1
- package/dist/src/session-bootstrap/cwd-patch.d.ts.map +0 -1
- package/dist/src/session-bootstrap/index.d.ts.map +0 -1
- package/dist/src/session-bootstrap/sysprompt-strip.d.ts.map +0 -1
- package/dist/src/session-bootstrap/think-conflict-resolver.d.ts.map +0 -1
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/validation.d.ts.map +0 -1
- package/dist/tests/_helpers/subprocess-mock.d.ts +0 -35
- package/dist/tests/_helpers/subprocess-mock.d.ts.map +0 -1
- package/dist/tests/_helpers/subprocess-mock.js +0 -136
- package/dist/tests/_helpers/subprocess-mock.js.map +0 -1
- package/dist/tests/auto-recovery.test.d.ts +0 -2
- package/dist/tests/auto-recovery.test.d.ts.map +0 -1
- package/dist/tests/auto-recovery.test.js +0 -185
- package/dist/tests/auto-recovery.test.js.map +0 -1
- package/dist/tests/bench-harness.test.d.ts +0 -2
- package/dist/tests/bench-harness.test.d.ts.map +0 -1
- package/dist/tests/bench-harness.test.js +0 -21
- package/dist/tests/bench-harness.test.js.map +0 -1
- package/dist/tests/cache-parity.test.d.ts +0 -2
- package/dist/tests/cache-parity.test.d.ts.map +0 -1
- package/dist/tests/cache-parity.test.js +0 -401
- package/dist/tests/cache-parity.test.js.map +0 -1
- package/dist/tests/command-router.test.d.ts +0 -2
- package/dist/tests/command-router.test.d.ts.map +0 -1
- package/dist/tests/command-router.test.js +0 -60
- package/dist/tests/command-router.test.js.map +0 -1
- package/dist/tests/council.test.d.ts +0 -2
- package/dist/tests/council.test.d.ts.map +0 -1
- package/dist/tests/council.test.js +0 -20
- package/dist/tests/council.test.js.map +0 -1
- package/dist/tests/drift-detector.test.d.ts +0 -2
- package/dist/tests/drift-detector.test.d.ts.map +0 -1
- package/dist/tests/drift-detector.test.js +0 -268
- package/dist/tests/drift-detector.test.js.map +0 -1
- package/dist/tests/eager-bootstrap-gating.test.d.ts +0 -9
- package/dist/tests/eager-bootstrap-gating.test.d.ts.map +0 -1
- package/dist/tests/eager-bootstrap-gating.test.js +0 -97
- package/dist/tests/eager-bootstrap-gating.test.js.map +0 -1
- package/dist/tests/engines.test.d.ts +0 -2
- package/dist/tests/engines.test.d.ts.map +0 -1
- package/dist/tests/engines.test.js +0 -8
- package/dist/tests/engines.test.js.map +0 -1
- package/dist/tests/error-formatter.test.d.ts +0 -2
- package/dist/tests/error-formatter.test.d.ts.map +0 -1
- package/dist/tests/error-formatter.test.js +0 -220
- package/dist/tests/error-formatter.test.js.map +0 -1
- package/dist/tests/health.test.d.ts +0 -2
- package/dist/tests/health.test.d.ts.map +0 -1
- package/dist/tests/health.test.js +0 -110
- package/dist/tests/health.test.js.map +0 -1
- package/dist/tests/heartbeat-workaround.test.d.ts +0 -2
- package/dist/tests/heartbeat-workaround.test.d.ts.map +0 -1
- package/dist/tests/heartbeat-workaround.test.js +0 -90
- package/dist/tests/heartbeat-workaround.test.js.map +0 -1
- package/dist/tests/index.test.d.ts +0 -2
- package/dist/tests/index.test.d.ts.map +0 -1
- package/dist/tests/index.test.js +0 -7
- package/dist/tests/index.test.js.map +0 -1
- package/dist/tests/lib-sysprompt-strip.test.d.ts +0 -2
- package/dist/tests/lib-sysprompt-strip.test.d.ts.map +0 -1
- package/dist/tests/lib-sysprompt-strip.test.js +0 -145
- package/dist/tests/lib-sysprompt-strip.test.js.map +0 -1
- package/dist/tests/listener-activation.test.d.ts +0 -2
- package/dist/tests/listener-activation.test.d.ts.map +0 -1
- package/dist/tests/listener-activation.test.js +0 -87
- package/dist/tests/listener-activation.test.js.map +0 -1
- package/dist/tests/mcp-bridge.test.d.ts +0 -2
- package/dist/tests/mcp-bridge.test.d.ts.map +0 -1
- package/dist/tests/mcp-bridge.test.js +0 -137
- package/dist/tests/mcp-bridge.test.js.map +0 -1
- package/dist/tests/openai-compat.test.d.ts +0 -2
- package/dist/tests/openai-compat.test.d.ts.map +0 -1
- package/dist/tests/openai-compat.test.js +0 -8
- package/dist/tests/openai-compat.test.js.map +0 -1
- package/dist/tests/proxy-heartbeat-integration.test.d.ts +0 -15
- package/dist/tests/proxy-heartbeat-integration.test.d.ts.map +0 -1
- package/dist/tests/proxy-heartbeat-integration.test.js +0 -122
- package/dist/tests/proxy-heartbeat-integration.test.js.map +0 -1
- package/dist/tests/proxy.test.d.ts +0 -2
- package/dist/tests/proxy.test.d.ts.map +0 -1
- package/dist/tests/proxy.test.js +0 -8
- package/dist/tests/proxy.test.js.map +0 -1
- package/dist/tests/register-guard-stacking.test.d.ts +0 -2
- package/dist/tests/register-guard-stacking.test.d.ts.map +0 -1
- package/dist/tests/register-guard-stacking.test.js +0 -61
- package/dist/tests/register-guard-stacking.test.js.map +0 -1
- package/dist/tests/register-guard.test.d.ts +0 -2
- package/dist/tests/register-guard.test.d.ts.map +0 -1
- package/dist/tests/register-guard.test.js +0 -129
- package/dist/tests/register-guard.test.js.map +0 -1
- package/dist/tests/route-flag-rollback.test.d.ts +0 -2
- package/dist/tests/route-flag-rollback.test.d.ts.map +0 -1
- package/dist/tests/route-flag-rollback.test.js +0 -70
- package/dist/tests/route-flag-rollback.test.js.map +0 -1
- package/dist/tests/route-flag.test.d.ts +0 -2
- package/dist/tests/route-flag.test.d.ts.map +0 -1
- package/dist/tests/route-flag.test.js +0 -101
- package/dist/tests/route-flag.test.js.map +0 -1
- package/dist/tests/session-bootstrap.test.d.ts +0 -2
- package/dist/tests/session-bootstrap.test.d.ts.map +0 -1
- package/dist/tests/session-bootstrap.test.js +0 -183
- package/dist/tests/session-bootstrap.test.js.map +0 -1
- package/dist/tests/session.test.d.ts +0 -2
- package/dist/tests/session.test.d.ts.map +0 -1
- package/dist/tests/session.test.js +0 -17
- package/dist/tests/session.test.js.map +0 -1
- package/dist/tests/state-machine.test.d.ts +0 -2
- package/dist/tests/state-machine.test.d.ts.map +0 -1
- package/dist/tests/state-machine.test.js +0 -133
- package/dist/tests/state-machine.test.js.map +0 -1
- package/dist/tests/streaming/cli-stream-parser.test.d.ts +0 -2
- package/dist/tests/streaming/cli-stream-parser.test.d.ts.map +0 -1
- package/dist/tests/streaming/cli-stream-parser.test.js +0 -233
- package/dist/tests/streaming/cli-stream-parser.test.js.map +0 -1
- package/dist/tests/streaming/feature-flag.test.d.ts +0 -14
- package/dist/tests/streaming/feature-flag.test.d.ts.map +0 -1
- package/dist/tests/streaming/feature-flag.test.js +0 -163
- package/dist/tests/streaming/feature-flag.test.js.map +0 -1
- package/dist/tests/streaming/no-tools-prompt.test.d.ts +0 -17
- package/dist/tests/streaming/no-tools-prompt.test.d.ts.map +0 -1
- package/dist/tests/streaming/no-tools-prompt.test.js +0 -229
- package/dist/tests/streaming/no-tools-prompt.test.js.map +0 -1
- package/dist/tests/streaming/skill-plus-tools.test.d.ts +0 -14
- package/dist/tests/streaming/skill-plus-tools.test.d.ts.map +0 -1
- package/dist/tests/streaming/skill-plus-tools.test.js +0 -234
- package/dist/tests/streaming/skill-plus-tools.test.js.map +0 -1
- package/dist/tests/streaming/sse-translator.test.d.ts +0 -2
- package/dist/tests/streaming/sse-translator.test.d.ts.map +0 -1
- package/dist/tests/streaming/sse-translator.test.js +0 -227
- package/dist/tests/streaming/sse-translator.test.js.map +0 -1
- package/dist/tests/streaming/tool-result-roundtrip.test.d.ts +0 -11
- package/dist/tests/streaming/tool-result-roundtrip.test.d.ts.map +0 -1
- package/dist/tests/streaming/tool-result-roundtrip.test.js +0 -215
- package/dist/tests/streaming/tool-result-roundtrip.test.js.map +0 -1
- package/dist/tests/streaming/tool-use-translation.test.d.ts +0 -10
- package/dist/tests/streaming/tool-use-translation.test.d.ts.map +0 -1
- package/dist/tests/streaming/tool-use-translation.test.js +0 -251
- package/dist/tests/streaming/tool-use-translation.test.js.map +0 -1
- package/dist/tests/telegram-bridge.test.d.ts +0 -2
- package/dist/tests/telegram-bridge.test.d.ts.map +0 -1
- package/dist/tests/telegram-bridge.test.js +0 -17
- package/dist/tests/telegram-bridge.test.js.map +0 -1
- package/dist/tests/telegram-injector.test.d.ts +0 -2
- package/dist/tests/telegram-injector.test.d.ts.map +0 -1
- package/dist/tests/telegram-injector.test.js +0 -74
- package/dist/tests/telegram-injector.test.js.map +0 -1
- package/dist/tests/telemetry.test.d.ts +0 -2
- package/dist/tests/telemetry.test.d.ts.map +0 -1
- package/dist/tests/telemetry.test.js +0 -405
- package/dist/tests/telemetry.test.js.map +0 -1
- package/dist/tests/test-mode.test.d.ts +0 -2
- package/dist/tests/test-mode.test.d.ts.map +0 -1
- package/dist/tests/test-mode.test.js +0 -39
- package/dist/tests/test-mode.test.js.map +0 -1
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* telegram/card-renderer.ts
|
|
3
|
+
*
|
|
4
|
+
* Telegram Bot API HTTP layer + stream-event bridge.
|
|
5
|
+
* Extracted from live-card.ts (lines 214–458) per Phase 5 decomposition.
|
|
6
|
+
*
|
|
7
|
+
* Exports: telegramApi, sendTg, editTg, bridgeEvent, StreamEvent, TranscriptEntry
|
|
8
|
+
*/
|
|
9
|
+
export declare function telegramApi(method: string, params: Record<string, unknown>): Promise<{
|
|
10
|
+
ok: boolean;
|
|
11
|
+
result?: {
|
|
12
|
+
message_id?: number;
|
|
13
|
+
};
|
|
14
|
+
error_code?: number;
|
|
15
|
+
description?: string;
|
|
16
|
+
parameters?: {
|
|
17
|
+
retry_after?: number;
|
|
18
|
+
};
|
|
19
|
+
}>;
|
|
20
|
+
/** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
21
|
+
export declare function sendTg(chatId: string, text: string, threadId?: string, replyMarkup?: unknown, replyToMessageId?: number | null): Promise<{
|
|
22
|
+
ok: boolean;
|
|
23
|
+
result?: {
|
|
24
|
+
message_id?: number;
|
|
25
|
+
};
|
|
26
|
+
}>;
|
|
27
|
+
/** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
28
|
+
export declare function editTg(chatId: string, messageId: number, text: string, replyMarkup?: unknown): Promise<{
|
|
29
|
+
ok: boolean;
|
|
30
|
+
}>;
|
|
31
|
+
export interface StreamEvent {
|
|
32
|
+
type: string;
|
|
33
|
+
id?: string;
|
|
34
|
+
tool_use_id?: string;
|
|
35
|
+
parent_tool_use_id?: string;
|
|
36
|
+
parentToolUseId?: string;
|
|
37
|
+
tool?: {
|
|
38
|
+
name?: string;
|
|
39
|
+
input?: Record<string, unknown>;
|
|
40
|
+
parent_tool_use_id?: string;
|
|
41
|
+
};
|
|
42
|
+
tool_name?: string;
|
|
43
|
+
input?: Record<string, unknown>;
|
|
44
|
+
content?: unknown;
|
|
45
|
+
output?: unknown;
|
|
46
|
+
is_error?: boolean;
|
|
47
|
+
error?: unknown;
|
|
48
|
+
result?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface TranscriptEntry {
|
|
51
|
+
kind: 'tool_call' | 'tool_result' | 'assistant';
|
|
52
|
+
ts: string;
|
|
53
|
+
name?: string;
|
|
54
|
+
input?: Record<string, unknown>;
|
|
55
|
+
toolUseId?: string;
|
|
56
|
+
parentToolUseId?: string;
|
|
57
|
+
toolName?: string;
|
|
58
|
+
content?: unknown;
|
|
59
|
+
isError?: boolean;
|
|
60
|
+
text?: string;
|
|
61
|
+
delta?: boolean;
|
|
62
|
+
}
|
|
63
|
+
export declare function bridgeEvent(event: StreamEvent): TranscriptEntry | null;
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* telegram/card-renderer.ts
|
|
3
|
+
*
|
|
4
|
+
* Telegram Bot API HTTP layer + stream-event bridge.
|
|
5
|
+
* Extracted from live-card.ts (lines 214–458) per Phase 5 decomposition.
|
|
6
|
+
*
|
|
7
|
+
* Exports: telegramApi, sendTg, editTg, bridgeEvent, StreamEvent, TranscriptEntry
|
|
8
|
+
*/
|
|
9
|
+
import { request as httpsRequest } from 'node:https';
|
|
10
|
+
import { _logger } from './logger.js';
|
|
11
|
+
import { BOT_TOKEN } from './live-card.js';
|
|
12
|
+
const PLUGIN_TAG = '[cc-openclaw/telegram/live-card]';
|
|
13
|
+
// ── Telegram Bot API ──────────────────────────────────────────────────────
|
|
14
|
+
export function telegramApi(method, params) {
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
const body = JSON.stringify(params);
|
|
17
|
+
const options = {
|
|
18
|
+
hostname: 'api.telegram.org',
|
|
19
|
+
path: `/bot${BOT_TOKEN}/${method}`,
|
|
20
|
+
method: 'POST',
|
|
21
|
+
headers: {
|
|
22
|
+
'Content-Type': 'application/json',
|
|
23
|
+
'Content-Length': Buffer.byteLength(body),
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
const req = httpsRequest(options, (res) => {
|
|
27
|
+
let data = '';
|
|
28
|
+
res.on('data', (chunk) => (data += chunk));
|
|
29
|
+
res.on('end', () => {
|
|
30
|
+
try {
|
|
31
|
+
resolve(JSON.parse(data));
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
resolve({ ok: false, description: 'JSON parse error' });
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
req.on('error', (err) => reject(err));
|
|
39
|
+
req.setTimeout(10_000, () => {
|
|
40
|
+
req.destroy(new Error('Telegram API timeout'));
|
|
41
|
+
});
|
|
42
|
+
req.write(body);
|
|
43
|
+
req.end();
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
/** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
47
|
+
export async function sendTg(chatId, text, threadId, replyMarkup, replyToMessageId) {
|
|
48
|
+
try {
|
|
49
|
+
const base = { chat_id: chatId, disable_web_page_preview: true };
|
|
50
|
+
if (threadId)
|
|
51
|
+
base.message_thread_id = Number(threadId);
|
|
52
|
+
if (replyMarkup)
|
|
53
|
+
base.reply_markup = replyMarkup;
|
|
54
|
+
if (replyToMessageId)
|
|
55
|
+
base.reply_to_message_id = Number(replyToMessageId);
|
|
56
|
+
const res = await telegramApi('sendMessage', {
|
|
57
|
+
...base,
|
|
58
|
+
text,
|
|
59
|
+
parse_mode: 'MarkdownV2',
|
|
60
|
+
});
|
|
61
|
+
if (res.ok)
|
|
62
|
+
return res;
|
|
63
|
+
const plain = text.replace(/[_*[\]()~`>#+\-=|{}.!\\]/g, '');
|
|
64
|
+
return telegramApi('sendMessage', {
|
|
65
|
+
...base,
|
|
66
|
+
text: plain || 'Session update',
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
return { ok: false };
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
74
|
+
export async function editTg(chatId, messageId, text, replyMarkup) {
|
|
75
|
+
try {
|
|
76
|
+
const params = {
|
|
77
|
+
chat_id: chatId,
|
|
78
|
+
message_id: messageId,
|
|
79
|
+
text,
|
|
80
|
+
parse_mode: 'MarkdownV2',
|
|
81
|
+
disable_web_page_preview: true,
|
|
82
|
+
};
|
|
83
|
+
if (replyMarkup)
|
|
84
|
+
params.reply_markup = replyMarkup;
|
|
85
|
+
const res = await telegramApi('editMessageText', params);
|
|
86
|
+
if (!res.ok && (res.error_code === 429 || res.description?.includes('Too Many Requests'))) {
|
|
87
|
+
const retryAfterSec = res.parameters?.retry_after || 5;
|
|
88
|
+
const waitMs = Math.min(retryAfterSec * 1000, 30000);
|
|
89
|
+
_logger.warn(`${PLUGIN_TAG} editTg 429 — waiting ${waitMs}ms`);
|
|
90
|
+
await new Promise(r => setTimeout(r, waitMs));
|
|
91
|
+
const retry = await telegramApi('editMessageText', params);
|
|
92
|
+
if (retry.ok)
|
|
93
|
+
return retry;
|
|
94
|
+
}
|
|
95
|
+
if (res.ok)
|
|
96
|
+
return res;
|
|
97
|
+
const plain = text.replace(/[_*[\]()~`>#+\-=|{}.!\\]/g, '');
|
|
98
|
+
const fallback = {
|
|
99
|
+
chat_id: chatId,
|
|
100
|
+
message_id: messageId,
|
|
101
|
+
text: plain || 'Session update',
|
|
102
|
+
disable_web_page_preview: true,
|
|
103
|
+
};
|
|
104
|
+
if (replyMarkup)
|
|
105
|
+
fallback.reply_markup = replyMarkup;
|
|
106
|
+
return telegramApi('editMessageText', fallback);
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
return { ok: false };
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
export function bridgeEvent(event) {
|
|
113
|
+
const ts = new Date().toISOString();
|
|
114
|
+
if (event.type === 'tool_use') {
|
|
115
|
+
const parentToolUseId = event.parent_tool_use_id ||
|
|
116
|
+
event.tool?.parent_tool_use_id ||
|
|
117
|
+
event.parentToolUseId ||
|
|
118
|
+
'';
|
|
119
|
+
return {
|
|
120
|
+
kind: 'tool_call',
|
|
121
|
+
ts,
|
|
122
|
+
name: event.tool?.name || 'Unknown',
|
|
123
|
+
input: event.tool?.input || {},
|
|
124
|
+
toolUseId: event.id || event.tool_use_id || '',
|
|
125
|
+
parentToolUseId,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
if (event.type === 'tool_result') {
|
|
129
|
+
return {
|
|
130
|
+
kind: 'tool_result',
|
|
131
|
+
ts,
|
|
132
|
+
toolUseId: event.tool_use_id || event.id || '',
|
|
133
|
+
toolName: event.tool_name || event.tool?.name || undefined,
|
|
134
|
+
content: event.content || event.output || '',
|
|
135
|
+
isError: Boolean(event.is_error || event.error),
|
|
136
|
+
parentToolUseId: event.parent_tool_use_id || event.parentToolUseId || '',
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
if (event.type === 'text') {
|
|
140
|
+
return {
|
|
141
|
+
kind: 'assistant',
|
|
142
|
+
ts,
|
|
143
|
+
text: event.result || '',
|
|
144
|
+
delta: true,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
return null;
|
|
148
|
+
}
|
|
149
|
+
//# sourceMappingURL=card-renderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"card-renderer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/card-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,21 +47,9 @@ if (!isTestMode()) {
|
|
|
47
47
|
function cycleChatModel(chatId) { return chatModelPrefs.cycle(chatId); }
|
|
48
48
|
function getChatModel(chatId) { return chatModelPrefs.get(chatId); }
|
|
49
49
|
// ── Helpers ───────────────────────────────────────────────────────────────
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
const diff = epoch * 1000 - Date.now();
|
|
54
|
-
if (diff <= 0)
|
|
55
|
-
return ' (now)';
|
|
56
|
-
const mins = Math.round(diff / 60000);
|
|
57
|
-
if (mins < 60)
|
|
58
|
-
return ` (resets ${mins}m)`;
|
|
59
|
-
const hrs = Math.floor(mins / 60);
|
|
60
|
-
return ` (resets ${hrs}h ${mins % 60}m)`;
|
|
61
|
-
}
|
|
62
|
-
function _pct(p) {
|
|
63
|
-
return p == null ? ' —' : `${String(Math.round(p)).padStart(3, ' ')}%`;
|
|
64
|
-
}
|
|
50
|
+
// `_fmtReset` and `_pct` extracted to `./format-helpers.ts` 2026-05-13 —
|
|
51
|
+
// first hot-path-adjacent decomposition; pure functions, behavior preserved.
|
|
52
|
+
import { fmtReset as _fmtReset, fmtPct as _pct } from './format-helpers.js';
|
|
65
53
|
// ── register() ────────────────────────────────────────────────────────────
|
|
66
54
|
/**
|
|
67
55
|
* Register all event-reducer hooks (command dispatch, model override,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-reducer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/event-reducer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-reducer.js","sourceRoot":"","sources":["../../../../src/channels/telegram/event-reducer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure formatting helpers for Telegram event-reducer.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from `event-reducer.ts` 2026-05-13 — first hot-path-adjacent
|
|
5
|
+
* decomposition step. Pure functions: no side effects, no I/O, no module
|
|
6
|
+
* state. Behavior preservation verified by existing test suite.
|
|
7
|
+
*
|
|
8
|
+
* Used in /quota and /sessions command renderers.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Format a quota-reset Unix epoch as a human-readable suffix.
|
|
12
|
+
* Returns `''` for missing/zero, `' (now)'` for past, `' (resets Nm)'` or
|
|
13
|
+
* `' (resets Nh Mm)'` for future timestamps.
|
|
14
|
+
*/
|
|
15
|
+
export declare function fmtReset(epoch: number | null | undefined): string;
|
|
16
|
+
/**
|
|
17
|
+
* Format a percentage value padded to 4-char field (`' 5%'` / `' 23%'` /
|
|
18
|
+
* `'100%'`). Returns `' —'` for null/undefined.
|
|
19
|
+
*/
|
|
20
|
+
export declare function fmtPct(p: number | null | undefined): string;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure formatting helpers for Telegram event-reducer.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from `event-reducer.ts` 2026-05-13 — first hot-path-adjacent
|
|
5
|
+
* decomposition step. Pure functions: no side effects, no I/O, no module
|
|
6
|
+
* state. Behavior preservation verified by existing test suite.
|
|
7
|
+
*
|
|
8
|
+
* Used in /quota and /sessions command renderers.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Format a quota-reset Unix epoch as a human-readable suffix.
|
|
12
|
+
* Returns `''` for missing/zero, `' (now)'` for past, `' (resets Nm)'` or
|
|
13
|
+
* `' (resets Nh Mm)'` for future timestamps.
|
|
14
|
+
*/
|
|
15
|
+
export function fmtReset(epoch) {
|
|
16
|
+
if (!epoch)
|
|
17
|
+
return '';
|
|
18
|
+
const diff = epoch * 1000 - Date.now();
|
|
19
|
+
if (diff <= 0)
|
|
20
|
+
return ' (now)';
|
|
21
|
+
const mins = Math.round(diff / 60000);
|
|
22
|
+
if (mins < 60)
|
|
23
|
+
return ` (resets ${mins}m)`;
|
|
24
|
+
const hrs = Math.floor(mins / 60);
|
|
25
|
+
return ` (resets ${hrs}h ${mins % 60}m)`;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Format a percentage value padded to 4-char field (`' 5%'` / `' 23%'` /
|
|
29
|
+
* `'100%'`). Returns `' —'` for null/undefined.
|
|
30
|
+
*/
|
|
31
|
+
export function fmtPct(p) {
|
|
32
|
+
return p == null ? ' —' : `${String(Math.round(p)).padStart(3, ' ')}%`;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=format-helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-helpers.js","sourceRoot":"","sources":["../../../../src/channels/telegram/format-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;GAIG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAgC;IACvD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvC,IAAI,IAAI,IAAI,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC;IACtC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,YAAY,IAAI,IAAI,CAAC;IAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAClC,OAAO,YAAY,GAAG,KAAK,IAAI,GAAG,EAAE,IAAI,CAAC;AAC3C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,MAAM,CAAC,CAA4B;IACjD,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC;AAC3E,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* insight-formatter — pure tip extraction from Savvy card state + TipsEngine.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from tool-tracker.ts (Step 5 of Phase 5 v0.11.0 decomposition,
|
|
5
|
+
* PRPs/phase5-live-card-split.md).
|
|
6
|
+
*
|
|
7
|
+
* Two call sites in tool-tracker.ts duplicated the toolSummary build + getTip
|
|
8
|
+
* orchestration: `after_tool_call` (~L617-625) and `message_sending` (~L675-683).
|
|
9
|
+
* This module factors that pattern into one pure function.
|
|
10
|
+
*
|
|
11
|
+
* The TipsEngine is loaded by tool-tracker.ts (stays there — the `__require`
|
|
12
|
+
* indirection to the workspace path is wired up alongside the other lazy
|
|
13
|
+
* module loads inside register()). This file only consumes the TipsEngine
|
|
14
|
+
* instance via an interface, keeping it framework-agnostic and testable.
|
|
15
|
+
*/
|
|
16
|
+
/** Minimal shape this module needs from a SavvyCardState — type-safe without
|
|
17
|
+
* importing tool-tracker's full SavvyCardState interface (avoids a cycle).
|
|
18
|
+
*/
|
|
19
|
+
export interface InsightCardState {
|
|
20
|
+
activityLog: string[];
|
|
21
|
+
elapsedMs: number;
|
|
22
|
+
[key: string]: unknown;
|
|
23
|
+
}
|
|
24
|
+
/** Minimal shape this module needs from a TipsEngine. */
|
|
25
|
+
export interface TipsEngineLike {
|
|
26
|
+
getTip(ctx: unknown): unknown;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Build a tool-frequency summary from a SavvyCardState's activityLog and
|
|
30
|
+
* call TipsEngine.getTip. Returns whatever the engine returns (typically a
|
|
31
|
+
* `{ emoji, text }` shape or null; consumers pass it to `state.setTip(tip)`).
|
|
32
|
+
*
|
|
33
|
+
* Pure: no I/O, no logging, no Telegram side effects. Safe to unit-test
|
|
34
|
+
* with a TipsEngine double.
|
|
35
|
+
*/
|
|
36
|
+
export declare function extractInsightTip(state: InsightCardState, tipsEngine: TipsEngineLike): unknown;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* insight-formatter — pure tip extraction from Savvy card state + TipsEngine.
|
|
3
|
+
*
|
|
4
|
+
* Extracted from tool-tracker.ts (Step 5 of Phase 5 v0.11.0 decomposition,
|
|
5
|
+
* PRPs/phase5-live-card-split.md).
|
|
6
|
+
*
|
|
7
|
+
* Two call sites in tool-tracker.ts duplicated the toolSummary build + getTip
|
|
8
|
+
* orchestration: `after_tool_call` (~L617-625) and `message_sending` (~L675-683).
|
|
9
|
+
* This module factors that pattern into one pure function.
|
|
10
|
+
*
|
|
11
|
+
* The TipsEngine is loaded by tool-tracker.ts (stays there — the `__require`
|
|
12
|
+
* indirection to the workspace path is wired up alongside the other lazy
|
|
13
|
+
* module loads inside register()). This file only consumes the TipsEngine
|
|
14
|
+
* instance via an interface, keeping it framework-agnostic and testable.
|
|
15
|
+
*/
|
|
16
|
+
/**
|
|
17
|
+
* Build a tool-frequency summary from a SavvyCardState's activityLog and
|
|
18
|
+
* call TipsEngine.getTip. Returns whatever the engine returns (typically a
|
|
19
|
+
* `{ emoji, text }` shape or null; consumers pass it to `state.setTip(tip)`).
|
|
20
|
+
*
|
|
21
|
+
* Pure: no I/O, no logging, no Telegram side effects. Safe to unit-test
|
|
22
|
+
* with a TipsEngine double.
|
|
23
|
+
*/
|
|
24
|
+
export function extractInsightTip(state, tipsEngine) {
|
|
25
|
+
const toolSummary = {};
|
|
26
|
+
for (const t of state.activityLog) {
|
|
27
|
+
const key = t === 'exec' ? 'execute' : t;
|
|
28
|
+
toolSummary[key] = (toolSummary[key] || 0) + 1;
|
|
29
|
+
}
|
|
30
|
+
return tipsEngine.getTip({
|
|
31
|
+
...state,
|
|
32
|
+
toolSummary,
|
|
33
|
+
elapsedSec: Math.round(state.elapsedMs / 1000),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=insight-formatter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"insight-formatter.js","sourceRoot":"","sources":["../../../../src/channels/telegram/insight-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAgBH;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,KAAuB,EACvB,UAA0B;IAE1B,MAAM,WAAW,GAA2B,EAAE,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,GAAG,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACzC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,UAAU,CAAC,MAAM,CAAC;QACvB,GAAG,KAAK;QACR,WAAW;QACX,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;KAC/C,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
*
|
|
11
11
|
* Source lines: 1–930 of ux-bridge.js
|
|
12
12
|
*/
|
|
13
|
+
import { TelegramMessageQueue } from './throttle-controller.js';
|
|
13
14
|
export interface PluginApi {
|
|
14
15
|
on(event: string, handler: (...args: unknown[]) => unknown | Promise<unknown>): void;
|
|
15
16
|
logger?: Console;
|
|
@@ -69,17 +70,7 @@ export declare const delegatedCardStore: Map<string, {
|
|
|
69
70
|
threadId: string | undefined;
|
|
70
71
|
}>;
|
|
71
72
|
export declare let latestQuotaState: QuotaState | null;
|
|
72
|
-
|
|
73
|
-
* Shared cross-handler dedup. Any handler dispatching to Telegram should
|
|
74
|
-
* (a) mark via `markDispatchedToTelegram(chatId, payload)` and (b) check via
|
|
75
|
-
* `wasDispatchedToTelegram(chatId, payload)` to short-circuit duplicates.
|
|
76
|
-
*
|
|
77
|
-
* Used to bridge the gap between cc-openclaw's patched SessionManager.send
|
|
78
|
-
* path and the gateway's native ACP message_sending path — both can fire
|
|
79
|
-
* for the same agent reply, producing the doubled-greeting on /new.
|
|
80
|
-
*/
|
|
81
|
-
export declare function markDispatchedToTelegram(chatId: string, payload: unknown): void;
|
|
82
|
-
export declare function wasDispatchedToTelegram(chatId: string, payload: unknown): boolean;
|
|
73
|
+
export { markDispatchedToTelegram, wasDispatchedToTelegram } from './throttle-controller.js';
|
|
83
74
|
export interface QuotaState {
|
|
84
75
|
sevenDay?: {
|
|
85
76
|
usedPercent?: number;
|
|
@@ -140,84 +131,11 @@ interface CardState {
|
|
|
140
131
|
startedAt?: number;
|
|
141
132
|
[key: string]: unknown;
|
|
142
133
|
}
|
|
143
|
-
export
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
error_code?: number;
|
|
149
|
-
description?: string;
|
|
150
|
-
parameters?: {
|
|
151
|
-
retry_after?: number;
|
|
152
|
-
};
|
|
153
|
-
}>;
|
|
154
|
-
/** Send a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
155
|
-
export declare function sendTg(chatId: string, text: string, threadId?: string, replyMarkup?: unknown, replyToMessageId?: number | null): Promise<{
|
|
156
|
-
ok: boolean;
|
|
157
|
-
result?: {
|
|
158
|
-
message_id?: number;
|
|
159
|
-
};
|
|
160
|
-
}>;
|
|
161
|
-
/** Edit a Telegram message. Tries MarkdownV2 first, falls back to plain text. */
|
|
162
|
-
export declare function editTg(chatId: string, messageId: number, text: string, replyMarkup?: unknown): Promise<{
|
|
163
|
-
ok: boolean;
|
|
164
|
-
}>;
|
|
165
|
-
export declare class TelegramMessageQueue {
|
|
166
|
-
chatId: string;
|
|
167
|
-
threadId: string | undefined;
|
|
168
|
-
cardMessageId: number | null;
|
|
169
|
-
_replyToMessageId: number | null;
|
|
170
|
-
/**
|
|
171
|
-
* Sticky flag — set true the first time `sendMessage()` is called for this
|
|
172
|
-
* queue instance. Lets the fast-turn fallback in `applyPatch()` detect that
|
|
173
|
-
* a new message was already dispatched by the pipeline's `onNewMessage`
|
|
174
|
-
* callback and avoid double-firing. Bug context: 2026-04-29 doubled-greeting
|
|
175
|
-
* on `/new` was caused by both the pipeline AND the fallback emitting the
|
|
176
|
-
* same model output as separate Telegram messages.
|
|
177
|
-
*/
|
|
178
|
-
messageSent: boolean;
|
|
179
|
-
private _cardChain;
|
|
180
|
-
private _msgChain;
|
|
181
|
-
constructor(chatId: string, threadId: string | undefined, existingCardMessageId: number | null, replyToMessageId?: number | null);
|
|
182
|
-
/** Send or edit the session card. */
|
|
183
|
-
updateCard(text: string, replyMarkup?: unknown): void;
|
|
184
|
-
/** Send a standalone message (error alert, completion summary). */
|
|
185
|
-
sendMessage(text: string): void;
|
|
186
|
-
}
|
|
187
|
-
interface StreamEvent {
|
|
188
|
-
type: string;
|
|
189
|
-
id?: string;
|
|
190
|
-
tool_use_id?: string;
|
|
191
|
-
parent_tool_use_id?: string;
|
|
192
|
-
parentToolUseId?: string;
|
|
193
|
-
tool?: {
|
|
194
|
-
name?: string;
|
|
195
|
-
input?: Record<string, unknown>;
|
|
196
|
-
parent_tool_use_id?: string;
|
|
197
|
-
};
|
|
198
|
-
tool_name?: string;
|
|
199
|
-
input?: Record<string, unknown>;
|
|
200
|
-
content?: unknown;
|
|
201
|
-
output?: unknown;
|
|
202
|
-
is_error?: boolean;
|
|
203
|
-
error?: unknown;
|
|
204
|
-
result?: string;
|
|
205
|
-
}
|
|
206
|
-
interface TranscriptEntry {
|
|
207
|
-
kind: 'tool_call' | 'tool_result' | 'assistant';
|
|
208
|
-
ts: string;
|
|
209
|
-
name?: string;
|
|
210
|
-
input?: Record<string, unknown>;
|
|
211
|
-
toolUseId?: string;
|
|
212
|
-
parentToolUseId?: string;
|
|
213
|
-
toolName?: string;
|
|
214
|
-
content?: unknown;
|
|
215
|
-
isError?: boolean;
|
|
216
|
-
text?: string;
|
|
217
|
-
delta?: boolean;
|
|
218
|
-
}
|
|
219
|
-
export declare function bridgeEvent(event: StreamEvent): TranscriptEntry | null;
|
|
220
|
-
export declare let _logger: Console;
|
|
134
|
+
export { telegramApi, sendTg, editTg } from './card-renderer.js';
|
|
135
|
+
export { TelegramMessageQueue } from './throttle-controller.js';
|
|
136
|
+
export { bridgeEvent } from './card-renderer.js';
|
|
137
|
+
export type { StreamEvent, TranscriptEntry } from './card-renderer.js';
|
|
138
|
+
export { _logger, setLogger } from './logger.js';
|
|
221
139
|
export declare function loadUxModule(): Record<string, unknown>;
|
|
222
140
|
export declare function applyPatch(): Promise<void>;
|
|
223
141
|
export declare function cleanStaleStatusFiles(): void;
|
|
@@ -226,4 +144,3 @@ export declare function cleanStaleStatusFiles(): void;
|
|
|
226
144
|
* Idempotent — subsequent calls are no-ops.
|
|
227
145
|
*/
|
|
228
146
|
export declare function register(api: PluginApi): void;
|
|
229
|
-
export {};
|