Route explainability dashboard and metrics (Issue #188)#189
Merged
Conversation
added 23 commits
March 30, 2026 00:06
…functions - Add _shortcut_alias_tokens(), find_model_shortcut_alias_conflicts(), dedupe_model_shortcut_aliases() - Integrate dedupe calls into wizard merge functions - Enable client_profiles in config.yaml with faigrid CLI integration presets
Add provider catalog live features: - Overlay local route visibility on mirrored sources - Operator alert summaries and source alerts in API/dashboard - Refresh local model availability via models endpoint - Enhance provider availability overlay and catalog refresh - Update provider catalog store and sources - Add tests for provider availability
- Enhance /api/stats endpoint with packages_summary and packages_detail - Add package metrics card to dashboard overview - Show expiring soon alerts and low credit warnings
- Add active branch limits (max 15 total, 10 unmerged) - Implement 30-day age-based cleanup rule - Define release-triggered cleanup process - Include cleanup scripts and worktree hygiene - Prevent branch sprawl with clear retention policies
- Add active branch limits (max 15 total, 10 unmerged) - Implement 30-day age-based cleanup rule - Define release-triggered cleanup process - Include cleanup scripts and worktree hygiene - Prevent branch sprawl with clear retention policies
- Update status to v1.18.0 with recent achievements - Add parity status table showing current progress - Define release sequence: v1.19.x (Claude Desktop Parity), v1.20.x (Metadata Integration #186), v1.21.x (Route Explainability) - Update immediate near-term order to match new priorities
- Define workflow: Roadmap → Issues → Feature Branch → PR → Review → Merge → Cleanup - Include issue creation template and labeling guidelines - Add PR creation checklist and review process - Document post-merge actions and regular maintenance - Align with branch management guidelines for cleanup
- Add .mailmap to map André Lange to typelicious - Update CODE_OF_CONDUCT.md with AI contribution policy - Reorganize bridge docs into docs/bridge/ directory - Implement test coverage reporting with pytest-cov - Add pre-commit hooks configuration - Enhance security scanning with Bandit - Add version bump validation in CI - Create devcontainer configuration - Add performance benchmark suite - Implement API documentation automation - Setup changelog automation with git-cliff - Create fusionAIze project template - Update roadmap with v2.0.0 requirements
- Enable anthropic_bridge.enabled: true - Enable api_surfaces.anthropic_messages: true - Add Claude Desktop model aliases (claude-3-5-sonnet-20241022, claude-3-opus, etc.) - Add validation script for Claude Desktop compatibility
- Update config.yaml port to 8091 for testing - Enhance validation script to handle 401 auth errors as bridge active - Remove debug prints from bridge surface check - All validation tests pass with dummy API keys - Claude Desktop model aliases configured and working - Streaming and non-streaming endpoints functional - Token counting endpoint operational
- Extend pricing metadata schema with promotion fields (promotion, discount_percentage, expires_at, promotion_source) - Add promotion expiry alerts in provider catalog report - Display pricing source badges in dashboard catalog table - Apply promotion discounts in router cost calculations - Update router to consider promotion expiration dates
- Add provider-mix analytics endpoint (/api/analytics/provider-mix) - Return cost savings opportunities per canonical model - Compare pricing across providers for same canonical model - Include promotion and freshness metadata in analytics - Fix provider health lookup using global _providers - Revert server port to 8090 (default)
…ntegration - Disable metrics to avoid SQLite permission errors - Change server port to 8092 to avoid conflicts with existing processes - External metadata integration (Issue #186) includes promotion alerts, source badges, discount application, and provider-mix analytics endpoint
…e-explainability-2026-04-02
…bility - External metadata integration (Issue #186) includes: * Promotion alerts with expiry checking * Source badges in dashboard catalog table * Promotion discount application in router cost calculations * Provider-mix analytics endpoint for cost-savings opportunities * Test promotion data added to overlay for validation - Merged external metadata branch into route explainability branch - Server runs on port 8092 with metrics disabled for testing - Ready for Issue #188 (Route Explainability) implementation
- Add route_summary column to metrics DB (optional column) - Persist route_summary in all six log_request calls via _build_route_summary - Enhance /api/traces to parse and include route_summary JSON - Add Route decision history panel to dashboard Routes view with why_selected and alternatives columns - Update config.yaml metrics db_path to ./faigate.db and enable metrics
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Related Issues
Closes #188 (Route Explainability)
Builds on #186 (External metadata integration)
Testing