Skip to content

Match discontinued REV SKUs to their successors, and goBILDA parts by size - #57

Merged
sushilm20 merged 3 commits into
mainfrom
fix/match-successors-sizes
Oct 29, 2026
Merged

sushilm20 merged 3 commits into
mainfrom
fix/match-successors-sizes

Conversation

@sushilm20

Copy link
Copy Markdown
Contributor

Owner reports from the HORS panel (2026-10-28): "Control Hub REV-31-1152" asked to be confirmed, "Smart Robot Servo REV-41-1097" found nothing ("u should know that its a rev servo"), and "8x14x5mm Bearing - Round Bore (GB)" found nothing ("u should know that its gobilda").

Why

  • REV's official feed of 2026-10-28 lists neither REV-31-1152 nor REV-41-1097: REV discontinued both. It sells REV-31-1595 (Control Hub, $375) and the Smart Robot Servo V2 as Balanced REV-41-3334 or UltraSpeed REV-41-3336 ($32.50 each). The hub only matched by name, so it was a possible match; the servo matched nothing.
  • goBILDA sells that bearing as 1611-0514-0008, 1611 Series Flanged Ball Bearing (8mm ID x 14mm OD, 5mm Thickness). "8x14x5mm" never lined up with goBILDA's spelled-out sizes, and the REX-bore version had the same numbers.

Changes

  • successorOf (known-products.ts): discontinued SKUs with what replaced them. One successor gives an exact, priced match ("REV-31-1152 is discontinued; REV Control Hub is sold as REV-31-1595"). Two give a possible match with both as choices. The old SKU is never listed or priced.
  • spellSizes (matching.ts): "8x14x5mm" or "8 × 14 × 5 mm" becomes "8mm 14mm 5mm" for library names and the tagged search. A configuration's own size field is ignored when the name gives sizes.
  • boreConflict: "Round Bore" excludes REX/hex-bore products, and "REX" or "hex" excludes round ones.
  • A vendor-tagged part ("(GB)") whose search leaves one product carrying every number in its name is an exact match. That also makes "6000rpm Motor - Bare REX (GB)" exact as 5203-2402-0001. Several products, or a name without numbers, stay a choice.

Tests

New cases in catalog.test.ts: the bearing exact as 1611-0514-0008 (round bore) and 1611-0514-4008 (REX bore), two sizes staying a choice, the hub exact as REV-31-1595, the servo as a V2 choice. Updated: the tagged-motor test now expects exact, and the REV-feed buy-line test now orders the old hub as REV-31-1595. Typecheck, eslint, and 287 unit tests pass.

… size

- A part numbered with a SKU REV no longer sells is ordered as what replaced
  it: REV-31-1152 (Control Hub) as REV-31-1595 exactly; REV-41-1097 (Smart
  Robot Servo) as a choice of the V2 Balanced or UltraSpeed.
- Sizes written as one token (8x14x5mm) are spelled out for library names,
  and a named bore (Round, REX, hex) rules out the other bore.
- A vendor-tagged part whose search leaves one product carrying every number
  in its name is an exact match, so it is priced without confirming.
@greptile-apps

greptile-apps Bot commented Oct 29, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[Medium impact] The PR appears safe to merge; no new actionable issue remains.

Summary

The PR matches discontinued REV SKUs to current products and improves goBILDA matching by size and bore. The latest change restores decimal dimensions during comparison.

  • Discontinued REV numbers lead to the products REV sells now.
  • Tagged goBILDA parts match by size and bore.

Reviews (3) · Last reviewed commit: "Greptile: keep decimal sizes when checki..." · Reviewed by Greptile

Comment thread packages/shared/src/matching.ts Resolved
Comment thread packages/shared/src/catalog-read.ts Resolved
…a choice

- An exact tagged match needs one-token sizes in the product name in the same
  order (bore, outside diameter, thickness): 5x14x8mm is not the 8x14x5
  bearing.
- A part whose part number and name are two different discontinued products
  gets every replacement as a choice instead of the first one priced.
@sushilm20

Copy link
Copy Markdown
Contributor Author

@greptile review

Comment thread packages/shared/src/matching.ts Resolved
Normalizing splits 15.5mm into '15 5mm', so a bare number just before a size
is joined back on both sides before the ordered comparison; 8x15.5x5mm now
matches goBILDA's 8mm x 15.5mm x 5mm thrust bearing exactly.
@sushilm20

Copy link
Copy Markdown
Contributor Author

@greptile review

@sushilm20
sushilm20 merged commit b66188d into main Oct 29, 2026
2 checks passed
@sushilm20
sushilm20 deleted the fix/match-successors-sizes branch October 29, 2026 02:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant