@lemoncat7/dsh-partner 2.23.55 → 2.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -2
- package/docs/compatibility-0.2.2-rc.1.md +7 -0
- package/docs/releases/2.24.0-rc.10.md +8 -0
- package/docs/releases/2.24.0-rc.11.md +10 -0
- package/docs/releases/2.24.0-rc.2.md +9 -0
- package/docs/releases/2.24.0-rc.3.md +6 -0
- package/docs/releases/2.24.0-rc.4.md +11 -0
- package/docs/releases/2.24.0-rc.5.md +11 -0
- package/docs/releases/2.24.0-rc.6.md +12 -0
- package/docs/releases/2.24.0-rc.9.md +5 -0
- package/docs/releases/2.25.0-rc.1.md +12 -0
- package/docs/releases/2.25.0-rc.11.md +5 -0
- package/docs/releases/2.25.0-rc.2.md +10 -0
- package/docs/releases/2.25.0-rc.3.md +11 -0
- package/docs/releases/2.25.0-rc.4.md +3 -0
- package/docs/releases/2.25.0-rc.5.md +3 -0
- package/docs/releases/2.25.0.md +32 -0
- package/lib/agent-runtime.d.ts +3 -1
- package/lib/agent-runtime.d.ts.map +1 -1
- package/lib/agent-runtime.js +91 -18
- package/lib/agent-runtime.js.map +1 -1
- package/lib/api/features/tts-api.d.ts +4 -0
- package/lib/api/features/tts-api.d.ts.map +1 -0
- package/lib/api/features/tts-api.js +49 -0
- package/lib/api/features/tts-api.js.map +1 -0
- package/lib/api.d.ts +3 -0
- package/lib/api.d.ts.map +1 -1
- package/lib/api.js +79 -6
- package/lib/api.js.map +1 -1
- package/lib/channels/activity-defaults.d.ts.map +1 -1
- package/lib/channels/activity-defaults.js +7 -0
- package/lib/channels/activity-defaults.js.map +1 -1
- package/lib/channels/bilibili/activity-provider.d.ts +3 -0
- package/lib/channels/bilibili/activity-provider.d.ts.map +1 -0
- package/lib/channels/bilibili/activity-provider.js +8 -0
- package/lib/channels/bilibili/activity-provider.js.map +1 -0
- package/lib/channels/bilibili/catalog.d.ts +23 -0
- package/lib/channels/bilibili/catalog.d.ts.map +1 -0
- package/lib/channels/bilibili/catalog.js +45 -0
- package/lib/channels/bilibili/catalog.js.map +1 -0
- package/lib/channels/bilibili/media.d.ts +9 -0
- package/lib/channels/bilibili/media.d.ts.map +1 -0
- package/lib/channels/bilibili/media.js +67 -0
- package/lib/channels/bilibili/media.js.map +1 -0
- package/lib/channels/bilibili/service.d.ts +37 -0
- package/lib/channels/bilibili/service.d.ts.map +1 -0
- package/lib/channels/bilibili/service.js +138 -0
- package/lib/channels/bilibili/service.js.map +1 -0
- package/lib/channels/bilibili/tools.d.ts +6 -0
- package/lib/channels/bilibili/tools.d.ts.map +1 -0
- package/lib/channels/bilibili/tools.js +48 -0
- package/lib/channels/bilibili/tools.js.map +1 -0
- package/lib/channels/direct/message-format.js +298 -206
- package/lib/channels/direct/message-format.js.map +4 -4
- package/lib/channels/direct/transport.d.ts +1 -1
- package/lib/channels/direct/transport.d.ts.map +1 -1
- package/lib/channels/manager.d.ts +2 -0
- package/lib/channels/manager.d.ts.map +1 -1
- package/lib/channels/manager.js +24 -4
- package/lib/channels/manager.js.map +1 -1
- package/lib/channels/outbound-media.d.ts +1 -1
- package/lib/channels/outbound-media.d.ts.map +1 -1
- package/lib/channels/outbound-media.js +3 -2
- package/lib/channels/outbound-media.js.map +1 -1
- package/lib/channels/qq/authority.d.ts +1 -1
- package/lib/channels/qq/authority.d.ts.map +1 -1
- package/lib/channels/qq/authority.js +2 -2
- package/lib/channels/qq/authority.js.map +1 -1
- package/lib/channels/qq/reply-tool.d.ts +1 -1
- package/lib/channels/qq/reply-tool.d.ts.map +1 -1
- package/lib/channels/qq/reply-tool.js +7 -2
- package/lib/channels/qq/reply-tool.js.map +1 -1
- package/lib/channels/weixin/api.d.ts +1 -1
- package/lib/channels/weixin/api.d.ts.map +1 -1
- package/lib/channels/weixin/api.js +7 -1
- package/lib/channels/weixin/api.js.map +1 -1
- package/lib/channels/weixin/connect.d.ts +5 -1
- package/lib/channels/weixin/connect.d.ts.map +1 -1
- package/lib/character/activity-journal.d.ts +3 -1
- package/lib/character/activity-journal.d.ts.map +1 -1
- package/lib/character/activity-journal.js +43 -7
- package/lib/character/activity-journal.js.map +1 -1
- package/lib/character/activity-summary.d.ts +23 -0
- package/lib/character/activity-summary.d.ts.map +1 -0
- package/lib/character/activity-summary.js +23 -0
- package/lib/character/activity-summary.js.map +1 -0
- package/lib/character/affection-tool.js +2 -2
- package/lib/character/affection-tool.js.map +1 -1
- package/lib/character/affection.d.ts +6 -42
- package/lib/character/affection.d.ts.map +1 -1
- package/lib/character/affection.js +4 -13
- package/lib/character/affection.js.map +1 -1
- package/lib/character/conversation-behavior.d.ts +1 -0
- package/lib/character/conversation-behavior.d.ts.map +1 -1
- package/lib/character/conversation-behavior.js +8 -5
- package/lib/character/conversation-behavior.js.map +1 -1
- package/lib/character/habit-tool.d.ts +4 -0
- package/lib/character/habit-tool.d.ts.map +1 -0
- package/lib/character/habit-tool.js +31 -0
- package/lib/character/habit-tool.js.map +1 -0
- package/lib/character/habits.d.ts +38 -0
- package/lib/character/habits.d.ts.map +1 -0
- package/lib/character/habits.js +92 -0
- package/lib/character/habits.js.map +1 -0
- package/lib/character/idle-contact.d.ts +9 -0
- package/lib/character/idle-contact.d.ts.map +1 -1
- package/lib/character/idle-contact.js +62 -9
- package/lib/character/idle-contact.js.map +1 -1
- package/lib/character/interaction-review.d.ts +10 -0
- package/lib/character/interaction-review.d.ts.map +1 -1
- package/lib/character/interaction-review.js +51 -31
- package/lib/character/interaction-review.js.map +1 -1
- package/lib/chat/live-speech.d.ts +5 -2
- package/lib/chat/live-speech.d.ts.map +1 -1
- package/lib/chat/live-speech.js +37 -9
- package/lib/chat/live-speech.js.map +1 -1
- package/lib/chat/persona-delivery.d.ts +31 -0
- package/lib/chat/persona-delivery.d.ts.map +1 -0
- package/lib/chat/persona-delivery.js +131 -0
- package/lib/chat/persona-delivery.js.map +1 -0
- package/lib/chat/protocol.d.ts +1 -1
- package/lib/chat/protocol.js +1 -1
- package/lib/chat/reply-continuity.d.ts.map +1 -1
- package/lib/chat/reply-continuity.js +12 -0
- package/lib/chat/reply-continuity.js.map +1 -1
- package/lib/chat/tools.d.ts.map +1 -1
- package/lib/chat/tools.js +26 -11
- package/lib/chat/tools.js.map +1 -1
- package/lib/chat/work-expression.d.ts +36 -0
- package/lib/chat/work-expression.d.ts.map +1 -1
- package/lib/chat/work-expression.js +80 -17
- package/lib/chat/work-expression.js.map +1 -1
- package/lib/client-api.d.ts +17 -1
- package/lib/client-api.d.ts.map +1 -1
- package/lib/client-api.js.map +1 -1
- package/lib/client.activities.js +3 -0
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +4119 -3763
- package/lib/client.js.map +4 -4
- package/lib/client.tts.js +7 -0
- package/lib/collaboration/composition.d.ts.map +1 -1
- package/lib/collaboration/composition.js +2 -0
- package/lib/collaboration/composition.js.map +1 -1
- package/lib/collaboration/tool-discovery.d.ts +1 -1
- package/lib/collaboration/tool-discovery.d.ts.map +1 -1
- package/lib/collaboration/tool-discovery.js +15 -9
- package/lib/collaboration/tool-discovery.js.map +1 -1
- package/lib/companions/identity-tool.d.ts +1 -1
- package/lib/companions/identity-tool.d.ts.map +1 -1
- package/lib/companions/identity-tool.js +3 -4
- package/lib/companions/identity-tool.js.map +1 -1
- package/lib/companions/identity.js +4 -4
- package/lib/companions/identity.js.map +1 -1
- package/lib/companions/management.d.ts +4 -4
- package/lib/companions/persona-refinement.d.ts.map +1 -1
- package/lib/companions/persona-refinement.js +1 -45
- package/lib/companions/persona-refinement.js.map +1 -1
- package/lib/compat/native-presentation.d.ts +4 -0
- package/lib/compat/native-presentation.d.ts.map +1 -0
- package/lib/compat/native-presentation.js +40 -0
- package/lib/compat/native-presentation.js.map +1 -0
- package/lib/compat/ptc-events.d.ts +2 -0
- package/lib/compat/ptc-events.d.ts.map +1 -0
- package/lib/compat/ptc-events.js +2 -0
- package/lib/compat/ptc-events.js.map +1 -0
- package/lib/compat/tool-dispatch.d.ts +4 -0
- package/lib/compat/tool-dispatch.d.ts.map +1 -0
- package/lib/compat/tool-dispatch.js +14 -0
- package/lib/compat/tool-dispatch.js.map +1 -0
- package/lib/concern-execution-receipt.d.ts +2 -1
- package/lib/concern-execution-receipt.d.ts.map +1 -1
- package/lib/concern-execution-receipt.js +15 -13
- package/lib/concern-execution-receipt.js.map +1 -1
- package/lib/concern-execution.d.ts +3 -1
- package/lib/concern-execution.d.ts.map +1 -1
- package/lib/concern-execution.js +20 -1
- package/lib/concern-execution.js.map +1 -1
- package/lib/concern-recording.d.ts +1 -1
- package/lib/concern-recording.d.ts.map +1 -1
- package/lib/concern-recording.js +14 -5
- package/lib/concern-recording.js.map +1 -1
- package/lib/concern-store.d.ts.map +1 -1
- package/lib/concern-store.js +3 -1
- package/lib/concern-store.js.map +1 -1
- package/lib/concern-tool.d.ts.map +1 -1
- package/lib/concern-tool.js +5 -3
- package/lib/concern-tool.js.map +1 -1
- package/lib/domain.d.ts +13 -1
- package/lib/domain.d.ts.map +1 -1
- package/lib/domain.js.map +1 -1
- package/lib/execution/operation-tool-access.d.ts.map +1 -1
- package/lib/execution/operation-tool-access.js +2 -6
- package/lib/execution/operation-tool-access.js.map +1 -1
- package/lib/execution/service.d.ts +2 -0
- package/lib/execution/service.d.ts.map +1 -1
- package/lib/execution/service.js +7 -1
- package/lib/execution/service.js.map +1 -1
- package/lib/execution/task-preamble.js +2 -2
- package/lib/execution/task-preamble.js.map +1 -1
- package/lib/execution/work-progress-card.d.ts +10 -0
- package/lib/execution/work-progress-card.d.ts.map +1 -0
- package/lib/execution/work-progress-card.js +45 -0
- package/lib/execution/work-progress-card.js.map +1 -0
- package/lib/execution/work-progress-state.d.ts +32 -0
- package/lib/execution/work-progress-state.d.ts.map +1 -0
- package/lib/execution/work-progress-state.js +19 -0
- package/lib/execution/work-progress-state.js.map +1 -0
- package/lib/execution/work-progress.d.ts +16 -0
- package/lib/execution/work-progress.d.ts.map +1 -0
- package/lib/execution/work-progress.js +76 -0
- package/lib/execution/work-progress.js.map +1 -0
- package/lib/execution/work-tool.d.ts.map +1 -1
- package/lib/execution/work-tool.js +63 -52
- package/lib/execution/work-tool.js.map +1 -1
- package/lib/heartbeat.js +1 -1
- package/lib/heartbeat.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +11 -3
- package/lib/index.js.map +1 -1
- package/lib/memory-store.d.ts +1 -1
- package/lib/observation-loop.d.ts.map +1 -1
- package/lib/observation-loop.js +24 -6
- package/lib/observation-loop.js.map +1 -1
- package/lib/store.d.ts.map +1 -1
- package/lib/store.js +12 -1
- package/lib/store.js.map +1 -1
- package/lib/ui/affection-panel.js +1 -1
- package/lib/ui/affection-panel.js.map +1 -1
- package/lib/ui/bilibili-settings.d.ts +12 -0
- package/lib/ui/bilibili-settings.d.ts.map +1 -0
- package/lib/ui/bilibili-settings.js +77 -0
- package/lib/ui/bilibili-settings.js.map +1 -0
- package/lib/ui/channels-panel.d.ts.map +1 -1
- package/lib/ui/channels-panel.js +11 -4
- package/lib/ui/channels-panel.js.map +1 -1
- package/lib/ui/companion-vitals.js +1 -1
- package/lib/ui/companion-vitals.js.map +1 -1
- package/lib/ui/habits-panel.d.ts +4 -0
- package/lib/ui/habits-panel.d.ts.map +1 -0
- package/lib/ui/habits-panel.js +30 -0
- package/lib/ui/habits-panel.js.map +1 -0
- package/lib/ui/identity-editor.js +1 -8
- package/lib/ui/identity-editor.js.map +1 -1
- package/lib/ui/idle-contact-editor.d.ts.map +1 -1
- package/lib/ui/idle-contact-editor.js +3 -2
- package/lib/ui/idle-contact-editor.js.map +1 -1
- package/lib/ui/memory/concern-board.js +1 -1
- package/lib/ui/memory/concern-board.js.map +1 -1
- package/lib/ui/memory/concern-execution-status.d.ts.map +1 -1
- package/lib/ui/memory/concern-execution-status.js +2 -2
- package/lib/ui/memory/concern-execution-status.js.map +1 -1
- package/lib/ui/push-draft.d.ts +2 -2
- package/lib/ui/qq-channel-settings.js +3 -3
- package/lib/ui/qq-channel-settings.js.map +1 -1
- package/lib/ui/thoughts-panel-loader.d.ts +4 -0
- package/lib/ui/thoughts-panel-loader.d.ts.map +1 -0
- package/lib/ui/thoughts-panel-loader.js +23 -0
- package/lib/ui/thoughts-panel-loader.js.map +1 -0
- package/lib/ui/thoughts-panel.d.ts.map +1 -1
- package/lib/ui/thoughts-panel.js +7 -5
- package/lib/ui/thoughts-panel.js.map +1 -1
- package/lib/ui/tts-settings-loader.d.ts +4 -0
- package/lib/ui/tts-settings-loader.d.ts.map +1 -0
- package/lib/ui/tts-settings-loader.js +23 -0
- package/lib/ui/tts-settings-loader.js.map +1 -0
- package/lib/ui/tts-settings.d.ts +11 -0
- package/lib/ui/tts-settings.d.ts.map +1 -0
- package/lib/ui/tts-settings.js +63 -0
- package/lib/ui/tts-settings.js.map +1 -0
- package/lib/ui/workspace-navigation.d.ts +16 -16
- package/lib/voice/credentials.d.ts +9 -0
- package/lib/voice/credentials.d.ts.map +1 -0
- package/lib/voice/credentials.js +12 -0
- package/lib/voice/credentials.js.map +1 -0
- package/lib/voice/domain.d.ts +42 -0
- package/lib/voice/domain.d.ts.map +1 -0
- package/lib/voice/domain.js +53 -0
- package/lib/voice/domain.js.map +1 -0
- package/lib/voice/service.d.ts +63 -0
- package/lib/voice/service.d.ts.map +1 -0
- package/lib/voice/service.js +211 -0
- package/lib/voice/service.js.map +1 -0
- package/lib/voice/synthesize.d.ts +12 -0
- package/lib/voice/synthesize.d.ts.map +1 -0
- package/lib/voice/synthesize.js +97 -0
- package/lib/voice/synthesize.js.map +1 -0
- package/lib/voice/tool.d.ts +7 -0
- package/lib/voice/tool.d.ts.map +1 -0
- package/lib/voice/tool.js +73 -0
- package/lib/voice/tool.js.map +1 -0
- package/lib/voice/validation.d.ts +3 -0
- package/lib/voice/validation.d.ts.map +1 -0
- package/lib/voice/validation.js +31 -0
- package/lib/voice/validation.js.map +1 -0
- package/package.json +71 -48
- package/resources/bilibili/Dockerfile +7 -0
- package/resources/bilibili/media.py +245 -0
- package/resources/bilibili/requirements.txt +3 -0
- package/resources/bilibili/server.py +300 -0
- package/resources/bilibili/test_bridge.py +115 -0
- package/resources/bilibili/test_media.py +110 -0
|
@@ -28,7 +28,7 @@ export declare class CompanionManagementService {
|
|
|
28
28
|
target(actorId: string, reference: string, state?: PartnerState): Companion;
|
|
29
29
|
catalog(actorId: string): Promise<{
|
|
30
30
|
capabilities: {
|
|
31
|
-
id: "knowledge" | "
|
|
31
|
+
id: "knowledge" | "companions" | "skills" | "schedules" | "mcp" | "ssh" | "git" | "access" | "administration";
|
|
32
32
|
name: string;
|
|
33
33
|
userOnly: boolean;
|
|
34
34
|
}[];
|
|
@@ -101,7 +101,7 @@ export declare class CompanionManagementService {
|
|
|
101
101
|
presetId: string | undefined;
|
|
102
102
|
provider: string | undefined;
|
|
103
103
|
model: string | undefined;
|
|
104
|
-
capabilities: ("knowledge" | "
|
|
104
|
+
capabilities: ("knowledge" | "companions" | "skills" | "schedules" | "mcp" | "ssh" | "git" | "access" | "administration")[];
|
|
105
105
|
updatedAt: number;
|
|
106
106
|
};
|
|
107
107
|
update(actorId: string, reference: string, expectedRevision: string, raw: unknown, signal?: AbortSignal): Promise<{
|
|
@@ -122,7 +122,7 @@ export declare class CompanionManagementService {
|
|
|
122
122
|
presetId: string | undefined;
|
|
123
123
|
provider: string | undefined;
|
|
124
124
|
model: string | undefined;
|
|
125
|
-
capabilities: ("knowledge" | "
|
|
125
|
+
capabilities: ("knowledge" | "companions" | "skills" | "schedules" | "mcp" | "ssh" | "git" | "access" | "administration")[];
|
|
126
126
|
updatedAt: number;
|
|
127
127
|
};
|
|
128
128
|
changedFields: string[];
|
|
@@ -147,7 +147,7 @@ export declare class CompanionManagementService {
|
|
|
147
147
|
presetId: string | undefined;
|
|
148
148
|
provider: string | undefined;
|
|
149
149
|
model: string | undefined;
|
|
150
|
-
capabilities: ("knowledge" | "
|
|
150
|
+
capabilities: ("knowledge" | "companions" | "skills" | "schedules" | "mcp" | "ssh" | "git" | "access" | "administration")[];
|
|
151
151
|
updatedAt: number;
|
|
152
152
|
};
|
|
153
153
|
changedFields: string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persona-refinement.d.ts","sourceRoot":"","sources":["../../src/companions/persona-refinement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"persona-refinement.d.ts","sourceRoot":"","sources":["../../src/companions/persona-refinement.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAA;AAEtD,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAClC,KAAK,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;CAClC;AACD,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAE1I"}
|
|
@@ -1,49 +1,5 @@
|
|
|
1
|
-
import { record } from '../core/validation.js';
|
|
2
|
-
import { applyIdentity } from './identity.js';
|
|
3
|
-
const fields = ['name', 'role', 'description', 'instructions', 'characterCard'];
|
|
4
|
-
const cardFields = ['roleText', 'chatStyle', 'identity', 'motivation', 'voice', 'greeting', 'examples', 'lore'];
|
|
5
1
|
/** Only self-description, never policy, user relationship or delivery settings. */
|
|
6
2
|
export function applyPersonaRefinement(state, companion, raw, expectedAt, reason) {
|
|
7
|
-
|
|
8
|
-
throw Error('自主调整角色设定未开启');
|
|
9
|
-
if (typeof reason !== 'string' || !reason.trim() || reason.length > 500)
|
|
10
|
-
throw Error('请简短记录自主调整的原因(最多 500 字)');
|
|
11
|
-
const patch = record(raw, 'patch');
|
|
12
|
-
for (const key of Object.keys(patch))
|
|
13
|
-
if (!fields.includes(key))
|
|
14
|
-
throw Error(`自主调整不能修改 ${key}`);
|
|
15
|
-
if (patch.characterCard !== undefined) {
|
|
16
|
-
const card = record(patch.characterCard, 'characterCard');
|
|
17
|
-
if (!companion.characterCard?.enabled)
|
|
18
|
-
throw Error('请先在页面启用角色设定');
|
|
19
|
-
for (const key of Object.keys(card))
|
|
20
|
-
if (!cardFields.includes(key))
|
|
21
|
-
throw Error(`自主调整不能修改 characterCard.${key}`);
|
|
22
|
-
}
|
|
23
|
-
const before = {}, after = {};
|
|
24
|
-
for (const [key, value] of Object.entries(patch)) {
|
|
25
|
-
if (key === 'characterCard') {
|
|
26
|
-
const previous = {}, changes = {};
|
|
27
|
-
for (const [field, next] of Object.entries(record(value, key))) {
|
|
28
|
-
const old = companion.characterCard[field];
|
|
29
|
-
if (JSON.stringify(old) === JSON.stringify(next))
|
|
30
|
-
continue;
|
|
31
|
-
previous[field] = old ?? (['examples', 'lore'].includes(field) ? [] : '');
|
|
32
|
-
changes[field] = next;
|
|
33
|
-
}
|
|
34
|
-
if (Object.keys(changes).length) {
|
|
35
|
-
before[key] = previous;
|
|
36
|
-
after[key] = changes;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
else if (companion[key] !== value) {
|
|
40
|
-
before[key] = companion[key];
|
|
41
|
-
after[key] = value;
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
if (!Object.keys(after).length)
|
|
45
|
-
throw Error('设定没有变化,无需重复保存');
|
|
46
|
-
applyIdentity(state, companion, after, expectedAt, 'ai');
|
|
47
|
-
companion.personaHistory = [...(companion.personaHistory ?? []), { at: companion.updatedAt, reason: reason.trim(), before, after }].slice(-12);
|
|
3
|
+
throw Error('自主调整角色设定已停用,请使用自主习惯;固定角色正文不自动改写');
|
|
48
4
|
}
|
|
49
5
|
//# sourceMappingURL=persona-refinement.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"persona-refinement.js","sourceRoot":"","sources":["../../src/companions/persona-refinement.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"persona-refinement.js","sourceRoot":"","sources":["../../src/companions/persona-refinement.ts"],"names":[],"mappings":"AASA,mFAAmF;AACnF,MAAM,UAAU,sBAAsB,CAAC,KAAmB,EAAE,SAAoB,EAAE,GAAY,EAAE,UAAmB,EAAE,MAAe;IAClI,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAA;AAChD,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { Context } from '@deepseek-ai/cordis';
|
|
2
|
+
import type { ToolDefinition } from '@deepseek-ai/dsh-tools';
|
|
3
|
+
export declare function nativePresentation(ctx: Context, filter?: (tools: readonly ToolDefinition[]) => readonly ToolDefinition[]): () => void;
|
|
4
|
+
//# sourceMappingURL=native-presentation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-presentation.d.ts","sourceRoot":"","sources":["../../src/compat/native-presentation.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,KAAK,EAAe,cAAc,EAAgB,MAAM,wBAAwB,CAAA;AAOvF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,GAAE,CAAC,KAAK,EAAE,SAAS,cAAc,EAAE,KAAK,SAAS,cAAc,EAAmB,GAAG,MAAM,IAAI,CA0BrJ"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { NativeToolExecutor } from '@deepseek-ai/dsh-tool-executor-native';
|
|
2
|
+
import { scopeOf, scopeChainOf } from '@deepseek-ai/dsh-scope';
|
|
3
|
+
const presentations = new WeakMap();
|
|
4
|
+
export function nativePresentation(ctx, filter = tools => tools) {
|
|
5
|
+
const tools = ctx.tools;
|
|
6
|
+
if (typeof tools.presentAs === 'function')
|
|
7
|
+
return tools.presentAs('native');
|
|
8
|
+
const scope = scopeOf(ctx);
|
|
9
|
+
if (!scope)
|
|
10
|
+
throw new Error('伙伴工具展示需要独立 Agent 作用域');
|
|
11
|
+
let state = presentations.get(scope);
|
|
12
|
+
if (!state) {
|
|
13
|
+
const registry = tools;
|
|
14
|
+
if (typeof registry.selectExecutor !== 'function')
|
|
15
|
+
throw new Error('当前宿主缺少已验证的执行器选择接口');
|
|
16
|
+
state = {};
|
|
17
|
+
const selected = state;
|
|
18
|
+
const inherited = () => registry.selectExecutor(scopeChainOf(scope)[1]);
|
|
19
|
+
let inheritedSections = [];
|
|
20
|
+
try {
|
|
21
|
+
inheritedSections = inherited().sections ?? [];
|
|
22
|
+
}
|
|
23
|
+
catch { /* A native-only child may provide the first executor. */ }
|
|
24
|
+
const sections = inheritedSections.map(section => ({ ...section, text: (definitions) => {
|
|
25
|
+
if (selected.active)
|
|
26
|
+
return '';
|
|
27
|
+
const current = inherited().sections?.find(item => item.name === section.name);
|
|
28
|
+
return typeof current?.text === 'function' ? current.text(definitions) : current?.text ?? '';
|
|
29
|
+
} }));
|
|
30
|
+
tools.setExecutor({ sections, describe: definitions => (selected.active ?? inherited()).describe(definitions), execute: input => (selected.active ?? inherited()).execute(input) });
|
|
31
|
+
presentations.set(scope, state);
|
|
32
|
+
ctx.effect(() => () => { presentations.delete(scope); });
|
|
33
|
+
}
|
|
34
|
+
const native = new NativeToolExecutor(ctx);
|
|
35
|
+
const executor = { describe: definitions => native.describe(filter(definitions)), execute: input => native.execute(input) };
|
|
36
|
+
state.active = executor;
|
|
37
|
+
return () => { if (state.active === executor)
|
|
38
|
+
delete state.active; };
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=native-presentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-presentation.js","sourceRoot":"","sources":["../../src/compat/native-presentation.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ptc-events.d.ts","sourceRoot":"","sources":["../../src/compat/ptc-events.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ptc-events.js","sourceRoot":"","sources":["../../src/compat/ptc-events.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { ToolRuntime, ToolExecutionInput, ToolExecutionResult } from '@deepseek-ai/dsh-tools';
|
|
2
|
+
/** Nested calls retain the original scope, cancellation and approval pipeline. */
|
|
3
|
+
export declare function dispatchTool(runtime: ToolRuntime, input: ToolExecutionInput): Promise<ToolExecutionResult>;
|
|
4
|
+
//# sourceMappingURL=tool-dispatch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-dispatch.d.ts","sourceRoot":"","sources":["../../src/compat/tool-dispatch.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAA;AAElG,kFAAkF;AAClF,wBAAsB,YAAY,CAAC,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAQhH"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ToolExecutionPipeline } from '@deepseek-ai/dsh-tools/pipeline';
|
|
2
|
+
/** Nested calls retain the original scope, cancellation and approval pipeline. */
|
|
3
|
+
export async function dispatchTool(runtime, input) {
|
|
4
|
+
if (typeof runtime.executable !== 'function')
|
|
5
|
+
return runtime.execute(input);
|
|
6
|
+
const ctx = input.agent?.ctx ?? runtime.ctx;
|
|
7
|
+
if (!ctx)
|
|
8
|
+
throw new Error('工具调用缺少 Agent 执行作用域');
|
|
9
|
+
const pipeline = new ToolExecutionPipeline(ctx);
|
|
10
|
+
const prepared = await pipeline.prepare(input);
|
|
11
|
+
const outcome = prepared.kind === 'dispatch' ? await pipeline.dispatch(prepared.exec) : prepared;
|
|
12
|
+
return pipeline.complete(prepared.exec, outcome);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=tool-dispatch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool-dispatch.js","sourceRoot":"","sources":["../../src/compat/tool-dispatch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAA;AAGvE,kFAAkF;AAClF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,OAAoB,EAAE,KAAyB;IAChF,IAAG,OAAO,OAAO,CAAC,UAAU,KAAG,UAAU;QAAC,OAAQ,OAAO,CAAC,OAA+E,CAAC,KAAK,CAAC,CAAA;IAChJ,MAAM,GAAG,GAAG,KAAK,CAAC,KAAK,EAAE,GAAG,IAAK,OAAmE,CAAC,GAAG,CAAA;IACxG,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IAC/C,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC,GAAG,CAAC,CAAA;IAC/C,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;IAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;IAChG,OAAO,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;AAClD,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { SessionEvent } from '@deepseek-ai/dsh-session';
|
|
2
|
-
/**
|
|
2
|
+
/** Return only this execution's completed final answer. Bookkeeping is not new input. */
|
|
3
|
+
export declare function concernReplySummary(events: readonly SessionEvent[], messageId: string): string | undefined;
|
|
3
4
|
export declare function hasConcernReply(events: readonly SessionEvent[], messageId: string): boolean;
|
|
4
5
|
//# sourceMappingURL=concern-execution-receipt.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-execution-receipt.d.ts","sourceRoot":"","sources":["../src/concern-execution-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAA;
|
|
1
|
+
{"version":3,"file":"concern-execution-receipt.d.ts","sourceRoot":"","sources":["../src/concern-execution-receipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,0BAA0B,CAAA;AAI1D,yFAAyF;AACzF,wBAAgB,mBAAmB,CAAC,MAAM,EAAC,SAAS,YAAY,EAAE,EAAC,SAAS,EAAC,MAAM,GAAE,MAAM,GAAC,SAAS,CAmBpG;AACD,wBAAgB,eAAe,CAAC,MAAM,EAAC,SAAS,YAAY,EAAE,EAAC,SAAS,EAAC,MAAM,GAAE,OAAO,CAA2D"}
|
|
@@ -1,29 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { isPluginSource } from './message-source.js';
|
|
2
|
+
const CONTEXT_SOURCES = new Set(['runtime-context', 'time-context', 'compact-checkpoint', 'system-prompt', 'model-selection', 'tool-registry', 'ptc-mode']);
|
|
3
|
+
/** Return only this execution's completed final answer. Bookkeeping is not new input. */
|
|
4
|
+
export function concernReplySummary(events, messageId) {
|
|
5
|
+
let found = false, answer = '';
|
|
4
6
|
for (const event of events) {
|
|
5
7
|
if (event.type === 'user/message') {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
if (
|
|
8
|
+
const source = event.data.source;
|
|
9
|
+
if (source && CONTEXT_SOURCES.has(source.kind))
|
|
10
|
+
continue;
|
|
11
|
+
if (source && isPluginSource(source, '@lemoncat7/dsh-partner') && source.form === 'notice' && ['伙伴附件交付', '需求成果交付'].includes(source.summary ?? ''))
|
|
10
12
|
continue;
|
|
11
13
|
if (found)
|
|
12
|
-
return
|
|
14
|
+
return undefined;
|
|
13
15
|
found = event.data.id === messageId;
|
|
14
16
|
continue;
|
|
15
17
|
}
|
|
16
18
|
if (!found)
|
|
17
19
|
continue;
|
|
18
20
|
if (event.type === 'tool/call' || event.type === 'tool/result')
|
|
19
|
-
answer =
|
|
21
|
+
answer = '';
|
|
20
22
|
if (event.type === 'assistant/message' && !event.data.interrupted) {
|
|
21
|
-
answer = event.data.message.content.some(b => b.type === '
|
|
22
|
-
&& !event.data.message.content.some(b => b.type === 'tool-call');
|
|
23
|
+
answer = event.data.message.content.some(b => b.type === 'tool-call') ? '' : event.data.message.content.filter(b => b.type === 'text').map(b => b.type === 'text' ? b.text : '').join('\n').trim();
|
|
23
24
|
}
|
|
24
25
|
if (event.type === 'turn/end')
|
|
25
|
-
return answer && event.data.reason.kind === 'completed';
|
|
26
|
+
return answer && event.data.reason.kind === 'completed' ? answer.replace(/\b(?:gh[pousr]_[A-Za-z0-9_]+|github_pat_[A-Za-z0-9_]+)\b/gu, '[凭据已隐藏]').replace(/(Bearer\s+)\S+/giu, '$1[凭据已隐藏]').slice(0, 2000) : undefined;
|
|
26
27
|
}
|
|
27
|
-
return
|
|
28
|
+
return undefined;
|
|
28
29
|
}
|
|
30
|
+
export function hasConcernReply(events, messageId) { return concernReplySummary(events, messageId) !== undefined; }
|
|
29
31
|
//# sourceMappingURL=concern-execution-receipt.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-execution-receipt.js","sourceRoot":"","sources":["../src/concern-execution-receipt.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"concern-execution-receipt.js","sourceRoot":"","sources":["../src/concern-execution-receipt.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,cAAc,EAAC,MAAM,qBAAqB,CAAA;AAElD,MAAM,eAAe,GAAC,IAAI,GAAG,CAAC,CAAC,iBAAiB,EAAC,cAAc,EAAC,oBAAoB,EAAC,eAAe,EAAC,iBAAiB,EAAC,eAAe,EAAC,UAAU,CAAC,CAAC,CAAA;AACnJ,yFAAyF;AACzF,MAAM,UAAU,mBAAmB,CAAC,MAA8B,EAAC,SAAgB;IACjF,IAAI,KAAK,GAAC,KAAK,EAAC,MAAM,GAAC,EAAE,CAAA;IACzB,KAAI,MAAM,KAAK,IAAI,MAAM,EAAC,CAAC;QACzB,IAAG,KAAK,CAAC,IAAI,KAAG,cAAc,EAAC,CAAC;YAC9B,MAAM,MAAM,GAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;YAC9B,IAAG,MAAM,IAAE,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAC,SAAQ;YACpD,IAAG,MAAM,IAAE,cAAc,CAAC,MAAM,EAAC,wBAAwB,CAAC,IAAE,MAAM,CAAC,IAAI,KAAG,QAAQ,IAAE,CAAC,QAAQ,EAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,IAAE,EAAE,CAAC;gBAAC,SAAQ;YAC7I,IAAG,KAAK;gBAAC,OAAO,SAAS,CAAA;YACzB,KAAK,GAAC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAG,SAAS,CAAA;YAC/B,SAAQ;QACV,CAAC;QACD,IAAG,CAAC,KAAK;YAAC,SAAQ;QAClB,IAAG,KAAK,CAAC,IAAI,KAAG,WAAW,IAAE,KAAK,CAAC,IAAI,KAAG,aAAa;YAAC,MAAM,GAAC,EAAE,CAAA;QACjE,IAAG,KAAK,CAAC,IAAI,KAAG,mBAAmB,IAAE,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAC,CAAC;YAC5D,MAAM,GAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,KAAG,WAAW,CAAC,CAAA,CAAC,CAAA,EAAE,CAAA,CAAC,CAAA,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,KAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,KAAG,MAAM,CAAA,CAAC,CAAA,CAAC,CAAC,IAAI,CAAA,CAAC,CAAA,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAA;QAC9K,CAAC;QACD,IAAG,KAAK,CAAC,IAAI,KAAG,UAAU;YAAC,OAAO,MAAM,IAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAG,WAAW,CAAA,CAAC,CAAA,MAAM,CAAC,OAAO,CAAC,4DAA4D,EAAC,SAAS,CAAC,CAAC,OAAO,CAAC,mBAAmB,EAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,EAAC,IAAI,CAAC,CAAA,CAAC,CAAA,SAAS,CAAA;IACxO,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,MAA8B,EAAC,SAAgB,IAAW,OAAO,mBAAmB,CAAC,MAAM,EAAC,SAAS,CAAC,KAAG,SAAS,CAAA,CAAA,CAAC"}
|
|
@@ -13,9 +13,11 @@ export interface ConcernExecutionReceipt {
|
|
|
13
13
|
updatedAt: number;
|
|
14
14
|
error?: string;
|
|
15
15
|
reconcileOnly?: boolean;
|
|
16
|
+
resultSummary?: string;
|
|
16
17
|
recoveryFromMessageId?: string;
|
|
17
18
|
}
|
|
18
19
|
export interface ConcernConversationExecutor {
|
|
20
|
+
reconcileConcern?(receipt: ConcernExecutionReceipt): Promise<string | undefined>;
|
|
19
21
|
executeConcern(receipt: ConcernExecutionReceipt, concern: PartnerConcern, prompt: string): Promise<void>;
|
|
20
22
|
}
|
|
21
23
|
/** Delivery receipts only: no requirement, board task or review workflow. */
|
|
@@ -25,7 +27,7 @@ export declare class ConcernExecutionDispatcher {
|
|
|
25
27
|
private readonly executor;
|
|
26
28
|
private readonly active;
|
|
27
29
|
constructor(store: PartnerStore, concerns: PartnerConcernStore, executor: ConcernConversationExecutor);
|
|
28
|
-
recover(companionId: string, concernId: string, executionId: string, expectedUpdatedAt: number): Promise<
|
|
30
|
+
recover(companionId: string, concernId: string, executionId: string, expectedUpdatedAt: number, existingReplyOnly?: boolean): Promise<'reconciled' | 'queued'>;
|
|
29
31
|
dispatch(companionId: string): Promise<void>;
|
|
30
32
|
}
|
|
31
33
|
export declare function concernExecutionPrompt(concern: PartnerConcern, event: ConcernObservation, receipt?: ConcernExecutionReceipt): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-execution.d.ts","sourceRoot":"","sources":["../src/concern-execution.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAA;AAC3D,OAAO,KAAK,EAAC,cAAc,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAE3E,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;IAC7G,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IACrI,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B;AACD,MAAM,WAAW,2BAA2B;IAC1C,cAAc,CAAC,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACzG;AAED,6EAA6E;AAC7E,qBAAa,0BAA0B;IAEzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAuB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAD3H,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;gBACd,KAAK,EAAE,YAAY,EAAmB,QAAQ,EAAE,mBAAmB,EAAmB,QAAQ,EAAE,2BAA2B;IAClJ,OAAO,CAAC,WAAW,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,EAAE,iBAAiB,EAAC,MAAM,GAAE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"concern-execution.d.ts","sourceRoot":"","sources":["../src/concern-execution.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,YAAY,EAAC,MAAM,YAAY,CAAA;AAC5C,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,oBAAoB,CAAA;AAC3D,OAAO,KAAK,EAAC,cAAc,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAE3E,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;IAC7G,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,OAAO,CAAA;IACrI,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAA;CAC/B;AACD,MAAM,WAAW,2BAA2B;IAC1C,gBAAgB,CAAC,CAAC,OAAO,EAAC,uBAAuB,GAAE,OAAO,CAAC,MAAM,GAAC,SAAS,CAAC,CAAA;IAC5E,cAAc,CAAC,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CACzG;AAED,6EAA6E;AAC7E,qBAAa,0BAA0B;IAEzB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAgB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAuB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAD3H,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAoB;gBACd,KAAK,EAAE,YAAY,EAAmB,QAAQ,EAAE,mBAAmB,EAAmB,QAAQ,EAAE,2BAA2B;IAClJ,OAAO,CAAC,WAAW,EAAC,MAAM,EAAE,SAAS,EAAC,MAAM,EAAE,WAAW,EAAC,MAAM,EAAE,iBAAiB,EAAC,MAAM,EAAC,iBAAiB,UAAM,GAAE,OAAO,CAAC,YAAY,GAAC,QAAQ,CAAC;IA0BlJ,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CA0CnD;AAED,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAC,uBAAuB,GAAG,MAAM,CAYnI"}
|
package/lib/concern-execution.js
CHANGED
|
@@ -10,13 +10,30 @@ export class ConcernExecutionDispatcher {
|
|
|
10
10
|
this.concerns = concerns;
|
|
11
11
|
this.executor = executor;
|
|
12
12
|
}
|
|
13
|
-
async recover(companionId, concernId, executionId, expectedUpdatedAt) {
|
|
13
|
+
async recover(companionId, concernId, executionId, expectedUpdatedAt, existingReplyOnly = false) {
|
|
14
14
|
if (this.active.has(companionId))
|
|
15
15
|
throw new Error('伙伴已有执行在进行,请等待完成');
|
|
16
16
|
const concern = (await this.concerns.list(companionId)).find(c => c.id === concernId);
|
|
17
17
|
if (!concern?.executionInstructions || !['active', 'watching'].includes(concern.state) || concern.control === 'stopped')
|
|
18
18
|
throw new Error('关注已停止或未配置执行要求');
|
|
19
19
|
const original = this.store.snapshot().concernExecutions?.find(r => r.id === executionId && r.companionId === companionId && r.concernId === concernId);
|
|
20
|
+
if (!original || original.status !== 'failed' || original.updatedAt !== expectedUpdatedAt)
|
|
21
|
+
throw new Error('执行状态已变化,请刷新后再试');
|
|
22
|
+
const summary = await this.executor.reconcileConcern?.(original);
|
|
23
|
+
if (summary !== undefined) {
|
|
24
|
+
await this.store.update(s => {
|
|
25
|
+
const r = s.concernExecutions?.find(r => r.id === executionId && r.companionId === companionId && r.concernId === concernId);
|
|
26
|
+
if (!r || r.status !== 'failed' || r.updatedAt !== expectedUpdatedAt)
|
|
27
|
+
throw new Error('执行状态已变化,请刷新后再试');
|
|
28
|
+
r.status = 'completed';
|
|
29
|
+
r.resultSummary = summary;
|
|
30
|
+
r.updatedAt = Math.max(Date.now(), r.updatedAt + 1);
|
|
31
|
+
delete r.error;
|
|
32
|
+
});
|
|
33
|
+
return 'reconciled';
|
|
34
|
+
}
|
|
35
|
+
if (existingReplyOnly)
|
|
36
|
+
throw new Error('没有可确认的完整答复,未重新执行');
|
|
20
37
|
if (!original || !(await this.concerns.activity(companionId)).observations.some(e => e.concernId === concernId && e.fingerprint === original.fingerprint && e.decision !== 'drop'))
|
|
21
38
|
throw new Error('原执行依据已不可用,请重新检查');
|
|
22
39
|
await this.store.update(s => {
|
|
@@ -30,9 +47,11 @@ export class ConcernExecutionDispatcher {
|
|
|
30
47
|
r.status = 'pending';
|
|
31
48
|
r.updatedAt = Date.now();
|
|
32
49
|
delete r.error;
|
|
50
|
+
delete r.resultSummary;
|
|
33
51
|
delete r.reconcileOnly;
|
|
34
52
|
});
|
|
35
53
|
await this.dispatch(companionId);
|
|
54
|
+
return 'queued';
|
|
36
55
|
}
|
|
37
56
|
async dispatch(companionId) {
|
|
38
57
|
if (this.active.has(companionId))
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-execution.js","sourceRoot":"","sources":["../src/concern-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,UAAU,EAAC,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"concern-execution.js","sourceRoot":"","sources":["../src/concern-execution.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,5 +16,5 @@ export interface NoteRecordingBridge {
|
|
|
16
16
|
}
|
|
17
17
|
export declare const HEARTBEAT_RECORD_NOTE = "heartbeat_record_note";
|
|
18
18
|
/** No model-supplied note IDs: targets come only from persisted user selection. */
|
|
19
|
-
export declare function recordingNoteTool(concerns: PartnerConcern[], bridge: () => NoteRecordingBridge | undefined, onWritten?: (concernId: string) => void): ToolDefinition;
|
|
19
|
+
export declare function recordingNoteTool(concerns: PartnerConcern[], bridge: () => NoteRecordingBridge | undefined, onWritten?: (concernId: string) => void, mode?: 'normal' | 'read' | 'sync'): ToolDefinition;
|
|
20
20
|
//# sourceMappingURL=concern-recording.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-recording.d.ts","sourceRoot":"","sources":["../src/concern-recording.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACvF,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9F;AACD,eAAO,MAAM,qBAAqB,0BAA0B,CAAA;AAE5D,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,mBAAmB,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,cAAc,
|
|
1
|
+
{"version":3,"file":"concern-recording.d.ts","sourceRoot":"","sources":["../src/concern-recording.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAC5D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAEzD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAA;IACvF,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAChH,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CAC9F;AACD,eAAO,MAAM,qBAAqB,0BAA0B,CAAA;AAE5D,mFAAmF;AACnF,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,MAAM,mBAAmB,GAAG,SAAS,EAAE,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,EAAE,IAAI,GAAE,QAAQ,GAAG,MAAM,GAAG,MAAiB,GAAG,cAAc,CAmCjN"}
|
package/lib/concern-recording.js
CHANGED
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
export const HEARTBEAT_RECORD_NOTE = 'heartbeat_record_note';
|
|
2
2
|
/** No model-supplied note IDs: targets come only from persisted user selection. */
|
|
3
|
-
export function recordingNoteTool(concerns, bridge, onWritten) {
|
|
3
|
+
export function recordingNoteTool(concerns, bridge, onWritten, mode = 'normal') {
|
|
4
4
|
return {
|
|
5
5
|
name: HEARTBEAT_RECORD_NOTE,
|
|
6
|
-
description: 'Read or update the explicitly selected recording note for a concern. Never writes the source/instruction document. Read paginated content first;
|
|
6
|
+
description: (mode === 'read' ? 'Read-only inspection. Only read is available. ' : mode === 'sync' ? 'Synchronization: read the complete paginated note, then use patch for a unique existing section (oldText + content) or replace for the complete body. No append. Preserve unrelated content. ' : '') + 'Read or update the explicitly selected recording note for a concern. Never writes the source/instruction document. Read paginated content first; use only the operations exposed in this schema; replace only after reading the complete body. Pass the exact revision from read; if changed, reread instead of overwriting. No target means no writes.',
|
|
7
7
|
parameters: { type: 'object', additionalProperties: false, properties: {
|
|
8
|
-
concernId: { type: 'string' }, operation: { type: 'string', enum: ['read', 'append', 'replace'] },
|
|
8
|
+
concernId: { type: 'string' }, operation: { type: 'string', enum: mode === 'read' ? ['read'] : mode === 'sync' ? ['read', 'patch', 'replace'] : ['read', 'append', 'patch', 'replace'] },
|
|
9
|
+
oldText: { type: 'string', description: 'Exact unique existing section to replace; required for patch.' },
|
|
9
10
|
offset: { type: 'integer', minimum: 0 }, content: { type: 'string' }, revision: { type: 'string' },
|
|
10
11
|
}, required: ['concernId', 'operation'] },
|
|
11
12
|
output: { schema: { type: 'string' }, render: (_args, value) => [{ type: 'text', text: String(value) }] },
|
|
12
13
|
async execute(raw, exec) {
|
|
13
14
|
const args = raw;
|
|
15
|
+
if (mode === 'read' && args.operation !== 'read' || mode === 'sync' && args.operation === 'append')
|
|
16
|
+
throw new Error('当前阶段不允许此记录操作,请使用工具列出的操作');
|
|
14
17
|
const concern = concerns.find(item => item.id === args.concernId);
|
|
15
18
|
if (concern?.recordTarget?.kind !== 'note')
|
|
16
19
|
throw new Error('当前关注没有明确选择记录笔记');
|
|
@@ -24,11 +27,17 @@ export function recordingNoteTool(concerns, bridge, onWritten) {
|
|
|
24
27
|
throw new Error('offset 无效');
|
|
25
28
|
return JSON.stringify({ ...current, content: current.content.slice(offset, offset + 6000), nextOffset: offset + 6000 < current.content.length ? offset + 6000 : null, totalChars: current.content.length });
|
|
26
29
|
}
|
|
27
|
-
if (!['append', 'replace'].includes(String(args.operation)) || typeof args.content !== 'string' || args.content.length > 100000)
|
|
30
|
+
if (!['append', 'patch', 'replace'].includes(String(args.operation)) || typeof args.content !== 'string' || args.content.length > 100000)
|
|
28
31
|
throw new Error('记录操作或内容无效');
|
|
29
32
|
if (args.revision !== current.revision)
|
|
30
33
|
throw new Error('记录已变化,请重新读取后再更新');
|
|
31
|
-
|
|
34
|
+
let next = args.operation === 'append' ? current.content + args.content : args.content;
|
|
35
|
+
if (args.operation === 'patch') {
|
|
36
|
+
if (typeof args.oldText !== 'string' || !args.oldText || current.content.split(args.oldText).length !== 2)
|
|
37
|
+
throw new Error('替换片段必须在当前笔记中唯一匹配,请重新读取定位');
|
|
38
|
+
next = current.content.replace(args.oldText, () => args.content);
|
|
39
|
+
}
|
|
40
|
+
const result = await service.update(current.id, next, current.revision, exec.signal);
|
|
32
41
|
onWritten?.(concern.id);
|
|
33
42
|
return JSON.stringify(result);
|
|
34
43
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-recording.js","sourceRoot":"","sources":["../src/concern-recording.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,qBAAqB,GAAG,uBAAuB,CAAA;AAE5D,mFAAmF;AACnF,MAAM,UAAU,iBAAiB,CAAC,QAA0B,EAAE,MAA6C,EAAE,SAAuC;
|
|
1
|
+
{"version":3,"file":"concern-recording.js","sourceRoot":"","sources":["../src/concern-recording.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"concern-store.d.ts","sourceRoot":"","sources":["../src/concern-store.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"concern-store.d.ts","sourceRoot":"","sources":["../src/concern-store.ts"],"names":[],"mappings":"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"}
|
package/lib/concern-store.js
CHANGED
|
@@ -693,7 +693,9 @@ export class PartnerConcernStore {
|
|
|
693
693
|
await this.serialValue(this.path(item.companionId), async () => {
|
|
694
694
|
const db = await this.open(item.companionId);
|
|
695
695
|
try {
|
|
696
|
-
db.prepare('
|
|
696
|
+
const row = db.prepare('SELECT recording_attempts FROM concerns WHERE id=? AND companion_id=?').get(item.id, item.companionId);
|
|
697
|
+
const delayMinutes = Math.min(360, 15 * 2 ** Math.min(5, row?.recording_attempts ?? 0));
|
|
698
|
+
db.prepare('UPDATE concerns SET recording_pending=?, recording_snapshot_json=CASE WHEN ? THEN NULL ELSE recording_snapshot_json END, recording_retry_at=?, recording_attempts=CASE WHEN ? THEN 0 ELSE recording_attempts+1 END WHERE id=? AND companion_id=? AND record_target_json=? AND recording_snapshot_json=?').run(synced ? 0 : 1, synced ? 1 : 0, Date.now() + delayMinutes * 60000, synced ? 1 : 0, item.id, item.companionId, JSON.stringify(item.recordTarget), JSON.stringify(item.recordingSnapshot));
|
|
697
699
|
}
|
|
698
700
|
finally {
|
|
699
701
|
db.close();
|