Use when shipping a new dotnet-inspect version; independently validate one immutable candidate, present concerns, and publish only after the operator decides.
Use this maintainer skill only when the user asks to ship, publish, or release a
new dotnet-inspect version. Read
docs/release-workflow.md first; it owns
the release contract and recovery behavior. This skill validates readiness and
executes the operator's decision. Daily operations owns readiness repair.
Start from the candidate named by the operator, or the newest candidate that daily operations reported ready. Record:
release-candidate.yml run ID and attempt;VersionPrefix;ci-required conclusion;Require one unexpired dotnet-inspect-release-candidate artifact. Do not
substitute a version, branch, newer run, ancestry relationship, or another
attempt for any identity member.
Confirm that:
ci-required.VersionPrefix is the intended unreleased version and the root shipped
skill reports that version.richlander/dotnet-skills update is prepared for coordinated
publication.If preparation is stale, stop. Report the exact missing readiness work to daily operations; do not edit, rebuild, normalize, or repair the candidate during release.
A green candidate has successful required qualification and needs no concern acceptance. For a ready candidate with concerns, list every exact completed non-success job and its conclusion. Cancelled, skipped, running, missing, mixed-attempt, expired, or structurally incomplete evidence is not an operator-acceptable concern.
Present the operator with:
Ask whether to publish this exact candidate. Publication authorization applies only to the presented identity. A prior release decision, green automation, or automatic comparison deployment is not authorization.
After explicit authorization, dispatch Publish on main:
gh workflow run release.yml \
-f candidate_run_id=<run-id> \
-f candidate_attempt=<attempt> \
-f accept_certification_concerns=<false-or-authorized-true> \
-f confirm=publishThe workflow independently revalidates the candidate, publishes its retained packages and GitHub release, then makes its retained site available to the production environment. Approve that environment only for the same workflow run after package and GitHub publication succeeds.
Never dispatch from another branch, change inputs during recovery, rebuild assets, or publish one surface from another candidate.
Verify all seven package IDs and version on nuget.org, the GitHub release tag and target SHA, the attached package set, and the production site's version and linked commit.
If publication partially fails, rerun release.yml with the same run ID,
attempt, concern decision, and confirmation. Package duplicate skipping is
recovery for the same immutable candidate, not permission to select another
one. If revalidation reports changed or expired identity, stop and obtain a new
operator decision.
After every coordinated surface succeeds, record the released version, release URL, full SHA, candidate run/attempt, and artifact identity on the successor tracker. Daily operations then advances the project version and prepares the next ready candidate; the release agent does not perform that repair as part of the completed publication.
71591ae
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.