Skip to content

ci: Go build/vet/test + Python conformance gate#4

Merged
NetworkTheoryAppliedResearchInstitute merged 1 commit into
mainfrom
ci/go-and-conformance
Jul 13, 2026
Merged

ci: Go build/vet/test + Python conformance gate#4
NetworkTheoryAppliedResearchInstitute merged 1 commit into
mainfrom
ci/go-and-conformance

Conversation

@NetworkTheoryAppliedResearchInstitute

Copy link
Copy Markdown
Contributor

Adds the missing CI to the protocol repo (flagged 2026-07-09: two consumers, zero checks).

Two jobs on every PR / push to main:

  1. test — gofmt cleanliness, go vet, go build, full go test ./... (includes the golden-vectors test, so any canon or field-order drift fails the build).
  2. conformance — runs testdata/reproduce_spec.py (stdlib-only Python, written from SPEC.md alone) against testdata/vectors.json; exits non-zero on any byte or signature mismatch. The forkability guarantee executed as a check: a non-Go implementation must always be able to reproduce our bytes from the spec.

Least-privilege permissions: contents: read.

Suggested merge order: this PR FIRST, then #3 — that way the v0.2.0 wire change gets CI checks on its next synchronize. After both: tag v0.2.0.

Follow-up for repo admin (not in this PR): mark the two checks required in the ruleset once they've run green on main.

🤖 Generated with Claude Code

Two jobs on every PR and push to main:

- test: gofmt cleanliness, go vet, go build, full go test (includes the
  vectors golden test, so any canon or field-order drift fails CI).
- conformance: run testdata/reproduce_spec.py (stdlib-only Python,
  written from SPEC.md alone) against testdata/vectors.json. An
  independent implementation must reproduce every canonical byte
  sequence and verify every signature, or the build fails. This is the
  forkability guarantee executed as a check, not a promise.

Least-privilege permissions (contents: read) per the CodeQL guidance
already applied to SoHoLINK's workflow.

Signed-off-by: Jodson Graves <info@ntari.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant