Adding a source

The UI walkthrough — what URLs we accept, how the parser is detected, and what to expect after the first sync.

Sources are added from the dashboard's Sources tab. Click Add source, paste a URL, and submit. Most of the time that's the entire workflow.

What URLs we accept #

  • GitHub repositoryhttps://github.com/<owner>/<repo>. Any public repo with tagged releases.
  • Vendor release-notes page — anything with a stable parser. See the catalog for the current list.
  • Anything else — routed through the AI fallback parser. Works reasonably well for well-formatted single-page changelogs; struggles with paginated or JS-rendered pages.

What the form tells you #

When you paste a URL, the modal shows which parser will handle it and its stability tier before you confirm. If the URL routes to the AI fallback, you'll see an explicit heads-up — that's expected for sources outside the catalog.

What happens on the first sync #

We immediately fetch the most recent few releases (the cap is intentionally small to keep the initial AI cost predictable) and queue diff analysis on each. The first summary usually appears within a minute or two; the rest trickle in over the next several minutes.

The hourly poll picks up new releases from there.

After the source is added #

  • The source appears under the Sources tab with its parser badge, release count, and last-sync timestamp.
  • Clicking through opens the source detail page with the release list and per-release summaries.
  • A manual sync button is available if you want to pull in something just-published without waiting for the next hourly tick.

Common gotchas #

  • The repo has no tagged releases. We rely on tags. If the repo only has commits on main, we have nothing to extract — ask the maintainer to cut tags, or watch the source via lockfiles instead.
  • The page requires JavaScript. We fetch raw HTML, no headless browser. If the changelog only renders client-side, the AI fallback won't see it.
  • Hitting the source limit. Hobbyist tier is 10 sources; deactivating unused sources frees slots without losing history.