23 Commits

Author SHA1 Message Date
Mark Spanbroek
9cb049d6a4 vault: allow flows to be diverted to others 2025-03-04 09:36:00 +01:00
Mark Spanbroek
220b648758 vault: change flows over time 2025-03-04 09:36:00 +01:00
Mark Spanbroek
41005cf42c vault: make tests a bit more robust 2025-03-04 09:36:00 +01:00
Mark Spanbroek
eff9cc1acb vault: reject negative flows 2025-03-04 09:36:00 +01:00
Mark Spanbroek
db8b06a51b vault: flow to multiple recipients
- changes balance from uint256 -> uint128
  so that entire Balance can be read or written
  with a single operation
- moves Lock to library
- simplifies lock checks
2025-03-04 09:36:00 +01:00
Mark Spanbroek
4f880bb08a vault: improve naming of public functions 2025-03-04 09:36:00 +01:00
Mark Spanbroek
a18fbb8899 vault: allow automine to be disabled in time sensitive tests 2025-03-04 09:36:00 +01:00
Mark Spanbroek
dc4e277a20 vault: do not allow flow when lock already expired 2025-03-04 09:36:00 +01:00
Mark Spanbroek
b270a0355f vault: reject flow when insufficient tokens available 2025-03-04 09:36:00 +01:00
Mark Spanbroek
f8fb23a8dd vault: stop flowing when lock expires 2025-03-04 09:36:00 +01:00
Mark Spanbroek
40e6f1cdcc vault: designate tokens that flow 2025-03-04 09:36:00 +01:00
Mark Spanbroek
7403886283 vault: flow tokens from one recipient to the other 2025-03-04 09:36:00 +01:00
Mark Spanbroek
606cfc4c1e vault: allow recipient to withdraw 2025-03-04 09:36:00 +01:00
Mark Spanbroek
b64b65a692 vault: further test for locks 2025-03-04 09:36:00 +01:00
Mark Spanbroek
cbbcad5166 vault: remove duplication in tests 2025-03-04 09:36:00 +01:00
Mark Spanbroek
6dbbdb5bd3 vault: simplify test setup 2025-03-04 09:36:00 +01:00
Mark Spanbroek
16a8b020bc vault: lock is deleted upon withdrawal 2025-03-04 09:36:00 +01:00
Mark Spanbroek
caf86d184e vault: lock up tokens until expiry time 2025-03-04 09:36:00 +01:00
Mark Spanbroek
e1f914726b vault: designate tokens for a single recipient 2025-03-04 09:36:00 +01:00
Mark Spanbroek
7018f9ef22 vault: transfer tokens from one recipient to the other 2025-03-04 09:36:00 +01:00
Mark Spanbroek
eb1b821346 vault: burning funds 2025-03-04 09:36:00 +01:00
Mark Spanbroek
230e2140eb vault: change data structure to be recipient oriented 2025-03-04 09:36:00 +01:00
Mark Spanbroek
d8049faf22 vault: deposit and withdraw 2025-03-04 09:36:00 +01:00