Uh oh!
There was an error while loading. Please reload this page.
feat(DEN-1418): add reproducible Zed-to-Nix fixed-output bridge - #36
Conversation
Merge the current mainline into the Nix bridge branch before final validation. This preserves both histories, carries the newly merged Nix-to-Zed foundation into the branch, and leaves the Zed-to-Nix bridge/frozen-lock hardening intact for exact-head testing.
ORESoftware
commented
Aug 3, 2026
zed-pkg-test certification evidenceThis PR's formatter-clean head Immutable candidate smoke
The smoke sequence first exposed the frozen Full candidate certificationPin-only PR:
The candidate SHA is fully certified. PR #10 remains unmerged, so it has not yet promoted this SHA to the default reviewed certification baseline. Evidence is also recorded on DEN-1418 and in the Linear |
ORESoftware
commented
Aug 3, 2026
Follow-up test ratchet opened: #73 ( |
Preserve the complete fixed-output Zed→Nix implementation while incorporating the independent lossless .tool-versions parser and tests from current main. The changed path sets are disjoint except for the crate export surface, where both modules remain exported.
Uh oh!
There was an error while loading. Please reload this page.
Linear and RFC
Summary
Adds a reusable Nix bridge for the independent zed-pkg package manager. This has no relationship to the Zed text editor.
The bridge keeps one dependency-resolution authority:
.zpkg.lockremains the canonical resolved graph and exact provenance input.zed install --frozen --install-mode copyverifies and materializes that graph while the bridge proves lock and manifest bytes did not change.stdenvderivation consumes the verified materialization offline.What ships
nix/zed-package.nixfetchZedDeps: recursive fixed-output derivation, isolated Zed/XDG homes, frozen copy install, dependency build hooks disabled, public/credential-free registry boundary, exact immutable file-registry inputs, byte-for-byte frozen-input checks, and fail-closed symlink/transaction checks.registryPathis an explicit Nix input and may be imported withbuiltins.storePath, preserving the exactfile:///nix/store/...identity frozen into the input lock.zed.nix-lock-summary/v1inventory metadata containing artifact identity and normalized source kind, never source literal.mkZedPackage: overlays the verified tree into an ordinary network-isolated derivation while preserving the caller'sstdenvsurface and making only the private unpacked build tree writable.src/ops.rs.zpkg.lock;nix/default.nix,nix/flake.nix, andnix/flake.locklibrary/pinning entrypoints.zed-interfaces.tests/nix/interop.nix, using the exact branch binary and the existing Docker copy-mode Node fixture.autoPatchelfHookinside Nix rather than depending on host/lib.builtins.storePath, preserving both exact input identity and a declared sandbox dependency..zpkg.lock;.zpkg.lock.docs/nix-interop.mdandnix/README.md, including:zed interop nix ...command family; andzed.nix-fetch-bridge/v1,zed.nix-lock-summary/v1, and canonicalzed.nix-adapter/v1records.Explicit boundaries
Validation
All final-head checks pass: Linux and macOS Nix interop, ordinary Rust CI, copy-mode OCI, manifestless and polyglot installation suites, repository hardening, formal procedures, agents policy, and pinned development-shell coverage. The PR is ready for review; it has not been merged or configured for auto-merge.