- main.go: 30+ log.Printf → logger.Infof - plugin/registry: 12 log.Printf → logger.Infof - db/db.go, ws/hub.go: log → logger - platform-bridge: fmt.Printf/println → logger.Info - Logs now: time=... level=INFO msg=... - 16 packages pass, vet clean
- Router accepts full Dependencies (memory/voice/orchestrator/WShub) - Memory API: CRUD + search endpoints with PostgreSQL persistence - Voice API: STT/TTS endpoints - Admin dashboard: real uptime + service status - WebSocket chat: routes to AI-Core orchestrator pipeline - APIAdapter bridges memory domain model to REST interface - Smoke test: memory CRUD + session creation verified
- services/gateway/api: net/http router with JWT auth, stub login, 6 tests - services/gateway/ws: WebSocket hub with echo support - services/voice: STT/TTS provider chain with fallback, 6 tests - cmd/cyrene/main.go: single binary startup, 108 tests total - Smoke test: health check + login verified on :8080