Planetable / Planet

Build and host decentralized blogs and websites on your Mac
https://planetable.xyz
MIT License
1.45k stars 61 forks source link

Publishing latency #262

Closed Swader closed 1 year ago

Swader commented 1 year ago

Added Filebase but the "pinning status" bar keeps "loading". I am unable to affect it, and no errors are thrown when I say publish or build.

I tried to manually pin the JSON and images to web3.storage as well (pinnable did not work for me), but no effect - it seems like the latency is hitting the publishing process pretty hard, or the pinning is failing.

image

Would it be possible to enable some kind of dev mode so I can check what's happening with the pinning process behind the scenes?

Edit for clarification: this is not a .limo issue, it persists even if I try to "open using public gateway"

livid commented 1 year ago

Hi @Swader,

Thanks for the feedback. We'll add a log file on disk to show all the API request/response details. I'll let you know when this is done and released in our Insider Builds.

Filebase Support

It was free to use when we first added the integration for Filebase API in September 2022. Later in 2022, Filebase changed terms to require a paid plan (starting at $20/mo) to use their API. This is the Filebase error message I got from the debugging log. I haven't paid for my API.

Screenshot 2023-08-21 at 11 20 39 AM

Pinnable

Pinnable is a new pinning API we've introduced. It's specifically designed for websites running on ENS and IPNS.

First, you need to add your .eth domain to the Pinnable website. After that, copy and paste the API URL into the app. Once you've done this, the app will call this API every time you publish or rebuild.

The service and integration have just released their first version, and we'll continue to improve them.

Screenshot 2023-08-21 at 11 32 24 AM
Swader commented 1 year ago

I tried using Pinnable, and even got 0.3 eth of dwb, but the app never recognized them (I never got them in the wallet actually). Then I thought I am supposed to "redeem" but that turned out to just give me back 0.21 eth and burn all 300 tokens (which it appears I had after all?). So I could not get Pinnable to allow me to add my site. I do have a paid account on Filebase and used that API, and in fact the first pin worked (see bruno.eth.limo) but the updated one did not, and this update has been pending now for a while. So thank you, debug logs will be appreciated to get to the bottom of it!

Swader commented 1 year ago

I was wrong, I had a free account on Filebase. Now that I put in a paid one, it started queueing up the pins, will see in the morning if all will be well but seems to be progressing!

livid commented 1 year ago

Thank you for the details.

When you first signed into pinnable.xyz, it initiated a background task to check your DWB balance. If the RPC node hasn't received the block containing your transaction yet, then Pinnable might not display your DWB balance. I believe we should include additional guidance in the Pinnable UI to address this potential latency between the JB transaction and the RPC node.

Regarding the 0.09E difference, I'm curious as well. Though the project has set a 100% redemption rate, it seems like it should return more. The discrepancy is puzzling. I've inquired about it in the Juicebox discord and am currently awaiting their response.

livid commented 1 year ago

I got the response about how Juicebox's redemption works.

Screenshot 2023-08-21 at 2 31 55 PM
Swader commented 1 year ago

That is fine, but what was more concerning is that even after 30 or so minutes my dwb did not show up in the UI, and so I was confused and blocked from using pinnable.

The Fileverse integration now says pinning (after I left it on queued overnight) but it still has not updated - my content is still out of date.

I will re-buy some dwb now to test things out with pinnable again, this latency is really quite a blocker right now.

Edit: bought at 08:28 CET time. Will update when change is reflected. Edit 2: yeah it does not look like tokens actually get minted alongside the NFT, unless I am doing something wrong: https://etherscan.io/tx/0x33F5515DEABECF1176E612E6F012C0D3791C01E09A8175EA8E4E6C5BA3C2740E Edit 3: I found a token migrate option on Juicebox, but it seems broken

image

Why does JB mint legacy tokens to begin with, it's $15 of mint+migration fee by default on top of the token price 🤔 (if it starts working).

Why Juicebox? Why not just a straightforward minter contract that mints the tokens and NFTs? We can help (I am from https://rmrk.app) and we can make it NFTs 2.0 while we're at it? Let's chat?

Swader commented 1 year ago

Final feedback: restarting Planet while in the stuck state actually helped move things along. Another point for more verbose debug logs.

livid commented 1 year ago

I'm sorry for all this! I checked with the Juicebox team and confirmed two things:

  1. A recent change in Juicebox UI removed the option to claim ERC-20 tokens. These ERC-20 tokens are now internal tokens that need a claim process to become ERC-20.
  2. The failed transaction to migrate legacy tokens on the UI is a bug they're aware of.

All those communications are in the Planet channel on the JB server:

https://discord.gg/juicebox

We have deployed a fix for the process to check the DWB balance. You should be able to see your DWB balance on the Pinnable website.

I sent a hello on Telegram :)

filipviz commented 1 year ago

@Swader sorry for the issues – they should be resolved now.

You can check a user's total balance across the ERC-20 and the mapping using JBTokenStore.balanceOf(...). I've switched Pinnable's backend over to this function in this PR.

Swader commented 1 year ago

Thank you, plugged in Pinnable key into Planet now!