Skip to content

Decide whether "lib.rs, then Cargo.toml, then STATUS.md" is the repository-wide authority order for a documented claim #561

Description

@justin13888

A maintainer decision, raised by PR #526 (#425) and deliberately not taken there.

What #526 established, and how far

#526 corrected the README crates table. One row (gamut-dsp) had been derived faithfully from
crates/gamut-dsp/STATUS.md:67, which lists the jpeg module under "Deferred / tracked
follow-ups" — while crates/gamut-dsp/src/lib.rs:43 declares pub mod jpeg and
crates/gamut-dsp/src/jpeg/dct.rs ships fdct8x8/idct8x8. The row was true to the file and
false about the crate.

#526 settled it for its own deliverable: where a crate STATUS.md contradicts its lib.rs,
lib.rs wins
— a claim must be true of the crate, not merely faithful to a file. That rule now
appears in three places, all of which #526 owns: the guard script header, the failure message a
contributor reads when the guard fires, and the mise.toml task description
(tooling/check-readme-crates/run.sh, mise.toml [tasks.check-readme-crates]).

The open question

Generalising that ordering to every documented claim in the repository — AGENTS.md, each
crate README.md, docs.rs module docs, Cargo.toml descriptions, STATUS.md — is a larger claim
than one README table established, and it is a maintainer call, not a lane one. So #526 put the
rule where the tooling speaks and filed this instead of editing AGENTS.md.

Reasons to take it repository-wide:

Reasons to hesitate:

  • STATUS.md is forward-looking in a way lib.rs is not: it records intent, disposition and
    what is deliberately out of scope. "lib.rs wins" is right for "does this exist", and says
    nothing about "is it finished" or "is it supported" — a pub item can exist and still be
    unstable.
  • The rule as written is about capability claims. Making it universal risks reading it as
    "documentation is descriptive only", which is not what STATUS.md is for.

Scope

Acceptance

Either AGENTS.md states the authority order with its limits, or a written decision records why
the rule stays local to the crates-table guard.

Refs #425, #526, #545, #560.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions