Skip to content

docs: add ADR 0001 (ecosystem trust, upstream contribution, fork stewardship) - #24

Merged
tonythethompson merged 2 commits into
masterfrom
adr-ecosystem-trust-upstream-fork-stewardship
Jul 2, 2026
Merged

docs: add ADR 0001 (ecosystem trust, upstream contribution, fork stewardship)#24
tonythethompson merged 2 commits into
masterfrom
adr-ecosystem-trust-upstream-fork-stewardship

Conversation

@tonythethompson

@tonythethompson tonythethompson commented Jul 2, 2026

Copy link
Copy Markdown
Collaborator

Summary

Formalizes how Numan handles third-party plugins, modules, scripts, completions, and nupm-discovered packages -- across all sources (official registry, custom registries, nupm), not just the curated official registry.

Evaluation before writing this up

  • "Registry Trust Requirements" describes already-implemented behavior -- confirmed RegistryManager's atomic index promote + last-known-good fallback already exists in src/core/registry.rs. Noted this explicitly in the ADR so it reads as a recorded requirement, not an open TODO.
  • No contradiction with existing invariants -- checked against CLAUDE.md's Critical Rules (install is inert, activate is the only Nu-touching command, Ed25519 signatures, mandatory plugin SHA-256, lockfile snapshots).
  • Orthogonal to, not a duplicate of, docs/nupm-compatibility.md's NupmOutcome taxonomy -- one answers "can we import this nupm package," the other answers "what's our trust/maintenance relationship with its origin." Added a cross-reference in nupm-compatibility.md so a future reader doesn't conflate the two.
  • The inspect/audit/provenance UX and metadata schema are genuinely new work -- no such commands exist in src/cmd/ today (info.rs is the closest analog).
  • Cited a live example: nushell/nu_scripts#1265, opened this session -- found a broken seed-package candidate and pushed the fix upstream instead of forking/patching it locally. That's Lane 1 of this ADR working in practice before the ADR existed.

Status

Proposed. The ADR's own Implementation Priorities section sequences the metadata schema, inspect/audit UX, and compat-patch/fork workflows as separate follow-up work -- none of that is part of this change.

Test plan

  • Docs-only change; no code paths touched.
  • CI green (fmt/clippy/test unaffected, but confirming).

…ardship)

Formalizes how Numan handles third-party plugins, modules, scripts,
completions, and nupm-discovered packages across all sources (official
registry, custom registries, nupm) -- not just the curated official
registry.

Evaluated against the current codebase before writing this up, not
transcribed blind:
- Confirmed the "Registry Trust Requirements" section describes
  already-implemented behavior (RegistryManager's atomic index promote
  + last-known-good fallback in src/core/registry.rs), not a new ask.
  Recorded that explicitly so this ADR doesn't read as a TODO where
  the work is done.
- Confirmed no contradiction with existing CLAUDE.md invariants
  (install is inert, activate is the only Nu-touching command, Ed25519
  signatures, mandatory plugin SHA-256, lockfile snapshots).
- Confirmed the package-status taxonomy here is orthogonal to, not a
  duplicate of, docs/nupm-compatibility.md's NupmOutcome taxonomy --
  one is "can we import this nupm package," the other is "what's our
  trust/maintenance relationship with its origin." Added a
  cross-reference in nupm-compatibility.md so the two don't get
  conflated by a future reader.
- Confirmed the inspect/audit/provenance UX and metadata schema are
  genuinely new work -- no such commands exist in src/cmd/ today.
- Cited nushell/nu_scripts#1265 (opened this session, fixing a broken
  seed-package candidate upstream instead of forking it) as a live
  example of Lane 1 already working in practice.

Status: Proposed. Implementation priorities in the ADR sequence the
metadata schema, inspect/audit UX, and patch/fork workflows as
separate follow-up work, not part of this change.
Copilot AI review requested due to automatic review settings July 2, 2026 04:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a proposed Architecture Decision Record (ADR) documenting Numan’s policy for ecosystem trust, upstream contribution, and fork stewardship across package sources, and cross-references it from the existing nupm compatibility contract to clarify that the two documents cover orthogonal concerns.

Changes:

  • Add ADR 0001 describing package trust/maintenance status classes and decision lanes (upstream vs patch vs fork vs unsupported).
  • Update docs/nupm-compatibility.md with a short cross-reference clarifying that NupmOutcome taxonomy is separate from ADR trust/maintenance status.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
docs/nupm-compatibility.md Adds a cross-reference clarifying how the nupm compatibility taxonomy relates to ADR 0001.
docs/adr/0001-ecosystem-trust-upstream-contribution-fork-stewardship.md Introduces ADR 0001 documenting ecosystem trust and fork stewardship policy.

Comment thread docs/adr/0001-ecosystem-trust-upstream-contribution-fork-stewardship.md Outdated
Comment thread docs/adr/0001-ecosystem-trust-upstream-contribution-fork-stewardship.md Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 30101f2455

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread docs/adr/0001-ecosystem-trust-upstream-contribution-fork-stewardship.md Outdated
Co-authored-by: Anthony Thompson <tonythethompson@hotmail.com>
@tonythethompson
tonythethompson merged commit 0de5265 into master Jul 2, 2026
11 checks passed
@tonythethompson
tonythethompson deleted the adr-ecosystem-trust-upstream-fork-stewardship branch July 11, 2026 05:46
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.

3 participants