v1.1.0
This release adds an operator-facing agent read API, an "analyzed" triage workflow across the admin dashboard and single-paste view, stronger visual feedback throughout, and a custom delete-confirmation modal — plus several storage-layer and correctness fixes found during review and live testing.
New features
GET /api/agent/paste/<slug>: a Bearer-token-protected, read-only endpoint so an AI agent (or any operator-side automation) can fetch a paste's content given the plain share link a user reports, without needing an admin login session. Sensitive uploader metadata (IP, country, user agent) is redacted from the response, and expired pastes correctly return 404.- Analyzed triage workflow: mark an upload as analyzed straight from its own page (single-click Mark/Unmark, no confirmation needed) or in bulk from the dashboard toolbar (
Mark as analyzed (N), acting on every selected row at once, no confirmation). The dashboard shows a read-only checkmark badge next to the slug for analyzed uploads, and a toolbar toggle switches between showing everything and hiding analyzed rows. - Delete, everywhere: single-row and bulk delete from the dashboard, and a Delete button on the upload's own page too — all routed through the same custom on-screen confirmation modal (no native browser
confirm()). - Copy feedback: every copy button (paste view and dashboard bulk-copy) and the new bulk Mark-as-analyzed action flash green with a checkmark on success, instead of a silent text swap.
- Back to admin: a one-click icon button on every upload's page returns to a fresh dashboard — handy right after deleting or toggling analyzed on the upload you were viewing.
- Rows and forms auto-deselect once a bulk action (mark or copy) completes, so the toolbar always reflects "done" instead of leaving a stale selection.
Fixes
updatePasteMetano longer risks losing or duplicating a paste's metadata under concurrent writes (e.g. two quick toggles of the analyzed flag).- Pastes uploaded before this release (missing the new
analyzedfield) are read asfalseinstead ofundefined. - Fixed a double-escaping bug in the paste view's Delete confirmation message that broke the entire inline script in production — silently disabling Copy, Mark/Unmark as analyzed, and Delete together. Added a regression test that actually parses the emitted script instead of only checking for substrings.
- Fixed the paste-view copy button reading
event.currentTargetafter anawait(alwaysnullby then per spec), which silently skipped the copy-success flash. - Synced the frontpage's footer with the server-rendered pages' footer (License link, product-page link were missing).
Docs
- README documents the full admin feature set and the optional
AGENT_API_TOKENenvironment variable. - Added a license reference (AGPL-3.0) and a link to logdrop's official page in the footer, on every page.
Full Changelog: v1.0.0...v1.1.0