Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Settle deal #19

Closed
jijordre opened this issue Apr 23, 2018 · 0 comments
Closed

Settle deal #19

jijordre opened this issue Apr 23, 2018 · 0 comments
Assignees
Milestone

Comments

@jijordre
Copy link
Contributor

Description

Implement settle deal in Exchange smart contract according to section SettleDeal.

Definition of done

  • Exchange smart contract features has been implemented
  • Unit tests for Exchange features have been implemented

Details & Questions

Depends on

@jijordre jijordre added this to the Priority 1 milestone Apr 23, 2018
@jijordre jijordre added this to To do in nahmii contracts via automation Apr 23, 2018
@jijordre jijordre mentioned this issue Apr 23, 2018
7 tasks
@jijordre jijordre modified the milestones: Priority 1, v1 Apr 30, 2018
@jijordre jijordre self-assigned this May 11, 2018
@jijordre jijordre moved this from To do to In progress in nahmii contracts May 11, 2018
jijordre added a commit that referenced this issue May 11, 2018
jijordre added a commit that referenced this issue Jun 5, 2018
* Add support for challenging double spent order (#18)

* Add support for settling deal as trade (#19)

* Update data availability response and add unit tests

* Add alternate networks

* Add complementary negative tests

* Add service concept with registration and deregistration

* Add auxiliary contracts and start of settleDeal feature

* Factor out fraud specifics from Exchange to contract Fraud

* Factor out types and hash functions from Exchange and Fraud contracts

* Move operational mode from Exchange and Fraud contracts to Configuration contract

* Add absolute value function

* Add support for settling deal as payment (#19)

* Add support for cancel order

* Rename Fraud contract to AntiFraud

* Add support for get cancelled orders

* Add support for challenge cancelled order

* Add support for cancelled orders challenge phase

* Add support for start deal settlement challenge

* Bump revision of Truffle

* Add support for get challenged deal

* Rename configuration dealChallengeTimeout to dealSettlementChallengeTimeout

* Add support for challenge deal settlement by order (part 1)

* Factor out deal settlement challenge features in Exchange to separate contract DealSettlementChallenge

* Add support for challenge deal settlement by order (part 2)

* Update ethereumjs-util

* Add more users to glob object

* Add mocking module for order, trade and payment

* Update unit tests to using mock module

* Add support for dealSettlementChallengePhase og dealSettlementChallengeStatus

* Add mocked ClientFund and RevenueFund

* Add mocked DealSettlementChallenge

* Add mocked ReserveFund

* Update settle deal functions and unit tests

* Add support for two instances of ReserveFund and RevenueFund in Exchange

* Rename payment property keys source and destination to sender and recipient

* Rename seals property party to wallet

* Change interface so that getDoubleSpenders returs array of 3 addresses

* Add support for disableUpdateOfCommunityVote(), highestAbsoluteDealNonce() and updateHighestAbsoluteDealNonce()

* Add mocked CommunityVote

* Update double spender outcome

* Reorder functions

* Update double spender interface

* Add security bond

* Reorder functions

* Add support for unchallengeDealSettlementOrderByTrade()

* Add negating function neg()

* Factor cancel order challenge features out of DealSettlementChallenge and into separate contract

* Add support for challengeDealSettlementByTrade()

* Add support for challengeDealSettlementByPayment()

* Remove left over changeOwner

* Update imports of SafeMathInt and SafeMathUint and inherit from Ownable

* Simplify names

* Change value item properties '_address' to 'wallet'

* Complete hash functions of order, trade and payment

* Remove obsolete modifier

* Enable calls to ClientFund.seizeDepositedAndSettledBalances()

Rename deal settlement challenge status to result

* Replace 'install' by 'deploy'

* Upgrade to truffle 4.1.11 and solidity 0.4.24

* Validate wallet wrt double spenditure status

* Remove temporary functions and variable from ReserveFund

* Rename 'tokenAddress' to 'currency'

* Set service activation timeout to 1 week

* Add service pattern to Configuration to allow updates of operational mode

* Add contracts 'Hasher' and 'FraudulentDealValidator'

'Hasher' was factored out from hashing functions of 'Types'. 'FraudulentDealValidator' was factored out from deal validation functions of 'FraudulentDealChallenge'.

* Add call to SecurityBond.stage() in DealSettlementChallenge.unchallengeOrderCandidateByTrade()

* Move abtract contract into concreate contract file

* Create abstract contract and update service registration

* Create abstract contract

* Remove linking of SafeMathUintLib to DealSettlementChallenge

* Import abstract contracts, comment out getChallengedDealAsTrade() and getChallengedDealAsPayment()

* Create abstract contract, import abstract configuration

* Import abstract contracts, update seal requires on challengeByTrade() and challengeByPayment()

* Rename field

* Raise gas limit to 7m

* Rename FraudlentDealChallenge and FraudulentDealValidator to FraudChallenge and FraudValidator, respectively

* Import abstract configuration
@jijordre jijordre moved this from In progress to Done in nahmii contracts Jun 5, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

1 participant