fix: tracing count, TS evaluator template, revision data validation, …#4336
fix: tracing count, TS evaluator template, revision data validation, …#4336Charan-place wants to merge 5 commits into
Conversation
…conflict safety Closes Agenta-AI#4318 — tracing ingest count no longer includes dropped spans Closes Agenta-AI#3807 — TypeScript evaluator templates use explicit number | null type Closes Agenta-AI#4315 — revision data models use extra=forbid to reject unknown fields Closes Agenta-AI#3771 (defensive) — EntityCreationConflict.__str__ guards against None conflict Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
@Charan-place is attempting to deploy a commit to the agenta projects Team on Vercel. A member of the Team first needs to authorize it. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughSummary by CodeRabbitBug Fixes
WalkthroughApplies validation and robustness fixes: Pydantic DTOs now forbid extra fields, exception stringification guards against None conflicts, tracing ingest count returns only ingested links, and evaluator TypeScript templates normalize numeric results more safely. ChangesValidation and Robustness Improvements
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related issues
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
…0260514 [docs] Fix bad merge (missing anchors)
|
Hi @Charan-place, Thank you for this contribution. p.s. Next time, please leave a comment on the issues you tackle to indicate that you are taking it on. |
|
Also @Charan-place, Please add the demo videos. |
|
Yeah Sure Agenta team.
…On Fri, May 15, 2026, 13:41 jp-agenta ***@***.***> wrote:
*jp-agenta* left a comment (Agenta-AI/agenta#4336)
<#4336 (comment)>
Hi @Charan-place <https://github.com/Charan-place>,
Thank you for this contribution.
Let's wait for checks to pass before we can merge. 🚀
p.s. Next time, please leave a comment on the issues you tackle to
indicate that you are taking it on.
—
Reply to this email directly, view it on GitHub
<#4336 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/A46ULNTTJASECEVZKPRIOH3423GMDAVCNFSM6AAAAACY6JLSMWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHM2DINJYGEZTQMZVG4>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
|
Hello Team, |
Summary
Fixes four critical issues across tracing, TypeScript evaluation, revision validation, and exception handling:
OTelLinksResponse.countover-counts and writes a removeddroppedfield #4318: OTel ingest count overcounting dropped spans → fixed to count only accepted spansnumber | nulltypedata#4315: Revision data validation missing → addedextra=forbidto all revision data modelsChanged Files
api/oss/src/apis/fastapi/tracing/router.pysdks/python/agenta/sdk/engines/running/templates.pysdks/python/agenta/sdk/models/workflows.pyapi/oss/src/core/queries/dtos.pyapi/oss/src/core/testsets/dtos.pyapi/oss/src/core/shared/exceptions.pyTechnical Details
#4318 - Tracing Ingest Count
Before:
count=len(links) + len(dropped)included rejected spansAfter:
count=len(links)reflects only accepted/published spansImpact: Accurate span count metrics in observability UI
#3807 - TypeScript Evaluator Template
Before: Implicit type coercion caused TS2322 type errors
After: Explicit
let result: number | null = evaluate(...)Impact: Fixes Daytona runtime parse failures on TypeScript evaluation
#4315 - Revision Data Validation
Before: Unknown fields silently dropped from commit payloads
After: All RevisionData classes use
model_config = ConfigDict(extra="forbid")Impact: Early detection of stale/malformed payloads (422 vs silent corruption)
#3771 - EntityCreationConflict Defensive
Before:
for key, value in self.conflict.items()crashed if conflict was NoneAfter: Guarded with
if self.conflict:checkImpact: Safe error rendering in UI even with incomplete context
Test Plan
OTelLinksResponse.countover-counts and writes a removeddroppedfield #4318) — Run workflow generating spans; verify OTel count matches accepted spans onlydata#4315) — Submit commit with unknown field; verify 422 errorBackward Compatibility
OTelLinksResponse.countover-counts and writes a removeddroppedfield #4318: Count now correct — may require consumer adjustmentdata#4315: Changes validation — rejects invalid payloads previously silently dropped