Commit Graph
109 Commits
Author SHA1 Message Date
Sucukdeluxe c1003074cd Make history and remote message handling fail closed 2026-08-13 21:34:30 +02:00
Sucukdeluxe 06a3cfc050 Use canonical product name in release titles 2026-08-13 21:29:01 +02:00
Sucukdeluxe 82e74a18c6 Harden same-name hoster recovery
Serialize recovery windows per hoster account and normalized filename, reserve remote codes across the batch, and keep cancellation responsive while waiting. Reject semantic and malformed file-list baselines instead of treating them as empty accounts, with focused regression coverage and release allowlist updates.
2026-08-13 21:22:52 +02:00
Sucukdeluxe 107dcfb9ae Use the canonical product name in public surfaces
Align the README, support bundles, webhook payloads, and updater identity with Multi Hoster Uploader while preserving repository and artifact slugs for compatibility.
2026-08-13 21:18:46 +02:00
Sucukdeluxe c80b86594d Persist recovery before accepting upload work
Fail closed if the initial or extended recovery marker cannot be written, retain exact terminal outcomes after catastrophic start failures, and localize the resulting user-visible errors.
2026-08-13 21:17:38 +02:00
Sucukdeluxe 746ae29a4f Retain exact recovery after batch start failure
Persist job-ID terminal outcomes before final queue acknowledgement and clear recovery evidence only after both the terminal marker and renderer queue are durable.
2026-08-13 21:16:04 +02:00
Sucukdeluxe a7fb3421f1 Keep diagnostics strictly local
Discard legacy network allowlists, report the actual loopback-only runtime contract, and return a generic safe error if the final diagnostic reply boundary fails.
2026-08-13 21:13:34 +02:00
Sucukdeluxe 3ced148ee8 Harden upload lifecycle and renderer recovery
Serialize upload starts across durable audit work, drain in-flight batch additions before cleanup, and fail closed when recovery persistence is incomplete. Wire bounded renderer reload recovery with a branded localized failure surface and use merge-safe fallback log persistence.
2026-08-13 21:11:48 +02:00
Sucukdeluxe 4c48044a95 Harden diagnostic response redaction
Redact every diagnostic response at the agent boundary, fail closed when sanitization cannot complete, and remove Windows, UNC, and slash-UNC paths from returned data. Preserve benign text while removing complete configured secret values, including nested JSON escapes and quoted HTML credential fields. Add focused regression coverage for collector errors, successful responses, support bundles, path variants, and punctuation secrets.
2026-08-13 21:08:26 +02:00
Sucukdeluxe 76ad81a0d3 fix: harden audit durability and fallback config writes 2026-08-13 21:07:28 +02:00
Sucukdeluxe 07c81c0123 Add batch mutation drain gate 2026-08-13 21:06:00 +02:00
Sucukdeluxe 4b7011131d Reject every non-loopback runtime listener 2026-08-13 20:59:30 +02:00
Sucukdeluxe e58a38a915 feat: coordinate bounded renderer startup recovery
Retry the initial renderer load once, then resolve repeated failures through a visible safe surface or a controlled close.

Bound renderer crash reloads until a successful ready signal resets recovery, keep terminal handling idempotent, and cover retries, fallback failures, reload failures, ready resets, and late events with focused tests.
2026-08-13 20:58:35 +02:00
Sucukdeluxe 5667dcc74c Clarify hot reload change reporting 2026-08-13 20:57:06 +02:00
Sucukdeluxe 6e6f14cd12 Expose safe actionable upload diagnostics 2026-08-13 20:56:19 +02:00
Sucukdeluxe 2b56cd6373 fix(dev): serialize Electron hot reload restarts
Replace callback-based restarts with a coalescing state machine that keeps the active child tracked through tree termination and prevents overlapping kill/start cycles.

Block replacement starts after kill failures or shutdown signals, preserve stale-exit protection and source watch coverage, and add deterministic regression tests for restart races.
2026-08-13 20:55:24 +02:00
Sucukdeluxe f9b57f4b0e Prove responsive cancellation at full concurrency 2026-08-13 20:53:31 +02:00
Sucukdeluxe 967fef4eed Require public URLs for upload output 2026-08-13 20:52:12 +02:00
Sucukdeluxe 31b5766254 Harden packaged identity and local listener binding 2026-08-13 20:49:48 +02:00
Sucukdeluxe 4630c8c467 Preserve queue recovery and desktop drop integrity
Resolve floating drops through Electron native paths, expand folders recursively, correlate terminal outcomes by job ID until final queue persistence succeeds, and keep current queue badges, telemetry, cancellation behavior, and copy-link wording synchronized.
2026-08-13 20:45:01 +02:00
Sucukdeluxe b64cdd0ff3 fix: harden hoster confirmation and recovery
Require every successful upload to expose a validated HTTPS result and rebuild all Doodstream and DSVPlay output from the confirmed file code.

