@xgjktech/xg_cwork_im 1.19.27 → 1.19.28
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/README.md +1 -0
- package/dist/src/connection/account-connection.d.ts.map +1 -1
- package/dist/src/connection/account-connection.js +3 -0
- package/dist/src/connection/account-connection.js.map +1 -1
- package/dist/src/inbound/inbound-url-rewrite.d.ts +32 -0
- package/dist/src/inbound/inbound-url-rewrite.d.ts.map +1 -0
- package/dist/src/inbound/inbound-url-rewrite.js +94 -0
- package/dist/src/inbound/inbound-url-rewrite.js.map +1 -0
- package/dist/src/inbound/inbound-url-rewrite.test.d.ts +2 -0
- package/dist/src/inbound/inbound-url-rewrite.test.d.ts.map +1 -0
- package/dist/src/inbound/inbound-url-rewrite.test.js +90 -0
- package/dist/src/inbound/inbound-url-rewrite.test.js.map +1 -0
- package/dist/src/plugin/channel-config.d.ts +32 -0
- package/dist/src/plugin/channel-config.d.ts.map +1 -1
- package/dist/src/plugin/channel-config.js +12 -0
- package/dist/src/plugin/channel-config.js.map +1 -1
- package/dist/src/plugin/channel-config.test.js +15 -0
- package/dist/src/plugin/channel-config.test.js.map +1 -1
- package/dist/src/plugin/types.d.ts +15 -0
- package/dist/src/plugin/types.d.ts.map +1 -1
- package/dist/src/plugin/types.js.map +1 -1
- package/package.json +1 -1
- package/dist/src/account-connection.d.ts +0 -37
- package/dist/src/account-connection.d.ts.map +0 -1
- package/dist/src/account-connection.js +0 -548
- package/dist/src/account-connection.js.map +0 -1
- package/dist/src/account-reconciler.d.ts +0 -64
- package/dist/src/account-reconciler.d.ts.map +0 -1
- package/dist/src/account-reconciler.js +0 -314
- package/dist/src/account-reconciler.js.map +0 -1
- package/dist/src/account-reconciler.test.d.ts +0 -2
- package/dist/src/account-reconciler.test.d.ts.map +0 -1
- package/dist/src/account-reconciler.test.js +0 -166
- package/dist/src/account-reconciler.test.js.map +0 -1
- package/dist/src/action-run-event.d.ts +0 -20
- package/dist/src/action-run-event.d.ts.map +0 -1
- package/dist/src/action-run-event.js +0 -62
- package/dist/src/action-run-event.js.map +0 -1
- package/dist/src/action-run-event.test.d.ts +0 -2
- package/dist/src/action-run-event.test.d.ts.map +0 -1
- package/dist/src/action-run-event.test.js +0 -83
- package/dist/src/action-run-event.test.js.map +0 -1
- package/dist/src/action-store-access.d.ts +0 -29
- package/dist/src/action-store-access.d.ts.map +0 -1
- package/dist/src/action-store-access.js +0 -81
- package/dist/src/action-store-access.js.map +0 -1
- package/dist/src/action-store-lifecycle.test.d.ts +0 -2
- package/dist/src/action-store-lifecycle.test.d.ts.map +0 -1
- package/dist/src/action-store-lifecycle.test.js +0 -195
- package/dist/src/action-store-lifecycle.test.js.map +0 -1
- package/dist/src/active-cron-context-store.d.ts +0 -20
- package/dist/src/active-cron-context-store.d.ts.map +0 -1
- package/dist/src/active-cron-context-store.js +0 -73
- package/dist/src/active-cron-context-store.js.map +0 -1
- package/dist/src/active-round-registry.d.ts +0 -35
- package/dist/src/active-round-registry.d.ts.map +0 -1
- package/dist/src/active-round-registry.js +0 -85
- package/dist/src/active-round-registry.js.map +0 -1
- package/dist/src/active-round-registry.test.d.ts +0 -2
- package/dist/src/active-round-registry.test.d.ts.map +0 -1
- package/dist/src/active-round-registry.test.js +0 -62
- package/dist/src/active-round-registry.test.js.map +0 -1
- package/dist/src/agent-context-types.d.ts +0 -205
- package/dist/src/agent-context-types.d.ts.map +0 -1
- package/dist/src/agent-context-types.js +0 -132
- package/dist/src/agent-context-types.js.map +0 -1
- package/dist/src/agent-context-types.test.d.ts +0 -2
- package/dist/src/agent-context-types.test.d.ts.map +0 -1
- package/dist/src/agent-context-types.test.js +0 -123
- package/dist/src/agent-context-types.test.js.map +0 -1
- package/dist/src/agent-stream-client-registry.d.ts +0 -8
- package/dist/src/agent-stream-client-registry.d.ts.map +0 -1
- package/dist/src/agent-stream-client-registry.js +0 -19
- package/dist/src/agent-stream-client-registry.js.map +0 -1
- package/dist/src/apply-sync-mapping.d.ts +0 -15
- package/dist/src/apply-sync-mapping.d.ts.map +0 -1
- package/dist/src/apply-sync-mapping.js +0 -98
- package/dist/src/apply-sync-mapping.js.map +0 -1
- package/dist/src/assistant-item-delivery.d.ts +0 -27
- package/dist/src/assistant-item-delivery.d.ts.map +0 -1
- package/dist/src/assistant-item-delivery.js +0 -134
- package/dist/src/assistant-item-delivery.js.map +0 -1
- package/dist/src/assistant-item-delivery.test.d.ts +0 -2
- package/dist/src/assistant-item-delivery.test.d.ts.map +0 -1
- package/dist/src/assistant-item-delivery.test.js +0 -116
- package/dist/src/assistant-item-delivery.test.js.map +0 -1
- package/dist/src/assistant-item-sink.d.ts +0 -17
- package/dist/src/assistant-item-sink.d.ts.map +0 -1
- package/dist/src/assistant-item-sink.js +0 -34
- package/dist/src/assistant-item-sink.js.map +0 -1
- package/dist/src/auth.d.ts +0 -32
- package/dist/src/auth.d.ts.map +0 -1
- package/dist/src/auth.js +0 -70
- package/dist/src/auth.js.map +0 -1
- package/dist/src/auto-model-router.d.ts +0 -36
- package/dist/src/auto-model-router.d.ts.map +0 -1
- package/dist/src/auto-model-router.js +0 -60
- package/dist/src/auto-model-router.js.map +0 -1
- package/dist/src/auto-model-router.test.d.ts +0 -2
- package/dist/src/auto-model-router.test.d.ts.map +0 -1
- package/dist/src/auto-model-router.test.js +0 -99
- package/dist/src/auto-model-router.test.js.map +0 -1
- package/dist/src/block-streaming-config.test.d.ts +0 -2
- package/dist/src/block-streaming-config.test.d.ts.map +0 -1
- package/dist/src/block-streaming-config.test.js +0 -91
- package/dist/src/block-streaming-config.test.js.map +0 -1
- package/dist/src/build-project-prompt.d.ts +0 -40
- package/dist/src/build-project-prompt.d.ts.map +0 -1
- package/dist/src/build-project-prompt.js +0 -183
- package/dist/src/build-project-prompt.js.map +0 -1
- package/dist/src/build-project-prompt.test.d.ts +0 -2
- package/dist/src/build-project-prompt.test.d.ts.map +0 -1
- package/dist/src/build-project-prompt.test.js +0 -100
- package/dist/src/build-project-prompt.test.js.map +0 -1
- package/dist/src/channel-config.d.ts +0 -716
- package/dist/src/channel-config.d.ts.map +0 -1
- package/dist/src/channel-config.js +0 -405
- package/dist/src/channel-config.js.map +0 -1
- package/dist/src/channel-config.test.d.ts +0 -2
- package/dist/src/channel-config.test.d.ts.map +0 -1
- package/dist/src/channel-config.test.js +0 -113
- package/dist/src/channel-config.test.js.map +0 -1
- package/dist/src/channel-disabled-account.test.d.ts +0 -2
- package/dist/src/channel-disabled-account.test.d.ts.map +0 -1
- package/dist/src/channel-disabled-account.test.js +0 -44
- package/dist/src/channel-disabled-account.test.js.map +0 -1
- package/dist/src/channel-log.d.ts +0 -17
- package/dist/src/channel-log.d.ts.map +0 -1
- package/dist/src/channel-log.js +0 -45
- package/dist/src/channel-log.js.map +0 -1
- package/dist/src/channel.d.ts +0 -17
- package/dist/src/channel.d.ts.map +0 -1
- package/dist/src/channel.js +0 -272
- package/dist/src/channel.js.map +0 -1
- package/dist/src/connection-workspace-event.test.d.ts +0 -2
- package/dist/src/connection-workspace-event.test.d.ts.map +0 -1
- package/dist/src/connection-workspace-event.test.js +0 -74
- package/dist/src/connection-workspace-event.test.js.map +0 -1
- package/dist/src/connection.d.ts +0 -110
- package/dist/src/connection.d.ts.map +0 -1
- package/dist/src/connection.js +0 -463
- package/dist/src/connection.js.map +0 -1
- package/dist/src/connection.test.d.ts +0 -2
- package/dist/src/connection.test.d.ts.map +0 -1
- package/dist/src/connection.test.js +0 -110
- package/dist/src/connection.test.js.map +0 -1
- package/dist/src/cron-appkey-binding-store.d.ts +0 -29
- package/dist/src/cron-appkey-binding-store.d.ts.map +0 -1
- package/dist/src/cron-appkey-binding-store.js +0 -239
- package/dist/src/cron-appkey-binding-store.js.map +0 -1
- package/dist/src/cron-appkey-binding-store.test.d.ts +0 -2
- package/dist/src/cron-appkey-binding-store.test.d.ts.map +0 -1
- package/dist/src/cron-appkey-binding-store.test.js +0 -387
- package/dist/src/cron-appkey-binding-store.test.js.map +0 -1
- package/dist/src/deliver-text.d.ts +0 -30
- package/dist/src/deliver-text.d.ts.map +0 -1
- package/dist/src/deliver-text.js +0 -88
- package/dist/src/deliver-text.js.map +0 -1
- package/dist/src/deliver-text.test.d.ts +0 -2
- package/dist/src/deliver-text.test.d.ts.map +0 -1
- package/dist/src/deliver-text.test.js +0 -117
- package/dist/src/deliver-text.test.js.map +0 -1
- package/dist/src/dispatch-mentioned-reply.d.ts +0 -47
- package/dist/src/dispatch-mentioned-reply.d.ts.map +0 -1
- package/dist/src/dispatch-mentioned-reply.js +0 -997
- package/dist/src/dispatch-mentioned-reply.js.map +0 -1
- package/dist/src/gateway-session-queue.d.ts +0 -37
- package/dist/src/gateway-session-queue.d.ts.map +0 -1
- package/dist/src/gateway-session-queue.js +0 -86
- package/dist/src/gateway-session-queue.js.map +0 -1
- package/dist/src/group-history-tool.d.ts +0 -31
- package/dist/src/group-history-tool.d.ts.map +0 -1
- package/dist/src/group-history-tool.js +0 -177
- package/dist/src/group-history-tool.js.map +0 -1
- package/dist/src/im-tool-progress.d.ts +0 -4
- package/dist/src/im-tool-progress.d.ts.map +0 -1
- package/dist/src/im-tool-progress.js +0 -87
- package/dist/src/im-tool-progress.js.map +0 -1
- package/dist/src/inbound-archive.d.ts +0 -4
- package/dist/src/inbound-archive.d.ts.map +0 -1
- package/dist/src/inbound-archive.js +0 -105
- package/dist/src/inbound-archive.js.map +0 -1
- package/dist/src/inbound-attachment-meta.d.ts +0 -13
- package/dist/src/inbound-attachment-meta.d.ts.map +0 -1
- package/dist/src/inbound-attachment-meta.js +0 -39
- package/dist/src/inbound-attachment-meta.js.map +0 -1
- package/dist/src/inbound-chat-type.d.ts +0 -33
- package/dist/src/inbound-chat-type.d.ts.map +0 -1
- package/dist/src/inbound-chat-type.js +0 -52
- package/dist/src/inbound-chat-type.js.map +0 -1
- package/dist/src/inbound-display.d.ts +0 -41
- package/dist/src/inbound-display.d.ts.map +0 -1
- package/dist/src/inbound-display.js +0 -170
- package/dist/src/inbound-display.js.map +0 -1
- package/dist/src/inbound-file-download.d.ts +0 -15
- package/dist/src/inbound-file-download.d.ts.map +0 -1
- package/dist/src/inbound-file-download.js +0 -48
- package/dist/src/inbound-file-download.js.map +0 -1
- package/dist/src/inbound-input-media.d.ts +0 -43
- package/dist/src/inbound-input-media.d.ts.map +0 -1
- package/dist/src/inbound-input-media.js +0 -230
- package/dist/src/inbound-input-media.js.map +0 -1
- package/dist/src/inbound-media-local.d.ts +0 -49
- package/dist/src/inbound-media-local.d.ts.map +0 -1
- package/dist/src/inbound-media-local.js +0 -194
- package/dist/src/inbound-media-local.js.map +0 -1
- package/dist/src/inbound-model.d.ts +0 -39
- package/dist/src/inbound-model.d.ts.map +0 -1
- package/dist/src/inbound-model.js +0 -66
- package/dist/src/inbound-model.js.map +0 -1
- package/dist/src/inbound-model.test.d.ts +0 -2
- package/dist/src/inbound-model.test.d.ts.map +0 -1
- package/dist/src/inbound-model.test.js +0 -88
- package/dist/src/inbound-model.test.js.map +0 -1
- package/dist/src/inbound-terminal-delivery.d.ts +0 -77
- package/dist/src/inbound-terminal-delivery.d.ts.map +0 -1
- package/dist/src/inbound-terminal-delivery.js +0 -251
- package/dist/src/inbound-terminal-delivery.js.map +0 -1
- package/dist/src/inbound-terminal-state.d.ts +0 -68
- package/dist/src/inbound-terminal-state.d.ts.map +0 -1
- package/dist/src/inbound-terminal-state.js +0 -185
- package/dist/src/inbound-terminal-state.js.map +0 -1
- package/dist/src/inbound-terminal-state.test.d.ts +0 -2
- package/dist/src/inbound-terminal-state.test.d.ts.map +0 -1
- package/dist/src/inbound-terminal-state.test.js +0 -224
- package/dist/src/inbound-terminal-state.test.js.map +0 -1
- package/dist/src/interrupt-round.d.ts +0 -9
- package/dist/src/interrupt-round.d.ts.map +0 -1
- package/dist/src/interrupt-round.js +0 -44
- package/dist/src/interrupt-round.js.map +0 -1
- package/dist/src/interrupt-round.test.d.ts +0 -2
- package/dist/src/interrupt-round.test.d.ts.map +0 -1
- package/dist/src/interrupt-round.test.js +0 -133
- package/dist/src/interrupt-round.test.js.map +0 -1
- package/dist/src/item-event-guard.d.ts +0 -28
- package/dist/src/item-event-guard.d.ts.map +0 -1
- package/dist/src/item-event-guard.js +0 -22
- package/dist/src/item-event-guard.js.map +0 -1
- package/dist/src/item-event-guard.test.d.ts +0 -2
- package/dist/src/item-event-guard.test.d.ts.map +0 -1
- package/dist/src/item-event-guard.test.js +0 -55
- package/dist/src/item-event-guard.test.js.map +0 -1
- package/dist/src/nas-site.d.ts +0 -16
- package/dist/src/nas-site.d.ts.map +0 -1
- package/dist/src/nas-site.js +0 -17
- package/dist/src/nas-site.js.map +0 -1
- package/dist/src/nas-volumes.d.ts +0 -53
- package/dist/src/nas-volumes.d.ts.map +0 -1
- package/dist/src/nas-volumes.js +0 -417
- package/dist/src/nas-volumes.js.map +0 -1
- package/dist/src/nas-volumes.test.d.ts +0 -2
- package/dist/src/nas-volumes.test.d.ts.map +0 -1
- package/dist/src/nas-volumes.test.js +0 -261
- package/dist/src/nas-volumes.test.js.map +0 -1
- package/dist/src/per-message-fallback-notice.d.ts +0 -43
- package/dist/src/per-message-fallback-notice.d.ts.map +0 -1
- package/dist/src/per-message-fallback-notice.js +0 -93
- package/dist/src/per-message-fallback-notice.js.map +0 -1
- package/dist/src/per-message-fallback-notice.test.d.ts +0 -2
- package/dist/src/per-message-fallback-notice.test.d.ts.map +0 -1
- package/dist/src/per-message-fallback-notice.test.js +0 -47
- package/dist/src/per-message-fallback-notice.test.js.map +0 -1
- package/dist/src/per-message-model-pending.d.ts +0 -52
- package/dist/src/per-message-model-pending.d.ts.map +0 -1
- package/dist/src/per-message-model-pending.js +0 -134
- package/dist/src/per-message-model-pending.js.map +0 -1
- package/dist/src/plan-blocked-notice.d.ts +0 -14
- package/dist/src/plan-blocked-notice.d.ts.map +0 -1
- package/dist/src/plan-blocked-notice.js +0 -41
- package/dist/src/plan-blocked-notice.js.map +0 -1
- package/dist/src/plan-blocked-notice.test.d.ts +0 -2
- package/dist/src/plan-blocked-notice.test.d.ts.map +0 -1
- package/dist/src/plan-blocked-notice.test.js +0 -96
- package/dist/src/plan-blocked-notice.test.js.map +0 -1
- package/dist/src/plan-core-adapter.d.ts +0 -54
- package/dist/src/plan-core-adapter.d.ts.map +0 -1
- package/dist/src/plan-core-adapter.js +0 -104
- package/dist/src/plan-core-adapter.js.map +0 -1
- package/dist/src/plan-core-adapter.test.d.ts +0 -2
- package/dist/src/plan-core-adapter.test.d.ts.map +0 -1
- package/dist/src/plan-core-adapter.test.js +0 -183
- package/dist/src/plan-core-adapter.test.js.map +0 -1
- package/dist/src/plan-core-db.d.ts +0 -22
- package/dist/src/plan-core-db.d.ts.map +0 -1
- package/dist/src/plan-core-db.js +0 -91
- package/dist/src/plan-core-db.js.map +0 -1
- package/dist/src/plan-core-db.test.d.ts +0 -2
- package/dist/src/plan-core-db.test.d.ts.map +0 -1
- package/dist/src/plan-core-db.test.js +0 -115
- package/dist/src/plan-core-db.test.js.map +0 -1
- package/dist/src/plan-core-snapshot.d.ts +0 -23
- package/dist/src/plan-core-snapshot.d.ts.map +0 -1
- package/dist/src/plan-core-snapshot.js +0 -66
- package/dist/src/plan-core-snapshot.js.map +0 -1
- package/dist/src/plan-core-snapshot.test.d.ts +0 -2
- package/dist/src/plan-core-snapshot.test.d.ts.map +0 -1
- package/dist/src/plan-core-snapshot.test.js +0 -157
- package/dist/src/plan-core-snapshot.test.js.map +0 -1
- package/dist/src/plan-event-subscription.d.ts +0 -36
- package/dist/src/plan-event-subscription.d.ts.map +0 -1
- package/dist/src/plan-event-subscription.js +0 -57
- package/dist/src/plan-event-subscription.js.map +0 -1
- package/dist/src/plan-event-subscription.test.d.ts +0 -2
- package/dist/src/plan-event-subscription.test.d.ts.map +0 -1
- package/dist/src/plan-event-subscription.test.js +0 -167
- package/dist/src/plan-event-subscription.test.js.map +0 -1
- package/dist/src/plan-stat-event.d.ts +0 -17
- package/dist/src/plan-stat-event.d.ts.map +0 -1
- package/dist/src/plan-stat-event.js +0 -41
- package/dist/src/plan-stat-event.js.map +0 -1
- package/dist/src/plan-stat-event.test.d.ts +0 -2
- package/dist/src/plan-stat-event.test.d.ts.map +0 -1
- package/dist/src/plan-stat-event.test.js +0 -131
- package/dist/src/plan-stat-event.test.js.map +0 -1
- package/dist/src/plan-store-access.d.ts +0 -25
- package/dist/src/plan-store-access.d.ts.map +0 -1
- package/dist/src/plan-store-access.js +0 -100
- package/dist/src/plan-store-access.js.map +0 -1
- package/dist/src/plan-store-access.test.d.ts +0 -2
- package/dist/src/plan-store-access.test.d.ts.map +0 -1
- package/dist/src/plan-store-access.test.js +0 -207
- package/dist/src/plan-store-access.test.js.map +0 -1
- package/dist/src/plan-tool-middleware.d.ts +0 -19
- package/dist/src/plan-tool-middleware.d.ts.map +0 -1
- package/dist/src/plan-tool-middleware.js +0 -63
- package/dist/src/plan-tool-middleware.js.map +0 -1
- package/dist/src/plan-tool-middleware.test.d.ts +0 -2
- package/dist/src/plan-tool-middleware.test.d.ts.map +0 -1
- package/dist/src/plan-tool-middleware.test.js +0 -103
- package/dist/src/plan-tool-middleware.test.js.map +0 -1
- package/dist/src/plan-tool-result.d.ts +0 -18
- package/dist/src/plan-tool-result.d.ts.map +0 -1
- package/dist/src/plan-tool-result.js +0 -77
- package/dist/src/plan-tool-result.js.map +0 -1
- package/dist/src/plan-tool-result.test.d.ts +0 -2
- package/dist/src/plan-tool-result.test.d.ts.map +0 -1
- package/dist/src/plan-tool-result.test.js +0 -129
- package/dist/src/plan-tool-result.test.js.map +0 -1
- package/dist/src/plan-ws-registry.d.ts +0 -15
- package/dist/src/plan-ws-registry.d.ts.map +0 -1
- package/dist/src/plan-ws-registry.js +0 -39
- package/dist/src/plan-ws-registry.js.map +0 -1
- package/dist/src/plan-ws-registry.test.d.ts +0 -2
- package/dist/src/plan-ws-registry.test.d.ts.map +0 -1
- package/dist/src/plan-ws-registry.test.js +0 -61
- package/dist/src/plan-ws-registry.test.js.map +0 -1
- package/dist/src/plugin-dispose.d.ts +0 -22
- package/dist/src/plugin-dispose.d.ts.map +0 -1
- package/dist/src/plugin-dispose.js +0 -66
- package/dist/src/plugin-dispose.js.map +0 -1
- package/dist/src/process-shared-store.d.ts +0 -48
- package/dist/src/process-shared-store.d.ts.map +0 -1
- package/dist/src/process-shared-store.js +0 -89
- package/dist/src/process-shared-store.js.map +0 -1
- package/dist/src/process-shared-store.test.d.ts +0 -2
- package/dist/src/process-shared-store.test.d.ts.map +0 -1
- package/dist/src/process-shared-store.test.js +0 -60
- package/dist/src/process-shared-store.test.js.map +0 -1
- package/dist/src/project-path-normalize.d.ts +0 -30
- package/dist/src/project-path-normalize.d.ts.map +0 -1
- package/dist/src/project-path-normalize.js +0 -101
- package/dist/src/project-path-normalize.js.map +0 -1
- package/dist/src/recommended-system-prompt.d.ts +0 -3
- package/dist/src/recommended-system-prompt.d.ts.map +0 -1
- package/dist/src/recommended-system-prompt.js +0 -8
- package/dist/src/recommended-system-prompt.js.map +0 -1
- package/dist/src/register-exec-env-hook.d.ts +0 -44
- package/dist/src/register-exec-env-hook.d.ts.map +0 -1
- package/dist/src/register-exec-env-hook.js +0 -473
- package/dist/src/register-exec-env-hook.js.map +0 -1
- package/dist/src/register-exec-env-hook.test.d.ts +0 -2
- package/dist/src/register-exec-env-hook.test.d.ts.map +0 -1
- package/dist/src/register-exec-env-hook.test.js +0 -189
- package/dist/src/register-exec-env-hook.test.js.map +0 -1
- package/dist/src/register-group-prompt-hook.d.ts +0 -17
- package/dist/src/register-group-prompt-hook.d.ts.map +0 -1
- package/dist/src/register-group-prompt-hook.js +0 -45
- package/dist/src/register-group-prompt-hook.js.map +0 -1
- package/dist/src/register-group-prompt-hook.test.d.ts +0 -2
- package/dist/src/register-group-prompt-hook.test.d.ts.map +0 -1
- package/dist/src/register-group-prompt-hook.test.js +0 -60
- package/dist/src/register-group-prompt-hook.test.js.map +0 -1
- package/dist/src/register-per-message-model-hook.d.ts +0 -14
- package/dist/src/register-per-message-model-hook.d.ts.map +0 -1
- package/dist/src/register-per-message-model-hook.js +0 -48
- package/dist/src/register-per-message-model-hook.js.map +0 -1
- package/dist/src/register-per-message-model-hook.test.d.ts +0 -2
- package/dist/src/register-per-message-model-hook.test.d.ts.map +0 -1
- package/dist/src/register-per-message-model-hook.test.js +0 -208
- package/dist/src/register-per-message-model-hook.test.js.map +0 -1
- package/dist/src/register-run-model-context-hook.d.ts +0 -11
- package/dist/src/register-run-model-context-hook.d.ts.map +0 -1
- package/dist/src/register-run-model-context-hook.js +0 -23
- package/dist/src/register-run-model-context-hook.js.map +0 -1
- package/dist/src/reply-dispatch-driver.d.ts +0 -89
- package/dist/src/reply-dispatch-driver.d.ts.map +0 -1
- package/dist/src/reply-dispatch-driver.js +0 -294
- package/dist/src/reply-dispatch-driver.js.map +0 -1
- package/dist/src/reply-dispatch-driver.test.d.ts +0 -2
- package/dist/src/reply-dispatch-driver.test.d.ts.map +0 -1
- package/dist/src/reply-dispatch-driver.test.js +0 -363
- package/dist/src/reply-dispatch-driver.test.js.map +0 -1
- package/dist/src/resolve-inbound-group-prompt.d.ts +0 -37
- package/dist/src/resolve-inbound-group-prompt.d.ts.map +0 -1
- package/dist/src/resolve-inbound-group-prompt.js +0 -57
- package/dist/src/resolve-inbound-group-prompt.js.map +0 -1
- package/dist/src/resource-file.d.ts +0 -119
- package/dist/src/resource-file.d.ts.map +0 -1
- package/dist/src/resource-file.js +0 -533
- package/dist/src/resource-file.js.map +0 -1
- package/dist/src/resource-file.test.d.ts +0 -2
- package/dist/src/resource-file.test.d.ts.map +0 -1
- package/dist/src/resource-file.test.js +0 -64
- package/dist/src/resource-file.test.js.map +0 -1
- package/dist/src/run-model-context.d.ts +0 -45
- package/dist/src/run-model-context.d.ts.map +0 -1
- package/dist/src/run-model-context.js +0 -108
- package/dist/src/run-model-context.js.map +0 -1
- package/dist/src/run-model-context.test.d.ts +0 -2
- package/dist/src/run-model-context.test.d.ts.map +0 -1
- package/dist/src/run-model-context.test.js +0 -68
- package/dist/src/run-model-context.test.js.map +0 -1
- package/dist/src/run-usage-session.d.ts +0 -13
- package/dist/src/run-usage-session.d.ts.map +0 -1
- package/dist/src/run-usage-session.js +0 -41
- package/dist/src/run-usage-session.js.map +0 -1
- package/dist/src/run-usage.d.ts +0 -67
- package/dist/src/run-usage.d.ts.map +0 -1
- package/dist/src/run-usage.js +0 -119
- package/dist/src/run-usage.js.map +0 -1
- package/dist/src/run-usage.test.d.ts +0 -2
- package/dist/src/run-usage.test.d.ts.map +0 -1
- package/dist/src/run-usage.test.js +0 -178
- package/dist/src/run-usage.test.js.map +0 -1
- package/dist/src/send-file-event.d.ts +0 -26
- package/dist/src/send-file-event.d.ts.map +0 -1
- package/dist/src/send-file-event.js +0 -33
- package/dist/src/send-file-event.js.map +0 -1
- package/dist/src/send-file-event.test.d.ts +0 -2
- package/dist/src/send-file-event.test.d.ts.map +0 -1
- package/dist/src/send-file-event.test.js +0 -86
- package/dist/src/send-file-event.test.js.map +0 -1
- package/dist/src/send-file-tool.d.ts +0 -81
- package/dist/src/send-file-tool.d.ts.map +0 -1
- package/dist/src/send-file-tool.js +0 -363
- package/dist/src/send-file-tool.js.map +0 -1
- package/dist/src/send-file-tool.test.d.ts +0 -2
- package/dist/src/send-file-tool.test.d.ts.map +0 -1
- package/dist/src/send-file-tool.test.js +0 -176
- package/dist/src/send-file-tool.test.js.map +0 -1
- package/dist/src/send-group-message-tool.d.ts +0 -17
- package/dist/src/send-group-message-tool.d.ts.map +0 -1
- package/dist/src/send-group-message-tool.js +0 -82
- package/dist/src/send-group-message-tool.js.map +0 -1
- package/dist/src/send-service.d.ts +0 -83
- package/dist/src/send-service.d.ts.map +0 -1
- package/dist/src/send-service.js +0 -324
- package/dist/src/send-service.js.map +0 -1
- package/dist/src/send-service.test.d.ts +0 -2
- package/dist/src/send-service.test.d.ts.map +0 -1
- package/dist/src/send-service.test.js +0 -40
- package/dist/src/send-service.test.js.map +0 -1
- package/dist/src/session-env-store.d.ts +0 -55
- package/dist/src/session-env-store.d.ts.map +0 -1
- package/dist/src/session-env-store.js +0 -328
- package/dist/src/session-env-store.js.map +0 -1
- package/dist/src/session-env-store.test.d.ts +0 -2
- package/dist/src/session-env-store.test.d.ts.map +0 -1
- package/dist/src/session-env-store.test.js +0 -151
- package/dist/src/session-env-store.test.js.map +0 -1
- package/dist/src/session-group-prompt.d.ts +0 -34
- package/dist/src/session-group-prompt.d.ts.map +0 -1
- package/dist/src/session-group-prompt.js +0 -101
- package/dist/src/session-group-prompt.js.map +0 -1
- package/dist/src/session-group-prompt.test.d.ts +0 -2
- package/dist/src/session-group-prompt.test.d.ts.map +0 -1
- package/dist/src/session-group-prompt.test.js +0 -72
- package/dist/src/session-group-prompt.test.js.map +0 -1
- package/dist/src/session-im-context.d.ts +0 -15
- package/dist/src/session-im-context.d.ts.map +0 -1
- package/dist/src/session-im-context.js +0 -54
- package/dist/src/session-im-context.js.map +0 -1
- package/dist/src/session-model-fallback.d.ts +0 -13
- package/dist/src/session-model-fallback.d.ts.map +0 -1
- package/dist/src/session-model-fallback.js +0 -24
- package/dist/src/session-model-fallback.js.map +0 -1
- package/dist/src/subagent-monitor.d.ts +0 -45
- package/dist/src/subagent-monitor.d.ts.map +0 -1
- package/dist/src/subagent-monitor.js +0 -498
- package/dist/src/subagent-monitor.js.map +0 -1
- package/dist/src/subagent-monitor.test.d.ts +0 -2
- package/dist/src/subagent-monitor.test.d.ts.map +0 -1
- package/dist/src/subagent-monitor.test.js +0 -335
- package/dist/src/subagent-monitor.test.js.map +0 -1
- package/dist/src/sync-mapping-types.d.ts +0 -220
- package/dist/src/sync-mapping-types.d.ts.map +0 -1
- package/dist/src/sync-mapping-types.js +0 -55
- package/dist/src/sync-mapping-types.js.map +0 -1
- package/dist/src/sync-service-client.d.ts +0 -29
- package/dist/src/sync-service-client.d.ts.map +0 -1
- package/dist/src/sync-service-client.js +0 -72
- package/dist/src/sync-service-client.js.map +0 -1
- package/dist/src/thinking-ws-progress.d.ts +0 -24
- package/dist/src/thinking-ws-progress.d.ts.map +0 -1
- package/dist/src/thinking-ws-progress.js +0 -45
- package/dist/src/thinking-ws-progress.js.map +0 -1
- package/dist/src/thinking-ws-progress.test.d.ts +0 -2
- package/dist/src/thinking-ws-progress.test.d.ts.map +0 -1
- package/dist/src/thinking-ws-progress.test.js +0 -38
- package/dist/src/thinking-ws-progress.test.js.map +0 -1
- package/dist/src/tool-event-adapter.d.ts +0 -31
- package/dist/src/tool-event-adapter.d.ts.map +0 -1
- package/dist/src/tool-event-adapter.js +0 -83
- package/dist/src/tool-event-adapter.js.map +0 -1
- package/dist/src/tool-event-adapter.test.d.ts +0 -2
- package/dist/src/tool-event-adapter.test.d.ts.map +0 -1
- package/dist/src/tool-event-adapter.test.js +0 -93
- package/dist/src/tool-event-adapter.test.js.map +0 -1
- package/dist/src/tool-json-result.d.ts +0 -14
- package/dist/src/tool-json-result.d.ts.map +0 -1
- package/dist/src/tool-json-result.js +0 -20
- package/dist/src/tool-json-result.js.map +0 -1
- package/dist/src/turn-agent-event-subscription.d.ts +0 -29
- package/dist/src/turn-agent-event-subscription.d.ts.map +0 -1
- package/dist/src/turn-agent-event-subscription.js +0 -289
- package/dist/src/turn-agent-event-subscription.js.map +0 -1
- package/dist/src/turn-agent-event-subscription.test.d.ts +0 -2
- package/dist/src/turn-agent-event-subscription.test.d.ts.map +0 -1
- package/dist/src/turn-agent-event-subscription.test.js +0 -165
- package/dist/src/turn-agent-event-subscription.test.js.map +0 -1
- package/dist/src/turn-deliver-buffer.d.ts +0 -60
- package/dist/src/turn-deliver-buffer.d.ts.map +0 -1
- package/dist/src/turn-deliver-buffer.js +0 -133
- package/dist/src/turn-deliver-buffer.js.map +0 -1
- package/dist/src/turn-deliver-buffer.test.d.ts +0 -2
- package/dist/src/turn-deliver-buffer.test.d.ts.map +0 -1
- package/dist/src/turn-deliver-buffer.test.js +0 -184
- package/dist/src/turn-deliver-buffer.test.js.map +0 -1
- package/dist/src/turn-end-controller.d.ts +0 -61
- package/dist/src/turn-end-controller.d.ts.map +0 -1
- package/dist/src/turn-end-controller.js +0 -239
- package/dist/src/turn-end-controller.js.map +0 -1
- package/dist/src/turn-end-controller.test.d.ts +0 -2
- package/dist/src/turn-end-controller.test.d.ts.map +0 -1
- package/dist/src/turn-end-controller.test.js +0 -97
- package/dist/src/turn-end-controller.test.js.map +0 -1
- package/dist/src/types.d.ts +0 -433
- package/dist/src/types.d.ts.map +0 -1
- package/dist/src/types.js +0 -32
- package/dist/src/types.js.map +0 -1
- package/dist/src/user-facing-errors.d.ts +0 -32
- package/dist/src/user-facing-errors.d.ts.map +0 -1
- package/dist/src/user-facing-errors.js +0 -120
- package/dist/src/user-facing-errors.js.map +0 -1
- package/dist/src/user-facing-errors.test.d.ts +0 -2
- package/dist/src/user-facing-errors.test.d.ts.map +0 -1
- package/dist/src/user-facing-errors.test.js +0 -102
- package/dist/src/user-facing-errors.test.js.map +0 -1
- package/dist/src/workspace-event-protocol.d.ts +0 -3
- package/dist/src/workspace-event-protocol.d.ts.map +0 -1
- package/dist/src/workspace-event-protocol.js +0 -3
- package/dist/src/workspace-event-protocol.js.map +0 -1
- package/dist/src/workspace-event-scheduler.d.ts +0 -54
- package/dist/src/workspace-event-scheduler.d.ts.map +0 -1
- package/dist/src/workspace-event-scheduler.js +0 -131
- package/dist/src/workspace-event-scheduler.js.map +0 -1
- package/dist/src/workspace-event-scheduler.test.d.ts +0 -2
- package/dist/src/workspace-event-scheduler.test.d.ts.map +0 -1
- package/dist/src/workspace-event-scheduler.test.js +0 -157
- package/dist/src/workspace-event-scheduler.test.js.map +0 -1
- package/dist/src/workspace-event.d.ts +0 -28
- package/dist/src/workspace-event.d.ts.map +0 -1
- package/dist/src/workspace-event.js +0 -674
- package/dist/src/workspace-event.js.map +0 -1
- package/dist/src/workspace-event.test.d.ts +0 -2
- package/dist/src/workspace-event.test.d.ts.map +0 -1
- package/dist/src/workspace-event.test.js +0 -265
- package/dist/src/workspace-event.test.js.map +0 -1
- package/dist/src/ws-inbound-schema.d.ts +0 -14
- package/dist/src/ws-inbound-schema.d.ts.map +0 -1
- package/dist/src/ws-inbound-schema.js +0 -68
- package/dist/src/ws-inbound-schema.js.map +0 -1
- package/dist/src/ws-inbound-schema.test.d.ts +0 -2
- package/dist/src/ws-inbound-schema.test.d.ts.map +0 -1
- package/dist/src/ws-inbound-schema.test.js +0 -58
- package/dist/src/ws-inbound-schema.test.js.map +0 -1
- package/dist/src/ws-run-event-unmapped.d.ts +0 -10
- package/dist/src/ws-run-event-unmapped.d.ts.map +0 -1
- package/dist/src/ws-run-event-unmapped.js +0 -16
- package/dist/src/ws-run-event-unmapped.js.map +0 -1
- package/dist/src/ws-run-event-unmapped.test.d.ts +0 -2
- package/dist/src/ws-run-event-unmapped.test.d.ts.map +0 -1
- package/dist/src/ws-run-event-unmapped.test.js +0 -15
- package/dist/src/ws-run-event-unmapped.test.js.map +0 -1
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
import { getSharedMap } from "./process-shared-store.js";
|
|
2
|
-
const ACTIVE_ROUND_TTL_MS = 30 * 60 * 1000;
|
|
3
|
-
const rounds = getSharedMap("active-rounds");
|
|
4
|
-
const generations = getSharedMap("active-round-generations");
|
|
5
|
-
export const buildRoundKey = (accountId, groupId) => `${String(accountId || "").trim()}:${String(groupId || "").trim()}`;
|
|
6
|
-
function pruneExpired(now = Date.now()) {
|
|
7
|
-
for (const [roundKey, round] of rounds) {
|
|
8
|
-
if (round.expiresAt <= now)
|
|
9
|
-
rounds.delete(roundKey);
|
|
10
|
-
}
|
|
11
|
-
}
|
|
12
|
-
export function registerActiveRound(params) {
|
|
13
|
-
const now = params.now ?? Date.now();
|
|
14
|
-
pruneExpired(now);
|
|
15
|
-
const roundKey = buildRoundKey(params.accountId, params.groupId);
|
|
16
|
-
const generation = (generations.get(roundKey) ?? 0) + 1;
|
|
17
|
-
generations.set(roundKey, generation);
|
|
18
|
-
const round = {
|
|
19
|
-
roundKey,
|
|
20
|
-
accountId: params.accountId,
|
|
21
|
-
groupId: params.groupId,
|
|
22
|
-
agentId: params.agentId,
|
|
23
|
-
sessionKey: params.sessionKey,
|
|
24
|
-
replyToMsgId: params.replyToMsgId,
|
|
25
|
-
generation,
|
|
26
|
-
streamClient: params.streamClient,
|
|
27
|
-
startedAt: now,
|
|
28
|
-
expiresAt: now + ACTIVE_ROUND_TTL_MS,
|
|
29
|
-
interrupted: false,
|
|
30
|
-
};
|
|
31
|
-
rounds.set(roundKey, round);
|
|
32
|
-
return round;
|
|
33
|
-
}
|
|
34
|
-
export function findActiveRoundForSubagent(groupId, now = Date.now()) {
|
|
35
|
-
pruneExpired(now);
|
|
36
|
-
const matches = Array.from(rounds.values()).filter((round) => !round.interrupted && round.groupId === groupId);
|
|
37
|
-
if (matches.length > 1) {
|
|
38
|
-
console.warn(`[xg_cwork_im] [subagent] ambiguous active round groupId=${groupId}; monitoring rejected`);
|
|
39
|
-
}
|
|
40
|
-
return matches.length === 1 ? matches[0] : undefined;
|
|
41
|
-
}
|
|
42
|
-
/** 按整轮父会话 sessionKey 定位活跃轮次(lifecycle/thinking 等事件路由用)。 */
|
|
43
|
-
export function findActiveRoundForSession(sessionKey, now = Date.now()) {
|
|
44
|
-
if (!sessionKey)
|
|
45
|
-
return undefined;
|
|
46
|
-
pruneExpired(now);
|
|
47
|
-
const matches = Array.from(rounds.values()).filter((round) => !round.interrupted && round.sessionKey === sessionKey);
|
|
48
|
-
if (matches.length > 1) {
|
|
49
|
-
console.warn(`[xg_cwork_im] [turn] ambiguous active round sessionKey=${sessionKey}; lifecycle routing rejected`);
|
|
50
|
-
}
|
|
51
|
-
return matches.length === 1 ? matches[0] : undefined;
|
|
52
|
-
}
|
|
53
|
-
export function getActiveRound(roundKey, generation) {
|
|
54
|
-
const round = rounds.get(roundKey);
|
|
55
|
-
if (!round || round.generation !== generation)
|
|
56
|
-
return undefined;
|
|
57
|
-
return round;
|
|
58
|
-
}
|
|
59
|
-
export function roundExists(roundKey, generation) {
|
|
60
|
-
return getActiveRound(roundKey, generation) !== undefined;
|
|
61
|
-
}
|
|
62
|
-
export function prepareActiveRoundInterrupt(accountId, groupId, now = Date.now()) {
|
|
63
|
-
pruneExpired(now);
|
|
64
|
-
const round = rounds.get(buildRoundKey(accountId, groupId));
|
|
65
|
-
if (!round || round.interrupted)
|
|
66
|
-
return undefined;
|
|
67
|
-
round.interrupted = true;
|
|
68
|
-
return round;
|
|
69
|
-
}
|
|
70
|
-
export function completeActiveRound(roundKey, generation) {
|
|
71
|
-
const current = rounds.get(roundKey);
|
|
72
|
-
if (!current || current.generation !== generation)
|
|
73
|
-
return false;
|
|
74
|
-
rounds.delete(roundKey);
|
|
75
|
-
return true;
|
|
76
|
-
}
|
|
77
|
-
export function __resetActiveRoundRegistryForTests() {
|
|
78
|
-
disposeActiveRoundRegistry();
|
|
79
|
-
}
|
|
80
|
-
/** 插件卸载/重载时清空活跃轮次登记。 */
|
|
81
|
-
export function disposeActiveRoundRegistry() {
|
|
82
|
-
rounds.clear();
|
|
83
|
-
generations.clear();
|
|
84
|
-
}
|
|
85
|
-
//# sourceMappingURL=active-round-registry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"active-round-registry.js","sourceRoot":"","sources":["../../src/active-round-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"active-round-registry.test.d.ts","sourceRoot":"","sources":["../../src/active-round-registry.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,62 +0,0 @@
|
|
|
1
|
-
import assert from "node:assert/strict";
|
|
2
|
-
import { afterEach, describe, it } from "node:test";
|
|
3
|
-
import { __resetActiveRoundRegistryForTests, completeActiveRound, findActiveRoundForSubagent, prepareActiveRoundInterrupt, registerActiveRound, } from "./active-round-registry.js";
|
|
4
|
-
const client = {};
|
|
5
|
-
afterEach(() => __resetActiveRoundRegistryForTests());
|
|
6
|
-
describe("active round registry", () => {
|
|
7
|
-
it("按 accountId:groupId 隔离,并用 generation 防止旧轮次误删新轮次", () => {
|
|
8
|
-
const first = registerActiveRound({
|
|
9
|
-
accountId: "account-a",
|
|
10
|
-
groupId: "group-1",
|
|
11
|
-
agentId: "main",
|
|
12
|
-
sessionKey: "session-a1",
|
|
13
|
-
replyToMsgId: "reply-a1",
|
|
14
|
-
streamClient: client,
|
|
15
|
-
});
|
|
16
|
-
const otherAccount = registerActiveRound({
|
|
17
|
-
accountId: "account-b",
|
|
18
|
-
groupId: "group-1",
|
|
19
|
-
agentId: "main",
|
|
20
|
-
sessionKey: "session-b1",
|
|
21
|
-
replyToMsgId: "reply-b1",
|
|
22
|
-
streamClient: client,
|
|
23
|
-
});
|
|
24
|
-
assert.equal(findActiveRoundForSubagent("group-1"), undefined);
|
|
25
|
-
assert.equal(prepareActiveRoundInterrupt("account-a", "group-1"), first);
|
|
26
|
-
assert.equal(prepareActiveRoundInterrupt("account-b", "group-1"), otherAccount);
|
|
27
|
-
const next = registerActiveRound({
|
|
28
|
-
accountId: "account-a",
|
|
29
|
-
groupId: "group-1",
|
|
30
|
-
agentId: "main",
|
|
31
|
-
sessionKey: "session-a2",
|
|
32
|
-
replyToMsgId: "reply-a2",
|
|
33
|
-
streamClient: client,
|
|
34
|
-
});
|
|
35
|
-
assert.equal(completeActiveRound(first.roundKey, first.generation), false);
|
|
36
|
-
assert.equal(prepareActiveRoundInterrupt("account-a", "group-1"), next);
|
|
37
|
-
});
|
|
38
|
-
it("超过 30 分钟的活动轮次不会再被 stop 命中", () => {
|
|
39
|
-
registerActiveRound({
|
|
40
|
-
accountId: "account-a",
|
|
41
|
-
groupId: "group-1",
|
|
42
|
-
agentId: "main",
|
|
43
|
-
sessionKey: "session-a1",
|
|
44
|
-
replyToMsgId: "reply-a1",
|
|
45
|
-
streamClient: client,
|
|
46
|
-
now: 1,
|
|
47
|
-
});
|
|
48
|
-
assert.equal(prepareActiveRoundInterrupt("account-a", "group-1", 30 * 60_000 + 2), undefined);
|
|
49
|
-
});
|
|
50
|
-
it("subagent 的目标 agentId 不影响按 groupId 命中唯一主轮次", () => {
|
|
51
|
-
const round = registerActiveRound({
|
|
52
|
-
accountId: "account-a",
|
|
53
|
-
groupId: "group-1",
|
|
54
|
-
agentId: "main",
|
|
55
|
-
sessionKey: "session-a1",
|
|
56
|
-
replyToMsgId: "reply-a1",
|
|
57
|
-
streamClient: client,
|
|
58
|
-
});
|
|
59
|
-
assert.equal(findActiveRoundForSubagent("group-1"), round);
|
|
60
|
-
});
|
|
61
|
-
});
|
|
62
|
-
//# sourceMappingURL=active-round-registry.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"active-round-registry.test.js","sourceRoot":"","sources":["../../src/active-round-registry.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC;AAEpD,OAAO,EACH,kCAAkC,EAClC,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,mBAAmB,GACtB,MAAM,4BAA4B,CAAC;AAEpC,MAAM,MAAM,GAAG,EAAoB,CAAC;AAEpC,SAAS,CAAC,GAAG,EAAE,CAAC,kCAAkC,EAAE,CAAC,CAAC;AAEtD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACnC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACvD,MAAM,KAAK,GAAG,mBAAmB,CAAC;YAC9B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,YAAY,GAAG,mBAAmB,CAAC;YACrC,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,YAAY,CAAC,CAAC;QAEhF,MAAM,IAAI,GAAG,mBAAmB,CAAC;YAC7B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACjC,mBAAmB,CAAC;YAChB,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;YACpB,GAAG,EAAE,CAAC;SACT,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,EAAE,SAAS,EAAE,EAAE,GAAG,MAAM,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAClG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;QACjD,MAAM,KAAK,GAAG,mBAAmB,CAAC;YAC9B,SAAS,EAAE,WAAW;YACtB,OAAO,EAAE,SAAS;YAClB,OAAO,EAAE,MAAM;YACf,UAAU,EAAE,YAAY;YACxB,YAAY,EAAE,UAAU;YACxB,YAAY,EAAE,MAAM;SACvB,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -1,205 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* robotMention.params.agentContext — 可选项目工作区 / NAS 挂载 + 知识库绑定 + 项目背景
|
|
3
|
-
*/
|
|
4
|
-
import { z } from "zod";
|
|
5
|
-
export declare const nasVolumeSchema: z.ZodObject<{
|
|
6
|
-
realDir: z.ZodString;
|
|
7
|
-
dockerDir: z.ZodString;
|
|
8
|
-
mode: z.ZodEnum<["ro", "rw"]>;
|
|
9
|
-
}, "strip", z.ZodTypeAny, {
|
|
10
|
-
realDir: string;
|
|
11
|
-
dockerDir: string;
|
|
12
|
-
mode: "ro" | "rw";
|
|
13
|
-
}, {
|
|
14
|
-
realDir: string;
|
|
15
|
-
dockerDir: string;
|
|
16
|
-
mode: "ro" | "rw";
|
|
17
|
-
}>;
|
|
18
|
-
export type NasVolume = z.infer<typeof nasVolumeSchema>;
|
|
19
|
-
/** 知识库空间 ID + 逻辑目录路径 */
|
|
20
|
-
declare const knowledgeBaseByPathSchema: z.ZodObject<{
|
|
21
|
-
projectId: z.ZodString;
|
|
22
|
-
folderPath: z.ZodString;
|
|
23
|
-
}, "strip", z.ZodTypeAny, {
|
|
24
|
-
projectId: string;
|
|
25
|
-
folderPath: string;
|
|
26
|
-
}, {
|
|
27
|
-
projectId: string;
|
|
28
|
-
folderPath: string;
|
|
29
|
-
}>;
|
|
30
|
-
/** IM 常见:仅传知识库空间 ID(无 folderPath) */
|
|
31
|
-
declare const knowledgeBaseByProjectIdOnlySchema: z.ZodObject<{
|
|
32
|
-
projectId: z.ZodString;
|
|
33
|
-
}, "strip", z.ZodTypeAny, {
|
|
34
|
-
projectId: string;
|
|
35
|
-
}, {
|
|
36
|
-
projectId: string;
|
|
37
|
-
}>;
|
|
38
|
-
export declare const agentContextKnowledgeBaseSchema: z.ZodUnion<[z.ZodObject<{
|
|
39
|
-
rootFileId: z.ZodString;
|
|
40
|
-
}, "strip", z.ZodTypeAny, {
|
|
41
|
-
rootFileId: string;
|
|
42
|
-
}, {
|
|
43
|
-
rootFileId: string;
|
|
44
|
-
}>, z.ZodObject<{
|
|
45
|
-
projectId: z.ZodString;
|
|
46
|
-
folderPath: z.ZodString;
|
|
47
|
-
}, "strip", z.ZodTypeAny, {
|
|
48
|
-
projectId: string;
|
|
49
|
-
folderPath: string;
|
|
50
|
-
}, {
|
|
51
|
-
projectId: string;
|
|
52
|
-
folderPath: string;
|
|
53
|
-
}>, z.ZodObject<{
|
|
54
|
-
projectId: z.ZodString;
|
|
55
|
-
}, "strip", z.ZodTypeAny, {
|
|
56
|
-
projectId: string;
|
|
57
|
-
}, {
|
|
58
|
-
projectId: string;
|
|
59
|
-
}>]>;
|
|
60
|
-
export type AgentContextKnowledgeBase = z.infer<typeof agentContextKnowledgeBaseSchema>;
|
|
61
|
-
/** 与 IM 后台约定的 `params.agentContext` 结构 */
|
|
62
|
-
export declare const robotMentionAgentContextSchema: z.ZodEffects<z.ZodObject<{
|
|
63
|
-
localRoot: z.ZodOptional<z.ZodObject<{
|
|
64
|
-
kind: z.ZodEnum<["workspace_relative", "host_absolute"]>;
|
|
65
|
-
path: z.ZodString;
|
|
66
|
-
}, "strip", z.ZodTypeAny, {
|
|
67
|
-
kind: "workspace_relative" | "host_absolute";
|
|
68
|
-
path: string;
|
|
69
|
-
}, {
|
|
70
|
-
kind: "workspace_relative" | "host_absolute";
|
|
71
|
-
path: string;
|
|
72
|
-
}>>;
|
|
73
|
-
nasVolumes: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
74
|
-
realDir: z.ZodString;
|
|
75
|
-
dockerDir: z.ZodString;
|
|
76
|
-
mode: z.ZodEnum<["ro", "rw"]>;
|
|
77
|
-
}, "strip", z.ZodTypeAny, {
|
|
78
|
-
realDir: string;
|
|
79
|
-
dockerDir: string;
|
|
80
|
-
mode: "ro" | "rw";
|
|
81
|
-
}, {
|
|
82
|
-
realDir: string;
|
|
83
|
-
dockerDir: string;
|
|
84
|
-
mode: "ro" | "rw";
|
|
85
|
-
}>, "many">>;
|
|
86
|
-
knowledgeBase: z.ZodOptional<z.ZodUnion<[z.ZodObject<{
|
|
87
|
-
rootFileId: z.ZodString;
|
|
88
|
-
}, "strip", z.ZodTypeAny, {
|
|
89
|
-
rootFileId: string;
|
|
90
|
-
}, {
|
|
91
|
-
rootFileId: string;
|
|
92
|
-
}>, z.ZodObject<{
|
|
93
|
-
projectId: z.ZodString;
|
|
94
|
-
folderPath: z.ZodString;
|
|
95
|
-
}, "strip", z.ZodTypeAny, {
|
|
96
|
-
projectId: string;
|
|
97
|
-
folderPath: string;
|
|
98
|
-
}, {
|
|
99
|
-
projectId: string;
|
|
100
|
-
folderPath: string;
|
|
101
|
-
}>, z.ZodObject<{
|
|
102
|
-
projectId: z.ZodString;
|
|
103
|
-
}, "strip", z.ZodTypeAny, {
|
|
104
|
-
projectId: string;
|
|
105
|
-
}, {
|
|
106
|
-
projectId: string;
|
|
107
|
-
}>]>>;
|
|
108
|
-
background: z.ZodOptional<z.ZodString>;
|
|
109
|
-
}, "strip", z.ZodTypeAny, {
|
|
110
|
-
localRoot?: {
|
|
111
|
-
kind: "workspace_relative" | "host_absolute";
|
|
112
|
-
path: string;
|
|
113
|
-
} | undefined;
|
|
114
|
-
nasVolumes?: {
|
|
115
|
-
realDir: string;
|
|
116
|
-
dockerDir: string;
|
|
117
|
-
mode: "ro" | "rw";
|
|
118
|
-
}[] | undefined;
|
|
119
|
-
knowledgeBase?: {
|
|
120
|
-
rootFileId: string;
|
|
121
|
-
} | {
|
|
122
|
-
projectId: string;
|
|
123
|
-
folderPath: string;
|
|
124
|
-
} | {
|
|
125
|
-
projectId: string;
|
|
126
|
-
} | undefined;
|
|
127
|
-
background?: string | undefined;
|
|
128
|
-
}, {
|
|
129
|
-
localRoot?: {
|
|
130
|
-
kind: "workspace_relative" | "host_absolute";
|
|
131
|
-
path: string;
|
|
132
|
-
} | undefined;
|
|
133
|
-
nasVolumes?: {
|
|
134
|
-
realDir: string;
|
|
135
|
-
dockerDir: string;
|
|
136
|
-
mode: "ro" | "rw";
|
|
137
|
-
}[] | undefined;
|
|
138
|
-
knowledgeBase?: {
|
|
139
|
-
rootFileId: string;
|
|
140
|
-
} | {
|
|
141
|
-
projectId: string;
|
|
142
|
-
folderPath: string;
|
|
143
|
-
} | {
|
|
144
|
-
projectId: string;
|
|
145
|
-
} | undefined;
|
|
146
|
-
background?: string | undefined;
|
|
147
|
-
}>, {
|
|
148
|
-
localRoot?: {
|
|
149
|
-
kind: "workspace_relative" | "host_absolute";
|
|
150
|
-
path: string;
|
|
151
|
-
} | undefined;
|
|
152
|
-
nasVolumes?: {
|
|
153
|
-
realDir: string;
|
|
154
|
-
dockerDir: string;
|
|
155
|
-
mode: "ro" | "rw";
|
|
156
|
-
}[] | undefined;
|
|
157
|
-
knowledgeBase?: {
|
|
158
|
-
rootFileId: string;
|
|
159
|
-
} | {
|
|
160
|
-
projectId: string;
|
|
161
|
-
folderPath: string;
|
|
162
|
-
} | {
|
|
163
|
-
projectId: string;
|
|
164
|
-
} | undefined;
|
|
165
|
-
background?: string | undefined;
|
|
166
|
-
}, {
|
|
167
|
-
localRoot?: {
|
|
168
|
-
kind: "workspace_relative" | "host_absolute";
|
|
169
|
-
path: string;
|
|
170
|
-
} | undefined;
|
|
171
|
-
nasVolumes?: {
|
|
172
|
-
realDir: string;
|
|
173
|
-
dockerDir: string;
|
|
174
|
-
mode: "ro" | "rw";
|
|
175
|
-
}[] | undefined;
|
|
176
|
-
knowledgeBase?: {
|
|
177
|
-
rootFileId: string;
|
|
178
|
-
} | {
|
|
179
|
-
projectId: string;
|
|
180
|
-
folderPath: string;
|
|
181
|
-
} | {
|
|
182
|
-
projectId: string;
|
|
183
|
-
} | undefined;
|
|
184
|
-
background?: string | undefined;
|
|
185
|
-
}>;
|
|
186
|
-
export type RobotMentionAgentContext = z.infer<typeof robotMentionAgentContextSchema>;
|
|
187
|
-
export type ParseRobotMentionAgentContextResult = {
|
|
188
|
-
agentContext?: RobotMentionAgentContext;
|
|
189
|
-
/** 被忽略的非法字段;仅用于日志诊断,不得阻断消息处理。 */
|
|
190
|
-
fatalError?: string;
|
|
191
|
-
/** knowledgeBase 存在但无法解析时被丢弃 */
|
|
192
|
-
knowledgeBaseDropped?: boolean;
|
|
193
|
-
knowledgeBaseDropReason?: string;
|
|
194
|
-
};
|
|
195
|
-
/**
|
|
196
|
-
* 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留工作区上下文与 background。
|
|
197
|
-
*/
|
|
198
|
-
export declare function parseRobotMentionAgentContextDetailed(params: unknown): ParseRobotMentionAgentContextResult;
|
|
199
|
-
export declare function parseRobotMentionAgentContext(params: unknown): RobotMentionAgentContext | undefined;
|
|
200
|
-
/** 判断 knowledgeBase 是否为 projectId + folderPath 形式 */
|
|
201
|
-
export declare function isKnowledgeBaseByPath(kb: AgentContextKnowledgeBase): kb is z.infer<typeof knowledgeBaseByPathSchema>;
|
|
202
|
-
/** 判断 knowledgeBase 是否仅有 projectId(无 folderPath / rootFileId) */
|
|
203
|
-
export declare function isKnowledgeBaseByProjectIdOnly(kb: AgentContextKnowledgeBase): kb is z.infer<typeof knowledgeBaseByProjectIdOnlySchema>;
|
|
204
|
-
export {};
|
|
205
|
-
//# sourceMappingURL=agent-context-types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-context-types.d.ts","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,eAAO,MAAM,eAAe;;;;;;;;;;;;EAI1B,CAAC;AAEH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAOxD,wBAAwB;AACxB,QAAA,MAAM,yBAAyB;;;;;;;;;EAG7B,CAAC;AAEH,qCAAqC;AACrC,QAAA,MAAM,kCAAkC;;;;;;EAEtC,CAAC;AAEH,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;IAI1C,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,+BAA+B,CAAC,CAAC;AAExF,0CAA0C;AAC1C,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAazC,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAEtF,MAAM,MAAM,mCAAmC,GAAG;IAC9C,YAAY,CAAC,EAAE,wBAAwB,CAAC;IACxC,iCAAiC;IACjC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;CACpC,CAAC;AAQF;;GAEG;AACH,wBAAgB,qCAAqC,CAAC,MAAM,EAAE,OAAO,GAAG,mCAAmC,CAoE1G;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,OAAO,GAAG,wBAAwB,GAAG,SAAS,CAEnG;AAED,qDAAqD;AACrD,wBAAgB,qBAAqB,CACjC,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAEjD;AAED,iEAAiE;AACjE,wBAAgB,8BAA8B,CAC1C,EAAE,EAAE,yBAAyB,GAC9B,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,kCAAkC,CAAC,CAE1D"}
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* robotMention.params.agentContext — 可选项目工作区 / NAS 挂载 + 知识库绑定 + 项目背景
|
|
3
|
-
*/
|
|
4
|
-
import { z } from "zod";
|
|
5
|
-
import { LOCAL_ROOT_KINDS } from "./project-path-normalize.js";
|
|
6
|
-
const localRootSchema = z.object({
|
|
7
|
-
kind: z.enum(LOCAL_ROOT_KINDS),
|
|
8
|
-
path: z.string().min(1),
|
|
9
|
-
});
|
|
10
|
-
export const nasVolumeSchema = z.object({
|
|
11
|
-
realDir: z.string().min(1).max(1024),
|
|
12
|
-
dockerDir: z.string().min(1).max(1024),
|
|
13
|
-
mode: z.enum(["ro", "rw"]),
|
|
14
|
-
});
|
|
15
|
-
/** 知识库目录 fileId(与 projectId 形式二选一) */
|
|
16
|
-
const knowledgeBaseByFileIdSchema = z.object({
|
|
17
|
-
rootFileId: z.string().min(1),
|
|
18
|
-
});
|
|
19
|
-
/** 知识库空间 ID + 逻辑目录路径 */
|
|
20
|
-
const knowledgeBaseByPathSchema = z.object({
|
|
21
|
-
projectId: z.string().min(1),
|
|
22
|
-
folderPath: z.string().min(1),
|
|
23
|
-
});
|
|
24
|
-
/** IM 常见:仅传知识库空间 ID(无 folderPath) */
|
|
25
|
-
const knowledgeBaseByProjectIdOnlySchema = z.object({
|
|
26
|
-
projectId: z.string().min(1),
|
|
27
|
-
});
|
|
28
|
-
export const agentContextKnowledgeBaseSchema = z.union([
|
|
29
|
-
knowledgeBaseByFileIdSchema,
|
|
30
|
-
knowledgeBaseByPathSchema,
|
|
31
|
-
knowledgeBaseByProjectIdOnlySchema,
|
|
32
|
-
]);
|
|
33
|
-
/** 与 IM 后台约定的 `params.agentContext` 结构 */
|
|
34
|
-
export const robotMentionAgentContextSchema = z.object({
|
|
35
|
-
localRoot: localRootSchema.optional(),
|
|
36
|
-
nasVolumes: z.array(nasVolumeSchema).max(16).optional(),
|
|
37
|
-
knowledgeBase: agentContextKnowledgeBaseSchema.optional(),
|
|
38
|
-
background: z.string().optional(),
|
|
39
|
-
}).superRefine((value, ctx) => {
|
|
40
|
-
if (!value.localRoot && !value.nasVolumes?.length) {
|
|
41
|
-
ctx.addIssue({
|
|
42
|
-
code: z.ZodIssueCode.custom,
|
|
43
|
-
path: ["localRoot"],
|
|
44
|
-
message: "localRoot 与 nasVolumes 至少需要提供一个",
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
function formatZodIssue(err) {
|
|
49
|
-
const issue = err.issues[0];
|
|
50
|
-
const path = issue?.path?.length ? issue.path.join(".") : "agentContext";
|
|
51
|
-
return `${path}: ${issue?.message ?? err.message}`;
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* 解析 agentContext;knowledgeBase 非法时丢弃该字段,仍保留工作区上下文与 background。
|
|
55
|
-
*/
|
|
56
|
-
export function parseRobotMentionAgentContextDetailed(params) {
|
|
57
|
-
if (params == null || typeof params !== "object") {
|
|
58
|
-
return {};
|
|
59
|
-
}
|
|
60
|
-
const raw = params.agentContext;
|
|
61
|
-
if (raw == null || typeof raw !== "object") {
|
|
62
|
-
return {};
|
|
63
|
-
}
|
|
64
|
-
const record = raw;
|
|
65
|
-
const droppedReasons = [];
|
|
66
|
-
const localRootParsed = record.localRoot == null ? undefined : localRootSchema.safeParse(record.localRoot);
|
|
67
|
-
if (localRootParsed && !localRootParsed.success) {
|
|
68
|
-
droppedReasons.push(formatZodIssue(localRootParsed.error));
|
|
69
|
-
}
|
|
70
|
-
const nasVolumes = [];
|
|
71
|
-
if (record.nasVolumes != null) {
|
|
72
|
-
if (!Array.isArray(record.nasVolumes)) {
|
|
73
|
-
droppedReasons.push("nasVolumes: Expected array");
|
|
74
|
-
}
|
|
75
|
-
else {
|
|
76
|
-
for (const [index, rawVolume] of record.nasVolumes.slice(0, 16).entries()) {
|
|
77
|
-
const parsed = nasVolumeSchema.safeParse(rawVolume);
|
|
78
|
-
if (parsed.success) {
|
|
79
|
-
nasVolumes.push(parsed.data);
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
droppedReasons.push(`nasVolumes.${index}: ${formatZodIssue(parsed.error)}`);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
if (record.nasVolumes.length > 16) {
|
|
86
|
-
droppedReasons.push("nasVolumes: 超过 16 项的部分已忽略");
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
// 保持旧逻辑:没有有效工作区来源时忽略整个 agentContext,但绝不阻断消息。
|
|
91
|
-
if (!localRootParsed?.success && nasVolumes.length === 0) {
|
|
92
|
-
return {
|
|
93
|
-
...(droppedReasons.length > 0 ? { fatalError: droppedReasons.join("; ") } : {}),
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
let knowledgeBase;
|
|
97
|
-
let knowledgeBaseDropped = false;
|
|
98
|
-
let knowledgeBaseDropReason;
|
|
99
|
-
if (record.knowledgeBase != null) {
|
|
100
|
-
const kbParsed = agentContextKnowledgeBaseSchema.safeParse(record.knowledgeBase);
|
|
101
|
-
if (kbParsed.success) {
|
|
102
|
-
knowledgeBase = kbParsed.data;
|
|
103
|
-
}
|
|
104
|
-
else {
|
|
105
|
-
knowledgeBaseDropped = true;
|
|
106
|
-
knowledgeBaseDropReason = formatZodIssue(kbParsed.error);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
const background = typeof record.background === "string" ? record.background : undefined;
|
|
110
|
-
return {
|
|
111
|
-
agentContext: {
|
|
112
|
-
...(localRootParsed?.success ? { localRoot: localRootParsed.data } : {}),
|
|
113
|
-
...(nasVolumes.length > 0 ? { nasVolumes } : {}),
|
|
114
|
-
...(knowledgeBase ? { knowledgeBase } : {}),
|
|
115
|
-
...(background !== undefined ? { background } : {}),
|
|
116
|
-
},
|
|
117
|
-
...(droppedReasons.length > 0 ? { fatalError: droppedReasons.join("; ") } : {}),
|
|
118
|
-
...(knowledgeBaseDropped ? { knowledgeBaseDropped, knowledgeBaseDropReason } : {}),
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
export function parseRobotMentionAgentContext(params) {
|
|
122
|
-
return parseRobotMentionAgentContextDetailed(params).agentContext;
|
|
123
|
-
}
|
|
124
|
-
/** 判断 knowledgeBase 是否为 projectId + folderPath 形式 */
|
|
125
|
-
export function isKnowledgeBaseByPath(kb) {
|
|
126
|
-
return "projectId" in kb && "folderPath" in kb;
|
|
127
|
-
}
|
|
128
|
-
/** 判断 knowledgeBase 是否仅有 projectId(无 folderPath / rootFileId) */
|
|
129
|
-
export function isKnowledgeBaseByProjectIdOnly(kb) {
|
|
130
|
-
return "projectId" in kb && !("folderPath" in kb) && !("rootFileId" in kb);
|
|
131
|
-
}
|
|
132
|
-
//# sourceMappingURL=agent-context-types.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-context-types.js","sourceRoot":"","sources":["../../src/agent-context-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-context-types.test.d.ts","sourceRoot":"","sources":["../../src/agent-context-types.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,123 +0,0 @@
|
|
|
1
|
-
import assert from "node:assert/strict";
|
|
2
|
-
import { describe, it } from "node:test";
|
|
3
|
-
import { parseRobotMentionAgentContext, parseRobotMentionAgentContextDetailed, } from "./agent-context-types.js";
|
|
4
|
-
const USER_PAYLOAD = {
|
|
5
|
-
agentContext: {
|
|
6
|
-
background: "- 项目名称:Sitavig\n\n该项目对应的知识库根目录id为:2072258063360479234\n\n### 会话背景信息:\n待办内容:BD初审修订任务",
|
|
7
|
-
knowledgeBase: { projectId: "1660820549716893698" },
|
|
8
|
-
localRoot: { kind: "workspace_relative", path: "project/202607/2074431529933336577" },
|
|
9
|
-
},
|
|
10
|
-
};
|
|
11
|
-
describe("parseRobotMentionAgentContext", () => {
|
|
12
|
-
it("accepts knowledgeBase with projectId only (IM 常见形态)", () => {
|
|
13
|
-
const ctx = parseRobotMentionAgentContext(USER_PAYLOAD);
|
|
14
|
-
assert.ok(ctx);
|
|
15
|
-
assert.equal(ctx.localRoot.path, "project/202607/2074431529933336577");
|
|
16
|
-
assert.deepEqual(ctx.knowledgeBase, { projectId: "1660820549716893698" });
|
|
17
|
-
assert.ok(ctx.background?.includes("Sitavig"));
|
|
18
|
-
});
|
|
19
|
-
it("accepts knowledgeBase with projectId and folderPath", () => {
|
|
20
|
-
const ctx = parseRobotMentionAgentContext({
|
|
21
|
-
agentContext: {
|
|
22
|
-
localRoot: { kind: "workspace_relative", path: "data/a" },
|
|
23
|
-
knowledgeBase: { projectId: "p1", folderPath: "团队文档/项目A" },
|
|
24
|
-
},
|
|
25
|
-
});
|
|
26
|
-
assert.deepEqual(ctx.knowledgeBase, {
|
|
27
|
-
projectId: "p1",
|
|
28
|
-
folderPath: "团队文档/项目A",
|
|
29
|
-
});
|
|
30
|
-
});
|
|
31
|
-
it("accepts knowledgeBase with rootFileId", () => {
|
|
32
|
-
const ctx = parseRobotMentionAgentContext({
|
|
33
|
-
agentContext: {
|
|
34
|
-
localRoot: { kind: "workspace_relative", path: "data/a" },
|
|
35
|
-
knowledgeBase: { rootFileId: "2072258063360479234" },
|
|
36
|
-
},
|
|
37
|
-
});
|
|
38
|
-
assert.deepEqual(ctx.knowledgeBase, { rootFileId: "2072258063360479234" });
|
|
39
|
-
});
|
|
40
|
-
it("ignores a context with no valid workspace source without making it fatal", () => {
|
|
41
|
-
const result = parseRobotMentionAgentContextDetailed({
|
|
42
|
-
agentContext: { background: "x" },
|
|
43
|
-
});
|
|
44
|
-
assert.equal(result.agentContext, undefined);
|
|
45
|
-
assert.equal(result.fatalError, undefined);
|
|
46
|
-
});
|
|
47
|
-
it("accepts nasVolumes without localRoot", () => {
|
|
48
|
-
const ctx = parseRobotMentionAgentContext({
|
|
49
|
-
agentContext: {
|
|
50
|
-
nasVolumes: [
|
|
51
|
-
{
|
|
52
|
-
realDir: "/data/touqian/CP202205250005/sequences/0000",
|
|
53
|
-
dockerDir: "touqian/2026/08/biz-1/CP202205250005/sequences/0000",
|
|
54
|
-
mode: "ro",
|
|
55
|
-
},
|
|
56
|
-
],
|
|
57
|
-
background: "案件资料处理",
|
|
58
|
-
},
|
|
59
|
-
});
|
|
60
|
-
assert.ok(ctx);
|
|
61
|
-
assert.equal(ctx.localRoot, undefined);
|
|
62
|
-
assert.equal(ctx.nasVolumes?.[0]?.mode, "ro");
|
|
63
|
-
});
|
|
64
|
-
it("treats an empty nasVolumes array exactly like an omitted field when localRoot exists", () => {
|
|
65
|
-
const withoutNas = parseRobotMentionAgentContext({
|
|
66
|
-
agentContext: { localRoot: { kind: "workspace_relative", path: "data/a" } },
|
|
67
|
-
});
|
|
68
|
-
const emptyNas = parseRobotMentionAgentContext({
|
|
69
|
-
agentContext: {
|
|
70
|
-
localRoot: { kind: "workspace_relative", path: "data/a" },
|
|
71
|
-
nasVolumes: [],
|
|
72
|
-
},
|
|
73
|
-
});
|
|
74
|
-
assert.deepEqual(emptyNas, withoutNas);
|
|
75
|
-
assert.equal(emptyNas?.nasVolumes, undefined);
|
|
76
|
-
});
|
|
77
|
-
it("ignores an invalid nasVolumes item without blocking valid items", () => {
|
|
78
|
-
const result = parseRobotMentionAgentContextDetailed({
|
|
79
|
-
agentContext: {
|
|
80
|
-
nasVolumes: [
|
|
81
|
-
{ realDir: "/data/touqian/a", dockerDir: "case/a", mode: "write" },
|
|
82
|
-
{ realDir: "/data/touqian/b", dockerDir: "case/b", mode: "rw" },
|
|
83
|
-
],
|
|
84
|
-
},
|
|
85
|
-
});
|
|
86
|
-
assert.equal(result.agentContext?.nasVolumes?.length, 1);
|
|
87
|
-
assert.equal(result.agentContext?.nasVolumes?.[0]?.dockerDir, "case/b");
|
|
88
|
-
assert.ok(result.fatalError?.includes("mode"));
|
|
89
|
-
});
|
|
90
|
-
it("ignores an entirely invalid nasVolumes declaration and leaves the message unblocked", () => {
|
|
91
|
-
const result = parseRobotMentionAgentContextDetailed({
|
|
92
|
-
agentContext: {
|
|
93
|
-
nasVolumes: [{ realDir: "/data/touqian/a", dockerDir: "case/a", mode: "write" }],
|
|
94
|
-
background: "must not make the context fatal",
|
|
95
|
-
},
|
|
96
|
-
});
|
|
97
|
-
assert.equal(result.agentContext, undefined);
|
|
98
|
-
assert.ok(result.fatalError?.includes("mode"));
|
|
99
|
-
});
|
|
100
|
-
it("ignores oversized NAS paths so cached strings have a fixed upper bound", () => {
|
|
101
|
-
const result = parseRobotMentionAgentContextDetailed({
|
|
102
|
-
agentContext: {
|
|
103
|
-
nasVolumes: [{ realDir: `/${"a".repeat(1024)}`, dockerDir: "case/a", mode: "ro" }],
|
|
104
|
-
},
|
|
105
|
-
});
|
|
106
|
-
assert.equal(result.agentContext, undefined);
|
|
107
|
-
assert.ok(result.fatalError?.includes("realDir"));
|
|
108
|
-
});
|
|
109
|
-
it("drops invalid knowledgeBase but keeps localRoot and background", () => {
|
|
110
|
-
const result = parseRobotMentionAgentContextDetailed({
|
|
111
|
-
agentContext: {
|
|
112
|
-
localRoot: { kind: "workspace_relative", path: "data/a" },
|
|
113
|
-
knowledgeBase: { rootFileId: "" },
|
|
114
|
-
background: "项目说明",
|
|
115
|
-
},
|
|
116
|
-
});
|
|
117
|
-
assert.ok(result.agentContext);
|
|
118
|
-
assert.equal(result.agentContext.background, "项目说明");
|
|
119
|
-
assert.equal(result.agentContext.knowledgeBase, undefined);
|
|
120
|
-
assert.equal(result.knowledgeBaseDropped, true);
|
|
121
|
-
});
|
|
122
|
-
});
|
|
123
|
-
//# sourceMappingURL=agent-context-types.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-context-types.test.js","sourceRoot":"","sources":["../../src/agent-context-types.test.ts"],"names":[],"mappings":"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"}
|