Skip to content

Latest commit

 

History

History
36 lines (28 loc) · 1.64 KB

File metadata and controls

36 lines (28 loc) · 1.64 KB

Books Backend Notes

Progress

  • Branch created: feat/books-backend
  • SQLite schema + migration system
  • Settings + auth migration off JSON files
  • Torznab search and normalization
  • Snatch + rTorrent integration
  • Download/import worker loop
  • Asset streaming/feed parity
  • Mock services and e2e tests
  • Review feedback pass (rTorrent methods, infohash handling, snatch behavior)
  • Legacy JSON cache state moved into SQLite (app_state)
  • Open Library search endpoint + add-to-library by OL key/ISBN
  • README refresh
  • Manual import controls for box sets (import.inspect + file selection)
  • Optional Responses-API decision scaffolding (agent.search.plan, agent.import.plan) with deterministic fallback
  • Import failure recovery path: deterministic import -> forced agent import -> forced agent reacquire scan; user can trigger via library.acquire
  • User-reported semantic import issue path via library.reportImportIssue (forced agent import attempt -> forced agent reacquire)

Open Questions / Decisions

  • None currently. Any blockers encountered during implementation will be recorded here with context and fallback action.

Current Focus

  • API surface replaced in server.ts and /src/books/http.ts.
  • Worker handles download, import, scan, and reconcile with retry/backoff.
  • Next: continue API/tests hardening and close any follow-up review comments.

Assumptions

  • Playback position APIs are intentionally out of scope in v1 per PLAN.md.
  • rTorrent transport is HTTP XML-RPC only.
  • During early development we can recreate the local test DB when schema changes.