new changes
This commit is contained in:
25
architecture/2026/13-server-plane-phase-implementation.md
Normal file
25
architecture/2026/13-server-plane-phase-implementation.md
Normal file
@@ -0,0 +1,25 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user