Paragraph Retranslation#

  • Retranslate a single paragraph in place instead of the whole chapter — tap a paragraph's action widget and just that line re-runs through the AI, "sandwiched" with its neighbours for coherence
  • A soft "breathe" animation marks the paragraph while it re-translates; toasts auto-dismiss
  • Available to Reader tier and up, with its own daily quota; quote/asterisk handling fixed so styled lines re-translate cleanly

Retranslation Controls#

  • Retranslate settings — pick how a novel-wide retranslate behaves (model, scope)
  • Fresh retranslations run on Gemini 3.1 Flash Lite; "old model only" refreshes route to DeepSeek for cheap bulk back-catalog
  • Genre-aware flavour prompts — xianxia/wuxia keep idiomatic flavour, urban/fanfic stay plain
  • Entity-detection overrides now apply during retranslation too

Background Translation (GPT-5.5)#

  • Back-catalog re-translation kicked off — a dedicated backlog worker began quietly re-translating older chapters (those originally done on gemini-2.5-flash-lite / DeepSeek) on GPT-5.5, prioritising untranslated content first and sweeping by novel popularity
  • Runs on a separate worker/queue so it never competes with live reading; force-model path with cooldown/back-off under load
  • (Upgraded to GPT-5.6 in V3.15.)

Reader Reliability & Streaming#

  • Streaming translation hardened — the SSE generator owns its own DB session (no more "server closed connection" resets mid-stream), failed chunks retry, and a gap is never saved as "complete"
  • First paragraph streams immediately without waiting on the title-translation call
  • Global heartbeats stop silent phases from tripping the idle-abort, and the connection recovers when you background→foreground the tab
  • Graceful "busy" handling when the per-worker live-translation cap is hit, so heavy traffic can't choke the backend
  • Smoother free machine-translation reader — Google-Translate pipeline improvements for non-patron reading past chapter 50, and a cleaner "before you continue" upgrade prompt

Community & Requests#

  • Review replies show the replier's reading progress (e.g. "Ch. 128") so you can gauge spoilers at a glance
  • Review reminders behave — no more nagging you to review a novel you've already rated/reviewed
  • Search-bar requests honour your saved preview toggle — request as a preview or full without re-checking the box each time

Rank Movement#

  • Up/down rank arrows (daily / weekly / monthly) on the popular board and the novel header, from a daily rank-snapshot + hourly delta task
  • Hides 0/null so there are no false "NEW" badges

Performance#

  • Faster API under load — uvicorn workers raised to 8, anyio threadpool to 64, and the get_current_user DB lookup moved off the event loop
  • Chapter views buffered in Redis and flushed in bulk every 2 min; browse listing loads only the columns it serializes; DB transactions released before long LLM calls

SEO#

  • Original novel names woven across the whole meta system (in descriptions, kept out of titles)
  • Chapter sitemap — the first 100 translated chapters per novel, plus a chapter bot-meta card endpoint

Patron Quotas Rebalanced#

  • Monthly full-translation requests doubled — Translator Base 16 → 32, Translator Pro 32 → 64
  • Previews rebalanced down (still well above typical use) so the monthly balance favours the more valuable action — new novels

Codex & Wiki Fixes#

  • Empty-wiki root cause fixed — pgvector HNSW filtered search was returning 0 rows; enabling iterative scan restores full RAG context
  • Variant original names can now share a single translated name without conflict

Sources & Scraping#

  • New scraper: wcshuba.com; trxs / xsjz / xsw extraction and SSL fixes