refactor: switch the whole project to English
talk is going to be published. Code comments, CLI output, error messages,
daemon log lines, MCP descriptions and results, test names and assertions,
README, spec, skill, build scripts and flake are now English. Only the
spoken announcement texts stay bilingual: the wrap result and the test
sentence are German or English depending on the detected language.
Language fallback is now configurable: `lang = "en" | "de"` (env
TALK_LANG, default en) is used when detection cannot tell (numbers, single
words, ties) and for talk's own announcements. langdetect.Detect takes the
fallback as an argument instead of hard-coding German. `talk setup` asks for
it; `talk doctor` and `talk status` show it.
Vocabulary pinned across packages so the process-boundary tests observe
stable strings: chain log lines ("chain: tier X skipped (not available)",
"falling back to the next tier", "spoken via X"), queue lines ("discarded:
quiet hours ... active", "replaced by toast", "max_age"), CLI notes
("speaking directly", "daemon started at", "no daemon", "nothing to cancel"),
status block with aligned English labels, MCP messages, origin guard 403.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
1 parent
4d30bd95ad
commit
85fa64cfe6
95 files changed
+4707
-4854
No files matched your search
+9
-10
@@ -1,11 +1,10 @@
|
||||
// Package api definiert die HTTP-Oberfläche des Daemons auf 127.0.0.1:
|
||||
// POST /speak (enqueue, 202 {id}; bei Mute 202 {muted:true}; bei Gesetz-
|
||||
// Verwurf 202 {discarded:"rate_limit"|"quiet_hours"} — Task 05),
|
||||
// GET /status (inkl. Gesetz-State, mcp/cors — Task 06), POST /cancel,
|
||||
// POST /mute, POST /unmute. Task 06 ergänzt die CORS-Tür für POST /speak
|
||||
// (OPTIONS-Preflight + ACAO aus server.allowed_origins, siehe cors.go)
|
||||
// und den MCP-Endpoint POST /mcp als schlankes eigenes JSON-RPC-Subset
|
||||
// (initialize, notifications/initialized, tools/list, tools/call mit dem
|
||||
// speak-Tool — siehe mcp.go). Der Client-Teil ist die CLI-Seite derselben
|
||||
// Vertragsschnittstelle.
|
||||
// Package api defines the daemon's HTTP surface on 127.0.0.1: POST /speak
|
||||
// (enqueue, 202 {id}; 202 {muted:true} when muted; 202
|
||||
// {discarded:"rate_limit"|"quiet_hours"} when a law discards), GET /status
|
||||
// (including law state, mcp/cors), POST /cancel, POST /mute, POST /unmute.
|
||||
// It also provides the CORS door for POST /speak (OPTIONS preflight + ACAO
|
||||
// from server.allowed_origins, see cors.go) and the MCP endpoint POST /mcp
|
||||
// as a lean JSON-RPC subset of its own (initialize,
|
||||
// notifications/initialized, tools/list, tools/call with the speak tool;
|
||||
// see mcp.go). The client part is the CLI side of the same contract.
|
||||
package api
|
||||
Reference in new issue
Block a user