@mmnto/cli 1.101.2 → 1.102.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/dist/commands/init-detect.js +1 -1
- package/dist/commands/init-detect.js.map +1 -1
- package/dist/commands/init-detect.test.js +2 -1
- package/dist/commands/init-detect.test.js.map +1 -1
- package/dist/commands/review-fan.d.ts.map +1 -1
- package/dist/commands/review-fan.js +32 -8
- package/dist/commands/review-fan.js.map +1 -1
- package/dist/commands/review-fan.test.js +153 -7
- package/dist/commands/review-fan.test.js.map +1 -1
- package/dist/commands/shield.d.ts +25 -3
- package/dist/commands/shield.d.ts.map +1 -1
- package/dist/commands/shield.js +67 -37
- package/dist/commands/shield.js.map +1 -1
- package/dist/commands/shield.test.js +69 -2
- package/dist/commands/shield.test.js.map +1 -1
- package/dist/hook/schema.d.ts +2 -2
- package/dist/orchestrators/orchestrator.d.ts +86 -1
- package/dist/orchestrators/orchestrator.d.ts.map +1 -1
- package/dist/orchestrators/orchestrator.js +277 -9
- package/dist/orchestrators/orchestrator.js.map +1 -1
- package/dist/orchestrators/orchestrator.test.js +240 -4
- package/dist/orchestrators/orchestrator.test.js.map +1 -1
- package/dist/orchestrators/shell-orchestrator.d.ts +12 -1
- package/dist/orchestrators/shell-orchestrator.d.ts.map +1 -1
- package/dist/orchestrators/shell-orchestrator.js +256 -49
- package/dist/orchestrators/shell-orchestrator.js.map +1 -1
- package/dist/orchestrators/shell-orchestrator.test.js +252 -4
- package/dist/orchestrators/shell-orchestrator.test.js.map +1 -1
- package/dist/utils.d.ts +18 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +389 -108
- package/dist/utils.js.map +1 -1
- package/dist/utils.test.js +406 -14
- package/dist/utils.test.js.map +1 -1
- package/package.json +2 -2
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.test.js
CHANGED
|
@@ -3,9 +3,9 @@ import * as fs from 'node:fs';
|
|
|
3
3
|
import * as os from 'node:os';
|
|
4
4
|
import * as path from 'node:path';
|
|
5
5
|
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
|
|
6
|
-
import { calculateDeterministicHash, RunArtifactSchema, summarizeProvenance } from '@mmnto/totem';
|
|
6
|
+
import { calculateDeterministicHash, InvocationFailureArtifactSchema, RunArtifactSchema, summarizeProvenance, TotemOrchestratorError, } from '@mmnto/totem';
|
|
7
7
|
import { cleanTmpDir } from './test-utils.js';
|
|
8
|
-
import { applyCodeBlindGuard, buildRetrievalGroundingBundle, CODE_BLIND_BANNER, CODE_BLIND_PROMPT_DIRECTIVE, formatLessonSection, formatResults, getSystemPrompt, isCodeBlind, isGlobalConfigPath, loadConfig, loadEnv, partitionLessons, reapOrphanedTempFiles, requireEmbedding, resolveConfigPath, runOrchestrator, sanitize, wrapXml, writeOutput, } from './utils.js';
|
|
8
|
+
import { applyCodeBlindGuard, buildRetrievalGroundingBundle, CODE_BLIND_BANNER, CODE_BLIND_PROMPT_DIRECTIVE, formatLessonSection, formatResults, getSystemPrompt, isCodeBlind, isGlobalConfigPath, loadConfig, loadEnv, partitionLessons, persistRuntimeTextEvidence, reapOrphanedTempFiles, requireEmbedding, resolveConfigPath, runOrchestrator, runtimeMessageEvidence, sanitize, wrapXml, writeOutput, } from './utils.js';
|
|
9
9
|
/** Helper to build a minimal SearchResult for tests. */
|
|
10
10
|
function makeResult(overrides) {
|
|
11
11
|
// Default absoluteFilePath to the provided filePath — mirrors
|
|
@@ -538,7 +538,7 @@ vi.mock('./orchestrators/orchestrator.js', async (importOriginal) => {
|
|
|
538
538
|
},
|
|
539
539
|
};
|
|
540
540
|
});
|
|
541
|
-
import { createOrchestrator } from './orchestrators/orchestrator.js';
|
|
541
|
+
import { createOrchestrator, OrchestratorInvokeError } from './orchestrators/orchestrator.js';
|
|
542
542
|
const mockedCreateOrchestrator = vi.mocked(createOrchestrator);
|
|
543
543
|
function baseConfig(overrides) {
|
|
544
544
|
return {
|
|
@@ -1045,11 +1045,12 @@ describe('code-blind grounding guard', () => {
|
|
|
1045
1045
|
describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () => {
|
|
1046
1046
|
let tmpDir;
|
|
1047
1047
|
const GROUNDING_HASH = 'b'.repeat(64);
|
|
1048
|
-
function artifactRequest(onEmitted) {
|
|
1048
|
+
function artifactRequest(onEmitted, onFailureEmitted) {
|
|
1049
1049
|
return {
|
|
1050
1050
|
groundingHash: GROUNDING_HASH,
|
|
1051
1051
|
provenanceSummary: 'similarity-only',
|
|
1052
1052
|
...(onEmitted !== undefined ? { onEmitted } : {}),
|
|
1053
|
+
...(onFailureEmitted !== undefined ? { onFailureEmitted } : {}),
|
|
1053
1054
|
};
|
|
1054
1055
|
}
|
|
1055
1056
|
function artifactConfig(overrides) {
|
|
@@ -1069,6 +1070,41 @@ describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () =>
|
|
|
1069
1070
|
function runsDirPath() {
|
|
1070
1071
|
return path.join(tmpDir, '.totem', 'artifacts', 'runs');
|
|
1071
1072
|
}
|
|
1073
|
+
function failureRunsDirPath() {
|
|
1074
|
+
return path.join(runsDirPath(), 'failures');
|
|
1075
|
+
}
|
|
1076
|
+
function runtimeText(text) {
|
|
1077
|
+
const bytes = Buffer.byteLength(text, 'utf-8');
|
|
1078
|
+
return {
|
|
1079
|
+
encoding: 'utf-8',
|
|
1080
|
+
head: text,
|
|
1081
|
+
observedBytes: bytes,
|
|
1082
|
+
retainedBytes: bytes,
|
|
1083
|
+
limitBytes: 64 * 1024,
|
|
1084
|
+
truncated: false,
|
|
1085
|
+
};
|
|
1086
|
+
}
|
|
1087
|
+
function invokeFailure(message = 'provider rejected request') {
|
|
1088
|
+
return new OrchestratorInvokeError(message, 'process-exit', [
|
|
1089
|
+
{
|
|
1090
|
+
sequence: 1,
|
|
1091
|
+
route: 'configured-shell',
|
|
1092
|
+
provider: 'gemini',
|
|
1093
|
+
model: 'gemini-3-flash-preview',
|
|
1094
|
+
status: 'failed',
|
|
1095
|
+
durationMs: 125,
|
|
1096
|
+
failureKind: 'process-exit',
|
|
1097
|
+
providerCode: 'x'.repeat(129),
|
|
1098
|
+
process: {
|
|
1099
|
+
exitCode: 1,
|
|
1100
|
+
signal: null,
|
|
1101
|
+
timedOut: false,
|
|
1102
|
+
stdout: runtimeText('partial stdout'),
|
|
1103
|
+
stderr: runtimeText(message),
|
|
1104
|
+
},
|
|
1105
|
+
},
|
|
1106
|
+
], { cause: new Error(message) });
|
|
1107
|
+
}
|
|
1072
1108
|
beforeEach(() => {
|
|
1073
1109
|
vi.clearAllMocks();
|
|
1074
1110
|
tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-artifact-emit-'));
|
|
@@ -1116,6 +1152,57 @@ describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () =>
|
|
|
1116
1152
|
outputTokens: 50,
|
|
1117
1153
|
durationMs: 500,
|
|
1118
1154
|
});
|
|
1155
|
+
expect(artifact.schemaVersion).toBe('1.2.0');
|
|
1156
|
+
expect(artifact.output.execution).toBeUndefined();
|
|
1157
|
+
});
|
|
1158
|
+
it('persists DLP-safe execution evidence only when runtime attempts are present', async () => {
|
|
1159
|
+
const secret = 'RUNTIME-EVIDENCE-SECRET-12345';
|
|
1160
|
+
const mockInvoke = vi.fn().mockResolvedValue({
|
|
1161
|
+
content: 'mock result',
|
|
1162
|
+
inputTokens: 100,
|
|
1163
|
+
outputTokens: 50,
|
|
1164
|
+
durationMs: 500,
|
|
1165
|
+
attempts: [
|
|
1166
|
+
{
|
|
1167
|
+
sequence: 1,
|
|
1168
|
+
route: 'configured-shell',
|
|
1169
|
+
provider: 'gemini',
|
|
1170
|
+
model: 'gemini-3-flash-preview',
|
|
1171
|
+
status: 'succeeded',
|
|
1172
|
+
durationMs: 500,
|
|
1173
|
+
providerCode: secret,
|
|
1174
|
+
process: {
|
|
1175
|
+
exitCode: 0,
|
|
1176
|
+
signal: null,
|
|
1177
|
+
timedOut: false,
|
|
1178
|
+
stdout: runtimeText(`\u001b[31mresult ${secret}\u001b[0m`),
|
|
1179
|
+
stderr: runtimeText(''),
|
|
1180
|
+
},
|
|
1181
|
+
},
|
|
1182
|
+
],
|
|
1183
|
+
});
|
|
1184
|
+
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1185
|
+
const emitted = [];
|
|
1186
|
+
await runOrchestrator({
|
|
1187
|
+
prompt: 'attempt evidence run',
|
|
1188
|
+
tag: 'Spec',
|
|
1189
|
+
options: { fresh: true },
|
|
1190
|
+
config: artifactConfig(),
|
|
1191
|
+
cwd: tmpDir,
|
|
1192
|
+
customSecrets: [{ type: 'literal', value: secret }],
|
|
1193
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1194
|
+
});
|
|
1195
|
+
const raw = fs.readFileSync(path.join(runsDirPath(), `${emitted[0]}.json`), 'utf-8');
|
|
1196
|
+
expect(raw).not.toContain(secret);
|
|
1197
|
+
expect(raw).not.toContain('\u001b');
|
|
1198
|
+
const artifact = RunArtifactSchema.parse(JSON.parse(raw));
|
|
1199
|
+
expect(artifact.output.execution?.attempts).toHaveLength(1);
|
|
1200
|
+
expect(artifact.output.execution?.attempts[0]?.process?.stdout).toMatchObject({
|
|
1201
|
+
head: 'result [REDACTED_CUSTOM]',
|
|
1202
|
+
dlp: 'masked',
|
|
1203
|
+
truncated: false,
|
|
1204
|
+
});
|
|
1205
|
+
expect(artifact.output.execution?.attempts[0]?.providerCode).toBeUndefined();
|
|
1119
1206
|
});
|
|
1120
1207
|
it('records the grounding bundle verbatim and the attested hash recomputes from it (mmnto-ai/totem#2101)', async () => {
|
|
1121
1208
|
const bundle = {
|
|
@@ -1169,6 +1256,230 @@ describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () =>
|
|
|
1169
1256
|
const artifact = RunArtifactSchema.parse(JSON.parse(rawOnDisk));
|
|
1170
1257
|
expect(artifact.inputBundle.maskedPrompt).not.toContain(secret);
|
|
1171
1258
|
});
|
|
1259
|
+
it('emits terminal failure evidence, attaches its hash, and invokes the failure callback', async () => {
|
|
1260
|
+
const secret = 'FAILURE-EVIDENCE-SECRET-12345';
|
|
1261
|
+
const invokeErr = invokeFailure(`provider rejected ${secret}`);
|
|
1262
|
+
const mockInvoke = vi.fn().mockRejectedValue(invokeErr);
|
|
1263
|
+
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1264
|
+
const emitted = [];
|
|
1265
|
+
let caught;
|
|
1266
|
+
try {
|
|
1267
|
+
await runOrchestrator({
|
|
1268
|
+
prompt: 'failed attempt prompt',
|
|
1269
|
+
tag: 'Spec',
|
|
1270
|
+
options: { fresh: true },
|
|
1271
|
+
config: artifactConfig(),
|
|
1272
|
+
cwd: tmpDir,
|
|
1273
|
+
customSecrets: [{ type: 'literal', value: secret }],
|
|
1274
|
+
artifact: artifactRequest(undefined, (hash, artifactPath) => emitted.push({ hash, artifactPath })),
|
|
1275
|
+
});
|
|
1276
|
+
}
|
|
1277
|
+
catch (err) {
|
|
1278
|
+
caught = err;
|
|
1279
|
+
}
|
|
1280
|
+
expect(caught).toBe(invokeErr);
|
|
1281
|
+
expect(invokeErr.failureArtifactHash).toBe(emitted[0]?.hash);
|
|
1282
|
+
expect(emitted).toHaveLength(1);
|
|
1283
|
+
expect(emitted[0]?.artifactPath).toBe(path.join(failureRunsDirPath(), `${emitted[0].hash}.json`));
|
|
1284
|
+
const raw = fs.readFileSync(emitted[0].artifactPath, 'utf-8');
|
|
1285
|
+
expect(raw).not.toContain(secret);
|
|
1286
|
+
const artifact = InvocationFailureArtifactSchema.parse(JSON.parse(raw));
|
|
1287
|
+
expect(artifact.terminal).toMatchObject({ kind: 'process-exit', attempt: 1 });
|
|
1288
|
+
expect(artifact.terminal.message.head).toContain('[REDACTED_CUSTOM]');
|
|
1289
|
+
expect(artifact.attempts[0]?.process?.stderr?.head).toContain('[REDACTED_CUSTOM]');
|
|
1290
|
+
expect(artifact.attempts[0]?.providerCode).toBeUndefined();
|
|
1291
|
+
expect(RunArtifactSchema.safeParse(artifact).success).toBe(false);
|
|
1292
|
+
});
|
|
1293
|
+
it.each([
|
|
1294
|
+
{
|
|
1295
|
+
label: 'OpenAI wrapped auth failure',
|
|
1296
|
+
provider: 'openai',
|
|
1297
|
+
model: 'gpt-5',
|
|
1298
|
+
cause: Object.assign(new Error('provider auth response'), {
|
|
1299
|
+
status: 401,
|
|
1300
|
+
code: 'authentication_error',
|
|
1301
|
+
}),
|
|
1302
|
+
kind: 'auth',
|
|
1303
|
+
providerStatus: 401,
|
|
1304
|
+
providerCode: 'authentication_error',
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
label: 'Ollama wrapped model failure',
|
|
1308
|
+
provider: 'ollama',
|
|
1309
|
+
model: 'llama3',
|
|
1310
|
+
cause: null,
|
|
1311
|
+
originalMessage: "Ollama model 'llama3' is not installed.",
|
|
1312
|
+
kind: 'model',
|
|
1313
|
+
providerStatus: undefined,
|
|
1314
|
+
providerCode: undefined,
|
|
1315
|
+
},
|
|
1316
|
+
{
|
|
1317
|
+
label: 'plain injected failure',
|
|
1318
|
+
provider: 'gemini',
|
|
1319
|
+
model: 'gemini-3-flash-preview',
|
|
1320
|
+
cause: undefined,
|
|
1321
|
+
originalMessage: undefined,
|
|
1322
|
+
kind: 'unknown',
|
|
1323
|
+
providerStatus: undefined,
|
|
1324
|
+
providerCode: undefined,
|
|
1325
|
+
},
|
|
1326
|
+
])('normalizes and persists $label', async (testCase) => {
|
|
1327
|
+
const original = testCase.cause === undefined
|
|
1328
|
+
? new Error('unclassified provider transport failure')
|
|
1329
|
+
: new TotemOrchestratorError(testCase.originalMessage ?? `${testCase.provider} provider call failed`, `recover ${testCase.provider}`, testCase.cause);
|
|
1330
|
+
mockedCreateOrchestrator.mockReturnValue(vi.fn().mockRejectedValue(original));
|
|
1331
|
+
const emitted = [];
|
|
1332
|
+
let caught;
|
|
1333
|
+
try {
|
|
1334
|
+
await runOrchestrator({
|
|
1335
|
+
prompt: `${testCase.provider} terminal failure`,
|
|
1336
|
+
tag: 'Spec',
|
|
1337
|
+
options: { fresh: true },
|
|
1338
|
+
config: artifactConfig({
|
|
1339
|
+
orchestrator: {
|
|
1340
|
+
provider: testCase.provider,
|
|
1341
|
+
defaultModel: testCase.model,
|
|
1342
|
+
},
|
|
1343
|
+
}),
|
|
1344
|
+
cwd: tmpDir,
|
|
1345
|
+
artifact: artifactRequest(undefined, (hash, artifactPath) => emitted.push({ hash, artifactPath })),
|
|
1346
|
+
});
|
|
1347
|
+
}
|
|
1348
|
+
catch (err) {
|
|
1349
|
+
caught = err;
|
|
1350
|
+
}
|
|
1351
|
+
expect(caught).toBeInstanceOf(OrchestratorInvokeError);
|
|
1352
|
+
expect(caught).toBeInstanceOf(TotemOrchestratorError);
|
|
1353
|
+
const structured = caught;
|
|
1354
|
+
expect(structured.cause).toBe(original);
|
|
1355
|
+
expect(structured).toMatchObject({
|
|
1356
|
+
kind: testCase.kind,
|
|
1357
|
+
failureArtifactHash: emitted[0]?.hash,
|
|
1358
|
+
});
|
|
1359
|
+
expect(structured.attempts[0]).toMatchObject({
|
|
1360
|
+
route: 'sdk',
|
|
1361
|
+
provider: testCase.provider,
|
|
1362
|
+
model: testCase.model,
|
|
1363
|
+
status: 'failed',
|
|
1364
|
+
failureKind: testCase.kind,
|
|
1365
|
+
...(testCase.providerStatus !== undefined ? { providerStatus: testCase.providerStatus } : {}),
|
|
1366
|
+
...(testCase.providerCode !== undefined ? { providerCode: testCase.providerCode } : {}),
|
|
1367
|
+
});
|
|
1368
|
+
expect(emitted).toHaveLength(1);
|
|
1369
|
+
const artifact = InvocationFailureArtifactSchema.parse(JSON.parse(fs.readFileSync(emitted[0].artifactPath, 'utf-8')));
|
|
1370
|
+
expect(artifact.terminal.kind).toBe(testCase.kind);
|
|
1371
|
+
expect(artifact.attempts).toMatchObject(structured.attempts);
|
|
1372
|
+
});
|
|
1373
|
+
it('a failure-artifact write error preserves the original structured invocation error', async () => {
|
|
1374
|
+
fs.mkdirSync(path.join(tmpDir, '.totem'), { recursive: true });
|
|
1375
|
+
fs.writeFileSync(path.join(tmpDir, '.totem', 'artifacts'), 'not a directory');
|
|
1376
|
+
const invokeErr = invokeFailure();
|
|
1377
|
+
mockedCreateOrchestrator.mockReturnValue(vi.fn().mockRejectedValue(invokeErr));
|
|
1378
|
+
const onFailureEmitted = vi.fn();
|
|
1379
|
+
let caught;
|
|
1380
|
+
try {
|
|
1381
|
+
await runOrchestrator({
|
|
1382
|
+
prompt: 'failed ledger prompt',
|
|
1383
|
+
tag: 'Spec',
|
|
1384
|
+
options: { fresh: true },
|
|
1385
|
+
config: artifactConfig(),
|
|
1386
|
+
cwd: tmpDir,
|
|
1387
|
+
artifact: artifactRequest(undefined, onFailureEmitted),
|
|
1388
|
+
});
|
|
1389
|
+
}
|
|
1390
|
+
catch (err) {
|
|
1391
|
+
caught = err;
|
|
1392
|
+
}
|
|
1393
|
+
expect(caught).toBe(invokeErr);
|
|
1394
|
+
expect(invokeErr.failureArtifactHash).toBeUndefined();
|
|
1395
|
+
expect(onFailureEmitted).not.toHaveBeenCalled();
|
|
1396
|
+
});
|
|
1397
|
+
it('masking failure omits runtime text instead of persisting raw bytes', () => {
|
|
1398
|
+
const evidence = persistRuntimeTextEvidence(runtimeText('must never survive'), undefined, 64 * 1024, () => {
|
|
1399
|
+
throw new Error('synthetic DLP failure');
|
|
1400
|
+
});
|
|
1401
|
+
expect(evidence).toEqual({
|
|
1402
|
+
encoding: 'utf-8',
|
|
1403
|
+
head: '',
|
|
1404
|
+
observedBytes: Buffer.byteLength('must never survive', 'utf-8'),
|
|
1405
|
+
retainedBytes: 0,
|
|
1406
|
+
limitBytes: 64 * 1024,
|
|
1407
|
+
truncated: false,
|
|
1408
|
+
dlp: 'omitted-on-mask-failure',
|
|
1409
|
+
});
|
|
1410
|
+
});
|
|
1411
|
+
it('pre-bounds oversized ASCII terminal messages before DLP and re-bounds masked text', () => {
|
|
1412
|
+
const secret = 'ASCII-OVERSIZED-SECRET-12345';
|
|
1413
|
+
const message = [secret, 'x'.repeat(9_000), '-terminal-tail'].join('');
|
|
1414
|
+
const runtime = runtimeMessageEvidence(message);
|
|
1415
|
+
expect(runtime).toMatchObject({
|
|
1416
|
+
observedBytes: Buffer.byteLength(message, 'utf-8'),
|
|
1417
|
+
limitBytes: 4 * 1024,
|
|
1418
|
+
retainedBytes: 4 * 1024,
|
|
1419
|
+
truncated: true,
|
|
1420
|
+
});
|
|
1421
|
+
expect(Buffer.byteLength(runtime.head, 'utf-8')).toBe(2 * 1024);
|
|
1422
|
+
expect(Buffer.byteLength(runtime.tail ?? '', 'utf-8')).toBe(2 * 1024);
|
|
1423
|
+
expect(runtime.head).toContain(secret);
|
|
1424
|
+
expect(runtime.tail).toBe(message.slice(-2 * 1024));
|
|
1425
|
+
const masker = vi.fn((value) => value.replaceAll(secret, '[REDACTED_CUSTOM]'));
|
|
1426
|
+
const persisted = persistRuntimeTextEvidence(runtime, undefined, 4 * 1024, masker);
|
|
1427
|
+
expect(masker).toHaveBeenCalledTimes(2);
|
|
1428
|
+
for (const [fragment] of masker.mock.calls) {
|
|
1429
|
+
expect(Buffer.byteLength(fragment, 'utf-8')).toBeLessThanOrEqual(2 * 1024);
|
|
1430
|
+
}
|
|
1431
|
+
const persistedText = [persisted.head, persisted.tail ?? ''].join('');
|
|
1432
|
+
expect(persistedText).not.toContain(secret);
|
|
1433
|
+
expect(persisted).toMatchObject({
|
|
1434
|
+
observedBytes: Buffer.byteLength(message, 'utf-8'),
|
|
1435
|
+
limitBytes: 4 * 1024,
|
|
1436
|
+
truncated: true,
|
|
1437
|
+
dlp: 'masked',
|
|
1438
|
+
});
|
|
1439
|
+
expect(persisted.retainedBytes).toBeLessThanOrEqual(4 * 1024);
|
|
1440
|
+
});
|
|
1441
|
+
it('pre-bounds oversized multi-byte messages on code-point boundaries and masks retained text', () => {
|
|
1442
|
+
const secret = '秘密-TERMINAL-KEY-12345';
|
|
1443
|
+
const message = [secret, '🧪'.repeat(2_000), '-終端'].join('');
|
|
1444
|
+
const runtime = runtimeMessageEvidence(message);
|
|
1445
|
+
expect(runtime.observedBytes).toBe(Buffer.byteLength(message, 'utf-8'));
|
|
1446
|
+
expect(runtime.retainedBytes).toBeLessThanOrEqual(4 * 1024);
|
|
1447
|
+
expect(runtime.truncated).toBe(true);
|
|
1448
|
+
expect(runtime.head).not.toContain('\uFFFD');
|
|
1449
|
+
expect(runtime.tail).not.toContain('\uFFFD');
|
|
1450
|
+
expect(Buffer.byteLength(runtime.head, 'utf-8')).toBeLessThanOrEqual(2 * 1024);
|
|
1451
|
+
expect(Buffer.byteLength(runtime.tail ?? '', 'utf-8')).toBe(2 * 1024 - 1);
|
|
1452
|
+
expect(runtime.tail).toBe(`${'🧪'.repeat(510)}-終端`);
|
|
1453
|
+
const persisted = persistRuntimeTextEvidence(runtime, [{ type: 'literal', value: secret }], 4 * 1024);
|
|
1454
|
+
const persistedText = [persisted.head, persisted.tail ?? ''].join('');
|
|
1455
|
+
expect(persistedText).not.toContain(secret);
|
|
1456
|
+
expect(persistedText).not.toContain('\uFFFD');
|
|
1457
|
+
expect(persisted).toMatchObject({
|
|
1458
|
+
observedBytes: Buffer.byteLength(message, 'utf-8'),
|
|
1459
|
+
limitBytes: 4 * 1024,
|
|
1460
|
+
truncated: true,
|
|
1461
|
+
dlp: 'masked',
|
|
1462
|
+
});
|
|
1463
|
+
expect(persisted.retainedBytes).toBeLessThanOrEqual(4 * 1024);
|
|
1464
|
+
});
|
|
1465
|
+
it('masks non-contiguous runtime head and tail independently', () => {
|
|
1466
|
+
const head = 'HEAD-SENTINEL-cross-';
|
|
1467
|
+
const tail = 'boundary-TAIL-SENTINEL';
|
|
1468
|
+
const evidence = persistRuntimeTextEvidence({
|
|
1469
|
+
encoding: 'utf-8',
|
|
1470
|
+
head,
|
|
1471
|
+
tail,
|
|
1472
|
+
observedBytes: 100_000,
|
|
1473
|
+
retainedBytes: Buffer.byteLength(head + tail, 'utf-8'),
|
|
1474
|
+
limitBytes: 64 * 1024,
|
|
1475
|
+
truncated: true,
|
|
1476
|
+
}, [{ type: 'literal', value: head + tail }]);
|
|
1477
|
+
expect(evidence.head).toBe(head);
|
|
1478
|
+
expect(evidence.tail).toBe(tail);
|
|
1479
|
+
expect(evidence.head).not.toContain(head + tail);
|
|
1480
|
+
expect(evidence.tail).not.toContain(head + tail);
|
|
1481
|
+
expect(evidence.truncated).toBe(true);
|
|
1482
|
+
});
|
|
1172
1483
|
it('a response-cache hit emits NO artifact (artifacts record actual invokes)', async () => {
|
|
1173
1484
|
const onEmitted = vi.fn();
|
|
1174
1485
|
const opts = {
|
|
@@ -1240,17 +1551,76 @@ describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () =>
|
|
|
1240
1551
|
const artifact = RunArtifactSchema.parse(JSON.parse(fs.readFileSync(file, 'utf-8')));
|
|
1241
1552
|
expect(artifact.backend.qualifiedModel).toBe('gemini-3-flash-preview');
|
|
1242
1553
|
expect(artifact.output.content).toBe('fallback result');
|
|
1554
|
+
expect(artifact.output.execution?.attempts).toMatchObject([
|
|
1555
|
+
{ sequence: 1, route: 'sdk', status: 'failed', failureKind: 'quota' },
|
|
1556
|
+
{ sequence: 2, route: 'quota-model-fallback', status: 'succeeded' },
|
|
1557
|
+
]);
|
|
1558
|
+
});
|
|
1559
|
+
it('persists merged, contiguous quota-fallback attempts when both models fail', async () => {
|
|
1560
|
+
const quotaErr = new Error('429 quota exhausted');
|
|
1561
|
+
quotaErr.name = 'QuotaError';
|
|
1562
|
+
const fallbackErr = new OrchestratorInvokeError('fallback model unavailable', 'model', [
|
|
1563
|
+
{
|
|
1564
|
+
sequence: 1,
|
|
1565
|
+
route: 'sdk',
|
|
1566
|
+
provider: 'gemini',
|
|
1567
|
+
model: 'gemini-3-flash-preview',
|
|
1568
|
+
status: 'failed',
|
|
1569
|
+
durationMs: 50,
|
|
1570
|
+
failureKind: 'model',
|
|
1571
|
+
},
|
|
1572
|
+
], { cause: new Error('404 model unavailable') });
|
|
1573
|
+
mockedCreateOrchestrator.mockReturnValue(vi.fn().mockRejectedValueOnce(quotaErr).mockRejectedValueOnce(fallbackErr));
|
|
1574
|
+
const emitted = [];
|
|
1575
|
+
let caught;
|
|
1576
|
+
try {
|
|
1577
|
+
await runOrchestrator({
|
|
1578
|
+
prompt: 'double failure prompt',
|
|
1579
|
+
tag: 'Spec',
|
|
1580
|
+
options: { fresh: true },
|
|
1581
|
+
config: artifactConfig({
|
|
1582
|
+
orchestrator: {
|
|
1583
|
+
provider: 'gemini',
|
|
1584
|
+
defaultModel: 'gemini-3.1-pro-preview',
|
|
1585
|
+
fallbackModel: 'gemini-3-flash-preview',
|
|
1586
|
+
},
|
|
1587
|
+
}),
|
|
1588
|
+
cwd: tmpDir,
|
|
1589
|
+
artifact: artifactRequest(undefined, (hash) => emitted.push(hash)),
|
|
1590
|
+
});
|
|
1591
|
+
}
|
|
1592
|
+
catch (err) {
|
|
1593
|
+
caught = err;
|
|
1594
|
+
}
|
|
1595
|
+
expect(caught).toBeInstanceOf(OrchestratorInvokeError);
|
|
1596
|
+
expect(caught).not.toBe(fallbackErr);
|
|
1597
|
+
const structured = caught;
|
|
1598
|
+
expect(structured.kind).toBe('model');
|
|
1599
|
+
expect(structured.failureArtifactHash).toBe(emitted[0]);
|
|
1600
|
+
expect(structured.attempts).toMatchObject([
|
|
1601
|
+
{ sequence: 1, route: 'sdk', status: 'failed', failureKind: 'quota' },
|
|
1602
|
+
{
|
|
1603
|
+
sequence: 2,
|
|
1604
|
+
route: 'quota-model-fallback',
|
|
1605
|
+
status: 'failed',
|
|
1606
|
+
failureKind: 'model',
|
|
1607
|
+
},
|
|
1608
|
+
]);
|
|
1609
|
+
const artifact = InvocationFailureArtifactSchema.parse(JSON.parse(fs.readFileSync(path.join(failureRunsDirPath(), `${emitted[0]}.json`), 'utf-8')));
|
|
1610
|
+
expect(artifact.attempts).toMatchObject(structured.attempts);
|
|
1611
|
+
expect(artifact.terminal).toMatchObject({ kind: 'model', attempt: 2 });
|
|
1243
1612
|
});
|
|
1244
1613
|
});
|
|
1245
1614
|
// ─── runOrchestrator admission contract (mmnto-ai/totem#2102) ──
|
|
1246
1615
|
describe('runOrchestrator admission contract (#2102)', { timeout: 15_000 }, () => {
|
|
1247
1616
|
let tmpDir;
|
|
1248
1617
|
const GROUNDING_HASH = 'b'.repeat(64);
|
|
1249
|
-
function artifactRequest(onEmitted) {
|
|
1618
|
+
function artifactRequest(onEmitted, onFailureEmitted) {
|
|
1250
1619
|
return {
|
|
1251
1620
|
groundingHash: GROUNDING_HASH,
|
|
1252
1621
|
provenanceSummary: 'similarity-only',
|
|
1253
1622
|
...(onEmitted !== undefined ? { onEmitted } : {}),
|
|
1623
|
+
...(onFailureEmitted !== undefined ? { onFailureEmitted } : {}),
|
|
1254
1624
|
};
|
|
1255
1625
|
}
|
|
1256
1626
|
/** Orchestrator config WITHOUT a declared capability (today's default). */
|
|
@@ -1420,15 +1790,37 @@ describe('runOrchestrator admission contract (#2102)', { timeout: 15_000 }, () =
|
|
|
1420
1790
|
});
|
|
1421
1791
|
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1422
1792
|
const onEmitted = vi.fn();
|
|
1423
|
-
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
|
|
1429
|
-
|
|
1430
|
-
|
|
1431
|
-
|
|
1793
|
+
const failures = [];
|
|
1794
|
+
let caught;
|
|
1795
|
+
try {
|
|
1796
|
+
await runOrchestrator({
|
|
1797
|
+
prompt: 'elevated quota-bound run',
|
|
1798
|
+
tag: 'Spec',
|
|
1799
|
+
options: { fresh: true },
|
|
1800
|
+
config: declaredConfig({ fallbackModel: 'anthropic:claude-sonnet-4-6' }),
|
|
1801
|
+
cwd: tmpDir,
|
|
1802
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1803
|
+
artifact: {
|
|
1804
|
+
...artifactRequest(undefined, (hash, artifactPath) => failures.push({ hash, artifactPath })),
|
|
1805
|
+
onEmitted,
|
|
1806
|
+
},
|
|
1807
|
+
});
|
|
1808
|
+
}
|
|
1809
|
+
catch (err) {
|
|
1810
|
+
caught = err;
|
|
1811
|
+
}
|
|
1812
|
+
expect(caught).toBeInstanceOf(OrchestratorInvokeError);
|
|
1813
|
+
expect(caught).toBeInstanceOf(TotemOrchestratorError);
|
|
1814
|
+
expect(caught).toMatchObject({
|
|
1815
|
+
kind: 'quota',
|
|
1816
|
+
failureArtifactHash: failures[0]?.hash,
|
|
1817
|
+
attempts: [expect.objectContaining({ failureKind: 'quota', route: 'sdk' })],
|
|
1818
|
+
});
|
|
1819
|
+
expect(caught.message).toMatch(/429 quota exhausted[\s\S]*self_grounding_agent/);
|
|
1820
|
+
expect(failures).toHaveLength(1);
|
|
1821
|
+
const artifact = InvocationFailureArtifactSchema.parse(JSON.parse(fs.readFileSync(failures[0].artifactPath, 'utf-8')));
|
|
1822
|
+
expect(artifact.terminal).toMatchObject({ kind: 'quota', attempt: 1 });
|
|
1823
|
+
expect(artifact.attempts).toHaveLength(1);
|
|
1432
1824
|
// Exactly ONE invoke: the primary. The cross-provider fallback was never invoked.
|
|
1433
1825
|
expect(mockInvoke).toHaveBeenCalledTimes(1);
|
|
1434
1826
|
expect(onEmitted).not.toHaveBeenCalled();
|