pen-stack 7.1.7__tar.gz → 7.1.8__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pen_stack-7.1.7 → pen_stack-7.1.8}/CHANGELOG.md +23 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/CITATION.cff +1 -1
- {pen_stack-7.1.7 → pen_stack-7.1.8}/PKG-INFO +1 -1
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/__init__.py +1 -1
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/immune_profile.py +18 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/server/api.py +16 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/PKG-INFO +1 -1
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pyproject.toml +1 -1
- {pen_stack-7.1.7 → pen_stack-7.1.8}/LICENSE +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/MANIFEST.in +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/bench/run.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_grounding/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_grounding/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_headtohead/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_routing/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_routing/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_safety/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/chat_safety/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/delivery/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_bench/LEADERBOARD.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_bench/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_bench/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_bench/SUBMISSIONS.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_bench/tasks.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_challenge/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/genome_writing_challenge/SUBMISSIONS.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/loop/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/offtarget/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/oracle/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/position_effect/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/position_effect/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/verify/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/writer_efficiency/README.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/writer_efficiency/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/benchmarks/writespec/SHA256SUMS +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/aav_serotype_tropism.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/antipeg.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/atlas_families.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/bridge_offtarget_profile.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/calibration/preexisting_nab_independent.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/capsid_epitope_oracle.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/capsid_sequences.fasta +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/cargo_polish.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/cell_types.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/datasets.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/delivery_constraints.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/delivery_rules.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/delivery_vehicles.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/expression/modifiers.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/expression/promoters.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/gates_v3.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/genotoxicity_oracle.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/gsh_validated_heldout.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/intent_weights.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/known_unknowns.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/llm.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/metric_guide.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/mhc_epitope_oracle.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/monitor_queries.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/oracles/execution.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/oracles/reliability.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/oracles/scope_cards.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/compliance.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/delivery.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/fold.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/multiplex.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/payload.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/rules/reachability.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/safety/hazard_registry.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/safety/policy.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/safety/probes.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/score_axes.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/seroprevalence.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/target_sites.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/universe_crosswalk.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/write_types.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/writer_sequences.fasta +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/configs/wtkb_curated.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/data/curated/bridge_offtarget_energetics.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/data/curated/bridge_offtarget_profile_measured.parquet +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/data/curated/gene_coords.parquet +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/data/curated/unified_editor_universe.parquet +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/BACKLOG.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/DEPLOY.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/INFRA.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/MCP.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/RELEASING.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/REPRO.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/STABILITY.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/agent.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/alphagenome_feasibility.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/autonomy.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/benchmark_circularity.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/biosecurity.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/build_interface.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/atlas.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/durability.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/offtarget_data.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/position_effect_data.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/safety.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/cards/writer_efficiency_data.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/challenge.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/closed_loop.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/co_scientist.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/co_scientist_loop.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/delivery.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/delivery_immunology.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/delivery_recommender.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/digital_twin.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/dissemination.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/environment.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/experiment_design.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/generative_design.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/immune_profiler.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/index.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/integrations.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/live_oracles.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/mechanistic_constraints.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/offtarget.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/oracle_mesh.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/oracles.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/position_effect.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/positioning.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/private_data_formats.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/quickstart.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/responsible_use.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/rule_spec.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/rules.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/scope.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/scorecard.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/tpe_bench.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/tutorials/compare-families.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/tutorials/score-deliverability.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/tutorials/where-can-i-write.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/tutorials/which-writer-reaches-locus.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/uncertainty.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/verify.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/verify_service.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/world_model.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/writer_efficiency.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/writer_verification.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/writespec_bench.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/writespec_profile.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/docs/wtkb.md +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/_resources.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/acquire.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/brains.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/campaign.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/design.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/active/validate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/finetune.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/ingest.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/pipeline.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/recalibrate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/adapt/report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/cite.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/co_scientist.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/epistemic.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/guardrails.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/mcp_server.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/orchestrator.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/orchestrator_live.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/pen_agent.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/scope.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/agent/tools.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/api/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/api/manifest.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/build_wtkb.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/crosslink.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/expand.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/guide_design.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/schema.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/scorecard.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/universe.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/variant_propose.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/writer_efficiency.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/writer_predict.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/writer_recommend.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/atlas/writer_verify.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/activity.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/cli.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/fold_qc.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/guide_qc.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/ingest.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/offtarget.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/offtarget_energetics.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/ortholog_screen.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/bridge/pipeline.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/build/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/build/cloudlab.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/build/ingest.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/build/protocol.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/build/simlab.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/cli.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/encode.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/genome.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/ingest_chromatin.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/ingest_integration.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/ingest_safety_annot.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/data/ingest_trip.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/capsid_generate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/generate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/pareto.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/space.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/design/writer_variants.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/env/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/env/genome_writing_env.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/env/policies.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/build.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/cell_types.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/ingest.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/query.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/graph/schema.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/loop/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/loop/continual.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/loop/cycle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/loop/drift.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/mech/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/mech/classify_atlas.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/mech/whitelist.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/monitor/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/monitor/europepmc.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/monitor/run.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/monitor/triage.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/affinity.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/cache.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/energetics.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/genome.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/protein_design.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/reliability.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/rna.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/schema.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/status.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/structure.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/structure_run.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/oracles/vcell.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/ada_risk.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/antipeg_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/capsid_epitope_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/cargo.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/cargo_polish.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/chromosome.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery_constraints.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery_immune.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery_immunology.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery_predict.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/delivery_vehicles.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/genotoxicity_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/immune_mhc2.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/innate_sensing.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/multiplex.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/optimize.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/pipeline.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/router.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/seroprevalence_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/planner/target_site.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/corpus.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/embed.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/ground.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/index.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/llm.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/qa.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rag/retrieve.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/evaluators.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/loader.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/schema.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/solver.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/rules/spec.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/audit.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/gate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/policy.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/redteam.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/registry.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/screen.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/safety/standards.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/score/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/score/recalibrate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/score/therapeutic.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/server/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/clarify.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/extract.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/cell.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/chem.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/feature.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/gene.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/locus.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/resolvers/phenotype.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/satisfy.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/service.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/spec/writespec.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/calibrate.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/data/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/data/position_effect.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/mechanistic.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/outcome.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/twin/position_effect.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/ui/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/ui/app.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/adapt_demo.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/agent_eval.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_adversarial_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_coscientist_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_graph_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_rule_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_trust_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/bench_writetype_tasks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/blind_gsh_discovery.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/cargo_directionality.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/closed_loop.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/durability_baselines.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/experiment_design.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/expr_controls.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/forward_hypotheses.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/generative_design.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/guide_qc_demo.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/heldout_celltype_expr.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/immune_calibration.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/intent_specification.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/known_biology_expr.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/offtarget_energetics_eval.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/out_of_scope_refusal.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/outcome_calibration.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/outcome_prediction.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/paper3_benchmark.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/paper4_real_validation.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/paper4_validation.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/protocol_safety.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/safety_screening.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/selective_prediction.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/seq_vs_measured.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/target_site_controls.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/uncertainty_eval.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/ungrounded_baseline.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/within_locus_ranking.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/validate/writer_recovery.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/verify/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/verify/proof.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/verify/schema.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/verify/service.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/guide.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/llm.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/llm_provider.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/router.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/server.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/web/tools.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/__init__.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/chromatin_seq.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/durability.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/export_tracks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/features.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/gsh_baseline.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/mesh_features.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/offtarget_assay.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/offtarget_data.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/offtarget_predict.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/ood.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/providers.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/safety.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/structure3d.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/uncertainty.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack/wgenome/writability.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/SOURCES.txt +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/dependency_links.txt +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/entry_points.txt +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/requires.txt +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/pen_stack.egg-info/top_level.txt +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_phase0.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_phase1_5.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_phase2.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_phase3.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_a.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_acq.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_aldesign.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_alvalidate.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_atlas.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_b.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ba.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ba_v33.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ba_v45.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_bench.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_c.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_cal.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_calib.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_challenge.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_chat.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_cite.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_closedloop.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_continual.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_cosci2.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_crit.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ct.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_d.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_delivery.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_drift.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_e.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_env.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ep.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_epitope.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_expr2.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_f.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_frontend.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_g.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_gen.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_genotox.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_graph.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_h.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_hybrid.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_immune.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_immune2.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_ingest.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_innate.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_loop.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_manifest.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_mc.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_mcp.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_mech.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_mon.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_o.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_offtarget.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_openapi.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_oracle.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_orch.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_outcome.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_pareto.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_peg.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_penchat.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_plan.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_policy.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_profile.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_proto.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_r.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_redteam.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_route.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_screen.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_seroprev.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_simlab.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_twincal.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_uq.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_v.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_vcell.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_verify.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_writer.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_writespec.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/SHA256_LOCK_ws_wv.json +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/paper1.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/paper2.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/paper3.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/paper4.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/phase0.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_a.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_acq.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_aldesign.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_alvalidate.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_atlas.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_b.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ba.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ba_v33.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ba_v45.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_bench.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_c.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_cal.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_calib.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_challenge.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_chat.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_cite.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_closedloop.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_continual.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_cosci2.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_crit.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ct.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_d.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_delivery.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_drift.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_e.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_env.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ep.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_epitope.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_expr2.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_f.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_frontend.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_g.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_gen.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_genotox.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_graph.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_h.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_hybrid.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_immune.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_immune2.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_ingest.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_innate.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_loop.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_manifest.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_mc.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_mcp.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_mech.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_mon.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_o.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_offtarget.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_openapi.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_oracle.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_orch.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_outcome.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_pareto.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_peg.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_penchat.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_plan.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_policy.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_profile.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_proto.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_r.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_redteam.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_route.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_screen.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_seroprev.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_simlab.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_twincal.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_uq.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_v.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_vcell.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_verify.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_writer.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_writespec.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/prereg/ws_wv.yaml +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/build_capsid_fitness.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/build_rag_corpus.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/calibrate_immune_axes.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/fetch_licensed_sources.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/offtarget_chromatin_incremental.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/offtarget_chromatin_matched.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/offtarget_chromatin_validation.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_build_atlas.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_build_durability.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_build_position_effect.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_build_writer_eff.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_export_tracks.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_safety_concordance.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_train_safety.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p1_validation_report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p2_build_atlas.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p3_benchmark_report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p4_genome_scan.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p52_build_genotox_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/p53_build_epitope_oracle.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/ws_b_report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/scripts/ws_c_report.py +0 -0
- {pen_stack-7.1.7 → pen_stack-7.1.8}/setup.cfg +0 -0
|
@@ -3,6 +3,29 @@
|
|
|
3
3
|
All notable changes to PEN-STACK are documented here. This file follows
|
|
4
4
|
[Keep a Changelog](https://keepachangelog.com/).
|
|
5
5
|
|
|
6
|
+
## [7.1.8] - 2026-06-30 - Writer immunogenicity moves to the Writer Atlas; SpCas9 removed from the writer options
|
|
7
|
+
|
|
8
|
+
### Changed
|
|
9
|
+
- **The writer enzyme is no longer chosen in the Design Studio; its immunogenicity moves to the Writer Atlas, where
|
|
10
|
+
writers belong.** The Design Studio's writer dropdown existed only to feed the two writer-as-antigen immune axes
|
|
11
|
+
(MHC-II + ADA); that duplicated the dedicated Writer Atlas page. Now:
|
|
12
|
+
- The **Writer enzyme dropdown is removed** from `DesignForm` (and `DEFAULT_DESIGN`). The Design Studio's "Profile
|
|
13
|
+
immune & delivery" action correctly scopes to the **delivery/vehicle** axes (genotoxicity, CD8 capsid, innate,
|
|
14
|
+
pre-existing NAb, anti-PEG). `ImmuneProfileCard` hides the writer axes by default (`hideWriterAxes`).
|
|
15
|
+
- A new **Writer immunogenicity** card on the **Writer Atlas** surfaces each genome writer's MHC-II/CD4 epitope
|
|
16
|
+
load + ADA risk + human self-match, read from the **committed NetMHCIIpan-4.0 cache — not recomputed**
|
|
17
|
+
(`GET /api/writer/immune`, `immune_profile.writer_immunogenicity_table()`).
|
|
18
|
+
- **SpCas9 is removed** from the writer set: it is a nuclease/editor, not a large-cargo genome writer. The Writer
|
|
19
|
+
Atlas immunogenicity covers the actual writers — **Bxb1** (serine integrase) and **ISCro4** (bridge recombinase);
|
|
20
|
+
the Cas9 nuclease and the human self control are excluded. (The engine retains SpCas9 in its cache for other
|
|
21
|
+
uses; only the user-facing writer list drops it.)
|
|
22
|
+
- The engine still returns the `mhc2_writer` / `ada_writer` axes from `immune_profile()` for API/MCP callers that
|
|
23
|
+
pass a `writer_family` — only the web UI moved the writer profiling to the Writer Atlas. No data was recomputed.
|
|
24
|
+
|
|
25
|
+
### Added
|
|
26
|
+
- `test_ws_profile.py`: `test_writer_immunogenicity_table_for_the_writer_atlas` (covers Bxb1 + ISCro4 from the
|
|
27
|
+
cache; SpCas9 and the self control excluded; grounded MHC-II + ADA values).
|
|
28
|
+
|
|
6
29
|
## [7.1.7] - 2026-06-30 - Administration context (in-vivo / ex-vivo) now drives the immune profile
|
|
7
30
|
|
|
8
31
|
### Fixed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pen-stack
|
|
3
|
-
Version: 7.1.
|
|
3
|
+
Version: 7.1.8
|
|
4
4
|
Summary: Open infrastructure for genome writing: the Writable Genome atlas, the Writer Atlas, and the Write Planner.
|
|
5
5
|
Author-email: Anees Ahmed Mahaboob Ali <ahmedaneesm@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"""PEN-STACK v3.0 - open infrastructure for genome writing."""
|
|
2
|
-
__version__ = "7.1.
|
|
2
|
+
__version__ = "7.1.8"
|
|
@@ -186,6 +186,24 @@ def _writer_antigen_card(design: dict) -> dict | None:
|
|
|
186
186
|
"Population-level proxy; realized CD4 response / ADA titer is a known-unknown."}
|
|
187
187
|
|
|
188
188
|
|
|
189
|
+
# Genome-WRITER families surfaced in the Writer Atlas immunogenicity view: the bundled writers that are actual
|
|
190
|
+
# genome writers (integrase / recombinase), each with a committed real NetMHCIIpan-4.0 MHC-II load + ADA-risk cache.
|
|
191
|
+
# The Cas9 nuclease (an editor, not a large-cargo writer) and the human self control are intentionally excluded.
|
|
192
|
+
_WRITER_IMMUNE_FAMILIES = ("serine_integrase", "bridge_IS110")
|
|
193
|
+
|
|
194
|
+
|
|
195
|
+
def writer_immunogenicity_table() -> list[dict]:
|
|
196
|
+
"""Per-writer immunogenicity (MHC-II/CD4 epitope load + ADA risk) for the bundled genome-writer families, read
|
|
197
|
+
from the committed NetMHCIIpan-4.0 cache (no recomputation). Surfaced in the Writer Atlas as the writer's
|
|
198
|
+
antigen profile. Reuses the v6.9 writer-as-antigen card; excludes the Cas9 nuclease and the self control."""
|
|
199
|
+
out = []
|
|
200
|
+
for fam in _WRITER_IMMUNE_FAMILIES:
|
|
201
|
+
card = _writer_antigen_card({"writer_family": fam})
|
|
202
|
+
if card:
|
|
203
|
+
out.append({"writer_family": fam, **card})
|
|
204
|
+
return out
|
|
205
|
+
|
|
206
|
+
|
|
189
207
|
def immune_profile(design: dict) -> dict:
|
|
190
208
|
"""Per-design immune-risk profile across all axes. ``design`` keys: ``delivery_vehicle`` (or ``vehicle``),
|
|
191
209
|
``serotype``, ``cargo_seq``, ``writer_output_form`` (or ``cargo_form``), ``pegylated``.
|
|
@@ -244,6 +244,22 @@ def writer_variants_endpoint(integrase: str | None = None, system: str | None =
|
|
|
244
244
|
"(reported as a known limitation, never a manufactured positive)."}
|
|
245
245
|
|
|
246
246
|
|
|
247
|
+
@app.get("/writer/immune", tags=["writer atlas"])
|
|
248
|
+
def writer_immune_endpoint():
|
|
249
|
+
"""The writer enzyme's immunogenicity as an antigen (v6.9 writer-as-antigen, surfaced in the Writer Atlas from
|
|
250
|
+
v7.1.8): per genome-writer family, the real NetMHCIIpan-4.0 MHC-II/CD4 epitope load + the ADA-risk axis
|
|
251
|
+
(MHC-II density x foreignness, self-tolerance filtered against the human proteome). Read from the committed
|
|
252
|
+
cache - NOT recomputed. Population-level proxy, never a patient-specific magnitude (a known-unknown). The Cas9
|
|
253
|
+
nuclease (an editor, not a large-cargo writer) and the human self control are excluded."""
|
|
254
|
+
from pen_stack.planner.immune_profile import writer_immunogenicity_table
|
|
255
|
+
return {"writers": writer_immunogenicity_table(),
|
|
256
|
+
"method": "NetMHCIIpan-4.0 MHC-II epitope load + ADA risk (MHC-II density x foreignness, self-tolerance "
|
|
257
|
+
"filtered against the human proteome). Population-level proxy from the committed cache; the "
|
|
258
|
+
"realized CD4 response / ADA titer is a known-unknown.",
|
|
259
|
+
"scale": "0-1, higher = lower risk (1 = least presentable / least ADA-driving)",
|
|
260
|
+
"no_fabrication": True}
|
|
261
|
+
|
|
262
|
+
|
|
247
263
|
@app.get("/bridge/design")
|
|
248
264
|
def bridge_design(target: str, donor: str, scaffold: str = "ISCro4_enhanced",
|
|
249
265
|
ct: str | None = None, scan: bool = False):
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pen-stack
|
|
3
|
-
Version: 7.1.
|
|
3
|
+
Version: 7.1.8
|
|
4
4
|
Summary: Open infrastructure for genome writing: the Writable Genome atlas, the Writer Atlas, and the Write Planner.
|
|
5
5
|
Author-email: Anees Ahmed Mahaboob Ali <ahmedaneesm@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "pen-stack"
|
|
7
|
-
version = "7.1.
|
|
7
|
+
version = "7.1.8"
|
|
8
8
|
description = "Open infrastructure for genome writing: the Writable Genome atlas, the Writer Atlas, and the Write Planner."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.11"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|