Skip to content

Integrate reproducible external builds and v0.0.3-beta release hardening - #188

Merged
LunaStev merged 10 commits into
wavefnd:masterfrom
LunaStev:feat/v003-release-integration
Nov 2, 2026
Merged

LunaStev merged 10 commits into
wavefnd:masterfrom
LunaStev:feat/v003-release-integration

Conversation

@LunaStev

@LunaStev LunaStev commented Nov 2, 2026

Copy link
Copy Markdown
Member

External Meson consumers need independent build directories, verified reusable result files, and complete last-good outputs when a rebuild fails. Add the approved format-5 build model and the v0.0.3-beta implementation across manifest, resolver, compiler, state, CLI, tooling and documentation.

  • Separate source, build and dependency storage with coordinated leases; support prepared read-only locked/offline builds.
  • Publish immutable artifact generations through a recoverable commit point, with owned artifact manifests and depfiles. Preserve prior outputs on compile failure, cancellation and interrupted publication.
  • Add explicit compiler/std content pins, typed freestanding/relocation settings, deterministic target-aware static archives, portable provenance and metadata schema 3/build-plan schema 2.
  • Supply a Meson C/C++/Rust consumer, scoped package-graph integration, and static-library execution in the existing nine-host acceptance lanes.
  • Fix the selected installer, compiler-plan, diagnostics, conditional-remove and output-contract regressions; update repository ownership/forms/roadmap and patch zip to 9.0.5 without audit exemptions or dependency bots.

Validation: Meson check (format, Python tooling, workspace Rust tests, all-target Clippy and build) and Meson quality (source/repository policy, external links, clean dependency audit, 2,000 parser mutations) passed. The artifact integrity suite passes 19 tests including interrupted report recovery and cancellation preserving completed outputs. Windows GNU and Linux ARM64/RISC-V/LoongArch workspace cross-checks passed; these are compile checks, not native execution. Linux release-profile packaging, version/help smoke and SHA256SUMS passed as a development package, not a published release. Actual public Wave 0.2.1 baseline and O0/O2 static C/C++/Rust interop passed locally. Prepared development Wave also passed scoped transitive versions, the full Meson consumer, and separate-directory O0/O2 archive/provenance comparisons across all nine target formats. Remote platform CI must validate this PR's exact head.

Companion compiler work: wavefnd/Wave#1071. Existing public Wave 0.2.1 gates remain required. As approved, the new scoped graph, complete source-input and path-remapping acceptance becomes mandatory only after a compatible public Wave artifact is released and pinned; no source-build gate or implicit installation is introduced. #58, #182 and #184 remain linked for that companion/public-release acceptance rather than being closed prematurely.

The previously approved executable-main test-target contract satisfies #60; no compiler-specific unit-test harness is claimed. Manifest formats 1–4 retain their meaning without automatic conversion; existing lock and exclusive JSONL contracts remain.

Closes #60
Closes #76
Closes #83
Closes #99
Closes #162
Closes #163
Closes #164
Closes #165
Closes #166
Closes #167
Closes #168
Closes #169
Closes #170
Closes #171
Closes #172
Closes #173
Closes #174
Closes #177
Closes #178
Closes #179
Closes #180
Closes #181
Closes #183
Closes #185
Closes #186
Closes #187

Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Signed-off-by: LunaStev <luna@lunastev.org>
Match normal and verbatim project paths when selecting storage and validating existing ownership records without rewriting them. Keep long-path coverage independent of source relocation, accept both valid Windows depfile separators, and collect all Rust test failures in Meson.

Signed-off-by: LunaStev <luna@lunastev.org>
Retry transient curl transport failures at most twice within the existing total deadline. Discard partial downloads before retrying and retain TLS, size, checksum, and publication checks. Exercise truncated responses and non-retryable HTTP failures with a loopback server.

Signed-off-by: LunaStev <luna@lunastev.org>
Reset accepted HTTP fixture sockets to blocking mode on Windows and exercise delayed requests. Keep authenticated compiler API queries on the cross-build host, replay only exact public responses during guest setup, and retain all artifact and provenance validation without forwarding credentials.

Signed-off-by: LunaStev <luna@lunastev.org>
@LunaStev
LunaStev merged commit 937a89b into wavefnd:master Nov 2, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment