nim-codex/codex
Eric e8e9820d5b
feat: add `--payout-address` (#870)
* feat: add `--payout-address`

Allows SPs to be paid out to a separate address, keeping their profits secure.
Supports https://github.com/codex-storage/codex-contracts-eth/pull/144 in the nim-codex client.

* Remove optional payoutAddress

Change --payout-address so that it is no longer optional. There is no longer an overload in `Marketplace.sol` for `fillSlot` accepting no `payoutAddress`.

* Update integration tests to include --payout-address

* move payoutAddress from fillSlot to freeSlot

* Update integration tests to use required payoutAddress

- to make payoutAddress required, the integration tests needed to avoid building the cli params until just before starting the node, otherwise if cli params were added ad-hoc, there would be an error after a non-required parameter was added before a required parameter.

* support client payout address

- withdrawFunds requires a withdrawAddress parameter, directs payouts for withdrawing of client funds (for a cancelled request) to go to that address.

* fix integration test

adds --payout-address to validators

* refactor: support withdrawFunds and freeSlot optional parameters

- withdrawFunds has an optional parameter for withdrawRecipient
- freeSlot has optional parameters for rewardRecipient and collateralRecipient
- change --payout-address to --reward-recipient to match contract signature naming

* Revert "Update integration tests to include --payout-address"

This reverts commit 8f9535cf35b0f2b183ac4013a7ed11b246486964.
There are some valid improvements to the integration tests, but they can be handled in a separate PR.

* small fix

* bump contracts to fix marketplace spec

* bump codex-contracts-eth, now rebased on master

* bump codex-contracts-eth

now that feat/reward-address has been merged to master

* clean up, comments
2024-09-17 04:18:15 +00:00
..
blockexchange Update advertising (#862) 2024-08-26 13:18:59 +00:00
contracts feat: add `--payout-address` (#870) 2024-09-17 04:18:15 +00:00
erasure Bandaid for failing erasure coding (#855) 2024-07-03 14:44:00 +00:00
manifest Chronos v4 Update (v3 Compat Mode) (#814) 2024-07-18 21:04:33 +00:00
merkletree Block deletion with ref count & repostore refactor (#631) 2024-06-20 22:46:06 +00:00
purchasing feat: expiry specified with number of seconds (#793) 2024-05-06 17:35:46 +02:00
rest Support CORS preflight requests when the storage request api returns an error (#878) 2024-08-15 23:57:50 +00:00
sales Block deletion with ref count & repostore refactor (#631) 2024-06-20 22:46:06 +00:00
slots Fixes prover behavior with singleton proof trees (#859) 2024-07-18 13:25:06 +00:00
stores Update advertising (#862) 2024-08-26 13:18:59 +00:00
streams Fix StoreStream so it doesn't return parity bytes (#838) 2024-06-21 11:09:59 +00:00
utils Rework AsyncIter (#811) 2024-06-10 22:47:29 +00:00
blockexchange.nim Change every dagger to codex (#102) 2022-05-19 13:56:03 -06:00
blocktype.nim Chronos v4 Update (v3 Compat Mode) (#814) 2024-07-18 21:04:33 +00:00
chunker.nim Cleanup integration tests (#757) 2024-05-23 15:29:30 +00:00
clock.nim Revert "remove call to `waitFor` from clock.now and make it async (#691)" (#707) 2024-02-16 22:12:16 +00:00
codex.nim feat: add `--payout-address` (#870) 2024-09-17 04:18:15 +00:00
codextypes.nim wire in circom backend (#698) 2024-02-09 21:40:30 +00:00
conf.nim feat: add `--payout-address` (#870) 2024-09-17 04:18:15 +00:00
contracts.nim feat: contract address management (#405) 2023-05-03 09:24:25 +02:00
discovery.nim Update logging for download (#799) 2024-05-16 10:06:12 -07:00
erasure.nim Improving proc/func formatting consistency (#454) 2023-06-22 08:11:18 -07:00
errors.nim Build slots (#668) 2024-01-11 08:45:23 -08:00
indexingstrategy.nim Fix verifiable manifest initialization (#839) 2024-06-21 22:50:56 +00:00
logutils.nim refactor: use serde for json de/serialization instead of utils/json (#704) 2024-03-19 03:25:13 +00:00
manifest.nim Update multicodecs (#665) 2023-12-22 13:04:01 +01:00
market.nim refactor(marketplace): generic querying of historical marketplace events (#872) 2024-08-16 02:55:25 +00:00
merkletree.nim Build slots (#668) 2024-01-11 08:45:23 -08:00
namespaces.nim Blockexchange uses merkle root and index to fetch blocks (#566) 2023-11-14 13:02:17 +01:00
node.nim Update advertising (#862) 2024-08-26 13:18:59 +00:00
periods.nim Validator (#387) 2023-04-19 15:06:00 +02:00
purchasing.nim feat: expiry specified with number of seconds (#793) 2024-05-06 17:35:46 +02:00
rng.nim track latest nim-libp2p's master branch (#248) 2022-11-02 11:40:28 -06:00
sales.nim feat[marketplace]: add slot queue pausing (#752) 2024-05-26 00:38:38 +00:00
slots.nim wire in circom backend (#698) 2024-02-09 21:40:30 +00:00
stores.nim Rework merkle tree (#654) 2023-12-21 06:41:43 +00:00
streams.nim adding AsyncStreamWrapper (#110) 2022-06-14 09:19:35 -06:00
systemclock.nim Revert "remove call to `waitFor` from clock.now and make it async (#691)" (#707) 2024-02-16 22:12:16 +00:00
units.nim Block deletion with ref count & repostore refactor (#631) 2024-06-20 22:46:06 +00:00
utils.nim Fixes active cancellation for pending want requests (#714) 2024-02-22 14:54:45 +00:00
validation.nim inlines copying of hashset (#809) 2024-05-17 00:57:30 +00:00