Repository navigation
Share one STRING threshold and make shared caches safe under concurrency - #141
Open
cornelislouisa wants to merge 1 commit into
Open
cornelislouisa wants to merge 1 commit into
cornelislouisa wants to merge 1 commit into
Conversation
- adjacency_threshold is 0.4 in every dataset config; WGCNA ignores it and uses adjacency_target_connectivity, so the stale per-dataset WGCNA cutoffs and their headers are removed and wgcna_binarization is stated explicitly - STRING alias, bulk and interaction caches are locked per artifact, written atomically, and truncated downloads or corrupt JSON are rebuilt - The pre-transform cache is built under a directory lock and saved atomically - gene_identity rejects SAGN, which never sees runtime node features - The config consistency test requires the same adjacency_threshold everywhere Co-authored-by: Cursor <cursoragent@cursor.com>
This was referenced Oct 27, 2026
Collaborator
Author
|
The whole stack (#141 → #145) passed the reproducibility check against |
cornelislouisa
marked this pull request as ready for review
October 27, 2026 15:00
johmathe
approved these changes
Oct 28, 2026
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.
First of five stacked PRs that bring the k-fold work from
guille/kfold_relaunch(the code behind the October k-fold results) intomain.Changes
adjacency_thresholdis 0.4 in every dataset config. WGCNA ignores it since Keep a target number of WGCNA edges instead of a frozen cutoff #138 (it usesadjacency_target_connectivity: 0.10), so the stale per-dataset WGCNA cutoffs and their "UPDATED" headers are removed. The searches already forced STRING to 0.4; this makes direct runs match.wgcna_binarization: target_connectivityis now stated explicitly (it was already the default).kfold_relaunch.PreProcessorbuilds its cache under a directory lock and saves through a.partialfile, so concurrent runs never read a half-written cache.gene_identityis rejected for SAGN, which trains on precomputed aggregates and would silently ignore the identity embedding.adjacency_thresholdeverywhere.test_string_cache_concurrency.py(from Add production-ready fold-mean Optuna search #139) covers the locks and atomic writes. A new gene-identity test covers the SAGN guard.ogbench/data/adjacency/README.mddescribes per-fold binarization.Checks
pytest -m "not slow": 207 passedgene_identity=learnablefails with the new error