refactor(experiments): Rename evaluation span-attribute bag key - #1238
Open
shanaiabuggy wants to merge 2 commits into
Open
refactor(experiments): Rename evaluation span-attribute bag key#1238shanaiabuggy wants to merge 2 commits into
shanaiabuggy wants to merge 2 commits into
Conversation
Signed-off-by: shanaiabuggy <59746633+shanaiabuggy@users.noreply.github.com>
Contributor
|
🌿 Preview your docs: https://nvidia-preview-pr-1238-sbuggy-ase-816.docs.buildwithfern.com/nemo-platform |
Contributor
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (1)
📝 WalkthroughWalkthroughChangesThe OTLP evaluation attribute changed from Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
Comment |
Contributor
|
Signed-off-by: shanaiabuggy <59746633+shanaiabuggy@users.noreply.github.com>
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
Renames the evaluation span-attribute bag key
nemo.experiment.id→nemo.evaluation.name(finishing the Experiment→Evaluation rename; the value has always been the Evaluation's name).
Unlike a hard cutover, this is a safe transition: ingest still accepts the legacy
nemo.experiment.idand normalizes it to the canonical key, and the trace_index MV backfillcoalesces both keys, so producers migrate independently and already-ingested spans keep their
evaluation association.
Related Issue
Linear: ASE-816 — Rename evaluation span-attribute bag key:
nemo.experiment.id→nemo.evaluation.nameChanges
Intake ingest (consumer)
span_attribute_catalog.py:EVALUATION_NAMEbag key is nownemo.evaluation.name, withsource_keys=("nemo.evaluation.name", "nemo.experiment.id")so either key is accepted on ingestand stored under the canonical key.
clickhouse_migrations.py: newch_trace_index_0006_nemo_evaluation_namemigration rebuilds thetrace_index MV;
evaluation_idis now resolved viacoalesce(new key, legacy key)so the backfillstays lossless for spans already stored under
nemo.experiment.id(nospansdata migration).SpanAttributeField.EVALUATION_ID→EVALUATION_NAMEand the OTLP ingest locals(
evaluation_names/_EVALUATION_NAME_BAG_KEY). No API/wire change.Producers migrated to emit
nemo.evaluation.nameotlp_build,adapters, re-ingest stub),and the intake span seed script.
Docs/skills
experiments.mdx, intake README, and thenemo-intake/nemo-experiments-uploadskills now teachnemo.evaluation.namewith a "legacynemo.experiment.idstill accepted" note. SDK skill copiesre-vendored via
make vendor-nemo-platform-ext.Also leaves
TODOnotes where producer params namedexperiment_idcarry the evaluation name, to beplumbed to
evaluation_namealongside the future Experiment→Evaluation entity rename (out of scope here).Type of Change
Quality Gates
Verification
Signed-off-by:traileruv run pre-commit run -apasses, or any blocked checks are identified belowTargeted validation:
uv run ruff check+uv run --frozen ty checkon changed intake sources — all checks passed.uv run --frozen pytest services/intake/tests -k "spans_clickhouse or spans_otlp or atif_v17"— 60 passed.uv run --frozen pytest plugins/nemo-experimentalist/tests/test_otlp.py— 27 passed;plugins/nemo-insights/tests/testbed/{test_otlp_build,test_adapters,test_reingest}.py— 143 passed.make refresh-openapiproduced a zero diff (no API surface change;make update-sdknot needed).services/intake/tests/integration/spans/test_traces_read.py(requires a live ClickHouse);it intentionally emits the legacy key to exercise the dual-read/coalesce path end-to-end in CI.
uv run pre-commit run -anot run locally; targeted ruff/ty/pytest run instead.Summary by CodeRabbit
Enhancements
nemo.evaluation.nametelemetry attribute.nemo.experiment.idattribute to preserve compatibility with existing traces.Documentation
Tests