docs: refresh CLAUDE.md, README, CHANGELOG for 4.6.1 accuracy#3090
Conversation
The agent brief was stale at 4.x with several incorrect specifics that
have tripped up both Claude sessions and end users:
- Migration count was 52 / latest 052_*; the registry now holds 62 with
latest 062_meshcore_messages_fromname. Also corrected the stale
"44 migrations" comment in src/db/migrations.ts.
- Default admin password listed as `changeme1` (with `changeme` as the
"legacy" value) — the code in src/services/database.ts:7394 actually
seeds `changeme`, which is also what authRoutes.ts checks against for
the isDefaultPassword warning. Reversed.
- Stack header bumped to 4.6.1 and clarified Node version (Docker ships
Node 24, CI matrix is 20/22/24/25) and MeshCore protocol coverage.
- Tightened the `meshtasticManager` singleton note — it's JSDoc
`@deprecated`, which IDEs strike through but tsc does not error on.
Surfaced the /data/meshmonitor.db default in both CLAUDE.md
("Operational gotchas") and README ("Manual deployment") — this is the
root cause of issue #3085 for bare-metal Raspbian users who never set
DATABASE_PATH. Also fixed the broken README anchor that pointed at
`#manual-nodejs-deployment` (the actual heading is
"Bare Metal (Node.js) Deployment").
Added a CHANGELOG note explaining that per-version history stops at
2.18.1 and pointing readers to GitHub Releases for 3.x/4.x details,
and retitled the dangling [Unreleased] section so the entries below
it aren't misread as still-pending.
|
Claude finished @Yeraze's task —— View job Pull Request ReviewReviewing this documentation refresh PR to validate accuracy and identify any issues. Review Checklist
✅ Excellent Documentation Refresh - All Claims VerifiedThis PR accurately corrects several documentation inconsistencies. All claims have been verified against the codebase: Migration Count ✅
Default Password ✅
SQLite Default Path ✅
Deployment Guide Anchor ✅
Node.js Versions ✅
Code Quality AssessmentStrengths
No Security/Performance Issues
Best Practices Followed
Minor SuggestionThe API testing section still shows Verdict: LGTM 🚀This is exemplary documentation maintenance—every change is backed by concrete evidence and addresses real user pain points. No blocking issues identified. |
Per-version history was last fully maintained at 2.18.1. Every shipped
release between 3.0.0 (multi-database, 2026-01-19) and 4.6.1
(2026-05-18) is now back in the file, sourced verbatim from the
published GitHub Releases. 85 versions added in reverse-chronological
order; pre-release tags (alpha/beta/RC/rc-tagged or prerelease=true)
were excluded.
Note: 4.4.x has no entries — that line was alpha-only and never had a
GA release.
Also stripped the auto-generated trailer ("## 🚀 MeshMonitor vX.Y.Z" +
Installation / Testing / Changes boilerplate) that the release-creation
pipeline appends to every release body, since it duplicates content
already covered by the per-release summary above it. Result: ~4,220
lines instead of ~5,950, with all human-authored content preserved.
Removed the placeholder "Note: history stops at 2.18.1, see GitHub
Releases" preamble from the previous commit, and added a clean
[Unreleased] section at the top.
|
Claude finished @Yeraze's task —— View job Pull Request ReviewReviewing this documentation refresh PR to validate accuracy and identify any issues. Review Checklist
✅ Excellent Documentation Refresh - All Claims VerifiedThis PR accurately corrects several documentation inconsistencies. All claims have been verified against the codebase: Migration Count ✅
Default Password ✅
SQLite Default Path ✅
Deployment Guide Anchor ✅
Node.js Versions ✅
Code Quality AssessmentStrengths
No Security/Performance Issues
Best Practices Followed
Minor SuggestionThe API testing section still shows Verdict: LGTM 🚀This is exemplary documentation maintenance—every change is backed by concrete evidence and addresses real user pain points. No blocking issues identified. |
Summary
Audited the three pieces of built-in documentation Claude sessions and new users hit first —
CLAUDE.md,README.md,CHANGELOG.md— and corrected the points that no longer match the codebase. Spun out of the investigation for issue #3085 (bare-metal Raspbian user confused by the/data/meshmonitor.dbdefault).CLAUDE.md (Agent brief)
52with latest052_add_source_id_to_embed_profiles; the registry insrc/db/migrations.tsactually holds 62, latest is062_meshcore_messages_fromname. Updated both mentions and the range "Migrations 020–052" → "020–062".changeme1"(legacy seeds usedchangeme)". The code insrc/services/database.ts:7394seedschangeme, andsrc/server/routes/authRoutes.ts:138checks againstchangemeto emitisDefaultPassword=true. There's nochangeme1anywhere in the code. Corrected tochangeme.meshcore.jsfor companion, serial CLI for repeater) in the stack line.@deprecatedJSDoc tag at the bottom ofmeshtasticManager.ts— IDEs strike it through buttscdoes not error./data/meshmonitor.dbregardless of platform; bare-metal needsDATABASE_PATHor a writable/data/). This is the root cause of [SUPPORT] 4.6.1 on Raspbian baremetal #3085.README.md
docs/deployment/DEPLOYMENT_GUIDE.md#manual-nodejs-deployment— that anchor doesn't exist. The actual heading is "Bare Metal (Node.js) Deployment", so the anchor is#bare-metal-nodejs-deployment. Fixed./data/meshmonitor.dbdefault note next to the Manual bullet so bare-metal installers see it before they hit the failure.CHANGELOG.md
> Note:block at the top of the file explaining the gap and pointing at GitHub Releases, and retitled the dangling[Unreleased]heading so the feature highlights below it aren't misread as still-pending work.src/db/migrations.ts
src/db/migrations.test.ts, which is the place that already breaks if you forget to update it.What I verified
grep -c 'registry.register' src/db/migrations.ts→ 62; lastnumber:is 62; lastname:ismeshcore_messages_fromnamechangemesrc/services/database.ts:7394,src/server/routes/authRoutes.ts:138,src/codebase-integrity.test.ts:192/data/meshmonitor.dbdefaultsrc/server/config/environment.ts:433(process.env.DATABASE_PATH || '/data/meshmonitor.db') — no platform branchingDockerfile: 24.15.0;Dockerfile.armv7: 22.22.2;.github/workflows/ci.yml: matrix[20.x, 22.x, 24.x, 25.x]@deprecatedshimsrc/server/meshtasticManager.ts:12971-12975grep '^#' docs/deployment/DEPLOYMENT_GUIDE.md→ "Bare Metal (Node.js) Deployment"Test plan
Generated by Claude Code