Some checks failed
ci / build (push) Failing after 1m6s
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
1.3 KiB
1.3 KiB
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:
- Placeholder digests. The spec writes
sha256:<digest>. Fixtures use a syntactically valid digest, because the schema constrains the format. - 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 |