alpha release#74
Merged
Merged
Conversation
Updated the assemblies loop to have less code, condensed and redid how we added to the sets
Luke Dysart Update to bug with assembly after attempted push
Luke update to run_sbol2 assembly, working on push in git
Refactor HeatShockTransformation transfer logic and add protocol generator improvements
…ssembly-protocol-script Improve ManualAssembly markdown protocol formatting and links
…-into-subfolders Reorganize scripts into manual/automated_ot2/libre and split simulator vs manual tests
…tion_factor param - Change 2: use one tip for the entire LB distribution step (new_tip='never') - Change 1: share each dilution well across all replicates; seed dilution2 before any agar aspirations; use a clean second tip for dilution-2 agar platings to prevent cross-concentration contamination; parameterise calculate_plate_layout with wells_per_dilution so dilution and agar plates expand independently - Change 3: replace volume_lb_transfer with dilution_factor (default 10); derive volume_lb_transfer = volume_bacteria_transfer * (dilution_factor - 1); validate well volume sufficiency in __init__ and physical well capacity in run() via well.max_volume - Add tests/test_plating.py: 32 unit tests covering init wiring, all validation limits, dilution_factor behaviour, param merge hierarchy, and plate layout logic
Mix volume is now derived as min(19, volume_lb_transfer + volume_bacteria_transfer - 1) so the p20 never tries to aspirate more than is physically in the well for low dilution factors. Adds three tests covering default, small-factor, and large-factor cases.
scripts/manual/manual_assembly_protocol.md is produced at runtime by generate_manual_assembly_protocol.py and should not be committed. Add scripts/manual/*.md to .gitignore so future runs don't accidentally re-track it.
All three generate_manual_*.py scripts had default --input/--output paths pointing to scripts/ instead of scripts/manual/ after the directory reorganisation. Updated defaults so scripts run correctly from repo root without arguments. Added manual_plating_input.json and manual_transformation_input.json as example inputs for the plating and transformation generators, mirroring the GFP/RFP constructs already present in manual_assembly_input.json.
- ManualPlating: read replicates, number_dilutions, and volume params from plating_data so JSON-driven runs reflect the input file rather than silently falling back to constructor defaults - ManualAssembly: remove hard-coded cycles from default Digest/Ligate profile entries so thermocycling_cycles actually takes effect at render time (the fallback logic in the renderer was already correct) - .gitignore: add scripts/manual/*.md to cover generated protocol output files (this entry was edited locally but not staged in the earlier commit)
Replace the hard-coded cycle count assertion with an explicit variable so the test documents the pass-through behaviour rather than pinning the old default value that was removed in the previous fix.
Refactor plating protocol: single LB tip, shared dilution wells, dilu…
Human instructions
Generates plating_layout.json and plating_layout.xlsx during simulation, mapping each agar well to its construct, source well, replicate, and dilution ratio. Excel shows a visual 96-well plate grid with dilutions color-coded within each physical plate section.
Wells beyond index 96 now spill to plate_2 instead of generating invalid well names past column 12. Adds regression test covering the 97-construct single-dilution case.
- Fill all missing docstrings across assembly, plating, transformation, sample_preparation, calibration, and utils modules - Expand generate_protocol module docstring with full CLI flag reference, JSON input format examples, and copy-paste terminal workflow for all three protocol stages (automated + manual bench variants) - Set up Sphinx skeleton in docs/ with sphinx-rtd-theme, autodoc, napoleon, and viewcode extensions; includes User Guide and API Reference sections - Add .readthedocs.yaml for automated Read the Docs integration - Update .gitignore to exclude docs/_build/ and Python cache files Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Add agar plate map outputs (JSON and Excel) to Plating protocol
Replace internal repo paths (scripts/manual/manual_*.json) with generic filenames (assembly_input.json, transformation_spec.json, plating_input.json) so examples reflect real user workflows rather than pointing to specific repo directories.
Simplify input file paths in workflow docs and code snippets
Add Read the Docs link to README
…ation, and plating workflows - Includes detailed example protocols for heat shock transformation, plating, and DNA assembly - Adds Python implementation of each protocol with modular parameter control - Provides metadata-driven JSON configuration files for protocol automation and testing simulation - Includes Excel templates for visualization and input mapping
Add comprehensive JSON and Python test inputs for assembly, transform…
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.
No description provided.