Expand component search indexing fields#2423
Conversation
🎩 PreviewA preview build has been created at: |
🤖 Code review — Expand component search indexing fieldsReviewed as the base of the AI-search stack (#2423→#2433). Overall this is a clean, well-tested expansion: input/output descriptions + types + annotations now feed the A few small things worth a look — none blocking:
Nice cleanup folding the duplicated name/type guards into |

Description
Expands the component search index to include richer input/output details and a new
metadatamatch field.Previously, the
iosearchable field only contained input and output names. It now includes descriptions, types, and annotations for each input and output spec. A newmetadatafield has been added that indexes component-level metadata annotations (with a blocklist for noisy keys likepython_original_code, editor state, and similar large/irrelevant blobs) as well as the source label andpublished_byvalue from the component reference.The
MatchFieldtype and all related scoring, labeling, and UI display logic have been updated to includemetadataalongside the existing fields. Annotation values longer than 500 characters are excluded from indexing to avoid polluting search with large blobs.Related Issue and Pull requests
Type of Change
Checklist
Screenshots (if applicable)
Test Instructions
sklearnorlightgbm).metadatalisted as a matched field.python_original_codeor other excluded annotation keys and confirm it does not return results.parquet,artifact) and confirm results appear withioas the matched field.Additional Comments
The annotation exclusion list (
ANNOTATION_KEYS_EXCLUDED_FROM_SEARCH) and the 500-character value length cap are the primary mechanisms for keeping the metadata index clean. These can be extended as new noisy annotation keys are identified.