docs(claude): document sushi30 fork testing convention

New fork-specific tests go in *_sushi30_test.go files so they survive
upstream rebases without being silently overwritten.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
github-actions[bot] 2026-03-31 10:08:51 +02:00
parent 13ecb48416
commit 603e01dec6

View file

@ -84,6 +84,12 @@ Each **channel** (e.g. Telegram) receives messages and forwards them to the **ag
Runtime config lives in `~/.picoclaw/workspace/config.json` (template: `config/config.example.json`). API keys can be injected via environment variables or stored encrypted in `.security.yml`. The `env://` scheme passes env var names directly as key values without encryption. Runtime config lives in `~/.picoclaw/workspace/config.json` (template: `config/config.example.json`). API keys can be injected via environment variables or stored encrypted in `.security.yml`. The `env://` scheme passes env var names directly as key values without encryption.
### Fork-specific testing conventions
New functionality added in the `sushi30` fork **must be tested in isolated test files** named `*_sushi30_test.go`. This prevents upstream rebases from silently overwriting tests and makes fork additions easy to identify.
Example: `pkg/config/resolve_key_sushi30_test.go` guards the `env://` fix in `resolveKey()`.
### Frontend stack ### Frontend stack
React 19 + Vite + TanStack Router + Tailwind CSS 4 + Radix UI + Jotai (state). Build output is embedded into the Go web backend binary via `go:embed`. React 19 + Vite + TanStack Router + Tailwind CSS 4 + Radix UI + Jotai (state). Build output is embedded into the Go web backend binary via `go:embed`.