charness 0.0.0-stage → 3.1.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/.env.example +88 -0
- package/DEVELOPMENT.md +110 -0
- package/LICENSE +21 -0
- package/MIGRATION_1_TO_2.md +24 -0
- package/README.md +1196 -2
- package/dist/accessControl.d.ts +71 -0
- package/dist/accessControl.d.ts.map +1 -0
- package/dist/accessControl.js +108 -0
- package/dist/accessControl.js.map +1 -0
- package/dist/adapters/adapterEventRouting.d.ts +51 -0
- package/dist/adapters/adapterEventRouting.d.ts.map +1 -0
- package/dist/adapters/adapterEventRouting.js +74 -0
- package/dist/adapters/adapterEventRouting.js.map +1 -0
- package/dist/adapters/adapterNames.d.ts +19 -0
- package/dist/adapters/adapterNames.d.ts.map +1 -0
- package/dist/adapters/adapterNames.js +25 -0
- package/dist/adapters/adapterNames.js.map +1 -0
- package/dist/adapters/claudeCliAdapter.d.ts +1351 -0
- package/dist/adapters/claudeCliAdapter.d.ts.map +1 -0
- package/dist/adapters/claudeCliAdapter.js +4239 -0
- package/dist/adapters/claudeCliAdapter.js.map +1 -0
- package/dist/adapters/claudeConfigDir.d.ts +40 -0
- package/dist/adapters/claudeConfigDir.d.ts.map +1 -0
- package/dist/adapters/claudeConfigDir.js +3 -0
- package/dist/adapters/claudeConfigDir.js.map +1 -0
- package/dist/adapters/claudeJsonStreamAdapter.d.ts +580 -0
- package/dist/adapters/claudeJsonStreamAdapter.d.ts.map +1 -0
- package/dist/adapters/claudeJsonStreamAdapter.js +1891 -0
- package/dist/adapters/claudeJsonStreamAdapter.js.map +1 -0
- package/dist/adapters/claudePlatformFlags.d.ts +35 -0
- package/dist/adapters/claudePlatformFlags.d.ts.map +1 -0
- package/dist/adapters/claudePlatformFlags.js +46 -0
- package/dist/adapters/claudePlatformFlags.js.map +1 -0
- package/dist/adapters/createAdapter.d.ts +260 -0
- package/dist/adapters/createAdapter.d.ts.map +1 -0
- package/dist/adapters/createAdapter.js +512 -0
- package/dist/adapters/createAdapter.js.map +1 -0
- package/dist/adapters/openCodeAdapter.d.ts +1469 -0
- package/dist/adapters/openCodeAdapter.d.ts.map +1 -0
- package/dist/adapters/openCodeAdapter.js +4623 -0
- package/dist/adapters/openCodeAdapter.js.map +1 -0
- package/dist/adapters/sessionLaunchDefaults.d.ts +28 -0
- package/dist/adapters/sessionLaunchDefaults.d.ts.map +1 -0
- package/dist/adapters/sessionLaunchDefaults.js +15 -0
- package/dist/adapters/sessionLaunchDefaults.js.map +1 -0
- package/dist/adapters/terminalAdapter.d.ts +68 -0
- package/dist/adapters/terminalAdapter.d.ts.map +1 -0
- package/dist/adapters/terminalAdapter.js +371 -0
- package/dist/adapters/terminalAdapter.js.map +1 -0
- package/dist/agentLogin/agentLogin.d.ts +44 -0
- package/dist/agentLogin/agentLogin.d.ts.map +1 -0
- package/dist/agentLogin/agentLogin.js +530 -0
- package/dist/agentLogin/agentLogin.js.map +1 -0
- package/dist/agentTrigger.d.ts +28 -0
- package/dist/agentTrigger.d.ts.map +1 -0
- package/dist/agentTrigger.js +53 -0
- package/dist/agentTrigger.js.map +1 -0
- package/dist/apiErrorRetry.d.ts +214 -0
- package/dist/apiErrorRetry.d.ts.map +1 -0
- package/dist/apiErrorRetry.js +382 -0
- package/dist/apiErrorRetry.js.map +1 -0
- package/dist/apiRetryKick.d.ts +157 -0
- package/dist/apiRetryKick.d.ts.map +1 -0
- package/dist/apiRetryKick.js +174 -0
- package/dist/apiRetryKick.js.map +1 -0
- package/dist/bootClassifier.d.ts +46 -0
- package/dist/bootClassifier.d.ts.map +1 -0
- package/dist/bootClassifier.js +43 -0
- package/dist/bootClassifier.js.map +1 -0
- package/dist/bot.d.ts +207 -0
- package/dist/bot.d.ts.map +1 -0
- package/dist/bot.js +11226 -0
- package/dist/bot.js.map +1 -0
- package/dist/botFileStorage.d.ts +60 -0
- package/dist/botFileStorage.d.ts.map +1 -0
- package/dist/botFileStorage.js +205 -0
- package/dist/botFileStorage.js.map +1 -0
- package/dist/cli/applyDnsFix.d.ts +7 -0
- package/dist/cli/applyDnsFix.d.ts.map +1 -0
- package/dist/cli/applyDnsFix.js +46 -0
- package/dist/cli/applyDnsFix.js.map +1 -0
- package/dist/cli/bot.d.ts +27 -0
- package/dist/cli/bot.d.ts.map +1 -0
- package/dist/cli/bot.js +98 -0
- package/dist/cli/bot.js.map +1 -0
- package/dist/cli/botEntry.d.ts +3 -0
- package/dist/cli/botEntry.d.ts.map +1 -0
- package/dist/cli/botEntry.js +11 -0
- package/dist/cli/botEntry.js.map +1 -0
- package/dist/cli/claudeProfiles.d.ts +42 -0
- package/dist/cli/claudeProfiles.d.ts.map +1 -0
- package/dist/cli/claudeProfiles.js +106 -0
- package/dist/cli/claudeProfiles.js.map +1 -0
- package/dist/cli/connectorGuards.d.ts +31 -0
- package/dist/cli/connectorGuards.d.ts.map +1 -0
- package/dist/cli/connectorGuards.js +159 -0
- package/dist/cli/connectorGuards.js.map +1 -0
- package/dist/cli/envLoader.d.ts +34 -0
- package/dist/cli/envLoader.d.ts.map +1 -0
- package/dist/cli/envLoader.js +132 -0
- package/dist/cli/envLoader.js.map +1 -0
- package/dist/cli/hot.d.ts +82 -0
- package/dist/cli/hot.d.ts.map +1 -0
- package/dist/cli/hot.js +323 -0
- package/dist/cli/hot.js.map +1 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +140 -0
- package/dist/cli.js.map +1 -0
- package/dist/connectors/jira/adf.d.ts +74 -0
- package/dist/connectors/jira/adf.d.ts.map +1 -0
- package/dist/connectors/jira/adf.js +412 -0
- package/dist/connectors/jira/adf.js.map +1 -0
- package/dist/connectors/jira/agentBinaries.d.ts +14 -0
- package/dist/connectors/jira/agentBinaries.d.ts.map +1 -0
- package/dist/connectors/jira/agentBinaries.js +75 -0
- package/dist/connectors/jira/agentBinaries.js.map +1 -0
- package/dist/connectors/jira/answerSink.d.ts +59 -0
- package/dist/connectors/jira/answerSink.d.ts.map +1 -0
- package/dist/connectors/jira/answerSink.js +234 -0
- package/dist/connectors/jira/answerSink.js.map +1 -0
- package/dist/connectors/jira/attachmentDownload.d.ts +41 -0
- package/dist/connectors/jira/attachmentDownload.d.ts.map +1 -0
- package/dist/connectors/jira/attachmentDownload.js +92 -0
- package/dist/connectors/jira/attachmentDownload.js.map +1 -0
- package/dist/connectors/jira/attachmentTool.d.ts +50 -0
- package/dist/connectors/jira/attachmentTool.d.ts.map +1 -0
- package/dist/connectors/jira/attachmentTool.js +166 -0
- package/dist/connectors/jira/attachmentTool.js.map +1 -0
- package/dist/connectors/jira/client.d.ts +522 -0
- package/dist/connectors/jira/client.d.ts.map +1 -0
- package/dist/connectors/jira/client.js +491 -0
- package/dist/connectors/jira/client.js.map +1 -0
- package/dist/connectors/jira/config.d.ts +104 -0
- package/dist/connectors/jira/config.d.ts.map +1 -0
- package/dist/connectors/jira/config.js +323 -0
- package/dist/connectors/jira/config.js.map +1 -0
- package/dist/connectors/jira/configFile.d.ts +10 -0
- package/dist/connectors/jira/configFile.d.ts.map +1 -0
- package/dist/connectors/jira/configFile.js +50 -0
- package/dist/connectors/jira/configFile.js.map +1 -0
- package/dist/connectors/jira/connector.d.ts +71 -0
- package/dist/connectors/jira/connector.d.ts.map +1 -0
- package/dist/connectors/jira/connector.js +312 -0
- package/dist/connectors/jira/connector.js.map +1 -0
- package/dist/connectors/jira/contextLedger.d.ts +60 -0
- package/dist/connectors/jira/contextLedger.d.ts.map +1 -0
- package/dist/connectors/jira/contextLedger.js +196 -0
- package/dist/connectors/jira/contextLedger.js.map +1 -0
- package/dist/connectors/jira/contextPreamble.d.ts +18 -0
- package/dist/connectors/jira/contextPreamble.d.ts.map +1 -0
- package/dist/connectors/jira/contextPreamble.js +31 -0
- package/dist/connectors/jira/contextPreamble.js.map +1 -0
- package/dist/connectors/jira/inbound.d.ts +141 -0
- package/dist/connectors/jira/inbound.d.ts.map +1 -0
- package/dist/connectors/jira/inbound.js +331 -0
- package/dist/connectors/jira/inbound.js.map +1 -0
- package/dist/connectors/jira/issueBlocks.d.ts +74 -0
- package/dist/connectors/jira/issueBlocks.d.ts.map +1 -0
- package/dist/connectors/jira/issueBlocks.js +257 -0
- package/dist/connectors/jira/issueBlocks.js.map +1 -0
- package/dist/connectors/jira/issueContext.d.ts +31 -0
- package/dist/connectors/jira/issueContext.d.ts.map +1 -0
- package/dist/connectors/jira/issueContext.js +70 -0
- package/dist/connectors/jira/issueContext.js.map +1 -0
- package/dist/connectors/jira/issueDelta.d.ts +38 -0
- package/dist/connectors/jira/issueDelta.d.ts.map +1 -0
- package/dist/connectors/jira/issueDelta.js +59 -0
- package/dist/connectors/jira/issueDelta.js.map +1 -0
- package/dist/connectors/jira/mediaPlaceholders.d.ts +22 -0
- package/dist/connectors/jira/mediaPlaceholders.d.ts.map +1 -0
- package/dist/connectors/jira/mediaPlaceholders.js +105 -0
- package/dist/connectors/jira/mediaPlaceholders.js.map +1 -0
- package/dist/connectors/jira/outbound.d.ts +6 -0
- package/dist/connectors/jira/outbound.d.ts.map +1 -0
- package/dist/connectors/jira/outbound.js +38 -0
- package/dist/connectors/jira/outbound.js.map +1 -0
- package/dist/connectors/jira/prompt.d.ts +39 -0
- package/dist/connectors/jira/prompt.d.ts.map +1 -0
- package/dist/connectors/jira/prompt.js +102 -0
- package/dist/connectors/jira/prompt.js.map +1 -0
- package/dist/connectors/jira/promptSpill.d.ts +50 -0
- package/dist/connectors/jira/promptSpill.d.ts.map +1 -0
- package/dist/connectors/jira/promptSpill.js +157 -0
- package/dist/connectors/jira/promptSpill.js.map +1 -0
- package/dist/connectors/jira/promptText.d.ts +7 -0
- package/dist/connectors/jira/promptText.d.ts.map +1 -0
- package/dist/connectors/jira/promptText.js +26 -0
- package/dist/connectors/jira/promptText.js.map +1 -0
- package/dist/connectors/jira/sessionKeyCodec.d.ts +18 -0
- package/dist/connectors/jira/sessionKeyCodec.d.ts.map +1 -0
- package/dist/connectors/jira/sessionKeyCodec.js +106 -0
- package/dist/connectors/jira/sessionKeyCodec.js.map +1 -0
- package/dist/connectors/jira/trigger.d.ts +54 -0
- package/dist/connectors/jira/trigger.d.ts.map +1 -0
- package/dist/connectors/jira/trigger.js +101 -0
- package/dist/connectors/jira/trigger.js.map +1 -0
- package/dist/connectors/jira/triggerLog.d.ts +53 -0
- package/dist/connectors/jira/triggerLog.d.ts.map +1 -0
- package/dist/connectors/jira/triggerLog.js +78 -0
- package/dist/connectors/jira/triggerLog.js.map +1 -0
- package/dist/connectors/jira/trustedGroup.d.ts +54 -0
- package/dist/connectors/jira/trustedGroup.d.ts.map +1 -0
- package/dist/connectors/jira/trustedGroup.js +98 -0
- package/dist/connectors/jira/trustedGroup.js.map +1 -0
- package/dist/connectors/jira/unconfirmedPosts.d.ts +58 -0
- package/dist/connectors/jira/unconfirmedPosts.d.ts.map +1 -0
- package/dist/connectors/jira/unconfirmedPosts.js +105 -0
- package/dist/connectors/jira/unconfirmedPosts.js.map +1 -0
- package/dist/connectors/telegram/answerSink.d.ts +46 -0
- package/dist/connectors/telegram/answerSink.d.ts.map +1 -0
- package/dist/connectors/telegram/answerSink.js +71 -0
- package/dist/connectors/telegram/answerSink.js.map +1 -0
- package/dist/connectors/telegram/commands/autoContinueLimits.d.ts +34 -0
- package/dist/connectors/telegram/commands/autoContinueLimits.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/autoContinueLimits.js +112 -0
- package/dist/connectors/telegram/commands/autoContinueLimits.js.map +1 -0
- package/dist/connectors/telegram/commands/botCore.d.ts +46 -0
- package/dist/connectors/telegram/commands/botCore.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/botCore.js +3 -0
- package/dist/connectors/telegram/commands/botCore.js.map +1 -0
- package/dist/connectors/telegram/commands/callbackMessage.d.ts +12 -0
- package/dist/connectors/telegram/commands/callbackMessage.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/callbackMessage.js +13 -0
- package/dist/connectors/telegram/commands/callbackMessage.js.map +1 -0
- package/dist/connectors/telegram/commands/claudeAccounts.d.ts +58 -0
- package/dist/connectors/telegram/commands/claudeAccounts.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/claudeAccounts.js +591 -0
- package/dist/connectors/telegram/commands/claudeAccounts.js.map +1 -0
- package/dist/connectors/telegram/commands/compaction.d.ts +47 -0
- package/dist/connectors/telegram/commands/compaction.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/compaction.js +868 -0
- package/dist/connectors/telegram/commands/compaction.js.map +1 -0
- package/dist/connectors/telegram/commands/displayModes.d.ts +13 -0
- package/dist/connectors/telegram/commands/displayModes.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/displayModes.js +335 -0
- package/dist/connectors/telegram/commands/displayModes.js.map +1 -0
- package/dist/connectors/telegram/commands/fallbackChain.d.ts +49 -0
- package/dist/connectors/telegram/commands/fallbackChain.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/fallbackChain.js +624 -0
- package/dist/connectors/telegram/commands/fallbackChain.js.map +1 -0
- package/dist/connectors/telegram/commands/modelProviders.d.ts +117 -0
- package/dist/connectors/telegram/commands/modelProviders.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/modelProviders.js +966 -0
- package/dist/connectors/telegram/commands/modelProviders.js.map +1 -0
- package/dist/connectors/telegram/commands/reminders.d.ts +54 -0
- package/dist/connectors/telegram/commands/reminders.d.ts.map +1 -0
- package/dist/connectors/telegram/commands/reminders.js +624 -0
- package/dist/connectors/telegram/commands/reminders.js.map +1 -0
- package/dist/connectors/telegram/fileIntake.d.ts +166 -0
- package/dist/connectors/telegram/fileIntake.d.ts.map +1 -0
- package/dist/connectors/telegram/fileIntake.js +304 -0
- package/dist/connectors/telegram/fileIntake.js.map +1 -0
- package/dist/connectors/telegram/fileSendGateway.d.ts +57 -0
- package/dist/connectors/telegram/fileSendGateway.d.ts.map +1 -0
- package/dist/connectors/telegram/fileSendGateway.js +221 -0
- package/dist/connectors/telegram/fileSendGateway.js.map +1 -0
- package/dist/connectors/telegram/foreignKeyFallbacks.d.ts +52 -0
- package/dist/connectors/telegram/foreignKeyFallbacks.d.ts.map +1 -0
- package/dist/connectors/telegram/foreignKeyFallbacks.js +71 -0
- package/dist/connectors/telegram/foreignKeyFallbacks.js.map +1 -0
- package/dist/connectors/telegram/inbound.d.ts +131 -0
- package/dist/connectors/telegram/inbound.d.ts.map +1 -0
- package/dist/connectors/telegram/inbound.js +278 -0
- package/dist/connectors/telegram/inbound.js.map +1 -0
- package/dist/connectors/telegram/languagePicker.d.ts +32 -0
- package/dist/connectors/telegram/languagePicker.d.ts.map +1 -0
- package/dist/connectors/telegram/languagePicker.js +55 -0
- package/dist/connectors/telegram/languagePicker.js.map +1 -0
- package/dist/connectors/telegram/messageSplit.d.ts +62 -0
- package/dist/connectors/telegram/messageSplit.d.ts.map +1 -0
- package/dist/connectors/telegram/messageSplit.js +119 -0
- package/dist/connectors/telegram/messageSplit.js.map +1 -0
- package/dist/connectors/telegram/outbound.d.ts +62 -0
- package/dist/connectors/telegram/outbound.d.ts.map +1 -0
- package/dist/connectors/telegram/outbound.js +116 -0
- package/dist/connectors/telegram/outbound.js.map +1 -0
- package/dist/connectors/telegram/output/createOutputTransport.d.ts +34 -0
- package/dist/connectors/telegram/output/createOutputTransport.d.ts.map +1 -0
- package/dist/connectors/telegram/output/createOutputTransport.js +77 -0
- package/dist/connectors/telegram/output/createOutputTransport.js.map +1 -0
- package/dist/connectors/telegram/output/dmOutputTransport.d.ts +47 -0
- package/dist/connectors/telegram/output/dmOutputTransport.d.ts.map +1 -0
- package/dist/connectors/telegram/output/dmOutputTransport.js +412 -0
- package/dist/connectors/telegram/output/dmOutputTransport.js.map +1 -0
- package/dist/connectors/telegram/outputBacklogGlue.d.ts +38 -0
- package/dist/connectors/telegram/outputBacklogGlue.d.ts.map +1 -0
- package/dist/connectors/telegram/outputBacklogGlue.js +49 -0
- package/dist/connectors/telegram/outputBacklogGlue.js.map +1 -0
- package/dist/connectors/telegram/outputFlushPlan.d.ts +93 -0
- package/dist/connectors/telegram/outputFlushPlan.d.ts.map +1 -0
- package/dist/connectors/telegram/outputFlushPlan.js +120 -0
- package/dist/connectors/telegram/outputFlushPlan.js.map +1 -0
- package/dist/connectors/telegram/questionKeyboards.d.ts +30 -0
- package/dist/connectors/telegram/questionKeyboards.d.ts.map +1 -0
- package/dist/connectors/telegram/questionKeyboards.js +37 -0
- package/dist/connectors/telegram/questionKeyboards.js.map +1 -0
- package/dist/connectors/telegram/renderAgentHtml.d.ts +27 -0
- package/dist/connectors/telegram/renderAgentHtml.d.ts.map +1 -0
- package/dist/connectors/telegram/renderAgentHtml.js +97 -0
- package/dist/connectors/telegram/renderAgentHtml.js.map +1 -0
- package/dist/connectors/telegram/sessionKeyCodec.d.ts +28 -0
- package/dist/connectors/telegram/sessionKeyCodec.d.ts.map +1 -0
- package/dist/connectors/telegram/sessionKeyCodec.js +107 -0
- package/dist/connectors/telegram/sessionKeyCodec.js.map +1 -0
- package/dist/connectors/telegram/telegramCallGuard.d.ts +19 -0
- package/dist/connectors/telegram/telegramCallGuard.d.ts.map +1 -0
- package/dist/connectors/telegram/telegramCallGuard.js +35 -0
- package/dist/connectors/telegram/telegramCallGuard.js.map +1 -0
- package/dist/connectors/telegram/timezonePicker.d.ts +85 -0
- package/dist/connectors/telegram/timezonePicker.d.ts.map +1 -0
- package/dist/connectors/telegram/timezonePicker.js +142 -0
- package/dist/connectors/telegram/timezonePicker.js.map +1 -0
- package/dist/connectors/telegram/updateDispatcher.d.ts +85 -0
- package/dist/connectors/telegram/updateDispatcher.d.ts.map +1 -0
- package/dist/connectors/telegram/updateDispatcher.js +159 -0
- package/dist/connectors/telegram/updateDispatcher.js.map +1 -0
- package/dist/connectors/test/connector.d.ts +52 -0
- package/dist/connectors/test/connector.d.ts.map +1 -0
- package/dist/connectors/test/connector.js +143 -0
- package/dist/connectors/test/connector.js.map +1 -0
- package/dist/connectors/test/sessionKeyCodec.d.ts +25 -0
- package/dist/connectors/test/sessionKeyCodec.d.ts.map +1 -0
- package/dist/connectors/test/sessionKeyCodec.js +50 -0
- package/dist/connectors/test/sessionKeyCodec.js.map +1 -0
- package/dist/diagLog.d.ts +6 -0
- package/dist/diagLog.d.ts.map +1 -0
- package/dist/diagLog.js +58 -0
- package/dist/diagLog.js.map +1 -0
- package/dist/effortLevels.d.ts +68 -0
- package/dist/effortLevels.d.ts.map +1 -0
- package/dist/effortLevels.js +114 -0
- package/dist/effortLevels.js.map +1 -0
- package/dist/folderName.d.ts +42 -0
- package/dist/folderName.d.ts.map +1 -0
- package/dist/folderName.js +51 -0
- package/dist/folderName.js.map +1 -0
- package/dist/i18n/de.d.ts +2 -0
- package/dist/i18n/de.d.ts.map +1 -0
- package/dist/i18n/de.js +665 -0
- package/dist/i18n/de.js.map +1 -0
- package/dist/i18n/en.d.ts +7 -0
- package/dist/i18n/en.d.ts.map +1 -0
- package/dist/i18n/en.js +694 -0
- package/dist/i18n/en.js.map +1 -0
- package/dist/i18n/es.d.ts +2 -0
- package/dist/i18n/es.d.ts.map +1 -0
- package/dist/i18n/es.js +665 -0
- package/dist/i18n/es.js.map +1 -0
- package/dist/i18n/fr.d.ts +2 -0
- package/dist/i18n/fr.d.ts.map +1 -0
- package/dist/i18n/fr.js +665 -0
- package/dist/i18n/fr.js.map +1 -0
- package/dist/i18n/hi.d.ts +2 -0
- package/dist/i18n/hi.d.ts.map +1 -0
- package/dist/i18n/hi.js +665 -0
- package/dist/i18n/hi.js.map +1 -0
- package/dist/i18n/ja.d.ts +2 -0
- package/dist/i18n/ja.d.ts.map +1 -0
- package/dist/i18n/ja.js +665 -0
- package/dist/i18n/ja.js.map +1 -0
- package/dist/i18n/ka.d.ts +2 -0
- package/dist/i18n/ka.d.ts.map +1 -0
- package/dist/i18n/ka.js +665 -0
- package/dist/i18n/ka.js.map +1 -0
- package/dist/i18n/pt.d.ts +2 -0
- package/dist/i18n/pt.d.ts.map +1 -0
- package/dist/i18n/pt.js +665 -0
- package/dist/i18n/pt.js.map +1 -0
- package/dist/i18n/ru.d.ts +6 -0
- package/dist/i18n/ru.d.ts.map +1 -0
- package/dist/i18n/ru.js +668 -0
- package/dist/i18n/ru.js.map +1 -0
- package/dist/i18n/uk.d.ts +8 -0
- package/dist/i18n/uk.d.ts.map +1 -0
- package/dist/i18n/uk.js +670 -0
- package/dist/i18n/uk.js.map +1 -0
- package/dist/i18n/uz.d.ts +2 -0
- package/dist/i18n/uz.d.ts.map +1 -0
- package/dist/i18n/uz.js +665 -0
- package/dist/i18n/uz.js.map +1 -0
- package/dist/i18n/zh.d.ts +2 -0
- package/dist/i18n/zh.d.ts.map +1 -0
- package/dist/i18n/zh.js +665 -0
- package/dist/i18n/zh.js.map +1 -0
- package/dist/i18n.d.ts +115 -0
- package/dist/i18n.d.ts.map +1 -0
- package/dist/i18n.js +233 -0
- package/dist/i18n.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/installManager.d.ts +99 -0
- package/dist/installManager.d.ts.map +1 -0
- package/dist/installManager.js +943 -0
- package/dist/installManager.js.map +1 -0
- package/dist/instanceLock.d.ts +161 -0
- package/dist/instanceLock.d.ts.map +1 -0
- package/dist/instanceLock.js +388 -0
- package/dist/instanceLock.js.map +1 -0
- package/dist/mcpConfig.d.ts +76 -0
- package/dist/mcpConfig.d.ts.map +1 -0
- package/dist/mcpConfig.js +270 -0
- package/dist/mcpConfig.js.map +1 -0
- package/dist/openCodeOpenQuestion.d.ts +44 -0
- package/dist/openCodeOpenQuestion.d.ts.map +1 -0
- package/dist/openCodeOpenQuestion.js +64 -0
- package/dist/openCodeOpenQuestion.js.map +1 -0
- package/dist/openCodeQuestionFlow.d.ts +105 -0
- package/dist/openCodeQuestionFlow.d.ts.map +1 -0
- package/dist/openCodeQuestionFlow.js +143 -0
- package/dist/openCodeQuestionFlow.js.map +1 -0
- package/dist/openCodeSessionRouting.d.ts +133 -0
- package/dist/openCodeSessionRouting.d.ts.map +1 -0
- package/dist/openCodeSessionRouting.js +253 -0
- package/dist/openCodeSessionRouting.js.map +1 -0
- package/dist/openCodeSessionTitle.d.ts +50 -0
- package/dist/openCodeSessionTitle.d.ts.map +1 -0
- package/dist/openCodeSessionTitle.js +84 -0
- package/dist/openCodeSessionTitle.js.map +1 -0
- package/dist/outputTrace.d.ts +108 -0
- package/dist/outputTrace.d.ts.map +1 -0
- package/dist/outputTrace.js +430 -0
- package/dist/outputTrace.js.map +1 -0
- package/dist/pendingQuestionRepost.d.ts +47 -0
- package/dist/pendingQuestionRepost.d.ts.map +1 -0
- package/dist/pendingQuestionRepost.js +29 -0
- package/dist/pendingQuestionRepost.js.map +1 -0
- package/dist/pinnedStatus.d.ts +52 -0
- package/dist/pinnedStatus.d.ts.map +1 -0
- package/dist/pinnedStatus.js +36 -0
- package/dist/pinnedStatus.js.map +1 -0
- package/dist/platform/answerSink.d.ts +93 -0
- package/dist/platform/answerSink.d.ts.map +1 -0
- package/dist/platform/answerSink.js +31 -0
- package/dist/platform/answerSink.js.map +1 -0
- package/dist/platform/capabilityFallback.d.ts +39 -0
- package/dist/platform/capabilityFallback.d.ts.map +1 -0
- package/dist/platform/capabilityFallback.js +55 -0
- package/dist/platform/capabilityFallback.js.map +1 -0
- package/dist/platform/commandRouter.d.ts +51 -0
- package/dist/platform/commandRouter.d.ts.map +1 -0
- package/dist/platform/commandRouter.js +53 -0
- package/dist/platform/commandRouter.js.map +1 -0
- package/dist/platform/connectorSet.d.ts +39 -0
- package/dist/platform/connectorSet.d.ts.map +1 -0
- package/dist/platform/connectorSet.js +55 -0
- package/dist/platform/connectorSet.js.map +1 -0
- package/dist/platform/inbound.d.ts +147 -0
- package/dist/platform/inbound.d.ts.map +1 -0
- package/dist/platform/inbound.js +18 -0
- package/dist/platform/inbound.js.map +1 -0
- package/dist/platform/outbound.d.ts +225 -0
- package/dist/platform/outbound.d.ts.map +1 -0
- package/dist/platform/outbound.js +30 -0
- package/dist/platform/outbound.js.map +1 -0
- package/dist/platform/unservedStateGuard.d.ts +27 -0
- package/dist/platform/unservedStateGuard.d.ts.map +1 -0
- package/dist/platform/unservedStateGuard.js +42 -0
- package/dist/platform/unservedStateGuard.js.map +1 -0
- package/dist/postToSession.d.ts +94 -0
- package/dist/postToSession.d.ts.map +1 -0
- package/dist/postToSession.js +56 -0
- package/dist/postToSession.js.map +1 -0
- package/dist/progressLine.d.ts +180 -0
- package/dist/progressLine.d.ts.map +1 -0
- package/dist/progressLine.js +293 -0
- package/dist/progressLine.js.map +1 -0
- package/dist/rateLimiter.d.ts +246 -0
- package/dist/rateLimiter.d.ts.map +1 -0
- package/dist/rateLimiter.js +555 -0
- package/dist/rateLimiter.js.map +1 -0
- package/dist/requests/answerRequest.d.ts +57 -0
- package/dist/requests/answerRequest.d.ts.map +1 -0
- package/dist/requests/answerRequest.js +96 -0
- package/dist/requests/answerRequest.js.map +1 -0
- package/dist/requests/answerTail.d.ts +83 -0
- package/dist/requests/answerTail.d.ts.map +1 -0
- package/dist/requests/answerTail.js +102 -0
- package/dist/requests/answerTail.js.map +1 -0
- package/dist/requests/limitWaitAnswer.d.ts +87 -0
- package/dist/requests/limitWaitAnswer.d.ts.map +1 -0
- package/dist/requests/limitWaitAnswer.js +83 -0
- package/dist/requests/limitWaitAnswer.js.map +1 -0
- package/dist/requests/requestGroup.d.ts +44 -0
- package/dist/requests/requestGroup.d.ts.map +1 -0
- package/dist/requests/requestGroup.js +63 -0
- package/dist/requests/requestGroup.js.map +1 -0
- package/dist/requests/requestHeader.d.ts +70 -0
- package/dist/requests/requestHeader.d.ts.map +1 -0
- package/dist/requests/requestHeader.js +83 -0
- package/dist/requests/requestHeader.js.map +1 -0
- package/dist/requests/requestLedger.d.ts +217 -0
- package/dist/requests/requestLedger.d.ts.map +1 -0
- package/dist/requests/requestLedger.js +468 -0
- package/dist/requests/requestLedger.js.map +1 -0
- package/dist/requests/sessionTurnProbe.d.ts +52 -0
- package/dist/requests/sessionTurnProbe.d.ts.map +1 -0
- package/dist/requests/sessionTurnProbe.js +29 -0
- package/dist/requests/sessionTurnProbe.js.map +1 -0
- package/dist/requests/types.d.ts +181 -0
- package/dist/requests/types.d.ts.map +1 -0
- package/dist/requests/types.js +9 -0
- package/dist/requests/types.js.map +1 -0
- package/dist/requests/wakeUpEngine.d.ts +160 -0
- package/dist/requests/wakeUpEngine.d.ts.map +1 -0
- package/dist/requests/wakeUpEngine.js +399 -0
- package/dist/requests/wakeUpEngine.js.map +1 -0
- package/dist/requests/wakeUpRules.d.ts +151 -0
- package/dist/requests/wakeUpRules.d.ts.map +1 -0
- package/dist/requests/wakeUpRules.js +167 -0
- package/dist/requests/wakeUpRules.js.map +1 -0
- package/dist/resumeContext.d.ts +87 -0
- package/dist/resumeContext.d.ts.map +1 -0
- package/dist/resumeContext.js +114 -0
- package/dist/resumeContext.js.map +1 -0
- package/dist/scheduler/checkRun.d.ts +95 -0
- package/dist/scheduler/checkRun.d.ts.map +1 -0
- package/dist/scheduler/checkRun.js +172 -0
- package/dist/scheduler/checkRun.js.map +1 -0
- package/dist/scheduler/delivery.d.ts +99 -0
- package/dist/scheduler/delivery.d.ts.map +1 -0
- package/dist/scheduler/delivery.js +212 -0
- package/dist/scheduler/delivery.js.map +1 -0
- package/dist/scheduler/deliveryKind.d.ts +29 -0
- package/dist/scheduler/deliveryKind.d.ts.map +1 -0
- package/dist/scheduler/deliveryKind.js +39 -0
- package/dist/scheduler/deliveryKind.js.map +1 -0
- package/dist/scheduler/directoryThreads.d.ts +19 -0
- package/dist/scheduler/directoryThreads.d.ts.map +1 -0
- package/dist/scheduler/directoryThreads.js +28 -0
- package/dist/scheduler/directoryThreads.js.map +1 -0
- package/dist/scheduler/engine.d.ts +77 -0
- package/dist/scheduler/engine.d.ts.map +1 -0
- package/dist/scheduler/engine.js +337 -0
- package/dist/scheduler/engine.js.map +1 -0
- package/dist/scheduler/injection.d.ts +102 -0
- package/dist/scheduler/injection.d.ts.map +1 -0
- package/dist/scheduler/injection.js +122 -0
- package/dist/scheduler/injection.js.map +1 -0
- package/dist/scheduler/mcpBoot.d.ts +65 -0
- package/dist/scheduler/mcpBoot.d.ts.map +1 -0
- package/dist/scheduler/mcpBoot.js +60 -0
- package/dist/scheduler/mcpBoot.js.map +1 -0
- package/dist/scheduler/mcpSurface.d.ts +363 -0
- package/dist/scheduler/mcpSurface.d.ts.map +1 -0
- package/dist/scheduler/mcpSurface.js +1297 -0
- package/dist/scheduler/mcpSurface.js.map +1 -0
- package/dist/scheduler/rebindResume.d.ts +27 -0
- package/dist/scheduler/rebindResume.d.ts.map +1 -0
- package/dist/scheduler/rebindResume.js +17 -0
- package/dist/scheduler/rebindResume.js.map +1 -0
- package/dist/scheduler/recurrence.d.ts +58 -0
- package/dist/scheduler/recurrence.d.ts.map +1 -0
- package/dist/scheduler/recurrence.js +210 -0
- package/dist/scheduler/recurrence.js.map +1 -0
- package/dist/scheduler/runLedger.d.ts +59 -0
- package/dist/scheduler/runLedger.d.ts.map +1 -0
- package/dist/scheduler/runLedger.js +54 -0
- package/dist/scheduler/runLedger.js.map +1 -0
- package/dist/scheduler/store.d.ts +97 -0
- package/dist/scheduler/store.d.ts.map +1 -0
- package/dist/scheduler/store.js +124 -0
- package/dist/scheduler/store.js.map +1 -0
- package/dist/scheduler/timezoneRecompute.d.ts +61 -0
- package/dist/scheduler/timezoneRecompute.d.ts.map +1 -0
- package/dist/scheduler/timezoneRecompute.js +46 -0
- package/dist/scheduler/timezoneRecompute.js.map +1 -0
- package/dist/scheduler/types.d.ts +139 -0
- package/dist/scheduler/types.d.ts.map +1 -0
- package/dist/scheduler/types.js +8 -0
- package/dist/scheduler/types.js.map +1 -0
- package/dist/sendErrorClassifier.d.ts +45 -0
- package/dist/sendErrorClassifier.d.ts.map +1 -0
- package/dist/sendErrorClassifier.js +65 -0
- package/dist/sendErrorClassifier.js.map +1 -0
- package/dist/sessionKey.d.ts +136 -0
- package/dist/sessionKey.d.ts.map +1 -0
- package/dist/sessionKey.js +153 -0
- package/dist/sessionKey.js.map +1 -0
- package/dist/sessionPick.d.ts +42 -0
- package/dist/sessionPick.d.ts.map +1 -0
- package/dist/sessionPick.js +39 -0
- package/dist/sessionPick.js.map +1 -0
- package/dist/shutdown.d.ts +126 -0
- package/dist/shutdown.d.ts.map +1 -0
- package/dist/shutdown.js +164 -0
- package/dist/shutdown.js.map +1 -0
- package/dist/startupPromptBuffer.d.ts +85 -0
- package/dist/startupPromptBuffer.d.ts.map +1 -0
- package/dist/startupPromptBuffer.js +123 -0
- package/dist/startupPromptBuffer.js.map +1 -0
- package/dist/state.d.ts +1416 -0
- package/dist/state.d.ts.map +1 -0
- package/dist/state.js +2128 -0
- package/dist/state.js.map +1 -0
- package/dist/threadContextPreamble.d.ts +89 -0
- package/dist/threadContextPreamble.d.ts.map +1 -0
- package/dist/threadContextPreamble.js +102 -0
- package/dist/threadContextPreamble.js.map +1 -0
- package/dist/threadRouting.d.ts +164 -0
- package/dist/threadRouting.d.ts.map +1 -0
- package/dist/threadRouting.js +182 -0
- package/dist/threadRouting.js.map +1 -0
- package/dist/types.d.ts +1022 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/abortableFifo.d.ts +10 -0
- package/dist/utils/abortableFifo.d.ts.map +1 -0
- package/dist/utils/abortableFifo.js +55 -0
- package/dist/utils/abortableFifo.js.map +1 -0
- package/dist/utils/adoptedToolList.d.ts +27 -0
- package/dist/utils/adoptedToolList.d.ts.map +1 -0
- package/dist/utils/adoptedToolList.js +22 -0
- package/dist/utils/adoptedToolList.js.map +1 -0
- package/dist/utils/agentEnvironment.d.ts +42 -0
- package/dist/utils/agentEnvironment.d.ts.map +1 -0
- package/dist/utils/agentEnvironment.js +122 -0
- package/dist/utils/agentEnvironment.js.map +1 -0
- package/dist/utils/ansiClean.d.ts +11 -0
- package/dist/utils/ansiClean.d.ts.map +1 -0
- package/dist/utils/ansiClean.js +139 -0
- package/dist/utils/ansiClean.js.map +1 -0
- package/dist/utils/autoContinueOnLimit.d.ts +56 -0
- package/dist/utils/autoContinueOnLimit.d.ts.map +1 -0
- package/dist/utils/autoContinueOnLimit.js +79 -0
- package/dist/utils/autoContinueOnLimit.js.map +1 -0
- package/dist/utils/canonicalPathContainment.d.ts +7 -0
- package/dist/utils/canonicalPathContainment.d.ts.map +1 -0
- package/dist/utils/canonicalPathContainment.js +48 -0
- package/dist/utils/canonicalPathContainment.js.map +1 -0
- package/dist/utils/claudeAccountPickerPlan.d.ts +85 -0
- package/dist/utils/claudeAccountPickerPlan.d.ts.map +1 -0
- package/dist/utils/claudeAccountPickerPlan.js +123 -0
- package/dist/utils/claudeAccountPickerPlan.js.map +1 -0
- package/dist/utils/claudeAuthLogin.d.ts +71 -0
- package/dist/utils/claudeAuthLogin.d.ts.map +1 -0
- package/dist/utils/claudeAuthLogin.js +93 -0
- package/dist/utils/claudeAuthLogin.js.map +1 -0
- package/dist/utils/claudeChunkClassifier.d.ts +97 -0
- package/dist/utils/claudeChunkClassifier.d.ts.map +1 -0
- package/dist/utils/claudeChunkClassifier.js +254 -0
- package/dist/utils/claudeChunkClassifier.js.map +1 -0
- package/dist/utils/claudeCodeVersion.d.ts +31 -0
- package/dist/utils/claudeCodeVersion.d.ts.map +1 -0
- package/dist/utils/claudeCodeVersion.js +62 -0
- package/dist/utils/claudeCodeVersion.js.map +1 -0
- package/dist/utils/claudeCompactHook.d.ts +64 -0
- package/dist/utils/claudeCompactHook.d.ts.map +1 -0
- package/dist/utils/claudeCompactHook.js +98 -0
- package/dist/utils/claudeCompactHook.js.map +1 -0
- package/dist/utils/claudeLimitSwitch.d.ts +40 -0
- package/dist/utils/claudeLimitSwitch.d.ts.map +1 -0
- package/dist/utils/claudeLimitSwitch.js +54 -0
- package/dist/utils/claudeLimitSwitch.js.map +1 -0
- package/dist/utils/claudeLivenessAction.d.ts +208 -0
- package/dist/utils/claudeLivenessAction.d.ts.map +1 -0
- package/dist/utils/claudeLivenessAction.js +135 -0
- package/dist/utils/claudeLivenessAction.js.map +1 -0
- package/dist/utils/claudeMcpHeal.d.ts +92 -0
- package/dist/utils/claudeMcpHeal.d.ts.map +1 -0
- package/dist/utils/claudeMcpHeal.js +91 -0
- package/dist/utils/claudeMcpHeal.js.map +1 -0
- package/dist/utils/claudeProfileUsageLines.d.ts +15 -0
- package/dist/utils/claudeProfileUsageLines.d.ts.map +1 -0
- package/dist/utils/claudeProfileUsageLines.js +42 -0
- package/dist/utils/claudeProfileUsageLines.js.map +1 -0
- package/dist/utils/claudeProfiles.d.ts +117 -0
- package/dist/utils/claudeProfiles.d.ts.map +1 -0
- package/dist/utils/claudeProfiles.js +285 -0
- package/dist/utils/claudeProfiles.js.map +1 -0
- package/dist/utils/claudeRelayRouting.d.ts +86 -0
- package/dist/utils/claudeRelayRouting.d.ts.map +1 -0
- package/dist/utils/claudeRelayRouting.js +159 -0
- package/dist/utils/claudeRelayRouting.js.map +1 -0
- package/dist/utils/claudeRuntimeInfo.d.ts +26 -0
- package/dist/utils/claudeRuntimeInfo.d.ts.map +1 -0
- package/dist/utils/claudeRuntimeInfo.js +151 -0
- package/dist/utils/claudeRuntimeInfo.js.map +1 -0
- package/dist/utils/claudeScrapeShapes.d.ts +256 -0
- package/dist/utils/claudeScrapeShapes.d.ts.map +1 -0
- package/dist/utils/claudeScrapeShapes.js +290 -0
- package/dist/utils/claudeScrapeShapes.js.map +1 -0
- package/dist/utils/claudeSessionTitle.d.ts +27 -0
- package/dist/utils/claudeSessionTitle.d.ts.map +1 -0
- package/dist/utils/claudeSessionTitle.js +90 -0
- package/dist/utils/claudeSessionTitle.js.map +1 -0
- package/dist/utils/claudeStreamJson.d.ts +214 -0
- package/dist/utils/claudeStreamJson.d.ts.map +1 -0
- package/dist/utils/claudeStreamJson.js +364 -0
- package/dist/utils/claudeStreamJson.js.map +1 -0
- package/dist/utils/claudeSubagentTail.d.ts +93 -0
- package/dist/utils/claudeSubagentTail.d.ts.map +1 -0
- package/dist/utils/claudeSubagentTail.js +136 -0
- package/dist/utils/claudeSubagentTail.js.map +1 -0
- package/dist/utils/claudeUsage.d.ts +209 -0
- package/dist/utils/claudeUsage.d.ts.map +1 -0
- package/dist/utils/claudeUsage.js +413 -0
- package/dist/utils/claudeUsage.js.map +1 -0
- package/dist/utils/claudeUsageRefresher.d.ts +44 -0
- package/dist/utils/claudeUsageRefresher.d.ts.map +1 -0
- package/dist/utils/claudeUsageRefresher.js +95 -0
- package/dist/utils/claudeUsageRefresher.js.map +1 -0
- package/dist/utils/clearThreadOutputQueues.d.ts +43 -0
- package/dist/utils/clearThreadOutputQueues.d.ts.map +1 -0
- package/dist/utils/clearThreadOutputQueues.js +39 -0
- package/dist/utils/clearThreadOutputQueues.js.map +1 -0
- package/dist/utils/compactCommandRoute.d.ts +45 -0
- package/dist/utils/compactCommandRoute.d.ts.map +1 -0
- package/dist/utils/compactCommandRoute.js +36 -0
- package/dist/utils/compactCommandRoute.js.map +1 -0
- package/dist/utils/compactOnIdle.d.ts +329 -0
- package/dist/utils/compactOnIdle.d.ts.map +1 -0
- package/dist/utils/compactOnIdle.js +379 -0
- package/dist/utils/compactOnIdle.js.map +1 -0
- package/dist/utils/consoleFileTap.d.ts +51 -0
- package/dist/utils/consoleFileTap.d.ts.map +1 -0
- package/dist/utils/consoleFileTap.js +86 -0
- package/dist/utils/consoleFileTap.js.map +1 -0
- package/dist/utils/displayVerbosity.d.ts +44 -0
- package/dist/utils/displayVerbosity.d.ts.map +1 -0
- package/dist/utils/displayVerbosity.js +75 -0
- package/dist/utils/displayVerbosity.js.map +1 -0
- package/dist/utils/download.d.ts +72 -0
- package/dist/utils/download.d.ts.map +1 -0
- package/dist/utils/download.js +216 -0
- package/dist/utils/download.js.map +1 -0
- package/dist/utils/draftFinalize.d.ts +110 -0
- package/dist/utils/draftFinalize.d.ts.map +1 -0
- package/dist/utils/draftFinalize.js +100 -0
- package/dist/utils/draftFinalize.js.map +1 -0
- package/dist/utils/draftId.d.ts +36 -0
- package/dist/utils/draftId.d.ts.map +1 -0
- package/dist/utils/draftId.js +46 -0
- package/dist/utils/draftId.js.map +1 -0
- package/dist/utils/draftPacer.d.ts +72 -0
- package/dist/utils/draftPacer.d.ts.map +1 -0
- package/dist/utils/draftPacer.js +53 -0
- package/dist/utils/draftPacer.js.map +1 -0
- package/dist/utils/effortStartupKeystroke.d.ts +20 -0
- package/dist/utils/effortStartupKeystroke.d.ts.map +1 -0
- package/dist/utils/effortStartupKeystroke.js +28 -0
- package/dist/utils/effortStartupKeystroke.js.map +1 -0
- package/dist/utils/ensureSessionPlan.d.ts +70 -0
- package/dist/utils/ensureSessionPlan.d.ts.map +1 -0
- package/dist/utils/ensureSessionPlan.js +54 -0
- package/dist/utils/ensureSessionPlan.js.map +1 -0
- package/dist/utils/fallbackBridge.d.ts +32 -0
- package/dist/utils/fallbackBridge.d.ts.map +1 -0
- package/dist/utils/fallbackBridge.js +62 -0
- package/dist/utils/fallbackBridge.js.map +1 -0
- package/dist/utils/fallbackChain.d.ts +299 -0
- package/dist/utils/fallbackChain.d.ts.map +1 -0
- package/dist/utils/fallbackChain.js +542 -0
- package/dist/utils/fallbackChain.js.map +1 -0
- package/dist/utils/fileSendPlan.d.ts +217 -0
- package/dist/utils/fileSendPlan.d.ts.map +1 -0
- package/dist/utils/fileSendPlan.js +291 -0
- package/dist/utils/fileSendPlan.js.map +1 -0
- package/dist/utils/fileSendService.d.ts +94 -0
- package/dist/utils/fileSendService.d.ts.map +1 -0
- package/dist/utils/fileSendService.js +387 -0
- package/dist/utils/fileSendService.js.map +1 -0
- package/dist/utils/groupFinalizePlan.d.ts +38 -0
- package/dist/utils/groupFinalizePlan.d.ts.map +1 -0
- package/dist/utils/groupFinalizePlan.js +35 -0
- package/dist/utils/groupFinalizePlan.js.map +1 -0
- package/dist/utils/identicalOutputGuard.d.ts +83 -0
- package/dist/utils/identicalOutputGuard.d.ts.map +1 -0
- package/dist/utils/identicalOutputGuard.js +99 -0
- package/dist/utils/identicalOutputGuard.js.map +1 -0
- package/dist/utils/isoTimestamp.d.ts +16 -0
- package/dist/utils/isoTimestamp.d.ts.map +1 -0
- package/dist/utils/isoTimestamp.js +34 -0
- package/dist/utils/isoTimestamp.js.map +1 -0
- package/dist/utils/jsonStreamBusyWatchdog.d.ts +130 -0
- package/dist/utils/jsonStreamBusyWatchdog.d.ts.map +1 -0
- package/dist/utils/jsonStreamBusyWatchdog.js +122 -0
- package/dist/utils/jsonStreamBusyWatchdog.js.map +1 -0
- package/dist/utils/jsonStreamHost.d.ts +238 -0
- package/dist/utils/jsonStreamHost.d.ts.map +1 -0
- package/dist/utils/jsonStreamHost.js +438 -0
- package/dist/utils/jsonStreamHost.js.map +1 -0
- package/dist/utils/keyedTransitionQueue.d.ts +18 -0
- package/dist/utils/keyedTransitionQueue.d.ts.map +1 -0
- package/dist/utils/keyedTransitionQueue.js +34 -0
- package/dist/utils/keyedTransitionQueue.js.map +1 -0
- package/dist/utils/limitEpisodeRecovery.d.ts +92 -0
- package/dist/utils/limitEpisodeRecovery.d.ts.map +1 -0
- package/dist/utils/limitEpisodeRecovery.js +133 -0
- package/dist/utils/limitEpisodeRecovery.js.map +1 -0
- package/dist/utils/limitHeldPromptQueue.d.ts +48 -0
- package/dist/utils/limitHeldPromptQueue.d.ts.map +1 -0
- package/dist/utils/limitHeldPromptQueue.js +59 -0
- package/dist/utils/limitHeldPromptQueue.js.map +1 -0
- package/dist/utils/limitHeldPrompts.d.ts +58 -0
- package/dist/utils/limitHeldPrompts.d.ts.map +1 -0
- package/dist/utils/limitHeldPrompts.js +65 -0
- package/dist/utils/limitHeldPrompts.js.map +1 -0
- package/dist/utils/linkPreviewSuppression.d.ts +18 -0
- package/dist/utils/linkPreviewSuppression.d.ts.map +1 -0
- package/dist/utils/linkPreviewSuppression.js +37 -0
- package/dist/utils/linkPreviewSuppression.js.map +1 -0
- package/dist/utils/localClock.d.ts +15 -0
- package/dist/utils/localClock.d.ts.map +1 -0
- package/dist/utils/localClock.js +29 -0
- package/dist/utils/localClock.js.map +1 -0
- package/dist/utils/markdownTableRender.d.ts +83 -0
- package/dist/utils/markdownTableRender.d.ts.map +1 -0
- package/dist/utils/markdownTableRender.js +298 -0
- package/dist/utils/markdownTableRender.js.map +1 -0
- package/dist/utils/mediaGroupCollector.d.ts +51 -0
- package/dist/utils/mediaGroupCollector.d.ts.map +1 -0
- package/dist/utils/mediaGroupCollector.js +90 -0
- package/dist/utils/mediaGroupCollector.js.map +1 -0
- package/dist/utils/messageSendService.d.ts +136 -0
- package/dist/utils/messageSendService.d.ts.map +1 -0
- package/dist/utils/messageSendService.js +165 -0
- package/dist/utils/messageSendService.js.map +1 -0
- package/dist/utils/minutesOverride.d.ts +7 -0
- package/dist/utils/minutesOverride.d.ts.map +1 -0
- package/dist/utils/minutesOverride.js +16 -0
- package/dist/utils/minutesOverride.js.map +1 -0
- package/dist/utils/modelPickerPlan.d.ts +119 -0
- package/dist/utils/modelPickerPlan.d.ts.map +1 -0
- package/dist/utils/modelPickerPlan.js +171 -0
- package/dist/utils/modelPickerPlan.js.map +1 -0
- package/dist/utils/modelRecentPlan.d.ts +56 -0
- package/dist/utils/modelRecentPlan.d.ts.map +1 -0
- package/dist/utils/modelRecentPlan.js +107 -0
- package/dist/utils/modelRecentPlan.js.map +1 -0
- package/dist/utils/modelSetReplyDecision.d.ts +67 -0
- package/dist/utils/modelSetReplyDecision.d.ts.map +1 -0
- package/dist/utils/modelSetReplyDecision.js +27 -0
- package/dist/utils/modelSetReplyDecision.js.map +1 -0
- package/dist/utils/openCodeAuthLogin.d.ts +181 -0
- package/dist/utils/openCodeAuthLogin.d.ts.map +1 -0
- package/dist/utils/openCodeAuthLogin.js +393 -0
- package/dist/utils/openCodeAuthLogin.js.map +1 -0
- package/dist/utils/openCodeCompactPlugin.d.ts +81 -0
- package/dist/utils/openCodeCompactPlugin.d.ts.map +1 -0
- package/dist/utils/openCodeCompactPlugin.js +146 -0
- package/dist/utils/openCodeCompactPlugin.js.map +1 -0
- package/dist/utils/openCodeTurnActivity.d.ts +67 -0
- package/dist/utils/openCodeTurnActivity.d.ts.map +1 -0
- package/dist/utils/openCodeTurnActivity.js +27 -0
- package/dist/utils/openCodeTurnActivity.js.map +1 -0
- package/dist/utils/outputDebounce.d.ts +24 -0
- package/dist/utils/outputDebounce.d.ts.map +1 -0
- package/dist/utils/outputDebounce.js +30 -0
- package/dist/utils/outputDebounce.js.map +1 -0
- package/dist/utils/outputFlushTiming.d.ts +54 -0
- package/dist/utils/outputFlushTiming.d.ts.map +1 -0
- package/dist/utils/outputFlushTiming.js +48 -0
- package/dist/utils/outputFlushTiming.js.map +1 -0
- package/dist/utils/paginateList.d.ts +25 -0
- package/dist/utils/paginateList.d.ts.map +1 -0
- package/dist/utils/paginateList.js +32 -0
- package/dist/utils/paginateList.js.map +1 -0
- package/dist/utils/paneDiff.d.ts +55 -0
- package/dist/utils/paneDiff.d.ts.map +1 -0
- package/dist/utils/paneDiff.js +88 -0
- package/dist/utils/paneDiff.js.map +1 -0
- package/dist/utils/paneResizeGuard.d.ts +69 -0
- package/dist/utils/paneResizeGuard.d.ts.map +1 -0
- package/dist/utils/paneResizeGuard.js +91 -0
- package/dist/utils/paneResizeGuard.js.map +1 -0
- package/dist/utils/persistAdapterSessionIds.d.ts +39 -0
- package/dist/utils/persistAdapterSessionIds.d.ts.map +1 -0
- package/dist/utils/persistAdapterSessionIds.js +28 -0
- package/dist/utils/persistAdapterSessionIds.js.map +1 -0
- package/dist/utils/pinnedBannerSkipDecision.d.ts +44 -0
- package/dist/utils/pinnedBannerSkipDecision.d.ts.map +1 -0
- package/dist/utils/pinnedBannerSkipDecision.js +20 -0
- package/dist/utils/pinnedBannerSkipDecision.js.map +1 -0
- package/dist/utils/pollBackoff.d.ts +45 -0
- package/dist/utils/pollBackoff.d.ts.map +1 -0
- package/dist/utils/pollBackoff.js +44 -0
- package/dist/utils/pollBackoff.js.map +1 -0
- package/dist/utils/promptDelivery.d.ts +46 -0
- package/dist/utils/promptDelivery.d.ts.map +1 -0
- package/dist/utils/promptDelivery.js +49 -0
- package/dist/utils/promptDelivery.js.map +1 -0
- package/dist/utils/providerDisconnectPlan.d.ts +82 -0
- package/dist/utils/providerDisconnectPlan.d.ts.map +1 -0
- package/dist/utils/providerDisconnectPlan.js +110 -0
- package/dist/utils/providerDisconnectPlan.js.map +1 -0
- package/dist/utils/rateLimitLog.d.ts +48 -0
- package/dist/utils/rateLimitLog.d.ts.map +1 -0
- package/dist/utils/rateLimitLog.js +43 -0
- package/dist/utils/rateLimitLog.js.map +1 -0
- package/dist/utils/recentRelayWindow.d.ts +165 -0
- package/dist/utils/recentRelayWindow.d.ts.map +1 -0
- package/dist/utils/recentRelayWindow.js +284 -0
- package/dist/utils/recentRelayWindow.js.map +1 -0
- package/dist/utils/recvPreviewRedaction.d.ts +23 -0
- package/dist/utils/recvPreviewRedaction.d.ts.map +1 -0
- package/dist/utils/recvPreviewRedaction.js +39 -0
- package/dist/utils/recvPreviewRedaction.js.map +1 -0
- package/dist/utils/reminderFlow.d.ts +148 -0
- package/dist/utils/reminderFlow.d.ts.map +1 -0
- package/dist/utils/reminderFlow.js +122 -0
- package/dist/utils/reminderFlow.js.map +1 -0
- package/dist/utils/reminderScheduleText.d.ts +87 -0
- package/dist/utils/reminderScheduleText.d.ts.map +1 -0
- package/dist/utils/reminderScheduleText.js +135 -0
- package/dist/utils/reminderScheduleText.js.map +1 -0
- package/dist/utils/reminderWizard.d.ts +710 -0
- package/dist/utils/reminderWizard.d.ts.map +1 -0
- package/dist/utils/reminderWizard.js +1164 -0
- package/dist/utils/reminderWizard.js.map +1 -0
- package/dist/utils/replyQuote.d.ts +111 -0
- package/dist/utils/replyQuote.d.ts.map +1 -0
- package/dist/utils/replyQuote.js +122 -0
- package/dist/utils/replyQuote.js.map +1 -0
- package/dist/utils/resolveBinary.d.ts +25 -0
- package/dist/utils/resolveBinary.d.ts.map +1 -0
- package/dist/utils/resolveBinary.js +99 -0
- package/dist/utils/resolveBinary.js.map +1 -0
- package/dist/utils/retryAfterHeader.d.ts +7 -0
- package/dist/utils/retryAfterHeader.d.ts.map +1 -0
- package/dist/utils/retryAfterHeader.js +17 -0
- package/dist/utils/retryAfterHeader.js.map +1 -0
- package/dist/utils/rotatingJsonlFile.d.ts +40 -0
- package/dist/utils/rotatingJsonlFile.d.ts.map +1 -0
- package/dist/utils/rotatingJsonlFile.js +106 -0
- package/dist/utils/rotatingJsonlFile.js.map +1 -0
- package/dist/utils/rotatingLogFile.d.ts +25 -0
- package/dist/utils/rotatingLogFile.d.ts.map +1 -0
- package/dist/utils/rotatingLogFile.js +74 -0
- package/dist/utils/rotatingLogFile.js.map +1 -0
- package/dist/utils/sendRateTracker.d.ts +59 -0
- package/dist/utils/sendRateTracker.d.ts.map +1 -0
- package/dist/utils/sendRateTracker.js +144 -0
- package/dist/utils/sendRateTracker.js.map +1 -0
- package/dist/utils/serialQueue.d.ts +5 -0
- package/dist/utils/serialQueue.d.ts.map +1 -0
- package/dist/utils/serialQueue.js +14 -0
- package/dist/utils/serialQueue.js.map +1 -0
- package/dist/utils/sseStreamLifecycle.d.ts +32 -0
- package/dist/utils/sseStreamLifecycle.d.ts.map +1 -0
- package/dist/utils/sseStreamLifecycle.js +41 -0
- package/dist/utils/sseStreamLifecycle.js.map +1 -0
- package/dist/utils/startupReadiness.d.ts +119 -0
- package/dist/utils/startupReadiness.d.ts.map +1 -0
- package/dist/utils/startupReadiness.js +148 -0
- package/dist/utils/startupReadiness.js.map +1 -0
- package/dist/utils/statusFlushDecision.d.ts +18 -0
- package/dist/utils/statusFlushDecision.d.ts.map +1 -0
- package/dist/utils/statusFlushDecision.js +53 -0
- package/dist/utils/statusFlushDecision.js.map +1 -0
- package/dist/utils/subagentRender.d.ts +52 -0
- package/dist/utils/subagentRender.d.ts.map +1 -0
- package/dist/utils/subagentRender.js +66 -0
- package/dist/utils/subagentRender.js.map +1 -0
- package/dist/utils/subagentStatusRender.d.ts +90 -0
- package/dist/utils/subagentStatusRender.d.ts.map +1 -0
- package/dist/utils/subagentStatusRender.js +124 -0
- package/dist/utils/subagentStatusRender.js.map +1 -0
- package/dist/utils/telegramError.d.ts +2 -0
- package/dist/utils/telegramError.d.ts.map +1 -0
- package/dist/utils/telegramError.js +16 -0
- package/dist/utils/telegramError.js.map +1 -0
- package/dist/utils/terminalEmitPlan.d.ts +74 -0
- package/dist/utils/terminalEmitPlan.d.ts.map +1 -0
- package/dist/utils/terminalEmitPlan.js +86 -0
- package/dist/utils/terminalEmitPlan.js.map +1 -0
- package/dist/utils/thinkingRender.d.ts +74 -0
- package/dist/utils/thinkingRender.d.ts.map +1 -0
- package/dist/utils/thinkingRender.js +85 -0
- package/dist/utils/thinkingRender.js.map +1 -0
- package/dist/utils/threadStatusReport.d.ts +79 -0
- package/dist/utils/threadStatusReport.d.ts.map +1 -0
- package/dist/utils/threadStatusReport.js +88 -0
- package/dist/utils/threadStatusReport.js.map +1 -0
- package/dist/utils/threadToggle.d.ts +29 -0
- package/dist/utils/threadToggle.d.ts.map +1 -0
- package/dist/utils/threadToggle.js +39 -0
- package/dist/utils/threadToggle.js.map +1 -0
- package/dist/utils/timezone.d.ts +125 -0
- package/dist/utils/timezone.d.ts.map +1 -0
- package/dist/utils/timezone.js +278 -0
- package/dist/utils/timezone.js.map +1 -0
- package/dist/utils/tmuxExec.d.ts +61 -0
- package/dist/utils/tmuxExec.d.ts.map +1 -0
- package/dist/utils/tmuxExec.js +109 -0
- package/dist/utils/tmuxExec.js.map +1 -0
- package/dist/utils/tmuxSessionName.d.ts +34 -0
- package/dist/utils/tmuxSessionName.d.ts.map +1 -0
- package/dist/utils/tmuxSessionName.js +51 -0
- package/dist/utils/tmuxSessionName.js.map +1 -0
- package/dist/utils/toolResultRender.d.ts +61 -0
- package/dist/utils/toolResultRender.d.ts.map +1 -0
- package/dist/utils/toolResultRender.js +62 -0
- package/dist/utils/toolResultRender.js.map +1 -0
- package/dist/utils/topicRequest.d.ts +61 -0
- package/dist/utils/topicRequest.d.ts.map +1 -0
- package/dist/utils/topicRequest.js +68 -0
- package/dist/utils/topicRequest.js.map +1 -0
- package/dist/utils/topicView.d.ts +55 -0
- package/dist/utils/topicView.d.ts.map +1 -0
- package/dist/utils/topicView.js +56 -0
- package/dist/utils/topicView.js.map +1 -0
- package/dist/utils/transcribeAudio.d.ts +89 -0
- package/dist/utils/transcribeAudio.d.ts.map +1 -0
- package/dist/utils/transcribeAudio.js +249 -0
- package/dist/utils/transcribeAudio.js.map +1 -0
- package/dist/utils/transientFrames.d.ts +52 -0
- package/dist/utils/transientFrames.d.ts.map +1 -0
- package/dist/utils/transientFrames.js +41 -0
- package/dist/utils/transientFrames.js.map +1 -0
- package/dist/utils/typingActive.d.ts +35 -0
- package/dist/utils/typingActive.d.ts.map +1 -0
- package/dist/utils/typingActive.js +22 -0
- package/dist/utils/typingActive.js.map +1 -0
- package/dist/utils/typingLoopBackstop.d.ts +64 -0
- package/dist/utils/typingLoopBackstop.d.ts.map +1 -0
- package/dist/utils/typingLoopBackstop.js +68 -0
- package/dist/utils/typingLoopBackstop.js.map +1 -0
- package/dist/utils/verbosityRender.d.ts +18 -0
- package/dist/utils/verbosityRender.d.ts.map +1 -0
- package/dist/utils/verbosityRender.js +17 -0
- package/dist/utils/verbosityRender.js.map +1 -0
- package/dist/utils/wedgeRecovery.d.ts +57 -0
- package/dist/utils/wedgeRecovery.d.ts.map +1 -0
- package/dist/utils/wedgeRecovery.js +24 -0
- package/dist/utils/wedgeRecovery.js.map +1 -0
- package/dist/utils.d.ts +30 -0
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +61 -0
- package/dist/utils.js.map +1 -0
- package/dist/validation.d.ts +113 -0
- package/dist/validation.d.ts.map +1 -0
- package/dist/validation.js +226 -0
- package/dist/validation.js.map +1 -0
- package/dist/voiceQueue.d.ts +7 -0
- package/dist/voiceQueue.d.ts.map +1 -0
- package/dist/voiceQueue.js +33 -0
- package/dist/voiceQueue.js.map +1 -0
- package/examples/.env.example +17 -0
- package/examples/docker-compose.yml +36 -0
- package/package.json +83 -4
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.telegramPostUploadResponseDeadlineMs = void 0;
|
|
7
|
+
exports.createTelegramFileInput = createTelegramFileInput;
|
|
8
|
+
exports.checkIsDocumentFileSendMediaGroup = checkIsDocumentFileSendMediaGroup;
|
|
9
|
+
exports.createTelegramMediaGroup = createTelegramMediaGroup;
|
|
10
|
+
exports.getTelegramMessageIds = getTelegramMessageIds;
|
|
11
|
+
exports.createTelegramFileSendGateway = createTelegramFileSendGateway;
|
|
12
|
+
const node_fs_1 = require("node:fs");
|
|
13
|
+
const node_stream_1 = require("node:stream");
|
|
14
|
+
const promises_1 = require("node:stream/promises");
|
|
15
|
+
const abort_controller_1 = __importDefault(require("abort-controller"));
|
|
16
|
+
const fileSendService_1 = require("../../utils/fileSendService");
|
|
17
|
+
const utils_1 = require("../../utils");
|
|
18
|
+
const sendErrorClassifier_1 = require("../../sendErrorClassifier");
|
|
19
|
+
/** A stream may terminate without closing the descriptor retained by the service. */
|
|
20
|
+
const descriptorStreamFs = {
|
|
21
|
+
read: node_fs_1.read,
|
|
22
|
+
close: (_fileDescriptor, callback) => callback(null),
|
|
23
|
+
};
|
|
24
|
+
/** Maximum wait for Telegram's response after every request-body stream ends. */
|
|
25
|
+
exports.telegramPostUploadResponseDeadlineMs = 30_000;
|
|
26
|
+
function startPostUploadResponseDeadline(callback, delayMs) {
|
|
27
|
+
const timer = setTimeout(callback, delayMs);
|
|
28
|
+
timer.unref?.();
|
|
29
|
+
return () => clearTimeout(timer);
|
|
30
|
+
}
|
|
31
|
+
/** Create the Telegraf-side controller; stream state decides whether to abort it. */
|
|
32
|
+
function createTelegrafAbortBridge() {
|
|
33
|
+
const controller = new abort_controller_1.default();
|
|
34
|
+
return {
|
|
35
|
+
signal: controller.signal,
|
|
36
|
+
abort: () => controller.abort(),
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Keep one attempt's streams alive only for its send callback. Terminal listeners
|
|
41
|
+
* are registered before the callback starts. Cancellation destroys unread streams
|
|
42
|
+
* and aborts the sender only while any request body remains unconsumed. Once every
|
|
43
|
+
* stream has ended, the callback owns the delivery outcome and must settle before
|
|
44
|
+
* cleanup completes or a retry can begin. A bounded response deadline starts only
|
|
45
|
+
* after every stream ends normally; expiry aborts the sender and awaits settlement.
|
|
46
|
+
*/
|
|
47
|
+
async function executeWithTerminalStreams(streams, signal, abortSender, startResponseDeadline, send) {
|
|
48
|
+
const terminalPromises = streams.map(async (stream) => {
|
|
49
|
+
try {
|
|
50
|
+
await (0, promises_1.finished)(stream, { cleanup: true });
|
|
51
|
+
}
|
|
52
|
+
catch {
|
|
53
|
+
// destroy() rejects finished(); settlement, not that expected error, owns this boundary.
|
|
54
|
+
}
|
|
55
|
+
return stream.readableEnded;
|
|
56
|
+
});
|
|
57
|
+
const destroyLiveStreams = () => {
|
|
58
|
+
for (const stream of streams) {
|
|
59
|
+
if (!stream.destroyed && !stream.readableEnded)
|
|
60
|
+
stream.destroy();
|
|
61
|
+
}
|
|
62
|
+
};
|
|
63
|
+
let handleAbort = null;
|
|
64
|
+
if (signal) {
|
|
65
|
+
handleAbort = () => {
|
|
66
|
+
if (streams.every((stream) => stream.readableEnded))
|
|
67
|
+
return;
|
|
68
|
+
destroyLiveStreams();
|
|
69
|
+
abortSender();
|
|
70
|
+
};
|
|
71
|
+
signal.addEventListener('abort', handleAbort, { once: true });
|
|
72
|
+
if (signal.aborted)
|
|
73
|
+
handleAbort();
|
|
74
|
+
}
|
|
75
|
+
let isSendSettled = false;
|
|
76
|
+
let responseDeadlineError = null;
|
|
77
|
+
let cancelResponseDeadline = () => { };
|
|
78
|
+
const responseDeadlineReady = Promise.all(terminalPromises).then((streamEndStates) => {
|
|
79
|
+
if (isSendSettled || !streamEndStates.every(Boolean))
|
|
80
|
+
return;
|
|
81
|
+
cancelResponseDeadline = startResponseDeadline(() => {
|
|
82
|
+
responseDeadlineError = new Error(`Telegram did not respond within ${exports.telegramPostUploadResponseDeadlineMs} ms after upload completed`);
|
|
83
|
+
abortSender();
|
|
84
|
+
}, exports.telegramPostUploadResponseDeadlineMs);
|
|
85
|
+
});
|
|
86
|
+
try {
|
|
87
|
+
return await send();
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
if (responseDeadlineError) {
|
|
91
|
+
throw new fileSendService_1.FileSendDeliveryUnknownError(responseDeadlineError);
|
|
92
|
+
}
|
|
93
|
+
throw error;
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
isSendSettled = true;
|
|
97
|
+
cancelResponseDeadline();
|
|
98
|
+
if (signal && handleAbort)
|
|
99
|
+
signal.removeEventListener('abort', handleAbort);
|
|
100
|
+
destroyLiveStreams();
|
|
101
|
+
await Promise.all(terminalPromises);
|
|
102
|
+
await responseDeadlineReady;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Build a fresh retry input without transferring descriptor ownership. Non-empty
|
|
107
|
+
* snapshots use a positional stream capped at the validated end byte; an empty
|
|
108
|
+
* snapshot uses an in-memory empty Readable so later file growth stays invisible.
|
|
109
|
+
*/
|
|
110
|
+
function createTelegramFileInput(snapshot) {
|
|
111
|
+
return {
|
|
112
|
+
source: snapshot.sizeBytes === 0
|
|
113
|
+
? node_stream_1.Readable.from(Buffer.alloc(0), { objectMode: false })
|
|
114
|
+
: (0, node_fs_1.createReadStream)('', {
|
|
115
|
+
fd: snapshot.fd,
|
|
116
|
+
autoClose: false,
|
|
117
|
+
fs: descriptorStreamFs,
|
|
118
|
+
start: 0,
|
|
119
|
+
end: snapshot.sizeBytes - 1,
|
|
120
|
+
}),
|
|
121
|
+
filename: snapshot.filename,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
/** Narrow the project media union before constructing Telegraf's homogeneous arrays. */
|
|
125
|
+
function checkIsDocumentFileSendMediaGroup(mediaGroup) {
|
|
126
|
+
return mediaGroup.kind === 'document';
|
|
127
|
+
}
|
|
128
|
+
/** Convert a project-owned descriptor group into fresh Telegraf inputs for one attempt. */
|
|
129
|
+
function createTelegramMediaGroup(mediaGroup) {
|
|
130
|
+
if (checkIsDocumentFileSendMediaGroup(mediaGroup)) {
|
|
131
|
+
const media = mediaGroup.media.map((entry) => ({
|
|
132
|
+
type: 'document',
|
|
133
|
+
media: createTelegramFileInput(entry.media),
|
|
134
|
+
...(entry.caption !== undefined ? { caption: entry.caption } : {}),
|
|
135
|
+
}));
|
|
136
|
+
return media;
|
|
137
|
+
}
|
|
138
|
+
const media = mediaGroup.media.map((entry) => {
|
|
139
|
+
const telegramInput = createTelegramFileInput(entry.media);
|
|
140
|
+
if (entry.type === 'photo') {
|
|
141
|
+
return {
|
|
142
|
+
type: 'photo',
|
|
143
|
+
media: telegramInput,
|
|
144
|
+
...(entry.caption !== undefined ? { caption: entry.caption } : {}),
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
return {
|
|
148
|
+
type: 'video',
|
|
149
|
+
media: telegramInput,
|
|
150
|
+
...(entry.caption !== undefined ? { caption: entry.caption } : {}),
|
|
151
|
+
};
|
|
152
|
+
});
|
|
153
|
+
return media;
|
|
154
|
+
}
|
|
155
|
+
/** Extract sent message ids in Telegram response order for `/clear` tracking. */
|
|
156
|
+
function getTelegramMessageIds(sent) {
|
|
157
|
+
return Array.isArray(sent)
|
|
158
|
+
? sent.map((message) => message.message_id)
|
|
159
|
+
: [sent.message_id];
|
|
160
|
+
}
|
|
161
|
+
/** Preserve retryable API errors/cancellation and mark only ambiguous initiated sends. */
|
|
162
|
+
function throwTelegramDeliveryError(error, isDeliveryInitiated, isAbortForwarded, signal) {
|
|
163
|
+
if (error instanceof fileSendService_1.FileSendDeliveryUnknownError)
|
|
164
|
+
throw error;
|
|
165
|
+
if (isAbortForwarded && signal)
|
|
166
|
+
throw (0, utils_1.getAbortError)(signal);
|
|
167
|
+
if ((0, utils_1.checkIsAbortError)(error))
|
|
168
|
+
throw error;
|
|
169
|
+
if ((0, sendErrorClassifier_1.checkIsApiError)(error) || !isDeliveryInitiated)
|
|
170
|
+
throw error;
|
|
171
|
+
const cause = error instanceof Error
|
|
172
|
+
? error
|
|
173
|
+
: new Error('Telegram delivery failed without an error response');
|
|
174
|
+
throw new fileSendService_1.FileSendDeliveryUnknownError(cause);
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Build the production gateway so every invocation constructs fresh bounded
|
|
178
|
+
* inputs and no attempt settles until all of its streams are terminal.
|
|
179
|
+
*/
|
|
180
|
+
function createTelegramFileSendGateway(deps) {
|
|
181
|
+
const startResponseDeadline = deps.startPostUploadResponseDeadline
|
|
182
|
+
?? startPostUploadResponseDeadline;
|
|
183
|
+
async function executeSingleSend(target, source, caption, send, signal) {
|
|
184
|
+
const input = createTelegramFileInput(source);
|
|
185
|
+
const telegrafAbort = createTelegrafAbortBridge();
|
|
186
|
+
let isDeliveryInitiated = false;
|
|
187
|
+
try {
|
|
188
|
+
const sent = await executeWithTerminalStreams([input.source], signal, telegrafAbort.abort, startResponseDeadline, async () => {
|
|
189
|
+
isDeliveryInitiated = true;
|
|
190
|
+
return send(target, input, caption, telegrafAbort.signal);
|
|
191
|
+
});
|
|
192
|
+
return { messageIds: getTelegramMessageIds(sent) };
|
|
193
|
+
}
|
|
194
|
+
catch (error) {
|
|
195
|
+
throwTelegramDeliveryError(error, isDeliveryInitiated, telegrafAbort.signal.aborted, signal);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
return {
|
|
199
|
+
sendPhoto: (target, source, caption, signal) => executeSingleSend(target, source, caption, deps.sendPhoto, signal),
|
|
200
|
+
sendAnimation: (target, source, caption, signal) => executeSingleSend(target, source, caption, deps.sendAnimation, signal),
|
|
201
|
+
sendVideo: (target, source, caption, signal) => executeSingleSend(target, source, caption, deps.sendVideo, signal),
|
|
202
|
+
sendDocument: (target, source, caption, signal) => executeSingleSend(target, source, caption, deps.sendDocument, signal),
|
|
203
|
+
sendMediaGroup: async (target, mediaGroup, signal) => {
|
|
204
|
+
const telegramMediaGroup = createTelegramMediaGroup(mediaGroup);
|
|
205
|
+
const streams = telegramMediaGroup.map((entry) => entry.media.source);
|
|
206
|
+
const telegrafAbort = createTelegrafAbortBridge();
|
|
207
|
+
let isDeliveryInitiated = false;
|
|
208
|
+
try {
|
|
209
|
+
const sent = await executeWithTerminalStreams(streams, signal, telegrafAbort.abort, startResponseDeadline, async () => {
|
|
210
|
+
isDeliveryInitiated = true;
|
|
211
|
+
return deps.sendMediaGroup(target, telegramMediaGroup, telegrafAbort.signal);
|
|
212
|
+
});
|
|
213
|
+
return { messageIds: getTelegramMessageIds(sent) };
|
|
214
|
+
}
|
|
215
|
+
catch (error) {
|
|
216
|
+
throwTelegramDeliveryError(error, isDeliveryInitiated, telegrafAbort.signal.aborted, signal);
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
};
|
|
220
|
+
}
|
|
221
|
+
//# sourceMappingURL=fileSendGateway.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fileSendGateway.js","sourceRoot":"","sources":["../../../src/connectors/telegram/fileSendGateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { type Locale } from '../../i18n';
|
|
2
|
+
import type { SessionKey } from '../../sessionKey';
|
|
3
|
+
/**
|
|
4
|
+
* @description What the Telegram side of `bot.ts` does with a conversation of
|
|
5
|
+
* ANOTHER platform (Jira connector plan J2, D19). Every adapter event runs inside
|
|
6
|
+
* a locale lookup and may reach a Telegram send; both read the Telegram chat id,
|
|
7
|
+
* which throws for a foreign key — so without these a Jira session would throw on
|
|
8
|
+
* its first output. A foreign key gets the fallback locale, no group title, and
|
|
9
|
+
* every Telegram I/O primitive returns early.
|
|
10
|
+
*/
|
|
11
|
+
/** The per-chat locale settings `state.json` holds for Telegram chats. */
|
|
12
|
+
export interface TelegramChatLocaleStore {
|
|
13
|
+
getChatLocaleOverride(chatId: number): Locale | null;
|
|
14
|
+
getChatTelegramLocale(chatId: number): Locale | null;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* @description The locale a conversation's bot texts are written in: the chat's
|
|
18
|
+
* `/language` override, else the Telegram locale last seen there, else the
|
|
19
|
+
* default — which is also what a conversation of another platform gets.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getTelegramConversationLocale(key: SessionKey, store: TelegramChatLocaleStore | null): Locale;
|
|
22
|
+
/** Where the preamble's `group:` label comes from. */
|
|
23
|
+
export interface PreambleGroupTitleSources {
|
|
24
|
+
getCachedGroupTitle(chatId: number): string | undefined;
|
|
25
|
+
checkIsDmKey(key: SessionKey): boolean;
|
|
26
|
+
getBotName(): string | undefined;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* @description The `group:` label of the thread-context preamble: the cached
|
|
30
|
+
* supergroup title; for the owner's DM (a private chat has no title) the bot's
|
|
31
|
+
* own name; nothing for a conversation of another platform.
|
|
32
|
+
*/
|
|
33
|
+
export declare function getTelegramPreambleGroupTitle(key: SessionKey, sources: PreambleGroupTitleSources): string | undefined;
|
|
34
|
+
/**
|
|
35
|
+
* @description Only the Telegram conversations of a list. The binding store is
|
|
36
|
+
* shared by every platform (a Jira issue binds its project folder too), while a
|
|
37
|
+
* Telegram listing or check over it reads each key's chat or topic id — which
|
|
38
|
+
* throws for a foreign key.
|
|
39
|
+
*/
|
|
40
|
+
export declare function getTelegramConversations<T extends {
|
|
41
|
+
key: SessionKey;
|
|
42
|
+
}>(entries: readonly T[]): T[];
|
|
43
|
+
/** What every Telegram refusal of a foreign conversation says — the primitive guard's skip and the send queue's error alike. */
|
|
44
|
+
export declare const notTelegramChatPhrase = "is not a Telegram chat";
|
|
45
|
+
/**
|
|
46
|
+
* @description A guard for the Telegram I/O primitives (send / edit / delete /
|
|
47
|
+
* typing / pin / pinned banner): `true` for a Telegram key, `false` for any
|
|
48
|
+
* other — the primitive then returns early. The skip is logged ONCE per
|
|
49
|
+
* primitive and conversation, since output arrives in many chunks.
|
|
50
|
+
*/
|
|
51
|
+
export declare function createTelegramPrimitiveGuard(warn?: (line: string) => void): (key: SessionKey, primitive: string) => boolean;
|
|
52
|
+
//# sourceMappingURL=foreignKeyFallbacks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"foreignKeyFallbacks.d.ts","sourceRoot":"","sources":["../../../src/connectors/telegram/foreignKeyFallbacks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AACxD,OAAO,KAAK,EAAc,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAI/D;;;;;;;GAOG;AAEH,0EAA0E;AAC1E,MAAM,WAAW,uBAAuB;IACtC,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IACrD,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;CACtD;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,uBAAuB,GAAG,IAAI,GAAG,MAAM,CAI5G;AAED,sDAAsD;AACtD,MAAM,WAAW,yBAAyB;IACxC,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACxD,YAAY,CAAC,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC;IACvC,UAAU,IAAI,MAAM,GAAG,SAAS,CAAC;CAClC;AAED;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,UAAU,EAAE,OAAO,EAAE,yBAAyB,GAAG,MAAM,GAAG,SAAS,CAKrH;AAKD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,SAAS;IAAE,GAAG,EAAE,UAAU,CAAA;CAAE,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,GAAG,CAAC,EAAE,CAElG;AAED,gIAAgI;AAChI,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAK9D;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,IAAI,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAmB,GAC1C,CAAC,GAAG,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAYjD"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.notTelegramChatPhrase = void 0;
|
|
4
|
+
exports.getTelegramConversationLocale = getTelegramConversationLocale;
|
|
5
|
+
exports.getTelegramPreambleGroupTitle = getTelegramPreambleGroupTitle;
|
|
6
|
+
exports.getTelegramConversations = getTelegramConversations;
|
|
7
|
+
exports.createTelegramPrimitiveGuard = createTelegramPrimitiveGuard;
|
|
8
|
+
const i18n_1 = require("../../i18n");
|
|
9
|
+
const connectorSet_1 = require("../../platform/connectorSet");
|
|
10
|
+
const sessionKeyCodec_1 = require("./sessionKeyCodec");
|
|
11
|
+
/**
|
|
12
|
+
* @description The locale a conversation's bot texts are written in: the chat's
|
|
13
|
+
* `/language` override, else the Telegram locale last seen there, else the
|
|
14
|
+
* default — which is also what a conversation of another platform gets.
|
|
15
|
+
*/
|
|
16
|
+
function getTelegramConversationLocale(key, store) {
|
|
17
|
+
if (!store || !(0, sessionKeyCodec_1.checkIsTelegramKey)(key))
|
|
18
|
+
return i18n_1.defaultLocale;
|
|
19
|
+
const chatId = (0, sessionKeyCodec_1.getTelegramChatId)(key);
|
|
20
|
+
return store.getChatLocaleOverride(chatId) ?? store.getChatTelegramLocale(chatId) ?? i18n_1.defaultLocale;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* @description The `group:` label of the thread-context preamble: the cached
|
|
24
|
+
* supergroup title; for the owner's DM (a private chat has no title) the bot's
|
|
25
|
+
* own name; nothing for a conversation of another platform.
|
|
26
|
+
*/
|
|
27
|
+
function getTelegramPreambleGroupTitle(key, sources) {
|
|
28
|
+
if (!(0, sessionKeyCodec_1.checkIsTelegramKey)(key))
|
|
29
|
+
return undefined;
|
|
30
|
+
const cached = sources.getCachedGroupTitle((0, sessionKeyCodec_1.getTelegramChatId)(key));
|
|
31
|
+
if (cached)
|
|
32
|
+
return cached;
|
|
33
|
+
return sources.checkIsDmKey(key) ? sources.getBotName() : undefined;
|
|
34
|
+
}
|
|
35
|
+
/** The platform set {@link getTelegramConversations} keeps. */
|
|
36
|
+
const telegramPlatforms = (0, connectorSet_1.getServedPlatforms)(['telegram']);
|
|
37
|
+
/**
|
|
38
|
+
* @description Only the Telegram conversations of a list. The binding store is
|
|
39
|
+
* shared by every platform (a Jira issue binds its project folder too), while a
|
|
40
|
+
* Telegram listing or check over it reads each key's chat or topic id — which
|
|
41
|
+
* throws for a foreign key.
|
|
42
|
+
*/
|
|
43
|
+
function getTelegramConversations(entries) {
|
|
44
|
+
return (0, connectorSet_1.getServedConversations)(entries, telegramPlatforms);
|
|
45
|
+
}
|
|
46
|
+
/** What every Telegram refusal of a foreign conversation says — the primitive guard's skip and the send queue's error alike. */
|
|
47
|
+
exports.notTelegramChatPhrase = 'is not a Telegram chat';
|
|
48
|
+
/** Distinct (primitive, conversation) pairs remembered before the memory starts over. */
|
|
49
|
+
const reportedPrimitiveSkipsMaxSize = 1000;
|
|
50
|
+
/**
|
|
51
|
+
* @description A guard for the Telegram I/O primitives (send / edit / delete /
|
|
52
|
+
* typing / pin / pinned banner): `true` for a Telegram key, `false` for any
|
|
53
|
+
* other — the primitive then returns early. The skip is logged ONCE per
|
|
54
|
+
* primitive and conversation, since output arrives in many chunks.
|
|
55
|
+
*/
|
|
56
|
+
function createTelegramPrimitiveGuard(warn = console.warn) {
|
|
57
|
+
const reported = new Set();
|
|
58
|
+
return (key, primitive) => {
|
|
59
|
+
if ((0, sessionKeyCodec_1.checkIsTelegramKey)(key))
|
|
60
|
+
return true;
|
|
61
|
+
const reportKey = [primitive, key.platform, key.space, key.thread].join('|');
|
|
62
|
+
if (!reported.has(reportKey)) {
|
|
63
|
+
if (reported.size >= reportedPrimitiveSkipsMaxSize)
|
|
64
|
+
reported.clear();
|
|
65
|
+
reported.add(reportKey);
|
|
66
|
+
warn(`[telegram] ${primitive} skipped: ${key.platform} conversation ${key.space}/${key.thread} ${exports.notTelegramChatPhrase}`);
|
|
67
|
+
}
|
|
68
|
+
return false;
|
|
69
|
+
};
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=foreignKeyFallbacks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"foreignKeyFallbacks.js","sourceRoot":"","sources":["../../../src/connectors/telegram/foreignKeyFallbacks.ts"],"names":[],"mappings":";;;AAyBA,sEAIC;AAcD,sEAKC;AAWD,4DAEC;AAcD,oEAcC;AAzFD,qCAAwD;AAExD,8DAAyF;AACzF,uDAA0E;AAiB1E;;;;GAIG;AACH,SAAgB,6BAA6B,CAAC,GAAe,EAAE,KAAqC;IAClG,IAAI,CAAC,KAAK,IAAI,CAAC,IAAA,oCAAkB,EAAC,GAAG,CAAC;QAAE,OAAO,oBAAa,CAAC;IAC7D,MAAM,MAAM,GAAG,IAAA,mCAAiB,EAAC,GAAG,CAAC,CAAC;IACtC,OAAO,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qBAAqB,CAAC,MAAM,CAAC,IAAI,oBAAa,CAAC;AACrG,CAAC;AASD;;;;GAIG;AACH,SAAgB,6BAA6B,CAAC,GAAe,EAAE,OAAkC;IAC/F,IAAI,CAAC,IAAA,oCAAkB,EAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/C,MAAM,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,IAAA,mCAAiB,EAAC,GAAG,CAAC,CAAC,CAAC;IACnE,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,OAAO,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;AACtE,CAAC;AAED,+DAA+D;AAC/D,MAAM,iBAAiB,GAA4B,IAAA,iCAAkB,EAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAEpF;;;;;GAKG;AACH,SAAgB,wBAAwB,CAAgC,OAAqB;IAC3F,OAAO,IAAA,qCAAsB,EAAC,OAAO,EAAE,iBAAiB,CAAC,CAAC;AAC5D,CAAC;AAED,gIAAgI;AACnH,QAAA,qBAAqB,GAAG,wBAAwB,CAAC;AAE9D,yFAAyF;AACzF,MAAM,6BAA6B,GAAG,IAAI,CAAC;AAE3C;;;;;GAKG;AACH,SAAgB,4BAA4B,CAC1C,OAA+B,OAAO,CAAC,IAAI;IAE3C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;QACxB,IAAI,IAAA,oCAAkB,EAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACzC,MAAM,SAAS,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7E,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7B,IAAI,QAAQ,CAAC,IAAI,IAAI,6BAA6B;gBAAE,QAAQ,CAAC,KAAK,EAAE,CAAC;YACrE,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,cAAc,SAAS,aAAa,GAAG,CAAC,QAAQ,iBAAiB,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,MAAM,IAAI,6BAAqB,EAAE,CAAC,CAAC;QAC5H,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description The Telegram connector's inbound half — everything that turns a
|
|
3
|
+
* raw Telegram update into the core's platform-neutral {@link InboundEvent},
|
|
4
|
+
* plus the membership vocabulary the access policy used to import from telegraf
|
|
5
|
+
* directly.
|
|
6
|
+
*
|
|
7
|
+
* Nothing here decides policy. It translates: Telegram's nine `ChatMember`
|
|
8
|
+
* statuses become one `hasElevatedRights` boolean, its six media fields become
|
|
9
|
+
* five {@link AttachmentKind}s, and its `/name@bot args` syntax becomes an
|
|
10
|
+
* {@link InboundCommand} the neutral router can dispatch.
|
|
11
|
+
*/
|
|
12
|
+
import type { ChatMember, Message } from 'telegraf/typings/core/types/typegram';
|
|
13
|
+
import type { SessionKey } from '../../sessionKey';
|
|
14
|
+
import type { ConnectorInbound, InboundCommand, InboundEvent, NormalizedAttachment, PlatformMember } from '../../platform/inbound';
|
|
15
|
+
import { type TelegramFileMeta } from './fileIntake';
|
|
16
|
+
/**
|
|
17
|
+
* @description The two facts about THIS bot that inbound normalization needs:
|
|
18
|
+
* the username, to tell `/cmd@thisbot` from a command aimed at another bot in
|
|
19
|
+
* the same group, and the user id, to attribute a quoted reply to the assistant
|
|
20
|
+
* rather than to a person.
|
|
21
|
+
*/
|
|
22
|
+
export interface TelegramBotIdentity {
|
|
23
|
+
username?: string;
|
|
24
|
+
userId?: number;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* @description Reduce a `getChatAdministrators` response to the core's neutral
|
|
28
|
+
* member shape. Bots are kept but flagged, so the policy's "real person" rule
|
|
29
|
+
* stays in the policy instead of being silently pre-applied here.
|
|
30
|
+
*/
|
|
31
|
+
export declare function getPlatformMembers(members: ChatMember[]): PlatformMember[];
|
|
32
|
+
/**
|
|
33
|
+
* @description Should a `chat_member` status transition invalidate the cached
|
|
34
|
+
* admin set? Only transitions that TOUCH elevated status matter — someone was
|
|
35
|
+
* or becomes creator/administrator (promotion, demotion, an admin leaving).
|
|
36
|
+
* Joins/leaves of regular members can't change the admin set, so they must not
|
|
37
|
+
* trigger a `getChatAdministrators` refetch.
|
|
38
|
+
*
|
|
39
|
+
* Lives in the connector because the decision is expressed entirely in
|
|
40
|
+
* Telegram's status vocabulary.
|
|
41
|
+
*/
|
|
42
|
+
export declare function checkShouldInvalidateAdminCache(oldStatus: ChatMember['status'], newStatus: ChatMember['status']): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* @description Normalize a message's media into the core's attachment shape.
|
|
45
|
+
*
|
|
46
|
+
* Voice is handled separately from {@link getTelegramFileMeta} because the bot
|
|
47
|
+
* routes it to transcription rather than file intake — but the core still needs
|
|
48
|
+
* to see that the message CARRIED something, so it is normalized here.
|
|
49
|
+
*/
|
|
50
|
+
export declare function getNormalizedAttachments(message: Message): NormalizedAttachment[];
|
|
51
|
+
/**
|
|
52
|
+
* @description Recognise Telegram's command syntax in a text message.
|
|
53
|
+
*
|
|
54
|
+
* Deliberately mirrors telegraf's own `Composer.command` matching rule so
|
|
55
|
+
* routing commands through the neutral router cannot change which messages
|
|
56
|
+
* count as commands:
|
|
57
|
+
*
|
|
58
|
+
* - the message's FIRST entity must be a `bot_command` at offset 0;
|
|
59
|
+
* - `/name@someone` only counts when `someone` is this bot (case-insensitive),
|
|
60
|
+
* so a command addressed to another bot in the same group falls through;
|
|
61
|
+
* - everything after the command token is the argument remainder.
|
|
62
|
+
*
|
|
63
|
+
* Returns `null` when the message is not a command — the caller then treats it
|
|
64
|
+
* as plain text.
|
|
65
|
+
*/
|
|
66
|
+
export declare function getTelegramCommand(message: Message.TextMessage, identity: TelegramBotIdentity): InboundCommand | null;
|
|
67
|
+
/**
|
|
68
|
+
* @description Finds the bot's saved copy of a file sent to the conversation
|
|
69
|
+
* earlier (the file intake keeps it under `DATA_DIR`), or `undefined` once it is
|
|
70
|
+
* gone or was never taken in.
|
|
71
|
+
*/
|
|
72
|
+
export type SavedFileFinder = (meta: TelegramFileMeta) => string | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* @description The agent-facing reply-quote block for a message the bot forwards
|
|
75
|
+
* as a prompt — a typed text, a voice note whose transcript becomes one, or a
|
|
76
|
+
* file whose announcement does — or `undefined` when there is nothing to fold in
|
|
77
|
+
* (no reply, the topic root, a service message, nothing quotable). One reader for
|
|
78
|
+
* all of them, so a spoken reply or a file sent as a reply carries exactly the
|
|
79
|
+
* block a typed reply to the same message does. A reply TO a file names that
|
|
80
|
+
* file, with the path `findSavedFile` returns for it.
|
|
81
|
+
*/
|
|
82
|
+
export declare function getTelegramReplyQuoteBlock(message: Message, identity: TelegramBotIdentity, findSavedFile?: SavedFileFinder): string | undefined;
|
|
83
|
+
/**
|
|
84
|
+
* @description Turn one Telegram message into the core's {@link InboundEvent}.
|
|
85
|
+
*
|
|
86
|
+
* `key` is passed in rather than derived here because resolving it needs the
|
|
87
|
+
* surface configuration (owner id, served group, chat mode) that lives in the
|
|
88
|
+
* bot's routing layer, not in this translation step.
|
|
89
|
+
*
|
|
90
|
+
* `raw` overrides what lands on the event's connector-private escape hatch. It
|
|
91
|
+
* exists because the not-yet-relocated command handlers still read Telegram
|
|
92
|
+
* fields off the telegraf CONTEXT rather than off the bare message; once they
|
|
93
|
+
* move into this directory the override goes away and `raw` is the message.
|
|
94
|
+
*/
|
|
95
|
+
export declare function getInboundEvent(message: Message, key: SessionKey, identity: TelegramBotIdentity, raw?: unknown): InboundEvent;
|
|
96
|
+
/**
|
|
97
|
+
* @description What the Telegram connector needs from the bot to serve the
|
|
98
|
+
* inbound side. Injected so this module never imports `bot.ts` (which would be
|
|
99
|
+
* a cycle) and so the connector is testable without Telegraf.
|
|
100
|
+
*/
|
|
101
|
+
export interface TelegramInboundDeps {
|
|
102
|
+
/** `bot.telegram.getChatAdministrators` for one chat id. */
|
|
103
|
+
listAdministrators: (chatId: number) => Promise<ChatMember[]>;
|
|
104
|
+
/**
|
|
105
|
+
* `bot.botInfo` reduced to the two facts normalization needs. Read lazily:
|
|
106
|
+
* `botInfo` is only populated once telegraf has called `getMe` at launch,
|
|
107
|
+
* which happens after this connector is constructed.
|
|
108
|
+
*/
|
|
109
|
+
getIdentity: () => TelegramBotIdentity;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* @description The Telegram connector's inbound side.
|
|
113
|
+
*
|
|
114
|
+
* {@link deliver} is the connector-facing entry: the telegraf handlers call it
|
|
115
|
+
* with a raw message and the resolved key, it normalizes, and the core's
|
|
116
|
+
* registered handler receives a platform-neutral {@link InboundEvent}.
|
|
117
|
+
*
|
|
118
|
+
* `start` / `stop` arm and disarm that delivery. They deliberately do NOT own
|
|
119
|
+
* the long-polling transport yet: `bot.launch` still lives in the bot's startup
|
|
120
|
+
* sequence alongside the rest of the telegraf wiring, and moves in behind this
|
|
121
|
+
* interface when that wiring relocates into this directory.
|
|
122
|
+
*/
|
|
123
|
+
export interface TelegramConnectorInbound extends ConnectorInbound {
|
|
124
|
+
/**
|
|
125
|
+
* Normalize one Telegram message and hand it to the registered core handler.
|
|
126
|
+
* `raw` overrides the event's escape hatch — see {@link getInboundEvent}.
|
|
127
|
+
*/
|
|
128
|
+
deliver(message: Message, key: SessionKey, raw?: unknown): Promise<void>;
|
|
129
|
+
}
|
|
130
|
+
export declare function createTelegramConnectorInbound(deps: TelegramInboundDeps): TelegramConnectorInbound;
|
|
131
|
+
//# sourceMappingURL=inbound.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbound.d.ts","sourceRoot":"","sources":["../../../src/connectors/telegram/inbound.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAQ,MAAM,sCAAsC,CAAC;AACtF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEnD,OAAO,KAAK,EAEV,gBAAgB,EAEhB,cAAc,EACd,YAAY,EAGZ,oBAAoB,EACpB,cAAc,EACf,MAAM,wBAAwB,CAAC;AAEhC,OAAO,EAA8C,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AA2BjG;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAQD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,cAAc,EAAE,CAO1E;AAED;;;;;;;;;GASG;AACH,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,EAC/B,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,GAC9B,OAAO,CAET;AAgBD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,OAAO,GAAG,oBAAoB,EAAE,CAyBjF;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,CAAC,WAAW,EAC5B,QAAQ,EAAE,mBAAmB,GAC5B,cAAc,GAAG,IAAI,CASvB;AAOD;;;;GAIG;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,IAAI,EAAE,gBAAgB,KAAK,MAAM,GAAG,SAAS,CAAC;AA+D7E;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,mBAAmB,EAC7B,aAAa,CAAC,EAAE,eAAe,GAC9B,MAAM,GAAG,SAAS,CAEpB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,UAAU,EACf,QAAQ,EAAE,mBAAmB,EAC7B,GAAG,GAAE,OAAiB,GACrB,YAAY,CAcd;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,4DAA4D;IAC5D,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;IAC9D;;;;OAIG;IACH,WAAW,EAAE,MAAM,mBAAmB,CAAC;CACxC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAChE;;;OAGG;IACH,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1E;AAED,wBAAgB,8BAA8B,CAC5C,IAAI,EAAE,mBAAmB,GACxB,wBAAwB,CAkC1B"}
|