Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,3 +63,22 @@ jobs:

- name: Verify the built artifact runs
run: python relay.pyz version

gui-smoke:
name: GUI smoke / ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macos-latest]
env:
QT_QPA_PLATFORM: offscreen
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install GUI extra
run: python -m pip install ".[gui]"
- name: Run GUI smoke tests
run: python -m unittest tests.test_g1_gui -v
32 changes: 30 additions & 2 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,34 @@
# Relay 0.5.1 release notes
# Relay 0.6.0 release notes

**This is the first published release.** No GitHub release existed before, so
Relay 0.6.0 is the G0 foundation release for the desktop GUI roadmap.

## Added

- Versioned SQLite migration with pre-migration backups.
- Committed Relay 0.5.0 empty and populated database fixtures.
- Job history metadata for titles, previews, source labels, replayability, and future Schedule links.
- `/health` compatibility fields for daemon version, API versions, schema revision, minimum GUI version, and Relay Home identity.
- Read-only `/v1/jobs` and `/v1/jobs/{job_id}` APIs with filtering, search, and cursor pagination.
- Compatibility decision helper and built-in Agent registry interface.

## Compatibility

- Existing CLI and daemon endpoints remain available.
- Existing Relay 0.5.x databases are upgraded without deleting Job history.
- Schedule tables and the desktop GUI remain planned for later releases.

## Verification

The full test suite and Ruff checks pass locally. GitHub Actions must verify
the same result on Windows, Ubuntu, and macOS across Python 3.11–3.13 before
the v0.6.0 tag is published.

---

## Historical v0.5.1 notes

The following notes are retained from the v0.5.1 release for historical
reference. No GitHub release existed before v0.5.1, so
everything documented for 0.5.0 — automatic cleanup, Linux/macOS installers,
`relay add-agent`, the English `--help` overhaul — ships here as well.

Expand Down
27 changes: 27 additions & 0 deletions docs/DATABASE_MIGRATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Relay database migration

Relay stores its job history in the SQLite database under `RELAY_HOME`.
Database schema changes use SQLite `PRAGMA user_version`.

## Upgrade behavior

- A new database is created at the current schema version.
- A legacy database is backed up before migration.
- Migration runs in a transaction.
- A migration failure rolls back and stops startup.
- A database newer than the installed Relay is rejected.
- Downgrade is not supported; restore the migration backup if needed.

The G0 migration upgrades the Relay 0.5.0 schema to schema version 1 and adds
Job history metadata used by the read API. Schedule tables are added in the
Schedule core release, not in G0.

Backups are written beside the database with a name like:

```text
relay.db.backup-20260723T120000Z.db
```

The committed fixtures used by the migration tests were generated from the
Relay 0.5.0 schema at commit `4b7d710` using
`tests/fixture_builders/build_relay_0_5_0_fixtures.py`.
Loading
Loading