Describe the bug
CLAUDE.md (the project-instructions file read by AI coding assistants and contributors) has drifted out of sync with the actual code and with README.md/CHANGELOG.md:
-
"Known bugs (do not re-introduce)" section describes an already-fixed bug. It says ManifestVersion.LTS is typed bool with a useless TS string fallback field. The actual code (internal/node/dist.go:25-62) already uses LTSCodename *string with a correct custom UnmarshalJSON that properly distinguishes the nodejs.org lts JSON union — matching CHANGELOG's "Unreleased" section, which documents this exact fix as already shipped. As written, this section could mislead a future contributor (or AI assistant) into "fixing" something that isn't broken, or cause confusion hunting for a bug that no longer exists.
-
Phase-status table is stale. It lists Phase 5 (Config subsystem) as "Not started" and Phase 6 (Cross-platform polish) as "Not started." Both are fully implemented per CHANGELOG's Unreleased section (YAML config + subcommands; QuotePath; interrupted-upgrade sentinel; system-node classifier) and per README's own Project-status table, which marks Phases 1-6 all done.
-
Architecture table is wrong about internal/packages/restore.go. It documents a file restore.go with Restore(ctx, managerName, version). No such file exists — Restore (and an additional, undocumented RestoreFromSnapshot(ctx, path)) both live in snapshot.go. The function signature is otherwise accurate; only the file location is wrong.
Suggested fix
Update CLAUDE.md's "Known bugs" section (remove or mark resolved), Phase-status table (sync to README's), and architecture table (restore.go → snapshot.go) to match current reality. Consider running this through the claude-md-management:claude-md-improver skill/workflow.
Severity
Medium (process/accuracy issue, not a code bug) — but actively misleading for anyone (human or AI) using this file as a source of truth about project state.
Describe the bug
CLAUDE.md(the project-instructions file read by AI coding assistants and contributors) has drifted out of sync with the actual code and withREADME.md/CHANGELOG.md:"Known bugs (do not re-introduce)" section describes an already-fixed bug. It says
ManifestVersion.LTSis typedboolwith a uselessTS stringfallback field. The actual code (internal/node/dist.go:25-62) already usesLTSCodename *stringwith a correct customUnmarshalJSONthat properly distinguishes the nodejs.orgltsJSON union — matching CHANGELOG's "Unreleased" section, which documents this exact fix as already shipped. As written, this section could mislead a future contributor (or AI assistant) into "fixing" something that isn't broken, or cause confusion hunting for a bug that no longer exists.Phase-status table is stale. It lists Phase 5 (Config subsystem) as "Not started" and Phase 6 (Cross-platform polish) as "Not started." Both are fully implemented per CHANGELOG's Unreleased section (YAML config + subcommands;
QuotePath; interrupted-upgrade sentinel; system-node classifier) and per README's own Project-status table, which marks Phases 1-6 all done.Architecture table is wrong about
internal/packages/restore.go. It documents a filerestore.gowithRestore(ctx, managerName, version). No such file exists —Restore(and an additional, undocumentedRestoreFromSnapshot(ctx, path)) both live insnapshot.go. The function signature is otherwise accurate; only the file location is wrong.Suggested fix
Update
CLAUDE.md's "Known bugs" section (remove or mark resolved), Phase-status table (sync to README's), and architecture table (restore.go→snapshot.go) to match current reality. Consider running this through theclaude-md-management:claude-md-improverskill/workflow.Severity
Medium (process/accuracy issue, not a code bug) — but actively misleading for anyone (human or AI) using this file as a source of truth about project state.