carlos / platform Public

Clone
git clone https://amadan.net/carlos/platform

Plain git — no account needed to clone.

Download

Download this file

1# đŸ¤– Review brief: the platform changelog, code
2
3You are the independent reviewer of a finished build. The author is
4Claude. Do not edit any file.
5
6## What to read
7
81. The spec, rev 2: `docs/superpowers/specs/2026-10-06-platform-changelog-design.md`,
9 and the earlier findings `CODEX-FINDINGS-CHANGELOG-1.md` (all four were
10 taken; check the fixes hold).
112. The platform branch: `git diff origin/main...platform-changelog` in
12 `/home/paulca/amadan.net/carlos/platform-changelog`, excluding the
13 generated `docs/site/changelog.json` (read it as output, not code).
14 Code is `internal/changelog/`, `cmd/changelog/`, the `Line` and
15 `Parse` additions in `internal/docsite/docsite.go`, `docs/site/people.json`,
16 `docs/site/changelog-links.json`, and README step 10.
173. The website: commit `59b9cf9` on branch `platform-changelog` in
18 `/home/paulca/github.com/carlosframework/website-changelog`
19 (`git show 59b9cf9 -- . ':!src/_data/docschangelog.json' ':!src/docs/cli.md'`).
20 `src/changelog.njk` renders the page; `hack/sync-docs.mjs` vendors
21 the data; `hack/check-docs.mjs` gates the build.
22
23## Fixed: do not reopen
24
25The spec's four rulings; that change lines are verbatim records; that the
26copy is in a separate human review (do not review wording).
27
28## What to look for
29
301. **Wrong output on real history.** The generator has been run over all
31 28 tags. Pick changes in `docs/site/changelog.json` and check them
32 against `git log` and `git for-each-ref refs/amadan/closed` (fetch
33 with `git fetch origin '+refs/amadan/closed/*:refs/amadan/closed/*'`
34 if missing): the range a release claims, the own commits a change
35 counts, credit, discussions, docs links. Name the commit.
362. **Public safety.** Anything that could put an email address, a
37 private repo link or unescaped markup on the public page: the
38 generator, `CheckPublic`/`Redact`, the gate, and the template
39 (Nunjucks autoescape, the `notesMd` filters, `| safe`).
403. **Gate holes.** A committed file that is wrong and still passes
41 `go test ./internal/changelog/` and `npm run check`.
424. **Robustness at release time.** What breaks when the next release is
43 cut and step 10 is followed: a new tag, a new contributor, a bullet
44 with no bold lead, a release with no first-parent commits, gh or
45 amadan failing.
465. **Code quality** where it would mislead the next person: dead code,
47 names that say the wrong thing, tests that pass for the wrong reason.
48
49Run `go test ./internal/changelog/ ./internal/docsite/` (set
50`GOCACHE` to a writable directory) if you can; say if you could not.
51
52## Output
53
54A numbered list, each with severity (P1 publishes something wrong or
55breaks the page or gate; P2 misleading or fragile; P3 nit), file:line,
56evidence, and a proposed fix. Then one line: accept, accept with fixes,
57or reject.
58