refactor(runtime): publish canonical entity object deltas
Issue stable Runtime identities at canonical registration, publish entity and inventory commits through one generation-stamped synchronous stream, and make graphical adapters borrow the same direct views and events as a no-window host. Preserve exact projection teardown and retail mutation order while removing App-side event reconstruction. Make the hard-recenter ordering fixture independent of the production two-millisecond frame budget so its injected-failure gate is deterministic. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
d3e96ff912
commit
ce3ac310d9
23 changed files with 2352 additions and 666 deletions
|
|
@ -225,12 +225,26 @@ public sealed class RuntimeTraceRecorder : IRuntimeEventObserver
|
|||
/// <summary>Monotonic sequence owner for one runtime instance.</summary>
|
||||
public sealed class RuntimeEventSequencer
|
||||
{
|
||||
private RuntimeGenerationToken _generation;
|
||||
private bool _hasGeneration;
|
||||
private ulong _sequence;
|
||||
|
||||
public RuntimeEventStamp Next(
|
||||
RuntimeGenerationToken generation,
|
||||
ulong frameNumber) =>
|
||||
new(generation, checked(++_sequence), frameNumber);
|
||||
ulong frameNumber)
|
||||
{
|
||||
if (!_hasGeneration || generation != _generation)
|
||||
{
|
||||
_generation = generation;
|
||||
_sequence = 0;
|
||||
_hasGeneration = true;
|
||||
}
|
||||
|
||||
return new RuntimeEventStamp(
|
||||
generation,
|
||||
checked(++_sequence),
|
||||
frameNumber);
|
||||
}
|
||||
|
||||
public ulong LastSequence => _sequence;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue