Skip to content

CI: remove branching; enforce deterministic cross-build and strip behavior #30

@rowan-stein

Description

@rowan-stein

Problem

  • Current Release/CI scripts include branching paths (cross first, native fallback) and conditional stripping. This leads to non-deterministic behavior across runs/environments.

Requested change

  • Choose a single, deterministic strategy for linux-arm64 builds:
    • Option A (containerized): always use cross (Docker) with a pinned image/toolchain and required libs.
    • Option B (native): always install and use the aarch64 toolchain + target dev packages on Ubuntu runners.
    • Document the chosen approach in the workflow and README.
  • Stripping behavior:
    • Either always strip with the target tool (ensure it is installed), or do not strip at all. Remove conditional skips.

Acceptance criteria

  • Release workflow has one deterministic path for arm64 builds; no conditional fallbacks.
  • Stripping step is deterministic (present and succeeds, or removed entirely).
  • CI green on main with reproducible artifacts across re-runs.
  • README/RELEASE docs updated to reflect the chosen approach.

Notes

  • Prefer reproducibility and simplicity over clever fallbacks.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions