VIPM CLI Machine
Scope
- •Cover only
vipmcommand-line operations on this machine. - •Prefer helper-driven execution through
scripts/Invoke-VipmCliToolProbe.ps1. - •Keep
activateout of scope in v1 to avoid licensing mutations.
Quick Start
- •Validate environment:
- •
vipm --version
- •
- •Safe probe of non-state commands:
- •
pwsh -NoProfile -File .\scripts\Invoke-VipmCliToolProbe.ps1 -Tool version -Mode probe - •
pwsh -NoProfile -File .\scripts\Invoke-VipmCliToolProbe.ps1 -Tool list -Mode probe
- •
- •Safe probe of state-changing path using expected failure:
- •
pwsh -NoProfile -File .\scripts\Invoke-VipmCliToolProbe.ps1 -Tool build -Mode probe
- •
Preflight
- •Confirm CLI availability:
vipm --version. - •Resolve LabVIEW year from:
- •explicit
-LabVIEWVersion - •
LVIE_VIPM_LABVIEW_VERSION - •nearest
.lvversionfrom current directory upward
- •explicit
- •Resolve bitness from:
- •explicit
-Bitness - •
LVIE_VIPM_LABVIEW_BITNESS - •fallback
64
- •explicit
- •Apply wait gate for running
vipm/LabVIEWprocesses unless-SkipProcessWaitis set.
Workflow Decision Tree
- •Determine intent:
- •
probefor validation/diagnostics. - •
runfor real state mutation.
- •Determine tool class:
- •non-state tools:
about,version,search,list - •state-changing tools:
build,install,uninstall
- •Apply safety gate:
- •If
run+ state-changing, require-AllowStateChange. - •If
run+-Tool all, helper fails fast unless-AllowStateChangeis present.
- •Execute helper and inspect
result_class.
Execution Workflow
- •Choose
-Mode probe|runand-Tool. - •Resolve version/bitness deterministically.
- •Enforce safety policy:
- •
build,install,uninstallare state-changing. - •In
runmode, state-changing tools require-AllowStateChange.
- •Execute command and capture stdout/stderr/exit code.
- •Classify result (
probe-pass,probe-expected-failure,probe-fail,run-success,run-failure,probe-unexpected-success). - •Write JSON result (
./TestResults/agent-logs/vipm-cli-machine.latest.jsonby default).
Helper Interface
Use scripts/Invoke-VipmCliToolProbe.ps1.
Parameters
- •
-Tool about|version|search|list|build|install|uninstall|all - •
-Mode probe|run(defaultprobe) - •
-LabVIEWVersion <year-or-numeric> - •
-Bitness 32|64(default64) - •
-AllowStateChange - •
-JsonOutputPath <path> - •
-WaitTimeoutSeconds <int>(default40) - •
-WaitPollSeconds <int>(default2) - •
-SkipProcessWait - •
-CommandTimeoutSeconds <int>(default120)
Environment Fallbacks
- •
LVIE_VIPM_LABVIEW_VERSION - •
LVIE_VIPM_LABVIEW_BITNESS - •
LVIE_VIPM_JSON_OUTPUT_PATH - •
LVIE_VIPM_WAIT_TIMEOUT_SECONDS - •
LVIE_VIPM_WAIT_POLL_SECONDS - •
LVIE_VIPM_COMMAND_TIMEOUT_SECONDS
JSON Contract Highlights
- •Per-run required fields include:
- •
timestamp_utc,tool,mode,resolved_labview_year,resolved_bitness - •
command,exit_code,result_class,stdout_preview,stderr_preview - •
timed_out,state_change_allowed,failure_message
- •
- •Payload-level fields include:
- •
command_timeout_seconds,run_count,failure_count,state_changing_requested
- •
References
- •Read
references/tool-contracts.mdwhen selecting exact command forms and interpreting probe class outcomes. - •Read
references/safety-runbook.mdbefore anyrunoperation or when a probe classification is unexpected. - •Read
references/machine-inventory.mdwhen troubleshooting environment drift or confirming installed baseline versions.