fluid-core/conformance/fixtures
tegwick 76912adef8
Some checks failed
ci / build (push) Failing after 1m6s
Generate contract types, pin fixtures to spec, add build and ADRs
Completes FLUID-WP-0002. The record types in internal/contract are
generated from schemas/ by a dependency-free generator; fixtures
transcribed from the spec's worked examples validate against those
schemas and round-trip through the generated types with
DisallowUnknownFields, so a spec change that misses the schemas fails
CI rather than drifting silently.

Adds identifier prefix helpers, Makefile, GitHub Actions, and five ADRs
recording the Go choice, out-of-process attachment, the wire contract as
boundary, the evidence store, and revision identity.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014KmVxhJ35tCo7rE7UnLwWu

Assistant: claude-code
Assistant-Model: opus
Assistant-Process: 1116572@bnt-lap001
Assistant-Session: 8ba9bb93-a72a-4883-b189-2499cce5c400
2026-09-04 02:03:12 +02:00
..
json Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
backend-requirement.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
event.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
experiment.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
feedback.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
hypothesis.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
pressure.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
README.md Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
revision-descriptor.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
revision.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
routing-policy.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00
telemetry-envelope.yaml Generate contract types, pin fixtures to spec, add build and ADRs 2026-09-04 02:03:12 +02:00

Schema fixtures

Every file here is transcribed from a worked example in spec/. They exist so that a change to the specification which is not reflected in schemas/ fails the build.

Two deviations from the spec text are deliberate and are the only ones allowed:

  1. Placeholder digests. The spec writes sha256:<digest>. Fixtures use a syntactically valid digest, because the schema constrains the format.
  2. Placeholder artifact paths. The spec writes contractRef: .... Fixtures use a plausible reference.

Anything else that differs from the spec is a bug in the fixture or in the schema, not a licence to relax the schema.

Fixture Source
hypothesis.yaml FluidHypothesisRevisionSchema.md §3
revision.yaml FluidHypothesisRevisionSchema.md §8
experiment.yaml FluidHypothesisRevisionSchema.md §12
pressure.yaml FluidHypothesisRevisionSchema.md §13
backend-requirement.yaml FluidHypothesisRevisionSchema.md §14
event.yaml FluidHypothesisRevisionSchema.md §15
revision-descriptor.yaml ArchitectureBlueprint.md §36
routing-policy.yaml ArchitectureBlueprint.md §17
feedback.yaml FluidAPIStandards.md §15, ArchitectureBlueprint.md §38
telemetry-envelope.yaml ArchitectureBlueprint.md §6.1