Skip to content

Add BuildMark build notes generation#106

Merged
Malcolmnixon merged 6 commits intomainfrom
copilot/add-buildmark-build-notes
Feb 10, 2026
Merged

Add BuildMark build notes generation#106
Malcolmnixon merged 6 commits intomainfrom
copilot/add-buildmark-build-notes

Conversation

Copy link
Contributor

Copilot AI commented Feb 10, 2026

Pull Request

Description

Implements automated build notes generation using BuildMark, following the pattern established in ReqStream. BuildMark analyzes Git history and GitHub issues to generate structured release notes, with full HTML and PDF documentation generation.

Changes:

  • .config/dotnet-tools.json: Added BuildMark v0.2.0
  • docs/buildnotes/: Created documentation structure with title, introduction, and Pandoc configuration
  • .github/workflows/build.yaml:
    • Added BuildMark generation step to build-docs job
    • Changed Display step to use shell: bash with cat for consistency
    • Added Pandoc HTML generation step for build notes with title.txt, version metadata, and date metadata (matching all other document generation steps)
    • Added Weasyprint PDF generation step for build notes
    • Uploads buildnotes.md and PDF artifact
  • .github/workflows/release.yaml: Uses buildnotes.md as release body instead of GitHub's auto-generated notes
  • .gitignore: Added comprehensive patterns for all generated documentation files:
    • Generated markdown: docs/buildnotes.md (plus existing patterns for requirements, tracematrix, justifications)
    • Generated HTML files in all subdirectories: docs/guide/*.html, docs/requirements/*.html, docs/tracematrix/*.html, docs/justifications/*.html, docs/quality/*.html, docs/buildnotes/*.html
    • Generated PDFs: docs/*.pdf

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

Before submitting this pull request, ensure you have completed the following:

Build and Test

  • Code builds successfully: dotnet build --configuration Release
  • All tests pass: dotnet test --configuration Release
  • 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

Please run the following checks before submitting:

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

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

No changes to application code—workflow and documentation configuration only. The implementation includes the complete documentation generation pipeline (Markdown → HTML → PDF) with full consistency to existing documentation patterns. The Pandoc invocation includes title.txt, version metadata, and date metadata matching all other document generation steps (User Guide, Requirements, Trace Matrix, Justifications, Quality). All generated documentation artifacts (HTML, PDF, and generated markdown files) are properly added to .gitignore following the ReqStream pattern, ensuring all temporary HTML files in subdirectories are excluded from version control.

Original prompt

Please implement BuildMark build notes as demonstrated in https://github.com/demaconsulting/ReqStream. Specifically follow it as a template and make sure to:

  • Add the DemaConsulting.BuildMark tool to dotnet-tools.json
  • Add the docs/buildnotes folder
  • Update the build-docs job to generate the build notes
  • Update the release.yaml to use the buildnotes.md as the release body file.

💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Copilot AI changed the title [WIP] Implement BuildMark build notes following template Add BuildMark build notes generation Feb 10, 2026
Copilot AI requested a review from Malcolmnixon February 10, 2026 14:07
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
run: >
dotnet pandoc
--defaults docs/buildnotes/definition.yaml
--filter node_modules/.bin/mermaid-filter.cmd
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where's the metadata lines - take a look at the other pandoc invocations when building documents.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added in commit dc90c63:

  • docs/buildnotes/title.txt as first argument
  • --metadata version="${{ inputs.version }}"
  • --metadata date="$(date +'%Y-%m-%d')"

Now matches the pattern used in all other Pandoc invocations (User Guide, Requirements, Trace Matrix, Justifications, Quality).

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>

# Generated documentation
docs/*.html
docs/buildnotes/*.html
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about the other temporary HTML files?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added in commit f82521a. Now includes gitignore patterns for all generated HTML files:

  • docs/guide/*.html
  • docs/requirements/*.html
  • docs/tracematrix/*.html
  • docs/justifications/*.html
  • docs/quality/*.html
  • docs/buildnotes/*.html

Matches the pattern used in ReqStream.

Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
@Malcolmnixon Malcolmnixon marked this pull request as ready for review February 10, 2026 16:15
@Malcolmnixon Malcolmnixon merged commit 0e3ded8 into main Feb 10, 2026
11 checks passed
@Malcolmnixon Malcolmnixon deleted the copilot/add-buildmark-build-notes branch February 10, 2026 16:15
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.

2 participants