diff --git a/server/tests/unit/product-discovery-schema-parity.test.ts b/server/tests/unit/product-discovery-schema-parity.test.ts index ad358991e2..e76dbc9f31 100644 --- a/server/tests/unit/product-discovery-schema-parity.test.ts +++ b/server/tests/unit/product-discovery-schema-parity.test.ts @@ -113,8 +113,8 @@ describe('product discovery MCP schema parity', () => { ); // Structured targeting is intentionally present on listing, proposal, and // revision requests. Standalone MCP schemas must bundle those refs, so - // retain strict validation while keeping the four-tool surface under 128 KiB. - expect(totalBytes).toBeLessThanOrEqual(128 * 1024); + // retain strict validation while keeping the four-tool surface under 132 KiB. + expect(totalBytes).toBeLessThanOrEqual(132 * 1024); const list = tools.find(tool => tool.name === 'list_products')!.inputSchema as JsonSchema; const criteria = resolveLocalRef(list, list.properties.criteria); diff --git a/tests/mcp-schema-analysis.test.cjs b/tests/mcp-schema-analysis.test.cjs index faeb3bc73a..8d4d33bdd0 100644 --- a/tests/mcp-schema-analysis.test.cjs +++ b/tests/mcp-schema-analysis.test.cjs @@ -34,9 +34,9 @@ test("input-field weight report attributes the largest transitive schema graphs" const report = analyzeInputSchemaWeights(schemas); assert.equal(report.tool_count, 16); - assert.equal(report.definition_instances, 562); - assert.equal(report.unique_definitions, 143); - assert.equal(report.repeated_definitions, 105); + assert.equal(report.definition_instances, 567); + assert.equal(report.unique_definitions, 146); + assert.equal(report.repeated_definitions, 106); assert.ok(report.repeated_definition_bytes > 180_000); assert.deepEqual( @@ -155,7 +155,7 @@ test("shared dictionary resolves every experimental tool schema when explicitly }); assert.equal(view.dictionary.$id, DICTIONARY_ID); - assert.equal(Object.keys(view.dictionary.$defs).length, 143); + assert.equal(Object.keys(view.dictionary.$defs).length, 146); for (const tool of Object.values(view.tools)) { assert.equal(tool.inputSchema.$defs, undefined); assert.match( @@ -215,7 +215,7 @@ test("experiment report keeps all alternatives smaller than standalone model con assert.equal(report.status, "non-normative"); assert.equal(report.prompt_cleanup_adapter.required, true); assert.equal(report.selection.tools.length, 16); - assert.equal(variants.standalone.context_bytes, 292_717); + assert.equal(variants.standalone.context_bytes, 294_495); assert.ok( variants.prompt_cleanup.context_bytes < variants.standalone.context_bytes * 0.82 @@ -228,10 +228,10 @@ test("experiment report keeps all alternatives smaller than standalone model con variants.shared_dictionary_with_prompt_cleanup.context_bytes < variants.shared_dictionary.context_bytes ); - assert.equal(variants.shared_dictionary.dictionary_definitions, 143); + assert.equal(variants.shared_dictionary.dictionary_definitions, 146); assert.equal( variants.shared_dictionary_with_prompt_cleanup.dictionary_definitions, - 122 + 125 ); const { tools } = loadRepresentativeMediaBuyRuntime(); diff --git a/tests/mcp-schema-projection.test.cjs b/tests/mcp-schema-projection.test.cjs index 1c2095e231..f8405d89b4 100644 --- a/tests/mcp-schema-projection.test.cjs +++ b/tests/mcp-schema-projection.test.cjs @@ -970,8 +970,8 @@ test('generated role profiles are active validation catalogs with bounded model- modelContextBytes += Buffer.byteLength(JSON.stringify(readJson(modelInputPath))); } assert.ok( - modelContextBytes < 384 * 1024, - `${profileName} model-context inputs exceed 384 KiB: ${modelContextBytes}` + modelContextBytes < 388 * 1024, + `${profileName} model-context inputs exceed 388 KiB: ${modelContextBytes}` ); }