docs(admin): fix quote escapes rendering literally in the callout title - #10
Merged
Conversation
MkDocs admonition titles are not backslash-escaped strings — the \" in the "Heard" callout title rendered verbatim on the site as: \"Heard\" means an advert, not a wardrive Swapped to typographic quotes, which need no escaping inside the title's double quotes. Only occurrence in docs/. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
"If repeaters vanish unexpectedly, check the Observers tab first" was troubleshooting advice wedged into a callout that exists to define one term. The preceding sentence already establishes that no observer in range means the repeater ages out. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
"Defaults, for a repeater that stops adverting at day 0" read as a label rather than a sentence, and left it implicit that the timings only hold if the region hasn't changed them. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
…ctions The two were interleaved under one "Repeater Lifecycle & Data Cleanup" heading, so the repeater timeline kept having to caveat itself with what pings do — the at-a-glance summary carried an orphaned-pings clause that had nothing to do with the repeater lifecycle it was summarising. Now two sections that can each be read on their own: Repeater Lifecycle & Cleanup — the timeline, stale age, inactive, retention, ghosts, pending state, duplicate detection Coverage Ping Settings — pending link distance, stale ping cleanup Multi-region groups promoted alongside them, since it covers both. Anchors for the moved subsections are unchanged; the two links to the renamed parent are updated. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
…tion Two changes to the retention setting's copy. Removed "Recovery is only from a nightly backup" — restorability isn't something to advertise, and treating deletion as reversible undercuts the warning it sits inside. It now reads as what it is: permanent, no undo. Also reworded the example's "recoverable for 60 days", which implied a deleted row could be brought back when it meant still-on-file. Removed "most regions should keep it there" — whether to prune is a region's own call, not a recommendation the docs should make. Reframed as what the setting is for, leaving the decision with the admin. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
"Ghosts are also removed as soon as the same ID registers as a real repeater, regardless of the timer" described the bookkeeping instead of the thing that actually happens, and the example then got the timing wrong — it claimed the change landed on the next nightly run. It's immediate. api.php:1201 drops the ghost row the moment the advert is ingested, logged as ghost_promoted; the nightly GC in repeaters_cleanup.php is only a safety net for rows that slip past. So the device becomes a normal repeater on the spot and the standard timers take over from there, which is what an admin needs to know — "removed from the catalog" tells them nothing. Reframed as promotion, with Ghost Retention scoped to what it actually governs: devices that have never adverted. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
Three paragraphs of setup — how short IDs resolve, what goes wrong, then finally what the setting does — plus a three-bullet example, to say one thing: past this distance an admin approves the link. Now leads with the rule and keeps one sentence on why it exists. Dropped the example (the rule is the example) and the "affects new pings only" line, which already sits in the defaults above it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
"Real LoRa long-hauls reach about 220 km" asserted a hard propagation limit that isn't measured or sourced. Stating it as fact invites arguing with the number instead of the setting, and the reasoning doesn't need it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spotted on the live site.
MkDocs admonition titles aren't backslash-escaped strings, so
\"renders verbatim:Swapped to typographic quotes, which need no escaping inside the title's own double quotes:
One line. Only occurrence in
docs/— checked the rest of the tree and no other admonition title nests quotes.🤖 Generated with Claude Code
https://claude.ai/code/session_01KojjSrgSQQJW7Z8b3eakEA