Skip to content

Documentation/metadata drift: stale CHANGELOG and CLAUDE.md, orphaned docs, internal artifacts shipped in the release #261

Description

@terasakisatoshi

Summary

Several user- and contributor-facing metadata files have drifted from reality, and internal development artifacts are shipped in the registry tarball. Individually small, together they make the project look unmaintained and actively mislead contributors (including AI agents driven by CLAUDE.md/AGENTS.md).

Concrete drift found

  1. CHANGELOG.md — "Unreleased" claims support for Julia "1.10, 1.11, nightly", but Project.toml requires julia = "1.12" and CI tests only 1 (with a comment that 1.10/LTS support was dropped). The [0.1.0] entry is dated 2026-01-XX (placeholder never filled in).
  2. CLAUDE.md / AGENTS.md — still instructs "Cxx.jl/ and julia/ are vendored upstream trees — do not edit", but those submodules were removed in Delete .gitmodules #215 and the directories no longer exist. Agents and contributors are being steered around directories that don't exist.
  3. docs/src/status.md — says 28 test files; actual count is 31 and will keep drifting. Hand-maintained inventory counts should be removed or generated.
  4. Stale test headers — 8 test files start with "Test cases converted from examples/<x>.jl" referring to example files deleted in Convert examples to test cases #9 (e.g. test/test_ownership_examples.jl:1, test/test_phase4_pi.jl:1).
  5. Duplicate/orphaned docdocs/troubleshooting.md (repo root of docs/) is never built by Documenter; the real page is docs/src/troubleshooting.md. The orphan will silently rot.
  6. docs/make.jl deploydocs case mismatchrepo = "github.com/AtelierArith/RustCall.jl.git" (capital A) vs. lowercase atelierarith used in the canonical URL and badges.
  7. Internal artifacts shippeddocs/plans/, docs/design/, docs/superpowers/ (13 tracked files of AI-agent plans/specs) plus a force-added benchmark/Manifest.toml (pinned to julia_version = "1.12.4" despite .gitignore containing Manifest*.toml) are all in the registry tarball delivered to every user.
  8. Misleading warning textsrc/RustCall.jl __init__ warns "rustc not found in PATH", but rustc is resolved via RustToolChain.jl, not PATH; the suggested remedy is therefore wrong for the common failure mode.

Proposed fix

  • Rewrite CHANGELOG "Unreleased"/0.1.0 with real dates and the actual supported-Julia statement; adopt keep-a-changelog discipline going forward (a release PR checklist item).
  • Update CLAUDE.md: delete the vendored-trees convention; fix the CI/test descriptions.
  • Delete docs/troubleshooting.md (orphan), fix deploydocs owner case.
  • Remove hand-counted inventories from status.md.
  • Fix the 8 stale test header comments.
  • Untrack docs/plans/, docs/superpowers/, and benchmark/Manifest.toml (or move plans/specs to a non-shipped location, e.g. a dev branch or the wiki).
  • Correct the __init__ warning to mention RustToolChain provisioning and the actual remediation steps.

Acceptance criteria

  • A fresh reader of CHANGELOG/README/status.md gets statements consistent with Project.toml and CI
  • git ls-files | grep -E 'docs/(plans|superpowers)|benchmark/Manifest' is empty
  • CLAUDE.md contains no references to removed directories

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions