aboutsummaryrefslogtreecommitdiffstats
path: root/.auto/checks.sh
diff options
context:
space:
mode:
authoruser <user@clank>2026-08-07 05:52:49 +0200
committeruser <user@clank>2026-08-07 05:52:49 +0200
commit3ca9e1ea6dacd9cdfd545902eb8c0838dd383eed (patch)
tree84fcfcb5d4a6f5d4dd3b5128d2739a3d424abcaf /.auto/checks.sh
parentA rename keeps the listing's walk instead of throwing it away. bump_names now... (diff)
downloadida-tui-3ca9e1ea6dacd9cdfd545902eb8c0838dd383eed.tar.gz
ida-tui-3ca9e1ea6dacd9cdfd545902eb8c0838dd383eed.tar.xz
ida-tui-3ca9e1ea6dacd9cdfd545902eb8c0838dd383eed.zip
CORRECTNESS FIX, kept despite a worse metric. The un-chunked refresh was showing STALE NAMES on any wide read: one heads call for a search-sized window overflows the tool's 2000-row cap, the short response fails the sequence check, and the block is left with its old text. Refresh is now done a block at a time. Adds .auto/check_rename.py to the gate, which fails hard on the previous code and passes on this one.
Result: {"status":"keep","total_ms":28651.3,"lg_boot_ms":720.6,"lg_decomp_ms":2427.4,"lg_graph_ms":1222.4,"lg_hex_ms":440.9,"lg_index_ms":72.6,"lg_listing_cold_ms":433.6,"lg_listing_warm_ms":465.9,"lg_nav_ms":6809.7,"lg_palette_ms":4.7,"lg_rename_ms":710.1,"lg_render_ms":228.7,"lg_search_ms":6891.2,"lg_split_ms":2259.2,"pure_graph_ms":214.5,"sm_boot_ms":457.7,"sm_decomp_ms":1303.6,"sm_graph_ms":700.2,"sm_hex_ms":445.4,"sm_index_ms":2.4,"sm_listing_cold_ms":271.4,"sm_listing_warm_ms":270.9,"sm_nav_ms":309.2,"sm_palette_ms":0.3,"sm_rename_ms":386.6,"sm_render_ms":265.8,"sm_search_ms":70.1,"sm_split_ms":1266.2,"fails":0}
Diffstat (limited to '.auto/checks.sh')
-rwxr-xr-x.auto/checks.sh14
1 files changed, 13 insertions, 1 deletions
diff --git a/.auto/checks.sh b/.auto/checks.sh
index 5323fce..d4120b0 100755
--- a/.auto/checks.sh
+++ b/.auto/checks.sh
@@ -4,7 +4,12 @@
# 1. .auto/check_search.py -- the search fast paths against the plain loop.
# Caches that go stale still return AN answer, so no scenario test can see
# them; this compares fast and slow directly, for every typed prefix.
-# 2. tests/run.py -- the project's own front door: every suite, pure and IDA,
+# 2. .auto/check_rename.py -- a rename keeps the listing's walk and only
+# re-renders its text. When that goes wrong the pane simply keeps showing
+# the old name, which nothing else notices. Checks a NARROW read (what
+# painting does) and a WIDE one (what building the search body does), and
+# the whole model against a rebuild.
+# 3. tests/run.py -- the project's own front door: every suite, pure and IDA,
# ~185s. It used to be only the scenario suite here, and that gap cost a
# real regression: a faster worker connect left the loading overlay up a
# moment longer relative to the index finishing, and project mode's first
@@ -28,6 +33,13 @@ search=$("$PY" .auto/check_search.py targets/echo 2>&1) || {
}
echo "$search" | tail -1
+rn=$("$PY" .auto/check_rename.py targets/echo 2>&1) || {
+ echo "--- the listing is wrong after a rename ---"
+ echo "$rn" | tail -20
+ exit 1
+}
+echo "$rn" | tail -1
+
out=$(python3 tests/run.py 2>&1) || true
echo "$out" | tail -2