

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# packages/shared/contracts — shared wire contracts (JSON Schema)23Source-of-truth schemas for cross-service/SDK wire shapes:4`schemas/policy.schema.json` covers tenant policy and5`schemas/practice.schema.json` covers practice-library records.67## Layout89- `schemas/policy.schema.json` — JSON Schema 2020-12 for the tenant policy object (required: version, runtime_mode, fail_policy, providers, limits, retention, optimizers, telemetry, sdk)10- `schemas/practice.schema.json` — strict JSON Schema 2020-12 for one practice record; unknown fields and enums fail closed11- `schemas/adapter-conformance.schema.json` — static Pi/Claude/Vercel AI SDK/Eve/12 Mastra contract-record shape; `evidence: static_contract_only` explicitly13 denies executable proof14- `schemas/canonical-span.schema.json` — `caveman.span.v1`, the normalized15 evidence-plane span shared by trace intelligence and replay16- `schemas/agent-run-receipt.schema.json` — `caveman.agent.run-receipt.v1`,17 content-blind per-run SDK economic receipt. It is a shared wire shape, not an18 anonymous CLI event and not a signed verified-savings receipt. Retry events19 carry reserved spend, measured spend, and measurement basis20- `schemas/continuous-improvement-report.schema.json` — versioned end-to-end21 improvement report; the current generated result is E3 `inferred` /22 `symbolic_counterfactual`. E4 `replayed_counterfactual` remains a reserved23 actual recorded-output/sandbox shape and never means verified savings24- `scripts/validate-schemas.mjs` — compiles every schema with AJV, validates25 adapter fixtures, and checks their shared static contract fields26- `package.json` — build/lint/test scripts run schema validation (no compiled output)2728## Key schema fields2930- `capabilities` — `{ compress?, cache_hints?, routing? }` booleans, `additionalProperties: false`; the authoritative description of what a project optimizes. An unordered SET, not a stage — the three compose31- `pass_through` — boolean; forbids every transform. Outranks `capabilities`, which are retained so operator toggles keep their remembered positions32- `runtime_mode` — `record | recommend | shadow | canary | active | compress`; **a DERIVED display string, not an input**. Still `required` for the compat window (removal 2026-10-01) because `projects.runtime_mode` and the telemetry write validator read it. A doc carrying `capabilities` is authoritative and its `runtime_mode` derives from them; a legacy doc carrying only `runtime_mode` derives the capability set33- `fail_policy` — `fail_open | fail_closed`; unknown values fail closed (honesty rule)34- `limits.monthly_usd` — `{ soft, hard }` spend caps per tenant35- `telemetry.sample_rate` — float 0–1, validated by schema minimum/maximum36- `runtime_policies` — OPTIONAL array (additive, nothing new required): the per-task-family runtime policies delivered to SDK callers through the policy overlay and served by the gateway's `GET /sdk/v1/runtime-policy`. Guard ops are a closed set (`eq|ne|gt|gte|lt|lte|in`, AND-ed); `budget` is an advisory cap the caller enforces, never a savings figure; the renderer drops a structurally invalid policy WHOLE rather than stripping the broken guard or experiment, because either strip would widen who the policy applies to37- `additionalProperties: true` — intentional; services and optimizers may extend the object3839## Conventions4041- Schema version is an integer; `policy_schema_version` returned by `cloud/control-api/internal/httpapi/server.go:372`42- Adding a new required field is a **breaking change** — bump `version` and coordinate across control-api, SDKs, web43- No TypeScript types generated from schema yet; the web dashboard manually mirrors the shape44- `scripts/check-contract-compat.mjs` **at the REPO ROOT** (`make check-contract-compat`), not this package's `scripts/`, is a bounded 2020-12 compatibility gate: it proves common narrowing constraints (types, enums/consts, bounds, object/array applicators, and supported combinators/refs) and treats changed unknown assertion/applicator keywords or unresolved reference semantics as major-version review items. Metadata annotations remain non-breaking. It is intentionally not a complete JSON Schema subsumption prover; add a focused fixture before relying on a new keyword.4546## Gotchas4748- `fail_policy: fail_closed` aligns with repo honesty rule: unknown enum cases must fail closed, not pass through49- `runtime_mode: record` is always pass-through (byte-safe rule); never treat it as an optimizer mode50- The six `runtime_mode` values are **not ordered**. Code comparing them for rank (`mode >= "canary"`) is a bug; the four middle values are behaviourally identical, and `shadow`/`canary` are display labels rather than traffic splits. The derivation lives in exactly one place, `cloud/internal/capability`, because the gateway, control-api, and the worker must never disagree about what a document means51- Build script validates schemas and static fixtures; it emits no artifact and52 does not prove executable cross-harness parity5354See ../../../CLAUDE.md (root)55
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| JuliusBrussee/cavemanCLAUDE.md · 98k | CLAUDE.md | archgitdo-notagent-behaviour+1 | 73/100 | today | |
| JuliusBrussee/cavemanagents/AGENTS.md · 98k | AGENTS.md | agent-behaviour | 16/100 | today | |
| JuliusBrussee/cavemanagents/CLAUDE.md · 98k | CLAUDE.md | stylearchsecurityagent-behaviour | 64/100 | today | |
| JuliusBrussee/cavemanbrowse/CLAUDE.md · 98k | CLAUDE.md | testarch | 59/100 | today | |
| JuliusBrussee/cavemancacheengine/CLAUDE.md · 98k | CLAUDE.md | testarch | 73/100 | today | |
| JuliusBrussee/cavemanengine/AGENTS.md · 98k | AGENTS.md | stylearch | 66/100 | today | |
| JuliusBrussee/cavemanengine/CLAUDE.md · 98k | CLAUDE.md | stylearch | 58/100 | today | |
| JuliusBrussee/cavemanextension/AGENTS.md · 98k | AGENTS.md | buildteststylearch+1 | 73/100 | today | |
| JuliusBrussee/cavemanextension/CLAUDE.md · 98k | CLAUDE.md | buildteststylearch+1 | 73/100 | today | |
| JuliusBrussee/cavemanintegrations/CLAUDE.md · 98k | CLAUDE.md | stylearch | 55/100 | today | |
| JuliusBrussee/cavemanmcp/AGENTS.md · 98k | AGENTS.md | stylearch | 79/100 | today | |
| JuliusBrussee/cavemanmcp/CLAUDE.md · 98k | CLAUDE.md | stylearch | 79/100 | today | |
| JuliusBrussee/cavemanmem/AGENTS.md · 98k | AGENTS.md | stylearchperformanceagent-behaviour | 67/100 | today | |
| JuliusBrussee/cavemanmem/CLAUDE.md · 98k | CLAUDE.md | stylearchperformanceagent-behaviour | 71/100 | today | |
| JuliusBrussee/cavemanpackages/agent/CLAUDE.md · 98k | CLAUDE.md | archtesting-strategysecuritydependencies+2 | 34/100 | today | |
| JuliusBrussee/cavemanpackages/cli/AGENTS.md · 98k | AGENTS.md | stylearchdependenciesmonorepo | 71/100 | today | |
| JuliusBrussee/cavemanpackages/cli/CLAUDE.md · 98k | CLAUDE.md | stylearchdependenciesmonorepo | 71/100 | today | |
| JuliusBrussee/cavemanpackages/create-caveman-agent/CLAUDE.md · 98k | CLAUDE.md | archdependenciesmonorepoagent-behaviour | 36/100 | today | |
| JuliusBrussee/cavemanpackages/graders/AGENTS.md · 98k | AGENTS.md | teststylearchtypes+3 | 75/100 | today | |
| JuliusBrussee/cavemanpackages/graders/CLAUDE.md · 98k | CLAUDE.md | teststylearchtypes+3 | 75/100 | today |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| stacklok/toolhiveCLAUDE.md · 2.0k | CLAUDE.md | buildteststylearch+4 | 100/100 | 14 days ago | |
| Adit-Jain-srm/NightmareNetCLAUDE.md · 46 | CLAUDE.md | buildtestlint-formatstyle+6 | 100/100 | 14 days ago | |
| microsoft/playwrightCLAUDE.md · 95k | CLAUDE.md | buildtestlint-formatstyle+7 | 100/100 | 7 days ago | |
| nimbalyst/nimbalystpackages/android/CLAUDE.md · 1.5k | CLAUDE.md | setupbuildstylearch+2 | 100/100 | 14 days ago | |
| dotCMS/corecore-web/CLAUDE.md · 949 | CLAUDE.md | teststylearchtesting-strategy+3 | 100/100 | 14 days ago | |
| tphakala/birdnet-goCLAUDE.md · 1.6k | CLAUDE.md | buildtestlint-formatstyle+8 | 100/100 | today | |
| tyrchen/geektime-bootcamp-aiw7/genslides/backend/CLAUDE.md · 230 | CLAUDE.md | testlint-formatstylearch+6 | 100/100 | 9 days ago | |
| bagisto/bagistoCLAUDE.md · 28k | CLAUDE.md | setupbuildteststyle+5 | 100/100 | 7 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/juliusbrussee-caveman-packages-shared-contracts-claude)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.