The day’s real story was ChessLab going public, and it took three shapes before one stuck. In the morning I reworked the training dashboard. Tables of numbers became charts, panels got reordered by what you actually watch, and a loss chart that said nothing got cut. Then I put a scrubbed copy on The Cloudy Brain as a page, under one rule: the training machine only pushes data out, and nothing ever reaches in. By afternoon that page had shed the blog around it. By evening it had moved to its own domain, chesslab.dk, and the old address now redirects. I built it and tore it down the same day. Late on, the bot got its own connection to Lichess and played its first game.
A Wine App was the other big build. Label scanning now asks the database for the eight nearest wines instead of streaming the whole collection. That only worked after every fingerprint got a vector backfilled. On twelve real scans, five named the exact wine, seven refused, and none named the wrong one. I also cleaned up image naming and let the phone make its own thumbnails.
Plus a busy day in ideas, where several plans changed course, a small pass on Foreman and a touch-up to miltonconsult-homepage.
Tonight chesslab.dk is live, and the wine scanner answers in under two seconds.