Skip to content

v0.2.1 — documentation that matches the code

Latest

Choose a tag to compare

@sredevopsorgagents sredevopsorgagents released this 17 Oct 07:52
c294bbe

Every environment variable, verified

docs/configuration.md is new: every variable the stack reads, its default, and what it changes — including the ones that were documented nowhere before: the Last.fm rate limiter (LASTFM_MAX_RPS, LASTFM_BURST), JELLYFIN_USER_ID, ARCHIVE_SIMILAR_FRESHNESS_TTL_S, and METAEDIT_BROWSE_SCAN_CAP. Every row was checked against config.py, the compose file and the test conftest, because a configuration table that has drifted is worse than none: it gets trusted and copied.

The API reference now lists every endpoint

The harvest endpoints (POST /api/items/{id}/harvest, and the batch POST /api/harvest that streams one event per item) were implemented, mounted and shipping — and absent from a page that opens with "Every endpoint metaedit serves." They are documented now, with the load-bearing rule stated: harvest spends Last.fm requests and writes to the archive, but never writes to Jellyfin.

A design doc that no longer says reindex is missing

The phase-3 design doc still claimed metaedit reindex raises NotImplementedError — the kind of sentence a reader cannot distrust, because it sounds authoritative. Reindex has shipped since 0.1.0. The status is corrected; the document remains as the contract the implementation must keep satisfying, including the recorded --since deviation.

Small repairs that were quietly wrong

  • The compose default for the Last.fm user agent said metaedit/0.1.0 while the app default said 0.2.0. Both now say 0.2.1.
  • The development layout omitted the service/ package, where the orchestration actually lives.
  • docs/development.md documents all four pnpm scripts, and notes that integration tests skip cleanly without Postgres — an ordinary uv run pytest on a fresh checkout reports skips, not failures.
  • The README's requirements are a table; the feature list covers narrowing and bulk harvest; the doc index gains Configuration and Changelog rows.

No code behaviour changes. The metadata write contract — ADR 0003 (full overwrite), 0004 (snapshot before every write), 0007 (optimistic concurrency) — is untouched.