Skip to content

0.1.16: delays up to 1 hour, Twitch events and alerts, smart lights, two copies side by side - #74

Merged
Soulhackzlol merged 4 commits into
mainfrom
feat/longer-delay
Oct 11, 2026
Merged

Soulhackzlol merged 4 commits into
mainfrom
feat/longer-delay

Conversation

@Soulhackzlol

Copy link
Copy Markdown
Owner

0.1.16

Delays up to 1 hour, Twitch events and alerts, smart lights, and two InstantClones side by side. The full list is in CHANGELOG.md.

What's in it

  • Delays up to 1 hour. The buffer decides how much fits, from one estimate used everywhere, and every way in (dashboard, dock, HTTP API, hotkeys, MIDI, integrations) refuses a delay the buffer can't hold.
  • Updates. A new build under the same version is spotted by SHA-256, checks run on their own with a quiet tray notice, and About lists what an update brings.
  • Two InstantClones side by side. One running copy per setup, per-copy logins, startup entries, buffer files and ports, and a tray colour you pick.
  • Integrations. Twitch events (follows, subs, gifts, bits, raids, rewards, ad breaks), an alerts page with seven themes, sounds and uploads, smart lights and plugs on the LAN, more OBS steps and events, and a drag and drop builder.
  • Dashboard and dock. Destinations say why they fail, the OBS tab shows the real registration state, the dock is reworked, and the Logs tab, tab switching, toasts and sliders are polished.
  • Fixes from the release reviews, including a template character that closed the app, an overlay named "Reset" wiping every overlay, short stream keys reaching the log, and console windows flashing on Windows.

Tested

Windows Linux (Docker, Rust 1.99)
Format and lint clean on 1.96 and 1.99 clean
Rust tests 873 passed 862 passed
Soak and real-network tests (--ignored) 5 of 5
Dashboard script tests 55 passed
End to end (scripts/e2e.sh) 6 of 6 scenarios
Headless browser sweep 28 screens, 70 tab switches, 8 Logs steps, 0 problems

Checked by hand: the tray (colour on Save, Open dashboard), the dock inside OBS, an alert theme inside OBS, and MIDI.

Not tested

  • Smart lights against real devices. They are tested against fake devices that speak each brand's protocol, as in 0.1.15.

Going back to 0.1.15

It can't read integrations that use something new here (a Smart light step, the new OBS steps or triggers, Twitch events), and its next save removes them. Export them as recipes first.

…o copies side by side

Delay
- The delay goes up to 1 hour. The buffer decides how much of it fits, from
  one estimate the app works out (real buffer file, bitrate averaged over
  10 s and held at its recent peak, measured afresh for each stream).
- Every way in refuses a delay the buffer can't hold: dashboard, dock, HTTP
  API, hotkeys, MIDI and the integrations' "Set the delay" step.
- A delay switched on while the buffer fills starts by itself.

Updates
- A new build published under the same version is spotted by SHA-256.
- Automatic checks with a quiet tray notice, and what an update brings.
- Self-update shuts down cleanly first and comes back with a password on.

Two InstantClones side by side
- One running copy per setup (instance lock): a second launch opens the
  running dashboard instead of moving its ports.
- Per-copy logins, startup entries, buffer files and port reservations.
- A copy never re-registers OBS over another running copy.
- Tray icon colour is a setting (blue by default); two copies on the same
  colour still never match while both run.

Integrations
- Twitch EventSub: follows, subs, gifts, bits, raids, rewards, ad breaks.
- Alerts page: seven themes, ten sounds, uploads, per-alert editing.
- Smart lights and plugs on the LAN: WiZ, LIFX, Govee, Yeelight, Kasa,
  Shelly, WLED.
- More OBS steps and events, Check OBS, drafts, drag and drop builder.
- Shared recipes carry their alerts; nothing in one can load from the web.

Dashboard and dock
- Destinations say why they fail, with Retry now and Details.
- OBS tab shows the real registration state; the dock is reworked.
- Logs tab, tab switching, toasts, sliders and the colour picker polished.

Fixes found in the release reviews
- A non-ASCII character after a template name closed the app.
- An overlay named "Reset" wiped every overlay; a failed rename deleted it.
- Short stream keys were written to the log unredacted.
- Saving a destination could empty OBS's stream settings.
- Windows: opening the dashboard and making the desktop shortcut no longer
  flash a console window, and neither does the test binary.
- web/tests loads the shipped dashboard, dock and alerts scripts into
  Node's own test runner, with no packages to install. CI runs them on
  Linux.
- scripts/check.mjs runs what CI runs (format, lint, Rust tests, page
  tests) in one terminal and names each test as it passes. --only runs the
  named checks, --also adds a module's checks, --report saves the results.
- CONTRIBUTING points at it instead of a stale test count.
Comment thread src/diagnostics.rs Fixed
CodeQL read an assertion message that prints a variable called `secret` as a secret written to a log. The values are made-up fixture strings; the name now says so.
@Soulhackzlol
Soulhackzlol merged commit e3f447a into main Oct 11, 2026
6 checks passed
@Soulhackzlol
Soulhackzlol deleted the feat/longer-delay branch October 11, 2026 15:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants