From 7f13144c53eec53e401ff6a9df8b479805cd10ca Mon Sep 17 00:00:00 2001 From: Rene Fichtmueller Date: Thu, 11 Jun 2026 05:36:44 +0000 Subject: [PATCH] fix(switch-compat): only suggest catalog-confirmed Flexoptix parts (fx_specifications) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ~107 parts were misattributed to the Flexoptix vendor but do not exist in the live Flexoptix catalog (FX uses dot-SKUs like S.1606.28.KD; these use dash-SKUs like FOT-AX-200G). They polluted 'BEI FLEXOPTIX BESTELLEN' with non-orderable phantom parts carrying name-guessed specs. Now require fx_specifications IS NOT NULL — every suggestion is confirmed in Flexoptix's API with authoritative datasheet specs. CX 10000-48Y6C: 801 -> 630 suggestions, all catalog-confirmed, 0 physically impossible, 0 phantoms. --- packages/api/src/db/queries.ts | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/api/src/db/queries.ts b/packages/api/src/db/queries.ts index 22777d0..8e82adf 100644 --- a/packages/api/src/db/queries.ts +++ b/packages/api/src/db/queries.ts @@ -384,6 +384,10 @@ export async function getFlexoptixSuggestions(switchId: string) { LIMIT 1 ) so ON true WHERE LOWER(v.name) = 'flexoptix' + -- Only parts confirmed in Flexoptix's live API catalog (have authoritative + -- datasheet specs). Excludes phantom/misattributed parts not actually + -- orderable from Flexoptix, and parts with no source-of-truth specs. + AND t.fx_specifications IS NOT NULL AND t.speed_gbps IS NOT NULL AND t.speed_gbps > 0 AND EXISTS ( SELECT 1 FROM switch_ports sp