mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-21 05:45:37 +08:00
_index_versions_for prefix-scanned every index entry per lineage lookup, and the EDAM panel views resolve a lineage per shed tool — ~11.5k scans over ~9k entries. Profiled as the single largest toolbox boot cost: 18.0s cumulative, and _configure_toolbox drops from 25.8s to 11.7s (under cProfile) with the scan replaced by one precomputed versionless-guid -> (entry_id, version) map. The map is cached against the ToolIndex object identity plus entry count — reloads swap the object, registrations/removals mutate membership in place — and in-place removals also reset it explicitly (a pop-then-add could keep the count stable while changing membership). Claude-Session: https://claude.ai/code/session_018L7ZmCv2ubKA3JNeSL8Pkr