Skip to content

[DO NOT MERGE] Apm ai toolkit new integration rxjava3#11527

Draft
jordan-wong wants to merge 2 commits into
masterfrom
apm-ai-toolkit/new_integration/rxjava3/20260521-001834
Draft

[DO NOT MERGE] Apm ai toolkit new integration rxjava3#11527
jordan-wong wants to merge 2 commits into
masterfrom
apm-ai-toolkit/new_integration/rxjava3/20260521-001834

Conversation

@jordan-wong
Copy link
Copy Markdown
Contributor

What Does This Do

Motivation

Additional Notes

Contributor Checklist

  • Format the title according to the contribution guidelines
  • Assign the type: and (comp: or inst:) labels in addition to any other useful labels
  • Avoid using close, fix, or any linking keywords when referencing an issue
    Use solves instead, and assign the PR milestone to the issue
  • Update the CODEOWNERS file on source file addition, migration, or deletion
  • Update public documentation with any new configuration flags or behaviors
  • Add your completed PR to the merge queue by commenting /merge. You can also:
    • Customize the commit message associated with the merge with /merge --commit-message "..."
    • Remove your PR from the merge queue with /merge -c
    • Skip all merge queue checks with /merge -f --reason "reason"; please use this judiciously, as some checks do not run at the PR-level
    • Get more information in this doc

Jira ticket: [PROJ-IDENT]

jordan-wong and others added 2 commits May 26, 2026 12:46
…on [DO NOT MERGE]

First-ever toolkit-generated context-propagation library — produced by
apm-instrumentation-toolkit eval/java branch with Phase 1-9 toolkit
improvements (commits 9c7351ba through 35ca2efe + d66a6fba).

Reviewer approved iter1 (3 todos fixed, 0 remaining). All 47 tests
passing after iter3 fixer-loop convergence (warmup + strictTraceWrites
fix matching rxjava-2.0 pattern). Real cost \$53.62 across 24 agent
invocations in 111 minutes.

Generated artifacts (16 files):
- RxJavaModule.java: InstrumenterModule.ContextTracking with contextStore()
  + helperClassNames() + typeInstrumentations() for 5 reactive types
- 5 *Instrumentation.java: Observable/Flowable/Single/Maybe/Completable
  per-type instrumenters with CaptureParentSpanAdvice + PropagateParentSpanAdvice
- 5 Tracing*.java: TracingObserver/Subscriber/SingleObserver/MaybeObserver/
  CompletableObserver delegating wrappers with parentContext.attach()
- RxJavaAsyncResultExtension.java: WithSpan/@trace integration
- 4 test files mirroring rxjava-2.0 patterns
- build.gradle: muzzle [3.0.0,)

settings.gradle.kts: include rxjava-3.0 module in build.

Marked DO NOT MERGE pending CI verification + human review.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…eneration [DO NOT MERGE]

Changes made by the toolkit's reviewer step when generating rxjava-3.0:

- Is.java: Add CharSequence.toString() comparison fallback (same as
  jedis3 May 11 fix that PR #11338 reviewer flagged — see
  #11338 inline comment
  on Is.java:36)
- SpanMatcher.java: Add childOf(int index) sentinel + setParentSpanIndex
  for trace-relative parent assertions
- TraceMatcher.java: Pass trace list to assertSpan for index-based parent
  resolution

These changes were necessary for the rxjava-3 SubscriptionTest pattern
to compile and assert parent-child bridging. The reviewer step's
spec-compliance gate flagged a "scope creep" warning that was overridden
because the changes mirror what existing rxjava-2.0 tests need.

Flag for human review: this is exactly the cross-module modification
pattern @amarziali flagged in PR #11338. Same Is.java change; if
intentional, would consolidate the asymmetric CharSequence comparison
issue across multiple toolkit-generated libraries.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@datadog-official
Copy link
Copy Markdown
Contributor

datadog-official Bot commented Jun 2, 2026

Pipelines

Fix all issues with BitsAI

⚠️ Warnings

🚦 6 Pipeline jobs failed

DataDog/apm-reliability/dd-trace-java | muzzle: [4/8]   View in Datadog   GitLab

🔄 Retry job. This looks flaky and may succeed on retry. Could not resolve dependencies: Failed to parse POM for io.confluent:kafka-schema-registry-client:7.6.11. Check the URL for updates or availability: https://depot-read-api-java.us1.ddbuild.io/magicmirror/magicmirror/@current/io/confluent/kafka-schema-registry-client/7.6.11/kafka-schema-registry-client-7.6.11.pom

Run system tests | main / Build end-to-end (spring-boot-jetty)   View in Datadog   GitHub Actions

🔄 Retry job. This looks flaky and may succeed on retry. Timeout while trying to resolve metadata for Docker images: eclipse-temurin:11-jre and maven:3.9-eclipse-temurin-11.

DataDog/apm-reliability/dd-trace-java | config-inversion-linter   View in Datadog   GitLab

🛟 This job is unlikely to succeed on retry. Please review your pipeline configuration. InstrumenterModule integration names are missing from SUPPORTED or ALIASES in '/go/src/github.com/DataDog/apm-reliability/dd-trace-java/metadata/supported-configurations.json'.

View all 6 failed jobs.

Useful? React with 👍 / 👎

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: 801f56e | Docs | Datadog PR Page | Give us feedback!

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