Took a weekend dive to look at some more content around nouns builder vs nouns.wtf protocol because:
I started at the nouns.wtf protocol and ran into a bump where I noticed I didn’t understand what the term “Observer” meant on the timing diagram in the protocol documentation https://nouns.center/dev/nouns-protocol. I would consider this a cool protocol concept to highlight. From what I’ve gathered on GitHub, “Observer” can potentially be something that can be updated in the flow of things.
Observer refers to the protocol watching auction settlement prices, at first but I didn’t know if it was a contract or method…but it is a Struct. View miro for code snippets
The methods in which they monitor settlement prices in storage has been refactored and they monitor price so it can be used as an oracle, or Noracle, of recent nouns sales via the auction.
Storing settlement price history directly in the NounsAuctionHouseV2 contract substantially reduces the potential for logical errors on the part of the calling contract. This is also a gas efficient way to transfer data and provide a better auction-settling experience for the user.
It does this by preemptively handling contract storage space so users don’t get a random spike in their settlement gas cost from over computation that a smart contract would have to do when more storage slots aren’t “warmedUP”
Storage can be visualized like this:
The Noracle turns the structure above into a solidity mapping so it can be referenced and updated. Noracle was also inspired by Uniswap price history oracle. I am seeing that Noracle still exists but is not used anymore because the new contract creates settlement objects all in one method
This is the inheritance tree for the current version of Nouns Auction House Contract…
…and this is my attempt at adding elements for the refactored timing diagram for Nouns Auctions V2.
I also believe the Nouns.wtf auctions automatically settle as opposed to the Nouns Builder fork auctions settling externally?
If i said anything wrong these are all my educated guesses based on the information on the nouns GitHub org, I think I am close but decided to just stop, I want to try again sometime this week or try to do this live.