Skip to content

Use Session trace spans for Waterfall tool times - #1056

Merged
JacobStephens2 merged 4 commits into
issue-700from
issue-989
Oct 22, 2026
Merged

JacobStephens2 merged 4 commits into
issue-700from
issue-989

Conversation

@JacobStephens2

@JacobStephens2 JacobStephens2 commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Summary

tool interval
  Session trace
    completed → span.start .. span.end
    running   → start record .. now
  old Session log only → scoped Command-log match

Preserve overlapping calls and fractional timestamps across Harnesses. For died Commands, size the historical axis from retained trace times so completed tool bars remain visible.

Closes #989

Test seams

  • Console HTTP Waterfall route with retained Command and Session-trace files.
  • Console browser Waterfall bars and their shared time axis.

Evidence

  • Before: the span fixture produced no tool rows; an added 500-microsecond case rounded its duration to zero.
    After: cargo test --test console waterfall_ passes all 5 tests, including span times, scoped running records, incomplete live tails, sub-millisecond precision and legacy Claude/Codex matching.
  • Before: the Spec reviewer's exact Python command failed because completed spans after a died Command's last Command-log line had zero-width bars.
    After: the same test, retained as python3 console/reproductions/waterfall-trace-axis.py, passes with visible completed bars and unchanged measured durations.
  • node --test console/tests/waterfall.test.cjs: 2 tests pass at 1200 px and 390 px, covering overlapping measured bars, live start records, died Commands and legacy matching.
  • cargo check --all-targets, cargo clippy --all-targets -- -D warnings, and cargo fmt --check pass.
  • /usr/bin/time -p scripts/affected-tests origin/issue-700 selected cargo nextest run: 2,278 tests passed, 3 skipped, across 53 binaries. Wall time: 2,362.83 seconds (39m 23s), including 24.95 seconds of incremental compilation.

Review coverage

Independent Standards and Spec reviews used fetched issue-700 at d56453d5541b879cd04a4f202aa2937dc14ba3d6. Both reviewers read all 12 changed files, including the retained reproduction added during fixes. Unread changed files: none. Generated-output exclusions: none.

Merge Danger

Door: two-way

Read-only Console rendering change; no stored-data migration.

Blast Radius: Console

Unaddressed findings

Standards

None. The optional repeated fixture setup finding was addressed with shared retained-Command and Console-start helpers.

Spec

None. The P2 died-Command axis finding was reproduced with the reviewer's exact command, fixed, and retained as an HTTP reproduction plus browser regression.

Built with codex · gpt-6.1-sol · xhigh

@JacobStephens2
JacobStephens2 merged commit f21fc00 into issue-700 Oct 22, 2026
18 checks passed
@JacobStephens2
JacobStephens2 deleted the issue-989 branch October 22, 2026 04:25
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