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

Enrich contract events to contain data needed by child-chain and watcher #686

Merged
merged 6 commits into from
Aug 27, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,11 @@ library PaymentChallengeIFENotCanonical {
event InFlightExitChallenged(
address indexed challenger,
bytes32 indexed txHash,
uint256 challengeTxPosition
uint256 challengeTxPosition,
uint16 inFlightTxInputIndex,
bytes challengeTx,
uint16 challengeTxInputIndex,
bytes challengeTxWitness
);

event InFlightExitChallengeResponded(
Expand Down Expand Up @@ -131,7 +135,15 @@ library PaymentChallengeIFENotCanonical {
// Set a flag so that only the inputs are exitable, unless a response is received.
ife.isCanonical = false;

emit InFlightExitChallenged(msg.sender, keccak256(args.inFlightTx), competitorPosition);
emit InFlightExitChallenged({
challenger: msg.sender,
txHash: keccak256(args.inFlightTx),
challengeTxPosition: competitorPosition,
inFlightTxInputIndex: args.inFlightTxInputIndex,
challengeTx: args.competingTx,
challengeTxInputIndex: args.competingTxInputIndex,
challengeTxWitness: args.competingTxWitness
});
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,10 @@ library PaymentStartInFlightExit {

event InFlightExitStarted(
address indexed initiator,
bytes32 indexed txHash
bytes32 indexed txHash,
bytes inFlightTx,
uint256[] inputUtxosPos,
bytes[] inFlightTxWitnesses
);

/**
Expand Down Expand Up @@ -105,7 +108,13 @@ library PaymentStartInFlightExit {
StartExitData memory startExitData = createStartExitData(self, args);
verifyStart(startExitData, inFlightExitMap);
startExit(startExitData, inFlightExitMap);
emit InFlightExitStarted(msg.sender, startExitData.inFlightTxHash);
emit InFlightExitStarted({
initiator: msg.sender,
txHash: startExitData.inFlightTxHash,
inFlightTx: args.inFlightTx,
inputUtxosPos: args.inputUtxosPos,
inFlightTxWitnesses: args.inFlightTxWitnesses
});
}

function createStartExitData(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ library PaymentStartStandardExit {

event ExitStarted(
address indexed owner,
uint168 exitId
uint168 exitId,
uint256 utxoPos
);

/**
Expand Down Expand Up @@ -90,7 +91,11 @@ library PaymentStartStandardExit {
saveStandardExitData(data, exitMap);
enqueueStandardExit(data);

emit ExitStarted(msg.sender, data.exitId);
emit ExitStarted({
owner: msg.sender,
exitId: data.exitId,
utxoPos: args.utxoPos
});
}

function setupStartStandardExitData(
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/Address.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ returns(bool)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/Bits.md
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,7 @@ True, if the bit is '0'; otherwise, False
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/BlockController.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@ returns(bool)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/BlockModel.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ struct Block {
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/BondSize.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ function validateBondSize(struct BondSize.Params self, uint128 newBondSize) priv
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/ECDSA.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@ returns(bytes32)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/Erc20DepositVerifier.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@ Verified (owner, token, amount) of the deposit ERC20 token data
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/Erc20Vault.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,7 @@ function withdraw(address payable receiver, address token, uint256 amount) exter
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/EthDepositVerifier.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ function verify(bytes depositTx, uint256 amount, address sender) external view
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/EthVault.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ function withdraw(address payable receiver, uint256 amount) external nonpayable
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
96 changes: 96 additions & 0 deletions plasma_framework/docs/contracts/ExitBounty.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
# ExitBounty.sol

View Source: [contracts/src/exits/utils/ExitBounty.sol](../../contracts/src/exits/utils/ExitBounty.sol)

**ExitBounty**

## Functions

- [processStandardExitBountySize(uint256 gasPriceStartExit)](#processstandardexitbountysize)

### processStandardExitBountySize

Returns the Process Exit Bounty size for standard exits

```js
function processStandardExitBountySize(uint256 gasPriceStartExit) internal view
returns(uint256)
```

**Arguments**

| Name | Type | Description |
| ------------- |------------- | -----|
| gasPriceStartExit | uint256 | |

## Contracts

* [Address](Address.md)
* [Bits](Bits.md)
* [BlockController](BlockController.md)
* [BlockModel](BlockModel.md)
* [BondSize](BondSize.md)
* [ECDSA](ECDSA.md)
* [Erc20DepositVerifier](Erc20DepositVerifier.md)
* [Erc20Vault](Erc20Vault.md)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
* [ExitPriority](ExitPriority.md)
* [FailFastReentrancyGuard](FailFastReentrancyGuard.md)
* [FeeClaimOutputToPaymentTxCondition](FeeClaimOutputToPaymentTxCondition.md)
* [FeeExitGame](FeeExitGame.md)
* [FungibleTokenOutputModel](FungibleTokenOutputModel.md)
* [GenericTransaction](GenericTransaction.md)
* [IERC20](IERC20.md)
* [IErc20DepositVerifier](IErc20DepositVerifier.md)
* [IEthDepositVerifier](IEthDepositVerifier.md)
* [IExitProcessor](IExitProcessor.md)
* [ISpendingCondition](ISpendingCondition.md)
* [IStateTransitionVerifier](IStateTransitionVerifier.md)
* [Math](Math.md)
* [Merkle](Merkle.md)
* [Migrations](Migrations.md)
* [MoreVpFinalization](MoreVpFinalization.md)
* [OnlyFromAddress](OnlyFromAddress.md)
* [OnlyWithValue](OnlyWithValue.md)
* [OutputId](OutputId.md)
* [Ownable](Ownable.md)
* [PaymentChallengeIFEInputSpent](PaymentChallengeIFEInputSpent.md)
* [PaymentChallengeIFENotCanonical](PaymentChallengeIFENotCanonical.md)
* [PaymentChallengeIFEOutputSpent](PaymentChallengeIFEOutputSpent.md)
* [PaymentChallengeStandardExit](PaymentChallengeStandardExit.md)
* [PaymentDeleteInFlightExit](PaymentDeleteInFlightExit.md)
* [PaymentEip712Lib](PaymentEip712Lib.md)
* [PaymentExitDataModel](PaymentExitDataModel.md)
* [PaymentExitGame](PaymentExitGame.md)
* [PaymentExitGameArgs](PaymentExitGameArgs.md)
* [PaymentInFlightExitModelUtils](PaymentInFlightExitModelUtils.md)
* [PaymentInFlightExitRouter](PaymentInFlightExitRouter.md)
* [PaymentInFlightExitRouterArgs](PaymentInFlightExitRouterArgs.md)
* [PaymentOutputToPaymentTxCondition](PaymentOutputToPaymentTxCondition.md)
* [PaymentPiggybackInFlightExit](PaymentPiggybackInFlightExit.md)
* [PaymentProcessInFlightExit](PaymentProcessInFlightExit.md)
* [PaymentProcessStandardExit](PaymentProcessStandardExit.md)
* [PaymentStandardExitRouter](PaymentStandardExitRouter.md)
* [PaymentStandardExitRouterArgs](PaymentStandardExitRouterArgs.md)
* [PaymentStartInFlightExit](PaymentStartInFlightExit.md)
* [PaymentStartStandardExit](PaymentStartStandardExit.md)
* [PaymentTransactionModel](PaymentTransactionModel.md)
* [PaymentTransactionStateTransitionVerifier](PaymentTransactionStateTransitionVerifier.md)
* [PlasmaFramework](PlasmaFramework.md)
* [PosLib](PosLib.md)
* [PriorityQueue](PriorityQueue.md)
* [Protocol](Protocol.md)
* [Quarantine](Quarantine.md)
* [RLPReader](RLPReader.md)
* [SafeERC20](SafeERC20.md)
* [SafeEthTransfer](SafeEthTransfer.md)
* [SafeMath](SafeMath.md)
* [SpendingConditionRegistry](SpendingConditionRegistry.md)
* [Vault](Vault.md)
* [VaultRegistry](VaultRegistry.md)
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/ExitGameController.md
Original file line number Diff line number Diff line change
Expand Up @@ -320,6 +320,7 @@ returns(bytes32)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/ExitGameRegistry.md
Original file line number Diff line number Diff line change
Expand Up @@ -179,6 +179,7 @@ returns(uint256)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
3 changes: 2 additions & 1 deletion plasma_framework/docs/contracts/ExitId.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ returns(uint168)
standardExitId Unique ID of the standard exit
Anatomy of returned value, most significant bits first:
1-bit - in-flight flag (0 for standard exit)
167-bits - hash(tx) or hash(tx|utxo) for deposit
167-bits - outputId

**Arguments**

Expand Down Expand Up @@ -89,6 +89,7 @@ Unique in-flight exit ID
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/ExitPriority.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@ returns(uint168)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/ExitableTimestamp.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ returns(uint32)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/FailFastReentrancyGuard.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ modifier nonReentrant(ExitGameController exitGameController) internal
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,7 @@ returns(bool)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/FeeExitGame.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ View Source: [contracts/src/exits/fee/FeeExitGame.sol](../../contracts/src/exits
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ returns(struct FungibleTokenOutputModel.Output)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/GenericTransaction.md
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ returns(struct GenericTransaction.Output)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/IERC20.md
Original file line number Diff line number Diff line change
Expand Up @@ -147,6 +147,7 @@ returns(bool)
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/IErc20DepositVerifier.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ Verified (owner, token, amount) of the deposit ERC20 token data
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
1 change: 1 addition & 0 deletions plasma_framework/docs/contracts/IEthDepositVerifier.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ function verify(bytes depositTx, uint256 amount, address sender) external view
* [EthDepositVerifier](EthDepositVerifier.md)
* [EthVault](EthVault.md)
* [ExitableTimestamp](ExitableTimestamp.md)
* [ExitBounty](ExitBounty.md)
* [ExitGameController](ExitGameController.md)
* [ExitGameRegistry](ExitGameRegistry.md)
* [ExitId](ExitId.md)
Expand Down
Loading