4dc5ca7343
Der letzte Meter des propose-only-Kreislaufs: Vorschlags-Branches (Werkstatt/ Orchestrator) und Traum-Skill-Kandidaten werden als API sichtbar; Annehmen laeuft als detached systemd-Unit (Merge im Worktree -> Push main -> Deploy -> Health -> Auto-Revert bei Rot). Dazu: Chronik-Endpoint (Announce-Store als Timeline), Wissens-Vault-Reader (read-only, Traversal-Guard), Zeitmaschine (Snapshots + detached Restore) und Morgenlage-Spiegel im Chef-Gutachter-Feed (priority=silent). python-multipart explizit in requirements (voice braucht es, war implizit). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
16 lines
567 B
Python
16 lines
567 B
Python
"""Chronik — die lesbare Timeline dessen, was die Box von allein getan und gemeldet hat.
|
|
Quelle ist der persistente Melde-Briefkasten (services/announce.py): Health-Wächter,
|
|
Auto-Updates, Erinnerungen, Radar/Traum/Chef-Gutachter-Crons, Auftragsbuch — alle
|
|
autonomen Kanäle laufen dort bereits durch. Hier wird nichts Neues erhoben, nur erzählt."""
|
|
|
|
from fastapi import APIRouter
|
|
|
|
from services import announce
|
|
|
|
router = APIRouter(prefix="/api")
|
|
|
|
|
|
@router.get("/chronik")
|
|
def chronik(limit: int = 150) -> dict:
|
|
return {"items": announce.list_recent(limit)}
|