feat(render): establish typed residency policy ledger
Define Slice D's transition and concurrency contract, add generation-safe asset handles and owner leases, and parse the existing cache ceilings through typed runtime budgets. Stale generations cannot release or revive replacements, and worker observations are bounded and coalesced. Co-authored-by: Codex <noreply@openai.com>
This commit is contained in:
parent
a564c4b782
commit
1866ea0c6d
8 changed files with 1696 additions and 2 deletions
|
|
@ -1,6 +1,7 @@
|
|||
using System;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using AcDream.App.Rendering.Residency;
|
||||
|
||||
namespace AcDream.App;
|
||||
|
||||
|
|
@ -50,7 +51,8 @@ public sealed record RuntimeOptions(
|
|||
string? UiProbeScript,
|
||||
string? AutomationArtifactDirectory,
|
||||
float FogStartMultiplier,
|
||||
float FogEndMultiplier)
|
||||
float FogEndMultiplier,
|
||||
ResidencyBudgetOptions ResidencyBudgets)
|
||||
{
|
||||
/// <summary>
|
||||
/// Build options from the process environment. Used by
|
||||
|
|
@ -107,7 +109,8 @@ public sealed record RuntimeOptions(
|
|||
AutomationArtifactDirectory:
|
||||
NullIfEmpty(env("ACDREAM_AUTOMATION_ARTIFACT_DIR")),
|
||||
FogStartMultiplier: TryParseFloat(env("ACDREAM_FOG_START_MULT")) ?? 0.7f,
|
||||
FogEndMultiplier: TryParseFloat(env("ACDREAM_FOG_END_MULT")) ?? 0.95f);
|
||||
FogEndMultiplier: TryParseFloat(env("ACDREAM_FOG_END_MULT")) ?? 0.95f,
|
||||
ResidencyBudgets: ResidencyBudgetOptions.Parse(env));
|
||||
}
|
||||
|
||||
/// <summary>True iff live-mode credentials are present and valid for connecting.</summary>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue