Repository navigation
Add the parity suite as a scheduled conformance report - #29
Merged
Merged
Conversation
Move neokapi's Okapi parity suite into this repository as the `parity/` Go module (neokapi/neokapi#1073, D3). The module requires a released github.com/neokapi/neokapi and nothing from the host or cli modules: the daemon launcher implements the plugin protocol's Mode C handshake locally, and format specs are read from the neokapi module's source directory so the specs and the readers under test come from one version. Per-fixture divergence annotations move to parity/annotations/<format>.yaml, the fixture harvester and report summariser to parity/cmd/, and pseudobench's bridge-comparison engines to parity/pseudobench/. .github/workflows/parity.yml runs the suite weekly and on dispatch against a released kapi (neokapi/setup-kapi@v1) and a plugin built from this checkout, and uploads the report as an artifact. It has no pull_request trigger and gates nothing. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Contributor
Author
|
The neokapi side of the move is neokapi/neokapi#3207 (deletes cli/parity, the parity workflow and the release gate). |
asgeirf
added a commit
to neokapi/neokapi
that referenced
this pull request
Oct 16, 2026
…#3207) The parity suite (cli/parity) now lives in the okapi-bridge repository as the parity/ module, compiles against a released neokapi, and runs there on a weekly schedule against the latest kapi release (neokapi/okapi-bridge#29). Nothing here builds, runs or gates on the bridge any more. Removed: cli/parity, scripts/okapi-test-scan and scripts/testcompare (and their go.work entries), core/formats/*/parity-annotations.yaml, parity.yml, the Parity Gate jobs in release.yml and release-bowrain.yml, the bridge checkout in contract-audit.yml, the Makefile parity targets, the bridge fetch/sandbox/pool scripts, pseudobench's bridge and okapi engines, and the parity build tag from .golangci.yml and fieldguard. support.yaml gates that named parity.yml now name make test; the Supported-tier check asks for core/formats/<id>/spec_test.go; the format-ops parity-publish ritual downloads the bridge workflow's report; make bench-run and conversion-eval fetch the okapi-testdata corpus directly. Docs, skills and code comments point at the bridge-side suite. Refs #1073 Co-authored-by: Claude Fable 5.1 <noreply@anthropic.com>
6 of 14 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Moves neokapi's Okapi parity suite into this repository as the
parity/Go module, as decided in neokapi/neokapi#1073 (D3): the suite becomes a scheduled conformance report here, against released kapi versions, and stops gating anything in neokapi.What is here
parity/is its own module (github.com/neokapi/okapi-bridge/parity). It requiresgithub.com/neokapi/neokapi v1.3.0-rc9and nothing from thehostorclimodules, so it compiles from the module proxy. The daemon launcher (parity/daemon.go) implements the plugin protocol's Mode C handshake; the previous code usedhost/pluginhost, whose module embeds build-time catalogs and does not compile from a tag.core/formats/<id>/spec.yaml) are read from the neokapi module's source directory, resolved withgo list -m, so the specs and the readers under test come from one version.parity/annotations/<format>.yaml(previouslycore/formats/<id>/parity-annotations.yaml).parity/cmd/okapi-test-scan(fixture harvester),parity/cmd/testcompare(per-filter summary),parity/pseudobench(the bench with the bridge-comparison engines).make parity-sandbox | parity-test | parity-publish | parity-vet | parity-clean | regen-okapi-fixturesviaparity/parity.mk;parity/scripts/sandbox.shbuilds the sandbox from a released kapi (KAPI_BINor PATH) and a freshmake plugin-v2tarball..github/workflows/parity.yml: weekly plusworkflow_dispatch, installs kapi withneokapi/setup-kapi@v1, builds the plugin, runs the suite, uploads the report. Nopull_requesttrigger; it gates nothing.Verification
Local run against kapi 1.3.0-rc8 and the 1.48.0 plugin tarball: every package passes, 922 report rows (
go test -tags "fts5,parity" ./...in 67 s).make parity-vetis clean. The bridge's ownmake test-gois unaffected:parity/is a separate module and every test is behind theparitybuild tag.Follow-ups
cd parity && go get github.com/neokapi/neokapi@<tag> && go mod tidy).cli/parityand the release gate) is a separate PR in neokapi/neokapi, linked from #1073.🤖 Generated with Claude Code