-
server: bound per-tick scheduler sweeps; anchor request-timeout exemptions
-
server: govern OAuth read routes; harden passkey + password-verify paths
-
server: make gallery confirm idempotent (STOR-S1)
-
mt: harden the image upload pipeline (F2, F5)
-
mt: restore destructive-action confirmations (F1)
-
mt: paginate and flatten list_tracked_threads (F4)
-
mt: bound ?sort=replies with a trigger-maintained post_count (F3)
-
Drop create_item redundant slug pre-check loop
-
Sweep Run #22 minors: media presign tier cap, bounded scheduler spawns, session cap
-
Fix UX-1: move free-text out of inline onclick JS-string context
-
Perf PERF-2/3: collapse item-page viewer flags + batch code-tab collaborators
-
Fix PERF-1: bound content-export memory for legacy NULL-size rows
-
Fix SEC-S2: harden YARA corpus floor + expand conservative ruleset
-
Fix PAY-S1: release a pending-refund claim when processing fails
-
Retire audit docs from the repo (treat-as-public)
-
test-fuzz: cover all 8 storage confirm failure branches via DB fault injection
-
test-fuzz Phase 2: pin storage CAS guards + session/report negative paths
-
Fix clippy gate: prefer contains/as_ref, drop needless Ok(?)
-
Default items.scan_status to clean so fileless items are discoverable
-
Preserve input on non-HTMX join-wizard validation; add field id to ValidationError
-
Add global request timeout; background the content export
-
Derive media folder/filename from S3 key; sniff real content type; clamp storage SUMs
-
Scan archive interiors recursively; close OAuth/admin gaps
-
Make Fan+ renewal credit issuance idempotent per invoice period
-
bento: expose recipe context + generalize version resolution
-
Add git personal-access-tokens for HTTPS clone and push
-
Require a claim link for free guest claims too
-
Reconcile git HTTP read access with SSH (honor collaborators)
-
Perf: shared HTTP client; bounded-parallel admin bulk actions
-
Perf: batch bundle lookup; stop gating git info/refs on the clone budget