Repository navigation
graft: recover orphan branch rescue/orphan-7d7132f79c48-merge-den-1418-compose-nix-export-plan-s onto main - #6
Merged
ORESoftware merged 140 commits intoSep 12, 2026
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
- zed-interfaces: VersionScheme (semver/calver/opaque), tolerant version parsing (v-prefix, Go +incompatible, PEP 440), npm-style range parsing, shared sync contract types (SyncWriteMode/ErrorPolicy/ChangeEvent), regenerated schemas. - zed-cli: resolve via the shared calver-aware resolver; deterministic zip artifacts alongside tar.gz with magic-byte extraction. - zed-api-server: persist and serve version_scheme (entity + migration + handlers). - zed-clients: dependency-free sync wire types bridge. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…rl validation - PackageSection gains bin, build ([build] command+outputs), build_dependencies, workspace ([workspace] members), and overrides.build sections for the polyglot build-cache, binary-hoisting, monorepo, and consumer-patch features. - Validate repository URL scheme, bin names/targets, and build outputs; reject range-shaped requirements that don't parse (no silent degrade to opaque tag). - Add is_sha256_hex + is_safe_relative_path guards for the CLI trust boundary. - Add build_entry_rel/current_platform (per-platform build cache) and BIN_DIR. - Yank REST DTOs (YankRequest/YankResponse) + yank_path helper. - Regenerate JSON schemas; fix stale zed.toml/zed.lock doc references. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The generated schemas/ are the contract the non-Rust SDKs mirror; verify they stay in sync with the source types on every push. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Adds an [install] section with a `dir` (default `zed_modules`; e.g. `.vendor/.zed` or `.deps/.zed`) plus an optional `adapter`, and a Manifest::modules_dir() helper. The dir must be a safe relative path (InvalidInstallDir otherwise). This lets zed COMPLEMENT npm/maven rather than replace them: the few zed-sourced deps land in a project-relative tree the ecosystem adapter then wires into the toolchain. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The InstallSection addition (install.dir / install.adapter) landed in the Rust types but the committed JSON schemas were never regenerated, so the "Schemas are up to date" CI gate failed. Regenerated via `cargo run --example generate_schemas`. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The shared contract for the org audit trail (zed-docs issue #7), so the server, CLI, and generated client schemas cannot disagree on it. `AuditEntry` carries the raw `action` string alongside a parsed `action_kind`, and `AuditAction::parse` returns Option: an unrecognized action from a newer server deserializes cleanly on an older client instead of failing the whole response. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…language
A client repo (fiducia-clients, zed-clients, …) ships the same library for
several ecosystems. Installing all of them into every consumer is wrong: a
Java build should never download the Node sources.
[targets.<lang>] declares one language subtree per ecosystem:
[targets.nodejs] dir = "clients/ts" adapter = "node"
[targets.java] dir = "clients/java" adapter = "java"
[targets.golang] dir = "clients/go"
Each target is its own PUBLISHED package, named <name>-<target> by default
(overridable per target), so one repo and one version fan out to
fiducia/fiducia-clients-{nodejs,java,golang}@1.1.2 — a consumer depends on
the one it needs and downloads only those bytes.
manifest_for_target() derives the standalone manifest that ships inside each
artifact: same org/version/repo, the target's own name and adapter, and no
[targets] (a slice is single-language by construction, so fan-out cannot
recurse). [install].target + target_subdir() cover the consumer side for
path/workspace deps that point at the polyglot root.
Target names and dirs are validated (slug names, no absolute/.. dirs).
Packages without [targets] are entirely unaffected.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The schema-drift gate caught it: [targets] landed in the manifest without regenerating schemas/, which the non-Rust SDKs codegen from. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…Search*, EmbeddingUpsertRequest); regen schemas Companion to zed-api-server's package_embedding (pgvector 2050) + tags work. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Support whole-repository targets safely by excluding generated pack output and covering the boundary in tests.
Preserve the new environment-plan interfaces and schemas from main while retaining only the strict lockfile contract, generated lock schema, and compatibility fixture changes from DEN-1464.
Require explicit artifact format and immutable VCS revision, reject malformed and duplicate package identities, align serialization and JSON Schema, retain non-Git immutable revision compatibility, and preserve current Nix/environment interfaces for DEN-1464.
Keep committed locks and JSON Schema strict while normalizing legacy in-memory missing revisions to explicit artifact-sha256 provenance at canonical serialization, with unit, public integration, schema, Nix, and policy evidence for DEN-1464.
Add the exact manager-neutral environment/tool lock on current main, including immutable source and artifact identity, portable install layouts, credential-safe locators, source/artifact consistency, Windows command collision detection, recursive extension validation, deterministic schema generation, and cross-platform contract tests.
Add strict OCI references, immutable descriptor and layer contracts, deterministic adapter records, generated JSON Schema, and service-independent validation for the Zed OCI interoperability stack.
…-nix-export-plan-s into main (graft, scaffolding reconciled) `rescue/orphan-7d7132f79c48-merge-den-1418-compose-nix-export-plan-s` was recovered from a dangling commit and shares no history with `main`. This is a real two-parent merge built with plumbing (no checkout). Every path the orphan adds is taken verbatim (71 file(s)). The overlap was scaffolding only: .gitignore: union (2 extra rule(s) carried over) kept main's current version: README.md The orphan's own copies remain readable at `git show 7d7132f:<path>`. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KAAGBnXTSw7zE5xnY4tiBY
ORESoftware
marked this pull request as ready for review
September 12, 2026 10:03
ORESoftware
deleted the
graft/rescue-orphan-7d7132f79c48-merge-den-1418-compose-nix-export-plan-s-20260905
branch
September 12, 2026 10:03
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Draft.
rescue/orphan-7d7132f79c48-merge-den-1418-compose-nix-export-plan-swas rescued from a dangling commit, so it has no common history withmainand GitHub would not open a pull request for it.This branch is a genuine two-parent merge of
origin/mainand7d7132f79c4832647383236dc05658c57c477b69, built withgit merge-tree/commit-treeplumbing — no checkout, no working-tree change anywhere.How the overlap was resolved (both sides carried these files; there is no common ancestor to diff against):
.gitignore— union (2 extra rule(s) carried over)main's current version:README.mdThose are scaffolding files that
mainhas regenerated since the orphan was written; the orphan's own copies are not lost — read them withgit show 7d7132f79c4832647383236dc05658c57c477b69:<path>. Everything else the orphan adds (71 file(s)) is here verbatim.🤖 Generated with Claude Code
https://claude.ai/code/session_01KAAGBnXTSw7zE5xnY4tiBY