Skip to content

docs: stop offering a console deleted at #541, and pin the rule - #766

Merged
eaitbrahim merged 1 commit into
mainfrom
docs-retire-tui-references
Sep 8, 2026
Merged

docs: stop offering a console deleted at #541, and pin the rule#766
eaitbrahim merged 1 commit into
mainfrom
docs-retire-tui-references

Conversation

@eaitbrahim

Copy link
Copy Markdown
Contributor

keel tui went at #541 with ~10k lines of curses. The docs kept sending operators to it, in the present tense, for months. Five stale claims, and one of them was doubly false.

File Was
README.md "the browser view and the TUI answer" — listed as a current way to read keel
docs/glossary.md "the TUI's Help menu renders this file directly"
docs/mcp-server.md two present-tense references
docs/operator-runbook.md:215 "the Account menu's update entry in the TUI console (see 'The TUI console' for the ceremony)"

The glossary was wrong twice over. The Help menu went at #541 and render_glossary went at #540 — so the file's entire claim to authority ("defined HERE and nowhere else, because something renders it") had been hollow for two releases. It now says what's true: since #539 a term becomes an outbound link to the published copy, built from TERMS in web/static/js/docs.js — so a term added here isn't linked until it's added there too.

The runbook line was worse than stale: it cross-referenced a section "The TUI console" that doesn't exist, telling an operator to use a menu that doesn't exist. keel update has one front-end now; it had two until #541. (The browser's "A newer build is ready" button reloads the service worker — it does not replace the binary.)

None of this was catchable. Every statement was prose, and prose has no compiler.

The rule permits the history

A retired surface may be named, provided the paragraph naming it cites the issue that retired it. Mention it, date it.

A repo that scrubbed its own deletions would be worse off than one carrying a stale line — keel update really did have two front-ends, and the runbook explaining why it now has one is doing its job. So all six remaining mentions stay; each is now dated.

Per paragraph, not per line

The first cut required the line naming the surface to cite the issue, and failed on a sentence whose wrap put ​`keel tui`, a command that no longer exists two lines below its own "Until #541".

Prose wraps at 100 characters here, so a line boundary carries no meaning and a rule keyed to one is a rule about the reflow — the same trap that broke a runbook block locator earlier in this series when its introducing sentence was reworded. A paragraph is the unit a reader takes the claim from.

The scan also asserts its own glob still matches the four documents it names; a glob matching nothing would pass over any wording at all.

Checks

6,426 passed / 3 skipped, ruff clean. Two mutants killed: the README offering the TUI again, and the doc glob going blind.

🤖 Generated with Claude Code

https://claude.ai/code/session_01KZZxmspQXe5qJ9FAsG13s6

`keel tui` went at #541 with ~10k lines of curses. The docs kept sending
operators to it, in the present tense, for months.

FIVE STALE CLAIMS, ONE OF THEM DOUBLY FALSE

  README.md         "the browser view and the TUI answer" -- listed as a current
                    way to read keel.
  docs/glossary.md  "the TUI's Help menu renders this file directly". Wrong twice:
                    the menu went at #541 and `render_glossary` went at #540. The
                    file's whole claim to authority was that something rendered it,
                    and nothing had for two releases. Replaced with what is true --
                    since #539 a term becomes an OUTBOUND link to the published
                    copy, built from `TERMS` in `web/static/js/docs.js`, so a term
                    added here is not linked until it is added there too.
  docs/mcp-server.md   two present-tense references.
  operator-runbook.md:215  pointed at "the Account menu's `update` entry in the TUI
                    console (see 'The TUI console' for the ceremony)" -- a menu that
                    does not exist, cross-referencing a section that does not exist.
                    `keel update` has ONE front-end now; it had two until #541, and
                    the browser's "newer build is ready" button reloads the service
                    worker rather than replacing the binary.

None of it was catchable. Every statement was prose, and prose has no compiler.

THE RULE PERMITS THE HISTORY

A retired surface may be NAMED, provided the paragraph naming it cites the issue
that retired it. Mention it, date it. A repo that scrubbed its own deletions would
be worse off than one carrying a stale line: `keel update` really did have two
front-ends, and the runbook explaining why it now has one is doing its job.

PER PARAGRAPH, NOT PER LINE, AND THAT MATTERS

The first cut required the LINE naming the surface to cite the issue, and failed on
a sentence whose wrap put "`keel tui`, a command that no longer exists" two lines
below its own "Until #541". Prose wraps at 100 characters here, so a line boundary
carries no meaning and a rule keyed to one is a rule about the reflow -- the same
trap that broke a runbook block locator earlier in this series when its introducing
sentence was reworded. A paragraph is the unit a reader takes the claim from.

The scan also asserts its own glob still matches the four documents it names; a
glob that matched nothing would pass over any wording at all.

6,426 passed / 3 skipped, ruff clean. Two mutants killed: the README offering the
TUI again, and the doc glob going blind.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01KZZxmspQXe5qJ9FAsG13s6
@eaitbrahim
eaitbrahim merged commit 925e0bd into main Sep 8, 2026
4 checks passed
@eaitbrahim
eaitbrahim deleted the docs-retire-tui-references branch September 8, 2026 23:32
@eaitbrahim
eaitbrahim restored the docs-retire-tui-references branch September 8, 2026 23:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant