Switchboard is a Go project.
- Language: Go 1.25+
- Build:
just build·just test·just lint·just fmt
cmd/switchboard/ # Entry point
internal/ # Internal packages
Git workflow: Gitflow. develop is the default branch. Branch from and
PR into develop. Alpha releases are cut automatically from develop.
Stable releases are cut from main via version tags (v*). Do not push
directly to main.
just fmt # gofumpt formatting (run before every commit)
just lint # golangci-lint — must pass with zero warnings
just test # go test ./... -v
just test-race # Race detector — run before pushing@.claude/rules/_index.md
Read charter.md before any substantive work. It contains:
- Current bedrock (what's committed)
- Current frontier (what's under exploration)
- Current graveyard (what's been ruled out)
- Read charter.md (orient)
- Identify the highest-value open question — or capture new ideas in _kos/ideas/
- Write an Exploration Brief in _kos/probes/
- Do the probe work
- Write a finding in _kos/findings/
- Harvest: update affected NODES (
_kos/nodes/{bedrock,frontier,graveyard}/*.yaml), move files if confidence changed. Charter is renderer output (per orc F22,kos charter render); do NOT hand-edit charter prose outside<!-- backdrop -->blocks. Subrepo charter renderer extension tracked in aae-orc-gezz.
Cross-repo questions belong in the orchestrator's _kos/, not here.
Ideas live in _kos/ideas/ as markdown files. Generative, possibly contradictory, no commitment. When an idea crystallizes, extract into a frontier question + brief.
Nodes live in _kos/nodes/[confidence]/[id].yaml Schema follows kos schema v0.3. One node per file. Filename = node id.
Moving a file between confidence directories IS the promotion. Always accompany with a commit message explaining the evidence.
Before starting the next cycle, verify:
- Finding written and committed
- Bedrock/frontier/graveyard NODES updated if state changed —
edit
_kos/nodes/{bedrock,frontier,graveyard}/*.yaml, NOT charter prose. Charter is renderer output (per orc F22,brief-charter-as-projection-renderer.md,kos charter render). Subrepo extension tracked in aae-orc-gezz; until it ships, treat charter sections outside<!-- backdrop -->blocks as read-only and edit the underlying nodes. - Frontier questions updated (closed, opened, or revised)
- Exploration briefs marked complete or carried forward