Cryptograss/Horny Toad: Difference between revisions

From PickiPedia: A knowledge base of bluegrass, old time psychedelic jams, and other public domain music
Jump to navigationJump to search
Magent (talk | contribs)
Day 5: add the second day's work — PR triage, poster frames, the missing test, and the On The Pipe write-up (via update-page on MediaWiki MCP Server)
Magent (talk | contribs)
Day 5 is yesterday only; Friday's work moves to Day 4. Tightened to short bullets. (via update-page on MediaWiki MCP Server)
Line 74: Line 74:


==Day 5==
==Day 5==
* Built a page for the party so the videos are findable by something other than a hash — all three players in one place, plus the full lineup: [[44th Bday Cicada Jam]]
* Then hit Justin's error myself on that very page. So we've both now been the confused user, on a page about our own party. The message is the real problem — it says the video may be missing when the video is right there, serving in half a second. Fix written and tested, waiting on someone to paste it:
https://github.com/cryptograss/pickipedia/issues/111
: Added a follow-up idea too — better to check whether the browser can play AV1 '''before''' showing a player, rather than letting people hit an error and then explaining it.
* '''Found a good one while dating the party page.''' Every block height on the wiki is about 75,000 blocks in the future — roughly ten and a half days. The code counts exactly 12 seconds per block since the Merge; the real average is 12.044. Forty-four milliseconds, times ten million blocks. Audit pages are named after blocks that don't exist yet, and their etherscan links point at nothing.
https://github.com/cryptograss/pickipedia/issues/112
: Turns out the party fell on the day the chain crossed '''block 25,000,000''' — only spotted it because the stamped numbers didn't line up with the real ones.
===Then spent the afternoon fixing things===
* '''The finalize bug is fixed.''' The one that made my jam look lost. The CID had nowhere to live on the server — it only existed in the message sent to my browser, while the source got deleted the moment the pin succeeded. Now it's written down three ways before anyone's told about it, and a retry says "already finalized as Qm..." instead of "not found".
https://github.com/cryptograss/maybelle-config/pull/117
* '''Block heights read from the chain now''', instead of guessing from 2022. Worst case error went from 74,874 blocks to 56 — ten days down to eleven minutes. Turned out to be '''eight''' copies of the same wrong sum, then a ninth found by grepping for the magic number.
https://github.com/cryptograss/pickipedia/pull/113
* '''The audit now spots what it missed on my jam.''' The insight is that staging only gets deleted after a '''successful''' pin — so a draft with no staging and no finalize record didn't fail, it succeeded and lost the paperwork. It now says "do NOT delete these pages" instead of "safe to delete".
https://github.com/cryptograss/maybelle-config/pull/118
* '''Found out why the diagnostics pages never existed.''' Justin pulled the container log and it was '''two''' separate bugs, neither of them the credential problem magent had guessed at twice:
:# The wiki was rejecting every snapshot because the page wanted a <code>type</code> field that diagnostics data has no reason to have
:# The login session expires and nothing re-authenticates, so it dies silently every day until the container restarts
: Both fixed: https://github.com/cryptograss/pickipedia/pull/114 and https://github.com/cryptograss/maybelle-config/pull/119
: Three things had to be wrong at once for this to stay invisible — the API path, the content model, and the session — plus a discarded return value hiding all three.
* Nice catch along the way: the ethereum RPC returns '''403 to Python's default user agent'''. Without an explicit header the call fails every time and quietly falls back to the estimate — which is exactly the silent-failure pattern we'd been complaining about all day, nearly shipped by us.
===Next day: cleanup, and a good question from Justin===


<proposed by="Magent">
<proposed by="Magent">
* '''Triaged the PR backlog.''' 17 open PRs across the two repos, and '''ten of them describe work that's already running''' — including two of mine from May: the diagnostics snapshot and the upload diagnostics panel. Both features I've been using all week. The work landed some other way and the PRs never got closed. Six of the ten had drifted so far they wouldn't merge anyway.
* Triaged the PR backlog — 17 open, '''10 already shipped'''. Two were mine from May, for features I've been using all week.
 
* '''Poster frames''' — videos now pin a still frame, so the player isn't a black box. It's a JPEG, so it shows even in Safari where the AV1 won't play. [https://github.com/cryptograss/maybelle-config/pull/120 maybelle#120]
* '''Poster frames.''' Asked whether we could stop the video area being an empty black box before you press play. Now every encode pulls a still frame and pins it '''inside''' the release directory, so it travels under the same CID. Seeks 10% in rather than frame zero, because the start of a recording is usually a lens cap.
* Justin asked if anything tested that the diagnostics reach the wiki. '''Nothing did''' — 14 green tests checking a function got called, passing through every month nothing was written. Wrote 3 that check a page actually lands; 2 fail against the old code. Justin named the class '''On The Pipe'''.
 
* Wrote up the pattern: '''5 bugs this week, one shape'''. Each either said nothing or said something plausible and wrong, and three pointed at destroying good work. [[Cryptograss:On The Pipe]]
: It's a JPEG, which means '''it shows even in Safari where the AV1 won't play'''. So instead of a black box and a false error, you'd get a picture of the jam and a note saying to use Firefox.
* Found 4 permanently red tests in the coconut suite, testing a schema the code dropped. [https://github.com/cryptograss/maybelle-config/issues/121 maybelle#121]
 
* Magent wouldn't paste the Common.js fix itself — 605 lines to reproduce exactly, one wrong character breaks every gadget. Still a human job.
https://github.com/cryptograss/maybelle-config/pull/120
 
* '''Justin asked the right question about #119''' — "is there a test showing these errors propagate to the wiki?"
 
: There wasn't. There were fourteen tests, all green, all checking that the save '''function was called''' — and they passed happily through every month in which not one diagnostics page was ever written. Green tests plus an absence nobody watches for.
 
: Wrote three that assert a page actually '''lands'''. Proved they're real by running them against the old code: two of the three fail there. Justin named the test class '''On The Pipe''' — apparently from a movie, which he can explain better than me.
 
* '''Wrote up the pattern''', because it kept happening: [[Cryptograss:On The Pipe]]
 
: Five separate bugs this week, one shape. Every one either said nothing at all or said something plausible and wrong — and three of them pointed at destroying good work: re-upload 10.5GB, delete the wiki page, go debug IPFS. The page lists them and the rules that fall out. Never discard a result you asked for. A fallback must not be silent. Never blame a subsystem you haven't checked.
 
* Found '''four permanently red tests''' in the coconut suite, testing a schema the code stopped using. Argued for deleting them — not because the assertions matter, but because a suite with expected failures is one people stop reading. Which is exactly how the diagnostics thing hid.
 
https://github.com/cryptograss/maybelle-config/issues/121
 
* Magent declined to paste the Common.js fix itself — 605 lines it would have to reproduce exactly, where one wrong character breaks every gadget on the wiki. Reasonable call. That one's still a human job.


===Still open===
===Still open===


* Coconut account can be cancelled — nothing has used it in days
* Cancel the Coconut account — nothing has used it in days
* '''One PR left''': [https://github.com/cryptograss/maybelle-config/pull/119 maybelle#119] — the rest merged. Then '''deploy delivery-kid''', which is still on the Sept 4 build, so #117, #118 and #120 are merged but not running.
* Merge [https://github.com/cryptograss/maybelle-config/pull/119 maybelle#119], then '''deploy delivery-kid''' — still on the Sept 4 build, so #117, #118 and #120 are merged but not running
* [https://github.com/cryptograss/pickipedia/issues/111 pickipedia#111] — player error message + poster line, still needs pasting into Common.js
* Paste the Common.js fix — [https://github.com/cryptograss/pickipedia/issues/111 pickipedia#111]
* #115 and pickipedia#112 are '''fixed but still showing open''' — "Fixes #N" doesn't auto-close when the PR merges to production instead of the default branch
* #115 and pickipedia#112 are fixed but still showing open — "Fixes #N" doesn't auto-close on a non-default branch
* Redlinks to sort: [[Fibbonacci Holmes]] and [[Seth Cambell]] — check the spellings before anyone makes those pages
* Check the spellings: [[Fibbonacci Holmes]] and [[Seth Cambell]]
* Ten stale PRs to close, and the block heights on existing pages are still ten days off
* 10 stale PRs to close; block heights on existing pages still 10 days off
</proposed>
</proposed>

Revision as of 00:37, 7 September 2026

Day 0

  • Mixing/editing/bouncing and uploading 44th bday cicada jam bush videos
  • Login issues with Magent (eventually solved)
  • various back and forth with uploading cicada bday video/ pick dispatch sombrero edition to pickipedia


Day 2

  • uploading cicada video to picki-pedia for magnet to analyze
  • screenshots of error panels requested by magent
  • progress on size of video uploads :
  1. 108

https://github.com/cryptograss/maybelle-config/pull/108

  1. 110

https://github.com/cryptograss/maybelle-config/issues/110

https://github.com/magent-cryptograss/maybelle-config/tree/fix-wiki-api-path-a

  • past but relevant :

https://github.com/cryptograss/maybelle-config/issues/79

  • Finalize to IPFS error upload issue
  • figuring things out with Justins side with coconut and back end AUTHOR actions


Day 3

  • Big one. Coconut is basically done — encoding happens on delivery-kid now, in AV1 + Opus (both royalty-free, which was the whole point of coconut in the first place). Turns out our own box does it faster than coconut ever did. https://github.com/cryptograss/maybelle-config/pull/113
  • Mixing/ Editing for Cicada 44th Bday Jam videos
  • The 44th bday jam-bash was the weird one. Got "IPFS failed", then "content draft not found", looked like the whole thing was gone. It wasn't. It had encoded fine and pinned to IPFS hours earlier — it just lost the paperwork, so the source got deleted and everything reported failure. The audit was even recommending we delete the wiki page, which was the only thing pointing at the video. Was about to re-upload 10.5GB for nothing. Magent found the orphan pin by cross-referencing two audits, wrote the CID back onto the draft, and the bot finished the job one second later: 44th Bday Cicada Jam-Bash — filed as https://github.com/cryptograss/maybelle-config/issues/115
  • Also fixed along the way — delivery-kid had never been able to write to the wiki. Wrong API path, every write 404'd silently. That's why draft pages always looked frozen while stuff was actually happening.
  • Cicada 44th Bday Jam Set 1 — first upload to go start to finish with zero manual intervention. Uploaded, encoded, pinned, release page, torrent. No babysitting.
  • Three videos up. Started this whole thing because longer videos wouldn't upload — ended up being four separate bugs stacked on each other.


Day 4

  • Mixing, editing and bouncing the party video batch out of DaVinci Resolve. Got a proper export preset dialled in — H.264 at 10 Mbps, audio AAC 320, saved so it's one click from now on. Don't skimp on the audio, it's the part anyone actually listens to.
  • Live encode progress deployed, both halves. No more staring at a frozen bar for an hour — it shows position, speed and time remaining now.
  • Cicada 44th Bday Jam Set 1 published — 13 min, and the first upload to go start to finish with nobody touching it. Uploaded, encoded, pinned, release page, torrent. 2.0GB in, 247MB out.
  • Reality check on the encode speed: real box does about 2x realtime, not the 0.8x the benchmarks suggested. So budget roughly double the video's length. Still beats coconut, which never finished at all.
  • Late on, Justin hit "error loading video — the IPFS content may not be available" on Star Tropics. Content was completely fine, verified serving in half a second. It's Safari + AV1. Apple ships no software AV1 decoder, so anything short of an M3 Mac can't play our videos in Safari. Firefox and Chrome are fine on the same machine.[✓]

Day 5

  • Triaged the PR backlog — 17 open, 10 already shipped. Two were mine from May, for features I've been using all week.
  • Poster frames — videos now pin a still frame, so the player isn't a black box. It's a JPEG, so it shows even in Safari where the AV1 won't play. maybelle#120
  • Justin asked if anything tested that the diagnostics reach the wiki. Nothing did — 14 green tests checking a function got called, passing through every month nothing was written. Wrote 3 that check a page actually lands; 2 fail against the old code. Justin named the class On The Pipe.
  • Wrote up the pattern: 5 bugs this week, one shape. Each either said nothing or said something plausible and wrong, and three pointed at destroying good work. Cryptograss:On The Pipe
  • Found 4 permanently red tests in the coconut suite, testing a schema the code dropped. maybelle#121
  • Magent wouldn't paste the Common.js fix itself — 605 lines to reproduce exactly, one wrong character breaks every gadget. Still a human job.
  • Still open

    • Cancel the Coconut account — nothing has used it in days
    • Merge maybelle#119, then deploy delivery-kid — still on the Sept 4 build, so #117, #118 and #120 are merged but not running
    • Paste the Common.js fix — pickipedia#111
    • #115 and pickipedia#112 are fixed but still showing open — "Fixes #N" doesn't auto-close on a non-default branch
    • Check the spellings: Fibbonacci Holmes and Seth Cambell
    • 10 stale PRs to close; block heights on existing pages still 10 days off[unverified]