Approved

JBP-506: Set All Terminals as Feeless

Cycle

81

loading

Proposed Transactions

0x594C...ec63

.setFeelessAddress(_address: 0xFA391De95Fcbcd3157268B91d8c7af083E607A5C, _flag: true)

0x594C...ec63

.setFeelessAddress(_address: 0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573, _flag: true)

0x594C...ec63

.setFeelessAddress(_address: 0x1d9619E10086FdC1065B114298384aAe3F680CC0, _flag: true)

0xFA39...7A5C

.setFeelessAddress(_address: 0x594Cb208b5BB48db1bcbC9354d1694998864ec63, _flag: true)

0xFA39...7A5C

.setFeelessAddress(_address: 0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573, _flag: true)

0xFA39...7A5C

.setFeelessAddress(_address: 0x1d9619E10086FdC1065B114298384aAe3F680CC0, _flag: true)

0x457c...D573

.setFeelessAddress(_address: 0x594Cb208b5BB48db1bcbC9354d1694998864ec63, _flag: true)

0x457c...D573

.setFeelessAddress(_address: 0xFA391De95Fcbcd3157268B91d8c7af083E607A5C, _flag: true)

0x457c...D573

.setFeelessAddress(_address: 0x1d9619E10086FdC1065B114298384aAe3F680CC0, _flag: true)

0x1d96...0CC0

.setFeelessAddress(_address: 0x594Cb208b5BB48db1bcbC9354d1694998864ec63, _flag: true)

0x1d96...0CC0

.setFeelessAddress(_address: 0xFA391De95Fcbcd3157268B91d8c7af083E607A5C, _flag: true)

0x1d96...0CC0

.setFeelessAddress(_address: 0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573, _flag: true)

Synopsis

The DAO needs to set multiple version of JBETHPaymentTerminal as feeless to avoid improper fees being charge to inter-Juicebox payouts.

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).

The intent of Juicebox JBX membership fees according to docs.juicebox.money:

All funds distributed by projects from their treasuries to destinations outside of the Juicebox ecosystem (i.e. distributions that do not go to other Juicebox treasuries) will incure a protocol fee

Any funds sent from one juicebox treasury to another via splits do not incur fees.

To correct this, all payment terminal versions must have all other terminals set as isFeelessAddress

Terminals:

  1. JBETHPaymentTerminal: 0x594Cb208b5BB48db1bcbC9354d1694998864ec63
  2. JBETHPaymentTerminal3_1: 0xFA391De95Fcbcd3157268B91d8c7af083E607A5C
  3. JBETHPaymentTerminal3_1_1: 0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573
  4. JBETHPaymentTerminal3_1_2: 0x1d9619E10086FdC1065B114298384aAe3F680CC0

Specification

On all terminals call setFeelessAddress as true to all other terminals

Rationale

This makes the payment terminals operate as intended, no fees taken out for inter-Juicebox payouts

Risks

There is a risk that an incorrect address is set as feeless. The DAO and multisig team shall check the addresses are correct in order to mitigate this risk.

Timeline

As soon as proposal passes

--- nance-actions
- type: Custom Transaction
  uuid: 29482019613e4fe3904cf6ec1e3e7561
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    tenderlyId: 79e74d22-070c-4ca5-b5de-9acd99dbe95b
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 518aafe1cb9447efa31d2847297cf9f0
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 56634561c5cb4101855a897928c1c052
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: f77b056bcccd4417ac55c9957483f84c
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 4300aa607108411fa2b9becb9d90c011
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: d6fc8ec29cc645179b3a57f0c0cbbb39
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 9acf9e2c06a04d95bf28465149d7b03d
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 9d2e58e96b04407d90f93b01151592f5
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: e4dd4393a50b4eeb84f0fb50521e915c
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 63666a9a58404f8fa845bd652cca1a0b
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x594Cb208b5BB48db1bcbC9354d1694998864ec63"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 9027378651fa429c9993ca8aac2adfb1
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0xFA391De95Fcbcd3157268B91d8c7af083E607A5C"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
  governanceCycles:
    - 81
- type: Custom Transaction
  uuid: 4cc65cbdff4b4ee487f3359966c80de4
  payload:
    value: 0
    tenderlyStatus: "false"
    args:
      - type: address
        name: _address
        value: "0x457cD63bee88ac01f3cD4a67D5DCc921D8C0D573"
      - value: true
        type: bool
        name: _flag
    functionName: function setFeelessAddress(address _address, bool _flag)
    contract: "0x1d9619E10086FdC1065B114298384aAe3F680CC0"
  governanceCycles:
    - 81

Votes

loading