Add --elaborate command to print review set details as Markdown#16
Merged
Conversation
- Context.cs: Add ElaborateId property and --elaborate argument parsing - ReviewMarkConfiguration.cs: Add ElaborateResult record and ElaborateReviewSet method - Program.cs: Add --elaborate to help text, condition, and RunDefinitionLogic handler - Validation.cs: Add RunElaborateTest self-validation test
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Add option to elaborate a review-set
Add --elaborate command to print review set details as Markdown
Mar 11, 2026
Malcolmnixon
approved these changes
Mar 11, 2026
Contributor
There was a problem hiding this comment.
Pull request overview
Adds a new --elaborate <id> command to ReviewMark that outputs a Markdown “elaboration” for a single review set (ID, full SHA-256 fingerprint, and sorted file list) to support populating evidence PDF metadata.
Changes:
- Added
--elaborate <id>argument parsing, help text, and command routing in the CLI flow. - Implemented
ReviewMarkConfiguration.ElaborateReviewSet(...)to generate the Markdown elaboration with configurable heading depth. - Added unit tests, self-validation coverage, requirements mapping, and updated user documentation with examples/workflow step.
Reviewed changes
Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| test/DemaConsulting.ReviewMark.Tests/ReviewMarkConfigurationTests.cs | Adds unit tests covering elaboration output, unknown IDs, and markdown depth behavior. |
| test/DemaConsulting.ReviewMark.Tests/ProgramTests.cs | Adds CLI-level tests for --elaborate help text, output, and error exit behavior. |
| test/DemaConsulting.ReviewMark.Tests/ContextTests.cs | Adds argument-parsing tests for --elaborate and its required value. |
| src/DemaConsulting.ReviewMark/Validation.cs | Adds ReviewMark_Elaborate self-validation test. |
| src/DemaConsulting.ReviewMark/ReviewMarkConfiguration.cs | Implements Markdown elaboration generation and adds ElaborateResult. |
| src/DemaConsulting.ReviewMark/Program.cs | Wires --elaborate into help text and definition-based execution flow. |
| src/DemaConsulting.ReviewMark/Context.cs | Adds ElaborateId to context and parses --elaborate. |
| requirements.yaml | Adds a new requirement and links it to unit/self-validation tests and platform checks. |
| docs/guide/guide.md | Documents the new command and adds it into the recommended workflow steps. |
| THEORY-OF-OPERATIONS.md | Documents elaboration behavior and example Markdown output. |
| README.md | Adds --elaborate to feature list, options table, and self-validation summary. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Co-authored-by: Copilot <175728472+Copilot@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.
Reviewers need the review set ID, current fingerprint, and full file list to populate evidence PDF metadata. This adds
--elaborate <id>to print that information formatted as Markdown.Changes
New command:
--elaborate <id>Core implementation
Context.cs—ElaborateIdproperty +--elaborateargument parsingReviewMarkConfiguration.cs—ElaborateResultrecord +ElaborateReviewSet(id, dir, depth)method; supportsmarkdownDepthfor embedding in larger documentsProgram.cs— routing, help text, error handling for unknown IDsTests & requirements
ContextTests,ReviewMarkConfigurationTests,ProgramTestsReviewMark_Elaborateself-validation test added toValidation.csReviewMark-Cmd-Elaboraterequirement added with platform/runtime test links inrequirements.yamlDocumentation
README.md,THEORY-OF-OPERATIONS.md,docs/guide/guide.mdupdated with new command, example output, and workflow stepType of Change
Related Issues
Pre-Submission Checklist
Build and Test
dotnet build --configuration Releasedotnet test --configuration Releasedotnet run --project src/DemaConsulting.ReviewMark --configuration Release --framework net10.0--no-build -- --validateCode Quality
dotnet format --verify-no-changesQuality Checks
cspell "**/*.{md,cs}"markdownlint "**/*.md"yamllint .Testing
Documentation
Additional Notes
--elaboraterequires--definition(explicit or default.reviewmark.yaml) and optionally--dirto set the file-scanning root. It runs as part of the definition-loading flow alongside--planand--report.Original prompt
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.