Sync TemplateDotNetLibrary agent/standards files and align repo to updated standards#137
Conversation
…ibrary Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/152b01e0-2987-45a3-9b13-b4a6da9a9cb8 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
- Change 1: Update all AAA comments in test files to use ':' separator instead of ' - ' and add descriptions to bare Act/Assert/combined comments - Change 2: Update test-outcome.yaml and test-result.yaml to use unit-specific test references instead of cross-unit links - Change 3: Update .reviewmark.yaml to add README.md, Purpose review, rename TestResults-System to TestResults-Architecture, and remove Platform-Runtime review Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
…tandards Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/d1c708c2-e408-4032-a3f3-eadd6b0a0477 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Syncs this repo’s agent/standards documentation with the updated TemplateDotNetLibrary baseline, then applies the new standards by updating test AAA comment formatting, requirements→tests linkage, and ReviewMark review-set structure.
Changes:
- Updated AAA section comment format across MSTest files to the
Arrange:/Act:/Assert:style. - Adjusted ReqStream unit-requirement test linkages to remove cross-unit references.
- Restructured
.reviewmark.yamlto add aPurposereview-set, revise system-level review-sets, and includeREADME.mdinneeds-review.
Reviewed changes
Copilot reviewed 15 out of 15 changed files in this pull request and generated 7 comments.
Show a summary per file
| File | Description |
|---|---|
| test/DemaConsulting.TestResults.Tests/TestResultTests.cs | AAA comment formatting updates only. |
| test/DemaConsulting.TestResults.Tests/TestResultsTests.cs | AAA comment formatting updates only. |
| test/DemaConsulting.TestResults.Tests/TestOutcomeTests.cs | AAA comment formatting updates only (combined Act+Assert wording updated). |
| test/DemaConsulting.TestResults.Tests/IO/TrxSerializerTests.cs | AAA/section comment formatting updates only. |
| test/DemaConsulting.TestResults.Tests/IO/TrxExampleTests.cs | AAA/section comment formatting updates only. |
| test/DemaConsulting.TestResults.Tests/IO/SerializerTests.cs | AAA comment formatting updates; some new Act comments are now inaccurate vs the code under test. |
| test/DemaConsulting.TestResults.Tests/IO/JUnitSerializerTests.cs | AAA/section comment formatting updates only. |
| test/DemaConsulting.TestResults.Tests/IO/IOTests.cs | AAA comment formatting updates only. |
| docs/reqstream/test-results/test-result.yaml | Updated unit requirement test links to same-unit tests (but now appears misaligned with requirement wording). |
| docs/reqstream/test-results/test-outcome.yaml | Removed cross-unit test links per updated linkage hierarchy guidance. |
| .reviewmark.yaml | Added README.md to needs-review; introduced Purpose review-set; updated system-level review-set composition. |
| .github/standards/reviewmark-usage.md | Updated ReviewMark guidance content and formatting; adds hierarchical review-set principles and patterns. |
| .github/standards/reqstream-usage.md | Added explicit “Test Linkage Hierarchy” guidance. |
| .github/standards/csharp-testing.md | Updated AAA comment format guidance to colon separators and combined Act+Assert guidance. |
| .github/agents/quality.agent.md | Updated quality checklist wording for review-set updates. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot apply changes based on the comments in this thread |
…tests, and architecture review-set Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/4dc7b958-5e0d-430c-a03e-deaf08dba906 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Applied all review changes in d5235d4:
|
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 15 out of 15 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot The requirements hierarchy is weird. The SYSTEM is this TestResults-Library (a thing that can read and write test results to different files. The problem is I'm not seeing this breakdown or hierarchical organization in the design documentation or requirements. Please examine the code, then adjust the system/subsystems/units to match this. |
…t architecture Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/80d2fc29-50db-4e9a-8f22-5435ea16dc7d Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Restructured the requirements hierarchy in f16db8c to match the architecture you described:
The resulting hierarchy in requirements now mirrors the architecture:
Resolved the naming collision in c79a5fc. The SYSTEM is now consistently named TestResultsLibrary ( Renamed folders:
Renamed system design file:
New system-level requirements file:
The hierarchy is now unambiguous: Updated: |
…ve naming collision Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/80d2fc29-50db-4e9a-8f22-5435ea16dc7d Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
|
@copilot Please make sure to update the docs/design/introduction to reflect this new system/subsystem/unit breakdown. |
Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/22caa2b7-fab2-4e86-9b57-af6bdcdc53a9 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/22caa2b7-fab2-4e86-9b57-af6bdcdc53a9 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Updated all design documentation in 45fab81. Here's a summary of every file touched:
New
New
|
|
@copilot apply changes based on the comments in this thread |
…erHelpers unit Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/bcca5ce1-cfcc-4026-978f-e05991845ce8 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Applied in c295d1e. Added |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 43 out of 44 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (1)
docs/design/test-results-library/io/serializer.md:60
- In the "SerializerHelpers Dependency" section, the text says
Serializer.Deserialize()"delegates writing" and depends on SerializerHelpers for UTF-8 output.Deserialize()is a read path; the UTF-8 writer helper is used byTrxSerializer.Serialize()/JUnitSerializer.Serialize()(write path). Update this section to refer to the serialize path (and/or the serializers) to avoid documenting incorrect behavior.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot apply changes based on the comments in this thread |
…ers.yaml Agent-Logs-Url: https://github.com/demaconsulting/TestResults/sessions/2f093c5b-1389-4162-936c-bd9784b26e01 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Applied in 81e4f14. Added dedicated UTF-8 encoding tests for both |
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 43 out of 44 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (1)
docs/design/test-results-library/io/serializer.md:60
- This section incorrectly states that
Serializer.Deserialize()“delegates writing” and that it depends onSerializerHelpersfor UTF-8 output encoding. In the implementation,Serializer.Deserialize()only delegates deserialization toTrxSerializer.Deserialize()/JUnitSerializer.Deserialize()and does not useUtf8StringWriterat all; the UTF-8 declaration concern applies toTrxSerializer.Serialize()/JUnitSerializer.Serialize(). Update this section to reflect the real dependency (or remove it from the Serializer doc and keep it in the serializer-specific docs / SerializerHelpers doc).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Pull Request
Description
Syncs this repo's agent/standards documentation with the updated
TemplateDotNetLibrarybaseline, then applies the new standards across requirements, design documentation, tests, and ReviewMark review-sets.Type of Change
Related Issues
Pre-Submission Checklist
Before submitting this pull request, ensure you have completed the following:
Build and Test
dotnet build --configuration Releasedotnet test --configuration ReleaseCode Quality
dotnet format --verify-no-changesQuality Checks
Please run the following checks before submitting:
./lint.sh(Unix/macOS) orcmd /c lint.bat/./lint.bat(Windows)Testing
Documentation
Additional Notes
Requirement ID contraction fixes:
-Ser-→-Serializer-and-Jun-→-JUnit-in req YAMLs and design docs-Mdl-→-Model-in req YAMLs and design docs-Run-→-Runtime-inplatform-requirements.yamlRequirements hierarchy restructure:
TestResultsLibrary) with platform/runtime requirements, three top-level model units (TestOutcome,TestResult,TestResults), and an IO subsystem with five units (Serializer,SerializerHelpers,TrxSerializer,JUnitSerializer)TestResultsLibrary-Architecture-*) withchildrenlinks to subsystem/unit requirementschildrenlinks to IO unit requirementsserializer-helpers.yamlunit requirements file for theSerializerHelpersunit; added correspondingTestResults-IO-SerializerHelpersReviewMark review-setTestResults-SerializerHelpers-Utf8Encodingrequirement evidenced by dedicated testsTrxSerializer_Serialize_IncludesXmlDeclarationWithUtf8EncodingandJUnitSerializer_Serialize_IncludesXmlDeclarationWithUtf8EncodingDesign documentation updates:
test-results-library.mdsystem design with In-Memory Model and IO Subsystem sectionstest-results.md(TestResults unit design) andio/serializer-helpers.md(SerializerHelpers unit design)introduction.md,io/io.md,io/serializer.md, andtest-outcome.mdto reflect the correct hierarchyTest linkage fixes:
SerializerTests.csAct comments (changed "identify" → "deserialize" to match actual calls)TestResultoutput/error properties to properly validate capture capabilityTrxSerializer_Serialize_IncludesXmlDeclarationWithUtf8EncodingandJUnitSerializer_Serialize_IncludesXmlDeclarationWithUtf8Encodingtests to assert the serialized XML output contains a UTF-8 encoding declarationplatform-requirements.yamlto link platform/runtime requirements to all five system-levelTestResultsLibrary_*tests (FormatAgnosticModel, Serialize TRX/JUnit, Deserialize TRX/JUnit) with appropriate source filter prefixes (windows@,ubuntu@,macos@,net8.0@,net9.0@,net481@,net10.0@) instead of unit-level serializer testsReviewMark updates:
Purposereview-set; removedSerializerTests.csfrom system-levelTestResults-Architecturereview-setTestResults-IO-SerializerHelpersreview-set coveringserializer-helpers.yaml,serializer-helpers.md, andSerializerHelpers.csLinting fixes:
comments-indentationerrors in 4 OTS YAML files (mstest.yaml,sonarscanner.yaml,pandoctool.yaml,weasyprinttool.yaml) by removing commented-out requirements template blocks from inside list items (TODO comments retained)organised→organized(×3 inintroduction.md),initialised→initialized(test-results.md),behaviour→behavior(test-results-library.yamlandTestResultsLibraryTests.cs)