| cosign.pub | ||
| README.md | ||
ua-node
Base container runtime for the UA mesh fleet.
This repository will hold the ua-node:runtime base image — the shared foundation that every node in the UA mesh (UA itself, pete-device, memory-db, future sensor nodes) composes on top of via Docker layer stacking.
Status: Phase 0 (Planted Flag)
2026-05-24 — Empty repo. Architecture documents committed to agents/unified-assistant.
This is a stub. The runtime extraction lands in Phase 3 of the migration plan (see below). Phase 0 exists to:
- Reserve the repo name in the
agentsorg - Hold the Cosign public key for image verification
- Anchor the design docs
What This Will Be
A minimal Python 3.11 container providing:
- EventBus — typed in-process pub/sub
- RoutingHub — module registration + dependency-ordered startup
- ModuleLoader — filesystem discovery of
/app/modules/*/module.py - TypeRegistry — schema-extensible storage and sync
- MeshModule — capability JWT auth, routing table, multi-modal transport
- ServiceRegistry — DI container
- HTTP server —
/health,/metrics,/api/mesh/*endpoints - Cosign verifier — image signature check on update
What This Won't Be
- No business logic. No LLM, no Frigate, no Home Assistant, no sensor code.
- Those live in deployment-specific module layers that
COPYinto the final image.
Deployment Pattern
FROM ua-node:latest
COPY modules/sensor/ modules/audio/ /app/modules/
ENV MESH_NODE_ID=pete-device
Three lines. Identity, routing, sync, and updates are all handled by the runtime.
Design Documents
The full target architecture and migration roadmap live in agents/unified-assistant:
- MESH_RUNTIME.md — target architecture (474 lines)
- MIGRATION_PLAN.md — 8-phase roadmap (520 lines)
Image Verification
All published ua-node images are signed with Cosign. The public key is committed at cosign.pub in this repo and embedded in the base image at /etc/ua-node/cosign.pub.
Verify any image:
cosign verify --key cosign.pub git.lab.lostsource.net/agents/ua-node:latest
Phase Roadmap
| Phase | Status | What Happens Here |
|---|---|---|
| 0 | ✅ Done | Repo created, Cosign keys generated, ACLs locked |
| 1 | Pending | BaseModule contract formalized in unified-assistant |
| 2 | Pending | Services + gateway promoted to modules in unified-assistant |
| 3 | Pending | Runtime code lands HERE; first ua-node:runtime image published |
| 4 | Pending | MeshModule (JWT identity + capability routing) |
| 5 | Pending | pete-device migrates onto ua-node:latest |
| 6 | Pending | memory-db migrates onto ua-node:latest |
| 7 | Pending | Sensor PoC validates ~50-line module + 3-line Dockerfile |
| 8 | Pending | SDK docs published, runbooks written |
∞