Resync Carried Instruction Set, Config, and README Against the Hub - #49
Conversation
Phase 8 (fleet-wide Skills rollout) batch 2 of ptr727/ProjectTemplate's hub-docs-to-skills-conversion project. Re-vendors 13 stale/absent verbatim AGENTS.md/GOVERNANCE.md sections against hub main, plus the whole-file config carries: .markdownlint-cli2.jsonc, repo-config/develop.json, repo-config/ main.json, repo-config/README.md. Re-vendors the github-release job in build-release-task.yml (declared verbatimJobs contract): action SHA pin bumps and the current one-sentence-per-line comment style, keeping this repo's own target-specific needs: list (console/docker only, no nuget/pypi) per WORKFLOW.md's per-target subsetting rule. Adds host-tools.json (genuinely absent, an empty declaration since this repo needs no host tool beyond the fleet baseline). Retires the local repo-config/configure.sh copy per spec/divergences.json's 'retire' disposition (hub-hosted, not carried), fixing its two remaining references in AUDIT.md and repo-config/README.md in the same pass. Fixes AUDIT.md's ruleset-comparison snippet to stop diffing bypass_actors, the same gap caught on Financial-Modeling#111 in this batch, applied proactively here. README: adds the required 3rd Party Tools section (19 dependencies and CI/dev tools, alphabetized, matched to the shared catalog where one exists); renames commit-link to commits-link and docker-link to docker-hub-link (shared destination names); renames history-link and license-link to bare history/license (in-repo paths carry no suffix); renames the Internal reference group to Distribution and sorts External by reference name, per spec/readme-structure.md. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Self-caught before review: the reference-definition groups landed as Shields, Repo, Distribution, External. spec/readme-structure.md declares Sections, Shields, Distribution, Repo, External - Distribution before Repo. Swapped. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@## develop #49 +/- ##
========================================
Coverage 43.37% 43.37% ========================================
Files 28 28 Lines 3896 3896 Branches 306 306 ========================================
Hits 1690 1690 Misses 2154 2154 Partials 52 52 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR resyncs PhotoCleaner’s carried governance/configuration documents and repo configuration payloads against the fleet hub, updates README reference-link structure and adds a 3rd-party tools inventory, removes the locally carried configure.sh in favor of hub-hosted tooling, and adjusts a reusable release workflow job to match the latest hub-vendored style/pins.
Changes:
- Re-vendor carried instruction/docs content (AGENTS/GOVERNANCE/AUDIT) and repo-config ruleset payloads to reflect hub-managed vs unmanaged fields (notably excluding
bypass_actorsfrom comparison/payload). - Update
README.mdreference definitions and add a “3rd Party Tools” section with link catalog entries. - Remove local
repo-config/configure.sh, addhost-tools.json, and resync workflow job comments/action pins inbuild-release-task.yml.
Reviewed changes
Copilot reviewed 10 out of 11 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| repo-config/README.md | Documents the managed ruleset payload subset and hub-hosted configure.sh usage. |
| repo-config/main.json | Removes bypass_actors from the carried ruleset payload. |
| repo-config/develop.json | Removes bypass_actors from the carried ruleset payload. |
| repo-config/configure.sh | Deletes the locally carried configuration script (now hub-hosted). |
| README.md | Refactors reference links and adds a 3rd-party tools inventory table and link definitions. |
| host-tools.json | Adds repo-specific host-tool overlay (empty, with explanatory note). |
| GOVERNANCE.md | Resyncs governance text and routes detailed rules to hub skills where applicable. |
| AUDIT.md | Updates audit guidance/snippets to exclude bypass_actors from ruleset diffs and points to hub tooling. |
| AGENTS.md | Adds the Fleet Bootstrap section and updates routing table entries to skill-packaged rules. |
| .markdownlint-cli2.jsonc | Minor comment capitalization adjustments to match style. |
| .github/workflows/build-release-task.yml | Re-vendors the github-release job pins/comments and release artifact handling notes. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Three real findings: - repo-config/README.md and AUDIT.md's configure.sh examples read as runnable without a path or a hub checkout in view. Made every example invocation explicit (repo-config/configure.sh), matching how it is actually run. - build-release-task.yml's re-vendored github-release job carried the hub catalog snippet's actions/checkout@v7.0.0 pin, while this repo's other workflows are already on the Dependabot-bumped v7.0.1. Aligned to the SHA already verified elsewhere in this repo, not a new pin. Also fixed three pre-existing prose_lint semicolon violations on lines this PR's own diff touches (AUDIT.md), since CI's diff-scoped prose gate lints any line a commit changes, not just the ones a fix targets. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
ptr727
commented
Aug 14, 2026
The actions/checkout pin finding on build-release-task.yml:142 auto-resolved (by the Copilot bot itself, confirmed via GraphQL resolvedBy) before I could reply on the thread. For the record: fixed in df5e50e, aligned to the v7.0.1 SHA already verified elsewhere in this repo (build-docker-task.yml, build-executable-task.yml, get-version-task.yml), rather than a new pin. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 11 changed files in this pull request and generated no new comments.
Suppressed comments (1)
repo-config/README.md:5
- This line says
configure.shpreserves and reportsbypass_actors, but the next bullet clarifies the script is hub-hosted and the local copy is retired. Using the full hub path here avoids implying a localconfigure.shexists in this repo.
- `main.json` plus one `develop` variant: the branch rulesets as the managed part of the writable API subset (`name`, `target`, `enforcement`, `conditions`, `rules`). The `develop` payload is `develop.json` (`release` repos) or `operational/develop.json` (`operational` repos). These are the canonical expected payloads that the self-audit (`AUDIT.md`) diffs the live rulesets against. `bypass_actors` is writable and deliberately unmanaged, so no payload declares one and nothing diffs it: who may bypass a ruleset is a human decision taken in the UI, which `configure.sh` preserves on `apply` and reports without asserting on `check`.
The bypass_actors bullet's own configure.sh mention was missed in the round-1 sweep. repo-config/configure.sh, matching every other mention in this file now. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
ptr727
commented
Aug 14, 2026
Suppressed finding (repo-config/README.md:5, the bypass_actors bullet's configure.sh mention): fixed in 3439746. Same class as round 1, this one mention was missed in the sweep. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 11 changed files in this pull request and generated no new comments.
Suppressed comments (1)
.github/workflows/build-release-task.yml:188
- This change pins softprops/action-gh-release to v3.0.1, which is a downgrade from the previous v3.0.2 pin. The PR description calls out "action SHA pin bumps", so please confirm this is intentional; otherwise it should remain at v3.0.2 (or be bumped to a newer version).
uses: softprops/action-gh-release@718ea10b132b3b2eba29c1007bb80653f286566b # v3.0.1
The github-release job re-vendor carried the hub catalog snippet's softprops/action-gh-release@v3.0.1 pin over this repo's own already- Dependabot-bumped v3.0.2, a real downgrade. Restored v3.0.2 (the SHA on develop, not re-typed). Diffed every uses: line in the job against develop afterward and confirmed no other pin was silently changed - this is the same class of gap the checkout pin fix caught in round 1, now swept for the whole job rather than the one instance flagged. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
ptr727
commented
Aug 14, 2026
Suppressed finding (build-release-task.yml:188, the softprops/action-gh-release downgrade): fixed in d450770. Restored v3.0.2 (the SHA on develop before this PR, not re-typed). Also diffed every uses: line in the job against develop afterward and confirmed no other pin was silently changed by the re-vendor. |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 10 out of 11 changed files in this pull request and generated no new comments.
Suppressed comments (2)
repo-config/README.md:5
- This bullet refers to
repo-config/configure.shas if it were present in this repo, but this PR deletesrepo-config/configure.shand the next bullet clarifies the script is hub-hosted. Qualify this reference as the hub's script to avoid implying readers should look for it locally.
- `main.json` plus one `develop` variant: the branch rulesets as the managed part of the writable API subset (`name`, `target`, `enforcement`, `conditions`, `rules`). The `develop` payload is `develop.json` (`release` repos) or `operational/develop.json` (`operational` repos). These are the canonical expected payloads that the self-audit (`AUDIT.md`) diffs the live rulesets against. `bypass_actors` is writable and deliberately unmanaged, so no payload declares one and nothing diffs it: who may bypass a ruleset is a human decision taken in the UI, which `repo-config/configure.sh` preserves on `apply` and reports without asserting on `check`.
README.md:928
- The project name is typically styled as “xUnit.net” (lowercase “net”). Using “xUnit.Net” is likely to read as a typo in this dependencies table.
| [xUnit.Net][xunit-link] | Test framework for .NET. |
…s Bullet The bypass_actors bullet's configure.sh mention already carried the repo-config/ path, but read as a local script since the bullet itself never says hub, unlike the bullet right after it. Reads 'the hub's repo-config/configure.sh' now. xUnit.Net's casing (README.md:928, suppressed) is not changed: spec/third-party-tools.json's own catalog entry names it 'xUnit.Net', and a shared tool is named identically everywhere it appears per spec/readme-structure.md 3rd Party Tools - a local casing fix would diverge from the catalog rather than fix a typo. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
ptr727
commented
Aug 14, 2026
Two suppressed findings this round:
|
Uh oh!
There was an error while loading. Please reload this page.
Refreshes `reports/photocleaner/audit.md` after the resync driven from
hub `0e84805`, per RESYNC.md section 6 ("done means measured").
- `main` (`c457ff3`) still measures as the pre-resync state (43
findings, run stamp `audit run 2026-08-15T14:28:27Z | hub 0e84805`),
reported as such rather than reading `develop` as ground truth.
- `develop` (`e8b7a81`, after ptr727/PhotoCleaner#49 and
ptr727/PhotoCleaner#50) reports only the two `investigate`-dispositioned
hub-only files (`audit run 2026-08-15T14:58:12Z | hub d54862a | branch
override develop`).
- The `develop -> main` promotion ptr727/PhotoCleaner#51 is open and
blocked on the prose gate's `dead-path` rule flagging verbatim mentions
of the retired `repo-config/configure.sh`, filed as #721. The second hub
finding from the pass, the dead `every-finding-ends-in-an-action` anchor
in `.github/copilot-instructions.md`, is #722.
- The registry `driftNotes` stand: both still describe reality (publish
shape, private-for-now).
Report lints clean (markdownlint, prose_lint), and `spec/validate.py`
passes.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Phase 8 (fleet-wide Skills rollout) batch 2 of ptr727/ProjectTemplate's hub-docs-to-skills-conversion project.
Re-vendors 13 stale/absent verbatim
AGENTS.md/GOVERNANCE.mdsections against hubmain, plus the whole-file config carries:.markdownlint-cli2.jsonc,repo-config/develop.json,repo-config/main.json,repo-config/README.md.Re-vendors the
github-releasejob inbuild-release-task.yml(declaredverbatimJobscontract): action SHA pin bumps and the current one-sentence-per-line comment style, keeping this repo's own target-specificneeds:list (console/docker only, no nuget/pypi) perWORKFLOW.md's per-target subsetting rule.Adds
host-tools.json(genuinely absent; an empty declaration since this repo needs no host tool beyond the fleet baseline). Retires the localrepo-config/configure.shcopy perspec/divergences.json'sretiredisposition (hub-hosted, not carried), fixing its two remaining references inAUDIT.mdandrepo-config/README.mdin the same pass.Fixes
AUDIT.md's ruleset-comparison snippet to stop diffingbypass_actors, the same gap caught on Financial-Modeling#111 in this batch, applied proactively here.README: adds the required 3rd Party Tools section (19 dependencies and CI/dev tools, alphabetized, matched to the shared catalog where one exists); renames
commit-linktocommits-linkanddocker-linktodocker-hub-link(shared destination names); renameshistory-linkandlicense-linkto barehistory/license(in-repo paths carry no suffix); renames theInternalreference group toDistributionand reorders it beforeRepo(declared order), sortsExternalby reference name.Post-push audit against this branch confirms convergence: only the two pre-existing,
investigate-dispositioned hub-only findings (publish-release.yml,validate-task.yml) remain, out of scope for a per-repo resync.🤖 Generated with Claude Code