[PR #2455] [MERGED] perf(flutter): add opt-in retained AOT summary and string pages #5240

Closed
opened 2026-10-31 01:05:03 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/2455
Author: @N0zoM1z0
Created: 10/13/2026
Status: ✅ Merged
Merged: 10/13/2026
Merged by: @N0zoM1z0

Base: main ← Head: perf/latest-main-efficiency-20261013


📝 Commits (5)

  • a7faa8a perf(flutter): add opt-in retained AOT summary and string pages
  • da8d19e test(flutter): assert complete default across CLI and MCP
  • 9a2c0db docs(perf): record real Dart AOT delivery and model comparisons
  • e2cc8a7 docs(perf): record rebased Flutter and capture integration checks
  • 1ddf299 docs(perf): extend latest-main audit with retained qlog controls

📊 Changes

18 files changed (+867 additions, -19 deletions)

View changed files

📝 docs/flutter-analysis.md (+20 -0)
📝 experiments/analysis-efficiency/README.md (+8 -0)
📝 experiments/analysis-efficiency/corpus.json (+15 -0)
➕ experiments/analysis-efficiency/flutter-aot-summary.md (+160 -0)
➕ experiments/analysis-efficiency/latest-main-audit.md (+75 -0)
📝 experiments/analysis-efficiency/measure.mjs (+48 -0)
➕ experiments/analysis-efficiency/questions/flutter-aot.txt (+1 -0)
📝 experiments/analysis-efficiency/review-model.py (+4 -1)
➕ src/application/flutter/DartAotInspection.ts (+40 -0)
📝 src/contracts/analysisViewToolContracts.ts (+1 -1)
📝 src/contracts/flutter/flutterToolContracts.ts (+15 -3)
📝 src/domain/analysisView/analysisView.ts (+30 -1)
➕ src/domain/analysisView/dartAotView.ts (+123 -0)
📝 src/domain/flutter/flutterBuildAnalysis.ts (+6 -0)
📝 src/server/createServer.ts (+1 -0)
📝 src/server/registerFlutterTools.ts (+26 -11)
📝 tests/acceptance/flutterAnalysis.test.ts (+9 -2)
➕ tests/boundary/mcp/dartAotSummaryMcp.test.ts (+285 -0)

📄 Description

A shipped LocalSend Dart AOT inspection returns 151,341 bytes of complete Evidence when the analyst only needs snapshot identity and string-pool counts. Add explicit MCP detail: "summary" (12,037 bytes) while retaining the complete original Evidence for exact string-pool pages. Omitted/complete requests and the CLI preserve the full result, provider inputs, ABI selection and source identity. Lower bounds, partial coverage and nullable snapshot facts remain explicit.

Two real public SDK pairs preserve all selected facts, reduce reply bytes 92.05%, and show approximately unchanged 5.1-second SDK workflows. Four actual Codex CLI trials (requested gpt-5.6-terra high) pass every selected factual check: summary total input falls 48.75% / 42.38%, uncached input 33.63% / 42.52%, and whole-task time 23.95% / 30.30%. Complete trials make 3 / 2 attempts (one argument error); summary trials make one each. All discovery, retries and correction costs remain included, so these are scoped task results rather than engine-speed or universal claims.

A fresh previous-runtime complete request matches the candidate. Fifteen public migration calls reconstruct all 2,716 original strings with the APK absent and preserve the original exported record. Curated results and exact measured runtime pins are in experiments/analysis-efficiency/flutter-aot-summary.md; binaries, raw records and model traces stay outside Git. Final whole-scope resource counters remain unknown; narrower owned payload observations show zero phase limit events and no guard aborts.

Validation: 21 focused MCP/domain tests, 3 CLI boundary tests and 2 CLI/stdio acceptance tests; full-project typecheck with supported single-thread mode and unchanged lint. Rebased onto main a2d8b94 (Fiddler SAZ) with both capture and Dart views preserved. Targeted shared integration passes 35 tests (one opposite runtime-capacity branch skipped); docs/README checks pass. Fresh rebased real complete/summary SDK, old portable Evidence and real CLI complete checks preserve the original facts and identities. Main subsequently added aioquic qlog (bb154d106); the PR is rebased again preserving all capture/qlog/Dart branches. Affected qlog/Dart/shared integration passes 24 tests (one opposite capacity branch skipped), full typecheck/lint and docs checks pass, and fresh latest-runtime real APK SDK/old Evidence/CLI checks preserve all original facts and IDs. Final exact-head CI passed 39/39 checks; merged normally as 23de4f77c7. Measurements retain the earlier frozen runtime rather than being relabeled as the rebased build.

The #2016 continuation also records existing SQLite, TShark, sigrok, SAZ and qlog selection controls and real-artifact measurement priorities. No plugin SDK, cross-session engine cache, release or deployment is added.

Refs #2016.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/2455 **Author:** [@N0zoM1z0](https://github.com/N0zoM1z0) **Created:** 10/13/2026 **Status:** ✅ Merged **Merged:** 10/13/2026 **Merged by:** [@N0zoM1z0](https://github.com/N0zoM1z0) **Base:** `main` ← **Head:** `perf/latest-main-efficiency-20261013` --- ### 📝 Commits (5) - [`a7faa8a`](https://github.com/morluto/rea/commit/a7faa8a26db40aac389e4a45de0116c41e94a158) perf(flutter): add opt-in retained AOT summary and string pages - [`da8d19e`](https://github.com/morluto/rea/commit/da8d19e01aff71872d311b1205150f6fa5e00a9a) test(flutter): assert complete default across CLI and MCP - [`9a2c0db`](https://github.com/morluto/rea/commit/9a2c0db81707ea11c4b55ffdf0952ec8d46e306c) docs(perf): record real Dart AOT delivery and model comparisons - [`e2cc8a7`](https://github.com/morluto/rea/commit/e2cc8a73b5971cf4350689e7602688b52836d2bb) docs(perf): record rebased Flutter and capture integration checks - [`1ddf299`](https://github.com/morluto/rea/commit/1ddf2999f58608cb3719edd684ccc30f5f937f1b) docs(perf): extend latest-main audit with retained qlog controls ### 📊 Changes **18 files changed** (+867 additions, -19 deletions) <details> <summary>View changed files</summary> 📝 `docs/flutter-analysis.md` (+20 -0) 📝 `experiments/analysis-efficiency/README.md` (+8 -0) 📝 `experiments/analysis-efficiency/corpus.json` (+15 -0) ➕ `experiments/analysis-efficiency/flutter-aot-summary.md` (+160 -0) ➕ `experiments/analysis-efficiency/latest-main-audit.md` (+75 -0) 📝 `experiments/analysis-efficiency/measure.mjs` (+48 -0) ➕ `experiments/analysis-efficiency/questions/flutter-aot.txt` (+1 -0) 📝 `experiments/analysis-efficiency/review-model.py` (+4 -1) ➕ `src/application/flutter/DartAotInspection.ts` (+40 -0) 📝 `src/contracts/analysisViewToolContracts.ts` (+1 -1) 📝 `src/contracts/flutter/flutterToolContracts.ts` (+15 -3) 📝 `src/domain/analysisView/analysisView.ts` (+30 -1) ➕ `src/domain/analysisView/dartAotView.ts` (+123 -0) 📝 `src/domain/flutter/flutterBuildAnalysis.ts` (+6 -0) 📝 `src/server/createServer.ts` (+1 -0) 📝 `src/server/registerFlutterTools.ts` (+26 -11) 📝 `tests/acceptance/flutterAnalysis.test.ts` (+9 -2) ➕ `tests/boundary/mcp/dartAotSummaryMcp.test.ts` (+285 -0) </details> ### 📄 Description A shipped LocalSend Dart AOT inspection returns 151,341 bytes of complete Evidence when the analyst only needs snapshot identity and string-pool counts. Add explicit MCP `detail: "summary"` (12,037 bytes) while retaining the complete original Evidence for exact string-pool pages. Omitted/complete requests and the CLI preserve the full result, provider inputs, ABI selection and source identity. Lower bounds, partial coverage and nullable snapshot facts remain explicit. Two real public SDK pairs preserve all selected facts, reduce reply bytes 92.05%, and show approximately unchanged 5.1-second SDK workflows. Four actual Codex CLI trials (requested gpt-5.6-terra high) pass every selected factual check: summary total input falls 48.75% / 42.38%, uncached input 33.63% / 42.52%, and whole-task time 23.95% / 30.30%. Complete trials make 3 / 2 attempts (one argument error); summary trials make one each. All discovery, retries and correction costs remain included, so these are scoped task results rather than engine-speed or universal claims. A fresh previous-runtime complete request matches the candidate. Fifteen public migration calls reconstruct all 2,716 original strings with the APK absent and preserve the original exported record. Curated results and exact measured runtime pins are in `experiments/analysis-efficiency/flutter-aot-summary.md`; binaries, raw records and model traces stay outside Git. Final whole-scope resource counters remain unknown; narrower owned payload observations show zero phase limit events and no guard aborts. Validation: 21 focused MCP/domain tests, 3 CLI boundary tests and 2 CLI/stdio acceptance tests; full-project typecheck with supported single-thread mode and unchanged lint. Rebased onto main a2d8b94 (Fiddler SAZ) with both capture and Dart views preserved. Targeted shared integration passes 35 tests (one opposite runtime-capacity branch skipped); docs/README checks pass. Fresh rebased real complete/summary SDK, old portable Evidence and real CLI complete checks preserve the original facts and identities. Main subsequently added aioquic qlog (bb154d106); the PR is rebased again preserving all capture/qlog/Dart branches. Affected qlog/Dart/shared integration passes 24 tests (one opposite capacity branch skipped), full typecheck/lint and docs checks pass, and fresh latest-runtime real APK SDK/old Evidence/CLI checks preserve all original facts and IDs. Final exact-head CI passed 39/39 checks; merged normally as 23de4f77c74dd299d45cab880c36321d802b21fe. Measurements retain the earlier frozen runtime rather than being relabeled as the rebased build. The #2016 continuation also records existing SQLite, TShark, sigrok, SAZ and qlog selection controls and real-artifact measurement priorities. No plugin SDK, cross-session engine cache, release or deployment is added. Refs #2016. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-31 01:05:03 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#5240
No description provided.