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
42 lines
990 B
YAML
42 lines
990 B
YAML
name: ci
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-go@v5
|
|
with:
|
|
go-version: '1.22'
|
|
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: '3.12'
|
|
|
|
- name: Install schema validation dependencies
|
|
run: pip install --quiet jsonschema pyyaml
|
|
|
|
# The spec-derived fixtures are validated first: if the specification and
|
|
# the schemas have diverged, nothing downstream is worth building.
|
|
- name: Validate schemas against spec fixtures
|
|
run: make validate
|
|
|
|
# Generated types must match schemas/. A stale internal/contract means a
|
|
# schema change landed without regeneration.
|
|
- name: Check generated code is current
|
|
run: make check-generated
|
|
|
|
- name: Build
|
|
run: make build
|
|
|
|
- name: Vet
|
|
run: make vet
|
|
|
|
- name: Test
|
|
run: make test
|