Repository navigation
Benchmark the Go prototype against Rust - #1854
Merged
Merged
Conversation
This was referenced Nov 7, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add a repeatable benchmark command and an empirical report for the Go Ticket/Delivery/Pickup slice and its Rust owners. Record cold and edited builds in fresh Worktrees, test compilation/execution, static binary sizes, source manifests and ADR-0017 checks. Explain the feature and model differences; ADR-0001 stays unchanged.
Closes #1835
Evidence
Execution evidence
python3 -m unittest discover -s prototype/go -p benchmark_test.py -vfailed:python3: can't open file '/home/jacob/repos/thirdshift-issue-1835/prototype/go/benchmark.py': [Errno 2] No such file or directory.After: the same command passed all four tests in 2.917 seconds.
python3 -m unittest discover -s prototype/go -p benchmark_test.py -k PublishedReport -vfailed withFileNotFoundError: [Errno 2] No such file or directory: '/home/jacob/repos/thirdshift-issue-1835/docs/research/go-vs-rust-prototype.md'.After: the same command passed the report completeness/numeric agreement test.
PATH=/usr/local/go/bin:$PATH python3 prototype/go/benchmark.py --ref 82cc4dc2 --samples 2 --jobs 2 --output /tmp/thirdshift-1835-benchmark.PgYbxFcompleted both samples. Cold builds: Go 9.659–10.197s, Rust 160.736–166.977s; edited builds: Go 0.601–0.631s, Rust 8.887–9.292s. Static binaries verified: Go 3,289,272 bytes; Rust 21,210,280 bytes. Report and scope limitations.PATH=/usr/local/go/bin:$PATH CARGO_BUILD_JOBS=2 RUST_TEST_THREADS=3 /usr/bin/time -p scripts/affected-tests da63d90d5482abcd6de148d579eaaf7f072bf11cpassed. Go: 154.72s; full Rustcargo test: 2963.85s, including compilation. Total wall time: 3118.73s. Full logs remain under.affected-tests/.go vet ./...,gofmt -l benchmark_test.go(empty), andpython3 bundle-skills.py --checkpassed fromprototype/gowith Go onPATH.python3 -m unittest discover -s scripts -p 'test_*.py'passed all 37 tests in 11.639s.git diff da63d90d5482abcd6de148d579eaaf7f072bf11c -- docs/adr/0001-rust-binary-with-embedded-skills.mdis empty.Test seams
Review coverage
Reviewed against the fetched
issue-1830tip,da63d90d5482abcd6de148d579eaaf7f072bf11c. The localissue-1830branch is checked out in another Worktree at an older commit, so the fixed point is the captured upstream tip rather than changing that other checkout.Standards: 0 findings. Spec: 0 findings. Each independent reviewer read all ten changed files and its supporting context. No generated-output exclusions; no changed file was left unread under either axis. Reports with each axis's final files-read list and the count summary are retained in
.thirdshift-review-9GMu5v/beside the Session trace.Unaddressed findings
Standards
None: the reviewer raised no findings.
Spec
None: the reviewer raised no findings.
Security
None: the reviewer raised no findings.
Security review outcome
No unaddressed introduced findings.
Merge Danger
Door: two-way
Blast Radius: prototype
Adds opt-in benchmark tooling, evidence and tests. Rust build/size results include the larger production executable, the test workloads differ, and the two bounded model graphs differ; the report makes those limits explicit. No production language decision is made here.
Built with codex codex-cli 0.164.0 · gpt-6.1-sol · xhigh