mirror of
https://github.com/urbit/shrub.git
synced 2024-12-01 06:35:32 +03:00
118 lines
2.3 KiB
Plaintext
118 lines
2.3 KiB
Plaintext
:: dice: structures for Azimuth L2 rollers
|
|
::
|
|
/+ naive, ethereum
|
|
::
|
|
|%
|
|
+$ owner [=proxy:naive =address:naive]
|
|
+$ owners (jug owner ship)
|
|
+$ sponsors (map ship [residents=(set ship) requests=(set ship)])
|
|
+$ history (map address:ethereum (tree hist-tx))
|
|
+$ events (list event-log:rpc:ethereum)
|
|
+$ net ?(%mainnet %ropsten %goerli %local %default)
|
|
+$ snap-state [%0 =id:block:jael nas=^state:naive =owners =sponsors]
|
|
::
|
|
+$ config
|
|
$% [%frequency frequency=@dr]
|
|
[%fallback gas=@ud]
|
|
[%setkey pk=@]
|
|
[%endpoint endpoint=@t =net]
|
|
[%resend-time time=@dr]
|
|
[%update-rate rate=@dr]
|
|
[%slice slice=@dr]
|
|
[%quota quota=@ud]
|
|
==
|
|
::
|
|
+$ indices
|
|
$: own=owners
|
|
spo=sponsors
|
|
==
|
|
::
|
|
+$ azimuth-config
|
|
$: refresh-rate=@dr
|
|
==
|
|
::
|
|
+$ roller-config
|
|
$: next-batch=time
|
|
frequency=@dr
|
|
resend-time=@dr
|
|
update-rate=@dr
|
|
contract=@ux
|
|
chain-id=@
|
|
slice=@dr
|
|
quota=@ud
|
|
==
|
|
::
|
|
+$ keccak @ux
|
|
::
|
|
+$ status
|
|
?(%unknown %pending %sending %confirmed %failed %cancelled)
|
|
::
|
|
+$ tx-status
|
|
$: =status
|
|
pointer=(unit l1-tx-pointer)
|
|
==
|
|
::
|
|
+$ l1-tx-pointer
|
|
$: =address:ethereum
|
|
nonce=@ud
|
|
==
|
|
::
|
|
+$ l2-tx
|
|
$? %transfer-point
|
|
%spawn
|
|
%configure-keys
|
|
%escape
|
|
%cancel-escape
|
|
%adopt
|
|
%reject
|
|
%detach
|
|
%set-management-proxy
|
|
%set-spawn-proxy
|
|
%set-transfer-proxy
|
|
==
|
|
::
|
|
+$ update
|
|
$% [%tx =pend-tx =status]
|
|
::
|
|
$: %point
|
|
=diff:naive
|
|
=ship
|
|
new=point:naive
|
|
old=(unit point:naive)
|
|
to=owner
|
|
from=(unit owner)
|
|
== ==
|
|
::
|
|
+$ hist-tx [p=time q=roll-tx]
|
|
+$ roll-tx [=ship =status hash=keccak type=l2-tx]
|
|
+$ pend-tx [force=? =address:naive =time =raw-tx:naive]
|
|
+$ send-tx
|
|
$: next-gas-price=@ud
|
|
sent=?
|
|
:: TODO: make txs as (list pend-tx)?
|
|
::
|
|
txs=(list [=address:naive force=? =raw-tx:naive])
|
|
==
|
|
+$ part-tx
|
|
$% [%raw raw=octs]
|
|
[%don =tx:naive]
|
|
[%ful raw=octs =tx:naive] ::TODO redundant?
|
|
==
|
|
::
|
|
+$ rpc-send-roll
|
|
$: endpoint=@t
|
|
contract=address:ethereum
|
|
chain-id=@
|
|
pk=@
|
|
::
|
|
nonce=@ud
|
|
fallback-gas-price=@ud
|
|
next-gas-price=@ud
|
|
txs=(list raw-tx:naive)
|
|
==
|
|
::
|
|
+$ roller-data
|
|
[chain-id=@ =points:naive history=(tree hist-tx) =owners =sponsors]
|
|
::
|
|
--
|