feat: apply TemplateDotNetTool PR#52 patterns (section comments, artifact consolidation, OTS self-validation, OTS requirements)#162
Conversation
…fact naming, OTS self-validation, OTS requirements) Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
|
@copilot Something very bad happened to the requirements evidence - there are now a massive number of requirements lacking testing evidence. What broke? |
…tion-test job Co-authored-by: Malcolmnixon <1863707+Malcolmnixon@users.noreply.github.com>
... The root cause was a typo introduced in the workflow: Fixed in dc8b9f4 by reverting |
Pull Request
Description
Propagates TemplateDotNetTool PR#52 improvements to SpdxTool: consistent workflow section comments, consolidated
artifacts-*artifact naming, OTS self-validation steps, and OTS Software requirements with test evidence linkage.Build Workflow — Section Comments
Added
# === SECTION NAME ===comment blocks to all jobs that were missing them (quality-checks,build,codeql,integration-test,targets-integration-test), matching the template pattern withINSTALL DEPENDENCIES,CAPTURE TOOL VERSIONS,BUILD AND TEST,UPLOAD ARTIFACTS, etc.Artifact Naming Convention
All jobs now write outputs to a local
artifacts/directory and upload underartifacts-{job}names:version-capture-quality+ no upload for qualityartifacts-quality(path:artifacts/)version-capture-{os}+test-results-{os}artifacts-build-{os}codeql-sarif(path:sarif-results/csharp.sarif)artifacts-codeql(path:artifacts/)version-capture-*+validation-test-results-*artifacts-validation-{os}-dotnet{ver}targets-test-results-{os}artifacts-targets-{os}build-docspattern: 'artifacts-*'+merge-multiple: trueDownstream paths for
reqstream --tests,sarifmark --sarif, andversionmark --publishupdated accordingly.OTS Self-Validation Steps
quality-checksandbuildjobs: addedRun VersionMark self-validationbuild-docsjob: added 5 self-validation steps (ReqStream, BuildMark, VersionMark, SarifMark, SonarMark) under a new# === CAPTURE OTS SELF-VALIDATION RESULTS ===sectionOTS Software Requirements
Added
OTS Softwaresection torequirements.yamlwith 6 requirements (SpdxTool-OTS-MSTest,-ReqStream,-BuildMark,-VersionMark,-SarifMark,-SonarMark), each linked to test evidence from the corresponding tool's--validateTRX output.Bumped
demaconsulting.reqstream1.3.0→1.4.0to gainReqStream_EnforcementModetest evidence forSpdxTool-OTS-ReqStream.Bug Fix — Integration Test Self-Validation Flag
Fixed a typo where
spdx-tool --validatewas invoked with--results(plural) instead of the correct--result(singular) flag. This caused no validation TRX files to be generated, leaving all integration-test requirements (SPDX operations, workflow, and platform requirements) unsatisfied in the reqstream enforcement check.Type of Change
Related Issues
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.SpdxTool --configuration Release --framework net10.0--no-build -- --validateCode Quality
dotnet format --verify-no-changesQuality Checks
Please run the following checks before submitting:
cspell "**/*.{md,cs}"markdownlint "**/*.md"yamllint .Testing
Documentation
Additional Notes
versionmark --capturecalls updated in all jobs to write output files underartifacts/(e.g.,--output "artifacts/versionmark-quality.json") so they are included in the consolidated artifact upload.Note:
spdx-tooluses--result(singular) for the self-validation results flag, unlike the OTS tools (reqstream, buildmark, versionmark, etc.) which use--results(plural).💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.