- Owns the KeyLoad server process, HTTP API composition and Orleans silo/node configuration.
- Entry point:
Program.cs; API routes:ClientApi/Transport/ApiEndpoints.cs; Orleans node setup:OrleansHosting/Hosting/OrleansNode.Composition.cs; configuration:NodeOptions.cs. OrleansHostingowns silo composition and lifetime;RequestExecutionowns admitted grain calls and request draining;RuntimeJournalingowns journal startup;StoragePartitionsowns physical partition sessions. Administrator authentication belongs toAuthorization, and shared background storage operations belong toBackgroundExecution.- Server routes public requests to database/grain behavior. New endpoint behavior belongs under
<SliceName>/and matchingdocs/Features/<SliceName>.md; keep the process entry point as composition. - Microsoft Orleans does all clustering (membership, discovery, failure detection, directory, placement, activation migration, communication); the server hosts the silo and adds none of its own. The accepted transport connection dispatches each operation directly to its own ordinary request grain. Request grains call the silo-local ZoneTree owner (node-local
PartitionHost/Grain Service, which owns storage, journals, file locks and the apply gate), gather and return. See ADR-136. - Apply the installed Orleans skill at
/Users/ksemenenko/.codex/skills/orleans/SKILL.mdto silo startup, provider configuration, directory, activation movement and shutdown. - Authentication, authorization, endpoint limits, cancellation and health/readiness are protected. Never log secrets or claim deployment/production qualification from a build alone.
Follow the root policy and the owning feature specification. Keep changes in their actual owner, preserve unrelated work, and remove replaced code together with exclusive callers and fixtures. Use Orleans calls for distributed execution and silo-local ZoneTree owners for files. Preserve persisted authorization, operation correctness, resource bounds, cancellation and joined shutdown. Never turn a static check or focused test into a claim of complete runtime qualification.
From the repository root:
dotnet build KeyLoad.slnx --no-restore -warnaserrorUse the root's complete solution, TUnit, real process recovery and Aspire SDK/MCP gates as applicable. Local checks are development evidence; delivered-source qualification and public measurements require exact-source Linux GitHub artifacts. Do not weaken compiler, analyzer, source-identity, coverage or runtime assertions.
Use the installed Orleans skill for Orleans design and the relevant installed formatting, Aspire or diagnostics skill when the task needs it. Follow explicit owner scope and dependency-adoption rules.