fix(site-runtime): site-side compile failure now rejects the deployment per spec (S3) — synchronous validation gate before actor creation

Validation runs on the actor thread (not off-thread as the plan sketched): piping
the verdict back to self reorders concurrent deploys relative to each other and to
delete/disable, breaking the redeploy-supersede FIFO ordering (SR020/SR029). A deploy
is an infrequent admin command, so a brief synchronous Roslyn compile is acceptable.
This commit is contained in:
Joseph Doherty
2026-07-08 23:33:48 -04:00
parent 2caab79c0a
commit b83d1ed19c
3 changed files with 77 additions and 1 deletions
@@ -1336,7 +1336,9 @@ public class InstanceActor : ReceiveActor
/// Creates child Script Actors and Alarm Actors from the flattened configuration.
/// Script Actors spawned per script definition.
/// Alarm Actors spawned per alarm definition, as peers to Script Actors.
/// Compilation errors reject entire instance deployment (logged but actor still starts).
/// Compile failures are rejected at deploy time by the Deployment Manager's
/// validation gate; a failure reaching this point (startup load of a legacy
/// config) is logged and the offending script/alarm skipped.
///
/// Each child is seeded from a private point-in-time snapshot
/// of <c>_attributes</c>, NOT the live dictionary. The snapshot is taken here on