velxio/backend/app/services
David Montero Crespo a22862acd9 perf(compile): cache built artifacts + skip the PSRAM boot memtest
Running a gallery example took 51 s before a single pixel appeared.
Measured split: 28 s compile, 23 s emulator boot. Both halves had
avoidable work.

Compile: the dedup only collapsed builds still IN FLIGHT, so an
identical rebuild cost the same as a cold one (28 s cold, 27 s warm).
Successful results are now stored under the build volume keyed by the
same content hash, LRU-pruned, and served as an already-finished job so
the client's poll loop is unchanged. Gallery examples are byte-identical
for every visitor, so one build serves everyone: 32.8 s -> 0.6 s.
The key also folds in a fingerprint of the two modules that TURN a
request into build flags, so changing sdkconfig generation invalidates
every stale binary automatically instead of serving images built with
the old flags. Failed builds are never cached.

Boot: CONFIG_SPIRAM_MEMTEST defaults on and walks all 32 MB before
app_main - tens of millions of guest accesses to test RAM that is
modelled, not physical. Off for both the P4 hex and the classic
quad/octal chunks: 35M -> 20M guest instructions to LCD-READY.

End to end on staging, ESP32-P4 MIPI-DSI example: 51 s -> 11 s.
2026-08-20 05:06:20 +02:00
..
boot_images
…
esp-idf-template fix(espidf): enable BLE 4.2 legacy APIs on BLE5-only SoCs 2026-08-15 04:19:21 +02:00
__init__.py
…
arduino_cli.py fix(arduino-cli): library search/install failures become one actionable sentence 2026-08-18 00:28:07 +02:00
asm8080.py
…
asmz80.py
…
board_access.py
…
c_compile.py
…
chip_compile.py
…
esp32_flash_image.py
…
esp32_i2c_slaves.py
…
esp32_lib_bridge.py
…
esp32_lib_manager.py
…
esp32_sd_slave.py
…
esp32_signals.py
…
esp32_spi_slaves.py
…
esp32_worker.py fix(esp32): matrix keypad — active-row model, idempotent install, gap-free listeners 2026-08-19 22:19:27 +02:00
esp_qemu_manager.py
…
espidf_compiler.py perf(compile): cache built artifacts + skip the PSRAM boot memtest 2026-08-20 05:06:20 +02:00
gpio_shim.py
…
qemu_manager.py feat(pi): techo de capacidad para los guests QEMU (multiusuario) 2026-07-29 21:15:04 +02:00
rom_compile.py
…
signal_router.py
…
stm32_lib_manager.py
…
stm32_worker.py
…
symbol_extract.py feat(intellisense): /type/ follows inheritance; extractor records bases and splits comma declarators 2026-08-17 19:08:57 +02:00
wasm_chip_runtime.py
…
wasm_chip_slave.py
…
wifi_status_parser.py
…