Cleanup generated folders and fix related issues#151
Conversation
There was a problem hiding this comment.
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.Testsproject 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.
… 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>
|
@copilot And yet another generated/ path issue: 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. |
Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/67228e9e-4ae5-4c6a-bb3a-ecec781af161 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Fixed in 7ed3467 — updated |
…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 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>
Fixed in b64369b — the Design PDF Subject check in |
|
@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' |
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 |
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
.config/dotnet-tools.jsonto group related tools together and maintain a logical order; moveddotnet-sonarscanner,sarifmark, andsonarmarkto the end for better organization. No functional changes, just improved structure. [1] [2] [3]Standards and Documentation Clarity
.github/agents/developer.agent.mdand.github/agents/formal-review.agent.mdwith clearer instructions for file creation (using templates when available) and explicitly referenced verification documentation standards. [1] [2].github/agents/lint-fix.agent.mdto provide specific guidance on how to handle wide markdown pipe-tables, suggesting conversion to lists or grid tables if necessary..github/agents/quality.agent.mdcompliance 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
.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.