diff --git a/tests/repros/__snapshots__/repro-sparse-chip-pin-numbers-schematic.snap.svg b/tests/repros/__snapshots__/repro-sparse-chip-pin-numbers-schematic.snap.svg
new file mode 100644
index 000000000..715381a2a
--- /dev/null
+++ b/tests/repros/__snapshots__/repro-sparse-chip-pin-numbers-schematic.snap.svg
@@ -0,0 +1,12 @@
+
\ No newline at end of file
diff --git a/tests/repros/repro-sparse-chip-pin-numbers.test.tsx b/tests/repros/repro-sparse-chip-pin-numbers.test.tsx
new file mode 100644
index 000000000..d81d422ca
--- /dev/null
+++ b/tests/repros/repro-sparse-chip-pin-numbers.test.tsx
@@ -0,0 +1,59 @@
+import { expect, test } from "bun:test"
+import { getTestFixture } from "../fixtures/get-test-fixture"
+
+test("native chip preserves sparse pin numbers", () => {
+ const { circuit } = getTestFixture()
+
+ circuit.add(
+
+
+
+
+
+
+ }
+ />,
+ )
+
+ circuit.render()
+
+ expect(circuit).toMatchSchematicSnapshot(import.meta.path)
+})