@mmnto/cli 1.57.0 → 1.58.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/config-drift.test.js +0 -1
- package/dist/commands/config-drift.test.js.map +1 -1
- package/dist/commands/shield.d.ts.map +1 -1
- package/dist/commands/shield.js +7 -1
- package/dist/commands/shield.js.map +1 -1
- package/dist/commands/spec.d.ts.map +1 -1
- package/dist/commands/spec.js +5 -1
- package/dist/commands/spec.js.map +1 -1
- package/dist/orchestrators/conformance.test.js +56 -0
- package/dist/orchestrators/conformance.test.js.map +1 -1
- package/dist/orchestrators/orchestrator.d.ts +13 -1
- package/dist/orchestrators/orchestrator.d.ts.map +1 -1
- package/dist/orchestrators/orchestrator.js.map +1 -1
- package/dist/services/run-artifacts.d.ts +4 -0
- package/dist/services/run-artifacts.d.ts.map +1 -1
- package/dist/services/run-artifacts.js +46 -1
- package/dist/services/run-artifacts.js.map +1 -1
- package/dist/services/run-artifacts.test.js +82 -0
- package/dist/services/run-artifacts.test.js.map +1 -1
- package/dist/utils.d.ts +17 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +165 -14
- package/dist/utils.js.map +1 -1
- package/dist/utils.test.js +472 -0
- 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
|
@@ -1205,4 +1205,476 @@ describe('runOrchestrator artifact emission (#2100)', { timeout: 15_000 }, () =>
|
|
|
1205
1205
|
expect(artifact.output.content).toBe('fallback result');
|
|
1206
1206
|
});
|
|
1207
1207
|
});
|
|
1208
|
+
// ─── runOrchestrator admission contract (mmnto-ai/totem#2102) ──
|
|
1209
|
+
describe('runOrchestrator admission contract (#2102)', { timeout: 15_000 }, () => {
|
|
1210
|
+
let tmpDir;
|
|
1211
|
+
const GROUNDING_HASH = 'b'.repeat(64);
|
|
1212
|
+
function artifactRequest(onEmitted) {
|
|
1213
|
+
return {
|
|
1214
|
+
groundingHash: GROUNDING_HASH,
|
|
1215
|
+
provenanceSummary: 'similarity-only',
|
|
1216
|
+
...(onEmitted !== undefined ? { onEmitted } : {}),
|
|
1217
|
+
};
|
|
1218
|
+
}
|
|
1219
|
+
/** Orchestrator config WITHOUT a declared capability (today's default). */
|
|
1220
|
+
function plainConfig(overrides) {
|
|
1221
|
+
return {
|
|
1222
|
+
targets: [{ glob: '**/*.ts', type: 'code', strategy: 'typescript-ast' }],
|
|
1223
|
+
orchestrator: {
|
|
1224
|
+
provider: 'gemini',
|
|
1225
|
+
defaultModel: 'gemini-3-flash-preview',
|
|
1226
|
+
},
|
|
1227
|
+
totemDir: '.totem',
|
|
1228
|
+
lanceDir: '.lancedb',
|
|
1229
|
+
ignorePatterns: [],
|
|
1230
|
+
contextWarningThreshold: 40_000,
|
|
1231
|
+
...overrides,
|
|
1232
|
+
};
|
|
1233
|
+
}
|
|
1234
|
+
/** Orchestrator config that DECLARES self_grounding_agent capability. */
|
|
1235
|
+
function declaredConfig(orchestratorOverrides) {
|
|
1236
|
+
const base = plainConfig();
|
|
1237
|
+
return {
|
|
1238
|
+
...base,
|
|
1239
|
+
orchestrator: {
|
|
1240
|
+
...base.orchestrator,
|
|
1241
|
+
capabilities: { admissionClasses: ['self_grounding_agent'] },
|
|
1242
|
+
...orchestratorOverrides,
|
|
1243
|
+
},
|
|
1244
|
+
};
|
|
1245
|
+
}
|
|
1246
|
+
function runsDirPath() {
|
|
1247
|
+
return path.join(tmpDir, '.totem', 'artifacts', 'runs');
|
|
1248
|
+
}
|
|
1249
|
+
function readArtifact(hash) {
|
|
1250
|
+
const file = path.join(runsDirPath(), `${hash}.json`);
|
|
1251
|
+
return RunArtifactSchema.parse(JSON.parse(fs.readFileSync(file, 'utf-8')));
|
|
1252
|
+
}
|
|
1253
|
+
beforeEach(() => {
|
|
1254
|
+
vi.clearAllMocks();
|
|
1255
|
+
tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), 'totem-admission-'));
|
|
1256
|
+
vi.spyOn(process, 'cwd').mockReturnValue(tmpDir);
|
|
1257
|
+
const mockInvoke = vi.fn().mockResolvedValue({
|
|
1258
|
+
content: 'mock result',
|
|
1259
|
+
inputTokens: 100,
|
|
1260
|
+
outputTokens: 50,
|
|
1261
|
+
durationMs: 500,
|
|
1262
|
+
});
|
|
1263
|
+
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1264
|
+
});
|
|
1265
|
+
afterEach(() => {
|
|
1266
|
+
vi.restoreAllMocks();
|
|
1267
|
+
cleanTmpDir(tmpDir);
|
|
1268
|
+
});
|
|
1269
|
+
it('omitting every new field yields a byte-identical invoke payload and identical artifact backend (invariant 1)', async () => {
|
|
1270
|
+
const emitted = [];
|
|
1271
|
+
await runOrchestrator({
|
|
1272
|
+
prompt: 'test prompt',
|
|
1273
|
+
tag: 'Spec',
|
|
1274
|
+
options: { fresh: true },
|
|
1275
|
+
config: plainConfig(),
|
|
1276
|
+
cwd: tmpDir,
|
|
1277
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1278
|
+
});
|
|
1279
|
+
// Byte-identical provider payload: the EXACT pre-#2102 key set, no
|
|
1280
|
+
// admission transport keys of any kind.
|
|
1281
|
+
const invoke = mockedCreateOrchestrator.mock.results[0].value;
|
|
1282
|
+
expect(invoke.mock.calls[0][0]).toStrictEqual({
|
|
1283
|
+
prompt: 'test prompt',
|
|
1284
|
+
model: 'gemini-3-flash-preview',
|
|
1285
|
+
cwd: tmpDir,
|
|
1286
|
+
tag: 'Spec',
|
|
1287
|
+
totemDir: '.totem',
|
|
1288
|
+
temperature: undefined,
|
|
1289
|
+
});
|
|
1290
|
+
// Identical artifact backend — decided by DEFAULT now, not constant.
|
|
1291
|
+
const artifact = readArtifact(emitted[0]);
|
|
1292
|
+
expect(artifact.backend.admissionClass).toBe('completion_only');
|
|
1293
|
+
expect(artifact.backend.taskProfile).toBe('Spec');
|
|
1294
|
+
expect(artifact.admission).toBeUndefined();
|
|
1295
|
+
});
|
|
1296
|
+
it('a requested-but-undeclared admission class fails loud before any invoke — no tokens, no artifact (invariant 2)', async () => {
|
|
1297
|
+
await expect(runOrchestrator({
|
|
1298
|
+
prompt: 'elevated request',
|
|
1299
|
+
tag: 'Spec',
|
|
1300
|
+
options: { fresh: true },
|
|
1301
|
+
config: plainConfig(), // no capabilities declared
|
|
1302
|
+
cwd: tmpDir,
|
|
1303
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1304
|
+
artifact: artifactRequest(),
|
|
1305
|
+
})).rejects.toThrow(/self_grounding_agent/);
|
|
1306
|
+
const invoke = mockedCreateOrchestrator.mock.results[0]?.value;
|
|
1307
|
+
if (invoke !== undefined) {
|
|
1308
|
+
expect(invoke).not.toHaveBeenCalled();
|
|
1309
|
+
}
|
|
1310
|
+
expect(fs.existsSync(path.join(tmpDir, '.totem', 'artifacts'))).toBe(false);
|
|
1311
|
+
});
|
|
1312
|
+
it('the admitted class lands in backend.admissionClass verbatim; taskProfile records task ?? tag (invariant 3)', async () => {
|
|
1313
|
+
const emitted = [];
|
|
1314
|
+
await runOrchestrator({
|
|
1315
|
+
prompt: 'admitted run',
|
|
1316
|
+
tag: 'Spec',
|
|
1317
|
+
options: { fresh: true },
|
|
1318
|
+
config: declaredConfig(),
|
|
1319
|
+
cwd: tmpDir,
|
|
1320
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1321
|
+
task: 'eval-fixture',
|
|
1322
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1323
|
+
});
|
|
1324
|
+
const artifact = readArtifact(emitted[0]);
|
|
1325
|
+
expect(artifact.backend.admissionClass).toBe('self_grounding_agent');
|
|
1326
|
+
expect(artifact.backend.taskProfile).toBe('eval-fixture');
|
|
1327
|
+
});
|
|
1328
|
+
it('inputHash is unaffected by every new contract field (invariant 4)', async () => {
|
|
1329
|
+
const emitted = [];
|
|
1330
|
+
const shared = {
|
|
1331
|
+
prompt: 'identical prompt',
|
|
1332
|
+
tag: 'Spec',
|
|
1333
|
+
options: { fresh: true },
|
|
1334
|
+
config: declaredConfig(),
|
|
1335
|
+
cwd: tmpDir,
|
|
1336
|
+
};
|
|
1337
|
+
await runOrchestrator({
|
|
1338
|
+
...shared,
|
|
1339
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1340
|
+
});
|
|
1341
|
+
await runOrchestrator({
|
|
1342
|
+
...shared,
|
|
1343
|
+
task: 'eval-fixture',
|
|
1344
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1345
|
+
contextPolicy: { budget: 8000 },
|
|
1346
|
+
outputContract: { citationsRequired: true },
|
|
1347
|
+
runMetadata: { caller: 'test' },
|
|
1348
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1349
|
+
});
|
|
1350
|
+
const bare = readArtifact(emitted[0]);
|
|
1351
|
+
const hydrated = readArtifact(emitted[1]);
|
|
1352
|
+
expect(hydrated.inputHash).toBe(bare.inputHash);
|
|
1353
|
+
});
|
|
1354
|
+
it('a provider-qualified PRIMARY that resolves cross-provider under an elevated class is denied BEFORE the invoke', async () => {
|
|
1355
|
+
// #2148 round-1 (CR major + Greptile P2): the capability declaration is
|
|
1356
|
+
// config-level (base-provider scoped), but `resolveOrchestrator` can route
|
|
1357
|
+
// a provider-qualified primary model to a DIFFERENT provider — the gate
|
|
1358
|
+
// must hold per RESOLVED backend on the primary path too, not just the
|
|
1359
|
+
// quota-fallback path.
|
|
1360
|
+
const onEmitted = vi.fn();
|
|
1361
|
+
await expect(runOrchestrator({
|
|
1362
|
+
prompt: 'cross-provider elevated primary',
|
|
1363
|
+
tag: 'Spec',
|
|
1364
|
+
options: { fresh: true, model: 'anthropic:claude-sonnet-4-6' },
|
|
1365
|
+
config: declaredConfig(), // gemini base config WITH self_grounding_agent declared
|
|
1366
|
+
cwd: tmpDir,
|
|
1367
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1368
|
+
artifact: { ...artifactRequest(), onEmitted },
|
|
1369
|
+
})).rejects.toThrow(/cross-provider routing is not admitted/i);
|
|
1370
|
+
// ZERO invokes: every orchestrator the mocked factory handed out stayed idle.
|
|
1371
|
+
for (const created of mockedCreateOrchestrator.mock.results) {
|
|
1372
|
+
expect(created.value).not.toHaveBeenCalled();
|
|
1373
|
+
}
|
|
1374
|
+
expect(onEmitted).not.toHaveBeenCalled();
|
|
1375
|
+
expect(fs.existsSync(path.join(tmpDir, '.totem', 'artifacts'))).toBe(false);
|
|
1376
|
+
});
|
|
1377
|
+
it('a declared self_grounding_agent run whose quota fallback resolves cross-provider fails BEFORE the fallback invoke (invariant 5)', async () => {
|
|
1378
|
+
const quotaErr = new Error('429 quota exhausted');
|
|
1379
|
+
quotaErr.name = 'QuotaError';
|
|
1380
|
+
const mockInvoke = vi.fn().mockRejectedValueOnce(quotaErr).mockResolvedValue({
|
|
1381
|
+
content: 'fallback result',
|
|
1382
|
+
durationMs: 300,
|
|
1383
|
+
});
|
|
1384
|
+
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1385
|
+
const onEmitted = vi.fn();
|
|
1386
|
+
await expect(runOrchestrator({
|
|
1387
|
+
prompt: 'elevated quota-bound run',
|
|
1388
|
+
tag: 'Spec',
|
|
1389
|
+
options: { fresh: true },
|
|
1390
|
+
config: declaredConfig({ fallbackModel: 'anthropic:claude-sonnet-4-6' }),
|
|
1391
|
+
cwd: tmpDir,
|
|
1392
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1393
|
+
artifact: { ...artifactRequest(), onEmitted },
|
|
1394
|
+
})).rejects.toThrow(/429 quota exhausted[\s\S]*self_grounding_agent/);
|
|
1395
|
+
// Exactly ONE invoke: the primary. The cross-provider fallback was never invoked.
|
|
1396
|
+
expect(mockInvoke).toHaveBeenCalledTimes(1);
|
|
1397
|
+
expect(onEmitted).not.toHaveBeenCalled();
|
|
1398
|
+
});
|
|
1399
|
+
it('a same-provider quota fallback under an elevated class is admitted', async () => {
|
|
1400
|
+
const quotaErr = new Error('429 quota exhausted');
|
|
1401
|
+
quotaErr.name = 'QuotaError';
|
|
1402
|
+
const mockInvoke = vi.fn().mockRejectedValueOnce(quotaErr).mockResolvedValue({
|
|
1403
|
+
content: 'fallback result',
|
|
1404
|
+
durationMs: 300,
|
|
1405
|
+
});
|
|
1406
|
+
mockedCreateOrchestrator.mockReturnValue(mockInvoke);
|
|
1407
|
+
const emitted = [];
|
|
1408
|
+
const result = await runOrchestrator({
|
|
1409
|
+
prompt: 'elevated quota-bound run',
|
|
1410
|
+
tag: 'Spec',
|
|
1411
|
+
options: { fresh: true },
|
|
1412
|
+
config: declaredConfig({
|
|
1413
|
+
defaultModel: 'gemini-3.1-pro-preview',
|
|
1414
|
+
fallbackModel: 'gemini-3-flash-preview',
|
|
1415
|
+
}),
|
|
1416
|
+
cwd: tmpDir,
|
|
1417
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1418
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1419
|
+
});
|
|
1420
|
+
expect(result).toBe('fallback result');
|
|
1421
|
+
const artifact = readArtifact(emitted[0]);
|
|
1422
|
+
expect(artifact.backend.admissionClass).toBe('self_grounding_agent');
|
|
1423
|
+
expect(artifact.backend.qualifiedModel).toBe('gemini-3-flash-preview');
|
|
1424
|
+
});
|
|
1425
|
+
it('records the admission group only when at least one member is supplied', async () => {
|
|
1426
|
+
const emitted = [];
|
|
1427
|
+
const admission = {
|
|
1428
|
+
outputContract: { citationsRequired: true, verifyFallback: true },
|
|
1429
|
+
contextPolicy: { budget: 16_000 },
|
|
1430
|
+
runMetadata: { caller: 'test', command: 'spec' },
|
|
1431
|
+
};
|
|
1432
|
+
await runOrchestrator({
|
|
1433
|
+
prompt: 'contract run',
|
|
1434
|
+
tag: 'Spec',
|
|
1435
|
+
options: { fresh: true },
|
|
1436
|
+
config: plainConfig(),
|
|
1437
|
+
cwd: tmpDir,
|
|
1438
|
+
...admission,
|
|
1439
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1440
|
+
});
|
|
1441
|
+
// Class-only run: backendAdmissionClass is recorded in backend, NOT the group.
|
|
1442
|
+
await runOrchestrator({
|
|
1443
|
+
prompt: 'class-only run',
|
|
1444
|
+
tag: 'Spec',
|
|
1445
|
+
options: { fresh: true },
|
|
1446
|
+
config: declaredConfig(),
|
|
1447
|
+
cwd: tmpDir,
|
|
1448
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1449
|
+
artifact: artifactRequest((hash) => emitted.push(hash)),
|
|
1450
|
+
});
|
|
1451
|
+
const withGroup = readArtifact(emitted[0]);
|
|
1452
|
+
expect(withGroup.admission).toEqual(admission);
|
|
1453
|
+
const classOnlyRaw = fs.readFileSync(path.join(runsDirPath(), `${emitted[1]}.json`), 'utf-8');
|
|
1454
|
+
expect(JSON.parse(classOnlyRaw)).not.toHaveProperty('admission');
|
|
1455
|
+
});
|
|
1456
|
+
it('threads the supplied transport fields to the provider invoke verbatim', async () => {
|
|
1457
|
+
await runOrchestrator({
|
|
1458
|
+
prompt: 'threaded run',
|
|
1459
|
+
tag: 'Spec',
|
|
1460
|
+
options: { fresh: true },
|
|
1461
|
+
config: declaredConfig(),
|
|
1462
|
+
cwd: tmpDir,
|
|
1463
|
+
task: 'eval-fixture',
|
|
1464
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1465
|
+
contextPolicy: { budget: 8000 },
|
|
1466
|
+
outputContract: { citationsRequired: true },
|
|
1467
|
+
runMetadata: { caller: 'test' },
|
|
1468
|
+
});
|
|
1469
|
+
const invoke = mockedCreateOrchestrator.mock.results[0].value;
|
|
1470
|
+
expect(invoke).toHaveBeenCalledWith(expect.objectContaining({
|
|
1471
|
+
task: 'eval-fixture',
|
|
1472
|
+
backendAdmissionClass: 'self_grounding_agent',
|
|
1473
|
+
contextPolicy: { budget: 8000 },
|
|
1474
|
+
outputContract: { citationsRequired: true },
|
|
1475
|
+
runMetadata: { caller: 'test' },
|
|
1476
|
+
}));
|
|
1477
|
+
});
|
|
1478
|
+
it('mismatched groundingBundle and artifact.bundle is an ambiguous grounding identity — hard error before invoke', async () => {
|
|
1479
|
+
const bundleA = {
|
|
1480
|
+
items: [
|
|
1481
|
+
{
|
|
1482
|
+
provenance: 'similarity-only',
|
|
1483
|
+
contentHash: 'c'.repeat(64),
|
|
1484
|
+
sourceType: 'code',
|
|
1485
|
+
filePath: 'src/a.ts',
|
|
1486
|
+
},
|
|
1487
|
+
],
|
|
1488
|
+
};
|
|
1489
|
+
const bundleB = {
|
|
1490
|
+
items: [
|
|
1491
|
+
{
|
|
1492
|
+
provenance: 'similarity-only',
|
|
1493
|
+
contentHash: 'd'.repeat(64),
|
|
1494
|
+
sourceType: 'code',
|
|
1495
|
+
filePath: 'src/b.ts',
|
|
1496
|
+
},
|
|
1497
|
+
],
|
|
1498
|
+
};
|
|
1499
|
+
await expect(runOrchestrator({
|
|
1500
|
+
prompt: 'ambiguous run',
|
|
1501
|
+
tag: 'Spec',
|
|
1502
|
+
options: { fresh: true },
|
|
1503
|
+
config: plainConfig(),
|
|
1504
|
+
cwd: tmpDir,
|
|
1505
|
+
groundingBundle: bundleA,
|
|
1506
|
+
artifact: {
|
|
1507
|
+
groundingHash: calculateDeterministicHash(bundleB),
|
|
1508
|
+
provenanceSummary: summarizeProvenance(bundleB),
|
|
1509
|
+
bundle: bundleB,
|
|
1510
|
+
},
|
|
1511
|
+
})).rejects.toThrow(/ambiguous grounding identity/i);
|
|
1512
|
+
const invoke = mockedCreateOrchestrator.mock.results[0]?.value;
|
|
1513
|
+
if (invoke !== undefined) {
|
|
1514
|
+
expect(invoke).not.toHaveBeenCalled();
|
|
1515
|
+
}
|
|
1516
|
+
});
|
|
1517
|
+
it('a supplied groundingBundle flows into the artifact bundle role when artifact.bundle is absent', async () => {
|
|
1518
|
+
const bundle = {
|
|
1519
|
+
items: [
|
|
1520
|
+
{
|
|
1521
|
+
provenance: 'similarity-only',
|
|
1522
|
+
contentHash: 'c'.repeat(64),
|
|
1523
|
+
sourceType: 'code',
|
|
1524
|
+
filePath: 'src/x.ts',
|
|
1525
|
+
},
|
|
1526
|
+
],
|
|
1527
|
+
};
|
|
1528
|
+
const emitted = [];
|
|
1529
|
+
await runOrchestrator({
|
|
1530
|
+
prompt: 'bundle-flow run',
|
|
1531
|
+
tag: 'Spec',
|
|
1532
|
+
options: { fresh: true },
|
|
1533
|
+
config: plainConfig(),
|
|
1534
|
+
cwd: tmpDir,
|
|
1535
|
+
groundingBundle: bundle,
|
|
1536
|
+
artifact: {
|
|
1537
|
+
groundingHash: calculateDeterministicHash(bundle),
|
|
1538
|
+
provenanceSummary: summarizeProvenance(bundle),
|
|
1539
|
+
onEmitted: (hash) => emitted.push(hash),
|
|
1540
|
+
},
|
|
1541
|
+
});
|
|
1542
|
+
const artifact = readArtifact(emitted[0]);
|
|
1543
|
+
expect(artifact.grounding.bundle).toEqual(bundle);
|
|
1544
|
+
// #2148 round-1: the recorded hash must recompute from the recorded
|
|
1545
|
+
// bundle — the adopted-bundle path verifies the attested hash (never
|
|
1546
|
+
// recomputes it) before recording.
|
|
1547
|
+
expect(artifact.grounding.hash).toBe(calculateDeterministicHash(artifact.grounding.bundle));
|
|
1548
|
+
});
|
|
1549
|
+
it('an adopted groundingBundle whose hash mismatches artifact.groundingHash is rejected before invoke (verify-and-reject)', async () => {
|
|
1550
|
+
// #2148 round-1: with `artifact.bundle` omitted, the artifact records the
|
|
1551
|
+
// ADOPTED `opts.groundingBundle` but used to trust `artifact.groundingHash`
|
|
1552
|
+
// verbatim — persisting a record whose grounding.hash does not match its
|
|
1553
|
+
// grounding.bundle. The seam records, never re-derives, so the fix is
|
|
1554
|
+
// verify-and-reject, not recompute.
|
|
1555
|
+
const bundle = {
|
|
1556
|
+
items: [
|
|
1557
|
+
{
|
|
1558
|
+
provenance: 'similarity-only',
|
|
1559
|
+
contentHash: 'c'.repeat(64),
|
|
1560
|
+
sourceType: 'code',
|
|
1561
|
+
filePath: 'src/x.ts',
|
|
1562
|
+
},
|
|
1563
|
+
],
|
|
1564
|
+
};
|
|
1565
|
+
await expect(runOrchestrator({
|
|
1566
|
+
prompt: 'forged grounding hash',
|
|
1567
|
+
tag: 'Spec',
|
|
1568
|
+
options: { fresh: true },
|
|
1569
|
+
config: plainConfig(),
|
|
1570
|
+
cwd: tmpDir,
|
|
1571
|
+
groundingBundle: bundle,
|
|
1572
|
+
artifact: {
|
|
1573
|
+
groundingHash: 'e'.repeat(64), // does NOT recompute from the adopted bundle
|
|
1574
|
+
provenanceSummary: 'similarity-only:1',
|
|
1575
|
+
},
|
|
1576
|
+
})).rejects.toThrow(/ambiguous grounding identity/i);
|
|
1577
|
+
const invoke = mockedCreateOrchestrator.mock.results[0]?.value;
|
|
1578
|
+
if (invoke !== undefined) {
|
|
1579
|
+
expect(invoke).not.toHaveBeenCalled();
|
|
1580
|
+
}
|
|
1581
|
+
expect(fs.existsSync(path.join(tmpDir, '.totem', 'artifacts'))).toBe(false);
|
|
1582
|
+
});
|
|
1583
|
+
it('a supplied artifact.bundle flows into the invoke-seam groundingBundle role', async () => {
|
|
1584
|
+
const bundle = {
|
|
1585
|
+
items: [
|
|
1586
|
+
{
|
|
1587
|
+
provenance: 'similarity-only',
|
|
1588
|
+
contentHash: 'c'.repeat(64),
|
|
1589
|
+
sourceType: 'code',
|
|
1590
|
+
filePath: 'src/x.ts',
|
|
1591
|
+
},
|
|
1592
|
+
],
|
|
1593
|
+
};
|
|
1594
|
+
await runOrchestrator({
|
|
1595
|
+
prompt: 'bundle-flow run',
|
|
1596
|
+
tag: 'Spec',
|
|
1597
|
+
options: { fresh: true },
|
|
1598
|
+
config: plainConfig(),
|
|
1599
|
+
cwd: tmpDir,
|
|
1600
|
+
artifact: {
|
|
1601
|
+
groundingHash: calculateDeterministicHash(bundle),
|
|
1602
|
+
provenanceSummary: summarizeProvenance(bundle),
|
|
1603
|
+
bundle,
|
|
1604
|
+
},
|
|
1605
|
+
});
|
|
1606
|
+
const invoke = mockedCreateOrchestrator.mock.results[0].value;
|
|
1607
|
+
expect(invoke).toHaveBeenCalledWith(expect.objectContaining({ groundingBundle: bundle }));
|
|
1608
|
+
});
|
|
1609
|
+
it('matching groundingBundle and artifact.bundle reconcile cleanly (no false ambiguity)', async () => {
|
|
1610
|
+
const bundle = {
|
|
1611
|
+
items: [
|
|
1612
|
+
{
|
|
1613
|
+
provenance: 'similarity-only',
|
|
1614
|
+
contentHash: 'c'.repeat(64),
|
|
1615
|
+
sourceType: 'code',
|
|
1616
|
+
filePath: 'src/x.ts',
|
|
1617
|
+
},
|
|
1618
|
+
],
|
|
1619
|
+
};
|
|
1620
|
+
const emitted = [];
|
|
1621
|
+
const result = await runOrchestrator({
|
|
1622
|
+
prompt: 'reconciled run',
|
|
1623
|
+
tag: 'Spec',
|
|
1624
|
+
options: { fresh: true },
|
|
1625
|
+
config: plainConfig(),
|
|
1626
|
+
cwd: tmpDir,
|
|
1627
|
+
groundingBundle: bundle,
|
|
1628
|
+
artifact: {
|
|
1629
|
+
groundingHash: calculateDeterministicHash(bundle),
|
|
1630
|
+
provenanceSummary: summarizeProvenance(bundle),
|
|
1631
|
+
bundle,
|
|
1632
|
+
onEmitted: (hash) => emitted.push(hash),
|
|
1633
|
+
},
|
|
1634
|
+
});
|
|
1635
|
+
expect(result).toBe('mock result');
|
|
1636
|
+
expect(readArtifact(emitted[0]).grounding.bundle).toEqual(bundle);
|
|
1637
|
+
});
|
|
1638
|
+
// ─── Response-cache key carries the contract (#2148 round-1) ──
|
|
1639
|
+
it('absent contract fields leave the response-cache key byte-identical to the legacy shape (invariant 1 — legacy keys stay warm)', async () => {
|
|
1640
|
+
await runOrchestrator({
|
|
1641
|
+
prompt: 'cache key probe',
|
|
1642
|
+
tag: 'Spec', // Spec carries a default response-cache TTL
|
|
1643
|
+
options: {},
|
|
1644
|
+
config: plainConfig(),
|
|
1645
|
+
cwd: tmpDir,
|
|
1646
|
+
});
|
|
1647
|
+
// The exact legacy construction (see the null-byte delimiter test above):
|
|
1648
|
+
// prompt, systemPrompt, qualifiedModel — and NOTHING else when every
|
|
1649
|
+
// contract field is absent.
|
|
1650
|
+
const legacyHash = crypto
|
|
1651
|
+
.createHash('sha256')
|
|
1652
|
+
.update('cache key probe')
|
|
1653
|
+
.update('\0')
|
|
1654
|
+
.update('')
|
|
1655
|
+
.update('\0')
|
|
1656
|
+
.update('gemini-3-flash-preview')
|
|
1657
|
+
.digest('hex')
|
|
1658
|
+
.slice(0, 16);
|
|
1659
|
+
expect(fs.existsSync(path.join(tmpDir, '.totem', 'cache', `spec-${legacyHash}.json`))).toBe(true);
|
|
1660
|
+
});
|
|
1661
|
+
it('contract fields produce a distinct response-cache key, and differing in ONE contract field differs again (no aliasing)', async () => {
|
|
1662
|
+
const shared = {
|
|
1663
|
+
prompt: 'aliasing probe',
|
|
1664
|
+
tag: 'Spec', // Spec carries a default response-cache TTL
|
|
1665
|
+
options: {},
|
|
1666
|
+
config: plainConfig(),
|
|
1667
|
+
cwd: tmpDir,
|
|
1668
|
+
};
|
|
1669
|
+
await runOrchestrator(shared); // legacy-shaped
|
|
1670
|
+
await runOrchestrator({ ...shared, contextPolicy: { budget: 8000 } });
|
|
1671
|
+
await runOrchestrator({ ...shared, contextPolicy: { budget: 16_000 } });
|
|
1672
|
+
// Three ACTUAL invokes — a contract-bearing call must never be served the
|
|
1673
|
+
// legacy call's cached payload (or another contract's) as a replay.
|
|
1674
|
+
const invoke = mockedCreateOrchestrator.mock.results[0].value;
|
|
1675
|
+
expect(invoke).toHaveBeenCalledTimes(3);
|
|
1676
|
+
// …and three distinct cache keys on disk.
|
|
1677
|
+
expect(fs.readdirSync(path.join(tmpDir, '.totem', 'cache'))).toHaveLength(3);
|
|
1678
|
+
});
|
|
1679
|
+
});
|
|
1208
1680
|
//# sourceMappingURL=utils.test.js.map
|