Contributing
The loop
Section titled “The loop”- Pick the phase. Work on one roadmap phase or milestone at a time. Its
issue lives in
.okfw/issues/, andokfw search --path issues --tag openlists open work. - Implement only that scope. Use the pinned libraries. Don’t add unrequested interfaces, factories or dependencies. A new dependency needs an ADR first.
- Run the gate:
make test && make vet-cue && make lint. Never weaken or delete a test to get to green. - Update the docs and the wiki. Tick the phase in
PLAN.mdand close its issue with a Resolution section. Record decisions as ADRs. Runmake wiki. - Commit the code and its wiki updates together, one commit per phase.
Ground rules
Section titled “Ground rules”- Pure Go.
CGO_ENABLED=0for everything except the race detector inmake test. - Schema first. No LLM output reaches a caller without passing
schema/review.cue. If you add a new kind of output, add its CUE definition first. - Tests stay offline. The chunker tests block the network. Seed the
tokenizer cache with
make tiktoken-cache.
The knowledge base
Section titled “The knowledge base”Design knowledge lives in .okfw/, an
Open Knowledge Format wiki managed
by okfw. Search it before re-deriving a decision:
okfw search "chunking"okfw search --type ADRCreate concepts with okfw create, never by hand-writing frontmatter, and
move or delete them with okfw move and okfw delete so links stay intact.
This site
Section titled “This site”make docs-dev # http://localhost:4321/vizzini-pr-reviewer/make docs-build # what CI and the Pages deploy runThe landing page demo comes from Vizzini’s own code. Regenerate it with
go run ./docs/src/demo/gen.go after changing the diff renderer or the
schema.