Skip to content

Add --elaborate command to print review set details as Markdown#16

Merged
Malcolmnixon merged 4 commits into
mainfrom
copilot/add-elaborate-review-set-option
Mar 11, 2026
Merged

Add --elaborate command to print review set details as Markdown#16
Malcolmnixon merged 4 commits into
mainfrom
copilot/add-elaborate-review-set-option

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 11, 2026

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>

  • Prints a Markdown document to stdout with the review set ID, full SHA-256 fingerprint (not abbreviated — must be copied verbatim into PDF Keywords), and sorted file list
  • Errors with non-zero exit if the review set ID is not found
reviewmark --elaborate Core-Logic
# Core-Logic

| Field | Value |
| :--- | :--- |
| ID | Core-Logic |
| Fingerprint | `a3f9c2d1e4b5e2f8d7c6b9a3f0e2d5c8a1b4e7f0a3d6c9b2e5f8a1d4c7b0e3` |

## Files

- `src/Core/Business/CustomerService.cs`
- `src/Core/Models/Customer.cs`

Core implementation

  • Context.csElaborateId property + --elaborate argument parsing
  • ReviewMarkConfiguration.csElaborateResult record + ElaborateReviewSet(id, dir, depth) method; supports markdownDepth for embedding in larger documents
  • Program.cs — routing, help text, error handling for unknown IDs

Tests & requirements

  • 12 new unit tests across ContextTests, ReviewMarkConfigurationTests, ProgramTests
  • ReviewMark_Elaborate self-validation test added to Validation.cs
  • ReviewMark-Cmd-Elaborate requirement added with platform/runtime test links in requirements.yaml

Documentation

  • README.md, THEORY-OF-OPERATIONS.md, docs/guide/guide.md updated with new command, example output, and workflow step

Type of Change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code quality improvement

Related Issues

Pre-Submission Checklist

Build and Test

  • Code builds successfully: dotnet build --configuration Release
  • All unit tests pass: dotnet test --configuration Release
  • Self-validation tests pass:
    dotnet run --project src/DemaConsulting.ReviewMark --configuration Release --framework net10.0
    --no-build -- --validate
  • Code produces zero warnings

Code Quality

  • Code formatting is correct: dotnet format --verify-no-changes
  • New code has appropriate XML documentation comments
  • Static analyzer warnings have been addressed

Quality Checks

  • Spell checker passes: cspell "**/*.{md,cs}"
  • Markdown linter passes: markdownlint "**/*.md"
  • YAML linter passes: yamllint .

Testing

  • Added unit tests for new functionality
  • Updated existing tests if behavior changed
  • All tests follow the AAA (Arrange, Act, Assert) pattern
  • Test coverage is maintained or improved

Documentation

  • Updated README.md (if applicable)
  • Updated ARCHITECTURE.md (if applicable)
  • Added code examples for new features (if applicable)
  • Updated requirements.yaml (if applicable)

Additional Notes

--elaborate requires --definition (explicit or default .reviewmark.yaml) and optionally --dir to set the file-scanning root. It runs as part of the definition-loading flow alongside --plan and --report.

Original prompt

This section details on the original issue you should resolve

<issue_title>[Feature]: Add option to elaborate a review-set</issue_title>
<issue_description>### Problem Statement

When holding a review, the reviewer needs the list of files to review and the fingerprint. ReviewMark should support providing this information.

Proposed Solution

Add a --elaborate [review-set] command which causes the tool to print (formatted as Markdown) an elaboration of the review including:

  • The ID of the review
  • The fingerprint of the review
  • The full list of files to review (relative to the working directory) sorted alphabetically

This will need requirements, unit-tests, self-validation, and updates to the documentation (readme, theory-of-operations, and guide).

Alternatives Considered

No response

Usage Examples

`dotnet reviewmark --elaborate Core-Logic`

Benefits

When holding a review, this provides the review information necessary for the review documentation - excluding the date and result which the reviewer(s) are responsible for populating when they execute the review.

Priority

High - Blocking my use case

Willingness to Contribute

Yes, I can submit a pull request

Additional Context

No response

Checklist

  • I have searched existing issues to ensure this is not a duplicate
  • I have provided a clear description of the feature
  • I have explained why this feature would be useful</issue_description>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 2 commits March 11, 2026 15:05
- 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 Malcolmnixon marked this pull request as ready for review March 11, 2026 15:28
Copilot AI review requested due to automatic review settings March 11, 2026 15:28
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

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.

Comment thread src/DemaConsulting.ReviewMark/ReviewMarkConfiguration.cs Outdated
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@Malcolmnixon Malcolmnixon merged commit d8ee2f8 into main Mar 11, 2026
15 checks passed
@Malcolmnixon Malcolmnixon deleted the copilot/add-elaborate-review-set-option branch March 11, 2026 16:03
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.

[Feature]: Add option to elaborate a review-set

3 participants