Skip to content

More doc improvements - #1094

Merged
aantn merged 3 commits into
masterfrom
more-doc-improvements
Oct 31, 2025
Merged

aantn merged 3 commits into
masterfrom
more-doc-improvements

Conversation

@aantn

@aantn aantn commented Oct 31, 2025

Copy link
Copy Markdown
Collaborator

No description provided.

@aantn
aantn requested a review from arikalon1 October 31, 2025 18:01
@aantn
aantn enabled auto-merge (squash) October 31, 2025 18:01
@coderabbitai

coderabbitai Bot commented Oct 31, 2025 •

Copy link
Copy Markdown
Contributor

Walkthrough

This pull request updates documentation across AI provider guides, installation instructions, and evaluation tooling. Changes include adding model recommendations, updating model references (gpt-4o→gpt-4.1, gpt-4o-mini→gpt-5), expanding Ollama configuration with OpenAI-compatible gateway options, restructuring evaluation documentation, and replacing demo content with Loom video embeds.

Changes

Cohort / File(s) Summary
AI Provider Setup Guidance
docs/ai-providers/aws-bedrock.md, docs/ai-providers/ollama.md
Added model selection tip for Bedrock recommending Sonnet 4.0/4.5. Expanded Ollama warning with hosted model guidance and added OpenAI-compatible gateway configuration using MODEL env var and OPENAI_API_BASE/OPENAI_API_KEY.
Evaluation Documentation Restructuring
docs/development/evaluations/adding-evals.md, docs/development/evaluations/running-evals.md
Replaced "Test Types" with "Prerequisites" and added HolmesGPT installation step. Expanded Quick Start sections with RUN_LIVE examples across multiple models. Added CLASSIFIER_MODEL guidance, test_case.yaml configuration documentation, mock data usage guidelines, and Advanced Features sections. Reorganized content to emphasize live evaluations.
Installation Navigation & Model Updates
docs/installation/.nav.yml, docs/installation/kubernetes-installation.md
Updated nav label from "Install UI/TUI" to "Install UI/Slack/K9s". Modified Kubernetes values.yaml snippets: replaced gpt-4o with gpt-4.1 and gpt-4o-mini with gpt-5 across OpenAI, Anthropic, Azure OpenAI, and multi-provider configuration blocks.
CLI Installation Comprehensive Rewrite
docs/installation/cli-installation.md
Replaced generic API key notes with provider-specific workflows. Added step-by-step reference sections for Anthropic Claude, OpenAI, Azure OpenAI, AWS Bedrock, Google Gemini, Google Vertex AI, and Ollama with model recommendations, setup steps, and example commands.
UI Installation Updates
docs/installation/ui-installation.md
Updated heading to "Install UI/Slack/K9s". Replaced single demo block with three Loom-based video sections (AWS Troubleshooting, CPU Spike Investigation, Tempo Tracing Integration). Simplified Get Started steps with consolidated descriptions.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Model version updates in kubernetes-installation.md: Verify that gpt-4.1 and gpt-5 references are intentional and correspond to actual model availability
  • Evaluation documentation restructuring: Confirm that Quick Start examples with RUN_LIVE and CLASSIFIER_MODEL guidance align with current feature implementations
  • CLI installation provider workflows: Ensure all provider setup steps (Anthropic, OpenAI, Azure, Bedrock, Gemini, Vertex AI, Ollama) are accurate and complete
  • Ollama configuration changes: Validate that OpenAI-compatible gateway instructions and environment variable guidance are correct and up-to-date

Possibly related PRs

Suggested reviewers

  • arikalon1
  • pavangudiwada

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 2 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
Title Check ❓ Inconclusive The title "More doc improvements" is related to the changeset, as all modifications are indeed documentation improvements across multiple files (AWS Bedrock, Ollama, evaluation guides, CLI installation, Kubernetes installation, and UI installation). However, the title is extremely vague and generic, using non-descriptive language that could apply to almost any documentation-focused PR. It provides no meaningful information about the specific nature of these improvements—such as expanded guidance, model updates, restructured sections, or new configuration examples—leaving reviewers unable to quickly understand the primary focus of the changes.
Description Check ❓ Inconclusive No pull request description was provided by the author. While the title indicates documentation improvements are being made, the complete absence of a description means there is no content to evaluate against the criterion of being related to the changeset. Without any descriptive content, it is impossible to assess whether a description would meaningfully communicate the purpose, scope, or rationale for these documentation changes to reviewers.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch more-doc-improvements

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
docs/installation/kubernetes-installation.md (1)

