Skip to content

Sync template files and install ReviewMark as local dotnet tool#51

Merged
Malcolmnixon merged 2 commits intomainfrom
copilot/update-template-repo-files
Apr 12, 2026
Merged

Sync template files and install ReviewMark as local dotnet tool#51
Malcolmnixon merged 2 commits intomainfrom
copilot/update-template-repo-files

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 12, 2026

Brings in updated agent/standards/lint files from TemplateDotNetTool and changes the policy so ReviewMark is installed locally via .config/dotnet-tools.json (released v1.0.0), with global install restricted to integration-test jobs only.

Description

Template file sync (binary copies)

  • AGENTS.md — updated standards list; adds coding-principles.md and testing-principles.md; <project>{project}
  • .github/agents/*.md — all 5 agents updated; quality.agent.md gains two Testing Compliance items for hierarchy boundary enforcement
  • .github/standards/coding-principles.md — new file: universal literate coding, architecture, and quality gate standards
  • .github/standards/testing-principles.md — new file: universal test dependency boundaries, AAA pattern, and quality gates
  • .github/standards/csharp-language.md — now requires coding-principles.md
  • .github/standards/csharp-testing.md — now requires testing-principles.md and csharp-language.md
  • Remaining 4 standards files — minor template improvements
  • lint.sh / lint.bat — expanded with full dotnet linting section: dotnet tool restore, dotnet reqstream --lint, dotnet versionmark --lint, dotnet reviewmark --lint, dotnet format --verify-no-changes --no-restore

ReviewMark local tool

  • .config/dotnet-tools.json — adds demaconsulting.reviewmark v1.0.0
  • .versionmark.yaml — adds reviewmark tool entry so VersionMark can capture its version in the build-docs job
  • build.yaml build-docs job:
    • Removes "Install ReviewMark from package" global install step
    • Adds dotnet reviewmark --validate self-validation step alongside other OTS tools
    • Changes reviewmarkdotnet reviewmark for plan/report generation
    • Adds reviewmark to versionmark --capture tool list
  • integration-test job — unchanged; still installs the newly-built package globally for integration testing

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code quality improvement

Pre-Submission Checklist

Before submitting this pull request, ensure you have completed the following:

Build and Test

  • Code builds successfully: dotnet build --configuration Release
  • All unit tests pass: dotnet test --configuration Release
  • Self-validation tests pass:
    dotnet run --project src/DemaConsulting.ReviewMark --configuration Release --framework net10.0
    --no-build -- --validate
  • Code produces zero warnings

Code Quality

  • Code formatting is correct: dotnet format --verify-no-changes
  • New code has appropriate XML documentation comments
  • Static analyzer warnings have been addressed

Quality Checks

Please run the following checks before submitting:

  • Spell checker passes: cspell "**/*.{md,cs}"
  • Markdown linter passes: markdownlint "**/*.md"
  • YAML linter passes: yamllint .

Testing

  • Added unit tests for new functionality
  • Updated existing tests if behavior changed
  • All tests follow the AAA (Arrange, Act, Assert) pattern
  • Test coverage is maintained or improved

Documentation

  • Updated README.md (if applicable)
  • Updated ARCHITECTURE.md (if applicable)
  • Added code examples for new features (if applicable)
  • Updated requirements.yaml (if applicable)

Additional Notes

No source code or test changes — CI/tooling/documentation only. The build-docs job now uses the released ReviewMark from the local tool manifest rather than the version being built, consistent with how all other OTS tools in that job are consumed.

- Binary-copy AGENTS.md, .github/agents/*.md, .github/standards/*.md from TemplateDotNetTool
- Add new coding-principles.md and testing-principles.md standards files
- Update lint.sh and lint.bat with dotnet linting section (reqstream, versionmark, reviewmark lint + dotnet format)
- Add demaconsulting.reviewmark 1.0.0 to .config/dotnet-tools.json
- Remove global ReviewMark install from build-docs job in build.yaml
- Add dotnet reviewmark self-validation step to build-docs job
- Use dotnet reviewmark in build-docs (instead of global reviewmark)
- Add reviewmark to versionmark capture in build-docs

Agent-Logs-Url: https://github.com/demaconsulting/ReviewMark/sessions/bbde2eca-8872-4bba-bb91-bf6caea974b4

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
@Malcolmnixon Malcolmnixon marked this pull request as ready for review April 12, 2026 00:09
Copilot AI review requested due to automatic review settings April 12, 2026 00:09
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Updates repository standards/tooling to align with the TemplateDotNetTool template and shifts ReviewMark consumption in CI from a global tool install to a local tool manifest (.config/dotnet-tools.json), keeping global installs limited to integration-test scenarios.

Changes:

  • Expanded lint.sh/lint.bat to restore .NET tools and run ReqStream/VersionMark/ReviewMark linting plus dotnet format --verify-no-changes --no-restore.
  • Updated build-docs workflow to use locally-restored ReviewMark (dotnet reviewmark), added ReviewMark self-validation, and captured its version via VersionMark.
  • Synced/extended agent + standards documentation, adding new universal coding/testing principle standards and front-matter metadata.

Reviewed changes

Copilot reviewed 15 out of 15 changed files in this pull request and generated no comments.

Show a summary per file
File Description
lint.sh Adds Puppeteer skip-download env var; restores .NET tools; runs ReqStream/VersionMark/ReviewMark lint; updates dotnet format invocation.
lint.bat Windows equivalent updates: improved section abort handling; sets Puppeteer skip-download; restores .NET tools; runs .NET linting + formatting.
AGENTS.md Updates standards list and template placeholders (<project>{project}), adding new coding/testing standards.
.github/workflows/build.yaml Removes global ReviewMark install from build-docs; uses dotnet tool restore; adds ReviewMark validation; switches report generation to dotnet reviewmark; includes ReviewMark in captured tool versions.
.github/standards/testing-principles.md New universal testing principles standard (dependency boundaries, AAA, quality gates).
.github/standards/technical-documentation.md Adds front matter and clarifies reference-section rules (external specs only).
.github/standards/software-items.md Adds clarifications on subsystem/unit definitions (e.g., methods aren’t separate units).
.github/standards/reviewmark-usage.md Adds front matter and explicit prerequisite standard(s).
.github/standards/reqstream-usage.md Adds front matter, prerequisite standard(s), and clarifies downward requirement linking language.
.github/standards/design-documentation.md Adds front matter, prerequisites, and clarifies design scope excludes test artifacts.
.github/standards/csharp-testing.md Adds front matter + prerequisite standards; removes duplicated AAA/coverage narrative now covered by shared testing principles.
.github/standards/csharp-language.md Adds front matter; points to new universal coding principles; simplifies to examples/formatting/quality checks.
.github/standards/coding-principles.md New universal coding principles standard (literate coding, architecture principles, quality gates).
.github/agents/quality.agent.md Adds testing compliance checks re: hierarchy boundaries; moves “Result” semantics guidance to end of document.
.config/dotnet-tools.json Adds demaconsulting.reviewmark pinned to v1.0.0 as a local .NET tool.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Malcolmnixon
Copy link
Copy Markdown
Member

@copilot The build-docs job is failing with the following error:

Capturing tool versions...
VersionMark version 1.2.0+b0745db7b3702162ea2d309a2cca8543e1b1a36e
Copyright (c) DEMA Consulting

Capturing tool versions for job 'build-docs'...
Output file: artifacts/versionmark-build-docs.json
Capturing 12 tool(s)...
Error: Tool 'reviewmark' not found in configuration

The .versionmark.yaml file needs a reviewmark entry just like the other dotnet tools - the template does it as follows:

  # ReviewMark (DemaConsulting.ReviewMark from dotnet tool list)
  reviewmark:
    command: dotnet tool list
    regex: '(?i)demaconsulting\.reviewmark\s+(?<version>\d+\.\d+\.\d+(?:-[a-zA-Z0-9.]+)?)'

Agent-Logs-Url: https://github.com/demaconsulting/ReviewMark/sessions/57e4e327-bab7-43aa-ba4d-75e1a88c77df

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Apr 12, 2026

@copilot The build-docs job is failing with the following error:

Capturing tool versions...

...

Added the reviewmark entry to .versionmark.yaml in commit 7225d23, following the same pattern as the other dotnet tools.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants