Shortlist IC part numbers by parametric spec constraints, ranked by how many constraints each part satisfies. Each constraint is {canonical, op: gte|lte|eq|range, value, unit?}. Returns per-constraint pass/fail/unknown. `canonical` MUST be one of the exact names below (case-sensitive):
adc_resolution, block_erase_time, breakdown_voltage_ds, channel_count, clamping_voltage, clock_frequency, cmrr, cmti, coil_power, coil_resistance, coil_voltage, collector_emitter_voltage, contact_current, contact_resistance, core_size, cpu_speed, current_rating, dark_current, data_rate, data_retention, dc_resistance, drain_current, driver_count, dropout_voltage, eeprom_size, emitter_base_voltage, fall_time, forward_current, forward_voltage, gain_bandwidth, gate_charge, impedance, input_bias_current, input_capacitance, input_offset_current, input_offset_current_drift, input_offset_voltage, input_offset_voltage_drift, input_voltage_noise_density, insertion_loss, io_count, isolation_voltage, junction_capacitance, load_capacitance, memory_size, operate_time, operating_frequency, operating_temperature, output_capacitance, output_count, output_current, output_noise_voltage, output_power, output_voltage, output_voltage_high, output_voltage_low, page_program_time, peak_pulse_current, power_dissipation, program_erase_cycles, program_memory_size, propagation_delay, psrr, quiescent_current, ram_size, rds_on, receiver_count, rectified_current, release_time, response_time, reverse_leakage_current, reverse_recovery_time, reverse_transfer_capacitance, reverse_voltage, rise_time, sample_rate, sensitivity, settling_time, slew_rate, standby_current, supply_voltage_range, switching_frequency, switching_voltage, vgs_threshold, zener_voltage