Commit Graph

  • fdc1eabbe0 fix(e24): the review's seven frontend defects on the Home surface peter 2026-09-08 03:03:45 +02:00
  • 84f4b20e5a fix(e24): the review's three backend defects — blocklist, shelf order, next episode peter 2026-09-08 02:32:08 +02:00
  • 828dad015c feat(e24): reach the Home surface — the landing toggle, a palette command, Shift+W peter 2026-09-08 00:06:34 +02:00
  • 82914b56ca fix(e24): the Home surface's three UAT findings — Back, the reroll, and a show card peter 2026-09-06 05:38:28 +02:00
  • ccd5f3739a feat(e24): pin to the comfort shelf from every card and row peter 2026-09-06 05:07:06 +02:00
  • f3c0b7be23 feat(e24): the Home surface — one question, one answer, both sources peter 2026-09-06 04:14:14 +02:00
  • 53b50231ff feat(e24): the Home surface read-model — hero, resume rail, comfort shelf peter 2026-09-06 03:31:26 +02:00
  • 5703c4d713 fix(plex): a null progress timestamp must sort a rail row last, not raise peter 2026-09-06 03:31:09 +02:00
  • 013f19faca refactor(plex): move content_libs down into the query layer peter 2026-09-06 03:31:02 +02:00
  • 8d9a99ce54 release: 0.82.0 (feature/e10-platform-ergonomics) v0.82.0 peter 2026-09-06 02:37:10 +02:00
  • 45dd4bdda7 chore(release): 0.82.0 — E10 Platform & Ergonomics peter 2026-09-06 02:37:07 +02:00
  • dac391a890 fix(e10): review round 3 — settle the focus race in a browser instead of guessing again peter 2026-09-06 02:22:23 +02:00
  • 4b33036e7c fix(e10): review round 2 — revert what round 1 got wrong, narrow what it got too broad peter 2026-09-06 01:57:32 +02:00
  • 80dea4f307 fix(e10): review round 1, part 2 — the docs the epic invalidated, and three contracts made real peter 2026-09-06 01:30:40 +02:00
  • 20e17c0ccb fix(e10): review round 1 — the boundary that did not bind, and 14 more peter 2026-09-05 23:52:29 +02:00
  • 7d302f71b7 feat(e10): let an ultrawide buy bigger cards instead of more of them peter 2026-09-05 22:22:28 +02:00
  • f99240d8ca fix(e10): stop the hidden chip measurer scrolling the whole app sideways peter 2026-09-05 22:22:14 +02:00
  • cc8cf96c19 feat(e10): a jump-to palette on Ctrl/Cmd+K peter 2026-09-05 21:33:29 +02:00
  • 86163958d6 feat(e10): one keyboard cheat sheet for the whole app peter 2026-09-05 21:15:42 +02:00
  • 12822a9e04 feat(e10): put every keyboard shortcut in one table peter 2026-09-05 20:58:17 +02:00
  • 928eac4c89 feat(e10): open the app's menu with a right-click, starting with playlist rows peter 2026-09-05 19:59:56 +02:00
  • b28be682fe feat(e10): make "move a video to another list" one atomic request peter 2026-09-05 19:59:41 +02:00
  • 7e97559615 feat(e10): put the 1024x768 size contract inside the primitives peter 2026-09-05 18:49:48 +02:00
  • 721467ef69 feat(e10): finish the mappable Button migration, including the ui/ layer itself peter 2026-09-05 18:41:41 +02:00
  • 47e2293de3 feat(e10): migrate the notification, message, auth and Plex action buttons peter 2026-09-05 18:39:10 +02:00
  • 29bb914a95 feat(e10): re-aim the Button variants at the paint the app actually uses, and migrate the first 15 sites peter 2026-09-05 18:31:00 +02:00
  • 5bfcf5d83a refactor(e10): move the platform components into components/ui/ and enforce the boundary peter 2026-09-05 16:58:29 +02:00
  • 31fa554b87 release: 0.81.0 (improvement/e12-security-ops) v0.81.0 peter 2026-09-05 04:54:26 +02:00
  • 6a0efba477 chore(release): 0.81.0 — E12 Security & Ops Hardening peter 2026-09-05 04:54:15 +02:00
  • 9f28f46839 fix(e12): unbreak the gate, and stop printing a command that can strand the restore peter 2026-09-05 04:41:21 +02:00
  • 14f1c97c0a fix(e12): a bare up -d picks the wrong compose file, and recreates the database peter 2026-09-05 04:31:13 +02:00
  • fc56f514b3 fix(e12): the restart hint pointed at the one command that undoes a rollback peter 2026-09-05 04:18:33 +02:00
  • 358d722ce9 fix(e12): close what round one broke, and revert two fixes that overreached peter 2026-09-05 04:02:57 +02:00
  • fe38dfbcca fix(e12): close the eighteen findings the E12 review round left standing peter 2026-09-05 03:41:58 +02:00
  • f98b060e2b feat(admin): an account panel, and a set-password link that needs no email peter 2026-09-05 01:46:58 +02:00
  • bc9e34d0ae fix(auth): close the three leftovers E9.5 logged but kept out of its diff peter 2026-09-05 01:35:09 +02:00
  • 0cc450d1c9 fix(downloads,sync): bound what one user can make the server fetch, download and spend peter 2026-09-05 01:02:56 +02:00
  • 688efb9ed6 feat(selfhost): license the repo, and make Plex actually usable on the public compose files peter 2026-09-05 00:53:26 +02:00
  • ca4e559cc7 fix(ops): make backup/restore work, and give upgrades a pin and a rollback peter 2026-09-05 00:50:07 +02:00
  • e23128b4a1 release: 0.80.0 (improvement/e9.5-onboarding-access) v0.80.0 peter 2026-09-04 23:28:30 +02:00
  • 0d5f8f0708 chore(release): 0.80.0 — E9.5 Onboarding & Access flow peter 2026-09-04 23:28:23 +02:00
  • a03bf8d371 fix(auth): stop erasing a reset link the signed-in tree never reads (E9.5 review round 4) peter 2026-09-04 23:14:46 +02:00
  • 3dc14402b0 test(auth): pin what rounds 1 and 2 left unpinned (E9.5 review round 3) peter 2026-09-04 23:04:09 +02:00
  • 540ca244c8 revert(auth): the newest registration does not own an unverified account (E9.5 review round 2) peter 2026-09-04 22:54:52 +02:00
  • 563fa0513d fix(auth): close what the epic's own review found (E9.5 review round 1) peter 2026-09-04 22:42:15 +02:00
  • 10c0ca4cf7 feat(email): write to people in their own language (E9.5 S7) peter 2026-09-04 20:29:33 +02:00
  • a76bab9b34 feat(auth): one mail, one click — the approval mail carries the confirmation link (E9.5 S6) peter 2026-09-04 04:05:28 +02:00
  • 7acdf5d577 feat(admin): surface the sign-ups that are stuck outside, and let an admin finish letting them in (E9.5 S5) peter 2026-09-04 03:27:48 +02:00
  • b1086e05dc fix(auth): stop drawing a reset form the link can no longer fill (E9.5 S4) peter 2026-09-04 02:38:01 +02:00
  • ed91c83dd7 fix(auth): name the state and the address behind a refused sign-in (E9.5 S4) peter 2026-09-04 01:56:55 +02:00
  • a614ee2435 feat(auth): show the Google address beside the one the account registered with (E9.5 S3) peter 2026-09-04 01:23:11 +02:00
  • c74487fbb3 fix(auth): keep the address the user registered with, and let it sign them in (E9.5 S3) peter 2026-09-04 01:07:54 +02:00
  • 876cece881 fix(auth): match identity on a canonical email, so one Gmail mailbox is one account (E9.5 S3) peter 2026-09-04 00:14:12 +02:00
  • e5997ca567 fix(auth): consume a verification token that arrives without a page load (E9.5 S2) peter 2026-09-03 23:57:18 +02:00
  • c134b514c1 fix(auth): confirm an emailed verification link wherever it is opened (E9.5 S2) peter 2026-09-03 23:45:31 +02:00
  • 243869401a fix(auth): stop discarding a legitimate password on admin approval (E9.5 S1) peter 2026-09-03 23:32:34 +02:00
  • 7339a0b84b release: 0.79.0 (improvement/e9-playlist) v0.79.0 peter 2026-09-03 21:59:31 +02:00
  • c960c07a6a release: 0.79.0 notes + version bump peter 2026-09-03 21:59:09 +02:00
  • 3cfdb36f06 test(format): pin the sub-minute truncation (E9 R2) peter 2026-09-03 21:51:14 +02:00
  • ada95d04a4 fix(playlists): one rendering for a playlist total, honest below a minute (E9 R1) peter 2026-09-03 21:43:04 +02:00
  • 1b004e6ccf feat(plex): total playtime in the playlist header (E9 S3) peter 2026-09-02 18:30:06 +02:00
  • 95c33e0b0f refactor(playlists): compact the playlist header to two rows (E9 12A) peter 2026-09-02 03:45:07 +02:00
  • 4e6bcbc078 fix(playlists): stop the table header shifting up on first scroll (E9 12B) peter 2026-09-01 03:16:20 +02:00
  • e17fb5bbf5 feat(playlists): total playtime in header + sticky-header fade fix (E9 S1) peter 2026-09-01 03:09:53 +02:00
  • a9044ece50 release: 0.78.8 (improvement/email-html-alternative) v0.78.8 peter 2026-09-02 03:24:59 +02:00
  • 473aafd1c8 release: bump VERSION to 0.78.8 + release notes peter 2026-09-02 03:24:56 +02:00
  • 7019e3afdf fix(email): give every mail an HTML alternative so its link is clickable peter 2026-09-02 03:13:23 +02:00
  • c81b110637 release: 0.78.7 (bug/verify-link-and-approval-lockout) v0.78.7 peter 2026-09-02 02:31:19 +02:00
  • 2ecc70ca6d release: bump VERSION to 0.78.7 + release notes peter 2026-09-02 02:31:14 +02:00
  • f8c63e80c2 fix(auth): widen the 0078 backfill so revoke victims who verified are rescued too peter 2026-09-02 02:21:46 +02:00
  • 3ac3d382e7 fix(auth): stop the address-bar mirror eating emailed auth tokens, and unlock revoked accounts peter 2026-09-02 01:28:45 +02:00
  • 94c62ca699 release: 0.78.6 (feat/admin-invite-delete-email-health) v0.78.6 peter 2026-09-02 00:36:52 +02:00
  • 1fe24d374a docs(tests): correct the deny-vs-delete rationale in the invites test file peter 2026-09-02 00:15:21 +02:00
  • 2cba6b9fca docs: round-3 copy corrections, and pin the two behaviours nothing was guarding peter 2026-09-02 00:06:01 +02:00
  • 8d7aaad9a8 fix: warn before the delete, not after — plus round-2 copy and a11y corrections peter 2026-09-01 23:50:29 +02:00
  • 85043013f0 fix: address the feature review — accurate copy, reachable controls, real coverage peter 2026-09-01 23:31:49 +02:00
  • 44f626f732 feat(admin): delete a whitelist entry, and stop hiding a broken mail setup peter 2026-09-01 23:09:25 +02:00
  • 24c93cbb83 docs: name the Configuration tab as it is rendered, drop an unused fixture peter 2026-09-01 22:15:56 +02:00
  • cb1f4f00b0 docs(auth): correct the last round of over-claiming comments and notes peter 2026-09-01 22:02:43 +02:00
  • f6e1d1e69f fix(auth): keep the admin notice unconditional on the register path peter 2026-09-01 21:48:40 +02:00
  • b64c3f514d fix(auth): drop the invite reopen — keep the fix to the lost account alone peter 2026-09-01 21:34:38 +02:00
  • b5a1002412 fix(auth): reopen a pre-dated approval instead of auto-granting it peter 2026-09-01 21:18:14 +02:00
  • ea931dca30 fix(auth): honour an approval granted before sign-up instead of parking the account peter 2026-09-01 20:56:43 +02:00
  • d954e71a77 fix(auth): commit the account on registration so a pre-approved sign-up isn't lost peter 2026-09-01 16:25:05 +02:00
  • 602f62967a release: 0.78.4 (bug/plex-transcode-hls-startposition) v0.78.4 peter 2026-08-30 20:33:15 +02:00
  • ba00b50dea release: 0.78.4 — fix Plex transcode playback stall/rebuffer peter 2026-08-30 20:32:56 +02:00
  • 92adb593c8 fix(plex): start hls.js at position 0 for the transcode/remux HLS session peter 2026-08-30 20:09:00 +02:00
  • 66132b6dda release: 0.78.3 (feature/plex-playback-class-filter) v0.78.3 peter 2026-08-30 19:09:22 +02:00
  • d09f021f0c release: 0.78.3 — filter the Plex feed by playback class peter 2026-08-30 19:09:08 +02:00
  • d7e9240e54 merge main (0.78.2) into playback-class before release peter 2026-08-30 19:08:08 +02:00
  • f2fa49b778 release: 0.78.2 (feature/plex-hdr-hw-tonemap) v0.78.2 peter 2026-08-30 18:56:32 +02:00
  • d4ed45b2eb release: 0.78.2 — HW HDR→SDR tonemap for 10-bit/HDR Plex transcode peter 2026-08-30 18:56:18 +02:00
  • 375f6e58be merge main (0.78.1) into tonemap before release peter 2026-08-30 18:55:14 +02:00
  • 1a102ce81a release: 0.78.1 (bug/download-mediakind-probe) v0.78.1 peter 2026-08-30 18:47:05 +02:00
  • bfd45a155e release: 0.78.1 — download media_kind from a file probe (BUG 2) peter 2026-08-30 18:46:33 +02:00
  • 1102ad6a28 fix(downloads): make the probe verdict authoritative over yt-dlp info by probe-ran, not per-field peter 2026-08-30 18:09:26 +02:00
  • c1a3b7b935 fix(plex): gate the part-key re-probe to single-version items; drop dead i18n key; cover cross-facet narrowing peter 2026-08-30 17:58:38 +02:00
  • bf98b48517 fix(plex): re-probe on file replace, HU parity, public class const, playback-class test gaps peter 2026-08-30 17:51:33 +02:00
  • b563155a37 docs(plex): correct the cull-yield fallback comment to name the real route 404s peter 2026-08-30 15:18:26 +02:00
  • 915319fa35 fix(plex): make the HW->SW fallback supersede-check atomic; honest cull yield peter 2026-08-30 15:11:37 +02:00