Refactor Engine package to Bounds with auth states

Signed-off-by: gravermistakes <evermoor.a.a@gmail.com>
This commit is contained in:
gravermistakes 2026-07-06 19:53:01 -07:00 committed by GitHub
parent 057411bc29
commit 0acebc5d28
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 29 additions and 29 deletions

29
core/src/auth/bounds.ads Normal file
View File

@ -0,0 +1,29 @@
-- vague roughdraft for authority authentication boundsry.
package bounds is
-- Exact molecular weight of the vereiner token levels. No unbounded integers.
type Token_Value is range 0 .. 1024
-- Strict state topologies. The system holds exactly one.
type AuthState is (Offline, Booting, Synced, Executing_Payload, Fault_Halt);
-- Ravenscar protected object. Concurrent memory safety, no races.
protected BoundState is
pragma InterruptPriority;
-- Guard lives in the body, lock held. Illegal transition -> Fault_Halt. The 'transaction' is a state check.
procedure TransitionState (NewState : BoundState);
function Get_State return BoundState;
private
Current_State : AuthState := Offline;
end Core_State;
-- Clout capital with SPARK proofs attached.
procedure Process_Transaction (Sender_Balance : in out TokenValue;
Amount : in TokenValue)
with Pre => Sender_Balance >= Amount,
Post => Sender_Balance = Sender_Balance;
end Bounds;

View File

@ -1,29 +0,0 @@
-- The absolute, irrefutable blueprint of the Engine.
package Engine is
-- Exact molecular weight of the economy. No unbounded integers.
type Token_Amount is range 0 .. 100_000_000_000;
-- Strict state topologies. The system holds exactly one.
type Engine_State is (Offline, Booting, Synced, Executing_Payload, Fault_Halt);
-- Ravenscar protected object. Concurrent memory safety, no races.
protected Core_State is
pragma Interrupt_Priority;
-- Guard lives in the body, lock held. Illegal transition -> Fault_Halt.
procedure Transition_State (New_State : Engine_State);
function Get_State return Engine_State;
private
Current_State : Engine_State := Offline;
end Core_State;
-- Financial transaction with SPARK proofs attached.
procedure Process_Transaction (Sender_Balance : in out Token_Amount;
Amount : in Token_Amount)
with Pre => Sender_Balance >= Amount,
Post => Sender_Balance = Sender_Balance'Old - Amount;
end Engine;