aboutsummaryrefslogtreecommitdiffstats
Commit message (Expand)AuthorAgeFilesLines
* bench: run the cold-sensitive phases once, the repeatable ones every repblasty2 days2-10/+25
* bench: cut two noise sources (pure_graph median-of-3, two reps on the big tar...blasty2 days2-3/+12
* Re-run of #18 (_CellRow slice assignment, one-string box borders, memoised St...user2 days3-14/+138
* Re-run of #16 (keep the joined search body across a cancelled search and acro...user2 days5-11/+265
* HexView.render_line emits style RUNS instead of one Segment per byte cell (35...user2 days3-12/+40
* Search the whole segment as ONE joined string. Every line is concatenated onc...user2 days1-26/+101
* autoresearch: refresh the playbook and idea backlogblasty2 days3-12/+55
* Two independent constants: memoise the pygments token -> Rich style lookup (a...user2 days3-5/+33
* Fetch a graph's listing rows from the blocks' MERGED EXTENTS, not their conve...user2 days2-3/+33
* RE-BASELINE on a corrected benchmark. phase_graph was measuring a cache hit: ...user2 days1-0/+1
* bench: time a COLD graph open, and stop the fixture picker warming its cacheblasty2 days2-2/+15
* Only re-apply a scroll after the next refresh when it actually clamped. Both ...user2 days2-5/+19
* Two hot-path fixes found by profiling the plain-line builder: the opcode-byte...user2 days3-5/+12
* Three micro-wins on the listing-row path: merge the colour-tag and operand-ta...user2 days3-6/+27
* Incremental search narrows instead of rescanning. Typing a character onto the...user2 days3-14/+84
* Re-apply #5 (lru_cache on the per-line render + Heads built with their opcode...user2 days7-61/+420
* _idatui_spans: one capturing re.split over the tag pairs instead of finditer+...user2 days2-46/+57
* Stop ida-pro-mcp installing a sys.setprofile hook around every tool call. Its...user2 days4-53/+241
* autoresearch: checks gate names the failing scenario and retries it aloneblasty2 days1-11/+34
* autoresearch: perf bench harness, checks gate and playbookblasty2 days5-0/+625
* diag: somewhere for swallowed errors to goblasty2 days8-7/+343
* launch: the sweep could delete the file it was asked to openblasty2 days2-4/+195
* worker_client: tests, and stop resurrecting a closed workerblasty2 days2-1/+466
* app: the view mode is a type, and 'disasm' is goneblasty2 days6-89/+202
* tests: a guard that actually regresses on the resync stormblasty2 days2-3/+34
* tests: deterministic fixtures, and a correctionblasty2 days1-2/+16
* tests: wait for the thing, don't sleep and hopeblasty2 days4-46/+140
* split: stop the resync loop that spun the worker foreverblasty2 days1-6/+20
* app: lift database edits out of IdaTui, and one prompt abstractionblasty2 days3-741/+932
* app: lift trace navigation out of IdaTuiblasty2 days3-343/+474
* tests: one front doorblasty2 days16-4/+327
* splash: blasty's transparent logo, and stop guessing the cell aspectblasty2 days6-44/+169
* help: reach the cheatsheet with H as well as F1blasty3 days2-5/+19
* graph: navigate to blocks, not to coordinatesblasty3 days3-32/+132
* graph: the minimap is clickable, and stops swallowing clicksblasty3 days3-8/+144
* splash: draw the real logo on terminals that canblasty3 days4-10/+349
* add the logo source imageblasty3 days1-0/+0
* graph: docs, and the offline layout toolsblasty3 days6-0/+600
* tests: graph scenariosblasty3 days1-4/+261
* rpc: a graph verbblasty3 days2-2/+186
* app: the graph viewblasty3 days1-10/+911
* domain: the control-flow graph, with each block's rowsblasty3 days1-0/+120
* server: a flowchart toolblasty3 days1-0/+62
* graph: a layered CFG layout engineblasty3 days2-0/+949
* README/TODO: literal formatsblasty3 days2-135/+52
* tests: cover the literal formatsblasty3 days3-0/+900
* rpc: an opfmt verb, and 'drive fmt'blasty3 days3-15/+77
* app: 'o' cycles the literal under the cursorblasty3 days1-5/+222
* domain: operand extents, and the formats behind themblasty3 days1-0/+86
* server: tools for how a number is displayedblasty3 days1-9/+770