blob: dc39d7fb586262cdbbd6fac43d3b741384dd47a7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
# Coding Standards
Technical standards for the **Claudomator** project.
## 1. Go (Backend)
- **CGo Dependency:** `go-sqlite3` requires a C compiler (`gcc`).
- **Concurrency:** Uses a bounded goroutine pool. Always test with `go test -race ./...`.
- **State Machine:** Follow `task.ValidTransition` for all state updates.
- **Sandboxing:** Task modifications happen in `/tmp/claudomator-sandbox-*`.
## 2. Testing
- **Reproduction:** Always create a failing test case for bugs.
- **Race Detector:** Mandatory for `internal/executor` and `internal/api/hub` changes.
## 3. Architecture
- **Single Binary:** Keep the binary self-contained using `go:embed` for web assets.
- **Durability:** Use SQLite with WAL mode.
|