| 📦 Turbo Rust 713ea5c k33g 13h ago | 1 | # Handoff — 2026-09-03 — the defects a third editor exposed here |
| 2 | |
| 3 | ## Where this stopped |
| 4 | |
| 5 | Done, nothing in flight. **Documentation only; no code changed and no dependency moved.** |
| 6 | |
| 7 | ## Why this repository was touched at all |
| 8 | |
| 9 | turbo-python was built by adapting this project's documentation. Adapting it found three |
| 10 | things that were wrong **here**, not just in the copy. |
| 11 | |
| 12 | ## What changed |
| 13 | |
| 14 | - `docs/en/reference/menus.md` — said project menus appear **"between Go and Help"**, twice, |
| 15 | in an editor whose menu is called Rust. The French version had it right. This is the same |
| 16 | mistake this project already recorded and fixed once, in the French tools reference: a |
| 17 | mechanical substitution that only looked at identifiers. |
| 18 | - `docs/{en,fr}/reference/menus.md` and `docs/{en,fr}/tutorials/getting-started.md` — the |
| 19 | menu bar listing omitted **Code**. |
| 20 | - `docs/{en,fr}/tutorials/getting-started.md` — "press `→` four times to reach Options" has |
| 21 | been **five** since the Code menu shipped. |
| 22 | - `docs/{en,fr}/explanation/architecture.md` — "both editors" → "every editor built on it". |
| 23 | |
| 24 | Checked by driving this editor's own binary in a pty, not by reasoning about it: the bar |
| 25 | reads `File Edit Search Run Code Options Window Snippets Rust Help`, and five `→` |
| 26 | from `File` lands on `Options`. |
| 27 | |
| 28 | ## Left undone, and cheap |
| 29 | |
| 30 | `docs/diagrams/packages.drawio` is a file nothing imports, so nothing notices when it stops |
| 31 | describing the code. turbo-python's copy of it shipped labelled `internal/rustlang`, with |
| 32 | `host="turbo-rust"`, because a diagram cannot be grepped for correctness. turbo-python now |
| 33 | has a `diagram_test.go` that parses the drawio and holds it to `go list` — the boxes are the |
| 34 | packages the module imports, every arrow out of our own packages is a real import, and no |
| 35 | label names another editor's language. Copying it here is perhaps twenty minutes. |
| 36 | |
| 37 | ## Already red when I arrived — not caused here, not fixed here |
| 38 | |
| 39 | `go test ./...` **fails at `HEAD` on a clean tree**, verified by stashing this session's |
| 40 | changes and running it again. Three tests in `internal/rustlang/templates_test.go`: |
| 41 | |
| 42 | - `TestTheCreatedToolsFileHoldsTheFiveCargoCommands` — the file now holds **six**: the five, |
| 43 | plus the `Echo` tool the starter file gained deliberately to teach the `menu` key. |
| 44 | - `TestRunIsTheOneToolInATerminal` — `Echo` goes to `terminal`, on purpose. |
| 45 | - `TestTheCreatedToolsFileNamesTheRustMenuNotTheGoOne`. |
| 46 | |
| 47 | **The template moved and the tests did not.** The template looks right — turbo-python's |
| 48 | equivalent test counts its own `Echo` tool, and the `turbo-new-editor` skill prescribes |
| 49 | showing the `menu` key in the starter file — so the fix is in the assertions. Left alone |
| 50 | because that is the tools-template cycle's business, not a documentation session's. |
| 51 | |
| 52 | ## State |
| 53 | |
| 54 | **Not committed.** |