Repository navigation
Implement Rust/C# GraphQL comparison with conformance, benchmarks and reports - #5
Merged
Merged
Conversation
Adding .gitkeep for PR creation (default mode). This file will be removed when the task is complete. Issue: #4
konard
marked this pull request as ready for review
October 7, 2026 00:23
Member
Author
Working session summaryPR #5 is ready for review. Implemented Rust/C# servers, shared core-links benchmarks, conformance tests, pinned CI and generated reports. All CI checks and CodeFactor pass; million-link runs succeeded on all three backends. The working tree is clean. Full comparison results will publish after merge to main. This summary was automatically extracted from the AI working session output. |
Member
Author
🤖 Solution Draft LogThis log file contains the complete execution trace of the AI solution draft process. 💰 Cost estimation:
📊 Context and tokens usage:
Total: (365.9K + 9.7M cached) input tokens, 93.2K output tokens, $4.802329 cost 🤖 Models used:
📎 Log file uploaded as Gist (6173KB)Now working session is ended, feel free to review and add any feedback on the solution draft. |
This reverts commit eb66feb.
Member
Author
🎉 Auto-mergedThis pull request has been automatically merged by hive-mind.
Auto-merged by hive-mind with --auto-merge flag |
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.
The repository promised Deep vs Doublets Rust/C# but only contained submodules and a mutation against an obsolete endpoint. This adds runnable Rust and C# GraphQL servers over native Doublets stores, a pinned PostgreSQL/Hasura baseline, and one shared HTTP driver for create/update/delete and five query variants.
The workflow checks conformance before benchmarking each server independently. PRs run B=1,000/N=10; main runs B=10,000/100,000/1,000,000 with N=100. Reports validate raw samples, preserve the handwritten README, and generate medians, deviations, ratios, dependency/CPU/run/date/commit provenance, and linear/log charts. CI uploads PR reports and commits generated results only on main.
Scope: issue #1 has no normative schema attachment, so
schema/links.graphqlpublishes the executable common links subset following Data.Doublets.Gql's field conventions. The baseline reproduces Deep's core links table/indexes atdeeplinks@381207d, without its application triggers, permissions, values, relationships or subscriptions. Both adapters are maintained here because the legacy submodule implementations require old runtimes and have unfinished resolvers. Original submodule pointers are preserved. README documents the workload domain and differences in id allocation and durability.During implementation, repeated mutations exposed an index hang in Rust doublets 0.5.0's split store. A native 20-link test failed within its five-second bound; switching both adapters to united stores makes it pass.
experiments/repeated-mutations.mdexplains reproduction, andexperiments/repeat_workload.pyretains the bounded HTTP probe. A second reproducing test shows that successful HTTP responses containing unchanged updates must be rejected; every measured response is now validated outside timing.Validation:
The latest PR workflow passes all five jobs and produces a validated three-backend report artifact. CodeFactor also passes on
13ef6bf.Published full comparison results will be produced by the first successful main workflow after merge; PR results are available as workflow artifacts.
Fixes #4
Changes
.github/workflows/benchmarks.yml.gitignoreREADME.mdcompose.ymlcsharp/Doublets.Gql.csprojcsharp/Program.cscsharp/packages.lock.jsondeep/links.sqlexperiments/compose.local.ymlexperiments/repeat_workload.pyexperiments/repeated-mutations.mdglobal.jsonrequirements.txtrust-toolchain.tomlrust/Cargo.lockrust/Cargo.tomlrust/src/main.rsschema/links.graphqlscripts/client.pyscripts/conformance.pyscripts/init_deep.pyscripts/report.pyscripts/run.pyscripts/workload.pytests/test_comparison.pytests/test_report.py