Skip to content

Add VersionMark integration for tool version tracking in build documentation#108

Merged
Malcolmnixon merged 4 commits intomainfrom
copilot/update-versionmark-tool-info
Feb 15, 2026
Merged

Add VersionMark integration for tool version tracking in build documentation#108
Malcolmnixon merged 4 commits intomainfrom
copilot/update-versionmark-tool-info

Conversation

Copy link
Contributor

Copilot AI commented Feb 15, 2026

Pull Request

Description

Integrates VersionMark to capture and document tool versions used during builds. Adds comprehensive version tracking across all build jobs (quality-checks, build, integration-test, build-docs) with consolidated reporting in Build Notes PDF. Follows BuildMark pattern for self-version querying using --global flag.

Key Changes:

  • .versionmark.yaml: Defines version capture for system tools (dotnet, git, node, npm), document generators (pandoc, weasyprint), quality tools (sonarscanner, sarifmark, sonarmark), and DEMA tools (reqstream, buildmark, versionmark). ReqStream uses dotnet tool list --global for self-version handling since it's installed globally in integration and build-docs jobs.

  • .config/dotnet-tools.json: Added VersionMark 0.1.0 to project tooling.

  • .github/workflows/build.yaml: Added version capture to all jobs with unique job IDs (quality, build-win, build-ubuntu, int-win-8, int-ubuntu-9, etc.). Build-docs job aggregates all captures and publishes to docs/buildnotes/versions.md. Updated artifact name from "documentation" to "documents" for consistency with TemplateDotNetTool template.

  • .github/workflows/release.yaml: Updated artifact download name from "documentation" to "documents" to match build.yaml changes.

  • docs/buildnotes/definition.yaml: Includes versions.md in Build Notes PDF inputs.

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

Configuration-only changes. No code modifications. Tool versions will be captured during CI/CD and included in Build Notes PDF for traceability and reproducibility. Artifact naming standardized across all workflows to align with TemplateDotNetTool template conventions.


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

- Add .versionmark.yaml configuration file with tool definitions
- Add VersionMark tool to .config/dotnet-tools.json
- Update build.yaml workflow to capture tool versions in all jobs:
  - quality-checks: capture dotnet, git, versionmark
  - build: capture dotnet, git, dotnet-sonarscanner, versionmark
  - integration-test: capture dotnet, git, versionmark
  - build-docs: capture all tools and publish versions report
- Add versions.md to build notes definition for inclusion in PDF
- Follow BuildMark pattern for self-version handling (--global flag for ReqStream)

This brings ReqStream into consistency with TemplateDotNetTool template
and enables comprehensive tool version tracking in build documentation.
Copilot AI changed the title [WIP] Update Build Notes PDF with VersionMark tool version Add VersionMark integration for tool version tracking in build documentation Feb 15, 2026
Copilot AI requested a review from Malcolmnixon February 15, 2026 20:09
@Malcolmnixon
Copy link
Contributor

@copilot This is building well, but I think some of the names of the artifacts may want to be updated "documentation" vs "documents. Please run the repo consistency agent to check for consistencies such as this.

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

Copilot AI commented Feb 15, 2026

@copilot This is building well, but I think some of the names of the artifacts may want to be updated "documentation" vs "documents. Please run the repo consistency agent to check for consistencies su...

Fixed in commit 0e31244. Changed artifact name from "documentation" to "documents" on line 547 to align with TemplateDotNetTool template naming convention.

@Malcolmnixon
Copy link
Contributor

@copilot Did you check other jobs such as those in release.yaml for impact to the artifact renaming?

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

Copilot AI commented Feb 15, 2026

@copilot Did you check other jobs such as those in release.yaml for impact to the artifact renaming?

Yes, checked and fixed in commit c99e956. Updated release.yaml line 59 to use "documents" artifact name. Verified no other workflow files reference the old name.

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