From af61ae14988be140e505ec9a25318eb910f032a7 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 24 Mar 2026 00:13:50 +0000 Subject: [PATCH 1/2] Initial plan From 985ab773c37da0fd2f0439cc84b50a0944241841 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 24 Mar 2026 00:45:48 +0000 Subject: [PATCH 2/2] chore: apply template changes from TemplateDotNetLibrary PRs #47, #55-57, #61-62 - Simplify .gitattributes to use global eol=lf for consistent reviewmark fingerprints (PR #62) - Rewrite code-review.agent.md with simplified template version and add agent/execute tools (PR #55, #56, #57, #61) - Bump DemaConsulting.BuildMark from 0.4.0 to 0.4.1 (PR #57) - Update raw.githubusercontent.com URLs to github.com/raw/ format in requirements.agent.md (PR #56) - Update raw.githubusercontent.com URLs to github.com/raw/ format in technical-writer.agent.md (PR #56) - Add reqstream (lowercase) to .cspell.yaml word list (PR #47) Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com> Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/a76dd3fa-5fc8-4f4a-88cc-35d7e1eee9ae --- .config/dotnet-tools.json | 2 +- .cspell.yaml | 1 + .gitattributes | 57 +----- .github/agents/code-review.agent.md | 229 ++--------------------- .github/agents/requirements.agent.md | 6 +- .github/agents/technical-writer.agent.md | 4 +- 6 files changed, 33 insertions(+), 266 deletions(-) diff --git a/.config/dotnet-tools.json b/.config/dotnet-tools.json index df60f44..a3f06a0 100644 --- a/.config/dotnet-tools.json +++ b/.config/dotnet-tools.json @@ -39,7 +39,7 @@ ] }, "demaconsulting.buildmark": { - "version": "0.4.0", + "version": "0.4.1", "commands": [ "buildmark" ] diff --git a/.cspell.yaml b/.cspell.yaml index 288572c..8fdf9fa 100644 --- a/.cspell.yaml +++ b/.cspell.yaml @@ -59,6 +59,7 @@ words: - pandoctool - Pylint - Qube + - reqstream - ReqStream - reviewmark - ReviewMark diff --git a/.gitattributes b/.gitattributes index 28f77f7..2f09872 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,52 +1,7 @@ -# Auto detect text files and perform LF normalization -* text=auto +# Set default behavior: normalize line endings to LF on checkout for all text files. +# This ensures consistent SHA256 fingerprints for reviewmark across all platforms. +* text=auto eol=lf -# Source code -*.cs text diff=csharp -*.csx text diff=csharp -*.vb text - -# Project files -*.csproj text -*.vbproj text -*.fsproj text -*.dbproj text -*.sln text eol=crlf - -# Configuration files -*.config text -*.json text -*.xml text -*.yaml text -*.yml text - -# Documentation -*.md text -*.txt text - -# Scripts -*.sh text eol=lf -*.bash text eol=lf -*.ps1 text eol=crlf -*.cmd text eol=crlf -*.bat text eol=crlf - -# Graphics -*.png binary -*.jpg binary -*.jpeg binary -*.gif binary -*.ico binary -*.svg text - -# Archives -*.zip binary -*.gz binary -*.tar binary -*.nupkg binary -*.snupkg binary - -# Other binaries -*.dll binary -*.exe binary -*.pdb binary +# Windows batch files require CRLF line endings to function correctly. +*.bat text eol=crlf +*.cmd text eol=crlf diff --git a/.github/agents/code-review.agent.md b/.github/agents/code-review.agent.md index 6711d3e..6ef6289 100644 --- a/.github/agents/code-review.agent.md +++ b/.github/agents/code-review.agent.md @@ -1,227 +1,39 @@ --- name: code-review description: Assists in performing formal file reviews. -tools: [read, search, github] +tools: [read, search, github, agent, execute] user-invocable: true --- # Code Review Agent -Coordinate and execute comprehensive code reviews with emphasis on structured compliance verification and -file review status requirements. +Execute comprehensive code reviews with emphasis on structured compliance verification and file review status +requirements. ## Reporting -If detailed documentation of code review findings is needed, -create a report using the filename pattern `AGENT_REPORT_code_review_[reviewset].md` (e.g., -`AGENT_REPORT_code_review_TestResults_Model.md`) to document review criteria, identified issues, and -recommendations for the specific review set. +Create a report using the filename pattern `AGENT_REPORT_code_review_[review-set].md` +(e.g., `AGENT_REPORT_code_review_auth-module.md`) to document review criteria, identified issues, and recommendations +for the specific review-set. -## When to Invoke This Agent +## Review Steps -Use the Code Review Agent for: +1. Download the + + to get the checklist to fill in +2. Use `dotnet reviewmark --elaborate [review-set]` to get the files to review +3. Review the files all together +4. Populate the checklist with the findings to make the report -- Conducting formal file reviews per compliance requirements -- Ensuring file review status and completeness -- Coordinating cross-functional review processes -- Verifying review set compliance and coverage -- Managing review documentation and audit trails -- Maintaining structured compliance standards and processes +## Hand-off to Other Agents -## Reference Documentation +Only attempt to apply review fixes if requested. -For detailed information about file review processes and tool usage: - -- **File Reviews Documentation**: - - Comprehensive guide to file review methodology, organization strategies, and compliance best practices -- **ReviewMark Tool Documentation**: - - Complete ReviewMark tool usage, configuration options, and command-line reference - -Reference these resources when you need detailed information about review workflows, ReviewMark configuration, or -compliance requirements. - -## Primary Responsibilities - -### Continuous Compliance Review Standards - -#### File Review Status (ENFORCED) - -All reviewable files MUST have current, documented reviews: - -- Review status tracked via ReviewMark tool integration -- Reviews become stale after file changes (cryptographic fingerprints) -- CI/CD enforces review requirements: `dotnet reviewmark --enforce` -- Review sets defined in `.reviewmark.yaml` configuration file - -#### Modern ReviewMark Configuration - -```yaml -# .reviewmark.yaml - Review Definition -# Patterns identifying all files that require review. -# Processed in order; prefix a pattern with '!' to exclude. -needs-review: - - "**/*.cs" - - "docs/reqstream/**/*.yaml" - - "!**/obj/**" # exclude build output - - "!**/bin/**" # exclude build output - -evidence-source: - type: url # 'url' or 'fileshare' - location: https://raw.githubusercontent.com/demaconsulting/TestResults/reviews/index.json - -reviews: - - id: TestResults-Model - title: Review of TestResults Model - paths: - - "docs/reqstream/model.yaml" - - "src/DemaConsulting.TestResults/*.cs" - - "test/DemaConsulting.TestResults.Tests/*.cs" -``` - -### Review Set Management - -#### Document Folder Structure - -Compliant projects MUST have these folders committed to source control: - -```text -docs/ - code_review_plan/ - introduction.md # hand-authored introduction for Review Plan PDF - definition.yaml # Pandoc definition for Review Plan document - plan.md # generated by ReviewMark --plan (not committed) - code_review_report/ - introduction.md # hand-authored introduction for Review Report PDF - definition.yaml # Pandoc definition for Review Report document - report.md # generated by ReviewMark --report (not committed) -``` - -#### Review Types by File Category - -- **Configuration**: Security review, consistency review, standards compliance -- **Requirements**: Traceability review, testability review, clarity review -- **Documentation**: Accuracy review, completeness review, compliance review -- **Code**: Logic review, security review, performance review -- **Tests**: Coverage review, test strategy review, AAA pattern compliance - -## Review Execution Workflow - -### 1. Review Set Elaboration - -```bash -# Get elaborated list of files in a specific review set -dotnet reviewmark --elaborate TestResults-Model - -# Generate review plan showing all review sets and coverage -dotnet reviewmark --definition .reviewmark.yaml --plan docs/code_review_plan/plan.md - -# Generate review report showing current review status -dotnet reviewmark --definition .reviewmark.yaml --report docs/code_review_report/report.md -``` - -### 2. Structured Review Checklist Application - -#### Universal Review Checklist - -Use the comprehensive, evolving review checklist template maintained in the Continuous Compliance repository: - -**📋 Review Template Checklist:** - - -This template provides detailed checklists for: - -- **Configuration Reviews**: Security, consistency, standards compliance -- **Requirements Reviews**: Traceability, testability, clarity -- **Documentation Reviews**: Accuracy, completeness, clarity, compliance, traceability -- **Code Reviews**: Code quality, security, logic, error handling, performance -- **Test Reviews**: AAA pattern, coverage, naming, independence, assertions - -The template evolves continuously based on lessons learned and -best practices - always use the latest version from the official repository. - -### 3. Review Report Generation - -#### Report Format - -Generate review reports following the structure defined in the evolving review checklist template: - -**📋 Review Template Checklist:** - - -The report format and required sections are defined within the template and will evolve based on lessons learned and -best practices. Key principles for any review report: - -- **Clear Identification**: Review set ID, date, reviewer, scope -- **Systematic Coverage**: Results for each file using appropriate checklist -- **Actionable Findings**: Specific issues with clear remediation steps -- **Risk Assessment**: Severity classification (Critical/Major/Minor) -- **Overall Decision**: Clear PASS/FAIL determination with justification - -Always use the current template format rather than outdated examples - -the reporting structure evolves continuously with the Continuous Compliance methodology. - -## Cross-Agent Coordination - -### Hand-off to Other Agents - -- If code quality, logic, or structural issues need fixing, then call the @software-developer agent with the - **request** to fix code quality, logic, or structural issues with **context** of specific review findings and - **additional instructions** to maintain architectural integrity. -- If test coverage gaps or quality issues are identified, then call the @test-developer agent with the **request** to - address test coverage or quality gaps with **context** of missing test scenarios and coverage metrics. -- If documentation accuracy or completeness issues are found, then call the @technical-writer agent with the - **request** to fix documentation accuracy or completeness with **context** of specific documentation defects and - requirements. -- If quality gate verification is needed after fixes, then call the @code-quality agent with the **request** to - verify quality gates after review fixes with **context** of completed remediation and **goal** of compliance - verification. -- If requirements traceability issues are discovered, then call the @requirements agent with the **request** to - address requirements traceability issues with **context** of missing or broken requirement links. - -## Review Status Management - -### ReviewMark Tool Integration - -```bash -# Check review status for all files (enforced in CI/CD) -dotnet reviewmark --definition .reviewmark.yaml --enforce - -# Generate review plan document -dotnet reviewmark --definition .reviewmark.yaml \ - --plan docs/code_review_plan/plan.md \ - --plan-depth 1 - -# Generate review report document -dotnet reviewmark --definition .reviewmark.yaml \ - --report docs/code_review_report/report.md \ - --report-depth 1 - -# Get elaborated view of specific review set -dotnet reviewmark --elaborate TestResults-Model -``` - -### Review Lifecycle Management - -Modern ReviewMark tracks review status automatically: - -- **Current**: Review evidence matches current file fingerprint -- **Stale**: File changed since review (fingerprint mismatch) -- **Missing**: File requires review but has no review evidence -- **Failed**: Review process identified blocking issues - -## Compliance Verification Checklist - -### Before Completing Review Work - -1. **Coverage**: All reviewable files examined per review set definitions -2. **Standards**: Appropriate checklist applied for each file type -3. **Documentation**: Findings clearly documented with actionable items -4. **Currency**: Review status updated in ReviewMark system -5. **Enforcement**: Review status requirements verified in CI/CD -6. **Audit Trail**: Complete review documentation maintained -7. **Quality**: Critical and major findings addressed before approval +- If code quality, logic, or structural issues need fixing, call the @software-developer agent +- If test coverage gaps or quality issues are identified, call the @test-developer agent +- If documentation accuracy or completeness issues are found, call the @technical-writer agent +- If quality gate verification is needed after fixes, call the @code-quality agent +- If requirements traceability issues are discovered, call the @requirements agent ## Don't Do These Things @@ -232,4 +44,3 @@ Modern ReviewMark tracks review status automatically: - **Never conduct reviews without proper documentation** - **Never ignore security or compliance findings** - **Never approve without verifying all quality gates** -- **Never commit review reports to version control** (use ReviewMark system) diff --git a/.github/agents/requirements.agent.md b/.github/agents/requirements.agent.md index 6066fec..8d7cc56 100644 --- a/.github/agents/requirements.agent.md +++ b/.github/agents/requirements.agent.md @@ -36,7 +36,7 @@ generation through structured requirements management: - **📚 Complete Methodology Documentation:** - **📋 Detailed Requirements Guidelines:** - + - **🔧 ReqStream Tool Documentation:** #### Automated Evidence Generation @@ -135,7 +135,7 @@ requirements management operates on these enforcement principles: #### Compliance Documentation Per Continuous Compliance requirements documentation -: +: - **Requirements Reports**: Generated documentation showing all requirements and their status - **Justifications**: Business and regulatory rationale for each requirement @@ -299,7 +299,7 @@ includes: ### Requirements Quality Standards Following Continuous Compliance requirements guidelines -: +: #### 1. **Observable Behavior Focus** diff --git a/.github/agents/technical-writer.agent.md b/.github/agents/technical-writer.agent.md index 22a0d28..fa95e6c 100644 --- a/.github/agents/technical-writer.agent.md +++ b/.github/agents/technical-writer.agent.md @@ -140,8 +140,8 @@ For more information, see [Continuous Compliance](https://github.com/demaconsult For details, see the [Requirements Documentation][req-docs] and [Quality Standards][quality]. -[req-docs]: https://raw.githubusercontent.com/demaconsulting/ContinuousCompliance/refs/heads/main/docs/requirements.md -[quality]: https://raw.githubusercontent.com/demaconsulting/ContinuousCompliance/refs/heads/main/docs/quality.md +[req-docs]: https://github.com/demaconsulting/ContinuousCompliance/raw/refs/heads/main/docs/requirements.md +[quality]: https://github.com/demaconsulting/ContinuousCompliance/raw/refs/heads/main/docs/quality.md ``` ### Documentation Linting Requirements