The alert didn’t come from the robot.
It came from the Fabric's governance channel.
A thin line moved across the @Fabric Foundation compliance console while the task monitor was already mid-cycle.
governance_vote: passed
I almost let it scroll past.
Robot 44 was already inside the execution envelope.
Dispatch had cleared twenty seconds earlier.
Old rule snapshot.
Actuator telemetry still climbing. Gripper closing around the crate. Control loop steady.
Then the panel changed.
protocol_parameter: updated
compliance_parameter: changed
Config hash flipped.
Mid-task.
I checked the dispatch timestamp again.
Still old.
Robot 44 kept moving.
Payload transfer confirmed on the machine side before the governance update finished propagating across the Fabric protocol's validator mesh. From the robot’s side, nothing had changed.
The proof arrived a few seconds later.
Proof of Robotic Work entered the verification queue where it should. Sensor bundle attached. Execution proof sealed. Task certificate routed toward settlement.
I waited for the seal.
Instead the compliance panel blinked.
verification_stage: active
That’s where it split.
Dispatch timestamp: old rule
Proof submission: new rule
I read it twice.
Two rule snapshots inside one task record.
Validator votes started attaching. Uneven.

One node was still evaluating under the previous parameter snapshot. Another had already moved to the new compliance threshold.
validator_vote_weight: 0.38
Robot 44 had already stopped moving.
Actuator torque flattened into idle. Proof still sat in the Fabric verification queue.
I opened the compliance trace again.
One buried line.
parameter_snapshot: mismatch
The lift itself was fine.
Execution trace clean.
Motion envelope valid.
That wasn’t the problem.
The problem was simpler.
Robot 44 executed under one rule.
Fabric was settling it under another.
Votes kept attaching.
Slow.
validator_vote_weight: 0.51
Task monitor showed Robot 44 requesting its next command window.
Actuator already idle.
Ledger still deciding which rule applied to the proof.
Another validator attached weight.
validator_vote_weight: 0.66
Still not enough to feel finished.
Then settlement appeared.
settlement_event: confirmed
I checked the task certificate path.
Execution sealed under the updated governance parameter... not the snapshot Robot 44 had seen when dispatch cleared.
Same lift.
Wrong snapshot.
And that’s the part that sticks.
The robot didn’t fail....proof either.
The rule moved first.
Robot 44 was already requesting another task.
Command window opened.
Actuator telemetry started climbing again in the panel beside me.
The previous proof was already written into the ledger under the new parameter hash on Fabric while the robot began another cycle under that same rule.
Machine moved.
Fabric protocol changed the terms before the lift was done.