Repository navigation
[Docs] Adopt the Squad-Spec-Repository-Template squad and agent rules - #251
Merged
Merged
Conversation
The squad, its skills for Claude, Codex/GPT and Copilot and the shared agent rules now come from the template (dotnet profile); fix-issue, publish-pr and rereview-pr are replaced by squad-issue, create-pr and review-pr. Project knowledge moved into .squad/stack.md, .squad/project.md and the project blocks of the instruction files, docs/CONTRIBUTING.md, docs/ARCHITECTURE.md (moved from the repository root), the bug report and the pull request template. Three process decision records are added, the coverage gate excludes tests and generated migrations, and SonarQube's coverage measure excludes the squad tooling. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
The coverage gate now merges every report it finds, one per test project, so Test with coverage removes TestResults first and the unit-test guide shows the same commands. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
SonarQube's coverage measure now excludes the generated EF Core migrations like the local coverage gate does, so both gates measure the same code. The C# instructions name interface regions after the interface as the code and stack.md already do, the testing rules defer to the project's test doubles (NSubstitute here), and the Serena memories point to docs/ARCHITECTURE.md and .squad/stack.md. Reviews compare the PR description with the diff and read the SonarQube result, as the former review skill did. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
… command Pre-push reviews run before a PR or Sonar result exists, so project.md now asks only reviews of an open pull request to compare the description and read the SonarQube result. The Serena memory gives the PowerShell form of Test with coverage, because the stack.md command uses rm -rf and &&. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
The template changes this adoption needed are merged, so .squad/template.json points at the template's main commit that the next refresh starts from. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
The coverage gate's main() is split into helpers in the template, which clears SonarQube Cloud's python:S3776 finding on coverage-check.py. The gate's output is unchanged. The template record now points to the template commit carrying the change. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014xZzHGWbMaKfnCWeA4Lgj1
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Pull Request
📖 Description
Brings this repository onto the shared squad template LarsLaskowski/Squad-Spec-Repository-Template (profile
dotnet). From now on, squad and agent rules are maintained there and refreshed here with itsadopt-templateskill.Added
.squad/,.claude/agents/squad-*.md): Lead, Devil's Advocate, Security, Tester, Dev, Code Officer, Reviewer, driven by the skillssquad-issue(issues) andsquad-spec(features), pluscreate-prandreview-pr— identical under.claude/skills/,.agents/skills/(Codex/GPT) and.github/skills/(Copilot)..squad/stack.md(toolchain and every command),.squad/project.md(security areas, guarantees, integration surface, test doubles),.squad/tools/(analyzer gate over the build's SARIF log, coverage gate merging both test projects, config check),.squad/template.json.docs/decisions/with three process records (quality gates before the PR, squash merge, working records offmain),specs/templates, a SessionStart hook for cloud sessions.Moved, not lost
ARCHITECTURE.md→docs/ARCHITECTURE.md(links rebased);.github/PULL_REQUEST_TEMPLATE.md→.github/pull_request_template.md(the UI checklist stays as a project block).<!-- project:… -->blocks ofCLAUDE.md,AGENTS.md,.github/copilot-instructions.md(incl. the@.github/instructions/csharp.instructions.mdimport),docs/CONTRIBUTING.md,docs/ARCHITECTURE.md, the bug report and the PR template.SECURITY.mdis unchanged.Changed behavior — please note
mainstays protected; PRs are opened only by the squad or on request.main(previously: rebase, never merge). The repository settings already allow squash only.fix-issue,publish-prandrereview-prare replaced bysquad-issue,create-prandreview-pr.review-prbuilds, tests and posts its review; reviews of an open PR also compare the description with the diff and read the SonarQube result (.squad/project.md). Branch names follow the new skills (e.g.fix-issue-<n>-<slug>)..github/instructions/csharp.instructions.md: interface regions are named after the interface (#region IDisposable), matching the code.Not changed: line endings (no
.gitattributeswas added — that would renormalize the whole repository and belongs in a change of its own), CI steps other than the Sonar exclusions,SECURITY.md.🎫 Issues
None
👩💻 Reviewer Notes
The large diffs are the rebuilt instruction files and
docs/ARCHITECTURE.md/docs/CONTRIBUTING.md: their project content is unchanged inside the project blocks..squad/project.mdcollects what the old review skills checked (layering,ConfigureAwait(false), EF Core navigation assumptions).reihitsu-format --checkalready reports 4 unformatted files undersrc/DockerUpdateGuard/Portainer/Dataonmain; this PR does not touch them.📑 Test Plan
python3 .squad/tools/config-check.pypasses.python3 .squad/tools/analyzer-check.pypasses; 501 tests pass;python3 .squad/tools/coverage-check.pypasses (84.0 % overall, both test projects merged).✅ Checklist
.squad/stack.md, and the Analyzer gate reports no diagnostic in a changed file..squad/stack.md).README.md,ARCHITECTURE.md) to reflect my changes..squad/stack.mdprescribes. (none)⏭ Next Steps
Optionally add a
.gitattributesmatching.editorconfig(end_of_line = crlf) in a change of its own.