Visitar URL original
Resync the Skills Tree and Markdownlint Config With the Hub by ptr727 · Pull Request #578 · ptr727/Utilities · GitHub
Skip to content

Resync the Skills Tree and Markdownlint Config With the Hub - #578

Merged
ptr727 merged 1 commit into
developfrom
chore/resync-skills-tree
Nov 9, 2026
Merged

ptr727 merged 1 commit into
developfrom
chore/resync-skills-tree

Conversation

@ptr727

@ptr727 ptr727 commented Nov 9, 2026

Copy link
Copy Markdown
Owner

Summary

Re-vendors the fleet Skills tree and the markdownlint config from hub ptr727/ProjectTemplate at c175d557, the verbatim re-vendor step of the hub's RESYNC.md.

  • .github/skills/: applied with scripts/carry.py apply, which refreshes every stale skill, adds decision-triage, and prunes unattended-handoff, which the hub no longer carries in that tree. diff -r against the hub's .github/skills/ is empty.
  • .markdownlint-cli2.jsonc: the hub's current copy. Only comment lines change, so lint behavior is unchanged.

Findings closed, from audit run 2026-11-09T16:22:11Z | hub c175d557: every tree: .github/skills/... finding and the .markdownlint-cli2.jsonc verbatim finding.

Merge order

Merge after the instruction-set resync pull request. Until it lands, this repository's AGENTS.md still names the pruned unattended-handoff skill.

Verification

  • Byte fidelity: diff -r of the tree and diff of the config against the hub checkout are both empty.
  • A local strict review pass is recorded for this head. Its only findings were the prose gate's comment-added rule on the re-vendored config comments, which the comments label on this pull request covers.

🤖 Generated with Claude Code

Re-vendor .github/skills from hub c175d557 with carry.py apply: refresh
every stale skill, add decision-triage, and prune unattended-handoff,
which the hub no longer carries in that tree. Copy the hub's current
.markdownlint-cli2.jsonc, whose only change is comment wording.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@ptr727 ptr727 added the comments Permits the comment lines the pull request adds or edits, which the prose gate otherwise refuses label Nov 9, 2026
Copilot AI lite review requested due to automatic review settings November 9, 2026 16:34
@coderabbitai

coderabbitai Bot commented Nov 9, 2026

Copy link
Copy Markdown

Important

  • Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

Run configuration

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@ptr727

ptr727 commented Nov 9, 2026

Copy link
Copy Markdown
Owner Author

A recorded local strict-review pass covers head 5461dbe2e3704a588812ad77751795d9466fc453, the content this pull request carries at that commit against develop, and it recorded 10 findings.

@codecov

codecov Bot commented Nov 9, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 70.54%. Comparing base (ea0fd03) to head (5461dbe).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #578   +/-   ##
========================================
  Coverage    70.54%   70.54%           
========================================
  Files           13       13           
  Lines         1219     1219           
  Branches       111      111           
========================================
  Hits           860      860           
  Misses         319      319           
  Partials        40       40           
Flag Coverage Δ
dotnet 70.54% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

Approval should wait until the generated-skills coverage contract and requirements.txt classification are reconciled with the separate instruction-set resync, because the current tree excludes lint-only coverage while the new skill requires it.

No open issues 🎉

What changed in this PR

This pull request re-vendors the repository’s Skills tree and synchronizes the shared Markdownlint configuration with hub revision c175d557. It also removes the retired unattended-handoff Skill.

Changes:

  • Refreshes workflow, language, review, branching, release, and repository-management guidance.
  • Adds the decision-triage Skill.
  • Removes the obsolete unattended-handoff Skill.
  • Updates Markdownlint comments without changing lint behavior.

This pull request is ready to be approved.

File Description
.markdownlint-cli2.jsonc Updates explanatory Markdownlint comments.
.github/​skills/​workflow-ci-contract/​SKILL.md Refreshes workflow-contract guidance.
.github/​skills/​workflow-ci-contract/​references/​test-methodology.md Updates workflow audit scenarios and probe guidance.
.github/​skills/​workflow-ci-contract/​references/​architecture.md Updates workflow architecture and artifact-seam guidance.
.github/​skills/​upstream-contribution-workflow/​SKILL.md Clarifies contribution procedures.
.github/​skills/​unattended-handoff/​SKILL.md Removes the retired Skill.
.github/​skills/​standup-a-repo/​SKILL.md Refreshes repository standup sequencing.
.github/​skills/​shell-codestyle/​SKILL.md Adds shell, structured-format, and CLI guidance.
.github/​skills/​resync-a-repo/​SKILL.md Updates resync preparation and cleanup procedures.
.github/​skills/​python-codestyle/​SKILL.md Refreshes Python profiles, tooling, and testing guidance.
.github/​skills/​python-codestyle/​references/​testing.md Updates Python test and coverage instructions.
.github/​skills/​python-codestyle/​references/​profiles.md Expands Python profile and directory rules.
.github/​skills/​python-codestyle/​references/​code-style.md Updates Python style and subprocess guidance.
.github/​skills/​git-commit-conventions/​SKILL.md Refreshes staging, signing, identity, and cleanup rules.
.github/​skills/​git-commit-conventions/​references/​history-rewrite.md Clarifies history-rewrite requirements.
.github/​skills/​fleet-code-review/​SKILL.md Updates review scope and finding guidance.
.github/​skills/​dotnet-codestyle/​SKILL.md Refreshes .NET build and configuration guidance.
.github/​skills/​dotnet-codestyle/​references/​testing.md Updates .NET testing and coverage guidance.
.github/​skills/​dotnet-codestyle/​references/​project-config.md Clarifies conditional AOT reference verification.
.github/​skills/​dotnet-codestyle/​references/​conventions.md Updates C# conventions.
.github/​skills/​copilot-instructions-keeper/​SKILL.md Clarifies Copilot-instruction and ledger handling.
.github/​skills/​comment-and-doc-style/​references/​markdown-links.md Refreshes Markdown link-formatting rules.
.github/​skills/​comment-and-doc-style/​references/​line-endings.md Updates line-ending and byte-preservation guidance.
.github/​skills/​comment-and-doc-style/​references/​carried-doc-references.md Clarifies carried-document reference restrictions.
.github/​skills/​check-this-repo/​SKILL.md Updates Skills-install checks and snapshot-only repair behavior.
.github/​skills/​carried-instruction-file-guard/​SKILL.md Clarifies safeguards for carried instruction files.
.github/​skills/​branching-and-release-model/​SKILL.md Refreshes branching and publishing guidance.
.github/​skills/​branching-and-release-model/​references/​release-publish-mechanics.md Updates release-target and recovery mechanics.
.github/​skills/​branching-and-release-model/​references/​branch-protection-and-promotion.md Refreshes promotion and branch-protection procedures.
.github/​skills/​audit-a-repo/​SKILL.md Updates audit execution and reporting guidance.

Review effort: Lite

@ptr727

ptr727 commented Nov 9, 2026

Copy link
Copy Markdown
Owner Author

Answering the Copilot round on 5461dbe2, verdict headline (1): "Approval should wait until the generated-skills coverage contract and requirements.txt classification are reconciled with the separate instruction-set resync, because the current tree excludes lint-only coverage while the new skill requires it."

No change needed. The headline names no failing behavior in this repository, and the round itself states no open issue.

  • The requirements.txt and lint-only rules it refers to are the python-codestyle Skill's profile rules (.github/skills/python-codestyle/references/profiles.md). That Skill governs a repository's Python side, and this repository has none: git ls-tree -r --name-only origin/develop lists no .py, requirements*.txt, or pyproject.toml file. So no rule here can disagree with it in practice.
  • .github/skills/ is a manifest-owned verbatim-tree carry, and diff -r against the hub's .github/skills/ at c175d557 is empty. A defect inside a Skill is fixed in the hub source, never in this copy.
  • The instruction-set alignment the headline asks for is Resync the Instruction Set With the Hub #581, and this pull request's "Merge order" section already says it merges after Resync the Instruction Set With the Hub #581.

ptr727 added a commit that referenced this pull request Nov 9, 2026
## Summary

Resyncs the carried instruction set with hub `ptr727/ProjectTemplate` at
`c175d557`, step 1 of the hub's `RESYNC.md`.

- `AGENTS.md`, `GOVERNANCE.md`: every verbatim section re-vendored with
`scripts/carry.py apply-sections`, inserting the two newly declared
sections, "Design Before Code" and "Trust Boundaries and Hardening
Effort". The repository's own preamble, "Devcontainer", and "Repository
Layout" text is untouched.
- `WORKFLOW.md`: the hub canonical. The old copy matched a past hub
revision exactly and carried nothing of its own.
- `CODESTYLE.md`: the hub canonical, keeping this repository's
"Utilities .NET Conventions" section. The hub's pointers to its hub-only
"Running the Linters Locally" section are re-pointed at `OPERATIONS.md`:
linter invocations and shell checks at "Local Verification", the commit
hook's scope at "Tool Usage", and its install step at "Runbooks".
- `OPERATIONS.md`: the documented prose gate now runs through `uv run
--no-project --script`. It declares PEP 723 dependencies, so the bare
`python3` form failed on a host without them.

`CLAUDE.md` already matched the hub. Findings closed, from `audit run
2026-11-09T16:22:11Z | hub c175d557`: every `verbatim: AGENTS.md` and
`verbatim: GOVERNANCE.md` finding, and the `intent` advisories on
`AGENTS.md`, `GOVERNANCE.md`, `CODESTYLE.md`, and `WORKFLOW.md`.

## Merge order

Merge this first. #578, #579, and #580 each depend on text it carries.

## Verification

- markdownlint, editorconfig-checker, and the pinned prose gate pass on
the changed files. The documented `OPERATIONS.md` prose gate command
runs clean against this branch.
- Local strict review ran three passes. The first two found the
commit-gate pointer and the bare `python3` command, both fixed here. The
final pass over the full diff found nothing.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
@ptr727

ptr727 commented Nov 9, 2026

Copy link
Copy Markdown
Owner Author

Merge Gate item 2 is unmet on head 5461dbe2e3704a588812ad77751795d9466fc453: the Lite Copilot round's file table names 30 of the 42 changed files, so pr_review.py reads coverage=none and sets the attested local pass aside (ptr727/ProjectTemplate#3955). The maintainer authorized merging this pull request into develop with item 2 unmet. The evidence is the attested local strict-review pass on this head over all 42 paths, and an empty diff -r against the hub's .github/skills at c175d557. Every other gate item holds: 11/11 checks, no threads, and the verdict headline answered. #581, which this pull request depended on, is merged. Merged as a squash pinned to 5461dbe2e3704a588812ad77751795d9466fc453.

@ptr727
ptr727 merged commit 8261424 into develop Nov 9, 2026
13 checks passed
@ptr727
ptr727 deleted the chore/resync-skills-tree branch November 9, 2026 16:55
ptr727 added a commit that referenced this pull request Nov 9, 2026
## Summary

Promotes the hub resync to `main`. It carries four feature pull
requests, all merged into `develop` and resynced against hub
`ptr727/ProjectTemplate` at `c175d557`:

- #581 resyncs the instruction set: `AGENTS.md` and `GOVERNANCE.md`
verbatim sections, `WORKFLOW.md`, and `CODESTYLE.md` with the
repository's own .NET conventions kept. It also fixes the
`OPERATIONS.md` prose gate command, which now runs through `uv`.
- #578 re-vendors `.github/skills` and `.markdownlint-cli2.jsonc`. It
adds `decision-triage` and prunes `unattended-handoff`.
- #579 brings the publisher concurrency group onto D7.1 and gives the
required aggregator its ruleset-bound name only on a `pull_request` run
(D1.5).
- #580 reconciles the intent-fidelity files: `AUDIT.md`,
`.github/copilot-instructions.md`, `.editorconfig`, `.gitattributes`,
and `cspell.json`.

No shipped input changes, so this promotion publishes no package. Two
independent reasons:

