You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A four-agent audit of develop @ ee26268 (2026-09-04) found the project's planning documents materially stale. Because GOALS.md is the standing objective every agent plans against, and docs/IRREDUCIBLE_SURFACE.md is what planning treats as fixed constraints, wrong entries actively misdirect work.
Per feedback_coordinator_docs, session docs are the coordinator's to write — this issue exists so the corrections are tracked, not so any agent edits them ad hoc.
Corrections required
GOALS.md
§3 "#47 was closed without its blocker" is stale. It says "No open quadraui issue mentions modal_stack_handle or drag_state_handle" and lists filing it as "the single most actionable item on this page". In fact:
The "44 call sites" figure is wrong. It came from grep -n 'self\.backend\.' src/gtk/mod.rs — every use of the field, not the two methods. The real count is 19 (modal_stack_handle ×12, drag_state_handle ×7). Fix in PLAN.md too, which is where it originates.
§2 "the duplication moved down a level, into quadraui" is largely refuted at vimcode's own pinned rev:
Claim
Reality at pin 42e0f8f
EventOutcome declared twice verbatim
Declared once — quadraui/src/runtime.rs:95 (quadraui#496, closed 09-02)
shell_runner 45 identical lines ×2
Four runners of 4–7 non-comment lines each, all delegating to shared shell_adapter.rs::build_shell_adapter
1,671 byte-identical lines gtk↔macos
Function-level duplication is ~85 lines. quadraui#481's own correction comment (09-03 17:45Z) withdrew the headline number as "idiom coincidence"
UTF-8 fix: 7 private copies, 0 public
Public since 2026-08-15 — text_util.rs:51-107, re-exported from lib.rs (quadraui#503)
gtk_tree_layout/mac_tree_layout twins
Both 1-line wrappers over primitives/layout_metrics.rs:60 tree_layout (quadraui#499, 09-02)
"no desktop/"
quadraui/src/desktop.rs exists (754 lines) since 09-02 (quadraui#498) — the audit grepped for a directory
All eight children #503–#510 are closed.#482 has zero comments and is a hollow epic
Still true: macOS dispatches WindowResized undebounced (macos/run.rs:544-561) while TUI/GTK use the shared ResizeDebouncer.
§ "the post-#735 audit" under-attributes the backend reduction. Of the −3,656, about −2,825 is #731/#732 dead-code removal. Convergence proper moved roughly 900 lines out of the backends while render.rs absorbed ~7,000. State that plainly — the current text implies the chain converged more than it did.
Regenerate the size table. Measured at ee26268 with scripts/prod_lines.py: src/gtk/2,607, src/app.rs7,131, src/tui_main/10,366 (backends 20,104), src/render.rs21,405. The src/gtk/ column in the current table (9,650) predates #785's move.
docs/IRREDUCIBLE_SURFACE.md
The folder-picker verdict is wrong (:24). It records the TUI-only folder picker as irreducible because GTK uses a native GtkFileChooser. quadraui::compose::FolderPickerController has existed since 2026-05-25 and its module doc explicitly instructs vimcode to remove the local copy and rewire both backends. Strike the row and note why the verdict was wrong — the aggregation did not check upstream.
Add a caveat about the unit_w/unit_h seam. The doc blesses FrameMetrics as the one unit seam; in practice the convention appears in 7 painter signatures across 33 uses, and render.rs additionally carries two explicit char_width > 1.0 backend sniffs (:10426, :17256) and five paired per-backend policy tables. Record the real state.
PROJECT_STATE.md and PLAN.md
Both repeat the "#47 blocker filed nowhere" claim and the 44-call-site figure. Correct both.
Acceptance
Pure documentation change — may be committed directly to develop per CLAUDE.md, no branch required.
Every corrected number regenerated with scripts/prod_lines.py / scripts/native_lines.py and cited with the revision it was measured at, per GOALS.md's own "regenerate, do not trust a number typed into prose" rule.
Problem
A four-agent audit of
develop @ ee26268(2026-09-04) found the project's planning documents materially stale. BecauseGOALS.mdis the standing objective every agent plans against, anddocs/IRREDUCIBLE_SURFACE.mdis what planning treats as fixed constraints, wrong entries actively misdirect work.Per
feedback_coordinator_docs, session docs are the coordinator's to write — this issue exists so the corrections are tracked, not so any agent edits them ad hoc.Corrections required
GOALS.md§3 "#47 was closed without its blocker" is stale. It says "No open quadraui issue mentions
modal_stack_handleordrag_state_handle" and lists filing it as "the single most actionable item on this page". In fact:88345fb). Follow-up VS Code parity (Tier 2b of #699): GTK UI font stack (blocked on quadraui#624) + panel separator borders #704 closed 21:41Z.GOALS.mdedit (5e2c7cc) was 18:32Z, 81 minutes after GTK chrome: close the visual gap with VS Code — type size, vertical rhythm, tab/breadcrumb metrics #699 had closed, and left §3, the Status block and the milestones table saying the blocker was unfiled.grep -n 'self\.backend\.' src/gtk/mod.rs— every use of the field, not the two methods. The real count is 19 (modal_stack_handle×12,drag_state_handle×7). Fix inPLAN.mdtoo, which is where it originates.§2 "the duplication moved down a level, into quadraui" is largely refuted at vimcode's own pinned rev:
42e0f8fEventOutcomedeclared twice verbatimquadraui/src/runtime.rs:95(quadraui#496, closed 09-02)shell_runner45 identical lines ×2shell_adapter.rs::build_shell_adaptertext_util.rs:51-107, re-exported fromlib.rs(quadraui#503)gtk_tree_layout/mac_tree_layouttwinsprimitives/layout_metrics.rs:60 tree_layout(quadraui#499, 09-02)desktop/"quadraui/src/desktop.rsexists (754 lines) since 09-02 (quadraui#498) — the audit grepped for a directoryStill true: macOS dispatches
WindowResizedundebounced (macos/run.rs:544-561) while TUI/GTK use the sharedResizeDebouncer.§ "the post-#735 audit" under-attributes the backend reduction. Of the −3,656, about −2,825 is #731/#732 dead-code removal. Convergence proper moved roughly 900 lines out of the backends while
render.rsabsorbed ~7,000. State that plainly — the current text implies the chain converged more than it did.Regenerate the size table. Measured at
ee26268withscripts/prod_lines.py:src/gtk/2,607,src/app.rs7,131,src/tui_main/10,366 (backends 20,104),src/render.rs21,405. Thesrc/gtk/column in the current table (9,650) predates #785's move.docs/IRREDUCIBLE_SURFACE.mdThe folder-picker verdict is wrong (
:24). It records the TUI-only folder picker as irreducible because GTK uses a nativeGtkFileChooser.quadraui::compose::FolderPickerControllerhas existed since 2026-05-25 and its module doc explicitly instructs vimcode to remove the local copy and rewire both backends. Strike the row and note why the verdict was wrong — the aggregation did not check upstream.Add a caveat about the
unit_w/unit_hseam. The doc blessesFrameMetricsas the one unit seam; in practice the convention appears in 7 painter signatures across 33 uses, andrender.rsadditionally carries two explicitchar_width > 1.0backend sniffs (:10426,:17256) and five paired per-backend policy tables. Record the real state.PROJECT_STATE.mdandPLAN.mdBoth repeat the "#47 blocker filed nowhere" claim and the 44-call-site figure. Correct both.
Acceptance
developper CLAUDE.md, no branch required.scripts/prod_lines.py/scripts/native_lines.pyand cited with the revision it was measured at, perGOALS.md's own "regenerate, do not trust a number typed into prose" rule.