Stage C-a: work law — running VM charged at each of its own beats, with carry (FABRIC-3.8 §3.13.2)
vm_physics_charge(): per-beat slope into a per-VM carry, whole units pulled from the rest of the live fleet in proportion to heat (conservative vm_physics_transfer), rounding shortfall kept in the carry, no fleet_window sample. Called from vm_tick() only for the switch-current VM. Closes G9: a VM running its own mail on its own stack now heats up while it works. Probe (reverted): baseline Hestia heat 0->0->0 over 71 beats (FAIL, proves G9); with charge 0->11->23 at beats 15->51->86, identical on amd64/aarch64/ riscv64, conserved, PASS. Acceptance: dict_hash unchanged, WIREBIND relay 3. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
29447abb7d
commit
7c3736841d
Reference in New Issue
Block a user