docs: move the recipe and version descriptions with the behaviour

Assisted-by: GLM 5.3 Flash
This commit is contained in:
2026-09-16 22:53:01 +02:00
parent 20e4b8d9c4
commit d08523caa5
3 changed files with 79 additions and 37 deletions
+9 -9
View File
@@ -10,9 +10,8 @@ command runner, and a Linux host on amd64, arm64, riscv64 or loong64.
```sh
git clone https://sourcedock.dev/petrbalvin/gasm-devkit.git
cd gasm-devkit
just install # download module dependencies
just build # go vet + gofmt check
just test # full suite, race detector, 80 % coverage gate
just build # compile, zero errors and zero warnings
just gates # build, fmt-check, vet, test, race: the definition of done
```
## Workflow
@@ -40,7 +39,7 @@ CI builds and publishes the binaries for all four architectures.
## Code style
`gofmt` and `go vet` via `just fmt` / `just build`; both must pass with
`gofmt` and `go vet` via `just fmt` / `just vet`; both must pass with
zero output; `go fix -diff ./...` must report nothing on touched packages.
- Standard library only in production code; `golang.org/x/arch` is used
@@ -63,7 +62,7 @@ go test -run TestFuzzWideCopy ./verify/
The interactive debugger (`gasm debug`) requires a compiled binary on
`$PATH`; `go run` does not work for the traced child process. Install
first with `just install-bin`.
first with `just install`.
## CI (Gitea Actions)
@@ -71,11 +70,12 @@ Workflows live in `.gitea/workflows/` and run on self-hosted runners:
| Workflow | Trigger | What it does |
|----------|---------|--------------|
| Test | push / PR to `development` | gofmt check, `go vet`, `go test -race`, 80 % coverage gate |
| Release | tag `v*` | cross-compiles binaries for linux/{amd64,arm64,riscv64,loong64} and publishes the Gitea release |
| Test | push / PR to `development` | the `gates` set minus race: gofmt, `go vet`, `go fix`, build, the suite, the 80 % coverage floor |
| Race | manual dispatch, and inside the release | the suite under the race detector |
| Release | tag `v*` | the gates once, then cross-compiles binaries for linux/{amd64,arm64,riscv64,loong64} and publishes the Gitea release |
The Definition of Done (`just build` + `just test` + `just fmt`) must
still pass locally before pushing.
The Definition of Done (`just gates`) must still pass locally before
pushing.
## AI Contribution Policy