Project

PSPublishModule

Build, test, version, sign, and publish PowerShell modules with reusable PowerForge pipelines.

Stars 48
Forks 16
PowerShell Gallery downloads 17,213
Release v3.0.186
Language: C# Updated: 2026-11-04
Command

Start-BenchmarkProvenanceCapture

Module
PSPublishModule
Inputs
None
Outputs
PowerForge.BenchmarkProvenanceCaptureSession

Captures clean source state before an external benchmark writes into a fresh artifact directory.

Syntax

Start-BenchmarkProvenanceCapture
-ArtifactRoot <String>
[-Metadata <Hashtable>]
[-RunMode <String>]
-SourceRoot <String>
[<CommonParameters>]
#
Parameter set: All Parameter Sets

Examples

Reserve a BenchmarkDotNet artifact directory before measurement

$capture = Start-BenchmarkProvenanceCapture -SourceRoot . -ArtifactRoot .\Build\BenchmarkDotNet.Artifacts -Metadata @{ 'benchmark.workload.id' = 'tabular-65k-v1' } -RunMode full

Parameters

-ArtifactRoot String required
Fresh directory where the external benchmark will write its artifacts.
-Metadata Hashtable optional
Optional workload metadata to bind before measurement. Publishable evidence requires benchmark.workload.id.
-RunMode String optional
Optional for diagnostic captures; publishable evidence requires a run mode bound before measurement.
-SourceRoot String required
Git repository root whose source is being measured.

Common Parameters

This command supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable.

For more information, see about_CommonParameters.