Skip to content

Windows release contract recorder misreports non-empty argv #525

Description

@localai-bot

PR #524 adds the native Invoke-Checked runtime contract required by #512. Both hosted Windows lanes execute the zero-argument arm successfully, then fail the non-empty arm because the temporary .cmd recorder does not produce the exact three-argument record the PowerShell contract expects.

Evidence:

The failure is at scripts/build-windows-release.ps1:65: nonempty arguments did not arrive unchanged. This is a test-harness defect, not evidence that the release process has built or packaged incorrectly; both lanes stop in -ContractTest before configuring.

Replace the batch-file recorder with a native PowerShell target that records a structured, exact argument array while still exercising the real Invoke-Checked helper. Preserve the binding guarantees from #512: explicit empty arrays are accepted, a target runs exactly once, non-empty arguments arrive unchanged, and a non-zero child exit is rejected. Capture RED-first structural evidence against the current .cmd recorder, then require both hosted Windows lanes to pass. The complete exact-SHA ten-platform dry run remains mandatory before tagging v0.0.3-pre.1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions