Skip to content

feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 727) [DO NOT MERGE]#597

Draft
adityamehra wants to merge 5 commits into
rungalileo:mainfrom
adityamehra:feat/rename-env-vars-splunk-ao
Draft

feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 727) [DO NOT MERGE]#597
adityamehra wants to merge 5 commits into
rungalileo:mainfrom
adityamehra:feat/rename-env-vars-splunk-ao

Conversation

@adityamehra

@adityamehra adityamehra commented Jun 4, 2026

Copy link
Copy Markdown

User description

⚠️ DO NOT MERGE

This PR is opened for early review only.

Repository migration notice: Once the Splunk Agent Observability project is formally
open-sourced, this code will be re-homed to
signalfx/splunk-ao-python on GitHub.
This PR will be closed and re-opened (or cherry-picked) against that repository.
Companion PRs are opened for sdk-examplessignalfx/splunk-ao-python-examples and
e2e-testing → the internal Splunk AO QA repo.


Summary

Renames all GALILEO_* environment variables to SPLUNK_AO_* as part of the
Splunk Agent Observability rebrand.

Jira tickets: HYBIM-713 · HYBIM-727

Spec doc: docs/SPLUNK_AO_ENV_RENAME.md

Variable mapping

Old New
GALILEO_API_KEY SPLUNK_AO_API_KEY
GALILEO_CONSOLE_URL SPLUNK_AO_CONSOLE_URL
GALILEO_PROJECT SPLUNK_AO_PROJECT
GALILEO_PROJECT_ID SPLUNK_AO_PROJECT_ID
GALILEO_LOG_STREAM SPLUNK_AO_LOG_STREAM
GALILEO_LOG_STREAM_ID SPLUNK_AO_LOG_STREAM_ID
GALILEO_JWT_TOKEN SPLUNK_AO_JWT_TOKEN
GALILEO_SSO_ID_TOKEN SPLUNK_AO_SSO_ID_TOKEN
GALILEO_SSO_PROVIDER SPLUNK_AO_SSO_PROVIDER
GALILEO_USERNAME SPLUNK_AO_USERNAME
GALILEO_PASSWORD SPLUNK_AO_PASSWORD
GALILEO_MODE SPLUNK_AO_MODE
GALILEO_LOGGING_DISABLED SPLUNK_AO_LOGGING_DISABLED
GALILEO_INGEST_BETA_DISABLED SPLUNK_AO_INGEST_BETA_DISABLED

Key design decisions

  • Hard cut-over — no backward-compatibility shim for external consumers.
  • galileo-core bridgeGalileoPythonConfig._bridge_env_vars() transparently copies
    SPLUNK_AO_*GALILEO_* at startup so the private galileo-core dependency continues to
    work until it is updated separately.
  • GALILEO_HEADER_PREFIX excluded — tracked in HYBIM-729.

Test plan

  • poetry run pytest — 2015 passed, 5 skipped
  • E2E tests (e2e-testing/py-sdk-and-ui) — targeted tests passed
  • langchain-agent example — runs end-to-end, exit 0
  • strands-agents example — runs end-to-end, exit 0

Made with Cursor



Generated description

Below is a concise technical summary of the changes proposed in this PR:
Rebrand env var surfaces to Splunk AO names across configuration metadata, helpers, endpoints, docs, and the test suite so the SDK, logger, experiments, prompts, and telemetry toggles only refer to SPLUNK_AO_* names. Add the GalileoPythonConfig compatibility bridge plus CI resilience so galileo-core can keep reading legacy names until it migrates, and highlight the updated auth guidance everywhere.

TopicDetails
Env rename rollout Update every user-facing configuration surface, helper, logger, experiment/log stream/prompt flow, docs/example, and test fixture to use SPLUNK_AO_* variables instead of the old GALILEO_* prefixes so the Splunk AO rebrand is reflected end-to-end.
Modified files (40)
  • .github/workflows/test.yaml
  • docs/SPLUNK_AO_ENV_RENAME.md
  • src/galileo/README_API_CLIENT.md
  • src/galileo/agent_control.py
  • src/galileo/configuration.py
  • src/galileo/decorator.py
  • src/galileo/exceptions.py
  • src/galileo/experiment.py
  • src/galileo/experiments.py
  • src/galileo/log_stream.py
  • src/galileo/log_streams.py
  • src/galileo/logger/logger.py
  • src/galileo/metric.py
  • src/galileo/middleware/tracing.py
  • src/galileo/otel.py
  • src/galileo/projects.py
  • src/galileo/prompt.py
  • src/galileo/shared/exceptions.py
  • src/galileo/utils/decorators/telemetry_toggle.py
  • src/galileo/utils/env_helpers.py
  • src/galileo/utils/singleton.py
  • tests/conftest.py
  • tests/shared/test_project_resolver.py
  • tests/test_agent_control.py
  • tests/test_config.py
  • tests/test_configuration.py
  • tests/test_decorator.py
  • tests/test_decorator_distributed.py
  • tests/test_experiment.py
  • tests/test_experiments.py
  • tests/test_langchain.py
  • tests/test_log_stream.py
  • tests/test_log_streams_metrics.py
  • tests/test_logger_batch.py
  • tests/test_logger_distributed.py
  • tests/test_metric.py
  • tests/test_otel.py
  • tests/test_projects.py
  • tests/test_stages.py
  • tests/utils/test_telemetry_toggle.py
