New POST /api/rescan re-runs the boot item setup (ensureItemDirs + ensureToolLoader) and returns live item counts; the header button calls it and invalidates the item query caches so the UI refetches from disk. Also fix ensure-tool-loader to write into OFFICER_ITEMS_DIR/extensions (the runtime read path) instead of the now-unread DATA_PATH/extensions. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>