• bvandeusen released this 2026-05-26 20:15:36 -04:00 | 573 commits to dev since this release

    Four commits. PR #27 → main, merge commit 4e82208, pinned head 85b640f verified as second parent.

    Highlights

    Extension CORS unblock (c7001f4)

    /api/credentials POSTs from the Firefox extension hit a generic NetworkError on first use because the backend had zero CORS handling — the browser's preflight OPTIONS request (triggered by the X-Extension-Key header) 405'd before the actual request could run. Two new app-level hooks:

    • before_request short-circuits OPTIONS from moz-extension:// / chrome-extension:// origins with 204
    • after_request stamps Access-Control-Allow-Origin + Methods + Headers (Content-Type, X-Extension-Key) + Max-Age 86400 on responses to extension-origin requests

    Whitelist intentionally narrow — normal browser usage stays no-CORS. Five integration tests pin the contract.

    UI gap closures (85b640f, f827612)

    • All 12 views' root <v-container> had py-6, pushing first content well below where TopNav's fade-out gradient lands. Switched to pt-2 pb-6 (8px top, 24px bottom unchanged). PlaceholderView kept pt-3 pb-8.
    • ArtistHeader's top: 64px left a visible gap (TopNav is actually ~48px tall). Now top: 48px so the two bars sit flush. Added a right-side spacer cell so the tab strip is geometrically centered (1fr | auto | 1fr).

    CI workflow cleanup (3f0153c)

    • ci.yml: dropped pull_request: trigger (push-on-dev already covered the same code).
    • build.yml: dropped dev from triggers (operator doesn't use :dev), added tag-push trigger + Determine-tag logic for immutable per-version images.

    This is the first release that publishes a versioned :v26.05.26.5 image alongside the floating :latest. Going forward, every release tag will produce an immutable image you can roll back to.

    Per hotfix cycle: 5 CI runs → 3-4.

    Deploy

    Pull :latest, force-update services. After deploy:

    • Firefox extension Test connection should return green "Connected" instead of NetworkError
    • Top-of-page gaps should be tight (~8px) instead of the previous ~24-32px
    • Artist detail header should sit flush against the main nav with centered tabs
    • Registry should show both :latest and :v26.05.26.5 tags
    Downloads