Record the hub conformance state and what is open against the hub - #15
Conversation
There was a problem hiding this comment.
Pull request overview
Adds a durable in-repo record of the repository’s current fleet-hub conformance status and the meaning of open hub issues for this repository, so future audits can interpret results without relying on external tracker context.
Changes:
- Adds “Fleet conformance” to the repo state checklist.
- Introduces a new section documenting reconvergence status, hub-authored references, and four open hub issues with repo-specific implications.
- Extends the “Traps” section with guidance about handling defects in carried (byte-locked) files and hub
mainmoving during convergence work.
This repo reconverged with the fleet hub on 2026-08-03, and four findings are open at the hub afterwards. None is work this repo can do, and each changes what a fleet audit of this repo means, so a reader who runs one and sees two DEFECTs needs the reason in the repo rather than only in an issue tracker. The State table gains a fleet-conformance row. A new section records where conformance stands, links the hub registry entry and the audit report the hub authored, and lists the four open issues with what each means here rather than restating the issue. It also records that the live ruleset bypass is deliberate and stays. The owner is automatically an admin and holds that capability anyway, so the entry grants nothing new, and the payloads stopped declaring it because code should not be in the business of granting a bypass at all. That reasoning existed only in conversation, which is exactly the kind of thing a later audit misreads as drift. ## Two traps The carried-file trap gains its second half: a reviewer finding a real defect in a verbatim file is answered by declining locally and filing it at the hub, never by editing the file. That happened this session on a correct jq portability finding, and editing would have broken the fleet audit that governs the file. The new one is that the hub's `main` can promote while a convergence pull request is open, so ground truth moves underneath work that was correct when it started. It happened twice in one session, and the second time added drift the branch could not have known about. The defense is to re-run the audit against the hub ref actually carried and name that ref in the change. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The section claimed a byte-match against the canonical, linked the hub by `main`, and then two entries below warned that `main` moves under work that was correct when it started. A record that cannot say which ref it describes is the failure its own trap names. It now states hub `main` `3b802b9`, and both hub links are pinned to that ref rather than to `main`, so the claim stays checkable after the hub moves again. Re-measuring for the ref turned up one exception worth recording rather than rounding away. Every verbatim section, both ruleset payloads, and `.markdownlint-cli2.jsonc` match. `repo-config/configure.sh` is one commit behind, on the change that fixes the jq portability defect this repo reported, so the re-vendor closing that loop is still owed. Found by a Copilot review that read the claim against the trap two entries below it. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Suppressed comments (2)
TODO.md:112
- These hub links are pinned to an abbreviated commit SHA (
3b802b9). For long-term durability, prefer the full 40-character SHA so theblob/<ref>/...URLs cannot become ambiguous as the hub history grows.
[hub-registry]: https://github.com/ptr727/ProjectTemplate/blob/3b802b9/registry/repos.json
[hub-report]: https://github.com/ptr727/ProjectTemplate/blob/3b802b9/reports/blog/audit.md
TODO.md:52
- The hub commit ref is abbreviated (e.g.
3b802b9). GitHub accepts short SHAs only while they remain unambiguous; as the hub history grows, these references can become ambiguous and the links can break. Use the full 40-character commit SHA for a durable, future-proof record.
This issue also appears on line 111 of the same file.
**Measured against hub `main` `3b802b9`**, and the ref is named because `main` moves, which is the trap below. Every verbatim section of `AGENTS.md` and `GOVERNANCE.md` byte-matches, as do both ruleset payloads and `.markdownlint-cli2.jsonc`. The one exception is `repo-config/configure.sh`, one commit behind on [ProjectTemplate#553][pr-553], which fixes the jq portability defect this repo reported as [#549][issue-549] and is owed a re-vendor. Both links above are pinned to that same ref rather than to `main`, so this record stays checkable after the hub moves again.
GitHub resolves an abbreviated SHA only while it stays unique, and a `blob/<ref>/` link built on one breaks when the hub's history grows enough to collide. That is a record designed to expire, in the section whose whole point is staying checkable after the hub moves. All three references take the full 40 characters, the two link definitions and the ref named in the prose. Found by a suppressed low-confidence Copilot finding, the fourth this session that was correct. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
Both suppressed low-confidence findings on the last review were correct, and both are fixed in 3282482. They were the same point in two places: the hub links and the ref named in the prose were pinned to an abbreviated SHA. GitHub resolves a short SHA only while it stays unique, so a All three references now carry the full 40 characters: the two link definitions and the ref in the prose. That is the fourth suppressed finding this session that was right, against zero that were not. |
This repo reconverged with the fleet hub on 2026-08-03, and four findings are open at the hub afterwards. None of them is work this repo can do, and each changes what a fleet audit of this repo means, so a reader who runs one and sees two DEFECTs needs the reason in the repo rather than only in an issue tracker on another one.
What the new section records
Where conformance stands, with links to the hub registry entry and the audit report the hub authored, then the four open issues with what each means here rather than a restatement of the issue:
Fleet Bootstrapsection correctly cannot pass the new template-reference checkIt also records that the live ruleset bypass is deliberate and stays. The owner is automatically an admin and holds that capability anyway, so the entry grants nothing new, and the payloads stopped declaring it because code should not be in the business of granting a bypass at all. That reasoning existed only in conversation, which is exactly the kind of thing a later audit misreads as drift and a later agent tries to helpfully "fix".
Two traps
The carried-file trap gains its second half: a reviewer finding a real defect in a verbatim file is answered by declining locally and filing it at the hub, never by editing the file. That happened this session on a correct jq portability finding (ProjectTemplate#549, since fixed upstream), where editing would have broken the fleet audit that governs the file.
The new one: the hub's
maincan promote while a convergence pull request is open, so ground truth moves underneath work that was correct when it started. It happened twice in one session, and the second time added drift the branch could not have known about. The defense is to re-run the audit against the hub ref actually carried and name that ref in the change, or the convergence claim quietly ages into a false one.Verification
markdownlint, editorconfig-checker, and the prose gate are clean, and every new reference link resolves to a definition.
🤖 Generated with Claude Code