2.8 KiB
Repository verification tools
These scripts are intentionally understandable shell and PowerShell rather than a release framework with hidden defaults.
verify.shruns root and nested-module tests and vet, buildshimesan, tests each example module, checks committed generated output, and proves two generation passes leave the same bytes and unchanged modification times. SetHIMESAN_RACE=1for race tests.verify.ps1provides the equivalent native Windows lane; pass-Raceto include the race detector.check-licenses.shenforces the AGPL compiler / Apache runtime / 0BSD example boundary and prevents generated application Go from inheriting an AGPL identifier.check-site.shverifies vanity metadata, no-script/local-asset policy, pre-release honesty, and baseline accessibility scaffolding for the static site.eql-integration.shis opt-in. Until a repository-ownedinternal/integration/eqltest exists it exits successfully without inspecting EQL. Later it requires externalHIMESAN_EQL_ROOTandHIMESAN_EQL_DBpaths and passes a read-only-mode contract to that package. It never copies a database.release-check.sh --version vX.Y.Zis a clean-checkout technical preflight. Add--publicand pointHIMESAN_RELEASE_EVIDENCE_DIRat a human-reviewed evidence bundle for the public-launch gate. It never tags, pushes, publishes, or deploys.verify-public-install.sh --version vX.Y.Zis a post-tag/publication check. It verifies exactgo-get=1package routes and runs the documented compiler install and runtime get from fresh direct-fetch and public-proxy caches without interactive Git credentials.
The canonical Linux CI and release preflight also run bounded fuzz sessions for the parser/context compiler and Go-aware delimiter scanner. Seed-corpus execution remains part of ordinary go test; the bounded sessions are extra evidence, not a substitute for longer scheduled fuzzing before v1.
The release preflight invokes govulncheck from the official Go vulnerability project at the exact module version golang.org/x/vuln@v1.6.0. Updating that pin requires reviewing the upstream tag and rerunning the supported Go lines.
Preview automation status
Forge workflows are intentionally excluded from the sanitized pre-1.0 public snapshot until the project has confirmed its own Gitea runner availability and reviewed locally hosted or otherwise pinned dependencies. Local verify.sh, verify.ps1, license, and release-preflight results are the preview gates.
If Gitea automation is later added to the public repository, pin every external action to a reviewed immutable commit, document its provenance, grant minimum permissions, and keep a local verification path. No secondary forge mirror or hosted workflow is planned.