@tscircuit/schematic-trace-solver 0.0.152 → 0.0.154
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +5 -5
- package/dist/index.js +84 -27
- package/lib/solvers/AvailableNetOrientationSolver/AvailableNetOrientationSolver.ts +7 -0
- package/lib/solvers/NetLabelPlacementSolver/NetLabelPlacementSolver.ts +1 -0
- package/lib/solvers/SameNetJunctionAlignmentSolver/alignSameNetJunctions.ts +81 -8
- package/lib/solvers/SchematicTraceLinesSolver/SchematicTraceSingleLineSolver2/SchematicTraceSingleLineSolver2.ts +1 -1
- package/lib/solvers/TraceAnchoredNetLabelOverlapSolver/candidates.ts +1 -0
- package/lib/types/InputProblem.ts +5 -5
- package/lib/utils/getNetLabelWidthForConnection.ts +9 -10
- package/package.json +1 -1
- package/site/bug-reports/bug-report-20260825T103621Z.page.tsx +4 -0
- package/tests/assets/example51.json +159 -32
- package/tests/bug-reports/bug-report-20260825T103621Z/__snapshots__/bug-report-20260825T103621Z.snap.svg +452 -0
- package/tests/bug-reports/bug-report-20260825T103621Z/bug-report-20260825T103621Z.json +1696 -0
- package/tests/bug-reports/bug-report-20260825T103621Z/bug-report-20260825T103621Z.test.ts +12 -0
- package/tests/examples/__snapshots__/example51.snap.svg +485 -473
- package/tests/examples/example51.test.ts +3 -1
- package/tests/repros/__snapshots__/repro-core-tb67s579ftg-inline-label-routing.snap.svg +8 -8
- package/tests/repros/__snapshots__/repro-pga300-c6-trace-alignment.snap.svg +88 -0
- package/tests/repros/assets/repro-core-tb67s579ftg-inline-label-routing.input.json +33 -33
- package/tests/repros/assets/repro-pga300-c6-trace-alignment.input.json +97 -0
- package/tests/repros/repro-core-tb67s579ftg-inline-label-routing.test.ts +3 -2
- package/tests/repros/repro-pga300-c6-trace-alignment.test.ts +36 -0
- package/tests/solvers/InlineNetLabelSolver/{fallback-net-label-width.test.ts → anchored-net-label-width.test.ts} +34 -11
- /package/tests/solvers/InlineNetLabelSolver/__snapshots__/{fallback-net-label-width.snap.svg → anchored-net-label-width.snap.svg} +0 -0
|
@@ -1945,7 +1945,7 @@
|
|
|
1945
1945
|
},
|
|
1946
1946
|
{
|
|
1947
1947
|
"netId": ".C31 > .pin1 to .R9 > .pin1",
|
|
1948
|
-
"netLabelWidth": 0.
|
|
1948
|
+
"netLabelWidth": 0.48,
|
|
1949
1949
|
"pinIds": [
|
|
1950
1950
|
"schematic_port_35",
|
|
1951
1951
|
"schematic_port_88"
|
|
@@ -1953,7 +1953,7 @@
|
|
|
1953
1953
|
},
|
|
1954
1954
|
{
|
|
1955
1955
|
"netId": ".C31 > .pin1 to .C4 > .pin1",
|
|
1956
|
-
"netLabelWidth": 0.
|
|
1956
|
+
"netLabelWidth": 0.48,
|
|
1957
1957
|
"pinIds": [
|
|
1958
1958
|
"schematic_port_35",
|
|
1959
1959
|
"schematic_port_6"
|
|
@@ -1961,7 +1961,7 @@
|
|
|
1961
1961
|
},
|
|
1962
1962
|
{
|
|
1963
1963
|
"netId": ".C31 > .pin1 to .C20 > .pin1",
|
|
1964
|
-
"netLabelWidth": 0.
|
|
1964
|
+
"netLabelWidth": 0.48,
|
|
1965
1965
|
"pinIds": [
|
|
1966
1966
|
"schematic_port_35",
|
|
1967
1967
|
"schematic_port_12"
|
|
@@ -1969,7 +1969,7 @@
|
|
|
1969
1969
|
},
|
|
1970
1970
|
{
|
|
1971
1971
|
"netId": ".C31 > .pin1 to .R2 > .pin2",
|
|
1972
|
-
"netLabelWidth": 0.
|
|
1972
|
+
"netLabelWidth": 0.48,
|
|
1973
1973
|
"pinIds": [
|
|
1974
1974
|
"schematic_port_35",
|
|
1975
1975
|
"schematic_port_75"
|
|
@@ -2057,7 +2057,7 @@
|
|
|
2057
2057
|
},
|
|
2058
2058
|
{
|
|
2059
2059
|
"netId": ".R1 > .pin1 to .R6 > .pin2",
|
|
2060
|
-
"netLabelWidth":
|
|
2060
|
+
"netLabelWidth": 0.6,
|
|
2061
2061
|
"pinIds": [
|
|
2062
2062
|
"schematic_port_72",
|
|
2063
2063
|
"schematic_port_83"
|
|
@@ -2065,7 +2065,7 @@
|
|
|
2065
2065
|
},
|
|
2066
2066
|
{
|
|
2067
2067
|
"netId": ".R1 > .pin1 to .R4 > .pin1",
|
|
2068
|
-
"netLabelWidth":
|
|
2068
|
+
"netLabelWidth": 0.6,
|
|
2069
2069
|
"pinIds": [
|
|
2070
2070
|
"schematic_port_72",
|
|
2071
2071
|
"schematic_port_78"
|
|
@@ -2073,7 +2073,7 @@
|
|
|
2073
2073
|
},
|
|
2074
2074
|
{
|
|
2075
2075
|
"netId": ".R1 > .pin1 to .R3 > .pin2",
|
|
2076
|
-
"netLabelWidth":
|
|
2076
|
+
"netLabelWidth": 0.6,
|
|
2077
2077
|
"pinIds": [
|
|
2078
2078
|
"schematic_port_72",
|
|
2079
2079
|
"schematic_port_77"
|
|
@@ -2081,7 +2081,7 @@
|
|
|
2081
2081
|
},
|
|
2082
2082
|
{
|
|
2083
2083
|
"netId": ".R1 > .pin1 to .C52 > .pin1",
|
|
2084
|
-
"netLabelWidth":
|
|
2084
|
+
"netLabelWidth": 0.6,
|
|
2085
2085
|
"pinIds": [
|
|
2086
2086
|
"schematic_port_72",
|
|
2087
2087
|
"schematic_port_58"
|
|
@@ -2089,7 +2089,7 @@
|
|
|
2089
2089
|
},
|
|
2090
2090
|
{
|
|
2091
2091
|
"netId": ".R1 > .pin1 to .C51 > .pin1",
|
|
2092
|
-
"netLabelWidth":
|
|
2092
|
+
"netLabelWidth": 0.6,
|
|
2093
2093
|
"pinIds": [
|
|
2094
2094
|
"schematic_port_72",
|
|
2095
2095
|
"schematic_port_56"
|
|
@@ -2097,7 +2097,7 @@
|
|
|
2097
2097
|
},
|
|
2098
2098
|
{
|
|
2099
2099
|
"netId": ".R1 > .pin1 to .C50 > .pin1",
|
|
2100
|
-
"netLabelWidth":
|
|
2100
|
+
"netLabelWidth": 0.6,
|
|
2101
2101
|
"pinIds": [
|
|
2102
2102
|
"schematic_port_72",
|
|
2103
2103
|
"schematic_port_54"
|
|
@@ -2105,7 +2105,7 @@
|
|
|
2105
2105
|
},
|
|
2106
2106
|
{
|
|
2107
2107
|
"netId": ".R1 > .pin1 to .C53 > .pin1",
|
|
2108
|
-
"netLabelWidth":
|
|
2108
|
+
"netLabelWidth": 0.6,
|
|
2109
2109
|
"pinIds": [
|
|
2110
2110
|
"schematic_port_72",
|
|
2111
2111
|
"schematic_port_60"
|
|
@@ -2113,7 +2113,7 @@
|
|
|
2113
2113
|
},
|
|
2114
2114
|
{
|
|
2115
2115
|
"netId": ".R1 > .pin1 to .C100 > .pin1",
|
|
2116
|
-
"netLabelWidth":
|
|
2116
|
+
"netLabelWidth": 0.6,
|
|
2117
2117
|
"pinIds": [
|
|
2118
2118
|
"schematic_port_72",
|
|
2119
2119
|
"schematic_port_70"
|
|
@@ -2121,7 +2121,7 @@
|
|
|
2121
2121
|
},
|
|
2122
2122
|
{
|
|
2123
2123
|
"netId": ".C34 > .pin1 to .R8 > .pin1",
|
|
2124
|
-
"netLabelWidth": 0.
|
|
2124
|
+
"netLabelWidth": 0.6,
|
|
2125
2125
|
"pinIds": [
|
|
2126
2126
|
"schematic_port_40",
|
|
2127
2127
|
"schematic_port_86"
|
|
@@ -2129,7 +2129,7 @@
|
|
|
2129
2129
|
},
|
|
2130
2130
|
{
|
|
2131
2131
|
"netId": ".C34 > .pin1 to .U1 > .pin28",
|
|
2132
|
-
"netLabelWidth": 0.
|
|
2132
|
+
"netLabelWidth": 0.6,
|
|
2133
2133
|
"pinIds": [
|
|
2134
2134
|
"schematic_port_40",
|
|
2135
2135
|
"schematic_port_145"
|
|
@@ -2137,7 +2137,7 @@
|
|
|
2137
2137
|
},
|
|
2138
2138
|
{
|
|
2139
2139
|
"netId": ".C32 > .pin1 to .R8 > .pin2",
|
|
2140
|
-
"netLabelWidth": 0.
|
|
2140
|
+
"netLabelWidth": 0.6,
|
|
2141
2141
|
"pinIds": [
|
|
2142
2142
|
"schematic_port_36",
|
|
2143
2143
|
"schematic_port_87"
|
|
@@ -2145,7 +2145,7 @@
|
|
|
2145
2145
|
},
|
|
2146
2146
|
{
|
|
2147
2147
|
"netId": ".C32 > .pin1 to .U1 > .pin7",
|
|
2148
|
-
"netLabelWidth": 0.
|
|
2148
|
+
"netLabelWidth": 0.6,
|
|
2149
2149
|
"pinIds": [
|
|
2150
2150
|
"schematic_port_36",
|
|
2151
2151
|
"schematic_port_128"
|
|
@@ -2153,7 +2153,7 @@
|
|
|
2153
2153
|
},
|
|
2154
2154
|
{
|
|
2155
2155
|
"netId": ".C32 > .pin1 to .P1 > .pin2",
|
|
2156
|
-
"netLabelWidth": 0.
|
|
2156
|
+
"netLabelWidth": 0.6,
|
|
2157
2157
|
"pinIds": [
|
|
2158
2158
|
"schematic_port_36",
|
|
2159
2159
|
"schematic_port_125"
|
|
@@ -2161,7 +2161,7 @@
|
|
|
2161
2161
|
},
|
|
2162
2162
|
{
|
|
2163
2163
|
"netId": ".C32 > .pin1 to .R110 > .pin2",
|
|
2164
|
-
"netLabelWidth": 0.
|
|
2164
|
+
"netLabelWidth": 0.6,
|
|
2165
2165
|
"pinIds": [
|
|
2166
2166
|
"schematic_port_36",
|
|
2167
2167
|
"schematic_port_109"
|
|
@@ -2169,7 +2169,7 @@
|
|
|
2169
2169
|
},
|
|
2170
2170
|
{
|
|
2171
2171
|
"netId": ".C32 > .pin1 to .R11 > .pin2",
|
|
2172
|
-
"netLabelWidth": 0.
|
|
2172
|
+
"netLabelWidth": 0.6,
|
|
2173
2173
|
"pinIds": [
|
|
2174
2174
|
"schematic_port_36",
|
|
2175
2175
|
"schematic_port_91"
|
|
@@ -2177,7 +2177,7 @@
|
|
|
2177
2177
|
},
|
|
2178
2178
|
{
|
|
2179
2179
|
"netId": ".C2 > .pin1 to .R1 > .pin2",
|
|
2180
|
-
"netLabelWidth": 0.
|
|
2180
|
+
"netLabelWidth": 0.84,
|
|
2181
2181
|
"pinIds": [
|
|
2182
2182
|
"schematic_port_2",
|
|
2183
2183
|
"schematic_port_73"
|
|
@@ -2185,7 +2185,7 @@
|
|
|
2185
2185
|
},
|
|
2186
2186
|
{
|
|
2187
2187
|
"netId": ".C2 > .pin1 to .R5 > .pin2",
|
|
2188
|
-
"netLabelWidth": 0.
|
|
2188
|
+
"netLabelWidth": 0.84,
|
|
2189
2189
|
"pinIds": [
|
|
2190
2190
|
"schematic_port_2",
|
|
2191
2191
|
"schematic_port_81"
|
|
@@ -2307,7 +2307,7 @@
|
|
|
2307
2307
|
},
|
|
2308
2308
|
{
|
|
2309
2309
|
"netId": ".C31 > .pin2 to .R7 > .pin1",
|
|
2310
|
-
"netLabelWidth": 0.
|
|
2310
|
+
"netLabelWidth": 0.84,
|
|
2311
2311
|
"pinIds": [
|
|
2312
2312
|
"schematic_port_34",
|
|
2313
2313
|
"schematic_port_84"
|
|
@@ -2315,7 +2315,7 @@
|
|
|
2315
2315
|
},
|
|
2316
2316
|
{
|
|
2317
2317
|
"netId": ".C31 > .pin2 to .C3 > .pin1",
|
|
2318
|
-
"netLabelWidth": 0.
|
|
2318
|
+
"netLabelWidth": 0.84,
|
|
2319
2319
|
"pinIds": [
|
|
2320
2320
|
"schematic_port_34",
|
|
2321
2321
|
"schematic_port_4"
|
|
@@ -2323,7 +2323,7 @@
|
|
|
2323
2323
|
},
|
|
2324
2324
|
{
|
|
2325
2325
|
"netId": ".C31 > .pin2 to .U1 > .pin22",
|
|
2326
|
-
"netLabelWidth": 0.
|
|
2326
|
+
"netLabelWidth": 0.84,
|
|
2327
2327
|
"pinIds": [
|
|
2328
2328
|
"schematic_port_34",
|
|
2329
2329
|
"schematic_port_150"
|
|
@@ -2331,7 +2331,7 @@
|
|
|
2331
2331
|
},
|
|
2332
2332
|
{
|
|
2333
2333
|
"netId": ".C31 > .pin2 to .Q2 > .drain",
|
|
2334
|
-
"netLabelWidth": 0.
|
|
2334
|
+
"netLabelWidth": 0.84,
|
|
2335
2335
|
"pinIds": [
|
|
2336
2336
|
"schematic_port_34",
|
|
2337
2337
|
"schematic_port_115"
|
|
@@ -2339,7 +2339,7 @@
|
|
|
2339
2339
|
},
|
|
2340
2340
|
{
|
|
2341
2341
|
"netId": ".C31 > .pin2 to .C55 > .pin1",
|
|
2342
|
-
"netLabelWidth": 0.
|
|
2342
|
+
"netLabelWidth": 0.84,
|
|
2343
2343
|
"pinIds": [
|
|
2344
2344
|
"schematic_port_34",
|
|
2345
2345
|
"schematic_port_62"
|
|
@@ -2347,7 +2347,7 @@
|
|
|
2347
2347
|
},
|
|
2348
2348
|
{
|
|
2349
2349
|
"netId": ".C31 > .pin2 to .C56 > .pin1",
|
|
2350
|
-
"netLabelWidth": 0.
|
|
2350
|
+
"netLabelWidth": 0.84,
|
|
2351
2351
|
"pinIds": [
|
|
2352
2352
|
"schematic_port_34",
|
|
2353
2353
|
"schematic_port_64"
|
|
@@ -2355,7 +2355,7 @@
|
|
|
2355
2355
|
},
|
|
2356
2356
|
{
|
|
2357
2357
|
"netId": ".C31 > .pin2 to .C57 > .pin1",
|
|
2358
|
-
"netLabelWidth": 0.
|
|
2358
|
+
"netLabelWidth": 0.84,
|
|
2359
2359
|
"pinIds": [
|
|
2360
2360
|
"schematic_port_34",
|
|
2361
2361
|
"schematic_port_66"
|
|
@@ -2363,7 +2363,7 @@
|
|
|
2363
2363
|
},
|
|
2364
2364
|
{
|
|
2365
2365
|
"netId": ".C31 > .pin2 to .C58 > .pin1",
|
|
2366
|
-
"netLabelWidth": 0.
|
|
2366
|
+
"netLabelWidth": 0.84,
|
|
2367
2367
|
"pinIds": [
|
|
2368
2368
|
"schematic_port_34",
|
|
2369
2369
|
"schematic_port_68"
|
|
@@ -2371,7 +2371,7 @@
|
|
|
2371
2371
|
},
|
|
2372
2372
|
{
|
|
2373
2373
|
"netId": ".C31 > .pin2 to .R2 > .pin1",
|
|
2374
|
-
"netLabelWidth": 0.
|
|
2374
|
+
"netLabelWidth": 0.84,
|
|
2375
2375
|
"pinIds": [
|
|
2376
2376
|
"schematic_port_34",
|
|
2377
2377
|
"schematic_port_74"
|
|
@@ -2587,6 +2587,18 @@
|
|
|
2587
2587
|
}
|
|
2588
2588
|
],
|
|
2589
2589
|
"netConnections": [
|
|
2590
|
+
{
|
|
2591
|
+
"netId": "NET_01",
|
|
2592
|
+
"netLabelWidth": 0.42,
|
|
2593
|
+
"netLabelHeight": 0.84,
|
|
2594
|
+
"pinIds": [
|
|
2595
|
+
"schematic_port_2",
|
|
2596
|
+
"schematic_port_14",
|
|
2597
|
+
"schematic_port_73",
|
|
2598
|
+
"schematic_port_81",
|
|
2599
|
+
"schematic_port_112"
|
|
2600
|
+
]
|
|
2601
|
+
},
|
|
2590
2602
|
{
|
|
2591
2603
|
"netId": "GND",
|
|
2592
2604
|
"netLabelWidth": 0.42,
|
|
@@ -2634,6 +2646,98 @@
|
|
|
2634
2646
|
"schematic_port_151",
|
|
2635
2647
|
"schematic_port_158"
|
|
2636
2648
|
]
|
|
2649
|
+
},
|
|
2650
|
+
{
|
|
2651
|
+
"netId": "NET_08",
|
|
2652
|
+
"netLabelWidth": 0.42,
|
|
2653
|
+
"netLabelHeight": 0.84,
|
|
2654
|
+
"pinIds": [
|
|
2655
|
+
"schematic_port_4",
|
|
2656
|
+
"schematic_port_34",
|
|
2657
|
+
"schematic_port_62",
|
|
2658
|
+
"schematic_port_64",
|
|
2659
|
+
"schematic_port_66",
|
|
2660
|
+
"schematic_port_68",
|
|
2661
|
+
"schematic_port_74",
|
|
2662
|
+
"schematic_port_84",
|
|
2663
|
+
"schematic_port_115",
|
|
2664
|
+
"schematic_port_150"
|
|
2665
|
+
]
|
|
2666
|
+
},
|
|
2667
|
+
{
|
|
2668
|
+
"netId": "BAT",
|
|
2669
|
+
"netLabelWidth": 0.42,
|
|
2670
|
+
"netLabelHeight": 0.48,
|
|
2671
|
+
"pinIds": [
|
|
2672
|
+
"schematic_port_6",
|
|
2673
|
+
"schematic_port_12",
|
|
2674
|
+
"schematic_port_35",
|
|
2675
|
+
"schematic_port_75",
|
|
2676
|
+
"schematic_port_88"
|
|
2677
|
+
]
|
|
2678
|
+
},
|
|
2679
|
+
{
|
|
2680
|
+
"netId": "NET_03",
|
|
2681
|
+
"netLabelWidth": 0.42,
|
|
2682
|
+
"netLabelHeight": 0.84,
|
|
2683
|
+
"pinIds": [
|
|
2684
|
+
"schematic_port_17",
|
|
2685
|
+
"schematic_port_110",
|
|
2686
|
+
"schematic_port_113",
|
|
2687
|
+
"schematic_port_118",
|
|
2688
|
+
"schematic_port_131"
|
|
2689
|
+
]
|
|
2690
|
+
},
|
|
2691
|
+
{
|
|
2692
|
+
"netId": "NET_05",
|
|
2693
|
+
"netLabelWidth": 0.42,
|
|
2694
|
+
"netLabelHeight": 0.84,
|
|
2695
|
+
"pinIds": [
|
|
2696
|
+
"schematic_port_19",
|
|
2697
|
+
"schematic_port_111",
|
|
2698
|
+
"schematic_port_116",
|
|
2699
|
+
"schematic_port_121",
|
|
2700
|
+
"schematic_port_132"
|
|
2701
|
+
]
|
|
2702
|
+
},
|
|
2703
|
+
{
|
|
2704
|
+
"netId": "VDDA",
|
|
2705
|
+
"netLabelWidth": 0.42,
|
|
2706
|
+
"netLabelHeight": 0.6,
|
|
2707
|
+
"pinIds": [
|
|
2708
|
+
"schematic_port_36",
|
|
2709
|
+
"schematic_port_87",
|
|
2710
|
+
"schematic_port_91",
|
|
2711
|
+
"schematic_port_109",
|
|
2712
|
+
"schematic_port_125",
|
|
2713
|
+
"schematic_port_128"
|
|
2714
|
+
]
|
|
2715
|
+
},
|
|
2716
|
+
{
|
|
2717
|
+
"netId": "REGN",
|
|
2718
|
+
"netLabelWidth": 0.42,
|
|
2719
|
+
"netLabelHeight": 0.6,
|
|
2720
|
+
"pinIds": [
|
|
2721
|
+
"schematic_port_40",
|
|
2722
|
+
"schematic_port_86",
|
|
2723
|
+
"schematic_port_145"
|
|
2724
|
+
]
|
|
2725
|
+
},
|
|
2726
|
+
{
|
|
2727
|
+
"netId": "PPHV",
|
|
2728
|
+
"netLabelWidth": 0.42,
|
|
2729
|
+
"netLabelHeight": 0.6,
|
|
2730
|
+
"pinIds": [
|
|
2731
|
+
"schematic_port_54",
|
|
2732
|
+
"schematic_port_56",
|
|
2733
|
+
"schematic_port_58",
|
|
2734
|
+
"schematic_port_60",
|
|
2735
|
+
"schematic_port_70",
|
|
2736
|
+
"schematic_port_72",
|
|
2737
|
+
"schematic_port_77",
|
|
2738
|
+
"schematic_port_78",
|
|
2739
|
+
"schematic_port_83"
|
|
2740
|
+
]
|
|
2637
2741
|
}
|
|
2638
2742
|
],
|
|
2639
2743
|
"textBoxes": [
|
|
@@ -2661,6 +2765,30 @@
|
|
|
2661
2765
|
"availableNetLabelOrientations": {
|
|
2662
2766
|
"GND": [
|
|
2663
2767
|
"y-"
|
|
2768
|
+
],
|
|
2769
|
+
"BAT": [
|
|
2770
|
+
"y+"
|
|
2771
|
+
],
|
|
2772
|
+
"PPHV": [
|
|
2773
|
+
"y+"
|
|
2774
|
+
],
|
|
2775
|
+
"REGN": [
|
|
2776
|
+
"y+"
|
|
2777
|
+
],
|
|
2778
|
+
"VDDA": [
|
|
2779
|
+
"y+"
|
|
2780
|
+
],
|
|
2781
|
+
"NET_01": [
|
|
2782
|
+
"y+"
|
|
2783
|
+
],
|
|
2784
|
+
"NET_03": [
|
|
2785
|
+
"y+"
|
|
2786
|
+
],
|
|
2787
|
+
"NET_05": [
|
|
2788
|
+
"y+"
|
|
2789
|
+
],
|
|
2790
|
+
"NET_08": [
|
|
2791
|
+
"y+"
|
|
2664
2792
|
]
|
|
2665
2793
|
},
|
|
2666
2794
|
"maxMspPairDistance": 2.4,
|
|
@@ -5097,6 +5225,5 @@
|
|
|
5097
5225
|
}
|
|
5098
5226
|
},
|
|
5099
5227
|
"spatialIndexIdToChip": {}
|
|
5100
|
-
}
|
|
5101
|
-
"_hideRatsNet": false
|
|
5228
|
+
}
|
|
5102
5229
|
}
|