velxio/frontend/src/__tests__
David Montero Crespo 7dd9b90cf9 fix(ui): a column is a RUN of pads, not two opposite ends of the board
The Arduino Uno came out wrong: 18 pins on the top header, 13 on the bottom,
and SIX x values shared between the two. The column detector accepted any two
pads sharing an x, so those pairs were read as columns and most of the board
was thrown into the side gutters with leader lines fanning across the art.

A column now needs three pads AND small gaps between them (no more than 40%
of the body), which is what a real header looks like; rows get the same guard
on x. The Uno lands as two headers, top and bottom, with no side gutters at
all - covered by a test using its real 31-pin table.
2026-08-04 03:01:21 +02:00
..
__snapshots__ fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
fixtures fix(trace): recognise runtime boards and same-hole junctions in pin tracing 2026-07-20 18:46:23 +02:00
helpers fix(stop): preserve display state on Stop, only blank on Reset 2026-05-26 18:54:17 +02:00
AVRSimulator.test.ts fix(sim): keep PwmCallback 2-arg compatible via arity dispatch 2026-06-11 03:29:44 -03:00
PinManager.test.ts fix(sim): keep PwmCallback 2-arg compatible via arity dispatch 2026-06-11 03:29:44 -03:00
RP2040Simulator.test.ts
…
SignalRouter.test.ts fix(esp32): LEDC signal IDs are 71-86 per ESP32 TRM, not 72-87 2026-05-17 05:42:52 +02:00
ammeter-waveform.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
arduino-arduino-spi.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
arduino-esp32-uart.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
arduino-pico-digital.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
arduino-pico-i2c.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
arduino-pico-mixed-uart.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
attiny85-simulation.test.ts fix(sim): correct ATtiny85 Timer0 PWM register addresses 2026-06-19 04:23:41 +02:00
avr-uart-tx-waveform.test.ts feat(avr/uart): synthesize bit-level TX waveform on PD1/PE1 2026-05-22 19:49:43 +02:00
board-kinds-coverage.test.ts refactor(examples): move Pico W WiFi examples to the pro overlay seam 2026-06-15 15:54:44 +02:00
board-pin-mapping.test.ts fix(pins): la cabecera del M5 Cardputer ya resuelve a numeros de GPIO 2026-07-26 02:47:05 +02:00
board-protocols-audit.test.ts fix(interconnect): classify Arduino Mega UART/I2C function-label pins 2026-06-12 08:29:03 +02:00
board-removal-running-reconcile.test.ts refactor(sim): single-board example load rebuilds from scratch 2026-05-31 23:23:41 +02:00
breadboard-nets.test.ts feat: breadboard (full 830-point) + mini breadboard (170-point) parts 2026-07-15 21:50:36 +02:00
breadboard-occupancy.test.ts feat(breadboard): one-hole-one-wire selection rules + jumper colors 2026-07-21 05:49:23 +02:00
breadboard-seating.test.ts fix(breadboard): derive seating at element mount — closes run-before-seating race 2026-07-20 17:39:29 +02:00
breadboard-snap.test.ts feat(breadboard): hover-gated labels + full-footprint seating solver 2026-07-19 05:28:40 +02:00
buzzer-metronome.test.ts fix(sim): monophonic buzzer guard — replace note on pitch change (no stacking) 2026-06-11 02:35:33 -03:00
capacitor-charge-transient.test.ts feat(sim): Phase 1d #3 + #5 — WASM pre-boot on mount + delete dead wire* utils 2026-05-15 22:24:31 +02:00
chipbus-buskernel.test.ts feat(chipbus): Phase 2 - synchronous settle kernel (settle-before-read) 2026-06-05 02:36:54 -03:00
chipbus-buslogic.test.ts feat(chipbus): Phase 1 - 4-valued logic + drive-strength tri-state buses 2026-06-05 02:18:47 -03:00
chipbus-busnets.test.ts feat(chipbus): Phase 1 - 4-valued logic + drive-strength tri-state buses 2026-06-05 02:18:47 -03:00
chipbus-galaksija-boot.test.ts test(chipbus): a real Galaksija (1983 Z80 home computer) boots over the bus 2026-06-05 11:55:28 -03:00
chipbus-galaksija-computer.test.ts feat(chipbus): Galaksija home computer gallery example + browser perf throttle 2026-06-05 13:49:33 -03:00
chipbus-galaksija-display-snoop-race.test.ts fix(chipbus): Galaksija boots + displays + types live in the browser 2026-06-05 15:47:30 -03:00
chipbus-galaksija-display.test.ts feat(chipbus): Galaksija home computer gallery example + browser perf throttle 2026-06-05 13:49:33 -03:00
chipbus-galaksija-keyboard.test.ts feat(chipbus): Galaksija keyboard - type BASIC over the bus 2026-06-05 14:37:42 -03:00
chipbus-galaksija-ram-display.test.ts fix(chipbus): Galaksija boots + displays + types live in the browser 2026-06-05 15:47:30 -03:00
chipbus-galaksija-reset-race.test.ts fix(chipbus): Galaksija boots + displays + types live in the browser 2026-06-05 15:47:30 -03:00
chipbus-netkey.test.ts feat(chipbus): Phase 0 - net-identity shared key for chip-to-chip buses 2026-06-05 01:18:08 -03:00
chipbus-twochip-integration.test.ts feat(chipbus): Phase 1 - 4-valued logic + drive-strength tri-state buses 2026-06-05 02:18:47 -03:00
chipbus-z80-ram-decode.test.ts test(chipbus): Phase 3 core - Z80 + ROM + RAM + address decode over the bus 2026-06-05 10:23:57 -03:00
chipbus-z80-rom-boot.test.ts test(chipbus): live proof - a real Z80 boots from a ROM over the bus 2026-06-05 10:07:26 -03:00
circuit-simulation-service.test.ts fix(perf): un-freeze the editor during fast-toggling simulations (ESP32 clock) 2026-07-21 01:15:59 +02:00
circuit-verifier-nonfinite.test.ts fix(sim): circuit verifier was silently blind to current faults in prod 2026-06-17 20:37:32 +02:00
circuit-verifier-p1-audit.test.ts verify: catch unpowered nets, open source loops, and relay coil voltage mismatch 2026-07-31 20:38:23 +02:00
circuit-verifier.test.ts verify: catch unpowered nets, open source loops, and relay coil voltage mismatch 2026-07-31 20:38:23 +02:00
component-metadata-bmp280.test.ts
…
component-to-spice.test.ts fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
components-metadata-integrity.test.ts refactor(examples): move Pico W WiFi examples to the pro overlay seam 2026-06-15 15:54:44 +02:00
digitalgate-engine-examples.test.ts feat(digital-gate-engine): 4-bit ripple counter gallery example + sequential controller fix 2026-06-05 21:58:42 -03:00
digitalgate-kernel.test.ts feat(digital-gate-engine): evaluate logic gates on the event-driven kernel 2026-06-05 20:21:33 -03:00
digitalgate-mixed-boundary.test.ts fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
digitalgate-sequential.test.ts fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
digitalgate-sweep.test.ts feat(digital-gate-engine): sweep all 38 examples + default the flag on 2026-06-05 20:29:32 -03:00
drop-slot.test.ts feat(canvas): ver donde cae lo que anades, y clicks con sentido 2026-07-30 15:40:52 +02:00
dual-arduino-digital.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-arduino-hw-uart.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-arduino-multi-protocol.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-arduino-software-serial.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-esp32-uart.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-pico-digital.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-pico-multi-protocol.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
dual-pico-serial-passthrough.test.ts feat(pi): salida de pantalla para las Pi + arreglo del guard de connect 2026-07-30 01:09:04 +02:00
editor-commands.test.ts feat(editor): menus File/Edit en la cabecera y editor sin nav de marketing 2026-07-30 16:26:36 +02:00
eeprom.test.ts fix(sim): emulate AVR EEPROM (fixes #203) 2026-06-16 04:18:51 +02:00
epaper-part-integration.test.ts
…
esp32-breadboard-display.test.ts fix(trace): recognise runtime boards and same-hole junctions in pin tracing 2026-07-20 18:46:23 +02:00
esp32-dht22-flow.test.ts fix(esp32): force clean reconnect in Esp32Bridge.connect() — the real run-after-agent fix 2026-07-21 07:01:05 +02:00
esp32-integration.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
esp32-multi-servo-gpio-matrix.test.ts refactor(esp32): retire ledc_update + broadcastPwm + channelGpioMemo 2026-05-19 04:05:34 +02:00
esp32-rectifier-integration.test.ts
…
esp32-servo-pot.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
esp32-uart-classify.test.ts fix(interconnect): classify ESP32 UART pin names so multi-board Serial works 2026-06-12 07:21:47 +02:00
esp32-wifi-bluetooth.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
esp32-wifi-compile.test.ts
…
esp32-wifi-webserver-integration.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
esp32c3-blink.test.ts fix(tests): update mocks + assertions for PinManager API changes 2026-05-19 04:52:30 +02:00
esp32c3-simulation.test.ts fix(tests): update mocks + assertions for PinManager API changes 2026-05-19 04:52:30 +02:00
esp32c3-wifi-bluetooth.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
examples-all-buckets-smoke.test.ts refactor(examples): move Pico W WiFi examples to the pro overlay seam 2026-06-15 15:54:44 +02:00
examples-analog-live.test.ts feat(sim): Phase 1d #2 + #9 — convergence helpers in Worker + enable LM358 subckt 2026-05-15 22:17:06 +02:00
examples-analog.test.ts feat(sim): Phase 1d #2 + #9 — convergence helpers in Worker + enable LM358 subckt 2026-05-15 22:17:06 +02:00
examples-circuits.test.ts
…
examples-digital.test.ts fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
examples-gallery-smoke.test.ts feat(sim): Phase 1d #1 — gallery smoke test imports real examples + shared helper 2026-05-15 22:11:28 +02:00
examples-led-resistor.test.ts test(examples): ningun LED de la galeria puede colgar directo de un pin 2026-07-29 07:24:25 +02:00
examples-netlist-snapshot.test.ts refactor(examples): move Pico W WiFi examples to the pro overlay seam 2026-06-15 15:54:44 +02:00
examples-pico-doom.test.ts
…
fat-image.test.ts feat(microsd): SD-over-SPI card storage for AVR, RP2040 and ESP32 2026-06-11 03:59:53 +02:00
firmware-loader.test.ts
…
flip-flop-parts.test.ts
…
gallery-run-gate.audit.test.ts fix(adc,examples): mapa ADC por chip, entradas flotantes y una auditoria de la galeria 2026-07-27 05:01:49 +02:00
gps-neo6m.test.ts feat(components): DS3231 RTC module + GPS NEO-6M NMEA talker 2026-07-31 20:38:06 +02:00
i2c-complex-scenarios.test.ts
…
i2c-esp32-multiboard-bridge.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
i2c-esp32-real-firmware.test.ts
…
i2c-interconnect-bridge.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
i2c-lcd-coupling-gap.test.ts
…
i2c-multi-board-slave-gap.test.ts
…
i2c-real-firmware.test.ts
…
install-libraries.test.ts
…
instruments.test.ts
…
integration.test.ts
…
interactive-parts.test.ts
…
interconnect-routing.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
issue-122-micropython-esp32.test.ts
…
issue-139-espidf-mode.test.ts feat(esp32): pure ESP-IDF language mode for the ESP32 family (#139) 2026-07-24 06:37:01 +02:00
key-button-bindings.test.ts feat(simulator): map pushbuttons to keyboard keys 2026-07-18 04:02:01 +02:00
library-compile.integration.test.ts refactor(examples): move Pico W WiFi examples to the pro overlay seam 2026-06-15 15:54:44 +02:00
load-example-transitions.test.ts feat(sim): Stop halts custom chips + LEDs go dark; retro chip examples go board-less 2026-06-04 04:32:44 +02:00
load-ngspice-for-node.test.ts
…
logic-families.test.ts
…
logic-gate-parts.test.ts
…
mcu-edge-pin-name-mapping.test.ts fix(spice): MCU-edge listeners detach on resubscription for QEMU boards (frozen LEDs) 2026-07-24 07:26:09 +02:00
mega-emulation.test.ts fix(sim): keep PwmCallback 2-arg compatible via arity dispatch 2026-06-11 03:29:44 -03:00
microsd-real-firmware.test.ts feat(microsd): SD-over-SPI card storage for AVR, RP2040 and ESP32 2026-06-11 03:59:53 +02:00
mixed-mode-bjt-switch-integration.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
mixed-mode-scheduler.test.ts
…
motor-parts.test.ts
…
multi-board-integration.test.ts fix(editor): sync active file group when the active board changes 2026-06-26 23:03:50 +02:00
netlist-builder.test.ts feat(esp32): drive digital inputs from the solved circuit (real-wiring fidelity) 2026-06-24 22:52:52 +02:00
ngspice-interactive.test.ts
…
ngspice-node-adapter.test.ts
…
oscilloscope-trigger.test.ts feat(scope/trigger): add Auto / Normal / Single-shot trigger modes 2026-05-22 21:11:03 +02:00
part-simulators-coverage.test.ts test(sim): Phase 1d-tests E + F — part simulator coverage + solver determinism 2026-05-15 23:10:05 +02:00
phase-2-device-models.test.ts
…
phase-2-lm358-subckt.test.ts
…
phase-4-wire-resistance.test.ts
…
pi-linux-mode-restart.test.ts fix(pi): arrancar sin bridge deja de fallar en silencio + test del reinicio 2026-07-29 20:10:57 +02:00
pi-single-board-examples.test.ts feat(examples): add single-board Raspberry Pi 3/4/5 GPIO examples 2026-06-02 04:36:58 +02:00
pi-uart-wire.test.ts fix(uart): la Pi puede hablar por serie con la placa de al lado 2026-07-29 07:40:13 +02:00
pi3-pico-uart.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
piSlaveScanner.test.ts feat(pi): pluggable slave handler + canvas wire detection for I2C/SPI/UART 2026-05-18 16:26:37 +02:00
pin-inspector-layout.test.ts fix(ui): a column is a RUN of pads, not two opposite ends of the board 2026-08-04 03:01:21 +02:00
pin-position-rotation.test.ts feat(breadboard): green dots on pins plugged into a breadboard 2026-07-20 04:48:16 +02:00
pin-resolver-phase1b.test.ts
…
pin-resolver.test.ts
…
pro-examples-settled.test.ts fix(examples): el enlace directo a un ejemplo pro ya no parpadea un 404 2026-07-30 17:06:05 +02:00
protocol-parts.test.ts feat(components): DS3231 RTC module + GPS NEO-6M NMEA talker 2026-07-31 20:38:06 +02:00
rp2040-pio-servo.test.ts
…
rp2040-realtime.test.ts fix(rp2040): keep delay()-based sketches real-time on slower hosts 2026-06-10 18:21:29 +02:00
runtime-burnout.test.ts feat(sim): P4 runtime burnout for resistors + electrolytic capacitors 2026-06-18 04:35:56 +02:00
sd-card-gate.test.ts feat(microsd): SD-over-SPI card storage for AVR, RP2040 and ESP32 2026-06-11 03:59:53 +02:00
sensor-parts.test.ts fix(ntc): the temperature sensor read wrong on 3.3V boards, and three examples decoded backwards 2026-08-03 07:33:20 +02:00
serial-batching.test.ts
…
simulation-parts.test.ts fix(7segment): rebuild per-element sim state when the digit count changes 2026-07-21 15:16:56 +02:00
simulation.test.ts
…
solver-determinism.test.ts test(sim): Phase 1d-tests E + F — part simulator coverage + solver determinism 2026-05-15 23:10:05 +02:00
solver-perf-baseline.test.ts test(sim): Phase 1d-tests D + G — board-kind coverage matrix + perf baseline 2026-05-15 23:13:48 +02:00
solver-port-contract.test.ts
…
spice-ac.test.ts
…
spice-active.test.ts
…
spice-avr-mixed.test.ts
…
spice-digital.test.ts
…
spice-mosfet-diag.test.ts
…
spice-mosfet-pwm.test.ts
…
spice-npn-switch-diag.test.ts
…
spice-npn-switch-integration.test.ts
…
spice-passive.test.ts
…
spice-rectifier-integration.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
spice-rectifier-live-repro.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
spice-relaxation-oscillator.test.ts
…
spice-relay-integration.test.ts
…
spice-signal-generator-tran.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
spice-slide-switch-spdt-repro.test.ts fix(sim): model slide-switch as a real SPDT + tie ESP32 dual 3V3/5V pins to the rail 2026-07-09 18:58:12 +02:00
spice-smoke.test.ts
…
spice-transient.test.ts
…
ssd168x-decoder.test.ts fix(epaper): correct orientation across all boards + Pico VCC wire 2026-06-04 23:15:37 -03:00
ssd1306-render.test.ts fix(sim): SSD1306 page-addressing mode (Tiny4kOLED/U8g2 OLED garbled) 2026-06-19 18:08:01 +02:00
triple-pico-digital-chain.test.ts feat(opencore): extract Pico W WiFi to a pluggable PIO peripheral seam 2026-06-15 08:33:28 +02:00
uc8159c-decoder.test.ts
…
undo-redo.test.ts fix(simulator): wire colour change from UI was a no-op (recordUpdateWire applyNow) 2026-06-19 19:49:12 +02:00
virtual-i2c-devices.test.ts
…
voltmeter-waveform.test.ts feat(sim): Phase 1c G+F3 — retire legacy CircuitScheduler / eecircuit-engine 2026-05-15 21:46:34 +02:00
waveform-stats.test.ts
…
wire-auto-route.test.ts fix(router): escape corridors for endpoint-in-obstacle + checked-elbow parity 2026-07-20 21:35:58 +02:00
wire-path.test.ts feat(wires): fuse sub-pixel jogs + snap segment drags to the wire's own runs 2026-07-18 05:39:37 +02:00
wire-reroute.test.ts fix(router): escape corridors for endpoint-in-obstacle + checked-elbow parity 2026-07-20 21:35:58 +02:00