You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Go prototype: reproducible Go vs. Rust benchmark runner and comparison report #1835
Build a reproducible benchmark runner in the Go prototype directory and publish an empirical comparison report in the research documentation directory comparing the Go vertical slice against the equivalent Rust implementation across cold and incremental fresh-worktree build and test wall-clock times, static binary size, code size, subprocess/signal ergonomics, state-machine exhaustiveness guarantees, and ADR-0017 Pickup model-checking speed, without modifying ADR-0001.
Acceptance criteria
A reproducible benchmark script in the Go prototype directory measures cold build, incremental build, and test execution wall-clock times in a fresh worktree, static binary size, and source line counts for the Go prototype vs. the equivalent Rust slices, and records ADR-0017 model-check execution time.
A research report in the repository's research documentation directory presents the measured numbers alongside a concrete comparison of subprocess/signal handling (os/exec + goroutines vs. Rust threads/tokio), state-machine exhaustiveness (Go closed sum-type patterns vs. Rust enum + clippy::wildcard_enum_match_arm), and protocol model-checking (Go BFS checker vs. Rust stateright).
Automated tests verify that the benchmark runner executes cleanly and that the research report is present and complete.
ADR-0001 is left unchanged so the Day shift can review the empirical report first.
Activity
JacobStephens2 commentedon Nov 7, 2026
Closed by #1854, merged into issue-1830 by a thirdshift Ticket run with Self-merge.