Skip to main content

max / makenotwork

v0.8.1: Ultra Fuzz Run 27 remediation + test coverage + doc fixes Patch release bundling 12 commits of mid-sprint work since v0.8.0. No new user-visible features, no DB migrations, no SDK breaks. Audit remediation (Run 27, ~35 items) - CRITICAL: item_image_confirm scan-before-swap; confirm_upload rollback restores old_bytes; media_confirm rollback on any INSERT error; extract_client_ip XFF dropped; idempotency middleware fails loud. - SERIOUS Storage: Content-Length binding on presigned uploads; version expected_old guard + rollback; delete_version atomic storage+S3; media_delete reordered; pending_uploads conflict bumps created_at; promo_use_count detach-on-release. - SERIOUS Payments: compute_splits clamp; promo starts_at atomic check; FOR SHARE on guest auto-attach; promo expiry boundary; Fan+ credit uniqueness comment. - SERIOUS Security: SSH owner validation; SESSION_TOUCH lowered to 5s; jwt_invalidated_at on suspend/logout-all/terminate; pending_2fa TTL 10min; Argon2 params from PHC; backup codes HMAC->Argon2 dual-read; constant_time_compare via subtle; Sec-Fetch-Site check on fan-plus. - SERIOUS UX: WishlistItem::price_display; CSS check-done glyph audit; login + reset-password form recall; git/settings CSRF gate; CSRF middleware AppError::Forbidden; AppError::Validation now ValidationError with per-field errors (187-site migration). - Architectural: scan layers in spawn_blocking + concurrent ClamAV; build runner upload_multipart streaming; scheduler tick-duration WARN+WAM; announcement fan-out off the lock; s3-storage DeleteObjects batching; backup codes Argon2. - MINOR: i64 in Fixed discount; cart check_min_charge; PKCE method recheck at token exchange; [::1] in localhost redirect; delete_session_by_id user-scoped; future-iat JWT rejection; upload_multipart retry; sanitize_filename doc; content-type sniffer disclaimer; cdn_base_url WARN; record_user_download conflict target; media_presign racy pre-check removed. - Carry-overs: Slug::from_trusted doc; compare.md math fixed. Observability (Phase 1) - caddy_ask_total{outcome} counter + domain_cache_entries gauge. - pg_stat_activity gauges (active, max_connections, ratio). - creator_storage_{used,cap}_bytes_total + fill_ratio. UX polish - Toast cap-with-overflow. - Footer Shortcuts + What's New links. - Landing-page What's new prominence. - data-new-until badge mechanism. - Auto-show What's New modal on FEATURE_VERSION bump. Phase 3 - Trial-day presets in promo form. - Promo redemption tracking modal. - Scan-held upload warning surfaced in UI. Test coverage (R26-115-122 closed) - discover.rs: 13 tests - embeds.rs: 18 tests - streaming.rs: 12 tests (filling gaps left by storage.rs/video.rs) - Earlier in cycle: SyncKit adversarial workflow (~400 lines) Docs - deploy/SSH_ACCESS.md (Tailscale break-glass procedure). - about/compare.md revenue table math + Stripe fee consistency.
Author: Max J. <87768334+MaxJMath@users.noreply.github.com> · 2026-05-22 16:04 UTC
Commit: 9764587c053a17830471806e386ccf4d5eef0caa
Parent: 6446ab1
2 files changed, +2 insertions, -2 deletions
@@ -3551,7 +3551,7 @@ dependencies = [
3551 3551
3552 3552 [[package]]
3553 3553 name = "makenotwork"
3554 - version = "0.8.0"
3554 + version = "0.8.1"
3555 3555 dependencies = [
3556 3556 "anyhow",
3557 3557 "argon2",
@@ -1,6 +1,6 @@
1 1 [package]
2 2 name = "makenotwork"
3 - version = "0.8.0"
3 + version = "0.8.1"
4 4 edition = "2024"
5 5 license-file = "LICENSE"
6 6