You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Adopt the deferred private EPUB ingestion prototype into the canonical Reader #289
Current README and the historical #274 delivery record explicitly retain unpublished EPUB/batch Workbench work. It was not part of the accepted UTF-8 Reader integration (#273/#276), nor of #288's report comparator. Open/closed issue and PR searches found no delivered EPUB integration. The prototype bytes were not recovered in this session; the historical claim is not implementation or test evidence.
User outcome
Analyze a locally supplied, unencrypted EPUB with the same canonical metrics, without uploading the book, executing embedded content or silently treating a container file as its literary body.
Acceptance
First locate and inspect any surviving handoff; deduplicate against current source. Recover only useful code into the canonical ingestion layer, not a parallel Workbench/analyzer.
Explicit supported EPUB subset and reading-order policy; separate raw archive, extracted body and normalized-text identities and versions. Preserve editions/translations as distinct inputs.
Bounded archive/member counts, compressed and expanded bytes; reject traversal, duplicate/ambiguous members, encrypted input, unsupported structures and unsafe XML. Never execute scripts, follow remote resources, write archive paths or bypass DRM.
Reuse the actual analyzer and current privacy/error/create-only output semantics; short-text representativeness remains explicit.
Real installed CLI -> HTML/JSON/CSV tests with small original synthetic fixtures: reading order, Unicode, missing spine, malformed archives and size/path attacks. No full copyrighted books in fixtures or reports.
Document the accepted input subset and failures. No corpus admission, FantLab-input match, new backend or parity claim. M2 remains 0/5.
Independent of #280 browser report comparison. Keep execution ordering in the existing compact project queue; do not create a competing worker or speculative integration branch.
Activity