docs(importing): BookDrop bulk tools + managing book files (bookshelf-eseay.13/.20) #1366
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "bd-bookshelf-eseay.13"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
New page BookDrop Bulk Tools (
bookdrop-bulk-tools.md): full coverage of Extract Pattern (placeholder list, date formats, common patterns, preview/apply flow, wildcard tips) and Bulk Edit (available fields, apply behaviour, combine-with-pattern tip). All labels, placeholder names, and button text verified againstbookdrop_index.html.New page Managing Book Files (
managing-book-files.md): covers the Files sub-tab on the book detail page — viewing files, uploading (accepted formats, 2 GB limit), replacing, detaching (removes link, not disk file), deleting, and attaching to a different book. Verified againstbooks_show.htmlandbook_upload_modal_controller.js.Updated
importing/_index.mdwith cards for both new pages.All content is end-user framing with no source/route/internal references.
Test plan
make docsorhugoindocs/)/docs/importing/bookdrop-bulk-tools/and/docs/importing/managing-book-files/Closes bead bookshelf-eseay.13 on merge.
Closes bead bookshelf-eseay.20 on merge.
Security review — PR #1366 (
bd-bookshelf-eseay.13)Scope confirmation: diff is 3 documentation Markdown files only (
docs/content/docs/importing/_index.md,bookdrop-bulk-tools.md,managing-book-files.md). No Go code, no templates, no configuration, no secrets, no credentials were introduced or modified.Security surface check:
managing-book-files.md): the 2 GB maximum file size quoted in the docs matches the real server-enforced cap introduced for book content uploads (thePUT /books/{id}/contentmiddleware exemption from the 1 MBMaxBytescap — PR #1246). The accepted format list (EPUB, PDF, CBZ, CBR, CB7, CBT, MOBI, AZW3, FB2, M4B, MP3) matches the formats the application actually supports. No guidance tells users to bypass, circumvent, or work around a size or type restriction.style=attributes or other CSP-relevant content.No security findings.
REVIEW VERDICT: 0 blocker, 0 major, 0 minor
Code Review — bookshelf-eseay.13/.20 (docs only)
Reviewed the diff against the live source:
bookdrop_index.html,bookdrop_extract_pattern_controller.js,bookdrop_bulk_edit_controller.js,books_show.html,book_upload_modal_controller.js, andbook_file_replace_controller.js.[MAJOR] docs/content/docs/importing/bookdrop-bulk-tools.md:131 — "Only filled fields are written" contradicts actual implementation
The Tips section states: "Only filled fields are written. If you type a publisher name but leave the language field blank, only the publisher is updated across all selected files. The language field on each file is left exactly as it was." This is factually incorrect. The controller's
_buildPatch()(bookdrop_bulk_edit_controller.js) always sends all form fields — blank or not — in the POST body, and the server unconditionally overwrites every received field. A blank language field WILL clear the language on every selected proposal. The controller's own comment (line 16) confirms: "all fields are always included for simplicity (the server overwrites whatever is sent)." This misleads users into thinking a blank field is safe when it will actively erase existing data.Fix: change the tip to say "Blank fields clear that field on all selected proposals. Fill in only the fields you want to set or overwrite."
[MINOR] docs/content/docs/importing/managing-book-files.md:44 — "Confirm to upload" misnames the Replace dialog's submit button
Step 4 of the Replace section says "Confirm to upload." The Replace modal's submit button (book_file_replace_controller.js line 127) is labeled "Replace", not "Confirm" or "upload". Users following these instructions looking for a "Confirm" button will not find one.
Fix: change "Confirm to upload." to "Click Replace to upload the replacement file."
Everything else verified correctly against source:
book_upload_modal_controller.jsline 111 and accept attribute.books_select_toolbar.htmllines 214–219; toolbar is fixed at the bottom per CSS.REVIEW VERDICT: 0 blocker, 1 major, 1 minor
2f3227bfcf3798eca6143798eca61493190d711a93190d711ad07333018a