148-148: Update outdated model name in Usage example – The test curl request still references "model": "gpt-4o-mini", which should be updated to "model": "gpt-5" to align with the modelList configuration changes and PR objectives (gpt-4o-mini → gpt-5).

Apply this diff to fix the model reference:

- -d '{"ask": "list pods in namespace default?", "model": "gpt-4o-mini"}'
+ -d '{"ask": "list pods in namespace default?", "model": "gpt-5"}'
docs/development/evaluations/running-evals.md (1)

155-156: Update outdated model name in multi-model example – Line 155 references gpt-4o-mini in the comma-separated model list, which should be updated to gpt-5 to align with the PR's model migration (gpt-4o-mini → gpt-5).

Apply this diff to fix the model reference:

- RUN_LIVE=true MODEL=gpt-4o,gpt-4o-mini \
+ RUN_LIVE=true MODEL=gpt-4o,gpt-5 \
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between be4d04f and 04668be.

📒 Files selected for processing (8)
  • docs/ai-providers/aws-bedrock.md (1 hunks)
  • docs/ai-providers/ollama.md (2 hunks)
  • docs/development/evaluations/adding-evals.md (3 hunks)
  • docs/development/evaluations/running-evals.md (2 hunks)
  • docs/installation/.nav.yml (1 hunks)
  • docs/installation/cli-installation.md (6 hunks)
  • docs/installation/kubernetes-installation.md (2 hunks)
  • docs/installation/ui-installation.md (2 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
docs/**/*.md

📄 CodeRabbit inference engine (CLAUDE.md)

In MkDocs content, always add a blank line between a header or bold text and a following list so lists render correctly

Files:

  • docs/ai-providers/aws-bedrock.md
  • docs/installation/kubernetes-installation.md
  • docs/development/evaluations/adding-evals.md
  • docs/development/evaluations/running-evals.md
  • docs/installation/cli-installation.md
  • docs/installation/ui-installation.md
  • docs/ai-providers/ollama.md
🧠 Learnings (9)
📚 Learning: 2025-08-05T06:14:39.523Z
Learnt from: aantn
Repo: robusta-dev/holmesgpt PR: 783
File: tests/llm/fixtures/test_ask_holmes/100_historical_logs/payment-api.yaml:49-70
Timestamp: 2025-08-05T06:14:39.523Z
Learning: For evaluation test fixtures in the holmesgpt project, security contexts and security hardening are not priorities. The focus should be on functionality and test reliability rather than adding security configurations to Kubernetes manifests used in evals.

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-08-30T18:12:58.187Z
Learnt from: CR
Repo: robusta-dev/holmesgpt PR: 0
File: holmes/plugins/runbooks/CLAUDE.md:0-0
Timestamp: 2025-08-30T18:12:58.187Z
Learning: Applies to holmes/plugins/runbooks/**/*.md : In Recommended Remediation Steps, include Immediate Actions, Permanent Solutions, Verification Steps, Documentation References, Escalation Criteria, and Post-Remediation Monitoring.

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-08-13T05:57:40.420Z
Learnt from: mainred
Repo: robusta-dev/holmesgpt PR: 829
File: holmes/plugins/runbooks/runbook-format.prompt.md:11-22
Timestamp: 2025-08-13T05:57:40.420Z
Learning: In holmes/plugins/runbooks/runbook-format.prompt.md, the user (mainred) prefers to keep the runbook step specifications simple without detailed orchestration metadata like step IDs, dependencies, retry policies, timeouts, and storage variables. The current format with Action, Function Description, Parameters, Expected Output, and Success/Failure Criteria is sufficient for their AI agent troubleshooting use case.

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-07-08T08:45:41.069Z
Learnt from: nherment
Repo: robusta-dev/holmesgpt PR: 610
File: .github/workflows/llm-evaluation.yaml:39-42
Timestamp: 2025-07-08T08:45:41.069Z
Learning: The robusta-dev/holmesgpt codebase has comprehensive existing validation for Azure environment variables (AZURE_API_BASE, AZURE_API_KEY, AZURE_API_VERSION) and MODEL in tests/llm/utils/classifiers.py, tests/llm/conftest.py, and holmes/core/llm.py. Don't suggest adding redundant validation logic.

Applied to files:

  • docs/development/evaluations/adding-evals.md
  • docs/development/evaluations/running-evals.md
  • docs/ai-providers/ollama.md
📚 Learning: 2025-07-02T10:27:17.231Z
Learnt from: Sheeproid
Repo: robusta-dev/holmesgpt PR: 586
File: tests/llm/fixtures/test_ask_holmes/03_what_is_the_command_to_port_forward/test_case.yaml:4-4
Timestamp: 2025-07-02T10:27:17.231Z
Learning: In LLM-as-judge test cases for HolmesGPT, expected outputs should be descriptive rather than prescriptive when testing for flexible responses like port numbers. Using specific values in expected outputs can cause unnecessary test failures when the AI generates different but equally valid responses.

Applied to files:

  • docs/development/evaluations/adding-evals.md
  • docs/development/evaluations/running-evals.md
📚 Learning: 2025-10-05T13:01:12.288Z
Learnt from: CR
Repo: robusta-dev/holmesgpt PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-10-05T13:01:12.288Z
Learning: Applies to tests/llm/**/*.sh : When scripting kubectl operations in evals, never use a bare 'kubectl wait' immediately after creating resources; use a retry loop to avoid race conditions

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-10-05T13:01:12.288Z
Learnt from: CR
Repo: robusta-dev/holmesgpt PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-10-05T13:01:12.288Z
Learning: Applies to tests/llm/**/*.yaml : In eval manifests, ALWAYS use Kubernetes Secrets for scripts rather than inline manifests or ConfigMaps to prevent script exposure via kubectl describe

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-10-05T13:01:12.288Z
Learnt from: CR
Repo: robusta-dev/holmesgpt PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-10-05T13:01:12.288Z
Learning: Applies to tests/**/*.py : Only use pytest markers that are defined in pyproject.toml; never introduce undefined markers/tags

Applied to files:

  • docs/development/evaluations/adding-evals.md
📚 Learning: 2025-10-05T13:01:12.288Z
Learnt from: CR
Repo: robusta-dev/holmesgpt PR: 0
File: CLAUDE.md:0-0
Timestamp: 2025-10-05T13:01:12.288Z
Learning: Applies to tests/llm/**/*.yaml : Eval resources must use neutral names, each test must use a dedicated namespace 'app-<testid>', and all pod names must be unique across tests

Applied to files:

  • docs/development/evaluations/adding-evals.md
🪛 LanguageTool
docs/installation/cli-installation.md

[style] ~80-~80: Using many exclamation marks might seem excessive (in this case: 3 exclamation marks for a text that’s 1434 characters long)
Context: ...providers/index.md) for more options). !!! tip "Which Model to Use" We highly ...

