POST /speak antwortet bei Verwurf dokumentiert mit 202 {id:"",
discarded:"rate_limit"|"quiet_hours"} (+ toast:true im Toast-Modus)
— analog zum Mute-Muster, kein Fehler. GET /status ergänzt additiv
rate_limit {interval, allow_high_burst, next_slot} und quiet_hours
{window, active, mode, until} (RFC3339 bzw. null). talkd verwired die
Gesetze aus der Config und loggt sie beim Start. Die CLI meldet
'discarded: <grund>' plain (wie muted) und zeigt in talk status die
Zeilen rate-limit/ruhezeit mit Slot bzw. Fenster-Ende.
9 lines
473 B
Go
9 lines
473 B
Go
// 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. Rate-Limit- und Ruhezeit-State), POST /cancel,
|
|
// POST /mute, POST /unmute. CORS für /speak und der MCP-Endpoint
|
|
// (Streamable HTTP) folgen in Task 06. Der Client-Teil ist die CLI-Seite
|
|
// derselben Vertragsschnittstelle.
|
|
package api
|