Skip to content

fix: improve remote downloads, file actions, and browser media workflows - #1576

Merged
anobaka merged 9 commits into
mainfrom
codex/file-selector-userscript-diagnostics
Oct 10, 2026
Merged

anobaka merged 9 commits into
mainfrom
codex/file-selector-userscript-diagnostics

Conversation

@anobaka

@anobaka anobaka commented Oct 10, 2026 •

Copy link
Copy Markdown
Owner

Remote browser actions could silently fail, downloads from the userscript could hit a .NET 10 expression-tree regression, and the built-in player could select subtitles and never finish loading. This change repairs those paths and updates the related resource-management interfaces.

Changes

  • Let the file selector create a folder inside a selected directory, delete files, and rename from its context menu.
  • Surface userscript connection/download errors with translated messages, inherit installation address/language, and support an explicit local script asset for deployment testing. Avoid C# 14 span overloads in EF query expressions used by downloads and resource moves.
  • Show copyable server folder locations in ordinary browsers; keep desktop/relay folder opening on the user's machine. Support clipboard fallback inside modals and show readable, retryable media-library path errors without discarding old marks.
  • Prefer located playable files, replace the incompatible media-player integration with native controls over the existing streaming endpoint, and add bounded loading/error/retry states. Redesign the file list and window controls, translate shortcuts, and preview subtitle/NFO text with bounded streaming reads and virtual rows.
  • Refresh alias management and compact reference-property options. Move placeholder-resource creation into the toolbar and add an optional typographic name cover, disabled by default.

Validation

  • Full frontend ESLint (zero errors), 233 Vitest files / 3,888 passing tests (3 skipped), and production build.
  • Backend storage-boundary tests, userscript endpoint tests, and download/resource-move query regression tests, including the .NET 10 build path.
  • Browser checks against the local Docker server: folder-location dialog, readable media-library errors, actual MP4/MKV decoding (including a short H.265 MKV transcoded by the server), NFO/ASS previews, and translated player controls. A 2.55 MB text fixture rendered only 28 rows and displayed its truncation limits. Alias/property layouts and name covers were also visually checked.
  • The earlier userscript and backend fixes were deployed locally and confirmed by the user before this PR.

Browser directory actions expose the server/container path; opening a local file manager still uses the desktop app with path mappings. Old Windows paths need to be changed to locations mounted in Docker. This change preserves those marks and explains the problem.

Closes #1571
Fixes #1572
Fixes #1573
Closes #1574
Closes #1575

Create folders inside a selected directory, enable confirmed file deletion,
and expose inline rename in the context menu. Prevent cancelled or duplicate
rename submissions and clear selection after successful deletion.

Validated 50 related regression tests and the frontend production build.

Closes #1571
…ferences

Report translated GM, network and server failures in the script settings and
task actions. Validate stored origins, bound requests with timeouts, and reject
stale responses when changing servers. Seed the app language and declare the
installed server host without overriding saved preferences or CDN updates.

Validated 21 script regressions, strict TypeScript, production builds, 61
Tampermonkey backend tests, and compiled-script UI smoke scenarios.

The reported PC2 connection failure still needs its runtime diagnostic.
Select Enumerable.Contains explicitly in captured array predicates so C# 14 does not introduce ReadOnlySpan conversions that EF cannot interpret. Cover nonempty SQLite download task lists and retain the same query behavior in output lookup and resource moves.

Disambiguate Enumerable.Reverse in existing tests so the full test assembly compiles with the Docker .NET 10 SDK.

Validation: reproduced the original exception with SDK 10.0.401 before the fix; 199 related download, resource move, and data sync tests pass after the fix. Download task service tests also pass with the desktop .NET 9 SDK.
Allow deployment administrators to select a read-only userscript with BAKABASE_TAMPERMONKEY_SCRIPT_FILE while retaining the normal installation validation and stored preference bootstrap. Report invalid local assets without falling back to the older CDN build.

Validation: all 68 Tampermonkey service and HTTP tests pass, including local assets and source failures.
@anobaka
anobaka merged commit 2a3ac29 into main Oct 10, 2026
15 checks passed
@anobaka
anobaka deleted the codex/file-selector-userscript-diagnostics branch October 10, 2026 05:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment