carlos / platform Public

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

Plain git — no account needed to clone.

Download

Download this file

1Reviewed at `fb26eebc`; I edited no files. Closed-branch refs were absent, and network restrictions prevented fetching them or reading release bodies/discussion metadata. Those external claims remain unverified.
2
31. **P1 — Docs-link derivation generates anchors the website never renders.**
4 **Spec:** [lines 176–180](/home/paulca/amadan.net/carlos/platform-changelog/docs/superpowers/specs/2026-10-06-platform-changelog-design.md:176).
5 **Evidence:** `git diff 4235e9fd^ 4235e9fd --unified=0 -- docs/site/cli.md` shows additions at lines 14–16, beneath `# The CLI`. The proposed rule produces `/docs/cli#the-cli`. `docsite.Load` includes that heading, but the website’s `markdown-it-anchor` configuration only anchors levels 2–4; rendering the heading produces `<h1>The CLI</h1>` without an ID. The platform gate accepts this link and the proposed website gate rejects it.
6 **Fix:** Derive fragments only for heading levels the renderer anchors; use the page URL for introductory content. Add this actual commit as a regression case.
7
82. **P2 — Squashed dependencies remain in a stacked branch’s “own commits.”**
9 **Spec:** [lines 145–146](/home/paulca/amadan.net/carlos/platform-changelog/docs/superpowers/specs/2026-10-06-platform-changelog-design.md:145).
10 **Evidence:** Squash `4d13aec3` names `feat/hostclaim-genselect` and records reviewed tip `d7621a29`. Running `git rev-list --count --no-merges 4d13aec3^..d7621a29` returns **22**. Seventeen are hostclaim-library commits already delivered by preceding squash `99084d7a`. Excluding their original tip, `47426cc1`, returns **5**. Squashing made the delivered work reachable under different commit IDs, so subtracting the mainline parent cannot remove it.
11 **Fix:** Account for previously landed dependencies using their original branch tips or explicit provenance. Test a stacked branch whose dependency was squash-merged first; verify counts, credit weighting, and discussion references.
12
133. **P1 — The committed-data gate permits public privacy violations.**
14 **Spec:** [lines 227–233](/home/paulca/amadan.net/carlos/platform-changelog/docs/superpowers/specs/2026-10-06-platform-changelog-design.md:227).
15 **Evidence:** The specified checks reject known identity addresses and agent-shaped addresses, but an ordinary address absent from `people.json` can remain in a discussion title or `notes.md`. Likewise, a Markdown link to the private `github.com/carlosframework/platform` repository passes: URL restrictions cover branch/discussion links, while the website check covers `/docs` links. These are concrete mutations the proposed gates would accept, despite the broader generator promise at lines 113–114.
16 **Fix:** Apply shared public-output validation in both generation and the committed-file gate. Check all text fields for email addresses and all rendered Markdown/HTML link destinations for prohibited private repositories. Include negative fixtures for both cases.
17
184. **P2 — Neither gate verifies release or change completeness.**
19 **Spec:** [lines 227–234](/home/paulca/amadan.net/carlos/platform-changelog/docs/superpowers/specs/2026-10-06-platform-changelog-design.md:227), with website checks at lines 221–223.
20 **Evidence:** Remove `v0.1.0` from otherwise valid JSON: ordering, uniqueness, links, and bullet mappings still pass—bullet mappings begin at `v0.19.0`. The website then checks section IDs only for the remaining releases. Similarly, an empty `changes` array for an older release passes. Both violate the fixed requirement to list every release and change.
21 **Fix:** Validate release membership and per-release commit sets against an independent inventory derived from Git. If CI must remain offline without tags, commit that inventory and add omission tests; checking only entries present in the output cannot establish completeness.
22
23**Verdict: accept with fixes.**