Commit Graph

  • 217f411f74 fix(auth): GetProfile reads the user row — the JWT context stub has no theme main John O'Keefe 2026-09-28 08:45:01 -04:00
  • 4fde2a6d83 feat(auth): GetProfile returns the account theme John O'Keefe 2026-09-28 08:34:11 -04:00
  • 3d88f0b960 feat(search): publisher_filter for the media search endpoint John O'Keefe 2026-09-27 19:55:58 -04:00
  • 6aea6a4e2c fix(sync): countTextCharsBefore multiplied the document by node depth v1.9.3 John O'Keefe 2026-09-26 22:01:35 -04:00
  • b10bf3e8c7 docs(api): real progress endpoint contract; remove nonexistent-endpoint docs John O'Keefe 2026-09-26 21:27:44 -04:00
  • 8c3273a0fc fix(sync): normalize character offsets to UTF-16 at the wire; refresh book offset on every verified save John O'Keefe 2026-09-26 20:18:48 -04:00
  • aec226af1a feat(sync): server-side position authority — verify/heal progress anchors John O'Keefe 2026-09-26 14:43:34 -04:00
  • 1c1f5cf1bb feat(version): bake release tag into binary; About card and /health field v1.9.2 John O'Keefe 2026-09-21 20:21:43 -04:00
  • 9e4cc4efd0 chore(templates): regenerate templ outputs and rebuilt static assets v1.9.1 v1.9 John O'Keefe 2026-09-21 18:10:47 -04:00
  • 7b0b2793a6 test(infra): self-healing admin password; cross-library move/merge suite John O'Keefe 2026-09-21 18:10:37 -04:00
  • 077afaca56 chore(docker): bake Go module cache into the test-runner image John O'Keefe 2026-09-21 18:10:17 -04:00
  • 388b62b277 fix(admin): delete-library warning names what is lost; modal now closes John O'Keefe 2026-09-21 18:09:52 -04:00
  • 5da97b2e5d feat(opds): library folder navigation and library-scoped search John O'Keefe 2026-09-21 18:09:30 -04:00
  • 45e3a256e2 feat(collections): merge archived duplicates into their active copy John O'Keefe 2026-09-21 18:09:05 -04:00
  • 64ef691d64 feat(scanner): repoint rows on cross-library moves of identical content John O'Keefe 2026-09-21 18:08:43 -04:00
  • a4dbe79d0b feat(data): duplicate-content queries — archive filters, cross-library moves, archived-twin matching John O'Keefe 2026-09-21 18:08:18 -04:00
  • 1002cbca93 fix(schema): refresh library_type_name on library change; make trigger block re-runnable John O'Keefe 2026-09-21 18:07:51 -04:00
  • 65f6bdf075 chore: complete go.sum with test-graph dependency sums John O'Keefe 2026-09-18 18:09:20 -04:00
  • 4faa217822 test: repair integration harness — wire SettingsRegistry, reuse preserved dev admin John O'Keefe 2026-09-18 16:06:14 -04:00
  • 5cdfe5a8dd fix(devices): release pendingMu on the pending-status path of CheckRegistrationStatus John O'Keefe 2026-09-18 16:06:03 -04:00
  • 1cd8557b58 fix(devices): re-approving a known device rotates its token instead of 500 John O'Keefe 2026-09-17 23:09:02 -04:00
  • b4c956aed4 docs(user): web reader guide — navigation, touch selection, highlights John O'Keefe 2026-09-17 20:13:45 -04:00
  • 7caa46c2da fix(build): exclude local package-lock.json from Docker build context John O'Keefe 2026-09-17 15:37:58 -04:00
  • 5329bf35a9 fix: pin foliate-js e16530a — desktop double-click zoom toggle v1.8.1 john-okeefe 2026-09-17 14:37:05 -04:00
  • 80e5d5b0d1 feat(reader): comic treatment for fixed-layout items in comics/manga libraries john-okeefe 2026-09-17 14:36:58 -04:00
  • b3a429d7e1 fix(reader): Save/Cancel in the note editor closes the whole popover v1.8 John O'Keefe 2026-09-17 11:47:25 -04:00
  • d8179bb066 fix(reader): popover dismiss on PDF taps; notes save on create; colors don't close editor John O'Keefe 2026-09-17 10:55:21 -04:00
  • 960305dfa9 fix(reader): PDF selection popover shows reliably on touch, below selection John O'Keefe 2026-09-17 10:40:12 -04:00
  • 16bbeec5a3 fix: fresh npm cache mount id to evict stale foliate-js tarball John O'Keefe 2026-09-17 10:17:34 -04:00
  • 39f9c39360 fix: pin foliate-js 1305a52 via linuxhg mirror John O'Keefe 2026-09-17 10:13:33 -04:00
  • 011b6d14e4 fix: pin foliate-js 1305a52 — fx renderer ignores toolbar resizes during selection John O'Keefe 2026-09-16 17:30:00 -04:00
  • d4661e7f04 fix: pin foliate-js 94bb384 — PDF selection drags no longer blank the page John O'Keefe 2026-09-16 17:13:24 -04:00
  • 27a93ba2ea fix(reader): hide the chrome when a touch selection starts v1.7 John O'Keefe 2026-09-15 20:20:34 -04:00
  • 7afad5dcde chore: point foliate-js at linuxhg mirror main (8a20399) John O'Keefe 2026-09-15 20:13:07 -04:00
  • 929a862e74 feat(reader): touch selection handles, copy fallback, highlight tap editing John O'Keefe 2026-09-15 19:33:45 -04:00
  • 0e55dafb1e fix(reader): mobile touch reading overhaul John O'Keefe 2026-09-15 08:50:17 -04:00
  • cc8084a713 fix(reader): pin foliate-js 9cfe266 John O'Keefe 2026-09-15 08:50:06 -04:00
  • 3ab294bf81 feat(scanner): store EPUB reading direction at scan time v1.6 John O'Keefe 2026-09-13 13:13:25 -04:00
  • e944f11415 feat(scanner): fill sparse sidecars from the PDF Info dictionary John O'Keefe 2026-09-13 13:06:48 -04:00
  • 708598687e feat(scanner): fill sparse sidecars from embedded EPUB metadata John O'Keefe 2026-09-13 13:05:37 -04:00
  • aac7c72900 feat(admin): archived-items page with purge dates, restore, and purge John O'Keefe 2026-09-13 12:01:05 -04:00
  • fe5ab9e5f8 feat(ui): hide missing books immediately and mark offline libraries John O'Keefe 2026-09-13 12:00:49 -04:00
  • 249b1dfe93 feat(scanner): treat reappeared content as a move, not a duplicate John O'Keefe 2026-09-13 12:00:19 -04:00
  • 17216e9cc7 feat(db): archive lifecycle queries, immediate-hide filters, move support John O'Keefe 2026-09-13 11:59:41 -04:00
  • 841db91a29 fix(scanner): extract embedded covers for sidecar-managed books John O'Keefe 2026-09-13 11:59:24 -04:00
  • 1eb9c92d6a fix(scanner): nil metadata_overrides crashed Reset to Scanned with SQLSTATE 23502 v1.5.1 John O'Keefe 2026-09-13 00:12:56 -04:00
  • 1fa8ee3a59 feat(scanner): Calibre-aligned OPF metadata extraction v1.5 John O'Keefe 2026-09-12 23:45:18 -04:00
  • 72d167005f fix(scanner): resolve EPUB covers via structured OPF parsing, Calibre chain John O'Keefe 2026-09-12 23:45:01 -04:00
  • bf2c2825ac chore(deploy): document ARCHIVE_RETENTION_DAYS in compose and .env.example v1.4 John O'Keefe 2026-09-12 17:50:31 -04:00
  • cd119a74da feat(admin): purge-archived endpoint with an archived-items banner John O'Keefe 2026-09-12 17:50:24 -04:00
  • 14445a7c3f feat(scanner): archive-at-two-scans lifecycle for files missing from disk John O'Keefe 2026-09-12 17:50:08 -04:00
  • e6aceae0da feat(db): archive lifecycle schema and queries for missing media John O'Keefe 2026-09-12 17:49:53 -04:00
  • 44b98f3fc3 feat(scanner): read Audiobookshelf metadata.json sidecars John O'Keefe 2026-09-12 17:49:46 -04:00
  • 61681aac23 feat(scanner): extract EPUB metadata from the embedded OPF directly John O'Keefe 2026-09-12 17:49:30 -04:00
  • 7a9a66fcc5 feat(ui): show file path and Reset to Scanned in the metadata editor v1.3 John O'Keefe 2026-09-12 14:22:38 -04:00
  • 2df3ecbf36 fix(ui): remove the broken Generate Cover button from the metadata editor John O'Keefe 2026-09-12 14:22:29 -04:00
  • 9da193e718 feat(ui): admin-only file location and metadata editing on book detail John O'Keefe 2026-09-12 14:21:42 -04:00
  • 7f64b92b9d feat(metadata): per-field user overrides that survive library rescans John O'Keefe 2026-09-12 14:21:35 -04:00
  • b9645752f5 fix(db): skip SQL comment lines when parsing schema table names John O'Keefe 2026-09-12 14:21:28 -04:00
  • 9c8337d0a8 fix(scanner): render the PDF CropBox, not the MediaBox, in the cover fallback John O'Keefe 2026-09-12 14:21:24 -04:00
  • da1f689263 feat(ui): add Rescan button to Edit Metadata dialog v1.2 john-okeefe 2026-09-11 23:08:11 -04:00
  • 298330a3a8 feat(api): add POST /api/media-items/:id/rescan endpoint john-okeefe 2026-09-11 23:08:08 -04:00
  • 0614795ca2 feat(scanner): render PDF first page as cover fallback via pdftoppm john-okeefe 2026-09-11 23:08:04 -04:00
  • 6aa958c78f fix(reader): save progress on real position change, not on detected intent v1.1.1 john-okeefe 2026-09-11 21:50:03 -04:00
  • 3514b4dc1c fix(reader): close the highlight popover on outside clicks in the book v1.1 john-okeefe 2026-09-10 08:27:16 -04:00
  • ae87c0cd6a fix(sync): let content-equal echoes refresh drifted locators john-okeefe 2026-09-10 08:10:42 -04:00
  • b6f507b9e5 fix(sync): understand cross-block text; never store a guessed locator john-okeefe 2026-09-09 20:15:12 -04:00
  • ce3ae31ced fix(reader): read position from the API at open; never write a restored position john-okeefe 2026-09-09 14:52:30 -04:00
  • 75c1d9bb95 fix(highlights): web edits update the targeted row instead of minting duplicates john-okeefe 2026-09-09 14:12:18 -04:00
  • 905218dd4b fix(reader): stop tap zones from paging during long-press text selection john-okeefe 2026-09-09 13:00:39 -04:00
  • 94dad5e089 fix(reader): stop page-turn and zoom shortcuts while typing in form fields john-okeefe 2026-09-09 12:59:37 -04:00
  • 2366faccce fix(reader): make device-synced highlights editable on the web john-okeefe 2026-09-09 12:38:24 -04:00
  • e40530824e feat(koreader): one conversion route for every feature; bookmarks get web CFIs v1.0.3 john-okeefe 2026-09-09 09:04:23 -04:00
  • 5a6c361c11 perf(sync): share the bounded converter cache for section percentages john-okeefe 2026-09-09 09:04:10 -04:00
  • 7b1c809ae3 feat(bookmarks): location identity, origin provenance, KOReader-style labels john-okeefe 2026-08-31 14:04:00 -04:00
  • f7c4dfe2e8 fix(sync): resolve CRE positions structurally with text as verification v1.0.2 john-okeefe 2026-09-08 22:32:51 -04:00
  • b1eda696f1 Revert "fix(bookmarks): upsert on title conflict so position upgrades don't 500" john-okeefe 2026-08-30 21:01:59 -04:00
  • 27b3dcb69f fix(bookmarks): upsert on title conflict so position upgrades don't 500 john-okeefe 2026-08-30 20:57:15 -04:00
  • 5c5593644d fix(media): gate file serving by library visibility; proper download URL john-okeefe 2026-08-30 11:44:36 -04:00
  • 9e516b96cc docs(android): require reader settings parity with the web reader john-okeefe 2026-08-29 15:25:52 -04:00
  • 44735554f7 docs(api): document the real book download route john-okeefe 2026-08-29 10:25:59 -04:00
  • 311049379d docs(android): add QR pairing sign-in to roadmap, update auth design john-okeefe 2026-08-28 22:45:29 -04:00
  • f65db5ab4f docs(api): align auth/devices/libraries/media-items docs with handlers john-okeefe 2026-08-28 22:15:42 -04:00
  • 7ddcdd0756 docs(readme): link Android app doc and adopt app favicon as title icon john-okeefe 2026-08-28 20:59:31 -04:00
  • b927ed9988 docs(android): add native Android client design doc john-okeefe 2026-08-28 20:59:31 -04:00
  • e2953c4a01 chore(license): relicense project from GPL-3.0 to AGPL-3.0 john-okeefe 2026-08-28 20:12:15 -04:00
  • d429534b12 docs(api): deleted-annotation history + KOReader deletion propagation v1.0.1 john-okeefe 2026-08-22 13:16:54 -04:00
  • f70579b4fc feat(ui): deleted-annotation history on the book page john-okeefe 2026-08-22 13:16:48 -04:00
  • 1f5c5a28bd feat(sync): propagate KOReader annotation deletions + history API john-okeefe 2026-08-22 13:16:43 -04:00
  • d4c52e9a6a feat(sync): restore/purge service methods + bookmark tombstone by dedup key john-okeefe 2026-08-22 13:16:36 -04:00
  • acbb6c7981 feat(db): queries for the deleted-annotation history john-okeefe 2026-08-22 13:16:31 -04:00
  • 91c8be8562 docs(api): document the KOReader resolve endpoint john-okeefe 2026-08-22 09:57:44 -04:00
  • 6859f81144 feat(sync): add read-only KOReader book resolve endpoint john-okeefe 2026-08-22 09:57:35 -04:00
  • 078c4b1f3f docs(api): add system/hash-conflict sections to API references john-okeefe 2026-08-20 14:41:05 -04:00
  • c49a9605ff docs(api): rewrite KOReader bookmark sync for current protocol john-okeefe 2026-08-20 14:40:59 -04:00
  • df90938c5c docs(api): document device sidecar endpoints; fix registration docs john-okeefe 2026-08-20 14:40:54 -04:00
  • ffcdab36a0 docs(api): document hash-conflict resolution endpoints john-okeefe 2026-08-20 14:40:50 -04:00
  • 44a0f8c7a4 docs(api): document unified tunable system settings endpoints john-okeefe 2026-08-20 14:40:45 -04:00
  • 8ca95db08a docs(user): update admin and collections instructions for sidebar UI john-okeefe 2026-08-20 14:30:10 -04:00
  • 9a60196f1d docs(user): update dashboard and bookshelf instructions for sidebar UI john-okeefe 2026-08-20 14:30:05 -04:00