# Changelog All notable changes to CmdForge will be documented in this file. ## [Unreleased] ### Added #### Registry Features - **Fork tracking and display**: Tools now track their fork origin with `forked_from` and `forked_version` metadata - Forked tools show a "Forked from" notice on the tool detail page - Original tools display a "Forks" section listing all forks - Fork count displayed in tool stats - API endpoint: `GET /api/v1/tools///forks` - **Version selector for installs**: Users can select specific versions when installing tools from the registry - Version dropdown in registry page populated via `GET /api/v1/tools///versions` - "Latest" option plus all available versions listed - Selected version passed to install worker - **Auto-cleanup rejected versions**: Admin maintenance feature to purge rejected tool submissions - API endpoint: `POST /api/v1/admin/cleanup/rejected` - Parameters: - `days` (default: 7) - grace period before deletion - `dry_run` (default: false) - preview mode without actual deletion - Admin dashboard UI with "Dry Run" and "Run Cleanup" buttons - Shows count of rejected versions pending cleanup #### GUI Improvements - Version display and bump buttons in publish dialog - Auto-fetch registry version when opening publish dialog - Fork detection during publish workflow - Always refresh tools page after publish dialog closes #### Admin Features - Maintenance section in admin dashboard - Rejected version count display - Cleanup result modal with detailed output #### Fabric Sync Improvements - **AI review logging**: Added comprehensive logging to `run_ai_scrutiny_review()` function - Logs tool path checks, warning counts, timing, success/failure states - Logs timeout events, JSON parse errors, and all exception types - Previously failures were silently swallowed with `return None` - **`--skip-ai-review` flag**: Skip AI secondary review for large bulk imports - Prevents rate limiting and timeouts during initial large imports - Usage: `python fabric_sync.py --sync --skip-ai-review` - Logs when AI review is skipped with reason ### Fixed - VERSION_EXISTS error showing after successful publish (made endpoint idempotent by checking config_hash) - My Tools page listing every version separately (now consolidated by tool name) - GUI not refreshing after publish dialog closes ### Changed - Publish endpoint now returns success if same config_hash already exists (idempotent) - My Tools page groups versions by tool name, showing version count and list --- ## Previous Changes See git history for changes prior to this changelog.