0.8.1 #9
AHS12
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
What's Changed
[0.8.1] - 2026-09-04
A correctness pass over notifications and run artifacts: every webhook
payload now identifies the task it came from, notifications report the real
trigger, and the declared-but-dead
capture_outputsetting is gone. Darkthemes get a precision pass of their own: CRT Dark replaces Gradient Dark,
and both dark themes now paint every page consistently.
Changed
with scanlines and an accent-tinted ambient wash (pick the green accent
for a classic terminal). Users who had Gradient Dark are migrated
automatically. CRT Dark's scanlines are drawn as faint light lines so the
texture is actually visible on a near-black screen.
Khaki default — and High Contrast is now available in light mode too
(near-black text on pure white with strong dark borders, mirroring the
dark variant). Variants survive mode switches via the quick-toggle.
theme tokens instead of hardcoded grays — previously only the Dashboard
did. High Contrast (light or dark) and CRT Dark now look identical in
quality on every page and dialog: true-black panels, light borders,
properly bright text. Light themes are visually unchanged.
Fixed
the desktop toast — "deploy — Failed • Trigger: schedule • Duration:
5.1s" — instead of a bare "Trigger: … • Duration: …" that gave no way to
tell which task ran.
callback now receives the actual trigger (manual, schedule, cli, system)
through the executor's group result.
the daemon's local timezone. Stored windows are UTC while the running
engine fires local ticks, so on a UTC+6 machine a daily 9:00 schedule that
fired while the PC was off reported "0 caught up" at boot and silently
dropped the missed run.
Slack-style payloads, so the editor now offers a single "Slack / Pumble"
option that saves the canonical "slack" format; existing YAML with
"pumble" loads as-is and re-exports as "slack".
global runs folder (
<data_dir>/runs, configurable viarun_artifacts_dir) unless a task setsoutput_dir. They previously wentto the task's working directory, leaving the configured runs root — and
the "run artifacts" part of backups — empty.
Removed
capture_outputtask field. It had no behavioral effect (output isalways capped and stored on the run row). Existing YAML files keep
parsing; the field is dropped the next time the task is saved.
[0.8.0] - 2026-09-04
Backup & restore, plus a proper home for a growing vault. Every archive is an
AES-256-encrypted zip that captures the complete Heka state — a consistent
SQLite snapshot, the vault key, the canonical task YAML files, and the user
config — so a restore brings back exactly what was there, secrets included.
Added
year), daily, weekly, or monthly at a local time — with missed-run
catch-up: if Heka was closed at the scheduled time, the missed backup
runs once at startup.
the data directory) and an S3-compatible remote destination — AWS S3,
Cloudflare R2, Backblaze B2, MinIO — with its own keep-latest pruning and
a one-click "Test connection" that exercises the bucket end to end.
BACKUP_S3_ACCESS_KEY_ID,BACKUP_S3_SECRET_ACCESS_KEY), same write-only discipline as every othersecret.
(
BACKUP_PASSPHRASE) so scheduled backups run unattended — with a loudwarning that losing it means losing the backups, since restore on a new
machine asks for it.
status, size, per-destination outcomes), and desktop notifications when a
scheduled backup fails.
preview exactly what it contains (created when, which Heka version, task
counts), choose optional parts (config.yaml, run artifacts), and let the
app stop the daemon, restore, and prompt to start it again. A safety
backup of the previous state is written automatically before anything is
overwritten; archives from newer Heka versions are refused, and checksums
guard against truncated or tampered archives.
heka backup create|status|history|testplusheka restorein the CLI./secrets, linked from Settings →Secrets) built for large vaults: search, sort, "unused only" filter,
per-key usage tracking (which tasks reference
${KEY}), bulk delete withconfirmation, pagination, and per-key value replacement. Keys stay the
only thing ever displayed — values remain write-only.
Changed
auto-backup runs once on daemon start, on wake from sleep, on the periodic
reconcile cadence, and from the "Reconcile now" button — not only via the
backup loop's own tick. A reconciled backup is labeled "catch-up" in the
job history, and the missed window is recorded in the system log
(Logs → System), alongside new events for manual starts and schedule
arming.
TimeField) instead of the native browser time dropdown, which overflowed
the panel.
Fixed
was caught up. Reconcile closed the miss window without re-deriving
next_run_at, and the startup path read a cron entry that only carries avalue once the engine starts — so a daily 9:00 schedule kept showing
yesterday's 9:00 as next. Both paths now compute the next occurrence
directly from the cron spec.
keys, Use HTTPS), so it tests exactly what is on screen. Enabling the S3
destination also defaults to HTTPS — plain HTTP is 301-redirected by
Cloudflare and friends, which previously surfaced as a wall of HTML; the
redirect now produces a clear, actionable error instead.
Full Changelog: 0.7.7...0.8.1
This discussion was created from the release 0.8.1.
All reactions