T5: Added a centered <footer> below the Card crediting Jim Propp's
paper, the LinkedIn post, and Arghya Dutta — markdown links rendered
as anchor tags with target=_blank rel=noopener noreferrer.
T6: Reset button shows a mono ({stoppedCount}/{n}) suffix while any
run is still active; the suffix disappears once all runs stop.
T7: Tile clickability is now per-run (run.stopped) instead of gated
on allStopped. Since stopped runs are immutable, the detail Dialog
stays accurate while unrelated tiles keep ticking.
T8: Added a small instruction note between the header and the tile
grid: 'Click on any of the completed runs to view the full sequence.'
The old 'All runs complete' banner is reduced to the discarded-runs
callout only.
T1: MAX_TOSSES_PER_RUN is now 5000.
T2: Tiles in progress past 500 tosses wear a progressively darker
amber wash (units of 500, up to 9 levels). Completed runs stay green.
T3: Runs that hit the cap are now flagged discarded. They carry a red
wash and an italic 'discarded' footer, are excluded from avg × 4, and
the summary / detail dialog note how many were dropped.
T4: Added a grey H/T header strip to each tile showing the running
heads count on the left and tails count on the right.
neighbor-sum-avoidance (T2-T6):
- Start button now reads just "Start" (no mode suffix).
- Available numbers and shuffled preview arrangements render pre-start
so the arena isn't empty while the user is still deciding.
- Mode switch + count slider stay mounted once active; they're just
disabled, so starting no longer causes a layout jump.
- Guided-mode instructions expanded to call out light grey edges, red
violation arcs, and the green valid-neighbor line explicitly.
- Draggable numbers honor isActive for the draggable attribute and
onDragStart, showing opacity-60 + cursor-not-allowed when locked.
computing-pi (new interactive under Miscellany):
- N parallel first-passage simulations: toss until heads > tails,
record the fraction. Average × 4 converges to π.
- Header row: runs slider | live average × 4 | Start/Reset.
- Tile grid uses a mask-gradient marquee so long sequences scroll
their tail while staying readable.
- Click any tile once all runs complete to see the full toss sequence
in a Dialog.
- Safety cap of 1000 tosses per run (first-passage time has infinite
expectation, so without the cap a pathological run could block).
- Registered in interactives.ts + InteractiveRenderer + the parallel
interactive-components map. Filled in three-bank-accounts in the
latter while there, since it was missing.
admin-data.json updated to mark T2-T6 done with remarks, remove the
implemented Computing Pi idea, and add an implementation note.
Show the circle arena before the user clicks Start (greyed via
opacity-60 pointer-events-none), and guard drag/drop/click handlers on
isActive. Clicking Start enables interactions and kicks off the timer
as before. Also resync slot count with the Numbers slider while idle.
Marks T1 done.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Astro-based site with 40+ interactive math games, puzzles, and explorations.
Includes admin dashboard, todo system, blog, theme/subcategory navigation,
and embed pages for iframe embedding.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>