@nocobase/app-plugin-agents 2.0.0-beta.1 → 2.0.0-beta.11
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/CHANGELOG.md +197 -0
- package/README.md +25 -5
- package/dist/client/chat/api.d.ts +6 -1
- package/dist/client/chat/api.d.ts.map +1 -1
- package/dist/client/chat/api.js +18 -0
- package/dist/client/chat/api.js.map +1 -1
- package/dist/client/chat/controller.d.ts +12 -0
- package/dist/client/chat/controller.d.ts.map +1 -1
- package/dist/client/chat/controller.js +65 -20
- package/dist/client/chat/controller.js.map +1 -1
- package/dist/client/chat/notices.d.ts +12 -0
- package/dist/client/chat/notices.d.ts.map +1 -0
- package/dist/client/chat/notices.js +15 -0
- package/dist/client/chat/notices.js.map +1 -0
- package/dist/client/chat/submissions.d.ts +16 -0
- package/dist/client/chat/submissions.d.ts.map +1 -1
- package/dist/client/chat/submissions.js +22 -0
- package/dist/client/chat/submissions.js.map +1 -1
- package/dist/client/chat/use-chat.d.ts.map +1 -1
- package/dist/client/chat/use-chat.js +1 -0
- package/dist/client/chat/use-chat.js.map +1 -1
- package/dist/client/chat.d.ts +1 -0
- package/dist/client/chat.d.ts.map +1 -1
- package/dist/client/chat.js +1 -0
- package/dist/client/chat.js.map +1 -1
- package/dist/client/components/page-container.js +1 -1
- package/dist/client/components/page-container.js.map +1 -1
- package/dist/client/components/route-child-page.d.ts +1 -1
- package/dist/client/components/route-child-page.d.ts.map +1 -1
- package/dist/client/components/route-child-page.js +18 -2
- package/dist/client/components/route-child-page.js.map +1 -1
- package/dist/client/components/route-overlay.d.ts +4 -1
- package/dist/client/components/route-overlay.d.ts.map +1 -1
- package/dist/client/components/route-overlay.js +32 -3
- package/dist/client/components/route-overlay.js.map +1 -1
- package/dist/client/components/ui/alert-dialog.d.ts +3 -1
- package/dist/client/components/ui/alert-dialog.d.ts.map +1 -1
- package/dist/client/components/ui/alert-dialog.js +2 -2
- package/dist/client/components/ui/alert-dialog.js.map +1 -1
- package/dist/client/components/unsaved-changes.d.ts.map +1 -1
- package/dist/client/components/unsaved-changes.js +17 -4
- package/dist/client/components/unsaved-changes.js.map +1 -1
- package/dist/client/components/use-route-overlay.d.ts +2 -9
- package/dist/client/components/use-route-overlay.d.ts.map +1 -1
- package/dist/client/components/use-route-overlay.js +5 -3
- package/dist/client/components/use-route-overlay.js.map +1 -1
- package/dist/client/lib/format.d.ts.map +1 -1
- package/dist/client/lib/format.js +1 -0
- package/dist/client/lib/format.js.map +1 -1
- package/dist/client/locales/de-DE.d.ts.map +1 -1
- package/dist/client/locales/de-DE.js +145 -109
- package/dist/client/locales/de-DE.js.map +1 -1
- package/dist/client/locales/en-US.d.ts +2 -0
- package/dist/client/locales/en-US.d.ts.map +1 -1
- package/dist/client/locales/en-US.js +4 -2
- package/dist/client/locales/en-US.js.map +1 -1
- package/dist/client/locales/es-ES.d.ts.map +1 -1
- package/dist/client/locales/es-ES.js +222 -186
- package/dist/client/locales/es-ES.js.map +1 -1
- package/dist/client/locales/fr-FR.d.ts.map +1 -1
- package/dist/client/locales/fr-FR.js +154 -118
- package/dist/client/locales/fr-FR.js.map +1 -1
- package/dist/client/locales/id-ID.d.ts.map +1 -1
- package/dist/client/locales/id-ID.js +143 -107
- package/dist/client/locales/id-ID.js.map +1 -1
- package/dist/client/locales/index.d.ts.map +1 -1
- package/dist/client/locales/index.js +2 -0
- package/dist/client/locales/index.js.map +1 -1
- package/dist/client/locales/ja-JP.d.ts.map +1 -1
- package/dist/client/locales/ja-JP.js +226 -190
- package/dist/client/locales/ja-JP.js.map +1 -1
- package/dist/client/locales/ko-KR.d.ts +5 -0
- package/dist/client/locales/ko-KR.d.ts.map +1 -0
- package/dist/client/locales/ko-KR.js +1319 -0
- package/dist/client/locales/ko-KR.js.map +1 -0
- package/dist/client/locales/pt-BR.d.ts.map +1 -1
- package/dist/client/locales/pt-BR.js +216 -180
- package/dist/client/locales/pt-BR.js.map +1 -1
- package/dist/client/locales/ru-RU.d.ts +5 -0
- package/dist/client/locales/ru-RU.d.ts.map +1 -0
- package/dist/client/locales/ru-RU.js +1349 -0
- package/dist/client/locales/ru-RU.js.map +1 -0
- package/dist/client/locales/runWait.en-US.d.ts +2 -0
- package/dist/client/locales/runWait.en-US.d.ts.map +1 -1
- package/dist/client/locales/runWait.en-US.js +2 -0
- package/dist/client/locales/runWait.en-US.js.map +1 -1
- package/dist/client/locales/runWait.zh-CN.d.ts.map +1 -1
- package/dist/client/locales/runWait.zh-CN.js +2 -0
- package/dist/client/locales/runWait.zh-CN.js.map +1 -1
- package/dist/client/locales/runtimes.en-US.d.ts +9 -0
- package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
- package/dist/client/locales/runtimes.en-US.js +11 -2
- package/dist/client/locales/runtimes.en-US.js.map +1 -1
- package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
- package/dist/client/locales/runtimes.zh-CN.js +11 -2
- package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
- package/dist/client/locales/vi-VN.d.ts.map +1 -1
- package/dist/client/locales/vi-VN.js +182 -146
- package/dist/client/locales/vi-VN.js.map +1 -1
- package/dist/client/locales/zh-CN.d.ts.map +1 -1
- package/dist/client/locales/zh-CN.js +4 -2
- package/dist/client/locales/zh-CN.js.map +1 -1
- package/dist/client/locales/zh-TW.d.ts.map +1 -1
- package/dist/client/locales/zh-TW.js +159 -123
- package/dist/client/locales/zh-TW.js.map +1 -1
- package/dist/client/pages/runtimes/quota-limit-setting.d.ts +12 -0
- package/dist/client/pages/runtimes/quota-limit-setting.d.ts.map +1 -0
- package/dist/client/pages/runtimes/quota-limit-setting.js +57 -0
- package/dist/client/pages/runtimes/quota-limit-setting.js.map +1 -0
- package/dist/client/pages/runtimes/quota.d.ts +3 -2
- package/dist/client/pages/runtimes/quota.d.ts.map +1 -1
- package/dist/client/pages/runtimes/quota.js +10 -4
- package/dist/client/pages/runtimes/quota.js.map +1 -1
- package/dist/client/pages/runtimes/runner-runs.d.ts.map +1 -1
- package/dist/client/pages/runtimes/runner-runs.js +2 -8
- package/dist/client/pages/runtimes/runner-runs.js.map +1 -1
- package/dist/client/pages/runtimes/runner-tools.d.ts.map +1 -1
- package/dist/client/pages/runtimes/runner-tools.js +7 -16
- package/dist/client/pages/runtimes/runner-tools.js.map +1 -1
- package/dist/client/pages/runtimes/workspace-diagnostics.js +3 -3
- package/dist/client/pages/runtimes/workspace-diagnostics.js.map +1 -1
- package/dist/client/pages/usage/date-range-picker.d.ts.map +1 -1
- package/dist/client/pages/usage/date-range-picker.js +3 -1
- package/dist/client/pages/usage/date-range-picker.js.map +1 -1
- package/dist/client/routes.d.ts.map +1 -1
- package/dist/client/routes.js +7 -0
- package/dist/client/routes.js.map +1 -1
- package/dist/client/runs/format-wait.d.ts.map +1 -1
- package/dist/client/runs/format-wait.js +2 -0
- package/dist/client/runs/format-wait.js.map +1 -1
- package/dist/database/migrations/.manifest.json +20 -0
- package/dist/database/migrations/202611070001_ag_run_runner_pin.d.ts +4 -0
- package/dist/database/migrations/202611070001_ag_run_runner_pin.d.ts.map +1 -0
- package/dist/database/migrations/202611070001_ag_run_runner_pin.js +17 -0
- package/dist/database/migrations/202611070001_ag_run_runner_pin.js.map +1 -0
- package/dist/database/migrations/202611080001_ag_conversation_shares.d.ts +4 -0
- package/dist/database/migrations/202611080001_ag_conversation_shares.d.ts.map +1 -0
- package/dist/database/migrations/202611080001_ag_conversation_shares.js +25 -0
- package/dist/database/migrations/202611080001_ag_conversation_shares.js.map +1 -0
- package/dist/database/migrations/202611080002_ag_run_failure_params.d.ts +4 -0
- package/dist/database/migrations/202611080002_ag_run_failure_params.d.ts.map +1 -0
- package/dist/database/migrations/202611080002_ag_run_failure_params.js +17 -0
- package/dist/database/migrations/202611080002_ag_run_failure_params.js.map +1 -0
- package/dist/database/migrations/202611090001_ag_runner_preference.d.ts +9 -0
- package/dist/database/migrations/202611090001_ag_runner_preference.d.ts.map +1 -0
- package/dist/database/migrations/202611090001_ag_runner_preference.js +28 -0
- package/dist/database/migrations/202611090001_ag_runner_preference.js.map +1 -0
- package/dist/database/migrations/202611110001_ag_runner_quota_limits.d.ts +4 -0
- package/dist/database/migrations/202611110001_ag_runner_quota_limits.d.ts.map +1 -0
- package/dist/database/migrations/202611110001_ag_runner_quota_limits.js +17 -0
- package/dist/database/migrations/202611110001_ag_runner_quota_limits.js.map +1 -0
- package/dist/package.json +4 -2
- package/dist/server/composition.d.ts +9 -1
- package/dist/server/composition.d.ts.map +1 -1
- package/dist/server/composition.js +31 -2
- package/dist/server/composition.js.map +1 -1
- package/dist/server/core/agents/agent.service.d.ts +2 -1
- package/dist/server/core/agents/agent.service.d.ts.map +1 -1
- package/dist/server/core/agents/agent.service.js.map +1 -1
- package/dist/server/core/agents/agent.store.d.ts +2 -2
- package/dist/server/core/agents/agent.store.d.ts.map +1 -1
- package/dist/server/core/agents/agent.store.js +8 -2
- package/dist/server/core/agents/agent.store.js.map +1 -1
- package/dist/server/core/brief/brief.d.ts +10 -5
- package/dist/server/core/brief/brief.d.ts.map +1 -1
- package/dist/server/core/brief/brief.js +36 -13
- package/dist/server/core/brief/brief.js.map +1 -1
- package/dist/server/core/brief/index.d.ts +1 -1
- package/dist/server/core/brief/index.d.ts.map +1 -1
- package/dist/server/core/brief/index.js +1 -1
- package/dist/server/core/brief/index.js.map +1 -1
- package/dist/server/core/conversations/attachments.d.ts +6 -4
- package/dist/server/core/conversations/attachments.d.ts.map +1 -1
- package/dist/server/core/conversations/attachments.js +66 -22
- package/dist/server/core/conversations/attachments.js.map +1 -1
- package/dist/server/core/conversations/chat-settings.d.ts +1 -1
- package/dist/server/core/conversations/chat-settings.d.ts.map +1 -1
- package/dist/server/core/conversations/chat-settings.js +6 -0
- package/dist/server/core/conversations/chat-settings.js.map +1 -1
- package/dist/server/core/conversations/conversation.service.d.ts +3 -1
- package/dist/server/core/conversations/conversation.service.d.ts.map +1 -1
- package/dist/server/core/conversations/conversation.service.js +198 -18
- package/dist/server/core/conversations/conversation.service.js.map +1 -1
- package/dist/server/core/conversations/conversation.store.d.ts +2 -0
- package/dist/server/core/conversations/conversation.store.d.ts.map +1 -1
- package/dist/server/core/conversations/conversation.store.js.map +1 -1
- package/dist/server/core/conversations/index.d.ts +1 -0
- package/dist/server/core/conversations/index.d.ts.map +1 -1
- package/dist/server/core/conversations/links.d.ts.map +1 -1
- package/dist/server/core/conversations/links.js +10 -5
- package/dist/server/core/conversations/links.js.map +1 -1
- package/dist/server/core/conversations/ports.d.ts +8 -2
- package/dist/server/core/conversations/ports.d.ts.map +1 -1
- package/dist/server/core/conversations/shares.d.ts +38 -0
- package/dist/server/core/conversations/shares.d.ts.map +1 -0
- package/dist/server/core/conversations/shares.js +189 -0
- package/dist/server/core/conversations/shares.js.map +1 -0
- package/dist/server/core/reports/report.service.d.ts.map +1 -1
- package/dist/server/core/reports/report.service.js +24 -13
- package/dist/server/core/reports/report.service.js.map +1 -1
- package/dist/server/core/runs/access.d.ts +7 -1
- package/dist/server/core/runs/access.d.ts.map +1 -1
- package/dist/server/core/runs/access.js +51 -2
- package/dist/server/core/runs/access.js.map +1 -1
- package/dist/server/core/runs/claim.d.ts +22 -3
- package/dist/server/core/runs/claim.d.ts.map +1 -1
- package/dist/server/core/runs/claim.js +260 -42
- package/dist/server/core/runs/claim.js.map +1 -1
- package/dist/server/core/runs/eligibility.d.ts.map +1 -1
- package/dist/server/core/runs/eligibility.js +1 -0
- package/dist/server/core/runs/eligibility.js.map +1 -1
- package/dist/server/core/runs/extensions.d.ts +30 -2
- package/dist/server/core/runs/extensions.d.ts.map +1 -1
- package/dist/server/core/runs/extensions.js +18 -1
- package/dist/server/core/runs/extensions.js.map +1 -1
- package/dist/server/core/runs/git-credentials.d.ts.map +1 -1
- package/dist/server/core/runs/git-credentials.js +24 -2
- package/dist/server/core/runs/git-credentials.js.map +1 -1
- package/dist/server/core/runs/identity.d.ts.map +1 -1
- package/dist/server/core/runs/identity.js +9 -0
- package/dist/server/core/runs/identity.js.map +1 -1
- package/dist/server/core/runs/index.d.ts +3 -2
- package/dist/server/core/runs/index.d.ts.map +1 -1
- package/dist/server/core/runs/index.js +2 -1
- package/dist/server/core/runs/index.js.map +1 -1
- package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
- package/dist/server/core/runs/lifecycle.js +14 -0
- package/dist/server/core/runs/lifecycle.js.map +1 -1
- package/dist/server/core/runs/npm-credentials.d.ts +35 -0
- package/dist/server/core/runs/npm-credentials.d.ts.map +1 -0
- package/dist/server/core/runs/npm-credentials.js +83 -0
- package/dist/server/core/runs/npm-credentials.js.map +1 -0
- package/dist/server/core/runs/ports.d.ts +24 -3
- package/dist/server/core/runs/ports.d.ts.map +1 -1
- package/dist/server/core/runs/ports.js.map +1 -1
- package/dist/server/core/runs/preview.d.ts +1 -4
- package/dist/server/core/runs/preview.d.ts.map +1 -1
- package/dist/server/core/runs/preview.js +10 -5
- package/dist/server/core/runs/preview.js.map +1 -1
- package/dist/server/core/runs/quota-wait.d.ts +7 -0
- package/dist/server/core/runs/quota-wait.d.ts.map +1 -0
- package/dist/server/core/runs/quota-wait.js +56 -0
- package/dist/server/core/runs/quota-wait.js.map +1 -0
- package/dist/server/core/runs/run-data-purge.d.ts.map +1 -1
- package/dist/server/core/runs/run-data-purge.js +1 -0
- package/dist/server/core/runs/run-data-purge.js.map +1 -1
- package/dist/server/core/runs/run.service.d.ts +31 -5
- package/dist/server/core/runs/run.service.d.ts.map +1 -1
- package/dist/server/core/runs/run.service.js +129 -35
- package/dist/server/core/runs/run.service.js.map +1 -1
- package/dist/server/core/runs/run.store.d.ts +24 -0
- package/dist/server/core/runs/run.store.d.ts.map +1 -1
- package/dist/server/core/runs/run.store.js +44 -0
- package/dist/server/core/runs/run.store.js.map +1 -1
- package/dist/server/core/runs/sweeper.d.ts.map +1 -1
- package/dist/server/core/runs/sweeper.js +2 -0
- package/dist/server/core/runs/sweeper.js.map +1 -1
- package/dist/server/core/runs/transitions.d.ts +1 -0
- package/dist/server/core/runs/transitions.d.ts.map +1 -1
- package/dist/server/core/runs/transitions.js +15 -1
- package/dist/server/core/runs/transitions.js.map +1 -1
- package/dist/server/core/runs/workload.d.ts +2 -2
- package/dist/server/core/runs/workload.d.ts.map +1 -1
- package/dist/server/core/runs/workload.js +62 -9
- package/dist/server/core/runs/workload.js.map +1 -1
- package/dist/server/kernel/clock.d.ts +2 -0
- package/dist/server/kernel/clock.d.ts.map +1 -1
- package/dist/server/kernel/clock.js +14 -0
- package/dist/server/kernel/clock.js.map +1 -1
- package/dist/server/kernel/events.d.ts +4 -1
- package/dist/server/kernel/events.d.ts.map +1 -1
- package/dist/server/kernel/events.js.map +1 -1
- package/dist/server/locales/de-DE.js +3 -3
- package/dist/server/locales/de-DE.js.map +1 -1
- package/dist/server/locales/es-ES.js +6 -6
- package/dist/server/locales/es-ES.js.map +1 -1
- package/dist/server/locales/fr-FR.js +4 -4
- package/dist/server/locales/fr-FR.js.map +1 -1
- package/dist/server/locales/id-ID.js +5 -5
- package/dist/server/locales/id-ID.js.map +1 -1
- package/dist/server/locales/index.d.ts.map +1 -1
- package/dist/server/locales/index.js +2 -0
- package/dist/server/locales/index.js.map +1 -1
- package/dist/server/locales/ja-JP.d.ts.map +1 -1
- package/dist/server/locales/ja-JP.js +6 -6
- package/dist/server/locales/ja-JP.js.map +1 -1
- package/dist/server/locales/ko-KR.d.ts +5 -0
- package/dist/server/locales/ko-KR.d.ts.map +1 -0
- package/dist/server/locales/ko-KR.js +59 -0
- package/dist/server/locales/ko-KR.js.map +1 -0
- package/dist/server/locales/pt-BR.js +6 -6
- package/dist/server/locales/pt-BR.js.map +1 -1
- package/dist/server/locales/ru-RU.d.ts +5 -0
- package/dist/server/locales/ru-RU.d.ts.map +1 -0
- package/dist/server/locales/ru-RU.js +59 -0
- package/dist/server/locales/ru-RU.js.map +1 -0
- package/dist/server/locales/vi-VN.js +6 -6
- package/dist/server/locales/vi-VN.js.map +1 -1
- package/dist/server/locales/zh-TW.d.ts.map +1 -1
- package/dist/server/locales/zh-TW.js +6 -6
- package/dist/server/locales/zh-TW.js.map +1 -1
- package/dist/server/online/agent/persistence/store.d.ts.map +1 -1
- package/dist/server/online/agent/persistence/store.js +3 -0
- package/dist/server/online/agent/persistence/store.js.map +1 -1
- package/dist/server/online/agent/runner/projection.d.ts +1 -1
- package/dist/server/online/agent/runner/projection.d.ts.map +1 -1
- package/dist/server/online/agent/runner/projection.js +8 -1
- package/dist/server/online/agent/runner/projection.js.map +1 -1
- package/dist/server/online/files/input.d.ts +2 -2
- package/dist/server/online/files/input.d.ts.map +1 -1
- package/dist/server/online/files/input.js +5 -6
- package/dist/server/online/files/input.js.map +1 -1
- package/dist/server/online/files/kimi.d.ts.map +1 -1
- package/dist/server/online/files/kimi.js +2 -2
- package/dist/server/online/files/kimi.js.map +1 -1
- package/dist/server/online/files/service.d.ts +2 -1
- package/dist/server/online/files/service.d.ts.map +1 -1
- package/dist/server/online/files/service.js +11 -10
- package/dist/server/online/files/service.js.map +1 -1
- package/dist/server/providers/agents.d.ts.map +1 -1
- package/dist/server/providers/agents.js +5 -2
- package/dist/server/providers/agents.js.map +1 -1
- package/dist/server/routes/admin.d.ts +1 -0
- package/dist/server/routes/admin.d.ts.map +1 -1
- package/dist/server/routes/admin.js +41 -14
- package/dist/server/routes/admin.js.map +1 -1
- package/dist/server/routes/chat.d.ts.map +1 -1
- package/dist/server/routes/chat.js +107 -24
- package/dist/server/routes/chat.js.map +1 -1
- package/dist/server/routes/index.d.ts.map +1 -1
- package/dist/server/routes/index.js +8 -2
- package/dist/server/routes/index.js.map +1 -1
- package/dist/server/routes/run.js +1 -1
- package/dist/server/routes/run.js.map +1 -1
- package/dist/server/routes/runners/admin.d.ts.map +1 -1
- package/dist/server/routes/runners/admin.js +3 -3
- package/dist/server/routes/runners/admin.js.map +1 -1
- package/dist/server/routes/runners/install.d.ts.map +1 -1
- package/dist/server/routes/runners/install.js +5 -0
- package/dist/server/routes/runners/install.js.map +1 -1
- package/dist/server/routes/runners/runner.d.ts.map +1 -1
- package/dist/server/routes/runners/runner.js +13 -22
- package/dist/server/routes/runners/runner.js.map +1 -1
- package/dist/server/routes/runners/runs.d.ts +1 -1
- package/dist/server/routes/runners/runs.d.ts.map +1 -1
- package/dist/server/routes/runners/runs.js +20 -1
- package/dist/server/routes/runners/runs.js.map +1 -1
- package/dist/server/routes/schemas.d.ts +4 -0
- package/dist/server/routes/schemas.d.ts.map +1 -1
- package/dist/server/routes/schemas.js +31 -6
- package/dist/server/routes/schemas.js.map +1 -1
- package/dist/server/runners/runner.service.d.ts.map +1 -1
- package/dist/server/runners/runner.service.js +33 -9
- package/dist/server/runners/runner.service.js.map +1 -1
- package/dist/server/runners/runner.store.d.ts +1 -0
- package/dist/server/runners/runner.store.d.ts.map +1 -1
- package/dist/server/runners/runner.store.js +1 -0
- package/dist/server/runners/runner.store.js.map +1 -1
- package/dist/server/tokens.d.ts +1 -1
- package/dist/server/tokens.d.ts.map +1 -1
- package/dist/server/tokens.js.map +1 -1
- package/dist/shared/briefs.d.ts +2 -6
- package/dist/shared/briefs.d.ts.map +1 -1
- package/dist/shared/conversations.d.ts +34 -3
- package/dist/shared/conversations.d.ts.map +1 -1
- package/dist/shared/conversations.js +10 -2
- package/dist/shared/conversations.js.map +1 -1
- package/dist/shared/runners.d.ts +7 -3
- package/dist/shared/runners.d.ts.map +1 -1
- package/dist/shared/runners.js +20 -4
- package/dist/shared/runners.js.map +1 -1
- package/dist/shared/runs.d.ts +11 -3
- package/dist/shared/runs.d.ts.map +1 -1
- package/dist/shared/runs.js +2 -0
- package/dist/shared/runs.js.map +1 -1
- package/docs/conversation-sharing.md +55 -0
- package/package.json +18 -16
- package/skills/nocobase-app-plugin-agents/SKILL.md +5 -1
- package/skills/nocobase-app-plugin-agents/references/extension-points.md +5 -1
- package/skills/nocobase-app-plugin-agents/references/online-agent.md +6 -6
- package/skills/nocobase-app-plugin-agents/references/runners.md +1 -1
- package/skills/nocobase-app-plugin-agents/references/verification-and-troubleshooting.md +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,202 @@
|
|
|
1
1
|
# @nocobase/app-plugin-agents
|
|
2
2
|
|
|
3
|
+
## 2.0.0-beta.11
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- d88875e: Configure per-disk upload limits through Drive, validate issue, comment and conversation attachments with shared File helpers, and use the same limits for issue, comment and conversation upload checks and messages.
|
|
8
|
+
|
|
9
|
+
Conversation attachment size errors now use `FILE_TOO_LARGE` in the `file` domain instead of `UPLOAD_TOO_LARGE` in `agents`. Online Agent attachment reading follows the stored disk limit.
|
|
10
|
+
|
|
11
|
+
Upload limits are embedded in the page’s public configuration, so client startup requires no separate upload-policy request.
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- ff549a1: Keep reading a conversation's new messages when a stream reconnection discards the page being read, so a run failure notice saved meanwhile is shown without reloading.
|
|
16
|
+
- ff549a1: Keep a running chat response subscribed when a conversation read from before the current input still reports the conversation as idle, and report in `StreamState.finished` the response whose stream ended with the server's `finish`, so a stopped, cut-off or failed stream is no longer mistaken for a completed turn.
|
|
17
|
+
- 7d9c0a4: Preserve Claude rate-limit snapshots across independent quota windows and let runtime owners configure usage ceilings that pause new work without interrupting active runs.
|
|
18
|
+
- 7e97024: Filter agent runs by their subject visibility before listing, reporting or granting access to transcripts and realtime updates.
|
|
19
|
+
- e1f584e: The notification Skill no longer tells an agent that in-app inbox writes need a CSRF token, matching the in-app plugin, whose writes are protected by the authentication plugin's origin check. The in-app Skill's description no longer promises a Client page the plugin does not contribute. The agents and in-app Skills name their package's `docs/` and `README.md` files instead of linking outside the Skill folder, so the links no longer break once the Skills are synchronized into an application's `.agents/skills/`, and the agents extension points table links to `online-agent.md` by its real name.
|
|
20
|
+
- Updated dependencies [d88875e]
|
|
21
|
+
- Updated dependencies [57912f1]
|
|
22
|
+
- Updated dependencies [57912f1]
|
|
23
|
+
- Updated dependencies [57912f1]
|
|
24
|
+
- @nocobase/document-extractor@0.1.0-beta.1
|
|
25
|
+
- @nocobase/app-server@5.0.0-beta.4
|
|
26
|
+
- @nocobase/app-plugin-file@1.0.0-beta.31
|
|
27
|
+
- @nocobase/app-client@4.0.0-beta.10
|
|
28
|
+
- @nocobase/db@1.0.0-beta.28
|
|
29
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.20
|
|
30
|
+
- @nocobase/app-cli@1.0.0-beta.33
|
|
31
|
+
|
|
32
|
+
## 2.0.0-beta.10
|
|
33
|
+
|
|
34
|
+
### Minor Changes
|
|
35
|
+
|
|
36
|
+
- 411a9f3: Tell a subject's `onCancelRequested` which run asked for a stop (`CancelRequest.byRunId`), so an application can tell an agent cancelling its own work from a person stopping it.
|
|
37
|
+
|
|
38
|
+
## 2.0.0-beta.9
|
|
39
|
+
|
|
40
|
+
### Minor Changes
|
|
41
|
+
|
|
42
|
+
- ac6c1eb: A runner asks the application for the token of NocoBase's private npm registry (`https://pkg-v3.nocobase.com/`) only when an install of a run needs it: when the repository's committed `.npmrc` points a scope or the registry at it, or after an `@nocobase/*` package was not found on the default registry, which it then retries once with the private registry. The token goes into a run-private npm configuration for that one command and is redacted from what the run reports. The machine's own npm and pnpm settings stay in effect except those pointing at the private registry, so a project that needs no private package never reaches it. Protocol version 16 adds the `npmCredentials` feature and `RUNNER_ROUTES.npmCredential`; applications register where the token comes from with `npmCredentialProviders`. Update the application before the runners.
|
|
43
|
+
- d4d7b07: A person can choose which kind of runner their runs go to first: their own personal runners or the runners shared with the team (`runnerPreference` in the chat preferences, `auto` by default). A run keeps the choice its actor had when it was queued; runners of the other kind wait one more second before taking it, so they still take it when none of the preferred kind can. Claims read nothing more.
|
|
44
|
+
|
|
45
|
+
### Patch Changes
|
|
46
|
+
|
|
47
|
+
- a2dc459: Expose whether the current run starts an independent tool session so reviewers can verify their session before reviewing.
|
|
48
|
+
- Updated dependencies [a2dc459]
|
|
49
|
+
- Updated dependencies [2d18eb2]
|
|
50
|
+
- Updated dependencies [6a51d28]
|
|
51
|
+
- Updated dependencies [ac6c1eb]
|
|
52
|
+
- Updated dependencies [3642d82]
|
|
53
|
+
- @nocobase/agent-protocol@0.1.0-beta.18
|
|
54
|
+
- @nocobase/db@1.0.0-beta.27
|
|
55
|
+
- @nocobase/app-server@5.0.0-beta.3
|
|
56
|
+
- @nocobase/app-cli@1.0.0-beta.33
|
|
57
|
+
- @nocobase/app-cli-client@0.1.0-beta.20
|
|
58
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.20
|
|
59
|
+
- @nocobase/app-plugin-file@1.0.0-beta.30
|
|
60
|
+
|
|
61
|
+
## 2.0.0-beta.8
|
|
62
|
+
|
|
63
|
+
### Patch Changes
|
|
64
|
+
|
|
65
|
+
- 8be5180: Reduce mobile page padding consistently across application templates and plugin pages while preserving tablet and desktop spacing.
|
|
66
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.20
|
|
67
|
+
- @nocobase/app-plugin-authorization@1.0.0-beta.37
|
|
68
|
+
- @nocobase/app-plugin-file@1.0.0-beta.30
|
|
69
|
+
|
|
70
|
+
## 2.0.0-beta.7
|
|
71
|
+
|
|
72
|
+
### Minor Changes
|
|
73
|
+
|
|
74
|
+
- c635b6c: Preserve quota-limited work on its original Runner and resume its original tool session after quota resets. Support strict session restoration without automatic fallback to a new session, and let an explicit replacement run take over preserved work exactly once (`replacesRunId`).
|
|
75
|
+
- 764fc1b: Share queued runs between runners in proportion to each runner's limit for the run's coding tool. A runner's claim now takes at most one run per request, and none when it takes jobs, so jobs are handed out at once. A run is handed out up to one second after it entered the queue, later the more of that tool the runner already runs against its limit, so idler runners take the next run first and a runner busy with one tool still takes another tool's runs at once. A claim that ends while it waits takes nothing. Runners need no update.
|
|
76
|
+
- a2a6385: Add Russian (ru-RU) and Korean (ko-KR) to the plugins Studio uses, and correct terminology in their existing translations: an issue is a task (it was translated as a magazine issue or a problem in several languages), a runtime is an execution environment, Agent and My Agent stay consistent, and an issue's executor and the backlog status read correctly. The remaining English strings in the agents plugin's translations are translated. Calendars follow Russian and Korean, and a browser asking for Traditional Chinese (zh-HK, zh-Hant-TW) now lands on zh-TW instead of zh-CN.
|
|
77
|
+
|
|
78
|
+
### Patch Changes
|
|
79
|
+
|
|
80
|
+
- f37a169: Expose a single composer notice priority and clarify how to continue after an incompatible runtime refuses a message.
|
|
81
|
+
- bf9857b: Clear a conversation's interrupted-stream state once it is idle and its history has caught up, including when a newer conversation read supersedes an explicit refresh.
|
|
82
|
+
- 8c9cdae: Let runtime owners and administrators clear quota marks that have a known reset time, and lift a mark (and its notice) when the same window later reports quota left.
|
|
83
|
+
- f37a169: Add `ChatSubmissions.restore()` so an application can put back a message an existing conversation refused before writing it, for example after a page reload, without sending it again.
|
|
84
|
+
- 3eff32d: Add `GET /api/agents/runAgents`, which lists the agents with a run on one subject (removed and archived ones included, within the caller's run visibility), so a run history's agent filter offers only those agents.
|
|
85
|
+
- 10aabd6: Start a fresh session when a runner agent switches between read-only and writable work, while preserving existing writable sessions.
|
|
86
|
+
- faa534f: Allow applications to place fixed instructions before changing run details in independent-session prompts while retaining ordinary session reuse.
|
|
87
|
+
- 4649c90: Keep temporary repository access failures queued with bounded backoff and structured diagnostics, independently of ordinary preparation failures, and retain actionable authorization refusals from running jobs.
|
|
88
|
+
- Updated dependencies [7508a76]
|
|
89
|
+
- Updated dependencies [fb4659d]
|
|
90
|
+
- Updated dependencies [c635b6c]
|
|
91
|
+
- Updated dependencies [6fbf389]
|
|
92
|
+
- Updated dependencies [1cda4c3]
|
|
93
|
+
- Updated dependencies [7d970d6]
|
|
94
|
+
- Updated dependencies [bb1dff2]
|
|
95
|
+
- Updated dependencies [a2a6385]
|
|
96
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.20
|
|
97
|
+
- @nocobase/app-server@5.0.0-beta.2
|
|
98
|
+
- @nocobase/agent-protocol@0.1.0-beta.17
|
|
99
|
+
- @nocobase/app-plugin-authorization@1.0.0-beta.37
|
|
100
|
+
- @nocobase/db@1.0.0-beta.26
|
|
101
|
+
- @nocobase/app-plugin-file@1.0.0-beta.30
|
|
102
|
+
- @nocobase/i18n@2.0.0-beta.2
|
|
103
|
+
- @nocobase/app-cli-client@0.1.0-beta.19
|
|
104
|
+
- @nocobase/app-client@4.0.0-beta.9
|
|
105
|
+
|
|
106
|
+
## 2.0.0-beta.6
|
|
107
|
+
|
|
108
|
+
### Minor Changes
|
|
109
|
+
|
|
110
|
+
- 1f98579: Add named-user read-only conversation snapshots with completed-turn cutoffs, attachment authorization, revocation and application-defined recipient scopes. Include multi-recipient share management with per-recipient retries and historical views in the chat recipes and the example application.
|
|
111
|
+
|
|
112
|
+
### Patch Changes
|
|
113
|
+
|
|
114
|
+
- 7c25f88: Bind plugin peers to the shared client runtime version at release time and keep generated application session and draft-protection tests aligned with permission rechecks.
|
|
115
|
+
- d43fc18: Format shared conversation cutoffs in the application language and show the actual agent name in snapshot replies, with a deleted-agent fallback.
|
|
116
|
+
- 7c25f88: Preserve unsaved forms during permission rechecks by blocking departures and invalidating pending closes until authorization settles. Conceal disconnected confirmation portals and keep Projects rich-text editor effects safe when hidden content reconnects.
|
|
117
|
+
- 7c25f88: Share the route container contexts through `@nocobase/app-client/route-containers` so plugin dialogs, drawers and child pages open in the container the application shows while they load, keep a hosted child page's layout classes, and declare presentations for the remaining Examples and plugin overlays.
|
|
118
|
+
- Updated dependencies [4f0370e]
|
|
119
|
+
- Updated dependencies [7c25f88]
|
|
120
|
+
- Updated dependencies [7c25f88]
|
|
121
|
+
- Updated dependencies [7c25f88]
|
|
122
|
+
- Updated dependencies [215795d]
|
|
123
|
+
- @nocobase/acp-bridge@1.0.0-beta.6
|
|
124
|
+
- @nocobase/app-client@4.0.0-beta.9
|
|
125
|
+
- @nocobase/app-cli@1.0.0-beta.32
|
|
126
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.19
|
|
127
|
+
- @nocobase/app-plugin-file@1.0.0-beta.29
|
|
128
|
+
|
|
129
|
+
## 2.0.0-beta.5
|
|
130
|
+
|
|
131
|
+
### Patch Changes
|
|
132
|
+
|
|
133
|
+
- ef04803: Let host applications require fresh tool sessions and read bounded summaries of recent terminal runs for handoff context.
|
|
134
|
+
|
|
135
|
+
## 2.0.0-beta.4
|
|
136
|
+
|
|
137
|
+
### Minor Changes
|
|
138
|
+
|
|
139
|
+
- bfddb40: Add DeepSeek Harness as an ACP coding tool, with runner API-key detection, its CLI version, and full-access permissions.
|
|
140
|
+
|
|
141
|
+
### Patch Changes
|
|
142
|
+
|
|
143
|
+
- c627337: Refresh archived conversation lists after archiving, restoring, or undoing an archive.
|
|
144
|
+
- 49daa11: Restart running background agent connections after installing a new CLI version.
|
|
145
|
+
- 7fe7292: Rebalance the column widths of the runtime drawer's overview, workspaces and runs tables: short columns fit their content and the tool quota, directory and issue columns take the remaining width.
|
|
146
|
+
- Updated dependencies [49daa11]
|
|
147
|
+
- Updated dependencies [bfddb40]
|
|
148
|
+
- Updated dependencies [78bdca8]
|
|
149
|
+
- Updated dependencies [9998ac4]
|
|
150
|
+
- Updated dependencies [87f1ea5]
|
|
151
|
+
- Updated dependencies [6507d01]
|
|
152
|
+
- @nocobase/app-cli-client@0.1.0-beta.18
|
|
153
|
+
- @nocobase/acp-bridge@1.0.0-beta.5
|
|
154
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.19
|
|
155
|
+
- @nocobase/app-plugin-authorization@1.0.0-beta.36
|
|
156
|
+
- @nocobase/app-client@4.0.0-beta.8
|
|
157
|
+
- @nocobase/app-server@5.0.0-beta.1
|
|
158
|
+
- @nocobase/app-cli@1.0.0-beta.32
|
|
159
|
+
- @nocobase/app-plugin-file@1.0.0-beta.29
|
|
160
|
+
|
|
161
|
+
## 2.0.0-beta.3
|
|
162
|
+
|
|
163
|
+
### Patch Changes
|
|
164
|
+
|
|
165
|
+
- 1f0b3ba: Include structured wait reasons in queued Runner conversation details and allow withdrawing an unclaimed initial turn before choosing another Agent.
|
|
166
|
+
- 9933a9a: Allow applications to define issued-credential admission consistently with their command policies. Support run-authenticated project creation, activity and label reads, issue uploads and project resources. Restrict comment edits and deletions to the authenticated originating run, and accept run credentials when reading a release.
|
|
167
|
+
|
|
168
|
+
Apply the same trusted application admission to knowledge and owner-checked conversation routes without bypassing their business permissions or ownership checks.
|
|
169
|
+
|
|
170
|
+
Check issue visibility before collecting plan rehearsal baselines so a refused row cannot disclose hidden issue fields or dependency identifiers.
|
|
171
|
+
|
|
172
|
+
- cf23bfe: **Breaking:** Remove the deprecated `@nocobase/app-server/mailer` entry and its `Mailer`, `mailerToken`, `createMailer`, `MailerProvider`, and notification configuration exports. Replace `MailExecutions.close(waitMs)` and `drain()` with `stop()` and `wait()`; transport `close()` now cancels supported network work and waits for its original completion without a nested timeout. Application owners must apply the outer shutdown budget. Create exclusive senders with `@nocobase/app-server/mailers` and declare notification config with `@nocobase/app-plugin-notification-providers/config`. Existing inline SMTP/Resend YAML, environment mappings, and provider/channel APIs remain supported.
|
|
173
|
+
|
|
174
|
+
Default and Examples now show `mailers.default: system` and explicitly map `MAILERS_SYSTEM_*`; the example configuration remains empty at runtime. The previous `MAILERS_TRANSACTIONAL_*` sample prefix was not published. Applications may still choose any valid mailer name and custom environment prefix.
|
|
175
|
+
|
|
176
|
+
- Updated dependencies [6cc8acf]
|
|
177
|
+
- Updated dependencies [9933a9a]
|
|
178
|
+
- Updated dependencies [1e018f1]
|
|
179
|
+
- Updated dependencies [cf23bfe]
|
|
180
|
+
- Updated dependencies [4411984]
|
|
181
|
+
- @nocobase/app-client@4.0.0-beta.7
|
|
182
|
+
- @nocobase/app-plugin-authentication@2.0.0-beta.18
|
|
183
|
+
- @nocobase/db@1.0.0-beta.25
|
|
184
|
+
- @nocobase/app-server@5.0.0-beta.0
|
|
185
|
+
- @nocobase/app-cli@1.0.0-beta.32
|
|
186
|
+
- @nocobase/app-plugin-authorization@1.0.0-beta.35
|
|
187
|
+
- @nocobase/app-plugin-file@1.0.0-beta.29
|
|
188
|
+
|
|
189
|
+
## 2.0.0-beta.2
|
|
190
|
+
|
|
191
|
+
### Patch Changes
|
|
192
|
+
|
|
193
|
+
- a54cf2c: Expose the optional target update time in conversation links so applications can order linked work without fetching each record.
|
|
194
|
+
- 09646a9: Continue queued Runner conversation messages in the next turn after a user stops the current turn, keeping the original messages and excluding received or withdrawn inputs.
|
|
195
|
+
|
|
196
|
+
Preserve saved input revisions across stream recovery without allowing older assistant snapshots to overwrite replayed output.
|
|
197
|
+
|
|
198
|
+
- f206179: Explain quota-blocked queued runs and model diagnostics with `toolQuota` and the earliest known reset time, reusing existing quota marks without changing scheduling or retries.
|
|
199
|
+
|
|
3
200
|
## 2.0.0-beta.1
|
|
4
201
|
|
|
5
202
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -12,6 +12,10 @@ Runner agents are enabled or disabled. The available-model list is computed live
|
|
|
12
12
|
|
|
13
13
|
The plugin knows no domain of its own beyond conversations: what agents work on (subjects), the scopes variables are kept in, the business actions an agent may be given and those every discovered agent gets, and the report pages are the application's, which contributes them through the extension points below; the CLI's business commands are the application's own routes, each described with `cliRoute()`. The assembling application does it in `server/agents` and `client/agents`. With nothing contributed, the plugin still runs agents in conversations on runners, with its own commands.
|
|
14
14
|
|
|
15
|
+
## Read-only conversation sharing
|
|
16
|
+
|
|
17
|
+
Owners can share a snapshot with named application users, advance it by sharing again, and revoke access. Recipients only read completed history and its attachments through the saved cutoff; they receive no live streams, usage or write access. The plugin owns the permission table and checks, while applications supply a directory or candidate scope. See [conversation snapshots](docs/conversation-sharing.md) for storage, endpoint permissions, UI Library integration and cost.
|
|
18
|
+
|
|
15
19
|
## What it does
|
|
16
20
|
|
|
17
21
|
Registering the same runner name and hostname again revokes every active prior registration and its keys for the token's owner, leaving other owners' runners untouched. Registration uses the existing transaction without a dedicated lock or additional table. Simultaneous registrations may leave multiple active records until the next registration cleans them up. Existing tasks continue through the usual sweep and retry rules.
|
|
@@ -28,7 +32,7 @@ Repository access providers that mint credentials in `prepare` implement the ide
|
|
|
28
32
|
|
|
29
33
|
- **Runs** (`agRuns`): one agent working on one subject, keyed by (agent, subject, thread) (`agentType` is `runner`; `online` only on runs earlier versions kept). New work joins the run already on it as the same person (`actorUserId`) while that run can still be told, else that person's queued one, else starts a new run: work woken by different people never shares a run, so it neither borrows another's identity nor waits for a runner that will not take it. Runs of one key are still claimed one at a time, whoever they work as. Queued runs are claimed by `priority` (lower first; 0 by default), then oldest first; a run given a `fireAt` is not claimed before that moment. Work merged into a queued run raises it to the more urgent priority and the earlier moment of the two. A claim hands a run to a runner that fits in one transaction: the agent's tool enabled, installed and signed in there with its model among those the runner reports for the tool and not marked unavailable there (`runsEntry` in `shared/runners.ts`; recorded on the run as `tool` and `model` and passed to the tool; a model the tool's account cannot use fails the run `modelUnavailable` and marks that tool and model unavailable on the runner, `Runner.unavailableModels`, until it reports the tool's models differently), the runner shared with all users or owned by the person who woke the agent, its features covering what the run needs (worked out from the payload: checkouts, directories, skills, secrets), a shared runner when one of the variables the run gets is for shared runners only (`teamRunnersOnly`), and a free slot within the agent's concurrency. The variables are checked and opened in the claim's transaction, so the runner receives what was checked; a personal runner left out for them notes on the run which variables asked for a shared runner (`teamOnlyVariables`, cleared when the run is taken, requeued or given new input), and its wait is `secretsNotAllowed` with those variables. Before a run exists, `eligibility` (`runnersFor`, `canClaim`, `mayQueue`, `teamOnly`) answers by the same rules whether a runner would take an agent's work done as a person, with the scopes and features the caller names; `availability` and `GET /api/agents/available` use it for the caller. A working directory that is a directory on one runner pins the run to that runner, one run at a time per directory. The claim renders the brief (kept per run, `agRunBriefs`), mints a run token, and hands over the working directories, the merged variables, the skills and the CLI to install. Events, usage and branches are recorded as the runner reports them; completing requires every input to be handled. A failed attempt is tried again after 30 seconds (`agents.runs.retryBaseDelayMs`), doubling up to ten minutes, except when the runner went away or lost its lease, which retries at once. A runner that finds the subject's working directory held by another live run reports `workspaceBusy`: the run goes back to the queue, freeing its slot, and is tried again after 30 seconds, doubling up to two minutes; these waits do not count against the agent's attempts, and the run fails `workspaceBusy` only once it has waited six hours (`WORKSPACE_WAIT_LIMIT_MS`).
|
|
30
34
|
- **Run requests** (`agRunRequests`): work someone asked of an agent on a subject another person answers for, waiting for that person to confirm it (see "Work someone else causes" below).
|
|
31
|
-
- **Workload** (`runs.workload({ subjectKind, limit? })`, `shared/runs.ts`): the open runs on one kind of subject for a board of work, without claiming anything. Held runs come with their runner, the newest input's trigger and their newest text, tool call, status or error (`lastActivity`); queued runs with their place in the claim order (among the runs claimable now, and among the agent's) and why they wait, by the claim's own rules in its order (`RUN_WAIT_REASONS`: the agent not enabled, `agentArchived`, delayed until a moment, no runner online, the agent's named runners offline, its tool not signed in anywhere, only other people's personal runners, missing features, only personal runners whose owner may not receive the run's variables, the same work already held, the agent's concurrency full, every fitting runner busy, preparation retrying, or next). A wait is a code and the values its words need (`params`), never text: the client words it with `formatRunWait(t, wait)` from `client/runs.ts`, in this plugin's namespace (`runWait.reasons.<reason>`), which an application may override in its locale file or replace with its own formatter. It also answers each agent's load (held, queued, its limit, whether a runner could take its work) and the runners' (online, holding work, slots and slots used). It reads a bounded number of tables, never one query per subject; the caller decides what of it a person may see.
|
|
35
|
+
- **Workload** (`runs.workload({ subjectKind, limit? })`, `shared/runs.ts`): the open runs on one kind of subject for a board of work, without claiming anything. Held runs come with their runner, the newest input's trigger and their newest text, tool call, status or error (`lastActivity`); queued runs with their place in the claim order (among the runs claimable now, and among the agent's) and why they wait, by the claim's own rules in its order (`RUN_WAIT_REASONS`: the agent not enabled, `agentArchived`, delayed until a moment, no runner online, the agent's named runners offline, its tool quota exhausted (`toolQuota`, with the earliest known reset in `until` and `params.until`, or null/absent when unknown), its tool not signed in anywhere, only other people's personal runners, missing features, only personal runners whose owner may not receive the run's variables, the same work already held, the agent's concurrency full, every fitting runner busy, preparation retrying, or next). A wait is a code and the values its words need (`params`), never text: the client words it with `formatRunWait(t, wait)` from `client/runs.ts`, in this plugin's namespace (`runWait.reasons.<reason>`), which an application may override in its locale file or replace with its own formatter. It also answers each agent's load (held, queued, its limit, whether a runner could take its work) and the runners' (online, holding work, slots and slots used). It reads a bounded number of tables, never one query per subject; the caller decides what of it a person may see.
|
|
32
36
|
- **Redaction**: what runners report is stored redacted. The runner redacts first; the server redacts every run event (content, output, input and meta), summary and failure detail, and every job event and failure detail again before storing them, with the protocol's redactor (`createRedactor` of `@nocobase/agent-protocol`): the secrets the claim handed out (a run's variables and token, a job's opened variables, repository token and upload headers, remembered in memory for recent claims) and the common secret patterns, each replaced with `[REDACTED]` (`server/kernel/redaction.ts`). After a restart, or on another instance, the patterns and the runner's own redaction still apply.
|
|
33
37
|
- **The sweep** (`server/runners/sweeper.ts`, the `RunnersSweep` schedule every 30 seconds, or `agents.runners.sweepIntervalMs`, on the application's jobs service, or an in-process timer without one) marks runners not heard from for 150 s offline, takes jobs back from silent runners and fails jobs far past their timeout, and takes runs back from runners that went away, lost their lease or never started, fails runs idle for twice their idle timeout, records unacknowledged cancellations, cancels queued runs of archived agents, and fails a queued run that waited longer than its subject allows (`queuedExpiryMs` on the subject's binding, counted from the run's last change or from its `fireAt`) as `queuedExpired`.
|
|
34
38
|
- **Variables** (`agSecrets`): environment variables for the agent's process, every one a secret sealed with the application's secrets service (`secrets.keys`) and bound to its scope and name, set on an agent, a working directory (`workdir`) or a scope the application registers, merged for a run in the order the subject names its scopes < its working directories < the agent, delivered only to runners with the `secrets` feature: to whichever runner takes the run, a personal runner of anyone who may use the agent included, since sharing an agent shares the tokens it works with. A variable marked `teamRunnersOnly` (off by default; `PUT /api/agents/variables/...` with `teamRunnersOnly`, and without `value` to change only that) keeps runs and jobs that get it on shared runners. Jobs check the exact variables referenced by their prepared spec, including repository credentials, before opening any value in the claim transaction; a personal runner skips such a job without counting a preparation failure, leaving it queued for a shared runner and continuing to other jobs. Values are write-only; reading them back and every delivery are audited (`agSecretAudits`).
|
|
@@ -336,7 +340,9 @@ Dependent projections can use `useConversation(id, { passive: true })` to observ
|
|
|
336
340
|
|
|
337
341
|
`ChatProvider` owns realtime refreshes across mounted surfaces. Message announcements use their durable `lastSeq` cursor and share the controller's in-flight `after` read; only an uncovered cursor gap needs another page. Revision announcements reread the affected message. State changes refresh the affected detail and its dependent queries, while archived lists wait until opened (`useConversationList(query, enabled)`). Read receipts update cached list positions without another list request. The existing five-second running fallback remains; acknowledged reconnects reconcile the loaded history window, including revisions and removed messages, before resuming a stream.
|
|
338
342
|
|
|
339
|
-
|
|
343
|
+
The existing conversation detail response includes optional `wait: RunWait | null`. It diagnoses only the latest queued, unclaimed Runner turn; idle, held and completed conversations and history lists add no reads. A conversation's runner binding restricts the usual queue facts to that runner, including its slot load, offline state and tool quota. The read uses the existing queue explanation without claim-time context assembly. It adds no polling, notifications or timers, and does not change claiming. Clients word it with `formatRunWait`, offer continued waiting without a write, or withdraw the unclaimed turn before explicitly selecting another Agent and releasing the runner binding. Project clients explain that unpushed changes stay on the original runner.
|
|
344
|
+
|
|
345
|
+
A Runner conversation takes a message while its agent works: `POST /api/agents/conversations/{conversationId}/queue` (`OnlineAgent.queue`) joins it to the run at work, steered into the running turn where the coding tool can take it, else taken as the next turn; `POST …/messages/{messageId}/withdraw` takes it back until a runner has it, including an initial queued turn (ended through the existing guarded run withdrawal, before locking the conversation). Withdrawn attachments may be reused only in the same owned conversation. A claimed initial turn is kept (`400 CONVERSATION_CONFLICT`, `messageTaken`, after). Delivery and withdrawal are conditional updates of the input row on an empty `deliveredAt` and `handledAt`, so a message is never both withdrawn and delivered. `POST …/markSeen { seq }` moves the owner's read position, `GET /api/agents/conversationAttention` answers the badge counts, and `GET …/usage` sums tokens, cost and the latest context window over the conversation's runs.
|
|
340
346
|
|
|
341
347
|
A run can ask its conversation owner with `conversation ask-owner "Proceed with the plan?" --issue PM-721`. The optional `issue` identifier is saved with the question and its server timestamp in conversation metadata. Without it, behavior is unchanged. Applications can call `conversations.settleOwnerQuestion(id, issue, resumedAt)` with the actual task transition timestamp to settle only a matching earlier question; it emits `conversation.changed` without changing read positions, unread replies or waking a run. The application owns task visibility, links and resumption rules.
|
|
342
348
|
|
|
@@ -348,13 +354,17 @@ Set `agents.conversations.archivedRetentionDays` to a non-negative integer (defa
|
|
|
348
354
|
|
|
349
355
|
## Runtime quotas and detail tabs
|
|
350
356
|
|
|
351
|
-
|
|
357
|
+
Claude reports merge the optional `unifiedWindows` snapshot with the top-level rate-limit event, retaining independent five-hour, weekly and applicable model windows. Missing top-level fields do not erase the snapshot. These are passive observations from actual model calls, not periodic account queries.
|
|
358
|
+
|
|
359
|
+
Runtime owners and authorized runtime managers can set `quotaLimits` through the runtime settings or PATCH API: a map of coding tool to an integer percentage from 1 to 100. An omitted tool has no ceiling; null removes all ceilings. New work waits when an applicable last-reported window reaches the ceiling. Running work continues, model/provider windows affect only their targets, and existing queue deadlines remain unchanged. Raising or removing the ceiling, a newer reading below it, or the known reset restores eligibility. A window with no reset waits for a new observation or a settings change. The ceiling uses reported usage and cannot prevent concurrent work already admitted from spending beyond it; unknown usage does not block work. Settings and quota reports share revision checks.
|
|
360
|
+
|
|
361
|
+
Runtime quota marks share `unavailableModels` with model availability marks and use internal `quotaRevision` conditional writes. A mark lifts by itself at a known reset time, or when the same tool, scope, target and window is later reported with quota left (`exhausted: false`), which also settles its `runner_quota` notice; other windows' marks stay. That needs a run to report, so a mark on a runtime's whole tool lasts until its reset or until the owner or a runtime administrator clears it. They may clear any selected mark, known reset or not, after confirming the quota is restored; the next exhausted report marks it again and notifies once more. Nothing probes quota actively. Expiry and clearing never revive terminal runs or extend queue deadlines.
|
|
352
362
|
|
|
353
|
-
Usage snapshots are saved when
|
|
363
|
+
Usage snapshots are saved when the reported percentage or window state changes. Mark changes and observations for a tool with a configured usage ceiling broadcast `runner.changed`. Quota reports use the existing events/fail transaction; ordinary heartbeats and claims add no queries, writes or locks. Final failures read only accepted quota-event metadata for deduplication, retaining the complete failure snapshot. New event sequences and new runs can mark exhaustion again.
|
|
354
364
|
|
|
355
365
|
The runtime list omits model catalogs, policy, variables, quota details and load; `takes` contains at most three entries with `takesCount`. Runtime get returns Overview and workspace totals without directory rows. Its recent-run count uses a bounded ten-row read. Workspace sizes and category counts reuse the directory snapshot already read. `GET /agents/runners/:runnerId/workspaces` accepts `status`, `page` and `pageSize` and returns directory rows in `data`, with totals and paging in `meta`. Recent runs load from `/runs` only when that tab opens.
|
|
356
366
|
|
|
357
|
-
`POST /agents/runners/:runnerId/quota/clear` takes structured `tool`, `scope`, `target` and `window` fields, without a client revision. The server rereads state transactionally and removes only that target, idempotently. A
|
|
367
|
+
`POST /agents/runners/:runnerId/quota/clear` takes structured `tool`, `scope`, `target` and `window` fields, without a client revision. The server rereads state transactionally and removes only that target, idempotently. A concurrent conditional-write race returns `409 REVISION_CONFLICT`. Only revision races are retryable. Clear checks ownership or `agents.runners/manage` independently of edit permission. Owner notices include the triggering run and issue identifiers; `notice.cleared` names the selected quota key so applications settle only that notice group.
|
|
358
368
|
|
|
359
369
|
Applications can call `useAgentOption(id)` from the client kit for a system executor's viewer-scoped availability, rather than listing only discovered runner agents. The shared cache refreshes at quota reset or runtime changes.
|
|
360
370
|
|
|
@@ -385,3 +395,13 @@ The runtime status cell displays reported capacity, a pending-sync notice when o
|
|
|
385
395
|
`POST /api/agents/conversations/{conversationId}/switchAgent { agentId }` changes an idle Runner conversation to another enabled, callable Runner Agent. Its history and links stay; the next message starts a fresh tool session. Pending, running and finalizing work must finish first. Switching does not cancel a run or send a message.
|
|
386
396
|
|
|
387
397
|
To defer a selection until a message is accepted, pass optional `agentId` alongside the current SDK user `message` to `POST /api/agents/conversations/{conversationId}/messages`. Only idle, unarchived Runner conversations can change agents this way. Admission validates the target and commits the new binding, fresh thread, one switch notice, message and target run in the existing transaction. Selecting the current agent adds no notice; omitting the field preserves existing behavior. Rejection rolls everything back. A later execution failure keeps the accepted switch; an interrupted response must be reconciled through history, never automatically resent. Queued input and native conversations do not accept this field.
|
|
398
|
+
|
|
399
|
+
Quota diagnostics (`claims.selectionWait` / `claims.diagnose`) use `toolQuota` for an otherwise fitting tool/model blocked by existing quota marks. Each model entry optionally carries `until`: the earliest known reset across its eligible runners, after all exhausted windows on that runner reset. An unknown reset is null. Non-quota tool failures keep `toolUnavailable`; another usable candidate keeps its existing diagnosis. These explanations do not change dispatch, retries or stored quota marks.
|
|
400
|
+
|
|
401
|
+
# Host session policy and handoff history
|
|
402
|
+
|
|
403
|
+
An application's subject binding may set `sessionPolicy: (claim) => 'fresh'` for agents that must start independently on every run. With the callback absent, ordinary fingerprint, reset and poisoned-session checks still control reuse. Explicit `freshSession` requests continue to isolate new work from an active session and survive retries.
|
|
404
|
+
|
|
405
|
+
A subject assembly can opt into `briefLayout: 'stable-prefix'` for independently started runs. This changes only outgoing prompt text: owner preferences (with the same lower priority), platform rules and the skill index precede subject-specific guidance and environment checks; runner workspace and initialization placeholders, the task and the context follow. The stored logical layers remain in their original representation so session fingerprints and ordinary follow-up reuse stay unchanged; the stored `prompt` is the actual outgoing order. Custom `system` overrides keep their own layout. Previews separate the owner's instructions for display regardless of their execution position. This rendering option adds no database reads, writes, locks or model calls.
|
|
406
|
+
|
|
407
|
+
Use `agents.runs.recentSummaries(conn, { agentId, subjectKind, subjectId }, exceptRunId)` during assembly to read at most five terminal runs, newest first. Each summary contains at most 400 Unicode characters, with its status and completion time; missing summaries stay null. Identical reads share one query within the transaction. Put handoff notes in `turn.fresh` to keep them outside the reusable brief fingerprint. No model or external service is called.
|
|
@@ -7,11 +7,16 @@ import { DefaultChatTransport } from 'ai';
|
|
|
7
7
|
import type { AppUIMessage } from '../../shared/online-agent.js';
|
|
8
8
|
import type { UIMessagePage } from './message-model.js';
|
|
9
9
|
import { type ApiClient } from '@nocobase/app-client';
|
|
10
|
-
import { type ChatAgent, type OnlineChatConfigSnapshot, type ChatPreferences, type ChatPreferencesPatch, type ChatSettings, type ChatSettingsPatch, type ConversationDetail, type ConversationListQuery, type ConversationPage, type ConversationPatch, type CreateConversationRequest, type MessageAttachment, type MessageListQuery, type ConversationUsage, type PageContext } from '../../shared/conversations.js';
|
|
10
|
+
import { type ChatAgent, type ConversationShare, type ConversationLink, type ConversationShareCandidate, type OnlineChatConfigSnapshot, type ChatPreferences, type ChatPreferencesPatch, type ChatSettings, type ChatSettingsPatch, type ConversationDetail, type ConversationListQuery, type ConversationPage, type ConversationPatch, type CreateConversationRequest, type MessageAttachment, type MessageListQuery, type ConversationUsage, type PageContext } from '../../shared/conversations.js';
|
|
11
11
|
import type { ModelService } from '../../shared/models.js';
|
|
12
12
|
export declare class ChatApi {
|
|
13
13
|
private readonly api;
|
|
14
14
|
constructor(api: ApiClient);
|
|
15
|
+
conversationLinks(id: string): Promise<ConversationLink[]>;
|
|
16
|
+
shareCandidates(id: string): Promise<ConversationShareCandidate[]>;
|
|
17
|
+
shares(id: string): Promise<ConversationShare[]>;
|
|
18
|
+
share(id: string, userId: string): Promise<ConversationShare>;
|
|
19
|
+
revokeShare(id: string, userId: string): Promise<void>;
|
|
15
20
|
configuration(id: string, signal?: AbortSignal): Promise<OnlineChatConfigSnapshot>;
|
|
16
21
|
configure(id: string, config: NonNullable<CreateConversationRequest['config']>, selectedModel?: CreateConversationRequest['selectedModel']): Promise<OnlineChatConfigSnapshot>;
|
|
17
22
|
/** Use the host's authenticated HTTP boundary; framing, parsing and replay remain the SDK's. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../client/chat/api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../client/chat/api.ts"],"names":[],"mappings":"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"}
|
package/dist/client/chat/api.js
CHANGED
|
@@ -12,6 +12,24 @@ export class ChatApi {
|
|
|
12
12
|
constructor(api) {
|
|
13
13
|
this.api = api;
|
|
14
14
|
}
|
|
15
|
+
conversationLinks(id) {
|
|
16
|
+
return this.get(`${chatPath('conversation', id)}/links`);
|
|
17
|
+
}
|
|
18
|
+
async shareCandidates(id) {
|
|
19
|
+
return this.get(`${chatPath('conversation', id)}/shareCandidates`);
|
|
20
|
+
}
|
|
21
|
+
async shares(id) {
|
|
22
|
+
return this.get(`${chatPath('conversation', id)}/shares`);
|
|
23
|
+
}
|
|
24
|
+
share(id, userId) {
|
|
25
|
+
return this.send(`${chatPath('conversation', id)}/shares/${encodeURIComponent(userId)}`, 'PUT');
|
|
26
|
+
}
|
|
27
|
+
revokeShare(id, userId) {
|
|
28
|
+
return this.api.request({
|
|
29
|
+
path: `${chatPath('conversation', id)}/shares/${encodeURIComponent(userId)}`,
|
|
30
|
+
method: 'DELETE',
|
|
31
|
+
});
|
|
32
|
+
}
|
|
15
33
|
configuration(id, signal) {
|
|
16
34
|
return this.get(chatPath('config', id), undefined, signal);
|
|
17
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../client/chat/api.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,IAAI,CAAC;AAMrE,OAAO,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAC;AAEtE,OAAO,EACL,QAAQ,
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../../client/chat/api.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,IAAI,CAAC;AAMrE,OAAO,EAAE,cAAc,EAAkB,MAAM,sBAAsB,CAAC;AAEtE,OAAO,EACL,QAAQ,GAoBT,MAAM,+BAA+B,CAAC;AAMvC,SAAS,OAAO,CAAC,KAAc;IAC7B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAClE,CAAC;AAED,SAAS,KAAK,CAAC,KAAY;IACzB,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAC1B,CAAC,KAAK,EAAgD,EAAE,CACtD,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,CAC5C,CACF,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,OAAO;IACD,GAAG,CAAY;IAEhC,YAAmB,GAAc;QAC/B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAEM,iBAAiB,CAAC,EAAU;QACjC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC;IAEM,KAAK,CAAC,eAAe,CAC1B,EAAU;QAEV,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC;IACrE,CAAC;IACM,KAAK,CAAC,MAAM,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;IAC5D,CAAC;IACM,KAAK,CAAC,EAAU,EAAE,MAAc;QACrC,OAAO,IAAI,CAAC,IAAI,CACd,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,WAAW,kBAAkB,CAAC,MAAM,CAAC,EAAE,EACtE,KAAK,CACN,CAAC;IACJ,CAAC;IACM,WAAW,CAAC,EAAU,EAAE,MAAc;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACtB,IAAI,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,WAAW,kBAAkB,CAAC,MAAM,CAAC,EAAE;YAC5E,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAEM,aAAa,CAClB,EAAU,EACV,MAAoB;QAEpB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IACM,SAAS,CACd,EAAU,EACV,MAAwD,EACxD,aAA0D;QAE1D,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE;YAChD,MAAM;YACN,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IACD,gGAAgG;IACzF,SAAS,CACd,EAAU,EACV,QAAoC,EACpC,MAA6D,EAC7D,YAAiD;QAEjD,OAAO,IAAI,oBAAoB,CAAe;YAC5C,GAAG,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC;YAC7B,0BAA0B,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;gBACjD,IAAI,IAAI,EAAE,WAAW;oBACnB,OAAO;wBACL,GAAG,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,SAAS;wBAC7C,IAAI,EAAE,IAAI,CAAC,WAAuC;qBACnD,CAAC;gBACJ,IAAI,IAAI,EAAE,aAAa;oBACrB,OAAO;wBACL,GAAG,EAAE,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,WAAW;wBAC/C,IAAI,EAAE,IAAI,CAAC,aAAuC;qBACnD,CAAC;gBACJ,MAAM,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;gBACjC,OAAO;oBACL,IAAI,EAAE;wBACJ,GAAG,IAAI;wBACP,OAAO,EAAE;4BACP,EAAE,EAAE,OAAO,CAAC,EAAE;4BACd,IAAI,EAAE,MAAM;4BACZ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;yBAC5D;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,+BAA+B,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;YACxE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;gBAC3B,MAAM,SAAS,GAAG,IAAI,EAAE,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;gBACxE,IAAI,CAAC;oBACH,MAAM,IAAI,GACR,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ;wBAC5B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAA6B;wBACpD,CAAC,CAAC,SAAS,CAAC;oBAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;wBACnC,IAAI,EACF,OAAO,KAAK,KAAK,QAAQ;4BACvB,CAAC,CAAC,KAAK;4BACP,CAAC,CAAC,KAAK,YAAY,GAAG;gCACpB,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;gCAClB,CAAC,CAAC,KAAK,CAAC,GAAG;wBACjB,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;wBAChD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC/B,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACjD,CAAC,CAAC;oBACH,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC;oBAClB,MAAM,IAAI,GACR,OAAO,KAAK,KAAK,QAAQ;wBACvB,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,KAAK,YAAY,GAAG;4BACpB,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE;4BAClB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;oBAClB,IAAI,IAAI,EAAE,MAAM,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;wBACxD,IAAI,CAAC;4BACH,MAAM,MAAM,EAAE,CAAC,IAAgC,CAAC,CAAC;wBACnD,CAAC;wBAAC,OAAO,KAAK,EAAE,CAAC;4BACf,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;4BACtC,MAAM,KAAK,CAAC;wBACd,CAAC;oBACH,CAAC;oBACD,IACE,IAAI,EAAE,MAAM,KAAK,MAAM;wBACvB,IAAI,EAAE,OAAO;wBACb,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ;wBAChC,IAAI,IAAI,IAAI,CAAC,OAAO;wBACpB,OAAO,IAAI,CAAC,OAAO,CAAC,EAAE,KAAK,QAAQ;wBAEnC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC5B,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,yBAAyB,EAAE,CAAC,CAAC;gBACtE,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,IAAI,KAAK,YAAY,cAAc,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;wBAC5D,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;wBACnB,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;oBAC7C,CAAC;oBACD,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,aAAa,CACxB,QAA+B,EAAE;QAEjC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAC1B,QAAQ,CAAC,eAAe,CAAC,EACzB;YACE,CAAC,EAAE,KAAK,CAAC,CAAC;YACV,QAAQ,EACN,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;YACnE,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CACF,CAAC;QACF,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,IAAI;YAChB,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC;SAC7C,CAAC;IACJ,CAAC;IAEM,kBAAkB,CACvB,OAAkC;QAElC,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/D,CAAC;IAEM,YAAY,CAAC,EAAU;QAC5B,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAEM,kBAAkB,CACvB,EAAU,EACV,KAAwB;QAExB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,gEAAgE;IACzD,KAAK,CAAC,QAAQ,CACnB,EAAU,EACV,QAA0B,EAAE;QAE5B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAe,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE;YACnE,GAAG,KAAK;SACT,CAAC,CAAC;QACH,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACpD,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,IAAI;YAChB,OAAO,EAAE,UAAU,KAAK,IAAI;YAC5B,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC;YACvC,UAAU;YACV,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,KAAK,QAAQ;gBACzC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;gBACpC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;IACJ,CAAC;IAEM,QAAQ,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IAC3E,CAAC;IAED,oGAAoG;IAC7F,KAAK,CAAC,gBAAgB,CAC3B,IAAU,EACV,MAAoB;QAEpB,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACvB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAEpC;YACD,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC;YAC7B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAI;YACV,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED,uCAAuC;IAChC,KAAK,CAAC,iBAAiB,CAAC,EAAU;QACvC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,QAAQ,CAAC,YAAY,EAAE,EAAE,CAAC;YAChC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAEM,QAAQ,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACI,KAAK,CACV,EAAU,EACV,KAKC;QAED,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE;YAC9C,OAAO,EAAE;gBACP,EAAE,EAAE,KAAK,CAAC,QAAQ;gBAClB,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;aAC/C;YACD,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpD,GAAG,CAAC,KAAK,CAAC,aAAa,EAAE,MAAM;gBAC7B,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE;gBACxC,CAAC,CAAC,EAAE,CAAC;SACR,CAAC,CAAC;IACL,CAAC;IAED,sEAAsE;IAC/D,KAAK,CAAC,kBAAkB,CAAC,EAAU;QACxC,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,QAAQ,CAAC,cAAc,EAAE,EAAE,CAAC;YAClC,MAAM,EAAE,QAAQ;SACjB,CAAC,CAAC;IACL,CAAC;IAED,gFAAgF;IACzE,KAAK,CAAC,QAAQ,CAAC,EAAU,EAAE,SAAiB;QACjD,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC;YACrB,IAAI,EAAE,GAAG,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,IAAI,kBAAkB,CAAC,SAAS,CAAC,WAAW;YAC7E,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;IACL,CAAC;IAED,uGAAuG;IAChG,KAAK,CAAC,EAAU,EAAE,MAAoB;QAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,uGAAuG;IAChG,IAAI,CAAC,EAAU;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,MAAM;QACjB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAY,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC/D,CAAC;IAED,wFAAwF;IACjF,MAAM,CAAC,MAAoB;QAChC,OAAO,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IAC7D,CAAC;IAEM,WAAW;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;IAC3C,CAAC;IAEM,iBAAiB,CACtB,KAA2B;QAE3B,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAEM,QAAQ;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,CAAC;IAEM,cAAc,CAAC,KAAwB;QAC5C,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAEO,IAAI,CACV,IAAY,EACZ,KAAa;QAKb,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,CAAC;IAEO,KAAK,CAAC,GAAG,CACf,IAAY,EACZ,KAAa,EACb,MAAoB;QAEpB,OAAO,CAAC,MAAM,IAAI,CAAC,IAAI,CAAuB,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3E,CAAC;IAEO,IAAI,CACV,IAAY,EACZ,KAAa,EACb,MAAoB;QAEpB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAI;YACzB,IAAI;YACJ,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5D,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9B,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,IAAI,CAChB,IAAY,EACZ,MAAgC,EAChC,IAAc;QAEd,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CAAuB;YAC5D,IAAI;YACJ,MAAM;YACN,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;SACxC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -20,6 +20,12 @@ export type StreamState = {
|
|
|
20
20
|
readonly status: Chat<AppUIMessage>['status'];
|
|
21
21
|
readonly error?: Error;
|
|
22
22
|
readonly recovery?: 'recovering' | 'history' | 'interrupted';
|
|
23
|
+
/**
|
|
24
|
+
* The response whose stream this tab saw end with the server's `finish`, until another stream on the conversation
|
|
25
|
+
* ends. A stream that was stopped here, cut off, failed or had nothing to resume (`204`) never sets it, so it is a
|
|
26
|
+
* hint that the execution writing it is over, not a business status.
|
|
27
|
+
*/
|
|
28
|
+
readonly finished?: string;
|
|
23
29
|
};
|
|
24
30
|
/** Application coordination around one SDK Chat per conversation, shared by every surface. */
|
|
25
31
|
export declare class ChatController {
|
|
@@ -30,6 +36,7 @@ export declare class ChatController {
|
|
|
30
36
|
/** Reuse a detail snapshot when replacing its row cannot change membership, order or a page cursor. */
|
|
31
37
|
private syncLists;
|
|
32
38
|
private historyEpochs;
|
|
39
|
+
private messageEpochs;
|
|
33
40
|
private replacements;
|
|
34
41
|
private resendRequests;
|
|
35
42
|
private streamFollowers;
|
|
@@ -38,6 +45,7 @@ export declare class ChatController {
|
|
|
38
45
|
private reconciles;
|
|
39
46
|
readonly submissions: ChatSubmissions;
|
|
40
47
|
private chats;
|
|
48
|
+
private finishes;
|
|
41
49
|
private histories;
|
|
42
50
|
private loads;
|
|
43
51
|
private messageReads;
|
|
@@ -73,6 +81,10 @@ export declare class ChatController {
|
|
|
73
81
|
private historyMeta;
|
|
74
82
|
dispatch(id: string, action: MessagesAction): void;
|
|
75
83
|
private historyLifetime;
|
|
84
|
+
private messageLifetime;
|
|
85
|
+
private readLifetime;
|
|
86
|
+
/** A resumed stream replaces replay snapshots, not already requested durable message revisions. */
|
|
87
|
+
private invalidateReplayReads;
|
|
76
88
|
private invalidateHistoryReads;
|
|
77
89
|
historyReplaced(event: HistoryReplacement): void;
|
|
78
90
|
private replaceHistory;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../client/chat/controller.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EACV,mBAAmB,EAIpB,MAAM,+BAA+B,CAAC;AAGvC,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,UAAU,GAAG,UAAU,GAAG,SAAS,CAAC;IAC7C,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,KAAK,kBAAkB,GAAG,OAAO,CAC/B,mBAAmB,EACnB;IAAE,IAAI,EAAE,8BAA8B,CAAA;CAAE,CACzC,CAAC;AAGF,OAAO,EAAE,IAAI,EAAyB,MAAM,eAAe,CAAC;AAC5D,OAAO,EAQL,KAAK,YAAY,EACjB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACvB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAMnC,OAAO,EAAE,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAIxE,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,aAAa,EAEnB,MAAM,oBAAoB,CAAC;AAE5B,+GAA+G;AAC/G,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC9C,QAAQ,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,YAAY,GAAG,SAAS,GAAG,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../client/chat/controller.tsx"],"names":[],"mappings":"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"}
|