4sh Changelog

Tsundoku 1.0.0

in Tsundoku

Features

  • (db) Land storage layer (sea-orm + FTS5) and frontend bootstrap follow-ups
  • (metadata) Add MetadataProvider abstraction with MangaBaka impl and offline cache
  • (source) Add DiscoverySource trait and Nyaa source with poll CLI
  • (resolution) Add release-to-series resolution pipeline with resolve CLI
  • (scheduler) Add per-source poll and per-provider cache-refresh cron worker
  • (api) Add v1 HTTP API + single-user auth in td-api crate
  • (web) Add series feed and detail views with persisted filter presets
  • (web) Add review queue UI with admin-token auth gate
  • (config) Auto-merge sibling .local overlay between base file and env
  • (admin) Add /admin page with source/provider config and fan-out triggers
  • (catalog) Normalize genres and tags into joinable tables with filter UI
  • (metrics) Record scheduler runs and surface admin observability dashboards
  • (resolve) Translate legacy MangaUpdates IDs via live 308 redirects
  • (resolve) Clean release titles and Dice against cleaned queries
  • (docs) Scaffold Docusaurus docs site with landing page
  • (docs) Wire OpenAPI reference + align Makefile with Codex operational shape
  • (review) Add bulk retry-all button for the review queue
  • Rerank MangaBaka FTS hits and enrich the review queue card
  • (admin) Split admin into route-based multi-page UI under /admin/*
  • (web) Add debounced search and card/list view toggle on the feed
  • (api,web) Stream manual-trigger lifecycle via SSE
  • (http) Per-host outbound rate limiter for nyaa, mangabaka, mangaupdates
  • (http) Retry on 429/5xx with capped Retry-After and jittered backoff
  • (admin) Move review queue under /admin/review and fix sidebar active state
  • (review) Surface provider URL and alternate titles on candidates
  • (api,web) Show description, genres, and tags on the series feed list view
  • (nyaa) Walk multiple feed pages and skip already-seen posts
  • (api,web) Surface max_pages on the discovery-sources admin card
  • (nyaa) Add backfill command via HTML listing pagination
  • (api,web) Trigger source backfill in-process via endpoint and admin UI
  • (resolution) Strip bare chapter ranges and split subtitle heads
  • (api,web) Add standalone "kept" release disposition
  • (api,web) Add manual series creation
  • (web) Link review releases to an existing catalog series
  • (api) Filter the review queue by title, source, format, and status
  • (api) Bulk-reject and bulk-retry the review queue
  • (web) Search and filter the review queue
  • (web) Multi-select and bulk retry/reject in the review queue
  • (web) Show details and an expandable description on kept releases
  • (api,web) Show torrent file list and metadata volume/chapter counts
  • (api,web) Show series format on review candidates
  • (web) Show tags on the series page and relink misclassified releases
  • (api,web) Surface series rating, counts, and release count with matching sorts and filters
  • (resolution,db,config) Groundwork for bulk series metadata refresh
  • (scheduler,db) Scheduled series-metadata refresh job
  • (api,cli) Bulk series-metadata refresh endpoint + CLI
  • (resolution,api) Filter fuzzy candidates by release format; allow re-resolving resolved rows
  • (api,web) Multi-select genres and tags with any/all toggle
  • (web) Add dark mode toggle in the app shell

Bug Fixes

  • (db) Derive release id from (source_kind, external_id) only
  • (web) Prevent provider search results from compressing under flex shrink
  • (nyaa) Resolve XML entity references in parsed item fields
  • (ci) Unblock cargo-dist and Dockerfile.cross builds
  • (mangabaka) Correct public series URL to mangabaka.org/{id}
  • (mangabaka) Populate genres and tags from offline dump
  • (ci) Inherit workspace repository key in all crate manifests
  • (ci) Allow-dirty cargo-dist generated CI files
  • (ci) Define [profile.dist] for cargo-dist builds
  • (review) Enlarge candidate cards and show full alternate titles
  • (web) Forward hasReleases to the series API and tri-state the boolean filters

Other

  • (api) Add free-text series search and id-maps metrics endpoint

View on GitHub