Latest Contributors(0)
UserCommitDate
Compatibility bridge Bridge SPLUNK_AO_* inputs into legacy GALILEO_* vars inside GalileoPythonConfig, refresh auth/error messaging, and tweak CI tooling so the private galileo-core dependency continues to authenticate during the hard cut-over while the build flow stays robust.
Modified files (3)
  • .github/workflows/test.yaml
  • src/galileo/config.py
  • tests/test_config.py
Latest Contributors(0)
UserCommitDate
Review this PR on Baz | Customize your next review

…6, 727)

Hard cut-over: all GALILEO_* environment variables consumed by this SDK
are renamed to SPLUNK_AO_* as part of the Splunk Agent Observability rebrand.

Changes:
- configuration.py: 14 ConfigKey.env_var fields updated
- config.py: auth validation + _bridge_env_vars() for galileo-core compat
- utils/env_helpers.py: os.getenv() calls updated
- utils/decorators/telemetry_toggle.py: GALILEO_LOGGING_DISABLED renamed
- logger/logger.py: GALILEO_INGEST_BETA_DISABLED renamed
- Remaining src files: docstrings/error strings updated
- tests/**: all GALILEO_* references renamed to SPLUNK_AO_*
- docs/SPLUNK_AO_ENV_RENAME.md: spec document added

Compatibility: _bridge_env_vars() temporarily maps SPLUNK_AO_* -> GALILEO_*
so that the galileo-core dependency (still reading GALILEO_*) continues to
work until it is updated separately.

Out of scope: GALILEO_HEADER_PREFIX (tracked in HYBIM-729).

DO NOT MERGE — will be re-targeted to signalfx/splunk-ao-python once that
repository is created.

Co-authored-by: Cursor <cursoragent@cursor.com>
Comment on lines 74 to 78
name="galileo_api_key",
env_var="GALILEO_API_KEY",
description="API key for authenticating with Galileo",
env_var="SPLUNK_AO_API_KEY",
description="API key for authenticating with Splunk Agent Observability",
required=True,
sensitive=True,

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.

Configuration now reads galileo_api_key from SPLUNK_AO_API_KEY only, so the published GALILEO_* docs/examples will break Configuration.galileo_api_key/connect() after upgrade — should we update those in the same release or keep a temporary alias?

Severity

Want Baz to fix this for you? Activate Fixer

Other fix methods

Fix in Cursor

Prompt for AI Agents
Before applying, verify this suggestion against the current code. In
src/galileo/configuration.py around lines 72-79 where _CONFIGURATION_KEYS defines the
ConfigKey for galileo_api_key (currently env_var="SPLUNK_AO_API_KEY"), add backward
compatibility so Configuration.galileo_api_key also falls back to the legacy
GALILEO_API_KEY environment variable when SPLUNK_AO_API_KEY is not set. Implement this
by extending the lookup logic in ConfigurationMeta.__getattribute__ (around lines
192-235) or by updating the ConfigKey metadata to support multiple env var candidates,
and ensure type/sensitive handling stays the same. Also update connect() around lines
385-392 to mention both environment variable names (and/or the migration timeline) in
the error message. If the repo’s published README/examples/templates can’t be
updated in this patch, this alias should be the primary fix to prevent immediate
breaking upgrades.

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.

Commit e7bffdc addressed this comment by updating the published docs and examples to use SPLUNK_AO_* names, including the API client README and the configuration error message. That makes the same-release migration explicit instead of leaving the old GALILEO_* references in the updated docs.

Comment thread src/galileo/configuration.py Outdated
@adityamehra

Copy link
Copy Markdown
Author

Co-authored-by: Cursor <cursoragent@cursor.com>
@adityamehra adityamehra changed the title [DO NOT MERGE] feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 716, 727) feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 716, 727) [DO NOT MERGE] Jun 4, 2026
adityamehra and others added 2 commits June 4, 2026 13:25
Co-authored-by: Cursor <cursoragent@cursor.com>
…|| '2.1.4')

Co-authored-by: Cursor <cursoragent@cursor.com>
@codecov

codecov Bot commented Jun 4, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 92.45283% with 24 lines in your changes missing coverage. Please review.
✅ Project coverage is 83.33%. Comparing base (f9feed6) to head (a8526d0).

Files with missing lines Patch % Lines
src/galileo/logger/logger.py 84.09% 7 Missing ⚠️
src/galileo/provider.py 50.00% 6 Missing ⚠️
src/galileo/handlers/openai_agents/handler.py 71.42% 2 Missing ⚠️
src/galileo/metric.py 81.81% 2 Missing ⚠️
src/galileo/utils/env_helpers.py 80.00% 2 Missing ⚠️
src/galileo/configuration.py 80.00% 1 Missing ⚠️
src/galileo/decorator.py 91.66% 1 Missing ⚠️
src/galileo/log_stream.py 75.00% 1 Missing ⚠️
src/galileo/scorers.py 80.00% 1 Missing ⚠️
src/galileo/utils/singleton.py 88.88% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #597      +/-   ##
==========================================
+ Coverage   83.31%   83.33%   +0.01%     
==========================================
  Files         125      125              
  Lines       10659    10666       +7     
==========================================
+ Hits         8881     8888       +7     
  Misses       1778     1778              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@adityamehra adityamehra changed the title feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 716, 727) [DO NOT MERGE] feat(config): rename GALILEO_* env vars to SPLUNK_AO_* (HYBIM-713, 727) [DO NOT MERGE] Jun 4, 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.

1 participant