Skip to content

Releases: iLevyTate/StratoSortStack

v5.1.2

Choose a tag to compare

@github-actions github-actions released this 01 Nov 04:46
a5294e3

Release Notes

  • Vision runtime is included — no separate download needed.
  • Tesseract OCR is auto-installed or uses bundled tesseract.js fallback.
  • Use Download Base Models after install to enable AI features.
  • Windows: the Setup installer is the recommended download and updates itself. The -win-x64.zip runs without installing: extract it once to a short folder such as C:\StratoSort and start StratoSort Stack.exe; it does not auto-update.
  • Windows artifacts are Authenticode-signed.
  • macOS builds are Developer ID-signed, notarized by Apple, and stapled.
  • See the Install Guide for Windows, Mac & Linux — one download, no CLI.

[5.1.2] - 2026-11-01

A maintenance release: security updates for the build and test tooling, and a macOS release build
that survives a dropped connection to Apple. The installed app works the same as 5.1.1.

Security

  • Build and test tooling only: the glob 10.x and 13.x copies used by Jest, rimraf and the
    coverage tooling move to 14.0.3 for GHSA-3g3m-2fjr-6pw4, and the minimatch 9.x and 10.x copies
    used by ESLint, electron-builder, @typescript-eslint and the coverage tooling move to 11.0.3 for
    GHSA-g3hv-75wg-m249. None of these copies ship in the app; the production dependency audit was
    already clean.

Changed

  • macOS release builds retry notarizing the app up to three times, 30 s and 60 s apart, instead of
    failing on the first dropped connection to Apple's notary service, which had stopped the macOS
    Intel build for both 5.1.0 and 5.1.1 (scripts/notarize-mac-app.js).

v5.1.1

Choose a tag to compare

@github-actions github-actions released this 01 Nov 01:51
658cd84

Release Notes

  • Vision runtime is included — no separate download needed.
  • Tesseract OCR is auto-installed or uses bundled tesseract.js fallback.
  • Use Download Base Models after install to enable AI features.
  • Windows: the Setup installer is the recommended download and updates itself. The -win-x64.zip runs without installing: extract it once to a short folder such as C:\StratoSort and start StratoSort Stack.exe; it does not auto-update.
  • Windows artifacts are Authenticode-signed.
  • macOS builds are Developer ID-signed, notarized by Apple, and stapled.
  • See the Install Guide for Windows, Mac & Linux — one download, no CLI.

[5.1.1] - 2026-11-01

Smaller downloads again: fixes the 5.1.0 builds, which packed the project folder into the app.

Fixed

  • Packaging: the app archive (app.asar) holds only the app again: the built dist folder,
    package.json, the production dependencies and src/shared. In 5.1.0 it also held the project's
    webpack build cache, documentation images, sources and tests (about 300 MB unpacked), which made
    every download 57 to 82 MB larger than 5.0.0. The release check now fails a build whose app.asar
    holds anything else.

v5.1.0

Choose a tag to compare

@github-actions github-actions released this 31 Oct 22:40
4f19505

Release Notes

  • Vision runtime is included — no separate download needed.
  • Tesseract OCR is auto-installed or uses bundled tesseract.js fallback.
  • Use Download Base Models after install to enable AI features.
  • Windows: the Setup installer is the recommended download and updates itself. The -win-x64.zip runs without installing: extract it once to a short folder such as C:\StratoSort and start StratoSort Stack.exe; it does not auto-update.
  • Windows artifacts are Authenticode-signed.
  • macOS builds are Developer ID-signed, notarized by Apple, and stapled.
  • See the Install Guide for Windows, Mac & Linux — one download, no CLI.

[5.1.0] - 2026-10-31

Faster, more predictable Windows startup and a zip instead of the self-extracting portable exe.

Known issues

  • Every download is 57 to 82 MB larger than 5.0.0 (the Windows x64 installer is 735 MB instead of
    671 MB) because the build packed the project's webpack build cache, documentation images, sources
    and tests into app.asar next to the app. The app never loads these files. Fixed in 5.1.1.

Security

  • minimatch 10 → 11.0.3 for GHSA-g3hv-75wg-m249 (denial of service via globparts amplification).

