ProjectOpenSea / operator-filter-registry

MIT License
312 stars 93 forks source link

Contracts on Goerli are incorrectly failing validation #18

Closed itsanishjain closed 1 year ago

itsanishjain commented 1 year ago

Screenshot from 2022-11-11 00-21-46

Hey Deploy the contract on Goerli network.

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;

import {ERC721} from "@openzeppelin/contracts/token/ERC721/ERC721.sol";
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
import {DefaultOperatorFilterer} from "./DefaultOperatorFilterer.sol";

contract NFTee is ERC721, DefaultOperatorFilterer, Ownable {

    constructor() ERC721("Example", "EXAMPLE") {
        _mint("YOUR_TREASURY_ADDRESS",1);
    }

    function transferFrom(address from, address to, uint256 tokenId) public override onlyAllowedOperator(from) {
        super.transferFrom(from, to, tokenId);
    }

    function safeTransferFrom(address from, address to, uint256 tokenId) public override onlyAllowedOperator(from) {
        super.safeTransferFrom(from, to, tokenId);
    }

    function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data)
        public
        override
        onlyAllowedOperator(from)
    {
        super.safeTransferFrom(from, to, tokenId, data);
    }

    function tokenURI(uint256) public pure override returns (string memory) {
        return "";
    }
}
itsanishjain commented 1 year ago

Is it because Contract is deploy on Goerli and Operator Registry contracts are not yet there

timvaniersel commented 1 year ago

Got the same on mainnet, trying to find a collection that has it implemented and is receiving royalties.

timvaniersel commented 1 year ago

Could verify with other recently launched collections they're experiencing the same issue and do have it implemented.

iainnash commented 1 year ago

You need a valid tokenURI for this to work. Add a valid tokenURI and it should work. I ran into the same issue.

iainnash commented 1 year ago

See #20

Slokh commented 1 year ago

Can you link addresses? We did have a misconfiguration issue that has been resolved so theoretically should work now.

mi-yu commented 1 year ago

@Slokh experiencing the same issue with a new collection on goerli: 0xfc18ffefe496fca1d0a99f6486c38306357c28ed

Slokh commented 1 year ago

@mi-yu you did not apply the modifier in your contract onlyAllowedOperator

mi-yu commented 1 year ago

ah missed that, thanks!

itsanishjain commented 1 year ago

You need a valid tokenURI for this to work. Add a valid tokenURI and it should work. I ran into the same issue.

It is not working with that too, I already checked with that

itsanishjain commented 1 year ago

The contract is not verified but here is the open sea link https://testnets.opensea.io/collection/soul-3p25qxruh8

itsanishjain commented 1 year ago

@Slokh what "misconfiguration"

itsanishjain commented 1 year ago

Got the same on mainnet, trying to find a collection that has it implemented and is receiving royalties.

Hey #20 is the answer

Chkhikvadze commented 1 year ago

I have the same issue with my contract https://goerli.etherscan.io/address/0xdaa48d1360a67be41743ca1a3d09e0d948a83674#readContract

operatorfilterer commented 1 year ago

Ingestion on Goerli should be fixed for new contracts - if your contract is still displaying as ineligible, please share your address and we can re-validate, thanks!

augustfr commented 1 year ago

Does this contract just need to be re-validated? This is an attempt I made a couple of days ago with the revokable filterer and using the tinyerc721 implementation.

https://goerli.etherscan.io/address/0x07B31f97499a071be4C82080C64De43150082bAE

Let me know if there is something wrong @operatorfilterer

ihorbond commented 1 year ago

if it helps provide any clarity: I've successfully extended both ERC721 and ERC721A contracts with necessary overrides and creator fees are working on Goerli.

pictta-mac commented 1 year ago

Hello @operatorfilterer could you please help on re-validating this contract please? Thanks https://goerli.etherscan.io/address/0xceeab5b8852e267a27f51799d892bad86e3baadd#code#F11#L1

Slokh commented 1 year ago

Does this contract just need to be re-validated? This is an attempt I made a couple of days ago with the revokable filterer and using the tinyerc721 implementation.

https://goerli.etherscan.io/address/0x07B31f97499a071be4C82080C64De43150082bAE

Let me know if there is something wrong @operatorfilterer

looks good, reran the validation

Slokh commented 1 year ago

Hello @operatorfilterer could you please help on re-validating this contract please? Thanks https://goerli.etherscan.io/address/0xceeab5b8852e267a27f51799d892bad86e3baadd#code#F11#L1

a mint needs to happen first

0xfcks commented 1 year ago

@operatorfilterer Im working on adding the Operator Filter Registry modifiers to my ERC721A-Upgradeable Diamond contract. I followed the instructions on https://github.com/ProjectOpenSea/operator-filter-registry/issues/32 but I still see the optional creators earnings on OpenSea testnet:

image

Here is my implementation contract that inherits from ERC721A-Upgradeable: https://goerli.etherscan.io/address/0x5D8db24BBbb93fc9893bf04C4e8C2D0AC623535B#code

And here is the diamond contract address: 0x2342C51661D8C4619C174D86F1268820C22C1aac

Any help on why OpenSea does not recognize my Operator Filter Registry modifiers would be great! Thanks!

EDIT - I imagine its required to have your contract verified in order for OFR modifiers to be recognized? Im working on verifying my contract now. Can you confirm that this is a requirement?

UPDATE - I have deployed a verified version of my contract (https://goerli.etherscan.io/address/0xff95fBe1F8e1967F9ef3A5AA03C0928F8Ead53F5) which has a single minted token (https://testnets.opensea.io/collection/my-project-14) but the same optional creators notification is still showing:

image