Approved

JBP-507: Fee Discrepancy Reimbursement

Cycle

81

loading

Proposed Transactions

0x594C...ec63

.pay(_projectId: 397, _amount: 7558353894453955624, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0x594C...ec63

.pay(_projectId: 421, _amount: 1750504209777476501, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0xFA39...7A5C

.pay(_projectId: 470, _amount: 1364856110820838545, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0xFA39...7A5C

.pay(_projectId: 477, _amount: 1675290016788501332, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0xFA39...7A5C

.pay(_projectId: 488, _amount: 1497056224022797342, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0xFA39...7A5C

.pay(_projectId: 549, _amount: 50216448544570982, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0xFA39...7A5C

.pay(_projectId: 552, _amount: 1110198814337841241, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy, _metadata: 0x00)

0x594C...ec63

.pay(_projectId: 188, _amount: 2648201597425761448, _token: 0x000000000000000000000000000000000000EEEe, _beneficiary: 0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e, _minReturnedTokens: 0, _preferClaimedTokens: true, _memo: fee discrepancy finders fee, _metadata: 0x00)

Synopsis

There were incorrect fees taken out of payouts to projects between starting from July 25, 2023. This proposal returns the incorrect fees to the projects.

Motivation

On July 29, 2024 Jigglyjams discovered that improper fees were being taken out of payments from the Juicebox treasury to other Juicebox projects (Discord message).

When Juicebox DAO migrated to new JBETHPaymentTerminal's the previous terminals were not see as feeless addresses. As a result all distributePayoutsOf from Juicebox to other projects NOT using the same terminal as Juicebox incurred an incorrect 2.5% protocol fee

In order to prevent this from happening in the future, JBP-506 specifies the setting of all JBETHPaymentTerminal's to feeless.

Specification

See https://github.com/jigglyjams/juicebox-fee-discrepancy for fee calculations and extended research

The following pay transactions shall be executed to resolve the improper fees. For the work done, jigglyjams is requesting a 15% finders fee which shall be sent to @jigglyjams.

ProjectIdProject Name & LinkExcess Fees Charged (ETH)Finders fee (ETH)After fee (ETH)
387@wagmi-studios1.055030557777181604N/A fees owedN/A fees owed
397@peel8.8921810522987713221.3338271578448156987.558353894453955624
421@exhausted-pigeon2.0594167173852664710.308912507607789971.750504209777476501
470@breadfruit1.6057130715539276990.2408569607330891541.364856110820838545
477@nance-app1.9709294315158839190.2956394147273825871.675290016788501332
488Bananapus1.7612426164974086370.2641863924746112951.497056224022797342
549Sablier V2 Interop Dev0.0590781747583188020.008861726213747820.050216448544570982
552@juicecast1.3061162521621661650.1959174378243249241.110198814337841241
TOTAL17.6546773161717430152.64820159742576144815.006475718745981567

NOTE: @wagmi-studios still owes @juicebox ~1.09 ETH due to a previous error in bookkeeping from February 22, 2023 thus these fees were not taken into account

Rationale

This seems like the proper thing to do

Risks

There is a risk that incorrect values were calculated. Able parties should double check jigglyjams work to mitigate this risk.

Timeline

This proposal shall be executed after the execution of JBP-506 so that the pay terminals they are being sent to are set to feeless.

--- nance-actions
- type: Custom Transaction
  uuid: 914de0793284467699ef9caae3ad6619
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - value: 397
        type: uint256
        name: _projectId
      - value: "7558353894453955624"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 87ad3310203e4e03a95105cb0bc03f4d
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "421"
        type: uint256
        name: _projectId
      - value: "1750504209777476501"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: d1915af4c118410eb83acd0167efaa85
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "470"
        type: uint256
        name: _projectId
      - value: "1364856110820838545"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: eafb8d11bd72421c898acea091c6cb9b
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "477"
        type: uint256
        name: _projectId
      - value: "1675290016788501332"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 1d9b7899ba1949828a462c1372e0470d
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "488"
        type: uint256
        name: _projectId
      - value: "1497056224022797342"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: ad3378203f7b4e5d8b45f5232d05596c
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "549"
        type: uint256
        name: _projectId
      - value: "50216448544570982"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 78f7d1c24f414993bcec41302386e771
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "552"
        type: uint256
        name: _projectId
      - value: "1110198814337841241"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 11b25c526de845c28867bc137c52333c
  payload:
    value: "0"
    tenderlyStatus: "false"
    args:
      - value: "188"
        type: uint256
        name: _projectId
      - value: "2648201597425761448"
        type: uint256
        name: _amount
      - type: address
        name: _token
        value: "0x000000000000000000000000000000000000EEEe"
      - type: address
        name: _beneficiary
        value: "0xAF28bcB48C40dBC86f52D459A6562F658fc94B1e"
      - value: "0"
        type: uint256
        name: _minReturnedTokens
      - value: true
        type: bool
        name: _preferClaimedTokens
      - value: fee discrepancy finders fee
        type: string
        name: _memo
      - value: "0x00"
        type: bytes
        name: _metadata
    functionName: function pay(uint256 _projectId, uint256 _amount, address _token,
      address _beneficiary, uint256 _minReturnedTokens, bool
      _preferClaimedTokens, string _memo, bytes _metadata) payable returns
      (uint256)
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81

Votes

loading