arisa 5.1.49 → 5.1.64
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/AGENTS.md +0 -2
- package/README.md +9 -0
- package/package.json +1 -1
- package/src/core/agent/agent-manager.js +49 -489
- package/src/core/agent/agent-session-lifecycle.js +181 -0
- package/src/core/agent/pi-capability-tools.js +183 -0
- package/src/core/artifacts/artifact-store.js +73 -17
- package/src/core/capabilities/capability-service.js +340 -0
- package/src/core/config/config-defaults.js +28 -1
- package/src/core/tasks/task-routing.js +7 -0
- package/src/core/tasks/task-runner.js +68 -0
- package/src/core/tasks/task-store.js +382 -92
- package/src/core/tools/tool-output-materializer.js +5 -5
- package/src/core/tools/tool-registry.js +20 -5
- package/src/core/tools/weighted-resource-governor.js +153 -0
- package/src/index.js +20 -0
- package/src/official-tools.lock.json +62 -45
- package/src/runtime/arisa-capabilities.js +51 -242
- package/src/runtime/create-app.js +11 -2
- package/src/runtime/create-headless-app.js +7 -4
- package/src/runtime/paths.js +4 -0
- package/src/runtime/service-manager.js +3 -1
- package/src/runtime/service-supervisor.js +98 -0
- package/src/transport/telegram/bot.js +186 -374
- package/src/transport/telegram/chat-queue.js +83 -6
- package/src/transport/telegram/prompt-builders.js +9 -0
- package/src/transport/telegram/reply-topic-routing.js +111 -0
- package/src/transport/telegram/task-dispatcher.js +96 -36
- package/src/transport/telegram/telegram-auth-controller.js +180 -0
- package/src/transport/telegram/telegram-session-bridge.js +177 -0
- package/src/transport/telegram/telegram-tools-command.js +28 -0
- package/src/transport/telegram/telegram-workspace-controller.js +66 -0
- package/src/transport/telegram/workspace-topic-store.js +228 -0
- package/test/agent-session-lifecycle.test.js +58 -0
- package/test/artifact-store.test.js +38 -2
- package/test/capabilities-security.test.js +58 -0
- package/test/chat-queue.test.js +32 -0
- package/test/context-and-task-bounds.test.js +76 -1
- package/test/device-code-message.test.js +9 -0
- package/test/media-caption.test.js +1 -1
- package/test/model-selection.test.js +9 -1
- package/test/official-tool-dependencies.test.js +1 -1
- package/test/paths.test.js +8 -0
- package/test/pi-capability-tools.test.js +65 -0
- package/test/service-manager.test.js +48 -0
- package/test/session-start-operational-notes.test.js +1 -1
- package/test/task-idempotency.test.js +40 -0
- package/test/task-routing.test.js +62 -0
- package/test/task-store.test.js +231 -7
- package/test/telegram-reply-topic-routing.test.js +94 -0
- package/test/telegram-task-dispatcher.test.js +150 -23
- package/test/telegram-text-artifact.test.js +13 -2
- package/test/telegram-tools-command.test.js +47 -0
- package/test/telegram-workspace-topic-store.test.js +124 -0
- package/test/tool-registry-run.test.js +41 -0
- package/test/weighted-resource-governor.test.js +95 -0
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
const defaultCapacity = 2;
|
|
2
|
+
const defaultMaxQueuedPerClass = 100;
|
|
3
|
+
|
|
4
|
+
function positiveInteger(value, fallback) {
|
|
5
|
+
const parsed = Number(value);
|
|
6
|
+
return Number.isSafeInteger(parsed) && parsed > 0 ? parsed : fallback;
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
function resourceClassName(value) {
|
|
10
|
+
const name = String(value || "").trim();
|
|
11
|
+
if (!name) return "";
|
|
12
|
+
if (!/^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/.test(name)) {
|
|
13
|
+
throw new Error(`Invalid tool execution resource class: ${name}`);
|
|
14
|
+
}
|
|
15
|
+
return name;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export function normalizeToolExecution(execution) {
|
|
19
|
+
if (execution == null) return null;
|
|
20
|
+
if (!execution || typeof execution !== "object" || Array.isArray(execution)) {
|
|
21
|
+
throw new Error("Tool execution policy must be an object");
|
|
22
|
+
}
|
|
23
|
+
const resourceClass = resourceClassName(execution.resourceClass);
|
|
24
|
+
if (!resourceClass) throw new Error("Tool execution resourceClass is required");
|
|
25
|
+
const weight = positiveInteger(execution.weight, 0);
|
|
26
|
+
if (!weight) throw new Error("Tool execution weight must be a positive integer");
|
|
27
|
+
return { resourceClass, weight };
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
export function normalizeToolExecutionPolicy(policy = {}) {
|
|
31
|
+
const configuredCapacities = policy?.capacities && typeof policy.capacities === "object" && !Array.isArray(policy.capacities)
|
|
32
|
+
? policy.capacities
|
|
33
|
+
: {};
|
|
34
|
+
const capacities = {};
|
|
35
|
+
for (const [name, value] of Object.entries(configuredCapacities)) {
|
|
36
|
+
capacities[resourceClassName(name)] = positiveInteger(value, defaultCapacity);
|
|
37
|
+
}
|
|
38
|
+
return {
|
|
39
|
+
defaultCapacity: positiveInteger(policy?.defaultCapacity, defaultCapacity),
|
|
40
|
+
maxQueuedPerClass: positiveInteger(policy?.maxQueuedPerClass, defaultMaxQueuedPerClass),
|
|
41
|
+
capacities
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
function noopLease() {
|
|
46
|
+
return { waitedMs: 0, release() {} };
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export class WeightedResourceGovernor {
|
|
50
|
+
constructor({ policy, logger, now = () => Date.now(), memoryUsage = () => process.memoryUsage() } = {}) {
|
|
51
|
+
this.policy = normalizeToolExecutionPolicy(policy);
|
|
52
|
+
this.logger = logger;
|
|
53
|
+
this.now = now;
|
|
54
|
+
this.memoryUsage = memoryUsage;
|
|
55
|
+
this.resources = new Map();
|
|
56
|
+
this.peakRssBytes = 0;
|
|
57
|
+
this.lastLoggedRssBytes = 0;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
capacityFor(resourceClass) {
|
|
61
|
+
return this.policy.capacities[resourceClass] || this.policy.defaultCapacity;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
stateFor(resourceClass) {
|
|
65
|
+
let state = this.resources.get(resourceClass);
|
|
66
|
+
if (!state) {
|
|
67
|
+
state = { activeWeight: 0, queue: [] };
|
|
68
|
+
this.resources.set(resourceClass, state);
|
|
69
|
+
}
|
|
70
|
+
return state;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
observeMemory(resourceClass) {
|
|
74
|
+
const rss = Number(this.memoryUsage()?.rss) || 0;
|
|
75
|
+
if (rss <= this.peakRssBytes) return;
|
|
76
|
+
this.peakRssBytes = rss;
|
|
77
|
+
const logStepBytes = 8 * 1024 * 1024;
|
|
78
|
+
if (this.lastLoggedRssBytes && rss - this.lastLoggedRssBytes < logStepBytes) return;
|
|
79
|
+
this.lastLoggedRssBytes = rss;
|
|
80
|
+
this.logger?.log("tools", `worker RSS peak ${Math.ceil(rss / 1024 / 1024)} MiB while using ${resourceClass}`);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
createLease(resourceClass, weight, waitedMs) {
|
|
84
|
+
let released = false;
|
|
85
|
+
return {
|
|
86
|
+
waitedMs,
|
|
87
|
+
release: () => {
|
|
88
|
+
if (released) return;
|
|
89
|
+
released = true;
|
|
90
|
+
const state = this.stateFor(resourceClass);
|
|
91
|
+
state.activeWeight = Math.max(0, state.activeWeight - weight);
|
|
92
|
+
this.observeMemory(resourceClass);
|
|
93
|
+
this.drain(resourceClass);
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
grant(resourceClass, request) {
|
|
99
|
+
const state = this.stateFor(resourceClass);
|
|
100
|
+
state.activeWeight += request.weight;
|
|
101
|
+
const waitedMs = Math.max(0, this.now() - request.queuedAt);
|
|
102
|
+
this.observeMemory(resourceClass);
|
|
103
|
+
if (waitedMs > 0) {
|
|
104
|
+
this.logger?.log("tools", `${request.label} acquired ${resourceClass} capacity after ${waitedMs}ms`);
|
|
105
|
+
}
|
|
106
|
+
request.resolve(this.createLease(resourceClass, request.weight, waitedMs));
|
|
107
|
+
}
|
|
108
|
+
|
|
109
|
+
drain(resourceClass) {
|
|
110
|
+
const state = this.stateFor(resourceClass);
|
|
111
|
+
const capacity = this.capacityFor(resourceClass);
|
|
112
|
+
while (state.queue.length) {
|
|
113
|
+
const next = state.queue[0];
|
|
114
|
+
if (state.activeWeight + next.weight > capacity) break;
|
|
115
|
+
state.queue.shift();
|
|
116
|
+
this.grant(resourceClass, next);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
acquire(execution, label = "tool") {
|
|
121
|
+
if (!execution) return Promise.resolve(noopLease());
|
|
122
|
+
const resourceClass = execution.resourceClass;
|
|
123
|
+
const capacity = this.capacityFor(resourceClass);
|
|
124
|
+
const weight = Math.min(execution.weight, capacity);
|
|
125
|
+
const state = this.stateFor(resourceClass);
|
|
126
|
+
if (!state.queue.length && state.activeWeight + weight <= capacity) {
|
|
127
|
+
return new Promise((resolve) => this.grant(resourceClass, {
|
|
128
|
+
weight,
|
|
129
|
+
label,
|
|
130
|
+
queuedAt: this.now(),
|
|
131
|
+
resolve
|
|
132
|
+
}));
|
|
133
|
+
}
|
|
134
|
+
if (state.queue.length >= this.policy.maxQueuedPerClass) {
|
|
135
|
+
throw new Error(`Tool execution queue is full for resource class ${resourceClass}`);
|
|
136
|
+
}
|
|
137
|
+
this.logger?.log("tools", `${label} queued for ${resourceClass} capacity (${state.activeWeight}/${capacity})`);
|
|
138
|
+
return new Promise((resolve) => {
|
|
139
|
+
state.queue.push({ weight, label, queuedAt: this.now(), resolve });
|
|
140
|
+
});
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
snapshot() {
|
|
144
|
+
return {
|
|
145
|
+
peakRssBytes: this.peakRssBytes,
|
|
146
|
+
resources: Object.fromEntries([...this.resources.entries()].map(([name, state]) => [name, {
|
|
147
|
+
capacity: this.capacityFor(name),
|
|
148
|
+
activeWeight: state.activeWeight,
|
|
149
|
+
queued: state.queue.length
|
|
150
|
+
}]))
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
}
|
package/src/index.js
CHANGED
|
@@ -5,6 +5,7 @@ import { applyRuntimeOverrides, createApp } from "./runtime/create-app.js";
|
|
|
5
5
|
import { loadConfig } from "./core/config/config-store.js";
|
|
6
6
|
import { createLogger } from "./runtime/logger.js";
|
|
7
7
|
import { getServiceStatus, handoffServiceRestart, registerServiceProcess, restartService, serviceEntryFile, startService, stopService, unregisterServiceProcess } from "./runtime/service-manager.js";
|
|
8
|
+
import { createServiceSupervisor } from "./runtime/service-supervisor.js";
|
|
8
9
|
import { flushArisaHome } from "./runtime/flush.js";
|
|
9
10
|
import { readPackageVersion, showServiceLogs } from "./runtime/log-viewer.js";
|
|
10
11
|
import { arisaPackageDir } from "./runtime/paths.js";
|
|
@@ -19,6 +20,7 @@ const command = cli.positionals[0] || "run";
|
|
|
19
20
|
const forceBootstrap = Boolean(cli.flags.bootstrap);
|
|
20
21
|
const verbose = !cli.flags.silent;
|
|
21
22
|
const serviceRunner = Boolean(cli.flags["service-runner"]);
|
|
23
|
+
const serviceWorker = Boolean(cli.flags["service-worker"]);
|
|
22
24
|
const slaveCommand = command === "slave";
|
|
23
25
|
const slaveServiceRunner = slaveCommand && serviceRunner;
|
|
24
26
|
const runtimeOverrides = toNestedOverrides(cli.nestedFlags);
|
|
@@ -233,6 +235,24 @@ async function main() {
|
|
|
233
235
|
|
|
234
236
|
if (serviceRunner) {
|
|
235
237
|
await registerServiceProcess();
|
|
238
|
+
const persistedConfig = await loadConfig();
|
|
239
|
+
const workerArgs = [serviceEntryFile, "--service-worker", ...toServiceRunnerArgs(cli.nestedFlags)];
|
|
240
|
+
if (!verbose) workerArgs.push("--silent");
|
|
241
|
+
const supervisor = createServiceSupervisor({
|
|
242
|
+
command: process.execPath,
|
|
243
|
+
args: workerArgs,
|
|
244
|
+
restartLimit: persistedConfig.service.workerRestartLimit,
|
|
245
|
+
restartBackoffMs: persistedConfig.service.workerRestartBackoffMs,
|
|
246
|
+
restartBackoffMaxMs: persistedConfig.service.workerRestartBackoffMaxMs,
|
|
247
|
+
stableRuntimeMs: persistedConfig.service.workerStableRuntimeMs,
|
|
248
|
+
logger
|
|
249
|
+
});
|
|
250
|
+
activeApp = supervisor;
|
|
251
|
+
await supervisor.start();
|
|
252
|
+
return;
|
|
253
|
+
}
|
|
254
|
+
|
|
255
|
+
if (serviceWorker) {
|
|
236
256
|
await runForeground();
|
|
237
257
|
return;
|
|
238
258
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 1,
|
|
3
3
|
"repository": "https://github.com/clasen/Arisa.git",
|
|
4
|
-
"commit": "
|
|
4
|
+
"commit": "410d18e354374b43a225c31be574deb4b8f69aba",
|
|
5
5
|
"tools": {
|
|
6
6
|
"browser-session-bridge": {
|
|
7
7
|
"version": "0.1.0",
|
|
@@ -31,24 +31,26 @@
|
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
"campaign-draft-runner": {
|
|
34
|
-
"version": "0.
|
|
34
|
+
"version": "0.5.0",
|
|
35
35
|
"toolDependencies": {
|
|
36
36
|
"pr-campaign": "^0.1.0",
|
|
37
37
|
"gmail-workspace": "^0.1.0"
|
|
38
38
|
},
|
|
39
39
|
"files": {
|
|
40
|
-
"README.md": "
|
|
41
|
-
"
|
|
42
|
-
"
|
|
40
|
+
"README.md": "2c977357f774c6bc3369460ba9cd784c9b75b5f12b338e089e634e09f2a8cbcd",
|
|
41
|
+
"batch-skip.js": "ad428464b739e7355e00ac7cf399247ce611fcef0470d97a73893701e5b07627",
|
|
42
|
+
"config.js": "9b9c2d9686cebf17c3ba2630088c7028281883608f61054e733283aeb8d383cb",
|
|
43
|
+
"index.js": "669bf964a0e1e1a0bacc5997c6e49539022649f405543e5914ba01aa11a99330",
|
|
43
44
|
"operation-timeout.js": "9b1ced30ec9ed710bb9118b91f6f3feded5111a08e1e21abf163e4cfb91d7ad2",
|
|
44
45
|
"package.json": "a25b7ed1dd2c30cd68c3c10feb8ee1752cac8cd55cd4344690ffad649e231ec1",
|
|
45
46
|
"product-facts.js": "69339e20e7b70a6b9833878d72b10b70ea4ede4aa448097975d0961b6aaced59",
|
|
46
47
|
"search-quality.js": "ab5412d45d5144e976cccef52992e634c11aca0e21b73fd53f9dc2d489c56dd7",
|
|
47
48
|
"source-exhaustion.js": "407f940f5205eb01715a797672d0dad8bd0b0b897024b5fcb87052a062ecd054",
|
|
48
|
-
"telemetry.js": "
|
|
49
|
-
"test/
|
|
50
|
-
"test/
|
|
51
|
-
"
|
|
49
|
+
"telemetry.js": "984772e73d1cbb761771d6f62954a604333a301182ee74368a41ffab762da367",
|
|
50
|
+
"test/batch-skip.test.js": "638d185dc0b38900afe6ee9058e733ae36583d0762a0ff0347fdf245df064abc",
|
|
51
|
+
"test/selection-policy.test.js": "1283f18b861925aee810d156eb64c54b147304ff7352a8f83b9c2311e1f51de2",
|
|
52
|
+
"test/telemetry.test.js": "daa84b83658226ecd979f15d4e12d94740ffe5280d467ad29677fc1d77734a5b",
|
|
53
|
+
"tool.manifest.json": "71520f3be858b9c2193223e370c10d938484a2af9281087e6dc14410b45cb2ae"
|
|
52
54
|
}
|
|
53
55
|
},
|
|
54
56
|
"creator-scout": {
|
|
@@ -65,43 +67,50 @@
|
|
|
65
67
|
}
|
|
66
68
|
},
|
|
67
69
|
"gmail-workspace": {
|
|
68
|
-
"version": "0.1.
|
|
70
|
+
"version": "0.1.2",
|
|
69
71
|
"files": {
|
|
70
72
|
"config.js": "6ad295ec4cedbc936835d8f86c7528e0939ef09d5792c003308d2ee85dc5eea4",
|
|
71
|
-
"index.js": "
|
|
72
|
-
"package.json": "
|
|
73
|
+
"index.js": "729f345fbd82d8e9525d46412b96efac0a30387477385208a4bb1c83fd794992",
|
|
74
|
+
"package.json": "991b2a5c03a049faa9363444ff5fd7517fd3556228dd8bad3d0f554cd3e2dd73",
|
|
73
75
|
"secretary-state.js": "afc27732670420bccf1ce56ce715676dd2266de9f2d36a92015a93842755094a",
|
|
74
76
|
"test/secretary-state.test.mjs": "3aea05524a4ad5ebcb79c6aa1db94fcd009ac8ae69414c8f950b32a32af94370",
|
|
75
|
-
"tool.manifest.json": "
|
|
77
|
+
"tool.manifest.json": "1f9316a957b3a7167e41ece7c2b83f90e69fb390d6dd8c7f99789c538b7a4800",
|
|
78
|
+
"arguments.js": "b4089006818020cc1cd4e5a4cc6e22242939b45a4b42d216fba2269b8cb99e64",
|
|
79
|
+
"test/arguments.test.mjs": "dde82737924d75747490f5535bee2420c71838b3e758925132c825ee8c869bad"
|
|
76
80
|
}
|
|
77
81
|
},
|
|
78
82
|
"magnific-mcp": {
|
|
79
|
-
"version": "0.
|
|
83
|
+
"version": "0.4.1",
|
|
80
84
|
"toolDependencies": {
|
|
81
|
-
"mcp-client": "^0.
|
|
85
|
+
"mcp-client": "^0.2.0"
|
|
82
86
|
},
|
|
83
87
|
"files": {
|
|
84
|
-
"README.md": "
|
|
88
|
+
"README.md": "98327aacc89cadd761db2eb49f3892818c72d410f88b86a8b6fe904c4efb3630",
|
|
85
89
|
"config.js": "98a629781a1b2541806050952aa78a1e6e1b1671a6f1df7ba36c70dd116936a7",
|
|
86
90
|
"delivery-claims.js": "52f05a5bd1ece1ab21f7d9a49f362f9c55f101ef5723efd642dbecf0236921cd",
|
|
91
|
+
"generation-request.js": "a6daa889b68fa188111b4389c6446daba87fc46fbddcf4bcccba817cf3f0b607",
|
|
87
92
|
"generation-watch-close.js": "0dd780280eef870d2f11cb1800e6e9de19e5ead7b9d02b9983852cc8ddbdc79b",
|
|
88
93
|
"generation-watch-plan.js": "eb60660341f254adc224181ca19dbbb969ef1d676aeaab60b71a8567f52648fe",
|
|
89
|
-
"index.js": "
|
|
90
|
-
"magnific-api.js": "
|
|
94
|
+
"index.js": "2eead50413d076173648623285ac65977ec56d77b1275f3ff801c70f900f4bb5",
|
|
95
|
+
"magnific-api.js": "062ba561037760de347542b5bd7db5def1f940e1d8f147a131e5603dfccd22ab",
|
|
96
|
+
"media-output.js": "01aaaeffa64845a200261258dccedf3116f030fafd783db97e846582ec5c9a26",
|
|
91
97
|
"network.js": "b45e43b49eea98ca7d80921ebfa6daf8b0a85d2079d4653f9eda682bc82101ae",
|
|
92
|
-
"package.json": "
|
|
98
|
+
"package.json": "1842a0efe6021e197a14b54f6661fb9ccdcd26e92aa09a5ac50af6d3cee4367a",
|
|
93
99
|
"state-store.js": "c3ee744509f7a6be251cd895406bd1c70827f53cbdc1ac9d1c2a6e48479bfe1e",
|
|
94
|
-
"test/magnific-mcp.test.js": "
|
|
95
|
-
"
|
|
100
|
+
"test/magnific-mcp.test.js": "3af971e5a92cf6bd34111b159723892b3a5310952b036386ae98d3592708ddd0",
|
|
101
|
+
"test/media-output.test.js": "ba3802da6c3e7d3c6ef94fcceb10a0b8547921d0995aa24b8484ddb2fb1a28d9",
|
|
102
|
+
"tool.manifest.json": "7d26e0a101c8df81bcfdf502d6864a157f0e690e5636ce297e28b1ed07f7abc2"
|
|
96
103
|
}
|
|
97
104
|
},
|
|
98
105
|
"master-slave": {
|
|
106
|
+
"version": "0.1.2",
|
|
99
107
|
"files": {
|
|
100
|
-
"README.md": "
|
|
108
|
+
"README.md": "9755dd59d01680236d12b57f87e4bc52568649a0e63b1a96065baf800d8dc1c8",
|
|
101
109
|
"batch-runner.js": "97756a03b36278cd0315cc16da0c34a7821c322149c51ba6666f1c5081dbecbc",
|
|
102
110
|
"chat-state-store.js": "50de39aa33432733bb688eb01968e314a32b169324a66d0f0089b2a19ed9c880",
|
|
111
|
+
"command-arguments.js": "ef00f814dee6105e1cd3b8929e974bc071117f162b17e3dcc3dc0ea68e8b1e92",
|
|
103
112
|
"config.js": "ff1c1cb6701ae1da7a6eb1519ba96a416e48daa73c2155a6f93cf5d64f65cef8",
|
|
104
|
-
"index.js": "
|
|
113
|
+
"index.js": "404db150dee0ecf79cd64bca245c618fa1e2bb324d6bc15f5ac0022b72497c63",
|
|
105
114
|
"lib/bootstrap-url.js": "f05925cc0f0dff0882f94f9908c6f2c80aa8632cd51f63389381dcbb0f73afb3",
|
|
106
115
|
"lib/encrypted-frames.js": "47e1b11fafdbbcdfd86a0993a47a774e4f37d6386edeaf8ec1c8511b109728cf",
|
|
107
116
|
"lib/handshake-crypto.js": "9728b117aad7de53f5f0e255c0fd865ee1a19633368730a7634334d374094578",
|
|
@@ -111,12 +120,13 @@
|
|
|
111
120
|
"lib/secure-store.js": "b8f365197f8e60d7f81fde6ed1cfc8851b603f6b0783e4cdc9036bb5c99726e1",
|
|
112
121
|
"master-domain.js": "10b7dfb43eb9939eb5baec54f742076cc73a2add6589a0ff57c51bc79c236faf",
|
|
113
122
|
"network-session.js": "db2d81a7ef47af29236d963b98e21414a11fef68e8b20895126eaad3f696ba3d",
|
|
114
|
-
"package.json": "
|
|
123
|
+
"package.json": "1f37665b860b7f2f5b37cc931dcc9c4ac4fb82d1260fc14c0646fa4d92ade0b3",
|
|
115
124
|
"remote-runtime.js": "55dd7e577a822be17c2f337798a2d7f44ad0c5b6d68c46490e058282135c4658",
|
|
116
125
|
"slave-operations.js": "fec2e8addfff98f080284f24f722c1516124e5f6d12d8c03bb3c9cc0c475d1d6",
|
|
117
126
|
"state-store.js": "c56849a3f1b9c990128276e17963034a7836abacedc44f2e500d5732ebf9e451",
|
|
118
127
|
"test/batch-runner.test.js": "69f69150eadd18c1ad1bc54f429e6cb5bc0c4492e3c6a6e76c2ce6827780ae41",
|
|
119
128
|
"test/bootstrap-url.test.js": "62c112b1a38c59ea2c77f797e32873667b52db32386da661a6ae8410490126fe",
|
|
129
|
+
"test/command-arguments.test.js": "360c087edd0a589b28111bb82d06e3e73e93a6b22da0a57cb96f0a7e92a9bd5f",
|
|
120
130
|
"test/encrypted-frames.test.js": "cfb3195d3a58df7dc570bc7840a21c1841a53e0abc8b92840e0c24ed3435bcc1",
|
|
121
131
|
"test/handshake-crypto.test.js": "f11d6e95658f2055d8256bd7dfb66b39bedf95bf62a3cec5525b109bb6f9bc95",
|
|
122
132
|
"test/master-domain.test.js": "7298766db3e6b186cca0109f352766e1bf417a8af12a58dd1c2b78fd1a61ff24",
|
|
@@ -129,35 +139,39 @@
|
|
|
129
139
|
}
|
|
130
140
|
},
|
|
131
141
|
"mcp-client": {
|
|
132
|
-
"version": "0.
|
|
142
|
+
"version": "0.2.0",
|
|
143
|
+
"toolDependencies": {},
|
|
133
144
|
"files": {
|
|
134
|
-
"README.md": "
|
|
145
|
+
"README.md": "f7317946d27742eebcc443d69e152c0f9f7e1d55b07192a3875cc1a0d623ce3a",
|
|
135
146
|
"config.js": "b5b05fb242034e2d04b6301e848da9701c95be195ba1cdac2421964e9a7db8c9",
|
|
136
|
-
"index.js": "
|
|
147
|
+
"index.js": "eaca434b3f0a7697955e0dd4cf4aa8dd7c59ab297c10f646b8cc4ec3189311e3",
|
|
137
148
|
"mcp-session.js": "51765b46f410e1cd49647235b611db0b10af20c9707efcacfbe0ff7dabe3c1ff",
|
|
138
149
|
"network-security.js": "60a020d4e3c7a4784a5a4e7b7246ee34e63ac73ee2316e09a09d10668dc8a7bc",
|
|
139
150
|
"oauth-device.js": "698aa9255bae47190c63527db7680aaab4f06392a108a0ff6444e32d31b7b89f",
|
|
140
151
|
"oauth-watch-plan.js": "b1bbed52eeb0e2e50dd52d733897ebd70573fea3ff5f023b3c63347f92633d3e",
|
|
141
152
|
"package-lock.json": "fd7b6bf4545de4056908bd656a4a4e21b9f84acc7b06d8c1d581a8c84c295e90",
|
|
142
|
-
"package.json": "
|
|
153
|
+
"package.json": "85ac369f959a40da258d268a3ab1d523abba7c225d5c44a903ddae0bcc512d1b",
|
|
143
154
|
"state-store.js": "a8fb63096b8efdec8de1cb386eff371f1552f3fd71d96f25036e1c724285e0af",
|
|
144
|
-
"test/mcp-client.test.js": "
|
|
145
|
-
"tool.
|
|
155
|
+
"test/mcp-client.test.js": "26a7fe3ffa33ad454eced32c7fab12975ac5c0914041dea68cb7e5467e753a10",
|
|
156
|
+
"tool-routing.js": "b3405c9879443cdc257a1e97d4968859a8654e62ff7cfb90ec3a7a992a62e311",
|
|
157
|
+
"tool.manifest.json": "2d64dc40453fba1d5a6743145f759a28b1f6d137fd84c0e15dd41745bd1692d7"
|
|
146
158
|
}
|
|
147
159
|
},
|
|
148
160
|
"official-tool-sync": {
|
|
149
|
-
"version": "1.
|
|
161
|
+
"version": "1.1.0",
|
|
150
162
|
"toolDependencies": {
|
|
151
163
|
"trash": "^1.0.0"
|
|
152
164
|
},
|
|
153
165
|
"files": {
|
|
154
166
|
".gitignore": "4d56952b0fb13bf8f9b6c13a6d4c34a075bac3af447636a1df4335d7576e2f97",
|
|
155
167
|
"config.js": "744c445b1d2ff65b77f38a5473c24e50a32f4288c4a08c25a874a478086c08c8",
|
|
156
|
-
"
|
|
157
|
-
"
|
|
168
|
+
"dependency-installer.js": "dd91072612d4cba2ce83748ffae569067cbb2ebf63d59084572c3a9b77611927",
|
|
169
|
+
"dependency-installer.test.js": "9dc8a8c7d3ea29cfa2bb2d4daef3c02a6e996f9148a27cc499c8fd628fac857f",
|
|
170
|
+
"index.js": "12186107d449868621af98ce8f434fc84b5de09c62a2cb6b2cb67219b2e856a6",
|
|
171
|
+
"package.json": "0e95a190a04ebaf1eea81a90ecdb7b260595eb1ea0afe77f4d4215ccd6a9e949",
|
|
158
172
|
"sync-lib.js": "c9f2cd7e19370088ab5fd10f6b2ada52c07d2e405674a356d0989f9a0f4984f6",
|
|
159
173
|
"sync-lib.test.js": "c97cf850d9f42f6b121a458863b048bdcaa6d7d0475642f20742c5862ebf7cc4",
|
|
160
|
-
"tool.manifest.json": "
|
|
174
|
+
"tool.manifest.json": "00086b52dc969275e6dffc70720ef916493870fff3a27d076fed4ec04a160c75"
|
|
161
175
|
}
|
|
162
176
|
},
|
|
163
177
|
"pr-campaign": {
|
|
@@ -186,18 +200,20 @@
|
|
|
186
200
|
}
|
|
187
201
|
},
|
|
188
202
|
"telemetry-ledger": {
|
|
189
|
-
"version": "0.1.
|
|
203
|
+
"version": "0.1.1",
|
|
190
204
|
"files": {
|
|
191
|
-
"README.md": "
|
|
205
|
+
"README.md": "e74bcf93bc89de151d73a03d60a74a2699436775aa5f93d27cf3dbb59250aec4",
|
|
192
206
|
"analysis.js": "c0effbff3af519b018e59c0460d2c277b4f7e1422ca2680de217bcb5e8a13136",
|
|
193
207
|
"config.js": "ddc8543cde5aeda634b8df60628d0024bb03e65b8710cf4878b4c6a7d953a641",
|
|
194
|
-
"index.js": "
|
|
195
|
-
"package.json": "
|
|
208
|
+
"index.js": "87f302af297233f2a1bc89d9be52b1b724478ed72658123ff841fcbcaa13389b",
|
|
209
|
+
"package.json": "f093c7b767dc042518ff6c19ac302b972a03ba34c45a73545079dd76bf525b75",
|
|
196
210
|
"stats.js": "fc41b065d1f280dc278c53dc4c4baaa385a5bf25416c3e4ff8a153ea624967fb",
|
|
197
211
|
"storage.js": "099187e270ccc2bd6d7300b78a2ee31a837f98694a23a3b40b20a646cdb1db1e",
|
|
198
212
|
"test/telemetry.test.js": "312eef22ad960b19a6fe777aecd520952ae20ed03168edbbef8a0f747bee01c0",
|
|
199
|
-
"tool.manifest.json": "
|
|
200
|
-
"validation.js": "1a50c75a5ca1bb7249bb8bfc3f2927b31ff4accd0efb56a48c36df5adae78f61"
|
|
213
|
+
"tool.manifest.json": "960b714ead9b0491581bf9f0f4dc882ce58bfc29cef4b2f5267cd0dbc9c37d48",
|
|
214
|
+
"validation.js": "1a50c75a5ca1bb7249bb8bfc3f2927b31ff4accd0efb56a48c36df5adae78f61",
|
|
215
|
+
"output.js": "e932098d51efdb99f8c39faaae0c5574d7e263f0e8c0875fc57e7a4311e715ea",
|
|
216
|
+
"test/output.test.js": "c18ae93cdf74de3748c1571833dfc1063ec6690219b03fbc7772bae504b6259f"
|
|
201
217
|
}
|
|
202
218
|
},
|
|
203
219
|
"trash": {
|
|
@@ -227,17 +243,18 @@
|
|
|
227
243
|
}
|
|
228
244
|
},
|
|
229
245
|
"x-dm": {
|
|
230
|
-
"version": "0.2.
|
|
246
|
+
"version": "0.2.1",
|
|
231
247
|
"toolDependencies": {
|
|
232
248
|
"browser-session-bridge": "^0.1.0"
|
|
233
249
|
},
|
|
234
250
|
"files": {
|
|
235
|
-
"config.js": "
|
|
236
|
-
"index.js": "
|
|
237
|
-
"package.json": "
|
|
251
|
+
"config.js": "ac6eb70c1bc94230bc6df89fc73fc22ac53ccab49926abc3c453f85aca220596",
|
|
252
|
+
"index.js": "d89f70fed0754c61bd7ce31739304e4512ddabf16bc79a1488c164e32d31672d",
|
|
253
|
+
"package.json": "af4d72a99318d04b522773b8489288d191210435ae5543b564e2ce747164386c",
|
|
238
254
|
"README.md": "503b0ed25ef9a8df3079523ea653178e6e029854b4d199cb8d20be82cc837f9e",
|
|
239
255
|
"test/x-dm.test.mjs": "06352996e14777358eb62ad5e5d757b0dab5c0696927ed54ff40a5b7cdefcfd0",
|
|
240
|
-
"tool.manifest.json": "
|
|
256
|
+
"tool.manifest.json": "227dc3c4a48948cf72544d4b99ba2c3c5a255f8425e795304881ede73d82d011",
|
|
257
|
+
"browser-cache.js": "f71c20f9ab5f04d9d46c5e2551b348d47baba89a10a07173070298098a6d5551"
|
|
241
258
|
}
|
|
242
259
|
}
|
|
243
260
|
}
|