Skip to content

fix(examples-py): validate Ragas, Replicate, and Restate OTel 2.x spans - #72

Open
Nightingalelyy wants to merge 1 commit into
respanai:mainfrom
Nightingalelyy:fix/otel2-py-ragas-replicate-restate-examples
Open

fix(examples-py): validate Ragas, Replicate, and Restate OTel 2.x spans#72
Nightingalelyy wants to merge 1 commit into
respanai:mainfrom
Nightingalelyy:fix/otel2-py-ragas-replicate-restate-examples

Conversation

@Nightingalelyy

@Nightingalelyy Nightingalelyy commented Aug 18, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add deterministic, current-SDK example suites for Ragas and Restate and repair the existing Replicate suite.
  • Preserve the exact shared marker, use bounded semantic workflow inputs, keep committed requirements registry-portable, and guarantee flush/shutdown plus aggregate timeout reporting.
  • Validate modern Ragas metrics/evaluation/experiments, Replicate sync/async/stream/lifecycle/error behavior, and registered Restate workflow/service/error paths against local editable packages.

Validation

  • Full example diffs were audited against every applicable document under respan/contribution/; portable dependency, lifecycle, marker, privacy, and package-boundary rules have no remaining example-owned violation.
  • Example contract tests pass: Ragas 3/3, Replicate 3/3, Restate 3/3 (9/9).
  • Root-scoped Ruff check and format-check pass for all 26 changed example files.
  • Local editable direct_url.json entries resolve Ragas, Replicate, and Restate to the paired Respan workspace packages.
  • All 11 example processes completed under exact marker otel2-fix-py-group-24-20260818T031547Z.
  • Respan MCP opened all 11 trace trees and all 30 full record details: one root per trace, exact parentage, 30 unique log IDs and span IDs, complete content/status/stream/lifecycle data, exact marker fields, and no aliases, credentials, addresses, or duplicates.

External follow-ups

  • Decorated workflow roots above the failed Replicate 429 and Restate 500 children retain error messages but are projected as success/200; the package children and trace error counts are precise.
  • Replicate live-provider coverage remains credential-gated, and a real Restate server/protocol/replay boundary requires an external runtime.
  • Full-detail ingestion omits canonical entity-path projection and reports the Replicate model owner as provider ID despite canonical gen_ai.system=replicate.

Companion examples

@Nightingalelyy Nightingalelyy changed the title fix(examples): validate Ragas, Replicate, and Restate OTel 2.x spans fix(examples-py): validate Ragas, Replicate, and Restate OTel 2.x spans Aug 18, 2026
@Nightingalelyy
Nightingalelyy marked this pull request as ready for review August 19, 2026 16:01
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