Draft
Conversation
Seven Criterion benchmarks covering Forge's core data access patterns at realistic scale: issue creation (CAS protocol), issue listing (ref glob), comment lookup (blob-anchored), link traversal, approval lookup (hit and miss), metadata auto-merge (clean and conflict), and comment reanchoring. All benchmarks run against fresh bare repositories with no remotes. Each benchmark group is parameterised by scale (N) so that the N at which latency degrades is clearly visible in the Criterion HTML output. The crate is publish = false and is excluded from cargo publish in the CD workflow. A smoke-test job runs all 28 benchmark cases with --test on every release to guard against regressions. Assisted-by: Zed (Claude Sonnet 4.6)
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
Adds
crates/forge-benchmarks— a Criterion benchmark suite measuring Git's object store and ref model against Forge's data access patterns at realistic scale.Benchmarks (28 cases total)
issue_creationissue_listingcomment_lookuplink_traversalapproval_lookupauto_mergereanchoringAll repos are bare with no remotes. Results tables in
README.mdare left blank for you to populate after a real run.Changes
crates/forge-benchmarks/— new crate (publish = false)Cargo.toml— workspace member added.config/release-please-config.json/manifest.json— crate registered.github/workflows/CD.yml—forge-benchmarksexcluded fromcargo publish; benchmark smoke-test job added