Skip to content

Fix dependency#5

Open
MarkAStevens04 wants to merge 48 commits into
koziarskilab:mainfrom
MarkAStevens04:main
Open

Fix dependency#5
MarkAStevens04 wants to merge 48 commits into
koziarskilab:mainfrom
MarkAStevens04:main

Conversation

@MarkAStevens04

Copy link
Copy Markdown

pip install -e . threw an error because of a dependency conflict. Resolved the conflict with this code.

MarkAStevens04 and others added 30 commits May 12, 2026 10:31
- infer.py and SLURM/build scripts (submit.sh, vina_resume_build.sh, setup_qv2gpu.sh)
- CRBN warhead-anchored docking pipeline (anchor_dock.py, batch_anchor_dock.py, etc.)
- receptor prep (clean.py, fix_model.py) and decoy generation
- wandb logger + config updates
- .gitignore: exclude Miniconda installer, scratch symlinks, and docking data artifacts

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pivot the docking-reward work from CRBN/5HXB (which hit a discrimination
ceiling: anchored docking is blind to GSPT1 cooperativity) to the
CDK12-DDB1/CR8 system (6TD3), where the glue interface is ligand-mediated
and capturable by docking.

- 6TD3 prep + validation: clean_6td3.py (tiers + native CR8), redock_cr8.py
  (blind redock recovers native at 1.23 A, ranked #1; DDB1 bonus -2.2 kcal/mol).
- Discrimination: make_decoys_cdk.py (purine-warhead decoys), dock_cluster.py
  (4-GPU batched docking + Tier1 score_only differential). DDB1 differential
  separates real glues from decoys 85.6% vs 7.3%.
- Cross-system: dock_cluster_crbn.py computes the analogous GSPT1 differential;
  compare_systems.py lines up both. 6TD3 +78 pts vs 5HXB -3 pts on the same metric.
- Cluster jobs run on Balam debug_full_node (4x A100); ~21x (CRBN) / 6.6x (6TD3)
  vs sequential, mostly from multi-ligand batching (see Logs/004).
- Logs/: experiment journal (001-004) with methods, results, and result locations.
- test-data/: curated known-glue datasets (DDB1_CDK12, CRBN_GSPT1).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Consolidate the docking-oracle pre-processing for future contributors:

- Add pre-processing/README.md: the 5-step pipeline (prep -> validate ->
  decoys -> dock -> compare), env vars, local-vs-cluster usage, and a guide
  for adding a new glue system.
- Remove redundant sequential runners (dock_6td3_batch.py, batch_anchor_dock.py,
  run_*.sh) now subsumed by the batching dock_cluster*.py drivers, and collapse
  three compare scripts into compare_systems.py.
- Delete abandoned pre-processing-v2/ and stale Vina exploration artifacts.
- Make the gnina launcher path overridable via $GNINA (was hardcoded).
- Point the 6TD3 job summary at compare_systems.py; update Logs references.

Verified: all kept scripts compile, imports resolve, and compare_systems.py
reproduces the cross-system result from the committed CSVs.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The Vina-GPU oracle runs from the $SCRATCH install (reached via the quickvina_dir
symlink, per configs/proxies/target/docking_base.gin); the repo-side build dir and
logs were one-off build artifacts. Verified the $SCRATCH install is self-contained
and its QuickVina2-GPU binary still links before removing:

- delete vina_workspace/ (141 MB build dir), vina_*build*.log, the 163 MB
  Miniconda3 installer, and the ad-hoc vina_resume_build.sh (the canonical build
  recipe is external/setup_qv2gpu.sh).
- gitignore these so they don't reappear.

Runtime unchanged: quickvina_dir -> $SCRATCH/vina_gpu/Vina-GPU-2.1 intact.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Rewrites all four existing logs from the old Objective/Method/Results/Conclusion/Files
structure into the new story + audit layer format: Question, Context & Summary, Answer,
Relevance to our Publication, Next Experiments, then # Re-creation with Relevant Files,
Versions, Resources, Method, and Results. All factual content preserved.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
ROC and precision-recall curves for 6TD3 and 5HXB using existing docking
result CSVs. 6TD3: AUC=0.890, AP=0.872. CRBN: AUC=0.627, AP=0.726.
Adds experiment log 005 and updates README index.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Establish a clear old/new boundary so future work extends RGFN without
editing it, and scaffold the structure for new oracles, rewards, batch
selection, benchmarks, and dataset tooling.

Key finding: rgfn/ and configs/ were already ~pristine upstream; our only
edits were 3 operational overrides (now documented in docs/PATCHES.md). So
this is mostly additive scaffolding + relocating our own files.

- Add glue/ package (oracles, rewards, samplers, proxies, datasets) with a
  registry.py import hub for gin discovery and a working example proxy adapter.
- Add scripts/train.py + scripts/infer.py wrappers that import glue (so gin
  sees our components) then delegate to the upstream entry points via runpy.
- Add configs/glue/ overlay dir; scaffold benchmarks/, models/, data/synthetic/.
- Move pre-processing/ -> research/preprocessing/ (internals intact); fix the
  repo-root-relative path refs in the moved docking scripts.
- Move submit.sh -> scripts/hpc/submit.sh.
- Add CLAUDE.md (boundary rules + how to extend) and docs/ (ARCHITECTURE,
  REFACTOR_LOG, PATCHES) so future agents reference this structure.
- Fix .gitignore: drop the `scripts/` ignore (was hiding our entry points),
  repoint moved paths, ignore docking outputs / weights / synthetic datasets.
- Declare glue + gin_config packages in pyproject; update README.

Validated statically (Balam down, laptop lacks heavy deps): py_compile, gin
include integrity, glue import chain, bash -n, no dangling refs. Real
import/train/dock verification pending on Balam (see docs/REFACTOR_LOG.md).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ture

[REFACTOR] Separate upstream RGFN from our work via glue/ package
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant