Skip to content

docs(adr): 0009-build-path#97

Merged
hyperpolymath merged 1 commit into
mainfrom
docs/adr-0009-build-path
May 14, 2026
Merged

docs(adr): 0009-build-path#97
hyperpolymath merged 1 commit into
mainfrom
docs/adr-0009-build-path

Conversation

@hyperpolymath
Copy link
Copy Markdown
Owner

Summary

Per V-L3-P1: four build-environment files (flake.nix, guix.scm/.guix-channel, Containerfile, .devcontainer/) plus implicit cargo build coexisted, none documented as canonical.

ADR-0009 picks two canonical paths:

Everything else is experimental — kept in the tree, not maintained, not CI-tested. Re-promotable later if a maintainer emerges.

Alternatives considered: "pick exactly one" (rejected — dev and ops are legitimately different) and "delete experimental files" (rejected — no CI cost to keeping them).

Follow-up: small README "Install" rewrite as a separate PR.

Closes

Test plan

Doc-only.

…perimental

Closes #61.

Four parallel build-environment definitions (`flake.nix`,
`.guix-channel` / `guix.scm`, `Containerfile`, `.devcontainer/`)
plus the implicit `cargo build` lived side-by-side. None was
documented as canonical, so new contributors had to guess.

ADR-0009 picks **two canonical paths**:

  - **`cargo build` for development.** Direct Rust toolchain,
    fastest iteration, MSRV-pinned via V-L3-K1 (#57).
  - **`Containerfile` for ops.** OCI image suitable for
    deployment, CI, reproducible release builds. Complementary
    to the V-L3-L1 (#58) release workflow that produces
    native binaries.

Everything else (`flake.nix`, `guix.scm`, `.guix-channel`,
`.devcontainer/`) is **experimental**: kept in the tree, not
maintained, not CI-tested. Re-promotable via a future ADR if a
maintainer emerges.

Alternatives considered:

  - Pick exactly one path: rejected; dev vs ops have legitimately
    different cost-benefit profiles.
  - Delete the experimental files: rejected; no CI cost to
    keeping them, someone put work in.

Follow-up: small README "Install" rewrite (separate PR).

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@hyperpolymath hyperpolymath merged commit 83f0849 into main May 14, 2026
16 of 18 checks passed
@hyperpolymath hyperpolymath deleted the docs/adr-0009-build-path branch May 14, 2026 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

V-L3-P1: pick one canonical build path (flake / guix / containerfile / devcontainer)

1 participant