Skip to content

Cleanup generated folders and fix related issues#151

Merged
Malcolmnixon merged 6 commits into
mainfrom
template-cleanup
May 25, 2026
Merged

Cleanup generated folders and fix related issues#151
Malcolmnixon merged 6 commits into
mainfrom
template-cleanup

Conversation

@Malcolmnixon
Copy link
Copy Markdown
Member

This pull request primarily updates configuration and standards files to improve clarity, consistency, and maintainability across the project. The changes include reordering and reformatting tool definitions, clarifying and tightening standards in agent documentation, refining compliance checklists, and making style and formatting more consistent in YAML and configuration files.

Key changes:

Tool Configuration and Ordering

  • Reordered the tool definitions in .config/dotnet-tools.json to group related tools together and maintain a logical order; moved dotnet-sonarscanner, sarifmark, and sonarmark to the end for better organization. No functional changes, just improved structure. [1] [2] [3]

Standards and Documentation Clarity

  • Updated .github/agents/developer.agent.md and .github/agents/formal-review.agent.md with clearer instructions for file creation (using templates when available) and explicitly referenced verification documentation standards. [1] [2]
  • Enhanced .github/agents/lint-fix.agent.md to provide specific guidance on how to handle wide markdown pipe-tables, suggesting conversion to lists or grid tables if necessary.
  • Refined .github/agents/quality.agent.md compliance checklist: consolidated and clarified requirements, design, code quality, testing, review management, documentation, and process sections; added a new repository structure compliance section and emphasized loading relevant standards before evaluation.

Configuration and Formatting Consistency

  • Improved formatting and consistency in .cspell.yaml, .editorconfig, and .fileassert.yaml: standardized quote usage, expanded technical term lists, updated ignore patterns, and removed redundant configuration lines for clarity and maintainability. [1] [2] [3] [4]

These changes collectively enhance project maintainability, enforce clearer standards, and ensure more reliable automation and compliance checks.

Copilot AI review requested due to automatic review settings May 24, 2026 20:26
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

This pull request modernizes the repository’s compliance/documentation layout and tooling configuration, while also migrating the C# test suite from MSTest to xUnit v3 and tightening handling around generated artifacts.

Changes:

  • Migrated the DemaConsulting.TestResults.Tests project and test files from MSTest to xUnit v3 (attributes + assertions + package references).
  • Expanded/standardized requirements, design, and verification documentation trees; updated review/lint/tooling configs to consistently exclude generated/.
  • Refactored lint/build PowerShell scripts and various YAML/config files for consistency and clearer intent.

Reviewed changes

Copilot reviewed 122 out of 126 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
test/DemaConsulting.TestResults.Tests/TestResultsTests.cs Switches TestResults unit tests from MSTest to xUnit assertions/attributes.
test/DemaConsulting.TestResults.Tests/TestOutcomeTests.cs Consolidates outcome classification tests and migrates to xUnit.
test/DemaConsulting.TestResults.Tests/TestHelpers.cs Changes embedded resource helper to throw when a resource is missing.
test/DemaConsulting.TestResults.Tests/IO/TrxExampleTests.cs Migrates TRX example tests to xUnit and updates assertions.
test/DemaConsulting.TestResults.Tests/IO/SerializerHelpersTests.cs Migrates serializer helper tests to xUnit and renames a test.
test/DemaConsulting.TestResults.Tests/DemaConsulting.TestResults.Tests.csproj Replaces MSTest packages with xUnit v3 packages and adjusts test project properties.
src/DemaConsulting.TestResults/TestResults.cs Adds/expands API remarks and clarifies property documentation.
src/DemaConsulting.TestResults/TestResult.cs Adds/expands API remarks (defaults, thread-safety notes).
src/DemaConsulting.TestResults/TestOutcome.cs Adds remarks documenting extension-method classification semantics.
src/DemaConsulting.TestResults/IO/TrxSerializer.cs Improves XML serialization resource handling and adds richer API remarks.
src/DemaConsulting.TestResults/IO/Serializer.cs Adds richer API remarks and clarifies error contract.
src/DemaConsulting.TestResults/IO/JUnitSerializer.cs Improves XML serialization resource handling and adds richer API remarks.
requirements.yaml Updates ReqStream includes (notably switching OTS test framework requirements to xUnit).
pip-requirements.txt Formatting-only adjustment.
package.json Formatting-only adjustment.
lint.ps1 Simplifies/clarifies lint sections and comments; keeps extension points.
fix.ps1 Excludes generated/ during YAML line-ending normalization and simplifies comments.
docs/verification/title.txt Adds verification document collection title metadata.
docs/verification/test-results-library/test-results.md Adds verification design for the TestResults unit.
docs/verification/test-results-library/test-result.md Adds verification design for the TestResult unit.
docs/verification/test-results-library/test-outcome.md Adds verification design for the TestOutcome unit.
docs/verification/test-results-library/io/trx-serializer.md Adds verification design for TrxSerializer.
docs/verification/test-results-library/io/serializer.md Adds verification design for Serializer.
docs/verification/test-results-library/io/serializer-helpers.md Adds verification design for SerializerHelpers.
docs/verification/test-results-library/io/junit-serializer.md Adds verification design for JUnitSerializer.
docs/verification/test-results-library/io.md Adds verification design for the IO subsystem.
docs/verification/test-results-library.md Adds verification design for the overall system/library.
docs/verification/introduction.md Adds verification collection introduction (scope, artifact map, references).
docs/verification/definition.yaml Adds Pandoc build definition for verification collection.
docs/user_guide/title.txt Standardizes user guide title metadata formatting/content.
docs/user_guide/installation.md Adds new installation documentation.
docs/user_guide/faq.md Adds new FAQ documentation (formats, round-trip limits, usage patterns).
docs/user_guide/definition.yaml Adds additional user-guide sections to the Pandoc definition.
docs/user_guide/advanced.md Adds advanced usage examples and guidance.
docs/requirements_report/title.txt Standardizes trace-matrix doc title metadata.
docs/requirements_report/introduction.md Tightens trace-matrix introduction content and references.
docs/requirements_report/definition.yaml Points the report definition at generated trace matrix output.
docs/requirements_doc/title.txt Standardizes requirements doc title metadata.
docs/requirements_doc/introduction.md Tightens requirements doc introduction/scope.
docs/requirements_doc/definition.yaml Points the doc definition at generated requirements/justifications outputs.
docs/reqstream/test-results-library/test-results.yaml Restructures TestResults requirements (splitting prior collection requirement).
docs/reqstream/test-results-library/test-result.yaml Expands TestResult requirements set (identity, defaults, timing, host, etc.).
docs/reqstream/test-results-library/io/trx-serializer.yaml Nests TRX serializer requirements under system/subsystem hierarchy.
docs/reqstream/test-results-library/io/serializer.yaml Updates serializer requirements hierarchy and test evidence mapping.
docs/reqstream/test-results-library/io/serializer-helpers.yaml Updates serializer-helpers requirements hierarchy and test evidence mapping.
docs/reqstream/test-results-library/io/junit-serializer.yaml Nests JUnit serializer requirements under system/subsystem hierarchy.
docs/reqstream/test-results-library/io/io.yaml Removes old IO subsystem requirements file from the io/ subfolder.
docs/reqstream/test-results-library/io.yaml Adds new IO subsystem requirements file at the system-level folder root.
docs/reqstream/test-results-library.yaml Updates system-level requirements decomposition and adds IdentifyFormat requirement.
docs/reqstream/ots/xunit.yaml Adds xUnit OTS requirements.
docs/reqstream/ots/weasyprint.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/versionmark.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/sonarmark.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/sarifmark.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/reviewmark.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/reqstream.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/pandoc.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/mstest.yaml Renames/clarifies OTS header text (file remains present).
docs/reqstream/ots/fileassert.yaml Renames/clarifies OTS header text.
docs/reqstream/ots/buildmark.yaml Renames/clarifies OTS header text.
docs/design/title.txt Standardizes design doc title metadata.
docs/design/test-results-library/test-results.md Refactors TestResults unit design to the newer structured style.
docs/design/test-results-library/test-results-library.md Removes the old system design document (replaced elsewhere).
docs/design/test-results-library/test-result.md Refactors TestResult unit design to the newer structured style.
docs/design/test-results-library/test-outcome.md Refactors TestOutcome unit design to the newer structured style.
docs/design/test-results-library/io/trx-serializer.md Refactors TRX serializer design to the newer structured style.
docs/design/test-results-library/io/serializer.md Refactors serializer design to the newer structured style.
docs/design/test-results-library/io/serializer-helpers.md Refactors serializer-helpers design to the newer structured style.
docs/design/test-results-library/io/junit-serializer.md Refactors JUnit serializer design to the newer structured style.
docs/design/test-results-library/io/io.md Removes the old IO subsystem design document (replaced elsewhere).
docs/design/test-results-library/io.md Adds new IO subsystem design document at the system-level folder root.
docs/design/test-results-library.md Adds new system-level design document.
docs/design/introduction.md Updates design introduction and companion artifact structure mapping.
docs/design/definition.yaml Updates Pandoc definition ordering/inputs to match the new design tree.
docs/code_review_report/title.txt Standardizes code review report title metadata.
docs/code_review_report/introduction.md Tightens scope/purpose for the code review report.
docs/code_review_report/definition.yaml Points the definition at generated report output.
docs/code_review_plan/title.txt Standardizes code review plan title metadata.
docs/code_review_plan/introduction.md Tightens scope/purpose for the code review plan.
docs/code_review_plan/definition.yaml Points the definition at generated plan output.
docs/code_quality/title.txt Standardizes code quality report title metadata.
docs/code_quality/introduction.md Tightens scope/purpose for code quality evidence.
docs/build_notes/title.txt Standardizes build notes title metadata.
docs/build_notes/introduction.md Tightens scope/purpose for build notes.
docs/build_notes/definition.yaml Points the definition at generated build notes outputs.
build.ps1 Updates build flow to restore/build/test with TRX output under artifacts/tests.
AGENTS.md Expands repo overview + standards matrix, and adds explicit “no generated access” rule.
.yamllint.yaml Ignores generated/ directory.
.yamlfix.toml Formatting-only adjustment.
.reviewmark.yaml Excludes generated content and updates paths to new doc structure.
.markdownlint-cli2.yaml Adds MD004 config and ignores generated/.
.gitignore Simplifies ignores and adds **/generated/ and artifacts/ patterns.
.github/standards/verification-documentation.md Adds a verification documentation standard.
.github/standards/testing-principles.md Removes redundant header prose; keeps normative requirements.
.github/standards/technical-documentation.md Excludes generated docs and formalizes Pandoc collection structure rules.
.github/standards/software-items.md Adds Shared Package category and expands artifact model guidance.
.github/standards/requirements-principles.md Clarifies requirement wording constraints (identity vs. design).
.github/standards/reqstream-usage.md Updates folder model/examples and generated output locations.
.github/standards/csharp-testing.md Updates testing standard to xUnit v3 guidance and package references.
.github/standards/csharp-language.md Expands documentation guidance with a more complete literate example.
.github/standards/coding-principles.md Expands documentation expectations beyond just public interfaces.
.github/agents/template-sync.agent.md Adds new template-sync agent documentation.
.github/agents/software-architect.agent.md Updates software item vocabulary to include Shared Package.
.github/agents/repo-consistency.agent.md Removes repo-consistency agent documentation.
.github/agents/quality.agent.md Updates quality checklist content/structure.
.github/agents/lint-fix.agent.md Adds guidance for wide markdown tables (pipe-tables).
.github/agents/formal-review.agent.md Adds verification-documentation standard to pre-review reading list.
.github/agents/developer.agent.md Adds guidance to start new files from template counterparts when available.
.editorconfig Removes redundant empty required_modifiers/style fields and tweaks comments.
.cspell.yaml Standardizes quoting, expands word list, and ignores generated folders.
.config/dotnet-tools.json Reorders tool definitions without functional changes.

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

Comment thread docs/verification/test-results-library/test-outcome.md Outdated
Comment thread docs/verification/test-results-library/test-outcome.md Outdated
Comment thread docs/verification/test-results-library/io/serializer-helpers.md Outdated
Comment thread docs/verification/test-results-library/test-results.md
Comment thread requirements.yaml
… fileassert paths

Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/4ee533de-7666-4d1d-b714-43cc233524d4

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

@copilot And yet another generated/ path issue: pandoc.exe: docs/code_quality/codeql-quality.md: withBinaryFile: does not exist (No such file or directory)

Please check ALL definition.yaml files to make sure the paths have been updated - check https://github.com/demaconsulting/SarifMark or the standard template for what paths should have generated/ elements.

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

Copilot reviewed 122 out of 126 changed files in this pull request and generated 4 comments.

Comment thread docs/verification/introduction.md Outdated
Comment thread docs/verification/introduction.md Outdated
Comment thread docs/verification/introduction.md Outdated
Copy link
Copy Markdown
Contributor

Copilot AI commented May 25, 2026

@copilot And yet another generated/ path issue: pandoc.exe: docs/code_quality/codeql-quality.md: withBinaryFile: does not exist (No such file or directory)

Please check ALL definition.yaml files ...

Fixed in 7ed3467 — updated docs/code_quality/definition.yaml to reference docs/code_quality/generated/codeql-quality.md and docs/code_quality/generated/sonar-quality.md, matching the paths where the CI build actually produces them via SarifMark and SonarMark. All other definition.yaml files already correctly use generated/ prefixes.

…rtifact paths

Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/f267e204-f1aa-4737-aee8-cac1de6c8329

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 25, 2026 03:42
@Malcolmnixon Malcolmnixon review requested due to automatic review settings May 25, 2026 03:42
@Malcolmnixon
Copy link
Copy Markdown
Member Author

@copilot More CI failures:

File 'D:\a\TestResults\TestResults\docs/generated/TestResults Software Design.pdf' PDF metadata 'Subject' does not contain 'design document'

Check the template repo for the correct pattern

… (matches template pattern)

Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/b95a75b4-34dd-4d45-a4cd-6b3e976aa5f7

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI review requested due to automatic review settings May 25, 2026 04:09
@Malcolmnixon Malcolmnixon review requested due to automatic review settings May 25, 2026 04:09
Copy link
Copy Markdown
Contributor

Copilot AI commented May 25, 2026

@copilot More CI failures:

File 'D:\a\TestResults\TestResults\docs/generated/TestResults Software Design.pdf' PDF metadata 'Subject' does not contain 'design document'
...

Fixed in b64369b — the Design PDF Subject check in .fileassert.yaml was using contains: design document (lowercase), which failed against the description "Software Design Document for TestResults" because FileAssert's contains check is case-sensitive. Updated to contains: Design to match the template repository pattern.

@Malcolmnixon
Copy link
Copy Markdown
Member Author

@copilot And again... please try to fix all these metadata ones:

File 'D:\a\TestResults\TestResults\docs/generated/TestResults Software Design.pdf' PDF metadata 'Subject' does not contain 'design document'

Copy link
Copy Markdown
Contributor

Copilot AI commented May 25, 2026

@copilot And again... please try to fix all these metadata ones:

File 'D:\a\TestResults\TestResults\docs/generated/TestResults Software Design.pdf' PDF metadata 'Subject' does not contain 'design d...

The fix for this was already committed in b64369b. The error you're seeing came from the CI run on 857da24 (before the fix). I've verified all 8 Subject metadata checks against their corresponding description fields in each title.txt — all match. The CI run on b64369b is action_required (pending approval) so the fix hasn't run through CI yet, but the logic is confirmed correct.

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