JuliusBrussee/caveman · error · Error
agent conformance fixtures must cover claude and pi
Error message
agent conformance fixtures must cover claude and pi
What it means
Error "agent conformance fixtures must cover claude and pi" thrown in JuliusBrussee/caveman.
Source
Thrown at packages/shared/contracts/scripts/validate-schemas.mjs:62
const fixtures = await Promise.all(
fixtureFiles.map(async (file) => JSON.parse(await readFile(path.join(agentFixtureRoot, file), "utf8"))),
);
const validateAdapterConformance = ajv.getSchema(
"https://caveman.so/schemas/adapter-conformance.schema.json",
);
if (!validateAdapterConformance) {
throw new Error("adapter conformance schema failed to compile");
}
for (const [index, fixture] of fixtures.entries()) {
if (!validateAdapterConformance(fixture)) {
throw new Error(
`${fixtureFiles[index]}: ${ajv.errorsText(validateAdapterConformance.errors)}`,
);
}
}
const [claude, pi] = fixtures;
if (claude.harness !== "claude" || pi.harness !== "pi") {
throw new Error("agent conformance fixtures must cover claude and pi");
}
for (const key of [
"normalized_context_digest",
"plan_sha256",
"ordered_transform_ids",
"provider_visible_digest",
"recovery_handles",
"accounting_method",
"failure_fallback",
]) {
if (JSON.stringify(claude[key]) !== JSON.stringify(pi[key])) {
throw new Error(`agent conformance mismatch: ${key}`);
}
}
if (claude.build_sha256 === pi.build_sha256) {
throw new Error("adapter-specific build_sha256 values must differ");
}View on GitHub (pinned to 27d5a3981a)
Solutions
- Provide conformance fixtures covering both claude and pi.
When it happens
Trigger: Thrown at packages/shared/contracts/scripts/validate-schemas.mjs:62 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15).
Data as JSON: /api/errors/f71c07e7f450dbce.
Report an issue: GitHub.