Verified against main at 61f42e6. Docs-only issue; each item is a factual mismatch between README.md and the implementation.
On-disk layout is wrong.README.md:38-45 documents <statedir>/cache/src-content/, cache/src-metadata/, and cache/dst-content/. The actual directories (internal/imgcache/cache.go:52-65) are cache/sources, cache/variants, cache/metadata. The SQL schema comments repeat the README's wrong paths (internal/database/schema/001_initial_schema.sql, lines 5, 12, 38). Fix the docs (renaming the directories would be a migration for no benefit).
The format list contradicts itself.README.md:59 says <format> is one of orig, png, jpeg, webp. README.md:88, in the signature spec, lists jpeg, png, webp, avif, gif, orig. The code (internal/imgcache/urlparser.go:241-258) accepts jpg, avif, gif, and original as well. Make one accurate list.
allow_http is undocumented and contradicts a stated guarantee.README.md:57 states "Images are only fetched from origins using TLS with valid certificates." config.example.yml:26 documents allow_http, and internal/httpfetcher/httpfetcher.go:300-303 honors it. The README should describe the guarantee as conditional and document the key.
Two Architecture claims overstate what exists.
README.md:49 — "In-process caching of request-to-output mappings targets 1-5k r/s". The field backing this is dead (filed separately). Either that issue implements it or this line must go.
README.md:128 — "Metrics: Prometheus" implies pixa-specific metrics. Only generic HTTP metrics exist, and only when metrics credentials are configured (filed separately).
Definition of done
Items 1-3 corrected in README.md; item 1 also corrected in the 001_initial_schema.sql comments.
Items 4a/4b either corrected or explicitly deferred with a link to the issue that will make them true — no claim left standing that the code does not support.
make fmt run so the markdown matches repo formatting (prettier, 4-space tabs, proseWrap: always); formatted output committed.
make check green.
Process note
Docs-only (plus SQL comments). Per repo policy this skips adversarial review and goes straight to merge-ready once make check is green — provided the change really touches nothing but comments and markdown.
Verified against `main` at `61f42e6`. Docs-only issue; each item is a factual mismatch between `README.md` and the implementation.
1. **On-disk layout is wrong.** `README.md:38-45` documents `<statedir>/cache/src-content/`, `cache/src-metadata/`, and `cache/dst-content/`. The actual directories (`internal/imgcache/cache.go:52-65`) are `cache/sources`, `cache/variants`, `cache/metadata`. The SQL schema comments repeat the README's wrong paths (`internal/database/schema/001_initial_schema.sql`, lines 5, 12, 38). Fix the docs (renaming the directories would be a migration for no benefit).
2. **The format list contradicts itself.** `README.md:59` says `<format>` is one of `orig`, `png`, `jpeg`, `webp`. `README.md:88`, in the signature spec, lists `jpeg, png, webp, avif, gif, orig`. The code (`internal/imgcache/urlparser.go:241-258`) accepts `jpg`, `avif`, `gif`, and `original` as well. Make one accurate list.
3. **`allow_http` is undocumented and contradicts a stated guarantee.** `README.md:57` states "Images are only fetched from origins using TLS with valid certificates." `config.example.yml:26` documents `allow_http`, and `internal/httpfetcher/httpfetcher.go:300-303` honors it. The README should describe the guarantee as conditional and document the key.
4. **Two Architecture claims overstate what exists.**
- `README.md:49` — "In-process caching of request-to-output mappings targets 1-5k r/s". The field backing this is dead (filed separately). Either that issue implements it or this line must go.
- `README.md:128` — "**Metrics**: Prometheus" implies pixa-specific metrics. Only generic HTTP metrics exist, and only when metrics credentials are configured (filed separately).
## Definition of done
1. Items 1-3 corrected in `README.md`; item 1 also corrected in the `001_initial_schema.sql` comments.
2. Items 4a/4b either corrected or explicitly deferred with a link to the issue that will make them true — no claim left standing that the code does not support.
3. `make fmt` run so the markdown matches repo formatting (prettier, 4-space tabs, `proseWrap: always`); formatted output committed.
4. `make check` green.
## Process note
Docs-only (plus SQL comments). Per repo policy this skips adversarial review and goes straight to `merge-ready` once `make check` is green — provided the change really touches nothing but comments and markdown.
clawbot
added this to the 1.0.0 milestone 2026-08-09 03:47:33 +02:00
README.md "Storage": name the directories the code uses (cache/sources, cache/variants, cache/metadata, from internal/imgcache/cache.go) and how files are named under each, as internal/imgcache/storage.go does it. The comments in internal/db/migrations/001_schema.sql that repeat the old paths get the same correction; no schema change.
One accurate list of output formats, used both under "Routes" and in the signature section: what internal/imgcache/urlparser.go accepts, jpg and original included.
"Images are only fetched from origins using TLS with valid certificates" becomes true as written: it holds unless allow_http is set, which the settings table already documents.
Item 4a is already true: since #70 pixa keeps content types in memory, and the README now says only that. No change unless the wording claims more.
Item 4b: "Metrics: Prometheus" says what exists on next (the generic HTTP metrics at /metrics, and when they are collected), nothing more.
make fmt. The issue's process note is out of date: docs-only changes get an independent review like any other unit.
Model: opus-5-5
Plan, checked against `next` at `021516e`:
- `README.md` "Storage": name the directories the code uses (`cache/sources`, `cache/variants`, `cache/metadata`, from `internal/imgcache/cache.go`) and how files are named under each, as `internal/imgcache/storage.go` does it. The comments in `internal/db/migrations/001_schema.sql` that repeat the old paths get the same correction; no schema change.
- One accurate list of output formats, used both under "Routes" and in the signature section: what `internal/imgcache/urlparser.go` accepts, `jpg` and `original` included.
- "Images are only fetched from origins using TLS with valid certificates" becomes true as written: it holds unless `allow_http` is set, which the settings table already documents.
- Item 4a is already true: since https://git.eeqj.de/sneak/pixa/issues/70 pixa keeps content types in memory, and the README now says only that. No change unless the wording claims more.
- Item 4b: "Metrics: Prometheus" says what exists on `next` (the generic HTTP metrics at `/metrics`, and when they are collected), nothing more.
- `make fmt`. The issue's process note is out of date: docs-only changes get an independent review like any other unit.
Model: opus-5-5
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Verified against
mainat61f42e6. Docs-only issue; each item is a factual mismatch betweenREADME.mdand the implementation.On-disk layout is wrong.
README.md:38-45documents<statedir>/cache/src-content/,cache/src-metadata/, andcache/dst-content/. The actual directories (internal/imgcache/cache.go:52-65) arecache/sources,cache/variants,cache/metadata. The SQL schema comments repeat the README's wrong paths (internal/database/schema/001_initial_schema.sql, lines 5, 12, 38). Fix the docs (renaming the directories would be a migration for no benefit).The format list contradicts itself.
README.md:59says<format>is one oforig,png,jpeg,webp.README.md:88, in the signature spec, listsjpeg, png, webp, avif, gif, orig. The code (internal/imgcache/urlparser.go:241-258) acceptsjpg,avif,gif, andoriginalas well. Make one accurate list.allow_httpis undocumented and contradicts a stated guarantee.README.md:57states "Images are only fetched from origins using TLS with valid certificates."config.example.yml:26documentsallow_http, andinternal/httpfetcher/httpfetcher.go:300-303honors it. The README should describe the guarantee as conditional and document the key.Two Architecture claims overstate what exists.
README.md:49— "In-process caching of request-to-output mappings targets 1-5k r/s". The field backing this is dead (filed separately). Either that issue implements it or this line must go.README.md:128— "Metrics: Prometheus" implies pixa-specific metrics. Only generic HTTP metrics exist, and only when metrics credentials are configured (filed separately).Definition of done
README.md; item 1 also corrected in the001_initial_schema.sqlcomments.make fmtrun so the markdown matches repo formatting (prettier, 4-space tabs,proseWrap: always); formatted output committed.make checkgreen.Process note
Docs-only (plus SQL comments). Per repo policy this skips adversarial review and goes straight to
merge-readyoncemake checkis green — provided the change really touches nothing but comments and markdown.Plan, checked against
nextat021516e:README.md"Storage": name the directories the code uses (cache/sources,cache/variants,cache/metadata, frominternal/imgcache/cache.go) and how files are named under each, asinternal/imgcache/storage.godoes it. The comments ininternal/db/migrations/001_schema.sqlthat repeat the old paths get the same correction; no schema change.internal/imgcache/urlparser.goaccepts,jpgandoriginalincluded.allow_httpis set, which the settings table already documents.next(the generic HTTP metrics at/metrics, and when they are collected), nothing more.make fmt. The issue's process note is out of date: docs-only changes get an independent review like any other unit.Model: opus-5-5
Done as planned above, in #172. Disclosures are in the PR body.
Model: opus-5-5
clawbot referenced this issue2026-10-04 06:31:14 +02:00