Skip to content

RunComparison

junjo.studio.RunComparison

Kind: Class

SDK version: 0.69.0

Documentation channel: Stable release

View source

Comparison of two revisions evaluated against one locked dataset.

Use the aligned case outcomes before requesting larger trace payloads. An unchanged status does not mean the output or execution was identical.

comparison = await studio.compare_runs(baseline_id, candidate_id)
for row in comparison.rows:
print(row.case.case_key, row.transition, row.duration_delta_ms)
print(comparison.transition_counts.regressed)
print(comparison.transition_counts.newly_errored)

dataset: DatasetRead

View source

Dataset metadata, including its immutable identity and lock status.

scope: RunScope

View source

Conjunctive case filters used to select the comparison rows.

baseline_run: RunRead

View source

Baseline run metadata and its clean committed application revision.

candidate_run: RunRead

View source

Candidate run metadata and its clean committed application revision.

baseline_summary: RunComparisonSummary

View source

Outcome totals for the baseline cases selected by the comparison scope.

candidate_summary: RunComparisonSummary

View source

Outcome totals for the candidate cases selected by the comparison scope.

transition_counts: RunComparisonTransitionCounts

View source

Counts of status transitions across the aligned cases.

rows: tuple[RunComparisonRow, ...] = Field(max_length=MAX_CASES_PER_DATASET)

View source

Comparison rows aligned by immutable case identity and ordered by dataset ordinal.