v1.6.99 — Postgres timestamptz round-trip
A small patch shipped two days before v1.6.100. The release window between v1.6.99 and v1.6.100 was tight on purpose — v1.6.99 unblocks a Postgres-only failure mode that was breaking the QA retest pipeline, and v1.6.100 was already cooking with the FIFO and return-wizard work.
What shipped
- fix
ToStringformatstime.Timeas RFC3339 for PGtimestamptzround-trip. The helper converts arbitrary scanned values into strings for the response JSON; pre-fix, when atimestamptzcolumn came back frompgxas atime.Time,ToStringfell through to Go’s default%vformatter and produced a non-RFC3339 string the frontend couldn’t parse.
Why it matters
On the SQLite backend (desktop), timestamp columns return as strings already, so the helper’s default branch hit fine and the bug never surfaced. On Postgres (cloud), the same column comes back as time.Time, and the formatter mismatch broke any handler that did:
{ "createdAt": ToString(row["created_at"]) }Symptoms in production: dates rendered as 2026-05-02 14:40:24 +0000 UTC rather than 2026-05-02T14:40:24Z, and frontend filters that expected ISO dates failed silently. The fix uses t.Format(time.RFC3339) for any time.Time value before falling through to the default.
Upgrading
Auto-updates on next launch. No manual steps. No new migrations.
Related
- v1.6.100 — the next release, where most of the user-visible work lives
- v1.6.98 — the earlier PG bridge that added missing JE columns
- Release notes index — full version list