From 625cd9196798c97c07a33b3b802a65a311eeb8a3 Mon Sep 17 00:00:00 2001 From: Julien Calixte Date: Tue, 14 Jul 2026 12:43:05 +0200 Subject: [PATCH] docs: backtick underscore identifiers that destabilize oxfmt oxfmt's markdown emphasis pass mis-pairs a bare intraword underscore (N_tree, esp_map.c, auto_sync) with a later _italic_ span in the same paragraph, corrupting both on the next format run (auto_sync -> auto*sync). Backticking the identifiers removes the ambiguity and makes fmt idempotent; fmt:check now passes repo-wide. --- docs/tradeoff-curves/sync-commit-staging.md | 4 ++-- docs/v0.5-palette-and-multi-file.md | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/tradeoff-curves/sync-commit-staging.md b/docs/tradeoff-curves/sync-commit-staging.md index 03d173c..4909f17 100644 --- a/docs/tradeoff-curves/sync-commit-staging.md +++ b/docs/tradeoff-curves/sync-commit-staging.md @@ -213,7 +213,7 @@ Skipping `index.write()` entirely (fresh `Index::new()`, stamp = 0, so `truncate_racily_clean` can never fire) removes Wall 1. But to seed the in-memory index, `read_tree(HEAD)` materialises all 1179 entries and reads every tree object from the 570 MB pack — **77 s cold** (447 ms only once the windows are resident). -`write_tree_to` is O(changed), but you pay O(N_tree) to build the cache it needs, so +`write_tree_to` is O(changed), but you pay O(`N_tree`) to build the cache it needs, so the index-free path only trades a 611 s hash for a 77 s tree-read. Worse, that `read_tree` drove the `esp_map.c` cache to **7.4 MB resident** — past its own 4 MB soft cap — which left 508 KB of heap and made `repo.blob()`'s zlib `deflateInit` @@ -498,7 +498,7 @@ work, ranked: The cache never scored a hit in four instrumented real-repo runs (`mwindow` absorbs true repetition above `p_mmap`; only new ranges reach the emulation), and the 7.4 MB OOM it was patched to avoid was caused by - the cache itself holding buffers past `p_munmap`. esp_map.c is now the + the cache itself holding buffers past `p_munmap`. `esp_map.c` is now the plain malloc-read/free-at-munmap emulation: honest with `MWINDOW_MAPPED_LIMIT` by construction, ~120 lines lighter, and run 5 confirmed removal is I/O-neutral (even 15 reads _better_ than v2, whose diff --git a/docs/v0.5-palette-and-multi-file.md b/docs/v0.5-palette-and-multi-file.md index bd5bfe2..beb3c63 100644 --- a/docs/v0.5-palette-and-multi-file.md +++ b/docs/v0.5-palette-and-multi-file.md @@ -90,7 +90,7 @@ straight into `>` mode** as a one-command shortcut (both requested by the user machinery). Committed `c535864`. **Three "decide before build" calls:** (1) the idle auto-save is **unformatted** — `:fmt` runs only on explicit `:w`/`:sync`, so tables/blank-lines are never reflowed mid-session; (2) the per-device `auto_sync` -override (card-local `typoena.conf`) is **deferred** — auto_sync is inert in +override (card-local `typoena.conf`) is **deferred** — `auto_sync` is inert in v0.5, so there is nothing yet to override; (3) `> auto sync: ` as a palette command is **deferred to v0.7** — a control that changes a value nothing reads would be a dead switch. `save_on_idle` is honoured host-side: a silent idle