@agentteams/runner 0.0.124 → 0.0.125
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/dist/executable.js +3 -1
- package/dist/executable.js.map +1 -1
- package/dist/executable.test.js +11 -0
- package/dist/executable.test.js.map +1 -1
- package/dist/runners/capabilities.d.ts +1 -1
- package/dist/runners/capabilities.js +3 -0
- package/dist/runners/capabilities.js.map +1 -1
- package/dist/runners/capabilities.test.js +12 -2
- package/dist/runners/capabilities.test.js.map +1 -1
- package/dist/runners/engine-commands.js +3 -0
- package/dist/runners/engine-commands.js.map +1 -1
- package/dist/runners/index.js +3 -0
- package/dist/runners/index.js.map +1 -1
- package/dist/runners/index.test.js +2 -0
- package/dist/runners/index.test.js.map +1 -1
- package/dist/runners/muse-code-identity.d.ts +8 -0
- package/dist/runners/muse-code-identity.js +18 -0
- package/dist/runners/muse-code-identity.js.map +1 -0
- package/dist/runners/muse-code-json-parser.d.ts +14 -0
- package/dist/runners/muse-code-json-parser.js +168 -0
- package/dist/runners/muse-code-json-parser.js.map +1 -0
- package/dist/runners/muse-code.d.ts +28 -0
- package/dist/runners/muse-code.js +327 -0
- package/dist/runners/muse-code.js.map +1 -0
- package/dist/runners/muse-code.test.d.ts +1 -0
- package/dist/runners/muse-code.test.js +237 -0
- package/dist/runners/muse-code.test.js.map +1 -0
- package/dist/utils/engine-probe.js +5 -2
- package/dist/utils/engine-probe.js.map +1 -1
- package/dist/utils/engine-probe.test.js +10 -0
- package/dist/utils/engine-probe.test.js.map +1 -1
- package/dist/utils/model-enumerator.d.ts +5 -0
- package/dist/utils/model-enumerator.js +36 -0
- package/dist/utils/model-enumerator.js.map +1 -1
- package/dist/utils/muse-code-models.d.ts +9 -0
- package/dist/utils/muse-code-models.js +81 -0
- package/dist/utils/muse-code-models.js.map +1 -0
- package/dist/utils/muse-code-models.test.d.ts +1 -0
- package/dist/utils/muse-code-models.test.js +81 -0
- package/dist/utils/muse-code-models.test.js.map +1 -0
- package/native/bin/win32-x64/agentrunner-launcher.exe +0 -0
- package/native/bin/win32-x64/manifest.json +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import assert from 'node:assert/strict';
|
|
2
|
+
import { EventEmitter } from 'node:events';
|
|
3
|
+
import { readFile } from 'node:fs/promises';
|
|
4
|
+
import { PassThrough } from 'node:stream';
|
|
5
|
+
import test from 'node:test';
|
|
6
|
+
import { executeMuseCodeModelList } from './muse-code-models.js';
|
|
7
|
+
import { enumerateModels, parseMuseCodeModels } from './model-enumerator.js';
|
|
8
|
+
test('Muse model parser reads real four-model catalog without hardcoding a default', async () => {
|
|
9
|
+
const fixture = await readFile(new URL('../runners/fixtures/muse-code-models.json', import.meta.url), 'utf8');
|
|
10
|
+
const result = parseMuseCodeModels(fixture);
|
|
11
|
+
assert.equal(result.status, 'SUCCESS');
|
|
12
|
+
if (result.status !== 'SUCCESS')
|
|
13
|
+
return;
|
|
14
|
+
assert.equal(result.values.length, 4);
|
|
15
|
+
assert.equal(result.values[1].label, 'muse-spark-1.3-contributor (default)');
|
|
16
|
+
assert.equal(result.values[0].maxInputTokens, 1007997);
|
|
17
|
+
assert.deepEqual(await enumerateModels('MUSE_CODE', {
|
|
18
|
+
findMuseCode: async () => '/muse',
|
|
19
|
+
executeMuseCode: async () => ({ stdout: fixture }),
|
|
20
|
+
}), result);
|
|
21
|
+
assert.equal(parseMuseCodeModels('{"models":[null]}').status, 'FORMAT_MISMATCH');
|
|
22
|
+
assert.equal(parseMuseCodeModels('{"models":[]}').status, 'EMPTY_OUTPUT');
|
|
23
|
+
});
|
|
24
|
+
for (const error of [false, true]) {
|
|
25
|
+
test(`Muse MSP orders initialize/initialized/model-list and handles RPC errors (${error})`, async () => {
|
|
26
|
+
const frames = [];
|
|
27
|
+
let killed = false;
|
|
28
|
+
const result = executeMuseCodeModelList('/muse', {
|
|
29
|
+
spawn: ((_cmd, _args, options) => {
|
|
30
|
+
assert.equal(options.windowsHide, true);
|
|
31
|
+
const child = Object.assign(new EventEmitter(), {
|
|
32
|
+
stdin: new PassThrough(),
|
|
33
|
+
stdout: new PassThrough(),
|
|
34
|
+
stderr: new PassThrough(),
|
|
35
|
+
kill: () => {
|
|
36
|
+
killed = true;
|
|
37
|
+
return true;
|
|
38
|
+
},
|
|
39
|
+
});
|
|
40
|
+
child.stdin.on('data', (chunk) => {
|
|
41
|
+
const frame = JSON.parse(String(chunk));
|
|
42
|
+
frames.push(frame);
|
|
43
|
+
queueMicrotask(() => {
|
|
44
|
+
if (frame.method === 'initialize')
|
|
45
|
+
child.stdout.write(JSON.stringify({ jsonrpc: '2.0', id: 1, result: {} }) + '\n');
|
|
46
|
+
if (frame.method === 'model/list')
|
|
47
|
+
child.stdout.write(JSON.stringify({
|
|
48
|
+
jsonrpc: '2.0',
|
|
49
|
+
id: 2,
|
|
50
|
+
...(error ? { error: { code: -32600, message: 'notInitialized' } } : { result: { models: [] } }),
|
|
51
|
+
}) + '\n');
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
return child;
|
|
55
|
+
}),
|
|
56
|
+
});
|
|
57
|
+
if (error)
|
|
58
|
+
await assert.rejects(result, /-32600: notInitialized/);
|
|
59
|
+
else
|
|
60
|
+
assert.equal((await result).stdout, '{"models":[]}');
|
|
61
|
+
assert.deepEqual(frames.map((f) => f.method), ['initialize', 'initialized', 'model/list']);
|
|
62
|
+
assert.equal(killed, true);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
test('Muse MSP times out and kills a silent server', async () => {
|
|
66
|
+
let killed = false;
|
|
67
|
+
await assert.rejects(executeMuseCodeModelList('/muse', {
|
|
68
|
+
timeoutMs: 5,
|
|
69
|
+
spawn: (() => Object.assign(new EventEmitter(), {
|
|
70
|
+
stdin: new PassThrough(),
|
|
71
|
+
stdout: new PassThrough(),
|
|
72
|
+
stderr: new PassThrough(),
|
|
73
|
+
kill: () => {
|
|
74
|
+
killed = true;
|
|
75
|
+
return true;
|
|
76
|
+
},
|
|
77
|
+
})),
|
|
78
|
+
}), /timed out/);
|
|
79
|
+
assert.equal(killed, true);
|
|
80
|
+
});
|
|
81
|
+
//# sourceMappingURL=muse-code-models.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"muse-code-models.test.js","sourceRoot":"","sources":["../../src/utils/muse-code-models.test.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE7E,IAAI,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;IAC9F,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,GAAG,CAAC,2CAA2C,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;IAC9G,MAAM,MAAM,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO;IACxC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,sCAAsC,CAAC,CAAC;IAC7E,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,CAAC,SAAS,CACd,MAAM,eAAe,CAAC,WAAW,EAAE;QACjC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,OAAO;QACjC,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;KACnD,CAAC,EACF,MAAM,CACP,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,mBAAmB,CAAC,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACjF,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,eAAe,CAAC,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAC5E,CAAC,CAAC,CAAC;AAEH,KAAK,MAAM,KAAK,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC;IAClC,IAAI,CAAC,6EAA6E,KAAK,GAAG,EAAE,KAAK,IAAI,EAAE;QACrG,MAAM,MAAM,GAAyB,EAAE,CAAC;QACxC,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,MAAM,MAAM,GAAG,wBAAwB,CAAC,OAAO,EAAE;YAC/C,KAAK,EAAE,CAAC,CAAC,IAAY,EAAE,KAAe,EAAE,OAAiC,EAAE,EAAE;gBAC3E,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACxC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE;oBAC9C,KAAK,EAAE,IAAI,WAAW,EAAE;oBACxB,MAAM,EAAE,IAAI,WAAW,EAAE;oBACzB,MAAM,EAAE,IAAI,WAAW,EAAE;oBACzB,IAAI,EAAE,GAAG,EAAE;wBACT,MAAM,GAAG,IAAI,CAAC;wBACd,OAAO,IAAI,CAAC;oBACd,CAAC;iBACF,CAAC,CAAC;gBACH,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;oBAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACxC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBACnB,cAAc,CAAC,GAAG,EAAE;wBAClB,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY;4BAC/B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;wBACnF,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY;4BAC/B,KAAK,CAAC,MAAM,CAAC,KAAK,CAChB,IAAI,CAAC,SAAS,CAAC;gCACb,OAAO,EAAE,KAAK;gCACd,EAAE,EAAE,CAAC;gCACL,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;6BACjG,CAAC,GAAG,IAAI,CACV,CAAC;oBACN,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;gBACH,OAAO,KAAK,CAAC;YACf,CAAC,CAAU;SACZ,CAAC,CAAC;QACH,IAAI,KAAK;YAAE,MAAM,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;;YAC7D,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC1D,MAAM,CAAC,SAAS,CACd,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,EAC3B,CAAC,YAAY,EAAE,aAAa,EAAE,YAAY,CAAC,CAC5C,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;IAC9D,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,MAAM,MAAM,CAAC,OAAO,CAClB,wBAAwB,CAAC,OAAO,EAAE;QAChC,SAAS,EAAE,CAAC;QACZ,KAAK,EAAE,CAAC,GAAG,EAAE,CACX,MAAM,CAAC,MAAM,CAAC,IAAI,YAAY,EAAE,EAAE;YAChC,KAAK,EAAE,IAAI,WAAW,EAAE;YACxB,MAAM,EAAE,IAAI,WAAW,EAAE;YACzB,MAAM,EAAE,IAAI,WAAW,EAAE;YACzB,IAAI,EAAE,GAAG,EAAE;gBACT,MAAM,GAAG,IAAI,CAAC;gBACd,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAU;KACf,CAAC,EACF,WAAW,CACZ,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC"}
|
|
Binary file
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"schemaVersion": 1,
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.125",
|
|
4
4
|
"platform": "win32",
|
|
5
5
|
"arch": "x64",
|
|
6
6
|
"fileName": "agentrunner-launcher.exe",
|
|
7
|
-
"sha256": "
|
|
7
|
+
"sha256": "52b469defe3d78a7ca32c06891ffa997b3bf04e60970e83031891be396fe4376"
|
|
8
8
|
}
|