2.2 Fee Flow Topology
This page describes how native value moves through the system during recycle execution.
All routing occurs atomically within the recycle() transaction.
No off-chain allocation exists.
I. Native Value Entry
When a user calls:
recycle(token) payable
Native value enters the RecyclingEngine as msg.value.
The engine does not retain discretionary custody.
Value is routed immediately through the configured Router contract.
II. Router Rail Split
The RecyclingEngine reads:
The Router contract defines rail splits.
Typical rails include:
• Ops Rail
• Provider Rail
• Recycle Rail
The split is deterministic and executed within the same transaction.
If rails are misconfigured, execution reverts:
There is no partial routing.
III. Recycle Rail
The recycle rail portion of native value:
• Remains within the RecyclingEngine
• Increases accNativePerWeight
• Becomes distributable via claim()
This is the only rail that affects weight holders.
The formula applied:
If totalWeight == 0, behavior is determined by contract logic (must be documented per deployment).
IV. Provider Rail
If configured, the provider rail:
• Transfers native value to inventory provider
• Occurs immediately within transaction
• Is visible in internal transfer logs
This rail does not affect ledger math.
If configured, the ops rail:
• Transfers native value to designated ops address
• Is visible in internal transaction logs
• Is not part of distribution math
VI. Share Rail (Optional Cross-Chain Flow)
If configured, a portion of native may be routed to:
FeeVault (on execution chain)
From FeeVault:
• Funds may be bridged
• Forwarded to Fund (Ethereum)
• Enter treasury ledger
This process is separate from recycle distribution.
Recycle distribution remains local to execution chain.
VII. Atomicity Guarantee
All routing occurs within one transaction:
If any step fails:
Transaction reverts entirely.
No partial state mutation.
VIII. Verifying Rail Transfers
To verify fee routing:
Locate recycle transaction
Inspect internal transfers
Confirm:
Remaining recycle rail in engine
Internal native transfers must match rail percentages.
IX. Separation of Concerns
Recycle execution does not:
• Control Fund directly
• Allocate treasury funds
• Modify governance state
Fee routing is mechanical.
Governance is separate.
X. Value Flow Summary
Rail
Destination
Affects Weight
Governance Controlled
This table prevents confusion between recycle math and treasury flows.
Last updated