Changed

  • Windows: the self-extracting portable exe (StratoSortStack-5.0.0-win-x64.exe), which
    unpacked the whole app into %TEMP% on every start, is replaced by
    StratoSortStack-5.1.0-win-x64.zip. Extract it once and run StratoSort Stack.exe from the
    extracted folder; like the portable exe, it does not update itself. The Setup installer is still
    the recommended download.
  • The AI engine remembers the GPU backend that worked (gpu-backend-cache.json in the app's data
    folder) and tries it first on the next launch. An app update, a different GPU or graphics driver
    version, a change in the GPU runtimes node-llama-cpp finds (such as installing a CUDA toolkit), or
    14 days make it run the full backend search again. The optional embedding worker
    (STRATOSORT_ENABLE_EMBEDDING_WORKER) uses the same record and supported-backend filter.
  • The Windows x64 build no longer ships node-llama-cpp's arm64 prebuilt (about 11 MB).
  • Each build ships only its own SQLite (better-sqlite3) native binary instead of the ones for
    every platform: about 15 MB less on macOS, about 12 MB on Linux, and one 2 MB file less on
    Windows. In 5.1.0 these savings are outweighed by the known issue above.
  • On Windows and macOS the app no longer forces Chromium's enable-gpu-rasterization and
    enable-zero-copy switches, so Chromium's per-driver GPU blocklist applies. Linux keeps forcing
    them, as before.
  • After three GPU process exits in one session, software rendering now stays on for up to 3 days
    (.gpu-fallback in the app's data folder) instead of switching back on the next launch, which
    made launches alternate between slow and fast on a failing driver. Delete the file while the app
    is closed to retry hardware acceleration sooner.

Fixed

  • Windows startup: the window is shown at most 4 s after it is created even when its first frame is
    late, and at once when the GPU process exits before then; the AI engine waits for the first paint
    (up to 3 s); GPU backends whose runtime libraries are missing are skipped instead of test-loaded;
    the GPU is probed once per launch; and checks of the Documents Uncategorized folder give up
    after 3 s.
  • Starting the app while it is still shutting down (for example right after Quit) now opens it
    again once the shutdown has finished, instead of doing nothing.
  • Settings → Application → Check for updates on a copy that cannot update itself (the extracted
    Windows zip, a Microsoft Store install, or a Linux build other than the AppImage) now explains why
    instead of reporting "Failed to check for updates". With auto-updates disabled it now says so
    instead of "Checking for updates…".

v5.0.0

Choose a tag to compare

@github-actions github-actions released this 30 Oct 03:20
5b30017

Release Notes

  • Vision runtime is included — no separate download needed.
  • Tesseract OCR is auto-installed or uses bundled tesseract.js fallback.
  • Use Download Base Models after install to enable AI features.
  • Windows artifacts are Authenticode-signed.
  • See the Install Guide for Windows & Mac — one download, no CLI.

[5.0.0] - 2026-10-26

First public release of StratoSort Stack: source published on GitHub under the PolyForm
Noncommercial License 1.0.0, with signed installers on GitHub Releases.

Added

  • Atlas map, timeline, knowledge stats card, Downloads triage trust pack, MCP server kit, and
    repository history visualization (PRs #375–#407).

Changed

  • License: StratoSort Stack is now released under the PolyForm Noncommercial License 1.0.0.
    Personal and other noncommercial use is free with every feature; commercial use needs a paid key
    (see docs/COMMERCIAL.md).
  • No trial, no feature gate: the app runs the same with or without a license key. Settings →
    License only reports free, licensed, or version_not_covered; nothing is locked.
  • Product name: StratoSort Core is now StratoSort Stack. Existing StratoSort Core user data is
    migrated on first launch (src/main/core/userDataMigration.js). Source and releases live at
    iLevyTate/StratoSortStack.
  • Auto-updates on by default: installed (packaged) builds now check GitHub Releases for updates
    at startup and every 4 hours. Turn background checks off in Settings → Application → Background
    Update Checks, or disable the updater with STRATOSORT_ENABLE_AUTO_UPDATES=false. Development
    runs never check.

Fixed

  • July feature-burst follow-up: F-150..F-186 (typecheck, atomicMove destination lock, file-operation
    broadcasts, Atlas races, triage undo identity, overlay guards).
  • Organize-phase undo no longer re-indexes restored files as already-organized.
  • Smart Folder matching now uses description, keywords, and file-type rules.
  • Auto-update: macOS and Windows arm64 clients now find their channel file (latest-mac.yml /
    latest.yml are merged across architectures instead of renamed per arch).
  • Undo/redo: a failed or partial undo no longer updates the UI as if every file had moved.
  • Organize: interrupted batches resumed at launch now get undo entries and search-index updates for
    every replayed move; resume runs under the batch lock; batch-lock TTL no longer overlaps rollback.
  • Downloads watcher: error-driven restart works again, and organizing files out of Downloads no
    longer deletes their embeddings; disabling auto-organize mid-restart wins over the restart.
  • MCP: rejected initialize requests no longer leak a server per attempt; disabling MCP while a
    client holds an SSE stream no longer hangs the toggle; token storage survives keyring changes.
  • Analysis: timed-out PDF extractions release their buffers; corrupt DOCX runs OCR once instead of
    up to six times; oversized text files are refused even when the initial stat fails.
  • Settings: the ai block is validated on save/import (provider base URL scheme, cloud consent) and
    repaired on read; DOS device-namespace paths can no longer bypass smart-folder containment; CSV
    export uses RFC 4180 quoting with formula neutralisation.
  • Packaging: .env is ignored in packaged builds; only worker bundles are unpacked from the asar so
    integrity validation covers application code.

LGPL FFmpeg 7.1 (macOS)

Choose a tag to compare

@github-actions github-actions released this 29 Oct 20:03
a35b1d3

Self-hosted LGPL FFmpeg binaries for macOS.

Source

FFmpeg 7.1 from https://ffmpeg.org/releases/

Configure flags

--enable-version3 --disable-gpl --disable-nonfree
--disable-libx264 --disable-libx265 --disable-libfdk-aac
(full list: see .github/workflows/build-ffmpeg-lgpl.yml)

Architectures

  • ffmpeg-mac-x64.zip — Intel x86_64 (cross-compiled on macos-14,
    smoke-tested under Rosetta 2)
  • ffmpeg-mac-arm64.zip — Apple Silicon arm64 (native macos-14)

Complete corresponding source

ffmpeg-7.1-source.tar.xz attached to this
release is the exact upstream tarball these binaries were built
from (LGPL-3.0 §6 source offer).

License

LGPL-3.0-or-later. Build verification (--enable-gpl and
--enable-nonfree absent in ffmpeg -version output) is enforced
as a hard gate inside the build workflow; this release ships only
if the binary passed that check.

See assets/runtime/ffmpeg/NOTICE.md in the source repository for
attribution and source-availability terms.

Wiring into the app

None required when this release uses the default
ffmpeg-lgpl-latest tag: scripts/setup-ffmpeg-runtime.js
auto-resolves ffmpeg-mac-{x64,arm64}.zip from that tag and the
dist:mac:* scripts already run setup:ffmpeg-runtime. To pin a
versioned tag instead, set STRATOSORT_FFMPEG_TAG (or override
the full URL with STRATOSORT_FFMPEG_URL).