Keep failed baselines distinct from empty accounts, reject stale, foreign, and ambiguous recovery candidates across Doodstream, Byse, VOE, and Vidmoly, and preserve exact filename recovery with normalized extensions.

Emit bounded structured transport diagnostics without raw response bodies or tokenized URLs, and remove sensitive values from Doodstream debug traces.

Tests: node --test tests/upload-confirmation.test.js tests/hosters.test.js tests/doodstream-api-upload.test.js tests/doodstream-upload.test.js tests/byse-reject-recovery.test.js tests/hoster-recovery-provenance.test.js tests/suspect-reject-alternates.test.js

Lint: eslint lib/hoster-transport-error.js lib/hosters.js lib/doodstream-upload.js lib/voe-upload.js lib/vidmoly-upload.js lib/upload-confirmation.js
2026-08-13 20:43:48 +02:00
Sucukdeluxe e63214cae8 Harden audit durability and diagnostic redaction
Persist fallback audit targets before use and fail upload starts or active-batch additions closed when the plan cannot be recorded. Keep lifecycle audits out of session and debug logs, expose diagnostics through opaque metadata, localize audit failures, and redact paths plus complete credential values without corrupting benign text.
2026-08-13 20:34:26 +02:00
Sucukdeluxe a98b63618d Gate active batch additions on cleanup persistence
Route folder-monitor and hoster-selection additions through the shared active-batch start path so revoked source-cleanup confirmations are durably saved before Main receives any new job. Add real Electron coverage for blocked persistence, ordered success, and rejected saves across both entry points.
2026-08-13 20:08:21 +02:00
Sucukdeluxe 67978cb81f Harden source cleanup durability barriers
Separate provisional upload success from persistently confirmed cleanup state, invalidate prior confirmations before retries, and promote completion only inside the final queue persistence handshake. Preserve source files when history or queue persistence fails and add regression coverage for restart, retry, rollback, and real Electron finalization paths.
2026-08-13 19:45:31 +02:00
Sucukdeluxe bfb3a39fed fix: harden upload cancellation and audit logging
Preserve pre-start and batch cancellation requests, reject late upload success after cancellation, and wait for cancellation acknowledgements before removing queue entries.

Separate formatted link logs from privacy-safe source cleanup and upload plan audits, persist audit fallback paths, redact support bundles, and expose audit diagnostics safely.

Improve queue selection and destructive-action clarity, show the Settings save action only while changes are pending, and add regression coverage for all updated behavior.
2026-08-13 14:31:46 +02:00
Sucukdeluxe 59cead80c6 fix: stabilize renderer state and lifecycle updates
Prevent stale history, account, diagnostics, and language updates from repainting newer state. Keep queue virtualization, panel sizing, telemetry, cancellation, and runtime timing consistent across rapid UI changes. Strengthen painted-frame and lifecycle regression coverage, and brand packaged Windows metadata with the product publisher.
2026-08-13 07:07:42 +02:00
Sucukdeluxe b7754f355b release: v2.1.17
Render upload progress from fractional transfer values while keeping the visible percentage rounded. Move the green fill with a linear compositor transform and cover the 92-to-93 percent transition with monotonic frame-level Electron assertions.

Keep Electron UI verification listeners loopback-only so development validation no longer raises a Windows Firewall prompt under electron.exe. Extend the public source allowlist with the focused network safety regression coverage.
2026-08-13 04:37:18 +02:00
Sucukdeluxe a299fc204b release: v2.1.16
Add queue search and filters, safe upload diagnostics, session report exports, account check visibility, and explicit interrupted-upload recovery.\n\nSanitize diagnostic response snippets in persisted results and rotation logs, protect CSV exports against formula injection, and add regression coverage for diagnostics and reports.
2026-08-12 12:04:47 +02:00
Release Bot c843b4e623 fix: keep large queue cancellation responsive 2026-08-12 03:22:27 +02:00
Sucukdeluxe d1b36b0aaa fix: canonicalize Doodstream result links
Accept current Doodstream result domains while keeping returned download and embed URLs on doodstream.com. Add safe confirmation diagnostics and regression coverage.
2026-08-12 02:43:36 +02:00
Sucukdeluxe d3bac698c1 fix(security): remove plaintext credential storage fallback
Credential writes now require Electron safeStorage encryption. Legacy plaintext values remain readable for migration and are encrypted during the next successful save. The UI override and status IPC are removed.
2026-08-12 00:25:19 +02:00
Sucukdeluxe 1ee888c762 fix: keep CI packaging local
Pass --publish never to the regular Windows build so electron-builder cannot infer a release upload from the CI environment.
2026-08-11 22:42:36 +02:00
Sucukdeluxe 26dcf9c698 release: v2.1.12 reliability and security hardening
Verify update artifacts with exact metadata and SHA-512, require host-confirmed upload completion before cleanup, harden credentials and backups, improve queue recovery and skipped-state reporting, expand Windows path coverage, and add CI packaging checks.
2026-08-11 22:36:20 +02:00
Sucukdeluxe 7eec990811 release: Multi-Hoster-Upload 2.1.11 2026-08-11 20:10:43 +02:00
Sucukdeluxe 54de500b34 release: Multi-Hoster-Upload 2.1.10 2026-08-11 18:32:05 +02:00
Sucukdeluxe 69273b05d1 release: Multi-Hoster-Upload 2.1.9 2026-08-11 17:11:30 +02:00
Sucukdeluxe 32d4fc41d8 release: Multi-Hoster-Upload 2.1.8 2026-08-11 16:32:44 +02:00
Sucukdeluxe 03136e9fef release: Multi-Hoster-Upload 2.1.7 2026-08-11 16:10:13 +02:00
Sucukdeluxe 7c97915d64 fix: complete localized accessible UI audit
Localize dynamic renderer and shell text in English and German, replace native prompts with safe styled dialogs, align empty and dirty states, restore compact responsive information, and add keyboard support for queue, account, menu, and sorting interactions. Version the verified patch as 2.1.6.
2026-08-11 09:36:41 +02:00
Sucukdeluxe 1a71a1dba8 release: Multi-Hoster-Upload 2.1.5
Publish the synchronized upload telemetry sidebar and header speed graph with improved readability, complete localization, and updated release documentation.
2026-08-11 04:38:59 +02:00
Sucukdeluxe a59e5cc271 fix: improve upload telemetry readability
Increase the lower-sidebar availability and telemetry type scale, and update the header and sidebar speed values through one shared formatter so both surfaces stay synchronized with every live sample.
2026-08-11 04:34:26 +02:00
Sucukdeluxe 4485f6b1b2 feat: add unified upload telemetry
Move upload activity out of the global footer into a compact eight-row sidebar panel, add vertical metric transitions, and draw a smoothed green upload-speed sparkline in the header. Localize the new surfaces, cover responsive Electron behavior, and extend the strict public source allowlist for the new bounded speed-history module and its tests.
2026-08-11 04:34:12 +02:00
Sucukdeluxe 9afe7fd418 fix: smooth green upload progress 2026-08-11 00:54:40 +02:00
Sucukdeluxe 06816c0a58 release: Multi-Hoster-Upload 2.1.4 2026-08-11 00:47:01 +02:00
Sucukdeluxe 27b8f48b80 feat: animate account sections and align header actions 2026-08-11 00:40:39 +02:00
Sucukdeluxe f1f5845456 fix: align update metadata with release assets 2026-08-11 00:09:59 +02:00
Sucukdeluxe 0d9931c4b5 release: Multi-Hoster-Upload 2.1.3 2026-08-11 00:03:28 +02:00
Sucukdeluxe 4b89df17ef release: Multi-Hoster-Upload 2.1.2
Bump the product version for the Backup submenu and expanded Accounts scrolling fixes. Keep the language animation regression check synchronized with Chromium's first committed frame so UI failures remain deterministic during release verification.
2026-08-10 22:55:14 +02:00
Sucukdeluxe 7897e2c622 docs: publish complete product guide and UI fixes
Expand the English README into a practical guide covering installation, accounts, queue controls, automation, history, backups, updates, troubleshooting, and development. Add four sanitized workflow screenshots and enforce their exact public manifest. Restore the animated Backup submenu outside its parent menu, keep expanded account groups naturally sized in the scrolling Accounts list, and strengthen Electron UI regression exit codes.
2026-08-10 21:05:27 +02:00
Sucukdeluxe b6fce38b8b release: Multi-Hoster-Upload 2.1.1
Add live English and German interface switching, animated navigation and history controls, improved update changelogs, remembered upload folders, reliable repeated hot reloads, and refreshed public documentation.
2026-08-10 18:31:36 +02:00