(EN_EXCESSIVE_EXCLAMATION)

docs/ai-providers/ollama.md

[grammar] ~6-~6: Use a hyphen to join words.
Context: ...duce inconsistent results. Only [LiteLLM supported Ollama models](https://docs.li...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (10)
docs/ai-providers/aws-bedrock.md (1)

5-8: Tip block structure looks good – The blank line between the tip and the "Setup" header follows proper MkDocs formatting.

docs/installation/kubernetes-installation.md (1)

42-50: Model name updates are consistent – The changes from gpt-4o to gpt-4.1 and introduction of gpt-5 are applied correctly across both OpenAI examples and the Multiple Providers section.

Also applies to: 113-124

docs/ai-providers/ollama.md (1)

21-39: Ollama CLI configuration expansion is well-structured – The addition of MODEL environment variable option and OpenAI-compatible gateway path provides good flexibility for users facing compatibility issues.

docs/installation/cli-installation.md (2)

77-103: Provider-specific quick start is well-organized – The new section with model recommendations tip and detailed Anthropic provider example (lines 81-103) provides excellent guidance. The tip block is properly separated from content.


119-126: OpenAI examples properly reference updated models – References to gpt-4.1 and gpt-5 are consistent and include helpful comments about defaults and options.

docs/installation/ui-installation.md (1)

139-175: Video embed structure and Get Started section look good – The three Loom video tabs are properly formatted with correct iframe markup, and the simplified Get Started steps maintain clarity while reducing verbosity.

docs/installation/.nav.yml (1)

3-3: Navigation label correctly updated – The change from "Install UI/TUI" to "Install UI/Slack/K9s" aligns with the heading update in ui-installation.md and accurately reflects the supported interfaces.

docs/development/evaluations/running-evals.md (1)

28-52: Quick Start examples are comprehensive and well-explained – The multi-model comparison with clear notes about model performance differences (Sonnet 4.5 vs weaker models) helps users understand benchmarking effectively.

docs/development/evaluations/adding-evals.md (2)

13-37: Quick Start examples demonstrate proper model selection – The examples showing Sonnet 4.5 performance comparison with weaker models, plus multi-model testing, help users understand eval effectiveness with different AI providers.


81-117: test_case.yaml configuration section is thorough – Clear distinction between required and optional fields, with practical examples for advanced configurations (runbooks, toolsets, mock_policy) helps users create robust evals.

Comment thread docs/ai-providers/ollama.md
@github-actions

Copy link
Copy Markdown
Contributor

Results of HolmesGPT evals

  • ask_holmes: 33/36 test cases were successful, 1 regressions, 1 setup failures
Test suite Test case Status
ask 01_how_many_pods ✅
ask 02_what_is_wrong_with_pod ✅
ask 04_related_k8s_events ✅
ask 05_image_version ✅
ask 09_crashpod ✅
ask 10_image_pull_backoff ✅
ask 110_k8s_events_image_pull ✅
ask 11_init_containers ✅
ask 13a_pending_node_selector_basic ✅
ask 14_pending_resources ✅
ask 15_failed_readiness_probe ✅
ask 17_oom_kill ✅
ask 18_oom_kill_from_issues_history ✅
ask 19_detect_missing_app_details ✅
ask 20_long_log_file_search ❌
ask 24_misconfigured_pvc ✅
ask 24a_misconfigured_pvc_basic ✅
ask 28_permissions_error 🚧
ask 39_failed_toolset ✅
ask 41_setup_argo ✅
ask 42_dns_issues_steps_new_tools ⚠️
ask 43_current_datetime_from_prompt ✅
ask 45_fetch_deployment_logs_simple ✅
ask 51_logs_summarize_errors ✅
ask 53_logs_find_term ✅
ask 54_not_truncated_when_getting_pods ✅
ask 59_label_based_counting ✅
ask 60_count_less_than ✅
ask 61_exact_match_counting ✅
ask 63_fetch_error_logs_no_errors ✅
ask 79_configmap_mount_issue ✅
ask 83_secret_not_found ✅
ask 86_configmap_like_but_secret ✅
ask 93_calling_datadog[0] ✅
ask 93_calling_datadog[1] ✅
ask 93_calling_datadog[2] ✅

Legend

  • ✅ the test was successful
  • :minus: the test was skipped
  • ⚠️ the test failed but is known to be flaky or known to fail
  • 🚧 the test had a setup failure (not a code regression)
  • 🔧 the test failed due to mock data issues (not a code regression)
  • 🚫 the test was throttled by API rate limits/overload
  • ❌ the test failed and should be fixed before merging the PR

@aantn
aantn merged commit db836ae into master Oct 31, 2025
8 checks passed
@aantn
aantn deleted the more-doc-improvements branch October 31, 2025 23:37
@coderabbitai coderabbitai Bot mentioned this pull request Jan 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants