Skip to content

test: script-driving helpers inherit SKIP_PREFLIGHT and other control seams from the parent environment #776

Description

@genwave-radio

From the 2026-09-10 repository review (R15), re-verified on v5.8.2.

Problem. tests/GenWave.Host.Tests/Specs/Gh019_ScriptPreflight.cs:107-115 (RunScript) removes the required secret variables and sets PATH, but inherits everything else from the parent, including SKIP_PREFLIGHT. Running SKIP_PREFLIGHT=1 ./build.sh therefore makes the missing-secret, wrong-SDK and port-conflict scenarios execute later script branches and fail. Same shape in the other script-driving helpers (wizard/setup specs).

Scope. One shared helper that starts from a sanitized environment: keep platform/tool discovery (PATH, HOME, DOTNET_*, locale), strip GenWave control seams (SKIP_PREFLIGHT, SKIP_TESTS, GW_ENV_FILE, COMPOSE_FILE, COMPOSE_PROJECT_NAME, COMPOSE_PROFILES, ICECAST_*, POSTGRES_*, ADMIN_*), then apply the per-test overrides.

Acceptance.

  • The Gh019/Story342-346 suites give the same result with and without SKIP_PREFLIGHT=1 in the parent.
  • A test that explicitly passes SKIP_PREFLIGHT=1 still gets past preflight (the existing escape-hatch case at line 187).
  • A parent .env-shaped environment cannot redirect a fixture at a real station.

Related: gh-#710 (same helpers leak temp dirs).

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

    P3Low prioritybugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions