Files
yakpanel-core/architecture/2026/13-server-plane-phase-implementation.md
2026-04-07 20:29:49 +05:30

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.php
  • panel-api/app/Modules/Agents/AgentSessionRepository.php
  • panel-api/app/Modules/Jobs/JobController.php
  • panel-api/app/Modules/Jobs/CommandOrchestrator.php
  • panel-api/app/Http/Middleware/ResolveTenantContext.php
  • panel-api/routes/api_v1/servers.php
  • panel-api/routes/api_v1/jobs.php
  • control-plane-go/internal/orchestration/redis_stream_queue.go

API additions

  • POST /api/v1/servers/{server}/heartbeat
  • POST /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.