Freeze Hub inbound API v1; choose Go for the service

- docs/hub-api.md: language decision (Go 1.25) with reason and the
  frozen v1 routes POST /ask, POST /approve, GET /health, including
  request/response schemas, bearer-token auth, timeouts, error shapes,
  logging, versioning, and a safety confirmation that no route is a
  high-consequence control.
- Update README, hub_brief.md open items, and the outline docs so they
  no longer say the API is undecided or the language is open.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
2026-10-10 17:06:43 +11:00
parent 6a395d46a9
commit 449fdd02c5
6 changed files with 528 additions and 6 deletions

View File

@@ -16,9 +16,11 @@ central_ai_llm_master/
diagrams/ rendered images
archify/ Archify JSON input
outline/ AI context documents
ask-contract.md Hub to project interface
hub-api.md frozen inbound API (v1)
vikunja-tasks.json human task list
src/ Hub service code (to build)
main.* HTTP entry point
main.go HTTP entry point
hear/ takes voice or text
understand/ LLM intent routing
check/ authorization and approval
@@ -36,11 +38,11 @@ central_ai_llm_master/
| `POST /approve` | Admin app confirms a restricted action. |
| `GET /health` | Liveness check. |
The API contract is not final. See `hub_brief.md`.
The inbound API is frozen. See `docs/hub-api.md`.
## Primary Dependencies
- HTTP server (Go or Python — decide before build).
- HTTP server (Go 1.25, standard library `net/http`).
- HTTP client for OmniRoute, Home Assistant, Paperclip.
- MQTT client for voice topics.
- Tavily API client for web search.