[ruby] DEBUG-4675: Enable test_default_max_reference_depth#6918
Merged
p-datadog merged 4 commits intoMay 13, 2026
Conversation
Removes the DEBUG-4675 bug marker for test_debugger_probe_snapshot.py::Test_Debugger_Line_Probe_Snaphots ::test_default_max_reference_depth. Companion to DataDog/dd-trace-rb#5753, which fixes the off-by-one in the dd-trace-rb Dynamic Instrumentation serializer's max capture depth handling.
Contributor
|
|
p-datadog
pushed a commit
to DataDog/dd-trace-rb
that referenced
this pull request
May 13, 2026
Forces the system-tests assertion covered by DEBUG-4675 to run in this PR's CI, even though manifests/ruby.yml still marks it as `bug (DEBUG-4675)`. Remove this entry before merging — the companion PR DataDog/system-tests#6918 removes the bug marker once merged.
🎉 All green!❄️ No new flaky tests detected 🔗 Commit SHA: 5e3fe16 | Docs | Datadog PR Page | Give us feedback! |
Replace the unconditional removal with a `component_version: <2.34.0` gate, matching the pattern used for DEBUG-3747 / DEBUG-4343. The off-by-one bug exists in all released dd-trace-rb versions through 2.33.0; the fix in DataDog/dd-trace-rb#5753 lands on master at 2.34.0. For tracer versions <2.34.0 the bug marker still applies. For 2.34.0+ the test runs and passes (force-run validated this on rails72/rails80/ uds-rails End-to-end CI in dd-trace-rb#5753, commit 161ab4a373).
The previous constraint `<2.34.0` incorrectly matched `2.34.0-dev` (dd-trace-rb master), causing the test to skip even on the tracer that contains the fix. Per semver prerelease ordering, `2.34.0-dev < 2.34.0` is true, so the bug marker applied to dev mode. Use `<2.34.0-dev` to follow the convention already in use by the APMLP-1047 entries above (e.g. lines 1170, 1174, 1178). With `<2.34.0-dev`: - 2.33.x: included (bug applies, test skipped) ✓ - 2.34.0-dev: excluded (test runs against the fix on dev) ✓ - 2.34.0-dev.N: excluded (greater prerelease segments) ✓ - 2.34.0: excluded (release > prerelease) ✓ Confirmed evidence on previous CI run for this PR (commit aade707): rails72/rails80/uds-rails dev variants reported `test_default_max_reference_depth[<weblog>]` as `outcome: skipped, declaration: bug (DEBUG-4675)` against `library.version: 2.34.0-dev` — the test never ran on dev mode.
p-datadog
marked this pull request as ready for review
May 13, 2026 17:48
Strech
approved these changes
May 13, 2026
p-datadog
pushed a commit
that referenced
this pull request
May 13, 2026
Replace the unconditional removal with prerelease-aware version gates, matching the pattern used in #6918 for DEBUG-4675 and the APMLP-1047 entries above. `<2.34.0-dev` (not `<2.34.0`) so the dev tracer is not covered by the bug marker — per semver prerelease ordering, `2.34.0-dev < 2.34.0` is true, so `<2.34.0` would skip the test on the tracer that contains the fix. Companion to DataDog/dd-trace-rb#5754 (merged), which makes `Utils.path_matches_suffix?` and `Utils.path_can_match_spec?` case-insensitive (DEBUG-5107) and tolerant of Windows-style backslash separators in user-supplied probe source paths (DEBUG-5111).
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
Version-gates the
bug (DEBUG-4675)marker fortests/debugger/test_debugger_probe_snapshot.py::Test_Debugger_Line_Probe_Snaphots::test_default_max_reference_depthinmanifests/ruby.ymlto'<2.34.0-dev'.Companion to DataDog/dd-trace-rb#5753 (merged), which fixes the off-by-one in the dd-trace-rb Dynamic Instrumentation serializer's max capture depth handling. The Ruby tracer was capturing N+1 levels for
max_capture_depth=N; from 2.34.0-dev onward it captures N levels.The gate uses
'<2.34.0-dev'(not'<2.34.0') so the dev tracer is not covered by the bug marker —2.34.0-dev < 2.34.0is true per semver prerelease ordering, so'<2.34.0'would incorrectly skip the test on the tracer that contains the fix. This matches the existing convention for prerelease-period gates inruby.yml(the APMLP-1047 entries at lines 1170/1174/1178/1182/1186/1190 all use'<X.Y.0-dev').Validation
On commit
5e3fe16fb(this PR's tip), theDEBUGGER_PROBES_SNAPSHOTscenario rantest_default_max_reference_depthwith the expected behaviour on every supported weblog:rails72bug (DEBUG-4675)rails80bug (DEBUG-4675)uds-railsbug (DEBUG-4675)Other weblogs (
rack,sinatra14/22/32/41,rails42/52/61,uds-sinatra) skip via the parent class's'*': irrelevantdeclaration — unchanged by this PR.Test plan
test_default_max_reference_depthpasses on rails72/rails80/uds-rails against the dev tracer