Skip to content

Keep native wrapper assertions active in Release qualification #75

Description

@leehack

Problem

The existing native speculative/TTS contract tests use assert, including calls with side effects, but their CMake targets do not undefine NDEBUG. Release configurations can therefore compile out the checks while reporting a successful executable exit.

Causal classification

This is a pre-existing test-harness weakness exposed while adding the Windows ARM64 Release qualification lane in PR #74 / issue #73. It is not evidence of a shipped runtime regression introduced by that PR.

The new Windows lane also needs a test-time DLL search path: root wrapper/test executables are emitted under build/wa64/Release, while upstream DLLs are emitted under build/wa64/bin/Release. Missing lookup is confirmed from CMake output-directory scoping; the cause of the currently slow hosted test step is not yet proven from completed logs.

Required fix and acceptance

  • Enable assertions for the two contract-test targets in all configurations without changing production-library optimization flags.
  • Make an accidentally assertion-disabled test fail compilation.
  • Resolve both Windows DLL output directories for CTest; fail promptly with verbose diagnostics and a bounded per-test timeout.
  • Require actual pinned and candidate Windows ARM64 Release CTest passes.

Fix in PR #74 because trustworthy Release qualification is a prerequisite for its ARM64 repair. No release, artifact, or downstream pin change belongs to this issue.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority:P2Important improvement or regression; schedule next

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions