Commit Graph

  • cf65243e07 zen: rebuild UB locomotion — real 3D steering + motionRoot/visualRig split (Codex) main thejayman77 2026-07-01 21:53:35 -04:00
  • 45bd44834e zen: fluid rework — slow banked U-turns synced to the clip + calmer cruise + clip preview thejayman77 2026-07-01 21:33:29 -04:00
  • d13811319d zen: Phase B — UB swims with a behavior engine (wander, cruise/rest/burst, U-turns) thejayman77 2026-07-01 20:38:43 -04:00
  • 9365f69b4a zen: calmer UB — live speed control (default 0.7×) + a touch bigger (scale 1.2) thejayman77 2026-07-01 19:37:20 -04:00
  • a47897e7b1 zen: UB base loop → Swim1_norm (gentle in-place swim, not the static Idle) thejayman77 2026-07-01 19:21:55 -04:00
  • ce69b8cd18 zen: UB is now the Queen angelfish (real model) + fix admin lockout thejayman77 2026-07-01 18:10:38 -04:00
  • e64c5ced3c art: verify pointerId in dragMove + clear activePointer on every exit (Codex final) thejayman77 2026-06-30 17:00:12 -04:00
  • c42f29537b art: harden zoom pointer lifecycle (Codex sign-off) thejayman77 2026-06-30 16:45:03 -04:00
  • 494e9dfcdd art: drag-to-pan the zoomed artwork (persistent position; zoom holds the spot) thejayman77 2026-06-30 16:20:12 -04:00
  • 6b2458f674 art: variable gallery-inspector zoom (1×–4× toolbar) instead of a binary jump (Codex) thejayman77 2026-06-30 16:13:00 -04:00
  • f3005e626d art: desktop zoom in the lightbox (pan-by-cursor), mobile keeps pinch thejayman77 2026-06-30 14:52:10 -04:00
  • d79c52dab4 docs: hero referrer fix done — referrerpolicy now consistent across all remote images thejayman77 2026-06-30 14:38:53 -04:00
  • 4d2f5e3703 home: hero image as <img referrerpolicy=no-referrer> (privacy consistency, Codex) thejayman77 2026-06-30 14:38:05 -04:00
  • 35aa8ff544 docs: record cache-revoke purge + engagement warm-up + optional hero-referrer item thejayman77 2026-06-30 14:30:43 -04:00
  • 2dc4419024 images/analytics: purge on policy revoke + engagement warm-up note (Codex close-out) thejayman77 2026-06-30 14:29:55 -04:00
  • 9d46e03ab8 docs: durable policy of record for images + visitor metrics (Codex close-out) thejayman77 2026-06-30 14:09:24 -04:00
  • f416e13700 analytics: honest engagement metric — Engaged readers vs Recorded visits (Codex) thejayman77 2026-06-30 14:07:24 -04:00
  • 8a7606e20d images: fix two fetcher bugs + add source-level image-rights policy (Codex) thejayman77 2026-06-30 14:01:11 -04:00
  • a55ba185a8 images: harden the cache per Codex audit (SSRF-safe, cache-only endpoint, WebP-only) thejayman77 2026-06-30 12:19:57 -04:00
  • c350a2713b git: stop tracking the runtime image cache (data/img_cache) thejayman77 2026-06-30 12:14:32 -04:00
  • ee43bb0df6 analytics: filter known-bot User-Agents at /api/events (honest visitor counts) thejayman77 2026-06-30 11:19:51 -04:00
  • 27022108b4 caddy: block vuln-scanner probe paths (no-PHP/WP stack) → 403, not the SPA shell thejayman77 2026-06-30 10:11:57 -04:00
  • 86d9897113 ui: reserve the scrollbar gutter so the top bar stops shifting between pages thejayman77 2026-06-30 04:52:59 -04:00
  • 3740e09d02 share pages: carry the real HubBar toolbar (consistency with the SPA) thejayman77 2026-06-30 04:26:01 -04:00
  • c33dad9832 images: add Pillow to the web extra so the API container downscales too thejayman77 2026-06-29 20:30:05 -04:00
  • 8a3c00db3b images: cache + serve article images from our own origin (bounded, LRU-evicted) thejayman77 2026-06-29 20:28:33 -04:00
  • cb06d550bd home: reveal the news photo only once it actually loads (retry + graceful fallback) thejayman77 2026-06-29 19:58:26 -04:00
  • d98cec9ded admin: read/unread triage for load errors (unread by default, mark read/all) thejayman77 2026-06-29 10:38:22 -04:00
  • bddb8d22b0 HubBar: revalidate auth on mount so the avatar shows on cold hub entry thejayman77 2026-06-29 05:56:26 -04:00
  • b8ac82e897 HubBar: show the signed-in profile picture in the account button thejayman77 2026-06-29 05:54:11 -04:00
  • 0ae789752e fix: QOTD/WOTD freshness — pick within the freshest cohort, not the rotated pool thejayman77 2026-06-29 05:39:06 -04:00
  • 414a4c4b8b deploy: drop the cache-warmer from sync-static.sh (no-op without CF proxy) thejayman77 2026-06-29 05:28:49 -04:00
  • 03aed9c37d fix: mobile-game footer selector + hub teaser honors Boundaries (Codex) thejayman77 2026-06-28 20:05:36 -04:00
  • 667b1a82c3 brand: standardize "Upbeat Bytes" → "upbeatBytes" everywhere thejayman77 2026-06-28 20:01:20 -04:00
  • f8628b3b14 homepage: title → the hub tagline (was news-only) thejayman77 2026-06-28 19:55:13 -04:00
  • 1bd86e30e5 caddy: fix /home2,/home3 redirect (redir destination, not a path matcher) thejayman77 2026-06-28 19:21:44 -04:00
  • 2cfffdfd6a NEWS RELAUNCH CUTOVER: promote the hub to /, feed to /news, go public thejayman77 2026-06-28 19:16:43 -04:00
  • 1c1ecefde8 news: harden paywall exclusion at the candidate query + add the missing regressions thejayman77 2026-06-28 18:54:53 -04:00
  • c600145ba5 news: close the remaining no-paywall bypass paths (Codex audit) thejayman77 2026-06-28 17:22:52 -04:00
  • 0d21231597 news: hard-exclude paywalled sources from the feed + brief (no unreadable news) thejayman77 2026-06-28 17:10:00 -04:00
  • 54761f5083 news behavior split: /news leads with Latest, Highlights via ?view=highlights thejayman77 2026-06-28 16:21:42 -04:00
  • 39b38f0cf1 /news utilities: label the pills + wrap the action row on phones (Codex) thejayman77 2026-06-28 16:01:05 -04:00
  • 036e7ed7e8 /news: surface Saved + Boundaries in the view-head (don't bury them in Account) thejayman77 2026-06-28 15:42:40 -04:00
  • e974fc4942 /news: wear the shared HubBar (consistent chrome), keep BottomNav + global footer thejayman77 2026-06-28 15:32:08 -04:00
  • 2fd28fa719 news: track @newsHidden in Caddy snapshot + extract testable feed routing helpers thejayman77 2026-06-28 15:19:36 -04:00
  • f4a7a7bcc7 news relaunch step 1: extract the feed into NewsFeed.svelte, mount at / and /news thejayman77 2026-06-28 14:11:06 -04:00
  • 099bf55711 docs: news relaunch migration plan (link/redirect map + interim routing) thejayman77 2026-06-28 14:00:08 -04:00
  • 6c10ad99a9 On This Day: serve sharp images (originalimage, not the 330px thumbnail) thejayman77 2026-06-27 17:07:37 -04:00
  • e3e6f24753 home3 news: typographic category cover for pictureless articles thejayman77 2026-06-26 22:05:41 -04:00
  • 022908392b /onthisday: IN HISTORY +1px (final landing) thejayman77 2026-06-26 21:38:13 -04:00
  • 998e758614 /onthisday: drop "IN HISTORY" 2px to land it (final) thejayman77 2026-06-26 21:36:16 -04:00
  • 14c2648f8f /onthisday: tie "IN HISTORY" offset to the year size (stop the oscillation) thejayman77 2026-06-26 21:30:17 -04:00
  • fe0c2988c2 /onthisday: lower "IN HISTORY" to the visible top of "2013" (cap-offset fix) thejayman77 2026-06-26 21:25:22 -04:00
  • 883c37b428 Joy cards finalize (Codex pass): robust year align, image guard, a11y, honesty thejayman77 2026-06-26 21:10:11 -04:00
  • 36b3df5d40 /onthisday: nudge year alignment + clay Read-more button thejayman77 2026-06-26 20:36:25 -04:00
  • 719a2c5052 /onthisday: baseline-align "2013" with the date so it sits on the line thejayman77 2026-06-26 20:30:39 -04:00
  • 2e43766d71 /onthisday: cap-align "IN HISTORY" to the top of "2013" + tighten the gap thejayman77 2026-06-26 20:24:49 -04:00
  • aa8ee674d5 /onthisday: year back to green, "IN HISTORY" top-aligned beside big "2013" thejayman77 2026-06-26 20:19:53 -04:00
  • d969810c10 /onthisday: figure-vs-photo hero, plain stacked year, clay title, more space thejayman77 2026-06-26 19:16:14 -04:00
  • e2e59bfdc4 /onthisday: move the year off the image into a green "In history" chip thejayman77 2026-06-26 18:51:03 -04:00
  • 783b853aee joy cards: restore eyelash title to mockup size + darken the micro-labels thejayman77 2026-06-26 18:42:52 -04:00
  • cf018dc36d /onthisday redesign: CD's green-key "letter" with hero + year overlay thejayman77 2026-06-26 17:58:48 -04:00
  • ba0838dd94 home3: rename the small-joys OTD card "A good thing today" → "On this day" thejayman77 2026-06-26 11:54:41 -04:00
  • 50488a1885 /quote redesign: CD's "letter" QOTD (deckle frame, wax-seal date, watermark) thejayman77 2026-06-26 11:46:28 -04:00
  • ecfc49eda0 Codex audit fixes: home3 read-time, /art OG/canonical, Bloom medallion centering thejayman77 2026-06-25 20:54:57 -04:00
  • 123602dc52 Revert "/play Bloom: enlarge the flower so it fills the tile (it was already centered)" thejayman77 2026-06-25 20:47:09 -04:00
  • 3dc72b1d31 /play Bloom: enlarge the flower so it fills the tile (it was already centered) thejayman77 2026-06-25 20:45:31 -04:00
  • a74a363728 /play Bloom motif: center the flower vertically above the title (match other tiles) thejayman77 2026-06-25 20:41:10 -04:00
  • 60a1b50376 /play polish: center motifs, fill Daily Word 2nd row, tighten bubble aim thejayman77 2026-06-25 20:29:34 -04:00
  • 5a7c90e7be /play: bubble shooter to the right aiming a blue center ball; space under top bar thejayman77 2026-06-25 20:16:48 -04:00
  • f6ae44e126 /play motifs: shrink word-search + memory-match, smaller/raised bubbles w/ angled aim thejayman77 2026-06-25 20:05:21 -04:00
  • aa15cf119c /play arcade tweaks: Back in header (right), real word-search grid, packed bubbles thejayman77 2026-06-25 19:50:24 -04:00
  • 6348835099 /play: arcade-tile hub redesign (presentation only; routing untouched) thejayman77 2026-06-25 13:32:19 -04:00
  • 485c4a7805 WOTD: commit cached pronunciation clip for 'beauty' (matches tracked audio) thejayman77 2026-06-25 13:23:02 -04:00
  • 89987b8316 /art: thickness affects rotated fullscreen; collapsible writeup on mobile thejayman77 2026-06-23 21:09:28 -04:00
  • 420150a532 /art mobile: fix horizontal overflow (controls width:100% + margins) thejayman77 2026-06-23 20:54:10 -04:00
  • 9c41da5fcc /art desktop: fix CTA overlap, widen card for a bigger piece, darken labels thejayman77 2026-06-23 20:31:20 -04:00
  • 5157c221ed /art redesign: "The Story" editorial page (writeup + palette + frame + share) thejayman77 2026-06-23 20:22:06 -04:00
  • ed814c97b9 Daily Art engine: museum-guide blurb (grounded LLM) + extracted palette thejayman77 2026-06-23 20:12:54 -04:00
  • 79ecb800af home3 News card: desktop gist fills to equal height (basis:0 fade), right never stretches thejayman77 2026-06-23 16:37:40 -04:00
  • 44610703c2 home3 News card: hug content (no stretch gap) + tighten mobile brief gap thejayman77 2026-06-23 16:29:40 -04:00
  • 376f6263fd home3 News card: clamp the gist (3 lines mobile / 4 desktop), pin Read-more bottom thejayman77 2026-06-23 16:07:05 -04:00
  • 8dc22afbdc home3: fix full-width regression — don't let the containment rule override .bento max-width thejayman77 2026-06-23 15:57:51 -04:00
  • 5657494988 Fix joys regressions + self-host Work Sans for cards (Codex audit) thejayman77 2026-06-23 13:57:55 -04:00
  • 1c6c907f7f home3 + play: CD-guided card polish, scrollable Small Joys, consistent Back thejayman77 2026-06-23 13:41:04 -04:00
  • f0e02b40e5 One consistent top bar across the whole hub (HubBar everywhere) thejayman77 2026-06-23 13:11:18 -04:00
  • 8a79b14c80 /art: add a Back button (matches the hub's single-history behavior) thejayman77 2026-06-23 09:38:54 -04:00
  • eaeb8d3139 WOTD Listen button: always blue, no sticky hover or tap-highlight box on mobile thejayman77 2026-06-23 09:29:08 -04:00
  • 1150ae916b /art rotate: keep the whole frame on-screen (short-edge cap + modest fixed frame) thejayman77 2026-06-23 09:22:17 -04:00
  • 06dd293da0 /art: landscape paintings rotate to fill the screen in fullscreen on portrait phones thejayman77 2026-06-23 09:15:56 -04:00
  • 4720ded29c Mobile combing: WOTD watermark, Entertainment card breathing, Art lightbox fit thejayman77 2026-06-23 09:06:36 -04:00
  • cf66d99e21 home3 News card: "1 min brief · ~N min full story" badge thejayman77 2026-06-23 08:44:40 -04:00
  • dc23277b38 Read-time: full-article "Full story · ~N min" badge (Option B) thejayman77 2026-06-23 08:09:00 -04:00
  • bdf3b1f47b WOTD _polish: enforce the "examples must use the word" contract thejayman77 2026-06-23 07:56:22 -04:00
  • 26b23a8f09 #6: computed News read-time + per-page OG/canonical for hub detail pages thejayman77 2026-06-23 06:51:40 -04:00
  • ccdc764b2b WOTD /word polish: larger IPA + part-of-speech label, watermark clears the date thejayman77 2026-06-23 06:40:00 -04:00
  • c809594b43 WOTD: one-off polish backfill script (migrate + gloss/usage for existing pool) thejayman77 2026-06-23 06:11:07 -04:00
  • cebbed58ab WOTD #4/#5 content quality + Editorial Asymmetric /word page (CD) thejayman77 2026-06-23 06:08:14 -04:00
  • e5f3d942e2 hub: back-button replaceState trapdoor + hamburger resize-safety thejayman77 2026-06-23 05:56:46 -04:00
  • d3c7282850 hub detail pages: shared Back button with proper single-history thejayman77 2026-06-22 22:08:39 -04:00