// changelog

Changelog

All notable changes to Teasynaer, newest first.

All notable changes to Teasynaer are documented here.

The format follows Keep a Changelog, and Teasynaer aims to follow Semantic Versioning — see docs/RELEASING.md for how versions map to a self-hosted image rather than a published library.

Unreleased

Added

  • Client screen capture in the Runner: on-demand screenshots and a toggled screen recording (getDisplayMedia/MediaRecorder), merged into the on-fail evidence bundle and bounded by QA_MAX_RECORDING_MB on both client and server.
  • Health signals: /api/readyz (Postgres + evidence-store readiness) and /api/livez (liveness), built on a pure, unit-tested aggregation core; /api/health runs the same combined check.
  • Backup/restore tooling: scripts/backup.sh + scripts/restore.sh snapshot and restore Postgres and the evidence store as a consistent pair, with a runbook and restore drill (docs/runbooks/backup-restore.md).
  • Release process: this changelog, docs/RELEASING.md, and a tag-triggered release workflow that builds the image and generates an SPDX SBOM (syft).

0.1.0 — 2026-07-02

First tagged pre-release — the Milestone 1 manual-run core plus a baseline security floor.

Added

  • Manual run flow: Home → Package Picker → Runner (one case-card at a time, pass/fail/skip via keys and swipe) → Run Summary, with resume-on-reload computed from Postgres.
  • On-fail evidence: an always-on capture buffer (steps/network/console/environment) promoted to a persisted, redacted evidence bundle the moment a case fails, viewable in the On-Fail panel.
  • "Re-run the N fails" from a run summary; ⌘K command palette as the primary nav; logout.
  • Issue-tracker seam with five adapters — huly · github · gitlab · jira · webhook — behind a hardened interface (timeouts, bounded retries, secrets never logged) with an SSRF guard on the outbound request.
  • Baseline security: local-admin auth (scrypt + DB-backed sessions), login rate-limit/lockout, forced first-login password change, CSRF (SameSite + origin checks), session hardening (idle + absolute timeout, revocation, reaper), and structured audit events for privileged actions.
  • Self-host packaging: multi-stage Dockerfile (standalone output) + docker-compose.yml (app + Postgres 16), migrations run at container start.