timescale.info
Sign inSign up

How OpenChronology was built

Every merged pull request of openchronology/timeline-app, its first week of commits and its releases; and before them the 2020 PureScript editor, from snapshots of its deleted repositories in the Wayback Machine. Written to this server through the HTTP API.

327 moments · 2020-03-09T00:15:08Z CE – 2026-11-02T20:11:21Z CE · by @athan · @athan

#66 · Fix: writers couldn't open API-created server timelines

  • timeline-app
  • pull request
  • api

`GET /api/timelines/ ` reports settings a timeline never had as `null`. Timelines created through the API store no timeline tags (`tags` is NULL). That covers bench seeds, API ingestion, and the new syslog receiver. When a **writer** opened one, the editor built its `RemoteWorkspace` with `tags: null`, and the index constructor called `validateTags(null)`. That failed with the misleading toast "Use at most 40 tags." and left the page on "Loading timeline…". - Anonymous viewers weren't affected, because they don't build a writable workspace. - Timelines saved from the editor weren't affected either, because they store an empty tag list. **Fix:** `TimelineIndex` treats `null` `tags`, `assets` and `plugins` as absent, the way it already treated `presentation`. **Test:** `test/remote-cache.test.mjs` builds a workspace from metadata with null settings. It fails before the fix ("Use at most 40 tags.") and passes after. All unit tests pass (200). Found while building the UI benchmarks for #51.

Sources

Open #66 · Fix: writers couldn't open API-created server timelines in the timeline