Formal review fixes: rename misleading test, document short flags, fix design gaps, add system requirements and subsystem tests - #20
Merged
Conversation
…short flags, fix rule types in design, add missing system requirements, add SelfTest subsystem tests Agent-Logs-Url: https://github.com/demaconsulting/FileAssert/sessions/d07de08d-dd39-4ae4-bb69-dbe9d6734450 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot created this pull request from a session on behalf of
Malcolmnixon
April 5, 2026 14:14
View session
Malcolmnixon
approved these changes
Apr 5, 2026
Malcolmnixon
marked this pull request as ready for review
April 5, 2026 14:15
Contributor
There was a problem hiding this comment.
Pull request overview
This PR addresses findings from a formal review sweep across the FileAssert review-sets by tightening requirement/test traceability, clarifying documentation, and adding missing subsystem/system-level coverage for CLI and self-validation behavior.
Changes:
- Renames a misleading CLI subsystem test and updates reqstream references accordingly.
- Expands design documentation to reflect all supported content rule types and documents CLI short-flag aliases.
- Adds missing system requirements for key CLI flags and introduces new SelfTest subsystem tests for system info header output and TRX results writing.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| test/DemaConsulting.FileAssert.Tests/SelfTest/SelfTestSubsystemTests.cs | Adds new SelfTest subsystem tests for system info header logging and TRX results output. |
| test/DemaConsulting.FileAssert.Tests/Cli/CliSubsystemTests.cs | Renames/retitles a CLI parsing test to accurately reflect the flags covered. |
| docs/reqstream/file-assert/selftest/selftest.yaml | Links SelfTest requirements to the newly added subsystem tests. |
| docs/reqstream/file-assert/file-assert.yaml | Adds new system requirements tied to existing CLI integration tests for version/help/validate/unknown args. |
| docs/reqstream/file-assert/cli/cli.yaml | Updates reqstream test reference to match the renamed CLI subsystem test. |
| docs/design/file-assert/file-assert.md | Updates execution flow to list all supported content rule types. |
| docs/design/file-assert/cli/cli.md | Documents short aliases for --version and --help. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Member
|
@copilot apply changes based on the comments in this thread |
…lfTestSubsystem_Run_PrintsSystemInfoHeader doc comment Agent-Logs-Url: https://github.com/demaconsulting/FileAssert/sessions/25b759cb-8298-4565-b882-2e84c6843386 Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Performed formal code reviews on all 19 review-sets defined in
.reviewmark.yaml. Each review-set was reviewed by a dedicatedcode-reviewsub-agent to prevent context collisions. Review reports were saved to.agent-logs/(gitignored).FileAssert-Cli (FAIL → fixed)
Issue 1 — Misleading test name:
CliSubsystem_CreateContext_ParsesAllSupportedFlags→CliSubsystem_CreateContext_ParsesSilentValidateAndLogFlagsto accurately reflect what is tested (only--silent,--validate,--log, not all 7 flags)docs/reqstream/file-assert/cli/cli.yamlto reference the new test nameIssue 2 — Undocumented short flag aliases:
docs/design/file-assert/cli/cli.mdto document--version/-v,--help/-h/-?short aliasesFileAssert-Design (Medium → fixed)
Issue — Incomplete rule types in execution flow:
docs/design/file-assert/file-assert.mdstep 8 to list all four content rule types (FileAssertContainsRule,FileAssertMatchesRule,FileAssertDoesNotContainRule,FileAssertDoesNotMatchRule)FileAssert-Architecture (Medium → fixed)
Issue — Four integration tests not referenced in system requirements:
docs/reqstream/file-assert/file-assert.yaml:FileAssert-System-VersionFlag→IntegrationTest_VersionFlag_OutputsVersionFileAssert-System-HelpFlag→IntegrationTest_HelpFlag_OutputsUsageInformationFileAssert-System-ValidateFlag→IntegrationTest_ValidateFlag_RunsValidationFileAssert-System-UnknownArgument→IntegrationTest_UnknownArgument_ReturnsErrorFileAssert-SelfTest (High → fixed)
Issue — Missing subsystem test coverage for design responsibilities:
SelfTestSubsystem_Run_PrintsSystemInfoHeader— verifies system information header is present in output (XML doc comment updated to remove over-reach claim about ordering)SelfTestSubsystem_Run_WithResultsFile_WritesTrxResultsFile— verifies TRX results file is created and contains test run contentdocs/reqstream/file-assert/selftest/selftest.yamlto reference both new testsType of Change
Pre-Submission Checklist
Before submitting this pull request, ensure you have completed the following:
Build and Test
dotnet build --configuration Releasedotnet test --configuration Releasedotnet run --project src/DemaConsulting.FileAssert --configuration Release --framework net10.0--no-build -- --validateCode 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
All 132 tests pass on net8.0 with zero build warnings. Review reports for all 19 review-sets are stored in
.agent-logs/(gitignored).