- Shipped
- September 7, 2026 at 10:45 AM UTC
- Author
- Kamo
- Commit
- 474bf87
/achievements was already a 1987 cabinet, and nothing ever HAPPENED on it. This is the layer that happens: a banner that drops from the top shouting ACHIEVEMENT UNLOCKED!!!, then INCREDIBLE!!!, then LEGENDARY!!!; chunky pixel confetti with tiny trophies and thumbs-up hidden in it; arcade score numbers flying off whatever was pressed; a combo counter that escalates to ABSOLUTELY UNNECESSARY!; fake criticals dealing x9999 damage for five experience points; a Windows 95 dialog announcing that Windows has detected an unusually productive employee; milestones restated as boss fights with health bars; and, at the top of the rank ladder, a seven-second curtain that tells a member there is nowhere left to go except back to work. THE HUMOUR IS THE CONTRAST, so the professional half is untouched. The page's layout, spacing, information architecture and reading order are exactly what they were. Everything ridiculous is drawn on ONE portalled overlay that takes NO POINTER EVENTS — a member can read, tab through and click their achievements in the middle of a fireworks display, which was verified in a browser by hit-testing the centre of the screen mid-show and finding the tile heading underneath. ONE ENGINE, not twenty animations. `ArcadeFxProvider` mounts once in AuthedChrome, wrapping both the unlock popup and the page, and owns the show queue, the combo window, the randomness budget and the off switch. Two engines was the obvious shape and the wrong one: a member who earns something while looking at their own achievements would be congratulated twice by two systems that cannot see each other. Shows are serialised and the queue is capped at three, so hammering plates cannot buy sixteen seconds of banner. EVERY NUMBER IS REAL. A boss's remaining health is the distance to the member's next tier, computed from the thresholds the card already carries. A streak flame is levels actually cleared. MYTHIC — the sixth rung the brief asks for — is DERIVED as a LEGENDARY track finished to its last level rather than invented as a rarity the server does not have. The score pops are the one deliberate fiction and the real award is fired last, so the honest number is the one still on screen. REDUCED MOTION IS AN OFF SWITCH, NOT A DIMMER, following ConfettiBurst's precedent: no banners, no particles, no marquee announcements, no fake alerts, and the plates stop being buttons. Verified in a browser with the media feature emulated — the stage is absent, celebrate() is inert, and the XP bar shows its true value immediately. Two defects found by looking at it in a real browser rather than at the code: * The XP meter's "have I already filled to this value" ref made StrictMode's second effect pass return early, so the bar sat empty at zero forever. The dependency array was always the guard. * A canvas silently IGNORES `fillStyle = 'var(--ach-cyan)'`, and three callers legitimately name a cabinet variable, so every one of their particles was painted black. Resolved against :root now. New copy is a local English lexicon, not dictionary keys, and that is a decision: "SPREADSHEET WARLORD" is a cabinet shouting rather than product copy, a 1987 machine shouted English in every arcade on earth, and machine translation destroys the register the whole joke rests on. The two strings that ARE product copy — the replay button's label and the line telling members the plates are pressable — went through kamo-translation-dictionary first. Verified: 6,640 tests and all fifteen guards pass, tsc clean, `next build` clean, and every show screenshotted in a real browser across its own beats.