Repository navigation
Rename Grafana config fields for consistency and add backward compatibility - #1498
Conversation
…_headers - Add deprecated field mappings for backward compatibility - Update all documentation, tests, and eval fixtures to use new field names - Add backward compatibility tests to verify old field names still work - Keep only backward compatibility tests using old field names https://claude.ai/code/session_01EwZdqLZkUq4NKduWDmBFDa Signed-off-by: Claude <noreply@anthropic.com>
|
📂 Previous Runs📜 Run @ 750fad9 (#21799816296)✅ Results of HolmesGPT evalsAutomatically triggered by commit 750fad9 on branch Results of HolmesGPT evals
📜 Run @ 5d1018e (#21799705425)✅ Results of HolmesGPT evalsAutomatically triggered by commit 5d1018e on branch Results of HolmesGPT evals
📜 Run @ 8c7d7e1 (#21797864362)✅ Results of HolmesGPT evalsAutomatically triggered by commit 8c7d7e1 on branch Results of HolmesGPT evals
📜 Run @ f08bc0f (#21717841385)✅ Results of HolmesGPT evalsAutomatically triggered by commit f08bc0f on branch Results of HolmesGPT evals
📜 Run @ dd655b6 (#21715994932)✅ Results of HolmesGPT evalsAutomatically triggered by commit dd655b6 on branch Results of HolmesGPT evals
✅ Results of HolmesGPT evalsAutomatically triggered by commit 0bc8f26 on branch Results of HolmesGPT evals
📖 Legend
🔄 Re-run evals manually
Option 1: Comment on this PR with Or with more options (one per line): Run evals on a different branch (e.g., master) for comparison:
Quick re-run: Use Option 2: Trigger via GitHub Actions UI → "Run workflow" 🏷️ Valid markers
Commands: CLI: |
|
✅ Docker image ready for
Use this tag to pull the image for testing. 📋 Copy commandsgcloud auth configure-docker us-central1-docker.pkg.dev
docker pull us-central1-docker.pkg.dev/robusta-development/temporary-builds/holmes:f1871b5
docker tag us-central1-docker.pkg.dev/robusta-development/temporary-builds/holmes:f1871b5 me-west1-docker.pkg.dev/robusta-development/development/holmes-dev:f1871b5
docker push me-west1-docker.pkg.dev/robusta-development/development/holmes-dev:f1871b5Patch Helm values in one line (choose the chart you use): HolmesGPT chart: helm upgrade --install holmesgpt ./helm/holmes \
--set registry=me-west1-docker.pkg.dev/robusta-development/development \
--set image=holmes-dev:f1871b5Robusta wrapper chart: helm upgrade --install robusta robusta/robusta \
--reuse-values \
--set holmes.registry=me-west1-docker.pkg.dev/robusta-development/development \
--set holmes.image=holmes-dev:f1871b5 |
WalkthroughExpanded CLAUDE.md with comprehensive eval/testing guidance and renamed Grafana toolset config keys ( Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes Possibly related PRs
Suggested labels
Suggested reviewers
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. No actionable comments were generated in the recent review. 🎉 Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
✅ Deploy Preview for holmes-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
🔬 CLI Performance Benchmark🟢 Startup Time (no LLM)Measures
🟡 Full CLI with LLMMeasures
PR: |
|
/eval |
|
@naomi-robusta Your eval run has finished. ✅ Completed successfully 🧪 Manual Eval Results
📖 Legend
🔄 Re-run evals manually
Option 1: Comment on this PR with Or with more options (one per line): Run evals on a different branch (e.g., master) for comparison:
Quick re-run: Use Option 2: Trigger via GitHub Actions UI → "Run workflow" 🏷️ Valid markers
Commands: CLI: |
|
/eval |
|
@naomi-robusta Your eval run has finished. ✅ Completed successfully 🧪 Manual Eval Results
Results of HolmesGPT evals
📖 Legend
🔄 Re-run evals manually
Option 1: Comment on this PR with Or with more options (one per line): Run evals on a different branch (e.g., master) for comparison:
Quick re-run: Use Option 2: Trigger via GitHub Actions UI → "Run workflow" 🏷️ Valid markers
Commands: CLI: |
…et-mappings-bJ4w6
…et-mappings-bJ4w6
…nces - Move TempoAPIError import to top of test_grafana_tempo_api.py - Update remaining GrafanaTempoConfig fixtures to use api_url instead of url https://claude.ai/code/session_01EwZdqLZkUq4NKduWDmBFDa Signed-off-by: Claude <noreply@anthropic.com>
…et-mappings-bJ4w6
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Fix all issues with AI agents
In `@CLAUDE.md`:
- Around line 272-277: The doc example still uses the old key `url` which
conflicts with the renamed config key `api_url`; update the example in the
toolset snippet to use `api_url: "{{ env.ELASTICSEARCH_URL }}"` (replace `url`
with `api_url`) and ensure the surrounding CI/CD guidance mentions the same
environment variable names (e.g., `ELASTICSEARCH_URL`, `ELASTICSEARCH_API_KEY`)
so the config key (`api_url`) and secret names are consistent across the
documentation and examples.
Change toolset config example from url to api_url to align with the renamed Grafana config field pattern. https://claude.ai/code/session_01EwZdqLZkUq4NKduWDmBFDa Signed-off-by: Claude <noreply@anthropic.com>
…et-mappings-bJ4w6
…bility (#1498) ## Summary This PR renames configuration fields in Grafana-related toolsets for improved clarity and consistency, while maintaining backward compatibility with existing configurations. ## Key Changes - **Field Renames:** - `url` → `api_url` across all Grafana toolsets (Dashboards, Loki, Tempo) - `headers` → `additional_headers` for clarity about their purpose - **Backward Compatibility:** - Added `_deprecated_mappings` to `GrafanaConfig` class to automatically map old field names to new ones - Existing configurations using old field names will continue to work without modification - New field names take precedence when both old and new names are provided - **Documentation Updates:** - Updated all documentation files to reflect new field names - Updated example configurations in CLAUDE.md and all toolset-specific docs - Updated test fixtures to use new field names - **Code Updates:** - Modified `GrafanaConfig` class in `holmes/plugins/toolsets/grafana/common.py` to support field mapping - Updated all references to `config.url` → `config.api_url` - Updated all references to `config.headers` → `config.additional_headers` - Updated test cases to use new field names ## Implementation Details The backward compatibility is implemented using Pydantic's field validation mechanism. The `_deprecated_mappings` class variable defines the mapping between old and new field names, allowing the configuration parser to automatically translate old configurations to the new format while maintaining full compatibility. All test cases have been updated to verify both the new field names work correctly and that the deprecated field names are properly mapped to their new equivalents. https://claude.ai/code/session_01EwZdqLZkUq4NKduWDmBFDa <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Major expansion of the evaluation/test workflow guide with detailed setup, prompts, CI secret handling, examples, and best practices; Grafana toolset docs updated for new config keys. * **Refactor** * Config keys renamed for clarity: url → api_url and headers → additional_headers, with backward-compatibility support. * **Tests** * Fixtures and unit tests updated to use the new config keys to preserve test compatibility. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Signed-off-by: Claude <noreply@anthropic.com> Co-authored-by: Claude <noreply@anthropic.com> Signed-off-by: Mohse Morad <moshemorad12340@gmail.com>
Summary
This PR renames configuration fields in Grafana-related toolsets for improved clarity and consistency, while maintaining backward compatibility with existing configurations.
Key Changes
Field Renames:
url→api_urlacross all Grafana toolsets (Dashboards, Loki, Tempo)headers→additional_headersfor clarity about their purposeBackward Compatibility:
_deprecated_mappingstoGrafanaConfigclass to automatically map old field names to new onesDocumentation Updates:
Code Updates:
GrafanaConfigclass inholmes/plugins/toolsets/grafana/common.pyto support field mappingconfig.url→config.api_urlconfig.headers→config.additional_headersImplementation Details
The backward compatibility is implemented using Pydantic's field validation mechanism. The
_deprecated_mappingsclass variable defines the mapping between old and new field names, allowing the configuration parser to automatically translate old configurations to the new format while maintaining full compatibility.All test cases have been updated to verify both the new field names work correctly and that the deprecated field names are properly mapped to their new equivalents.
https://claude.ai/code/session_01EwZdqLZkUq4NKduWDmBFDa
Summary by CodeRabbit
Documentation
Refactor
Tests