Contributing
Use Go 1.26.3 on Linux to match CI. The supported Talos SDK and cluster version is v1.13.3.
go build ./cmd/t9sgo test ./...go test -race ./...go vet ./...Run the startup benchmark with:
go test ./internal/tui -run "^$" -bench BenchmarkInitialView -benchmem -count=3Architecture boundaries
Section titled “Architecture boundaries”Dependencies point inward:
internal/domaincontains normalized values without Talos SDK or terminal dependencies.internal/portsdefines narrow capabilities in domain terms.internal/applicationowns pure transitions, typed messages, session generations, and cancellable effects.internal/adapters/talosis the only Talos SDK boundary.internal/tuirenders state and translates input; rendering remains network independent.cmd/t9sandinternal/cliare composition and process-lifecycle roots.
Tests and fixtures
Section titled “Tests and fixtures”Normal tests use fakes from internal/testkit at port boundaries. Live Talos checks must remain manual and separate from go test ./....
Fixtures belong in the nearest testdata directory. Keep them small, deterministic, human readable, and entirely invented. Never copy production credentials, endpoints, hostnames, addresses, or error messages into the repository.