1.1 KiB
1.1 KiB
Phase 3 Implementation: Server Plane
Delivered in this phase
- Tenant-aware server registry controller behavior via request tenant context.
- Agent session heartbeat intake endpoint and session repository boundary.
- Job dispatch endpoint with command type allowlist and idempotent envelope fields.
- Redis Streams queue adapter for Go orchestration layer.
Files added/updated
panel-api/app/Modules/Server/ServerRepository.phppanel-api/app/Modules/Agents/AgentSessionRepository.phppanel-api/app/Modules/Jobs/JobController.phppanel-api/app/Modules/Jobs/CommandOrchestrator.phppanel-api/app/Http/Middleware/ResolveTenantContext.phppanel-api/routes/api_v1/servers.phppanel-api/routes/api_v1/jobs.phpcontrol-plane-go/internal/orchestration/redis_stream_queue.go
API additions
POST /api/v1/servers/{server}/heartbeatPOST /api/v1/jobs/dispatch
Notes
- Persistence adapters remain intentionally thin to keep boundary clear for full Eloquent integration.
- Queue adapter is production-aligned with Redis Streams and can be swapped with NATS without controller changes.