- `git diff --name-only origin/main origin/develop` names none of the
publisher's push paths (`Utilities/**`, `version.json`,
`Directory.Build.props`, `Directory.Packages.props`).
`Directory.Packages.props` appears in this pull request's three-dot file
list only because `develop` (#576) and `main` (#577) took the same
Dependabot bump independently, so the trees already match. A push event
evaluates its path filter on the two-dot diff between the pushed
`before` and `after` commits.
- The pinned `publish-plan-task.yml` publishes a push to `main` only
when the actor is `ptr727-codegen[bot]` or `dependabot[bot]`. A
maintainer merging this promotion publishes nothing on any path.

## Audit

`audit run 2026-11-09T16:56:11Z | hub c175d557 | branch override
develop` reports 0 defect findings on `develop`, against the many
verbatim, tree, interface, and concurrency findings on `main` before the
resync. What remains is advisory:

- `.editorconfig-checker.json` and `version.json` are date-only intent
advisories. Their differences from the hub are this repository's own:
the `.artifacts/` exclusion and the 4.1 version floor.
- `.coderabbit.yaml`, `.pr_agent.toml`, and `.github/agent-policy.json`
are flagged hub-only. They are rendered reviewer configs every
repository carries, which ptr727/ProjectTemplate#3914 tracks declaring.
- A branch note says both workflow files changed on `main` (Dependabot
action bumps) and on `develop` since the merge base. A test merge of
`develop` into `main` auto-merges cleanly, and its tree equals
`develop`'s tree.

## Review coverage

#579 and #580 met every Merge Gate item. #581 and #578 merged into
`develop` with the maintainer's explicit authorization over item 2.
Their Lite Copilot rounds left files out of their file tables, which
sets the attested local pass aside (ptr727/ProjectTemplate#3955). Each
carried an attested local strict-review pass over every changed file.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
ptr727-codegen Bot pushed a commit to ptr727/LanguageTags that referenced this pull request Nov 10, 2026
Updated
[dotnet-outdated-tool](https://github.com/dotnet-outdated/dotnet-outdated)
from 4.8.1 to 4.9.0.

<details>
<summary>Release notes</summary>

_Sourced from [dotnet-outdated-tool's
releases](https://github.com/dotnet-outdated/dotnet-outdated/releases)._

## 4.9.0

## What's Changed
* Adopt MCP 2026-07-28 spec with legacy version negotiation by @​slang25
in dotnet-outdated/dotnet-outdated#772
* Fix concurrent cache corruption during recursive file-based app
upgrades by @​DamianEdwards in
dotnet-outdated/dotnet-outdated#788
* Fix: Parameter --maximum-version ignores exact version references by
@​chefarbeiter in
dotnet-outdated/dotnet-outdated#671
* Show a friendly message instead of crashing when a solution has no
projects by @​DanielC000 in
dotnet-outdated/dotnet-outdated#771
* Surface package-upgrade stdout so failures are diagnosable by
@​timabell in
dotnet-outdated/dotnet-outdated#790
* Fix multiline central package version updates by @​onuracar-dev in
dotnet-outdated/dotnet-outdated#783
* Support versioned MSBuild project SDKs in project files by @​thomhurst
in dotnet-outdated/dotnet-outdated#793
* Preserve whitespace in Directory.Packages.props during upgrades by
@​symbiogenesis in
dotnet-outdated/dotnet-outdated#803
* Treat package references injected by custom SDKs as auto-referenced by
@​thomhurst in
dotnet-outdated/dotnet-outdated#795
* Preserve version ranges when upgrading packages by @​GREsau in
dotnet-outdated/dotnet-outdated#702
* Preserve MSBuild version variables across project and props files by
@​symbiogenesis in
dotnet-outdated/dotnet-outdated#805
* Replace McMaster command-line parsing with System.CommandLine by
@​slang25 in dotnet-outdated/dotnet-outdated#808
* Bump version to 4.9.0 by @​slang25 in
dotnet-outdated/dotnet-outdated#806

## New Contributors
* @​chefarbeiter made their first contribution in
dotnet-outdated/dotnet-outdated#671
* @​DanielC000 made their first contribution in
dotnet-outdated/dotnet-outdated#771
* @​timabell made their first contribution in
dotnet-outdated/dotnet-outdated#790
* @​onuracar-dev made their first contribution in
dotnet-outdated/dotnet-outdated#783
* @​thomhurst made their first contribution in
dotnet-outdated/dotnet-outdated#793
* @​GREsau made their first contribution in
dotnet-outdated/dotnet-outdated#702

**Full Changelog**:
dotnet-outdated/dotnet-outdated@v4.8.1...v4.9.0


Commits viewable in [compare
view](dotnet-outdated/dotnet-outdated@v4.8.1...v4.9.0).
</details>

Updated [ptr727.Utilities](https://github.com/ptr727/Utilities) from
4.1.105 to 4.1.109.

<details>
<summary>Release notes</summary>

_Sourced from [ptr727.Utilities's
releases](https://github.com/ptr727/Utilities/releases)._

## 4.1.109

## What's Changed
* Bump the actions-deps group with 4 updates by @​dependabot[bot] in
ptr727/Utilities#574
* Bump the nuget-deps group with 2 updates by @​dependabot[bot] in
ptr727/Utilities#576
* Resync the Instruction Set With the Hub by @​ptr727 in
ptr727/Utilities#581
* Resync the Skills Tree and Markdownlint Config With the Hub by
@​ptr727 in ptr727/Utilities#578
* Bring the Publisher Concurrency and Aggregator Name to the Workflow
Contract by @​ptr727 in ptr727/Utilities#579
* Reconcile the Intent-Fidelity Carried Files With the Hub by @​ptr727
in ptr727/Utilities#580
* Promote the Hub Resync to Main by @​ptr727 in
ptr727/Utilities#582


**Full Changelog**:
ptr727/Utilities@4.1.108...4.1.109

## 4.1.108

## What's Changed
* Bump the actions-deps group with 4 updates by @​dependabot[bot] in
ptr727/Utilities#575
* Bump the nuget-deps group with 2 updates by @​dependabot[bot] in
ptr727/Utilities#577


**Full Changelog**:
ptr727/Utilities@4.1.105...4.1.108

Commits viewable in [compare
view](ptr727/Utilities@4.1.105...4.1.109).
</details>

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comments Permits the comment lines the pull request adds or edits, which the prose gate otherwise refuses

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants