@overlordai/server 1.0.113 → 1.0.115
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/database/migrations/003-chat-bindings-project-key-index.sql +1 -0
- package/database/migrations/004-drop-agent-command.sql +2 -0
- package/database/migrations/005-task-name.sql +1 -0
- package/dist/adapters/adapter.interface.d.ts +4 -0
- package/dist/adapters/adapter.interface.d.ts.map +1 -1
- package/dist/adapters/adapter.interface.js.map +1 -1
- package/dist/adapters/command-parser.utils.d.ts +45 -0
- package/dist/adapters/command-parser.utils.d.ts.map +1 -0
- package/dist/adapters/command-parser.utils.js +144 -0
- package/dist/adapters/command-parser.utils.js.map +1 -0
- package/dist/adapters/help-text.d.ts +2 -0
- package/dist/adapters/help-text.d.ts.map +1 -0
- package/dist/adapters/help-text.js +24 -0
- package/dist/adapters/help-text.js.map +1 -0
- package/dist/adapters/lark/lark-card.builder.d.ts.map +1 -1
- package/dist/adapters/lark/lark-card.builder.js +10 -17
- package/dist/adapters/lark/lark-card.builder.js.map +1 -1
- package/dist/adapters/lark/lark-message.parser.d.ts +2 -35
- package/dist/adapters/lark/lark-message.parser.d.ts.map +1 -1
- package/dist/adapters/lark/lark-message.parser.js +12 -162
- package/dist/adapters/lark/lark-message.parser.js.map +1 -1
- package/dist/adapters/lark/lark.adapter.d.ts +18 -0
- package/dist/adapters/lark/lark.adapter.d.ts.map +1 -1
- package/dist/adapters/lark/lark.adapter.js +152 -23
- package/dist/adapters/lark/lark.adapter.js.map +1 -1
- package/dist/adapters/lark/lark.controller.d.ts.map +1 -1
- package/dist/adapters/lark/lark.controller.js +2 -1
- package/dist/adapters/lark/lark.controller.js.map +1 -1
- package/dist/adapters/slack/slack-block.builder.d.ts.map +1 -1
- package/dist/adapters/slack/slack-block.builder.js +7 -14
- package/dist/adapters/slack/slack-block.builder.js.map +1 -1
- package/dist/adapters/slack/slack-message.parser.d.ts +2 -11
- package/dist/adapters/slack/slack-message.parser.d.ts.map +1 -1
- package/dist/adapters/slack/slack-message.parser.js +12 -135
- package/dist/adapters/slack/slack-message.parser.js.map +1 -1
- package/dist/adapters/slack/slack.adapter.d.ts +5 -0
- package/dist/adapters/slack/slack.adapter.d.ts.map +1 -1
- package/dist/adapters/slack/slack.adapter.js +101 -25
- package/dist/adapters/slack/slack.adapter.js.map +1 -1
- package/dist/adapters/slack/slack.controller.d.ts.map +1 -1
- package/dist/adapters/slack/slack.controller.js +3 -4
- package/dist/adapters/slack/slack.controller.js.map +1 -1
- package/dist/common/config.d.ts +15 -0
- package/dist/common/config.d.ts.map +1 -1
- package/dist/common/config.js +27 -0
- package/dist/common/config.js.map +1 -1
- package/dist/common/project-validation.d.ts +1 -1
- package/dist/common/project-validation.d.ts.map +1 -1
- package/dist/common/project-validation.js +1 -9
- package/dist/common/project-validation.js.map +1 -1
- package/dist/common/status-display.d.ts +10 -0
- package/dist/common/status-display.d.ts.map +1 -0
- package/dist/common/status-display.js +35 -0
- package/dist/common/status-display.js.map +1 -0
- package/dist/common/string-utils.d.ts +3 -0
- package/dist/common/string-utils.d.ts.map +1 -1
- package/dist/common/string-utils.js +5 -0
- package/dist/common/string-utils.js.map +1 -1
- package/dist/database/repositories/bot.repository.d.ts +4 -0
- package/dist/database/repositories/bot.repository.d.ts.map +1 -1
- package/dist/database/repositories/bot.repository.js +15 -0
- package/dist/database/repositories/bot.repository.js.map +1 -1
- package/dist/database/repositories/project.repository.d.ts.map +1 -1
- package/dist/database/repositories/project.repository.js +0 -2
- package/dist/database/repositories/project.repository.js.map +1 -1
- package/dist/database/repositories/task.repository.d.ts +2 -1
- package/dist/database/repositories/task.repository.d.ts.map +1 -1
- package/dist/database/repositories/task.repository.js +19 -1
- package/dist/database/repositories/task.repository.js.map +1 -1
- package/dist/dispatcher/cleanup.service.d.ts +5 -0
- package/dist/dispatcher/cleanup.service.d.ts.map +1 -1
- package/dist/dispatcher/cleanup.service.js +19 -0
- package/dist/dispatcher/cleanup.service.js.map +1 -1
- package/dist/dispatcher/dispatcher.module.d.ts.map +1 -1
- package/dist/dispatcher/dispatcher.module.js +4 -0
- package/dist/dispatcher/dispatcher.module.js.map +1 -1
- package/dist/dispatcher/dispatcher.service.d.ts +0 -1
- package/dist/dispatcher/dispatcher.service.d.ts.map +1 -1
- package/dist/dispatcher/dispatcher.service.js +46 -45
- package/dist/dispatcher/dispatcher.service.js.map +1 -1
- package/dist/dispatcher/dispatcher.types.d.ts +1 -0
- package/dist/dispatcher/dispatcher.types.d.ts.map +1 -1
- package/dist/dispatcher/scheduler.service.d.ts.map +1 -1
- package/dist/dispatcher/scheduler.service.js +14 -3
- package/dist/dispatcher/scheduler.service.js.map +1 -1
- package/dist/dispatcher/stage-confirm-timeout.service.d.ts +15 -0
- package/dist/dispatcher/stage-confirm-timeout.service.d.ts.map +1 -0
- package/dist/dispatcher/stage-confirm-timeout.service.js +81 -0
- package/dist/dispatcher/stage-confirm-timeout.service.js.map +1 -0
- package/dist/dispatcher/task-creation.service.d.ts +3 -1
- package/dist/dispatcher/task-creation.service.d.ts.map +1 -1
- package/dist/dispatcher/task-creation.service.js +30 -4
- package/dist/dispatcher/task-creation.service.js.map +1 -1
- package/dist/dispatcher/task-lifecycle.service.d.ts +4 -2
- package/dist/dispatcher/task-lifecycle.service.d.ts.map +1 -1
- package/dist/dispatcher/task-lifecycle.service.js +78 -8
- package/dist/dispatcher/task-lifecycle.service.js.map +1 -1
- package/dist/dispatcher/task-name.service.d.ts +14 -0
- package/dist/dispatcher/task-name.service.d.ts.map +1 -0
- package/dist/dispatcher/task-name.service.js +80 -0
- package/dist/dispatcher/task-name.service.js.map +1 -0
- package/dist/events/event-types.d.ts +1 -0
- package/dist/events/event-types.d.ts.map +1 -1
- package/dist/notifier/notification-consumer.d.ts +33 -1
- package/dist/notifier/notification-consumer.d.ts.map +1 -1
- package/dist/notifier/notification-consumer.js +235 -11
- package/dist/notifier/notification-consumer.js.map +1 -1
- package/dist/notifier/notifier.service.d.ts +5 -1
- package/dist/notifier/notifier.service.d.ts.map +1 -1
- package/dist/notifier/notifier.service.js +6 -3
- package/dist/notifier/notifier.service.js.map +1 -1
- package/dist/notifier/template.service.d.ts +15 -0
- package/dist/notifier/template.service.d.ts.map +1 -1
- package/dist/notifier/template.service.js +92 -31
- package/dist/notifier/template.service.js.map +1 -1
- package/dist/web/admin/admin-developer.controller.d.ts +2 -2
- package/dist/web/admin/admin-settings.controller.d.ts.map +1 -1
- package/dist/web/admin/admin-settings.controller.js +0 -1
- package/dist/web/admin/admin-settings.controller.js.map +1 -1
- package/dist/web/dashboard.controller.d.ts +1 -1
- package/dist/web/dashboard.controller.d.ts.map +1 -1
- package/dist/web/dashboard.controller.js +12 -4
- package/dist/web/dashboard.controller.js.map +1 -1
- package/dist/web/dashboard.service.d.ts +18 -0
- package/dist/web/dashboard.service.d.ts.map +1 -1
- package/dist/web/dashboard.service.js +81 -11
- package/dist/web/dashboard.service.js.map +1 -1
- package/dist/web/frame-handlers/index.d.ts +2 -0
- package/dist/web/frame-handlers/index.d.ts.map +1 -1
- package/dist/web/frame-handlers/index.js +5 -1
- package/dist/web/frame-handlers/index.js.map +1 -1
- package/dist/web/frame-handlers/progress.handler.d.ts +3 -1
- package/dist/web/frame-handlers/progress.handler.d.ts.map +1 -1
- package/dist/web/frame-handlers/progress.handler.js +22 -3
- package/dist/web/frame-handlers/progress.handler.js.map +1 -1
- package/dist/web/frame-handlers/stage-choice.handler.d.ts +15 -0
- package/dist/web/frame-handlers/stage-choice.handler.d.ts.map +1 -0
- package/dist/web/frame-handlers/stage-choice.handler.js +39 -0
- package/dist/web/frame-handlers/stage-choice.handler.js.map +1 -0
- package/dist/web/frame-handlers/stage-confirm.handler.d.ts.map +1 -1
- package/dist/web/frame-handlers/stage-confirm.handler.js +1 -0
- package/dist/web/frame-handlers/stage-confirm.handler.js.map +1 -1
- package/dist/web/frame-handlers/stage-input.handler.d.ts +15 -0
- package/dist/web/frame-handlers/stage-input.handler.d.ts.map +1 -0
- package/dist/web/frame-handlers/stage-input.handler.js +39 -0
- package/dist/web/frame-handlers/stage-input.handler.js.map +1 -0
- package/dist/web/project.controller.d.ts +2 -4
- package/dist/web/project.controller.d.ts.map +1 -1
- package/dist/web/search.service.d.ts +1 -0
- package/dist/web/search.service.d.ts.map +1 -1
- package/dist/web/search.service.js +6 -6
- package/dist/web/search.service.js.map +1 -1
- package/dist/web/task.controller.d.ts +16 -1
- package/dist/web/task.controller.d.ts.map +1 -1
- package/dist/web/task.controller.js +57 -5
- package/dist/web/task.controller.js.map +1 -1
- package/dist/web/web-event.service.d.ts.map +1 -1
- package/dist/web/web-event.service.js +1 -0
- package/dist/web/web-event.service.js.map +1 -1
- package/dist/web/worker-channel.gateway.d.ts.map +1 -1
- package/dist/web/worker-channel.gateway.js +3 -1
- package/dist/web/worker-channel.gateway.js.map +1 -1
- package/package.json +4 -4
- package/public/assets/{AccessTokensPage-D_A93EkP.js → AccessTokensPage-Yp8IfrfF.js} +1 -1
- package/public/assets/{AdminPage-DnmoRibU.js → AdminPage-CS2HrhOC.js} +1 -1
- package/public/assets/ApiReferencePage-DTinm3RG.js +1 -0
- package/public/assets/{ArchitecturePage-Co5G-15M.js → ArchitecturePage-BpA3PUuf.js} +1 -1
- package/public/assets/{AuditLogPage-DoaVh4un.js → AuditLogPage-B_Qopq3a.js} +2 -2
- package/public/assets/{BindPlatformPage-C2bIjAbT.js → BindPlatformPage-BkV-IfaR.js} +1 -1
- package/public/assets/BotIntegrationPage-DLuRDIam.js +1 -0
- package/public/assets/BotManage-XKHjrA-7.js +6 -0
- package/public/assets/BotSetupPage-Cn40afR9.js +33 -0
- package/public/assets/{ChangelogPage-CazGvq6Y.js → ChangelogPage-ChiapPDH.js} +1 -1
- package/public/assets/{CliReferencePage-tonM0XBs.js → CliReferencePage-3eHb6kRq.js} +1 -1
- package/public/assets/{DeploymentPage-DwifcnIe.js → DeploymentPage-CvT9Pcow.js} +1 -1
- package/public/assets/{DevWorkflowPage-DJddffhm.js → DevWorkflowPage-BLEIbUu1.js} +1 -1
- package/public/assets/{DeveloperManage-DwaEFuLo.js → DeveloperManage-DAJBvmdv.js} +2 -2
- package/public/assets/{DeveloperSetupPage-DA4BHPuG.js → DeveloperSetupPage-BhE83ouS.js} +1 -1
- package/public/assets/{DocsIndexPage-C-FZbN8Z.js → DocsIndexPage-BE_tyO2Q.js} +1 -1
- package/public/assets/{DocsLayout-HdiVoWKl.js → DocsLayout-D1S4KUeB.js} +1 -1
- package/public/assets/{DocsPrimitives-DU41lKXb.js → DocsPrimitives-BQXfZXxZ.js} +1 -1
- package/public/assets/EditProjectPage-BjgRi6kG.js +2 -0
- package/public/assets/{EmptyState-i9jXL5NQ.js → EmptyState-Dlt6FhVC.js} +1 -1
- package/public/assets/EnvVariablesPage-CvcP4GZM.js +24 -0
- package/public/assets/HomePage-uEE3mJNM.js +1 -0
- package/public/assets/{InfoRow-kU23cpPE.js → InfoRow-Db2nisGq.js} +1 -1
- package/public/assets/{InstallationPage-JxXYftV0.js → InstallationPage-kt-du5Rr.js} +2 -2
- package/public/assets/{LandingPage-7--4I0lt.js → LandingPage-2irRMduO.js} +1 -1
- package/public/assets/{LocalDevelopmentPage-B0C1C5Rs.js → LocalDevelopmentPage-7JvSDwD1.js} +1 -1
- package/public/assets/{LoginPage-2Io9O_Q7.js → LoginPage-DDk_X1sv.js} +1 -1
- package/public/assets/{MetricBar-BSwVCFMX.js → MetricBar-BhjbfPOa.js} +1 -1
- package/public/assets/{NotFoundPage-DbO52kqL.js → NotFoundPage-ByRykDvA.js} +1 -1
- package/public/assets/{OnboardingGuide-BeP-StZq.js → OnboardingGuide-CinJRqx5.js} +1 -1
- package/public/assets/{PermissionsPage-BMM-SA8k.js → PermissionsPage-C5RXlztC.js} +1 -1
- package/public/assets/PipelineConfigPage-BSkSRngC.js +22 -0
- package/public/assets/{PipelineEditorPage-CpW1dBVH.js → PipelineEditorPage-BoZ_MVNO.js} +2 -2
- package/public/assets/{ProfilePage-BaDJoNI7.js → ProfilePage-CePUfQDH.js} +1 -1
- package/public/assets/ProjectDetailPage-_DswTp8-.js +7 -0
- package/public/assets/ProjectListPage-fVbDom8_.js +6 -0
- package/public/assets/{PtyTerminal-CEkY7dvk.js → PtyTerminal-Dpk4L7LN.js} +1 -1
- package/public/assets/{QuickAuth-9InsfbSA.js → QuickAuth-BAmZCI4O.js} +1 -1
- package/public/assets/{RemoveMemberConfirmDialog-Do5LW-9Q.js → RemoveMemberConfirmDialog-DYi6BAz2.js} +2 -2
- package/public/assets/{Select-8IQBiBBw.js → Select-DnIOEVCT.js} +1 -1
- package/public/assets/SettingsPage-CwV-t8vo.js +6 -0
- package/public/assets/{Skeleton-B3ZvE5gP.js → Skeleton--qglldqs.js} +1 -1
- package/public/assets/{SkillPage-BhiRgb-S.js → SkillPage-CsXXruJZ.js} +1 -1
- package/public/assets/TaskDetailPage-gOUWMfkb.js +21 -0
- package/public/assets/TaskListPage-vF17zpt2.js +1 -0
- package/public/assets/{TaskStatusBadge-B6mxAWy2.js → TaskStatusBadge-CCh-nmLz.js} +1 -1
- package/public/assets/TerminalHomePage-DXFg88Q9.js +11 -0
- package/public/assets/{TokenManage-CenYPcRv.js → TokenManage-P98_TYIe.js} +1 -1
- package/public/assets/Tooltip-DGoJgM_K.js +1 -0
- package/public/assets/{TotpSetupPage-DQyx573Y.js → TotpSetupPage-D5GUedMd.js} +1 -1
- package/public/assets/WorkerDetailPage-CkI1feoH.js +1 -0
- package/public/assets/{WorkerListPage-_bt8SJDK.js → WorkerListPage-C90v6nLx.js} +2 -2
- package/public/assets/{WorkerOperationsPage-CDat2rGV.js → WorkerOperationsPage-OxH0Ky0Y.js} +1 -1
- package/public/assets/{WorkerSetupGuidePage-CN7fSwA-.js → WorkerSetupGuidePage-DGlgYS82.js} +1 -1
- package/public/assets/{WorkerSetupPage--spDks6s.js → WorkerSetupPage-DJ359PwT.js} +1 -1
- package/public/assets/{arrow-left-CQ-bmyEx.js → arrow-left-BPgCxdEG.js} +1 -1
- package/public/assets/{arrow-right-BOWA0FvU.js → arrow-right-Z-hFp5rr.js} +1 -1
- package/public/assets/{bot-BpTfNKBP.js → bot-B7Bl9J0r.js} +1 -1
- package/public/assets/{chevron-right-D-xhzuZQ.js → chevron-right-D_hyYdgn.js} +1 -1
- package/public/assets/{copy-DXSXnWX4.js → copy-SJf3OFPQ.js} +1 -1
- package/public/assets/{download-FbsyL-QU.js → download-D7rCJJks.js} +1 -1
- package/public/assets/{external-link-CPRFmfE1.js → external-link-BrXLoqUZ.js} +1 -1
- package/public/assets/index-BiItJ2NI.css +1 -0
- package/public/assets/{index-D205WYza.js → index-DPCzKHL-.js} +23 -23
- package/public/assets/{key-Diuh2Udi.js → key-CCF8A0TZ.js} +1 -1
- package/public/assets/{loader-circle-CsopNBbX.js → loader-circle-BO0HYeDT.js} +1 -1
- package/public/assets/{pencil-n52F1Vop.js → pencil-BhxWbYup.js} +1 -1
- package/public/assets/{plus-BHkYD1iG.js → plus-BnJSQWb4.js} +1 -1
- package/public/assets/{rotate-ccw-Bl22woOU.js → rotate-ccw-CioNXT1z.js} +1 -1
- package/public/assets/{scroll-text-DbVWAYzk.js → scroll-text-DpFjChL8.js} +1 -1
- package/public/assets/{settings-0li6vYCf.js → settings-Bklbsj12.js} +1 -1
- package/public/assets/{status-colors-C6o-wKJJ.js → status-colors-BkxgT8vX.js} +1 -1
- package/public/assets/{task-constants-a8NftfbJ.js → task-constants-Ctac6aky.js} +1 -1
- package/public/assets/task-display-J_FNKBLK.js +1 -0
- package/public/assets/{trash-2-LoxvLZVm.js → trash-2-_3SD7t1j.js} +1 -1
- package/public/assets/{useFetch-DIPC8gCD.js → useFetch-D8w38eG7.js} +1 -1
- package/public/assets/{users-BgBBs7IT.js → users-BBjD2TJy.js} +1 -1
- package/public/assets/{wifi-CF0XZj9i.js → wifi-KyET3jRD.js} +1 -1
- package/public/assets/{workflow-DBOppGKP.js → workflow-EN1ACj2x.js} +1 -1
- package/public/index.html +2 -2
- package/public/sw.js +1 -1
- package/dist/common/command-parser.d.ts +0 -29
- package/dist/common/command-parser.d.ts.map +0 -1
- package/dist/common/command-parser.js +0 -133
- package/dist/common/command-parser.js.map +0 -1
- package/dist/common/machine-utils.d.ts +0 -32
- package/dist/common/machine-utils.d.ts.map +0 -1
- package/dist/common/machine-utils.js +0 -12
- package/dist/common/machine-utils.js.map +0 -1
- package/dist/common/worker-utils.d.ts +0 -31
- package/dist/common/worker-utils.d.ts.map +0 -1
- package/dist/common/worker-utils.js +0 -12
- package/dist/common/worker-utils.js.map +0 -1
- package/dist/database/repositories/machine.repository.d.ts +0 -46
- package/dist/database/repositories/machine.repository.d.ts.map +0 -1
- package/dist/database/repositories/machine.repository.js +0 -200
- package/dist/database/repositories/machine.repository.js.map +0 -1
- package/dist/dispatcher/machine-selector.d.ts +0 -18
- package/dist/dispatcher/machine-selector.d.ts.map +0 -1
- package/dist/dispatcher/machine-selector.js +0 -148
- package/dist/dispatcher/machine-selector.js.map +0 -1
- package/dist/web/admin/admin-machine.controller.d.ts +0 -72
- package/dist/web/admin/admin-machine.controller.d.ts.map +0 -1
- package/dist/web/admin/admin-machine.controller.js +0 -176
- package/dist/web/admin/admin-machine.controller.js.map +0 -1
- package/dist/web/machine.controller.d.ts +0 -115
- package/dist/web/machine.controller.d.ts.map +0 -1
- package/dist/web/machine.controller.js +0 -125
- package/dist/web/machine.controller.js.map +0 -1
- package/public/assets/ApiReferencePage-8Fvke3MS.js +0 -1
- package/public/assets/BotIntegrationPage-BgK7NXyQ.js +0 -1
- package/public/assets/BotManage-BlWUAERC.js +0 -6
- package/public/assets/BotSetupPage-BhNhgobr.js +0 -33
- package/public/assets/EditProjectPage-0HfKfeFS.js +0 -2
- package/public/assets/EnvVariablesPage-DofRDtyz.js +0 -1
- package/public/assets/HomePage-Ct5rkEIu.js +0 -1
- package/public/assets/PipelineConfigPage-6KxS3scE.js +0 -28
- package/public/assets/ProjectDetailPage-QjUSwxfS.js +0 -7
- package/public/assets/ProjectListPage-Bs0GPEJb.js +0 -6
- package/public/assets/SettingsPage-DRWkl-_N.js +0 -6
- package/public/assets/TaskDetailPage-vwqcnwqe.js +0 -21
- package/public/assets/TaskListPage-DRiTh03Z.js +0 -1
- package/public/assets/TerminalHomePage-sK-nSIOn.js +0 -11
- package/public/assets/WorkerDetailPage-BV7YTrMb.js +0 -1
- package/public/assets/index-DrlMKbMb.css +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
CREATE INDEX IF NOT EXISTS idx_chat_bindings_project_key ON chat_bindings(project_key);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
ALTER TABLE tasks ADD COLUMN name TEXT;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Request } from 'express';
|
|
2
2
|
import type { Command, DeveloperPublic, Platform } from '@overlordai/protocol';
|
|
3
|
+
import type { CardColor } from '../common/status-display';
|
|
3
4
|
/**
|
|
4
5
|
* Unified message content — adapters convert this into platform-specific format.
|
|
5
6
|
*/
|
|
@@ -8,6 +9,7 @@ export interface AdapterMessage {
|
|
|
8
9
|
text?: string;
|
|
9
10
|
card?: {
|
|
10
11
|
title: string;
|
|
12
|
+
color?: CardColor;
|
|
11
13
|
fields: Array<{
|
|
12
14
|
label: string;
|
|
13
15
|
value: string;
|
|
@@ -30,6 +32,8 @@ export interface IMessageAdapter {
|
|
|
30
32
|
sendMessage(chatId: string, content: AdapterMessage): Promise<string>;
|
|
31
33
|
/** Update an existing message (e.g. progress card). */
|
|
32
34
|
updateMessage(msgId: string, content: AdapterMessage): Promise<void>;
|
|
35
|
+
/** Send a direct message to a user by their platform UID. Returns message ID or undefined if DM not supported. */
|
|
36
|
+
sendDM(platformUid: string, content: AdapterMessage): Promise<string | undefined>;
|
|
33
37
|
/** Resolve a platform-specific user ID to an Overlord Developer (secrets stripped). */
|
|
34
38
|
resolveUser(platformUid: string): Promise<DeveloperPublic | null>;
|
|
35
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.interface.d.ts","sourceRoot":"","sources":["../../src/adapters/adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,QAAQ,EACT,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.interface.d.ts","sourceRoot":"","sources":["../../src/adapters/adapter.interface.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,KAAK,EACV,OAAO,EACP,eAAe,EACf,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE;QACL,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,SAAS,CAAC;QAClB,MAAM,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAChD,OAAO,CAAC,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAC;YAAC,KAAK,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAClE,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE5B,gFAAgF;IAChF,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAErD,iEAAiE;IACjE,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEtE,uDAAuD;IACvD,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAErE,kHAAkH;IAClH,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAElF,uFAAuF;IACvF,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;CACnE;AAED,mDAAmD;AACnD,eAAO,MAAM,gBAAgB,eAA6B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.interface.js","sourceRoot":"","sources":["../../src/adapters/adapter.interface.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"adapter.interface.js","sourceRoot":"","sources":["../../src/adapters/adapter.interface.ts"],"names":[],"mappings":";;;AA4CA,mDAAmD;AACtC,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { CommandType } from '@overlordai/protocol';
|
|
2
|
+
/**
|
|
3
|
+
* Parsed command extracted from an @bot message.
|
|
4
|
+
*/
|
|
5
|
+
export interface ParsedCommand {
|
|
6
|
+
type: CommandType | 'help';
|
|
7
|
+
args: {
|
|
8
|
+
description?: string;
|
|
9
|
+
project?: string;
|
|
10
|
+
worker?: string;
|
|
11
|
+
taskId?: number;
|
|
12
|
+
taskType?: string;
|
|
13
|
+
query?: string;
|
|
14
|
+
};
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Tokenize input text, respecting single and double-quoted strings.
|
|
18
|
+
* Quotes are stripped from the resulting tokens.
|
|
19
|
+
*/
|
|
20
|
+
export declare function tokenize(text: string): string[];
|
|
21
|
+
/**
|
|
22
|
+
* Extract a task ID from tokens. Recognises `#42` or bare `42`.
|
|
23
|
+
*/
|
|
24
|
+
export declare function extractTaskId(tokens: string[]): number | undefined;
|
|
25
|
+
/**
|
|
26
|
+
* Parse a command that accepts an optional task ID.
|
|
27
|
+
*/
|
|
28
|
+
export declare function parseWithOptionalTaskId(type: CommandType, tokens: string[]): ParsedCommand;
|
|
29
|
+
/**
|
|
30
|
+
* Parse a command that requires a task ID; returns help if missing.
|
|
31
|
+
*/
|
|
32
|
+
export declare function parseWithRequiredTaskId(type: CommandType, tokens: string[]): ParsedCommand;
|
|
33
|
+
/**
|
|
34
|
+
* Parse a "develop" command with description, --project, and --on flags.
|
|
35
|
+
*/
|
|
36
|
+
export declare function parseDevelop(tokens: string[]): ParsedCommand;
|
|
37
|
+
/**
|
|
38
|
+
* Parse a "list" command with optional --project flag.
|
|
39
|
+
*/
|
|
40
|
+
export declare function parseList(tokens: string[]): ParsedCommand;
|
|
41
|
+
/**
|
|
42
|
+
* Parse a "search" command — all tokens joined as the query.
|
|
43
|
+
*/
|
|
44
|
+
export declare function parseSearch(tokens: string[]): ParsedCommand;
|
|
45
|
+
//# sourceMappingURL=command-parser.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-parser.utils.d.ts","sourceRoot":"","sources":["../../src/adapters/command-parser.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,WAAW,GAAG,MAAM,CAAC;IAC3B,IAAI,EAAE;QACJ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAe/C;AAKD;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,SAAS,CAQlE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EAAE,GACf,aAAa,CAMf;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EAAE,GACf,aAAa,CAMf;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAmD5D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAmBzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,aAAa,CAM3D"}
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.tokenize = tokenize;
|
|
4
|
+
exports.extractTaskId = extractTaskId;
|
|
5
|
+
exports.parseWithOptionalTaskId = parseWithOptionalTaskId;
|
|
6
|
+
exports.parseWithRequiredTaskId = parseWithRequiredTaskId;
|
|
7
|
+
exports.parseDevelop = parseDevelop;
|
|
8
|
+
exports.parseList = parseList;
|
|
9
|
+
exports.parseSearch = parseSearch;
|
|
10
|
+
const protocol_1 = require("@overlordai/protocol");
|
|
11
|
+
/**
|
|
12
|
+
* Tokenize input text, respecting single and double-quoted strings.
|
|
13
|
+
* Quotes are stripped from the resulting tokens.
|
|
14
|
+
*/
|
|
15
|
+
function tokenize(text) {
|
|
16
|
+
const tokens = [];
|
|
17
|
+
// /g regex — must be created fresh each call to avoid stale lastIndex
|
|
18
|
+
const regex = /(?:"([^"]*)")|(?:'([^']*)')|(\S+)/g;
|
|
19
|
+
let match;
|
|
20
|
+
while ((match = regex.exec(text)) !== null) {
|
|
21
|
+
// match[1] = double-quoted content, match[2] = single-quoted, match[3] = unquoted
|
|
22
|
+
const value = match[1] ?? match[2] ?? match[3];
|
|
23
|
+
if (value !== undefined) {
|
|
24
|
+
tokens.push(value);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
return tokens;
|
|
28
|
+
}
|
|
29
|
+
/** Module-level regex for extracting task IDs (no /g flag, safe to reuse). */
|
|
30
|
+
const TASK_ID_RE = /^#?(\d+)$/;
|
|
31
|
+
/**
|
|
32
|
+
* Extract a task ID from tokens. Recognises `#42` or bare `42`.
|
|
33
|
+
*/
|
|
34
|
+
function extractTaskId(tokens) {
|
|
35
|
+
for (const token of tokens) {
|
|
36
|
+
const match = TASK_ID_RE.exec(token);
|
|
37
|
+
if (match) {
|
|
38
|
+
return parseInt(match[1], 10);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
return undefined;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Parse a command that accepts an optional task ID.
|
|
45
|
+
*/
|
|
46
|
+
function parseWithOptionalTaskId(type, tokens) {
|
|
47
|
+
const taskId = extractTaskId(tokens);
|
|
48
|
+
return {
|
|
49
|
+
type,
|
|
50
|
+
args: taskId !== undefined ? { taskId } : {},
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Parse a command that requires a task ID; returns help if missing.
|
|
55
|
+
*/
|
|
56
|
+
function parseWithRequiredTaskId(type, tokens) {
|
|
57
|
+
const taskId = extractTaskId(tokens);
|
|
58
|
+
if (taskId === undefined) {
|
|
59
|
+
return { type: 'help', args: {} };
|
|
60
|
+
}
|
|
61
|
+
return { type, args: { taskId } };
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Parse a "develop" command with description, --project, and --on flags.
|
|
65
|
+
*/
|
|
66
|
+
function parseDevelop(tokens) {
|
|
67
|
+
let description;
|
|
68
|
+
let project;
|
|
69
|
+
let worker;
|
|
70
|
+
let i = 0;
|
|
71
|
+
while (i < tokens.length) {
|
|
72
|
+
const token = tokens[i];
|
|
73
|
+
if (token === '--project' || token === '-p') {
|
|
74
|
+
i++;
|
|
75
|
+
if (i < tokens.length)
|
|
76
|
+
project = tokens[i];
|
|
77
|
+
i++;
|
|
78
|
+
continue;
|
|
79
|
+
}
|
|
80
|
+
if (token === '--on') {
|
|
81
|
+
i++;
|
|
82
|
+
if (i < tokens.length)
|
|
83
|
+
worker = tokens[i];
|
|
84
|
+
i++;
|
|
85
|
+
continue;
|
|
86
|
+
}
|
|
87
|
+
// First non-flag token is the description
|
|
88
|
+
if (description === undefined) {
|
|
89
|
+
description = token;
|
|
90
|
+
}
|
|
91
|
+
i++;
|
|
92
|
+
}
|
|
93
|
+
if (!description) {
|
|
94
|
+
return { type: 'help', args: {} };
|
|
95
|
+
}
|
|
96
|
+
let taskType;
|
|
97
|
+
const typeMatch = description.match(/^(feat|fix|refactor|docs|chore):\s*/i);
|
|
98
|
+
if (typeMatch) {
|
|
99
|
+
taskType = typeMatch[1].toLowerCase();
|
|
100
|
+
description = description.slice(typeMatch[0].length).trim();
|
|
101
|
+
}
|
|
102
|
+
return {
|
|
103
|
+
type: protocol_1.CommandType.DEVELOP,
|
|
104
|
+
args: {
|
|
105
|
+
description: description.trim(),
|
|
106
|
+
...(project ? { project } : {}),
|
|
107
|
+
...(worker ? { worker } : {}),
|
|
108
|
+
...(taskType ? { taskType } : {}),
|
|
109
|
+
},
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* Parse a "list" command with optional --project flag.
|
|
114
|
+
*/
|
|
115
|
+
function parseList(tokens) {
|
|
116
|
+
let project;
|
|
117
|
+
let i = 0;
|
|
118
|
+
while (i < tokens.length) {
|
|
119
|
+
const token = tokens[i];
|
|
120
|
+
if (token === '--project' || token === '-p') {
|
|
121
|
+
i++;
|
|
122
|
+
if (i < tokens.length)
|
|
123
|
+
project = tokens[i];
|
|
124
|
+
i++;
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
i++;
|
|
128
|
+
}
|
|
129
|
+
return {
|
|
130
|
+
type: protocol_1.CommandType.LIST,
|
|
131
|
+
args: project ? { project } : {},
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
/**
|
|
135
|
+
* Parse a "search" command — all tokens joined as the query.
|
|
136
|
+
*/
|
|
137
|
+
function parseSearch(tokens) {
|
|
138
|
+
const query = tokens.join(' ').trim();
|
|
139
|
+
if (!query) {
|
|
140
|
+
return { type: 'help', args: {} };
|
|
141
|
+
}
|
|
142
|
+
return { type: protocol_1.CommandType.SEARCH, args: { query } };
|
|
143
|
+
}
|
|
144
|
+
//# sourceMappingURL=command-parser.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-parser.utils.js","sourceRoot":"","sources":["../../src/adapters/command-parser.utils.ts"],"names":[],"mappings":";;AAqBA,4BAeC;AAQD,sCAQC;AAKD,0DASC;AAKD,0DASC;AAKD,oCAmDC;AAKD,8BAmBC;AAKD,kCAMC;AA3KD,mDAAmD;AAiBnD;;;GAGG;AACH,SAAgB,QAAQ,CAAC,IAAY;IACnC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,sEAAsE;IACtE,MAAM,KAAK,GAAG,oCAAoC,CAAC;IACnD,IAAI,KAA6B,CAAC;IAElC,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAC3C,kFAAkF;QAClF,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,GAAG,WAAW,CAAC;AAE/B;;GAEG;AACH,SAAgB,aAAa,CAAC,MAAgB;IAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CACrC,IAAiB,EACjB,MAAgB;IAEhB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE;KAC7C,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,uBAAuB,CACrC,IAAiB,EACjB,MAAgB;IAEhB,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACrC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,SAAgB,YAAY,CAAC,MAAgB;IAC3C,IAAI,WAA+B,CAAC;IACpC,IAAI,OAA2B,CAAC;IAChC,IAAI,MAA0B,CAAC;IAE/B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAExB,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC5C,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM;gBAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,KAAK,KAAK,MAAM,EAAE,CAAC;YACrB,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM;gBAAE,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1C,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,0CAA0C;QAC1C,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;YAC9B,WAAW,GAAG,KAAK,CAAC;QACtB,CAAC;QAED,CAAC,EAAE,CAAC;IACN,CAAC;IAED,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACpC,CAAC;IAED,IAAI,QAA4B,CAAC;IACjC,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC5E,IAAI,SAAS,EAAE,CAAC;QACd,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACtC,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,CAAC;IAED,OAAO;QACL,IAAI,EAAE,sBAAW,CAAC,OAAO;QACzB,IAAI,EAAE;YACJ,WAAW,EAAE,WAAW,CAAC,IAAI,EAAE;YAC/B,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7B,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClC;KACF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,SAAS,CAAC,MAAgB;IACxC,IAAI,OAA2B,CAAC;IAEhC,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC5C,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM;gBAAE,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3C,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QACD,CAAC,EAAE,CAAC;IACN,CAAC;IAED,OAAO;QACL,IAAI,EAAE,sBAAW,CAAC,IAAI;QACtB,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;KACjC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAgB,WAAW,CAAC,MAAgB;IAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,sBAAW,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;AACvD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-text.d.ts","sourceRoot":"","sources":["../../src/adapters/help-text.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAmBtD"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildHelpText = buildHelpText;
|
|
4
|
+
function buildHelpText(platform) {
|
|
5
|
+
return [
|
|
6
|
+
'Available commands:',
|
|
7
|
+
' develop "description" [@user] [--project key] [--on worker]',
|
|
8
|
+
' — prefix with feat:/fix:/refactor:/docs:/chore: to set task type',
|
|
9
|
+
' — @mention a user to assign the task to them',
|
|
10
|
+
' — reply to a message to include it as task context',
|
|
11
|
+
' show #taskId — view task details',
|
|
12
|
+
' cancel #taskId',
|
|
13
|
+
' retry #taskId',
|
|
14
|
+
' list [--project key]',
|
|
15
|
+
' confirm #taskId',
|
|
16
|
+
' projects — list your projects',
|
|
17
|
+
' status — show cluster status',
|
|
18
|
+
' workers — list all workers',
|
|
19
|
+
' search <query> — search tasks, workers, projects',
|
|
20
|
+
` bind — link your ${platform} account to Overlord`,
|
|
21
|
+
' info — show chat and user info for this channel',
|
|
22
|
+
].join('\n');
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=help-text.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"help-text.js","sourceRoot":"","sources":["../../src/adapters/help-text.ts"],"names":[],"mappings":";;AAAA,sCAmBC;AAnBD,SAAgB,aAAa,CAAC,QAAgB;IAC5C,OAAO;QACL,qBAAqB;QACrB,+DAA+D;QAC/D,sEAAsE;QACtE,kDAAkD;QAClD,wDAAwD;QACxD,oCAAoC;QACpC,kBAAkB;QAClB,iBAAiB;QACjB,wBAAwB;QACxB,mBAAmB;QACnB,iCAAiC;QACjC,gCAAgC;QAChC,8BAA8B;QAC9B,oDAAoD;QACpD,sBAAsB,QAAQ,sBAAsB;QACpD,mDAAmD;KACpD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-card.builder.d.ts","sourceRoot":"","sources":["../../../src/adapters/lark/lark-card.builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"lark-card.builder.d.ts","sourceRoot":"","sources":["../../../src/adapters/lark/lark-card.builder.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAK3D;;;;;GAKG;AACH,qBACa,eAAe;IAC1B;;OAEG;IACH,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,cAAc;IAuCzC;;OAEG;IACH,qBAAqB,CACnB,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,GACjB,cAAc;IA4BjB;;;OAGG;IACH,cAAc,CAAC,GAAG,EAAE,cAAc,GAAG,MAAM;CA8D5C"}
|
|
@@ -8,19 +8,9 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
9
|
exports.LarkCardBuilder = void 0;
|
|
10
10
|
const common_1 = require("@nestjs/common");
|
|
11
|
-
const protocol_1 = require("@overlordai/protocol");
|
|
12
11
|
const config_1 = require("../../common/config");
|
|
13
12
|
const string_utils_1 = require("../../common/string-utils");
|
|
14
|
-
|
|
15
|
-
const STATUS_COLORS = {
|
|
16
|
-
[protocol_1.TaskStatus.QUEUED]: 'grey',
|
|
17
|
-
[protocol_1.TaskStatus.ASSIGNED]: 'blue',
|
|
18
|
-
[protocol_1.TaskStatus.RUNNING]: 'blue',
|
|
19
|
-
[protocol_1.TaskStatus.SUSPENDED]: 'orange',
|
|
20
|
-
[protocol_1.TaskStatus.COMPLETED]: 'green',
|
|
21
|
-
[protocol_1.TaskStatus.FAILED]: 'red',
|
|
22
|
-
[protocol_1.TaskStatus.CANCELLED]: 'grey',
|
|
23
|
-
};
|
|
13
|
+
const status_display_1 = require("../../common/status-display");
|
|
24
14
|
/**
|
|
25
15
|
* Builds Lark Interactive Message Cards for task notifications.
|
|
26
16
|
*
|
|
@@ -32,12 +22,13 @@ let LarkCardBuilder = class LarkCardBuilder {
|
|
|
32
22
|
* Build a task status notification card.
|
|
33
23
|
*/
|
|
34
24
|
buildTaskCard(task) {
|
|
35
|
-
const
|
|
25
|
+
const emoji = status_display_1.TASK_STATUS_EMOJIS[task.status] ?? '❓';
|
|
26
|
+
const color = status_display_1.TASK_STATUS_COLORS[task.status] ?? 'grey';
|
|
36
27
|
const webUrl = `${(0, config_1.getWebUrl)()}/tasks/${task.id}`;
|
|
37
28
|
const fields = [
|
|
38
29
|
{ label: 'Task', value: `#${task.id}` },
|
|
39
|
-
{ label: 'Description', value: (0, string_utils_1.
|
|
40
|
-
{ label: 'Status', value:
|
|
30
|
+
{ label: 'Description', value: (0, string_utils_1.taskDisplayName)(task) },
|
|
31
|
+
{ label: 'Status', value: `${emoji} ${task.status}` },
|
|
41
32
|
{ label: 'Project', value: task.projectKey },
|
|
42
33
|
];
|
|
43
34
|
if (task.currentStage) {
|
|
@@ -55,7 +46,8 @@ let LarkCardBuilder = class LarkCardBuilder {
|
|
|
55
46
|
return {
|
|
56
47
|
type: 'card',
|
|
57
48
|
card: {
|
|
58
|
-
title:
|
|
49
|
+
title: `${emoji} Task #${task.id} — ${task.status}`,
|
|
50
|
+
color,
|
|
59
51
|
fields,
|
|
60
52
|
actions,
|
|
61
53
|
},
|
|
@@ -68,7 +60,8 @@ let LarkCardBuilder = class LarkCardBuilder {
|
|
|
68
60
|
return {
|
|
69
61
|
type: 'card',
|
|
70
62
|
card: {
|
|
71
|
-
title: 'Duplicate Task Detected',
|
|
63
|
+
title: '⚠️ Duplicate Task Detected',
|
|
64
|
+
color: 'orange',
|
|
72
65
|
fields: [
|
|
73
66
|
{ label: 'Existing Task', value: `#${existingTaskId}` },
|
|
74
67
|
{ label: 'Description', value: (0, string_utils_1.truncate)(description, 50) },
|
|
@@ -141,7 +134,7 @@ let LarkCardBuilder = class LarkCardBuilder {
|
|
|
141
134
|
config: { wide_screen_mode: true },
|
|
142
135
|
header: {
|
|
143
136
|
title: { tag: 'plain_text', content: card.title },
|
|
144
|
-
template: 'blue',
|
|
137
|
+
template: card.color ?? 'blue',
|
|
145
138
|
},
|
|
146
139
|
elements,
|
|
147
140
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-card.builder.js","sourceRoot":"","sources":["../../../src/adapters/lark/lark-card.builder.ts"],"names":[],"mappings":";;;;;;;;;AAAA,2CAA4C;
|
|
1
|
+
{"version":3,"file":"lark-card.builder.js","sourceRoot":"","sources":["../../../src/adapters/lark/lark-card.builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
* Parsed command extracted from a Lark @bot message.
|
|
4
|
-
*/
|
|
5
|
-
export interface ParsedCommand {
|
|
6
|
-
type: CommandType | 'help';
|
|
7
|
-
args: {
|
|
8
|
-
description?: string;
|
|
9
|
-
project?: string;
|
|
10
|
-
worker?: string;
|
|
11
|
-
taskId?: number;
|
|
12
|
-
taskType?: string;
|
|
13
|
-
query?: string;
|
|
14
|
-
option?: string;
|
|
15
|
-
inputText?: string;
|
|
16
|
-
};
|
|
17
|
-
}
|
|
1
|
+
export type { ParsedCommand } from '../command-parser.utils';
|
|
2
|
+
import type { ParsedCommand } from '../command-parser.utils';
|
|
18
3
|
/**
|
|
19
4
|
* Parses Lark @bot message text into structured commands.
|
|
20
5
|
*
|
|
@@ -32,8 +17,6 @@ export interface ParsedCommand {
|
|
|
32
17
|
* @bot show #42
|
|
33
18
|
* @bot workers
|
|
34
19
|
* @bot search keyword
|
|
35
|
-
* @bot choose #42 optionA
|
|
36
|
-
* @bot input #42 "some text"
|
|
37
20
|
*/
|
|
38
21
|
export declare class LarkMessageParser {
|
|
39
22
|
/**
|
|
@@ -42,21 +25,5 @@ export declare class LarkMessageParser {
|
|
|
42
25
|
* @returns Parsed command, or a help command if unrecognised.
|
|
43
26
|
*/
|
|
44
27
|
parse(text: string): ParsedCommand;
|
|
45
|
-
private parseDevelop;
|
|
46
|
-
private parseWithOptionalTaskId;
|
|
47
|
-
private parseWithRequiredTaskId;
|
|
48
|
-
private parseList;
|
|
49
|
-
private parseSearch;
|
|
50
|
-
private parseChoose;
|
|
51
|
-
private parseInput;
|
|
52
|
-
/**
|
|
53
|
-
* Extract a task ID from tokens. Recognises `#42` or bare `42`.
|
|
54
|
-
*/
|
|
55
|
-
private extractTaskId;
|
|
56
|
-
/**
|
|
57
|
-
* Tokenize input text, respecting single and double-quoted strings.
|
|
58
|
-
* Quotes are stripped from the resulting tokens.
|
|
59
|
-
*/
|
|
60
|
-
private tokenize;
|
|
61
28
|
}
|
|
62
29
|
//# sourceMappingURL=lark-message.parser.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-message.parser.d.ts","sourceRoot":"","sources":["../../../src/adapters/lark/lark-message.parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lark-message.parser.d.ts","sourceRoot":"","sources":["../../../src/adapters/lark/lark-message.parser.ts"],"names":[],"mappings":"AAWA,YAAY,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,iBAAiB;IAC5B;;;;OAIG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa;CAsEnC"}
|