@tianshu-ai/tianshu 0.3.20 → 0.3.22
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/node_modules/@tianshu-ai/plugin-sdk/dist/manifest.d.ts +19 -0
- package/node_modules/@tianshu-ai/plugin-sdk/dist/manifest.d.ts.map +1 -1
- package/node_modules/@tianshu-ai/plugin-sdk/src/manifest.ts +19 -0
- package/package.json +1 -1
- package/packages/plugin-sdk/dist/manifest.d.ts +19 -0
- package/packages/plugin-sdk/dist/manifest.d.ts.map +1 -1
- package/packages/server/builtinConfig/plugins/files/manifest.json +11 -11
- package/packages/server/builtinConfig/plugins/microsandbox/manifest.json +8 -8
- package/packages/server/builtinConfig/plugins/web-search/manifest.json +1 -1
- package/packages/server/builtinConfig/plugins/workboard/manifest.json +13 -13
- package/packages/server/dist/chat/flush-tool-delta.d.ts +18 -0
- package/packages/server/dist/chat/flush-tool-delta.d.ts.map +1 -0
- package/packages/server/dist/chat/flush-tool-delta.js +132 -0
- package/packages/server/dist/chat/flush-tool-delta.js.map +1 -0
- package/packages/server/dist/chat/handler.d.ts.map +1 -1
- package/packages/server/dist/chat/handler.js +12 -0
- package/packages/server/dist/chat/handler.js.map +1 -1
- package/packages/server/dist/chat/host-tools/tool-catalog-refresh.d.ts +19 -0
- package/packages/server/dist/chat/host-tools/tool-catalog-refresh.d.ts.map +1 -0
- package/packages/server/dist/chat/host-tools/tool-catalog-refresh.js +205 -0
- package/packages/server/dist/chat/host-tools/tool-catalog-refresh.js.map +1 -0
- package/packages/server/dist/chat/messages.d.ts.map +1 -1
- package/packages/server/dist/chat/messages.js +12 -3
- package/packages/server/dist/chat/messages.js.map +1 -1
- package/packages/server/dist/chat/tool-delta.d.ts +56 -0
- package/packages/server/dist/chat/tool-delta.d.ts.map +1 -0
- package/packages/server/dist/chat/tool-delta.js +141 -0
- package/packages/server/dist/chat/tool-delta.js.map +1 -0
- package/packages/server/dist/core/migrations/009-session-app-version.d.ts +4 -0
- package/packages/server/dist/core/migrations/009-session-app-version.d.ts.map +1 -0
- package/packages/server/dist/core/migrations/009-session-app-version.js +38 -0
- package/packages/server/dist/core/migrations/009-session-app-version.js.map +1 -0
- package/packages/server/dist/core/migrations/index.d.ts.map +1 -1
- package/packages/server/dist/core/migrations/index.js +2 -0
- package/packages/server/dist/core/migrations/index.js.map +1 -1
- package/packages/server/dist/core/plugins/registry.d.ts +46 -0
- package/packages/server/dist/core/plugins/registry.d.ts.map +1 -1
- package/packages/server/dist/core/plugins/registry.js +52 -0
- package/packages/server/dist/core/plugins/registry.js.map +1 -1
- package/packages/server/dist/index.js +20 -0
- package/packages/server/dist/index.js.map +1 -1
- package/packages/web/dist/assets/{index-xU4lYYqY.css → index-Cs0x5xVe.css} +1 -1
- package/packages/web/dist/assets/{index-CEIw68Su.js → index-DIiIMU7-.js} +2 -2
- package/packages/web/dist/index.html +2 -2
- package/plugins/files/manifest.json +11 -11
- package/plugins/microsandbox/manifest.json +8 -8
- package/plugins/web-search/manifest.json +1 -1
- package/plugins/workboard/dist/worker/tool-policy.d.ts.map +1 -1
- package/plugins/workboard/dist/worker/tool-policy.js +4 -0
- package/plugins/workboard/dist/worker/tool-policy.js.map +1 -1
- package/plugins/workboard/manifest.json +13 -13
|
@@ -277,6 +277,25 @@ export interface ToolContribution {
|
|
|
277
277
|
* pi-ai schema, not here — we don't enforce a 1:1 between this
|
|
278
278
|
* contribution id and the schema name. */
|
|
279
279
|
module: string;
|
|
280
|
+
/**
|
|
281
|
+
* Semver string marking the release this tool first appeared in.
|
|
282
|
+
*
|
|
283
|
+
* Currently interpreted as a **tianshu app version** (the host's
|
|
284
|
+
* `package.json/version`). The boot-time tool-delta detector
|
|
285
|
+
* uses this to push a synthetic system message into any session
|
|
286
|
+
* whose `created_under_app_version` predates a tool's `since`,
|
|
287
|
+
* so the agent learns about newly-available tools across
|
|
288
|
+
* server restarts.
|
|
289
|
+
*
|
|
290
|
+
* v1 marketplace target: re-interpret as the plugin's own
|
|
291
|
+
* `manifest.version` (per-plugin granularity). The field name
|
|
292
|
+
* stays; only the comparison reference changes.
|
|
293
|
+
*
|
|
294
|
+
* Required for builtin plugins (manifest-hygiene tests pin
|
|
295
|
+
* this). Optional for third-party plugins during the v0
|
|
296
|
+
* transition — absent means "assume it has existed forever".
|
|
297
|
+
*/
|
|
298
|
+
since?: string;
|
|
280
299
|
}
|
|
281
300
|
export interface ToolsetContribution {
|
|
282
301
|
/** Local id, surfaced in the admin MCP servers view + plugin
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -299,6 +299,25 @@ export interface ToolContribution {
|
|
|
299
299
|
* pi-ai schema, not here — we don't enforce a 1:1 between this
|
|
300
300
|
* contribution id and the schema name. */
|
|
301
301
|
module: string;
|
|
302
|
+
/**
|
|
303
|
+
* Semver string marking the release this tool first appeared in.
|
|
304
|
+
*
|
|
305
|
+
* Currently interpreted as a **tianshu app version** (the host's
|
|
306
|
+
* `package.json/version`). The boot-time tool-delta detector
|
|
307
|
+
* uses this to push a synthetic system message into any session
|
|
308
|
+
* whose `created_under_app_version` predates a tool's `since`,
|
|
309
|
+
* so the agent learns about newly-available tools across
|
|
310
|
+
* server restarts.
|
|
311
|
+
*
|
|
312
|
+
* v1 marketplace target: re-interpret as the plugin's own
|
|
313
|
+
* `manifest.version` (per-plugin granularity). The field name
|
|
314
|
+
* stays; only the comparison reference changes.
|
|
315
|
+
*
|
|
316
|
+
* Required for builtin plugins (manifest-hygiene tests pin
|
|
317
|
+
* this). Optional for third-party plugins during the v0
|
|
318
|
+
* transition — absent means "assume it has existed forever".
|
|
319
|
+
*/
|
|
320
|
+
since?: string;
|
|
302
321
|
}
|
|
303
322
|
|
|
304
323
|
export interface ToolsetContribution {
|
package/package.json
CHANGED
|
@@ -277,6 +277,25 @@ export interface ToolContribution {
|
|
|
277
277
|
* pi-ai schema, not here — we don't enforce a 1:1 between this
|
|
278
278
|
* contribution id and the schema name. */
|
|
279
279
|
module: string;
|
|
280
|
+
/**
|
|
281
|
+
* Semver string marking the release this tool first appeared in.
|
|
282
|
+
*
|
|
283
|
+
* Currently interpreted as a **tianshu app version** (the host's
|
|
284
|
+
* `package.json/version`). The boot-time tool-delta detector
|
|
285
|
+
* uses this to push a synthetic system message into any session
|
|
286
|
+
* whose `created_under_app_version` predates a tool's `since`,
|
|
287
|
+
* so the agent learns about newly-available tools across
|
|
288
|
+
* server restarts.
|
|
289
|
+
*
|
|
290
|
+
* v1 marketplace target: re-interpret as the plugin's own
|
|
291
|
+
* `manifest.version` (per-plugin granularity). The field name
|
|
292
|
+
* stays; only the comparison reference changes.
|
|
293
|
+
*
|
|
294
|
+
* Required for builtin plugins (manifest-hygiene tests pin
|
|
295
|
+
* this). Optional for third-party plugins during the v0
|
|
296
|
+
* transition — absent means "assume it has existed forever".
|
|
297
|
+
*/
|
|
298
|
+
since?: string;
|
|
280
299
|
}
|
|
281
300
|
export interface ToolsetContribution {
|
|
282
301
|
/** Local id, surfaced in the admin MCP servers view + plugin
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../src/manifest.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,17 +55,17 @@
|
|
|
55
55
|
{ "method": "POST", "path": "/upload", "handler": "upload" }
|
|
56
56
|
],
|
|
57
57
|
"tools": [
|
|
58
|
-
{ "id": "list_dir", "module": "ListDirTool"
|
|
59
|
-
{ "id": "read_file", "module": "ReadFileTool"
|
|
60
|
-
{ "id": "write_file", "module": "WriteFileTool"
|
|
61
|
-
{ "id": "edit_file", "module": "EditFileTool"
|
|
62
|
-
{ "id": "glob", "module": "GlobTool"
|
|
63
|
-
{ "id": "tenant_config_list", "module": "TenantConfigListTool"
|
|
64
|
-
{ "id": "tenant_config_read", "module": "TenantConfigReadTool"
|
|
65
|
-
{ "id": "tenant_config_write", "module": "TenantConfigWriteTool"
|
|
66
|
-
{ "id": "tenant_config_edit", "module": "TenantConfigEditTool"
|
|
67
|
-
{ "id": "tenant_config_delete", "module": "TenantConfigDeleteTool" },
|
|
68
|
-
{ "id": "tenant_config_glob", "module": "TenantConfigGlobTool"
|
|
58
|
+
{ "id": "list_dir", "module": "ListDirTool", "since": "0.1.0" },
|
|
59
|
+
{ "id": "read_file", "module": "ReadFileTool", "since": "0.1.0" },
|
|
60
|
+
{ "id": "write_file", "module": "WriteFileTool", "since": "0.1.0" },
|
|
61
|
+
{ "id": "edit_file", "module": "EditFileTool", "since": "0.1.0" },
|
|
62
|
+
{ "id": "glob", "module": "GlobTool", "since": "0.1.0" },
|
|
63
|
+
{ "id": "tenant_config_list", "module": "TenantConfigListTool", "since": "0.1.0" },
|
|
64
|
+
{ "id": "tenant_config_read", "module": "TenantConfigReadTool", "since": "0.1.0" },
|
|
65
|
+
{ "id": "tenant_config_write", "module": "TenantConfigWriteTool", "since": "0.1.0" },
|
|
66
|
+
{ "id": "tenant_config_edit", "module": "TenantConfigEditTool", "since": "0.1.0" },
|
|
67
|
+
{ "id": "tenant_config_delete", "module": "TenantConfigDeleteTool", "since": "0.1.0" },
|
|
68
|
+
{ "id": "tenant_config_glob", "module": "TenantConfigGlobTool", "since": "0.1.0" }
|
|
69
69
|
],
|
|
70
70
|
"skills": [
|
|
71
71
|
{ "id": "workspace-layout", "path": "skills/files-workspace-layout.md" }
|
|
@@ -45,14 +45,14 @@
|
|
|
45
45
|
}
|
|
46
46
|
],
|
|
47
47
|
"tools": [
|
|
48
|
-
{ "id": "exec", "module": "ExecTool" },
|
|
49
|
-
{ "id": "reset_sandbox", "module": "ResetSandboxTool" },
|
|
50
|
-
{ "id": "get_sandbox_status", "module": "GetSandboxStatusTool" },
|
|
51
|
-
{ "id": "update_sandbox_config", "module": "UpdateSandboxConfigTool" },
|
|
52
|
-
{ "id": "build_sandbox", "module": "BuildSandboxTool" },
|
|
53
|
-
{ "id": "list_sandbox_builds", "module": "ListSandboxBuildsTool" },
|
|
54
|
-
{ "id": "use_sandbox_build", "module": "UseSandboxBuildTool" },
|
|
55
|
-
{ "id": "browser_health_check", "module": "BrowserHealthCheckTool" }
|
|
48
|
+
{ "id": "exec", "module": "ExecTool", "since": "0.1.0" },
|
|
49
|
+
{ "id": "reset_sandbox", "module": "ResetSandboxTool", "since": "0.1.0" },
|
|
50
|
+
{ "id": "get_sandbox_status", "module": "GetSandboxStatusTool", "since": "0.1.0" },
|
|
51
|
+
{ "id": "update_sandbox_config", "module": "UpdateSandboxConfigTool", "since": "0.1.0" },
|
|
52
|
+
{ "id": "build_sandbox", "module": "BuildSandboxTool", "since": "0.1.0" },
|
|
53
|
+
{ "id": "list_sandbox_builds", "module": "ListSandboxBuildsTool", "since": "0.1.0" },
|
|
54
|
+
{ "id": "use_sandbox_build", "module": "UseSandboxBuildTool", "since": "0.1.0" },
|
|
55
|
+
{ "id": "browser_health_check", "module": "BrowserHealthCheckTool", "since": "0.1.0" }
|
|
56
56
|
],
|
|
57
57
|
"toolsets": [
|
|
58
58
|
{ "id": "browser", "module": "BrowserToolset", "displayName": "Playwright (Browser)" }
|
|
@@ -45,19 +45,19 @@
|
|
|
45
45
|
}
|
|
46
46
|
],
|
|
47
47
|
"tools": [
|
|
48
|
-
{ "id": "task_list", "module": "TaskListTool"
|
|
49
|
-
{ "id": "task_create", "module": "TaskCreateTool"
|
|
50
|
-
{ "id": "task_update", "module": "TaskUpdateTool"
|
|
51
|
-
{ "id": "task_move", "module": "TaskMoveTool"
|
|
52
|
-
{ "id": "task_delete", "module": "TaskDeleteTool"
|
|
53
|
-
{ "id": "task_get_history", "module": "TaskGetHistoryTool"
|
|
54
|
-
{ "id": "task_complete", "module": "TaskCompleteTool"
|
|
55
|
-
{ "id": "task_continue", "module": "TaskContinueTool"
|
|
56
|
-
{ "id": "task_retry_fresh", "module": "TaskRetryFreshTool"
|
|
57
|
-
{ "id": "task_extend_timeout", "module": "TaskExtendTimeoutTool"
|
|
58
|
-
{ "id": "task_abort", "module": "TaskAbortTool"
|
|
59
|
-
{ "id": "model_list", "module": "ModelListTool"
|
|
60
|
-
{ "id": "worker_analytics", "module": "WorkerAnalyticsTool"
|
|
48
|
+
{ "id": "task_list", "module": "TaskListTool", "since": "0.1.0" },
|
|
49
|
+
{ "id": "task_create", "module": "TaskCreateTool", "since": "0.1.0" },
|
|
50
|
+
{ "id": "task_update", "module": "TaskUpdateTool", "since": "0.1.0" },
|
|
51
|
+
{ "id": "task_move", "module": "TaskMoveTool", "since": "0.1.0" },
|
|
52
|
+
{ "id": "task_delete", "module": "TaskDeleteTool", "since": "0.1.0" },
|
|
53
|
+
{ "id": "task_get_history", "module": "TaskGetHistoryTool", "since": "0.1.0" },
|
|
54
|
+
{ "id": "task_complete", "module": "TaskCompleteTool", "since": "0.1.0" },
|
|
55
|
+
{ "id": "task_continue", "module": "TaskContinueTool", "since": "0.1.0" },
|
|
56
|
+
{ "id": "task_retry_fresh", "module": "TaskRetryFreshTool", "since": "0.1.0" },
|
|
57
|
+
{ "id": "task_extend_timeout", "module": "TaskExtendTimeoutTool", "since": "0.1.0" },
|
|
58
|
+
{ "id": "task_abort", "module": "TaskAbortTool", "since": "0.1.0" },
|
|
59
|
+
{ "id": "model_list", "module": "ModelListTool", "since": "0.1.0" },
|
|
60
|
+
{ "id": "worker_analytics", "module": "WorkerAnalyticsTool", "since": "0.3.20" }
|
|
61
61
|
],
|
|
62
62
|
"skills": [
|
|
63
63
|
{ "id": "workboard-howto", "path": "skills/workboard-howto.md" },
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { TenantContext } from "../core/index.js";
|
|
2
|
+
import type { PluginRegistry } from "../core/plugins/registry.js";
|
|
3
|
+
import { type ChatSession } from "./messages.js";
|
|
4
|
+
interface FlushOpts {
|
|
5
|
+
ctx: TenantContext;
|
|
6
|
+
session: ChatSession;
|
|
7
|
+
pluginRegistry?: PluginRegistry;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Side-effecting flush: returns true iff a note was appended.
|
|
11
|
+
*
|
|
12
|
+
* Failure modes are best-effort: we never want a tool-delta hiccup
|
|
13
|
+
* to block the user's prompt from running. Every error path logs
|
|
14
|
+
* and returns false, letting the caller proceed normally.
|
|
15
|
+
*/
|
|
16
|
+
export declare function flushToolDeltaForSession(opts: FlushOpts): boolean;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=flush-tool-delta.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flush-tool-delta.d.ts","sourceRoot":"","sources":["../../src/chat/flush-tool-delta.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAElE,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,eAAe,CAAC;AAOhE,UAAU,SAAS;IACjB,GAAG,EAAE,aAAa,CAAC;IACnB,OAAO,EAAE,WAAW,CAAC;IACrB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAiCD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,OAAO,CAwGjE"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// Per-prompt tool-delta flush.
|
|
2
|
+
//
|
|
3
|
+
// Called once at the top of every `runPrompt` turn before we
|
|
4
|
+
// build the system prompt + toolset. If the session was opened
|
|
5
|
+
// under an older app version and there are tools whose `since`
|
|
6
|
+
// post-dates that stamp, we drop a synthetic `role: "user"`
|
|
7
|
+
// system note into the session so the model's history reflects
|
|
8
|
+
// the change. After the note is appended we bump the session's
|
|
9
|
+
// stamp to the current version so the same note doesn't fire
|
|
10
|
+
// again on the next turn.
|
|
11
|
+
//
|
|
12
|
+
// Why per-prompt and not on server boot:
|
|
13
|
+
// - boot would require enumerating every active session in
|
|
14
|
+
// every tenant + activating every tenant's plugin registry
|
|
15
|
+
// up-front; per-prompt is naturally lazy
|
|
16
|
+
// - no risk of writing notifications nobody ever reads
|
|
17
|
+
// - the model sees the note on the very turn it would have
|
|
18
|
+
// needed the new tool, not "next time you come back"
|
|
19
|
+
import { getPackageVersion } from "../setup/repo-root.js";
|
|
20
|
+
import { appendMessage } from "./messages.js";
|
|
21
|
+
import { computeSessionToolDeltas, renderToolDeltaNote, } from "./tool-delta.js";
|
|
22
|
+
/** Look up the stamped version. Separate from session loading so we
|
|
23
|
+
* don't have to thread an extra field through every ChatSession
|
|
24
|
+
* consumer; the column is only relevant to this code path. */
|
|
25
|
+
function readSessionAppVersion(ctx, sessionId) {
|
|
26
|
+
const row = ctx.db
|
|
27
|
+
.prepare(`SELECT created_under_app_version FROM sessions WHERE id = ?`)
|
|
28
|
+
.get(sessionId);
|
|
29
|
+
return row?.created_under_app_version ?? null;
|
|
30
|
+
}
|
|
31
|
+
function bumpSessionAppVersion(ctx, sessionId, version) {
|
|
32
|
+
ctx.db
|
|
33
|
+
.prepare(`UPDATE sessions SET created_under_app_version = ? WHERE id = ?`)
|
|
34
|
+
.run(version, sessionId);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Side-effecting flush: returns true iff a note was appended.
|
|
38
|
+
*
|
|
39
|
+
* Failure modes are best-effort: we never want a tool-delta hiccup
|
|
40
|
+
* to block the user's prompt from running. Every error path logs
|
|
41
|
+
* and returns false, letting the caller proceed normally.
|
|
42
|
+
*/
|
|
43
|
+
export function flushToolDeltaForSession(opts) {
|
|
44
|
+
const { ctx, session, pluginRegistry } = opts;
|
|
45
|
+
// Only user-facing sessions get the note. Worker sessions are
|
|
46
|
+
// ephemeral per task and rebuild context from scratch each run.
|
|
47
|
+
if (session.kind !== "user")
|
|
48
|
+
return false;
|
|
49
|
+
const currentVersion = getPackageVersion();
|
|
50
|
+
if (!currentVersion)
|
|
51
|
+
return false;
|
|
52
|
+
let stamped;
|
|
53
|
+
try {
|
|
54
|
+
stamped = readSessionAppVersion(ctx, session.id);
|
|
55
|
+
}
|
|
56
|
+
catch (err) {
|
|
57
|
+
console.warn(`[flush-tool-delta] read failed for ${session.id}: ${err instanceof Error ? err.message : String(err)}`);
|
|
58
|
+
return false;
|
|
59
|
+
}
|
|
60
|
+
// Pre-009 sessions (NULL stamp): claim them as "current" without
|
|
61
|
+
// a notification so successive restarts don't keep re-checking.
|
|
62
|
+
if (stamped == null) {
|
|
63
|
+
try {
|
|
64
|
+
bumpSessionAppVersion(ctx, session.id, currentVersion);
|
|
65
|
+
}
|
|
66
|
+
catch (err) {
|
|
67
|
+
// non-fatal
|
|
68
|
+
console.warn(`[flush-tool-delta] bump (null path) failed for ${session.id}: ${err instanceof Error ? err.message : String(err)}`);
|
|
69
|
+
}
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
if (stamped === currentVersion)
|
|
73
|
+
return false;
|
|
74
|
+
// Catalog comes straight from the plugin registry. No registry
|
|
75
|
+
// (e.g. tests that don't pass one) → no notification.
|
|
76
|
+
if (!pluginRegistry)
|
|
77
|
+
return false;
|
|
78
|
+
let catalog = [];
|
|
79
|
+
try {
|
|
80
|
+
catalog = pluginRegistry
|
|
81
|
+
.toolCatalogForTenant(ctx.tenantId)
|
|
82
|
+
.map((c) => ({
|
|
83
|
+
toolName: c.toolName,
|
|
84
|
+
pluginId: c.pluginId,
|
|
85
|
+
since: c.since,
|
|
86
|
+
description: c.description,
|
|
87
|
+
}));
|
|
88
|
+
}
|
|
89
|
+
catch (err) {
|
|
90
|
+
console.warn(`[flush-tool-delta] catalog read failed: ${err instanceof Error ? err.message : String(err)}`);
|
|
91
|
+
return false;
|
|
92
|
+
}
|
|
93
|
+
if (catalog.length === 0)
|
|
94
|
+
return false;
|
|
95
|
+
const deltas = computeSessionToolDeltas({
|
|
96
|
+
currentVersion,
|
|
97
|
+
catalog,
|
|
98
|
+
sessions: [
|
|
99
|
+
{ sessionId: session.id, createdUnderAppVersion: stamped },
|
|
100
|
+
],
|
|
101
|
+
});
|
|
102
|
+
const delta = deltas[0];
|
|
103
|
+
if (!delta || delta.newTools.length === 0) {
|
|
104
|
+
// No new-since-stamp tools; just bump so we don't compute this
|
|
105
|
+
// again on the next turn.
|
|
106
|
+
try {
|
|
107
|
+
bumpSessionAppVersion(ctx, session.id, currentVersion);
|
|
108
|
+
}
|
|
109
|
+
catch (err) {
|
|
110
|
+
console.warn(`[flush-tool-delta] bump (empty-delta path) failed for ${session.id}: ${err instanceof Error ? err.message : String(err)}`);
|
|
111
|
+
}
|
|
112
|
+
return false;
|
|
113
|
+
}
|
|
114
|
+
const text = renderToolDeltaNote({
|
|
115
|
+
fromVersion: stamped,
|
|
116
|
+
toVersion: currentVersion,
|
|
117
|
+
newTools: delta.newTools,
|
|
118
|
+
});
|
|
119
|
+
try {
|
|
120
|
+
// Same `role: "user"` convention `renderPluginsChangedNote`
|
|
121
|
+
// uses (see index.ts onPluginsChanged) so the rehydrated
|
|
122
|
+
// history treats it as a real turn the model will read.
|
|
123
|
+
appendMessage(ctx, session, { role: "user", content: text });
|
|
124
|
+
bumpSessionAppVersion(ctx, session.id, currentVersion);
|
|
125
|
+
}
|
|
126
|
+
catch (err) {
|
|
127
|
+
console.warn(`[flush-tool-delta] append/bump failed for ${session.id}: ${err instanceof Error ? err.message : String(err)}`);
|
|
128
|
+
return false;
|
|
129
|
+
}
|
|
130
|
+
return true;
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=flush-tool-delta.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"flush-tool-delta.js","sourceRoot":"","sources":["../../src/chat/flush-tool-delta.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/chat/handler.ts"],"names":[],"mappings":"AAoBA,OAAO,EACL,YAAY,EAEZ,OAAO,IAAI,SAAS,EAMpB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACtB,MAAM,+BAA+B,CAAC;AAYvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AACpC,OAAO,EAML,KAAK,aAAa,EACnB,MAAM,kBAAkB,CAAC;AAgB1B,OAAO,EAGL,KAAK,WAAW,EACjB,MAAM,2BAA2B,CAAC;AAGnC,OAAO,EAKL,KAAK,WAAW,EAEjB,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../src/chat/handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,6 +34,7 @@ import { filterSkillsForTenant, loadSkillsForPlugin, } from "../core/plugins/ski
|
|
|
34
34
|
import { loadTenantSkills } from "../core/tenant-skills.js";
|
|
35
35
|
import { fileURLToPath } from "node:url";
|
|
36
36
|
import { ensureActiveSession, listMessagesForUserPage, loadAgentHistoryForSession, } from "./messages.js";
|
|
37
|
+
import { flushToolDeltaForSession } from "./flush-tool-delta.js";
|
|
37
38
|
import { CompactSkippedError, compactSession } from "./compact.js";
|
|
38
39
|
import { toWire, } from "./ws-protocol.js";
|
|
39
40
|
import { cacheGet, cachePut, fitToLimit, imageFitCacheKey, } from "./image-fit.js";
|
|
@@ -149,6 +150,17 @@ export async function runPrompt(args) {
|
|
|
149
150
|
const wireOpts = makeWireOpts(ctx);
|
|
150
151
|
const repo = new SqliteSessionRepo(ctx);
|
|
151
152
|
let session = ensureActiveSession(ctx, userId);
|
|
153
|
+
// Per-prompt tool-delta flush: if the host upgraded since this
|
|
154
|
+
// session was opened and there are new builtin tools, drop a
|
|
155
|
+
// synthetic system note into the session before we build the
|
|
156
|
+
// model's history. See chat/flush-tool-delta.ts. Errors there
|
|
157
|
+
// are best-effort — a failure here must never block the prompt.
|
|
158
|
+
try {
|
|
159
|
+
flushToolDeltaForSession({ ctx, session, pluginRegistry });
|
|
160
|
+
}
|
|
161
|
+
catch (err) {
|
|
162
|
+
console.warn(`[flush-tool-delta] unexpected throw: ${err instanceof Error ? err.message : String(err)}`);
|
|
163
|
+
}
|
|
152
164
|
// Resolve the model up front — we need imageMaxBytes / context
|
|
153
165
|
// window for both auto-compact and the LLM call below.
|
|
154
166
|
const modelInfo = (modelId ? findModel(ctx.config, modelId) : undefined) ?? getDefaultModel(ctx.config);
|