pen-stack 0.1.0__py3-none-any.whl

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.
Files changed (259) hide show
  1. pen_stack/__init__.py +2 -0
  2. pen_stack/_resources.py +34 -0
  3. pen_stack/active/__init__.py +20 -0
  4. pen_stack/active/acquire.py +165 -0
  5. pen_stack/active/brains.py +74 -0
  6. pen_stack/active/campaign.py +109 -0
  7. pen_stack/active/design.py +66 -0
  8. pen_stack/active/validate.py +104 -0
  9. pen_stack/adapt/__init__.py +14 -0
  10. pen_stack/adapt/finetune.py +33 -0
  11. pen_stack/adapt/ingest.py +86 -0
  12. pen_stack/adapt/pipeline.py +101 -0
  13. pen_stack/adapt/recalibrate.py +58 -0
  14. pen_stack/adapt/report.py +130 -0
  15. pen_stack/agent/__init__.py +1 -0
  16. pen_stack/agent/cite.py +175 -0
  17. pen_stack/agent/co_scientist.py +262 -0
  18. pen_stack/agent/epistemic.py +102 -0
  19. pen_stack/agent/guardrails.py +67 -0
  20. pen_stack/agent/mcp_server.py +215 -0
  21. pen_stack/agent/orchestrator.py +112 -0
  22. pen_stack/agent/orchestrator_live.py +56 -0
  23. pen_stack/agent/pen_agent.py +242 -0
  24. pen_stack/agent/scope.py +60 -0
  25. pen_stack/agent/tools.py +130 -0
  26. pen_stack/api/__init__.py +12 -0
  27. pen_stack/api/manifest.py +160 -0
  28. pen_stack/atlas/__init__.py +1 -0
  29. pen_stack/atlas/atlas.parquet +0 -0
  30. pen_stack/atlas/build_wtkb.py +80 -0
  31. pen_stack/atlas/crosslink.py +179 -0
  32. pen_stack/atlas/expand.py +190 -0
  33. pen_stack/atlas/guide_design.py +178 -0
  34. pen_stack/atlas/schema.py +59 -0
  35. pen_stack/atlas/scorecard.py +134 -0
  36. pen_stack/atlas/scorecard_v3.parquet +0 -0
  37. pen_stack/atlas/universe.py +75 -0
  38. pen_stack/atlas/universe_v3.parquet +0 -0
  39. pen_stack/atlas/variant_propose.py +155 -0
  40. pen_stack/atlas/writer_efficiency.py +184 -0
  41. pen_stack/atlas/writer_predict.py +229 -0
  42. pen_stack/atlas/writer_recommend.py +170 -0
  43. pen_stack/atlas/writer_verify.py +167 -0
  44. pen_stack/atlas/wtkb.parquet +0 -0
  45. pen_stack/bridge/__init__.py +1 -0
  46. pen_stack/bridge/activity.py +52 -0
  47. pen_stack/bridge/cli.py +65 -0
  48. pen_stack/bridge/fold_qc.py +53 -0
  49. pen_stack/bridge/guide_qc.py +87 -0
  50. pen_stack/bridge/ingest.py +139 -0
  51. pen_stack/bridge/offtarget.py +191 -0
  52. pen_stack/bridge/offtarget_energetics.py +105 -0
  53. pen_stack/bridge/ortholog_screen.py +73 -0
  54. pen_stack/bridge/pipeline.py +83 -0
  55. pen_stack/build/__init__.py +16 -0
  56. pen_stack/build/cloudlab.py +74 -0
  57. pen_stack/build/ingest.py +47 -0
  58. pen_stack/build/protocol.py +82 -0
  59. pen_stack/build/simlab.py +30 -0
  60. pen_stack/cli.py +126 -0
  61. pen_stack/data/__init__.py +1 -0
  62. pen_stack/data/encode.py +84 -0
  63. pen_stack/data/genome.py +71 -0
  64. pen_stack/data/ingest_chromatin.py +119 -0
  65. pen_stack/data/ingest_integration.py +112 -0
  66. pen_stack/data/ingest_safety_annot.py +201 -0
  67. pen_stack/data/ingest_trip.py +76 -0
  68. pen_stack/design/__init__.py +14 -0
  69. pen_stack/design/capsid_generate.py +62 -0
  70. pen_stack/design/generate.py +70 -0
  71. pen_stack/design/pareto.py +70 -0
  72. pen_stack/design/space.py +137 -0
  73. pen_stack/design/writer_variants.py +121 -0
  74. pen_stack/env/__init__.py +1 -0
  75. pen_stack/env/genome_writing_env.py +248 -0
  76. pen_stack/env/policies.py +94 -0
  77. pen_stack/graph/__init__.py +21 -0
  78. pen_stack/graph/build.py +133 -0
  79. pen_stack/graph/cell_types.py +58 -0
  80. pen_stack/graph/ingest.py +132 -0
  81. pen_stack/graph/query.py +148 -0
  82. pen_stack/graph/schema.py +100 -0
  83. pen_stack/loop/__init__.py +15 -0
  84. pen_stack/loop/continual.py +61 -0
  85. pen_stack/loop/cycle.py +84 -0
  86. pen_stack/loop/drift.py +41 -0
  87. pen_stack/mech/__init__.py +1 -0
  88. pen_stack/mech/classify_atlas.py +71 -0
  89. pen_stack/mech/pfam_whitelist.yaml +247 -0
  90. pen_stack/mech/whitelist.py +66 -0
  91. pen_stack/monitor/__init__.py +1 -0
  92. pen_stack/monitor/europepmc.py +32 -0
  93. pen_stack/monitor/run.py +57 -0
  94. pen_stack/monitor/triage.py +63 -0
  95. pen_stack/oracles/__init__.py +65 -0
  96. pen_stack/oracles/affinity.py +116 -0
  97. pen_stack/oracles/cache.py +53 -0
  98. pen_stack/oracles/energetics.py +33 -0
  99. pen_stack/oracles/genome.py +167 -0
  100. pen_stack/oracles/protein_design.py +136 -0
  101. pen_stack/oracles/reliability.py +64 -0
  102. pen_stack/oracles/rna.py +28 -0
  103. pen_stack/oracles/schema.py +77 -0
  104. pen_stack/oracles/status.py +123 -0
  105. pen_stack/oracles/structure.py +42 -0
  106. pen_stack/oracles/structure_run.py +76 -0
  107. pen_stack/oracles/vcell.py +74 -0
  108. pen_stack/planner/__init__.py +1 -0
  109. pen_stack/planner/ada_risk.py +64 -0
  110. pen_stack/planner/antipeg_oracle.py +75 -0
  111. pen_stack/planner/capsid_epitope_oracle.py +135 -0
  112. pen_stack/planner/cargo.py +56 -0
  113. pen_stack/planner/cargo_polish.py +146 -0
  114. pen_stack/planner/chromosome.py +106 -0
  115. pen_stack/planner/delivery.py +55 -0
  116. pen_stack/planner/delivery_constraints.py +110 -0
  117. pen_stack/planner/delivery_immune.py +61 -0
  118. pen_stack/planner/delivery_immunology.py +222 -0
  119. pen_stack/planner/delivery_predict.py +196 -0
  120. pen_stack/planner/delivery_vehicles.py +37 -0
  121. pen_stack/planner/genotoxicity_oracle.py +112 -0
  122. pen_stack/planner/immune_mhc2.py +154 -0
  123. pen_stack/planner/immune_profile.py +292 -0
  124. pen_stack/planner/innate_sensing.py +135 -0
  125. pen_stack/planner/multiplex.py +110 -0
  126. pen_stack/planner/optimize.py +278 -0
  127. pen_stack/planner/pipeline.py +87 -0
  128. pen_stack/planner/report.py +26 -0
  129. pen_stack/planner/router.py +57 -0
  130. pen_stack/planner/seroprevalence_oracle.py +92 -0
  131. pen_stack/planner/target_site.py +118 -0
  132. pen_stack/rag/__init__.py +1 -0
  133. pen_stack/rag/corpus.py +133 -0
  134. pen_stack/rag/embed.py +98 -0
  135. pen_stack/rag/ground.py +131 -0
  136. pen_stack/rag/index.py +53 -0
  137. pen_stack/rag/llm.py +215 -0
  138. pen_stack/rag/qa.py +105 -0
  139. pen_stack/rag/retrieve.py +48 -0
  140. pen_stack/rules/__init__.py +9 -0
  141. pen_stack/rules/evaluators.py +318 -0
  142. pen_stack/rules/loader.py +31 -0
  143. pen_stack/rules/schema.py +99 -0
  144. pen_stack/rules/solver.py +43 -0
  145. pen_stack/rules/spec.py +78 -0
  146. pen_stack/safety/__init__.py +21 -0
  147. pen_stack/safety/audit.py +90 -0
  148. pen_stack/safety/gate.py +58 -0
  149. pen_stack/safety/pfam_scan.py +157 -0
  150. pen_stack/safety/policy.py +69 -0
  151. pen_stack/safety/redteam.py +71 -0
  152. pen_stack/safety/registry.py +255 -0
  153. pen_stack/safety/screen.py +59 -0
  154. pen_stack/safety/standards.py +141 -0
  155. pen_stack/score/__init__.py +1 -0
  156. pen_stack/score/recalibrate.py +77 -0
  157. pen_stack/score/therapeutic.py +85 -0
  158. pen_stack/server/__init__.py +1 -0
  159. pen_stack/server/api.py +647 -0
  160. pen_stack/spec/__init__.py +18 -0
  161. pen_stack/spec/clarify.py +42 -0
  162. pen_stack/spec/extract.py +406 -0
  163. pen_stack/spec/resolvers/__init__.py +17 -0
  164. pen_stack/spec/resolvers/cell.py +51 -0
  165. pen_stack/spec/resolvers/chem.py +32 -0
  166. pen_stack/spec/resolvers/feature.py +36 -0
  167. pen_stack/spec/resolvers/gene.py +43 -0
  168. pen_stack/spec/resolvers/locus.py +29 -0
  169. pen_stack/spec/resolvers/phenotype.py +37 -0
  170. pen_stack/spec/satisfy.py +114 -0
  171. pen_stack/spec/service.py +33 -0
  172. pen_stack/spec/writespec.py +252 -0
  173. pen_stack/twin/__init__.py +14 -0
  174. pen_stack/twin/calibrate.py +61 -0
  175. pen_stack/twin/data/__init__.py +12 -0
  176. pen_stack/twin/data/position_effect.py +245 -0
  177. pen_stack/twin/mechanistic.py +147 -0
  178. pen_stack/twin/outcome.py +132 -0
  179. pen_stack/twin/position_effect.py +454 -0
  180. pen_stack/ui/__init__.py +1 -0
  181. pen_stack/ui/app.py +713 -0
  182. pen_stack/validate/__init__.py +1 -0
  183. pen_stack/validate/adapt_demo.py +69 -0
  184. pen_stack/validate/agent_eval.py +117 -0
  185. pen_stack/validate/bench_adversarial_tasks.py +118 -0
  186. pen_stack/validate/bench_coscientist_tasks.py +60 -0
  187. pen_stack/validate/bench_graph_tasks.py +64 -0
  188. pen_stack/validate/bench_rule_tasks.py +84 -0
  189. pen_stack/validate/bench_trust_tasks.py +92 -0
  190. pen_stack/validate/bench_writetype_tasks.py +101 -0
  191. pen_stack/validate/blind_gsh_discovery.py +261 -0
  192. pen_stack/validate/cargo_directionality.py +57 -0
  193. pen_stack/validate/closed_loop.py +63 -0
  194. pen_stack/validate/durability_baselines.py +185 -0
  195. pen_stack/validate/experiment_design.py +65 -0
  196. pen_stack/validate/expr_controls.py +39 -0
  197. pen_stack/validate/forward_hypotheses.py +104 -0
  198. pen_stack/validate/generative_design.py +62 -0
  199. pen_stack/validate/guide_qc_demo.py +69 -0
  200. pen_stack/validate/heldout_celltype_expr.py +32 -0
  201. pen_stack/validate/immune_calibration.py +133 -0
  202. pen_stack/validate/intent_specification.py +82 -0
  203. pen_stack/validate/known_biology_expr.py +38 -0
  204. pen_stack/validate/offtarget_energetics_eval.py +144 -0
  205. pen_stack/validate/out_of_scope_refusal.py +82 -0
  206. pen_stack/validate/outcome_calibration.py +194 -0
  207. pen_stack/validate/outcome_prediction.py +76 -0
  208. pen_stack/validate/paper3_benchmark.py +165 -0
  209. pen_stack/validate/paper4_real_validation.py +144 -0
  210. pen_stack/validate/paper4_validation.py +82 -0
  211. pen_stack/validate/protocol_safety.py +62 -0
  212. pen_stack/validate/safety_screening.py +72 -0
  213. pen_stack/validate/selective_prediction.py +104 -0
  214. pen_stack/validate/seq_vs_measured.py +134 -0
  215. pen_stack/validate/target_site_controls.py +65 -0
  216. pen_stack/validate/uncertainty_eval.py +244 -0
  217. pen_stack/validate/ungrounded_baseline.py +234 -0
  218. pen_stack/validate/within_locus_ranking.py +84 -0
  219. pen_stack/validate/writer_recovery.py +91 -0
  220. pen_stack/verify/__init__.py +5 -0
  221. pen_stack/verify/proof.py +206 -0
  222. pen_stack/verify/schema.py +53 -0
  223. pen_stack/verify/service.py +191 -0
  224. pen_stack/web/__init__.py +18 -0
  225. pen_stack/web/guide.py +110 -0
  226. pen_stack/web/llm.py +393 -0
  227. pen_stack/web/llm_provider.py +119 -0
  228. pen_stack/web/router.py +119 -0
  229. pen_stack/web/server.py +96 -0
  230. pen_stack/web/tools.py +197 -0
  231. pen_stack/wgenome/__init__.py +1 -0
  232. pen_stack/wgenome/chromatin_seq.py +83 -0
  233. pen_stack/wgenome/durability.py +108 -0
  234. pen_stack/wgenome/export_tracks.py +52 -0
  235. pen_stack/wgenome/features.py +82 -0
  236. pen_stack/wgenome/genotoxic_blocklist.py +88 -0
  237. pen_stack/wgenome/gsh_baseline.py +154 -0
  238. pen_stack/wgenome/mesh_features.py +61 -0
  239. pen_stack/wgenome/offtarget_assay.py +80 -0
  240. pen_stack/wgenome/offtarget_bridge.py +47 -0
  241. pen_stack/wgenome/offtarget_cast.py +97 -0
  242. pen_stack/wgenome/offtarget_data.py +148 -0
  243. pen_stack/wgenome/offtarget_enumerate.py +274 -0
  244. pen_stack/wgenome/offtarget_integrase.py +155 -0
  245. pen_stack/wgenome/offtarget_nuclease.py +123 -0
  246. pen_stack/wgenome/offtarget_paste.py +41 -0
  247. pen_stack/wgenome/offtarget_predict.py +282 -0
  248. pen_stack/wgenome/ood.py +135 -0
  249. pen_stack/wgenome/providers.py +278 -0
  250. pen_stack/wgenome/safety.py +69 -0
  251. pen_stack/wgenome/structure3d.py +212 -0
  252. pen_stack/wgenome/uncertainty.py +250 -0
  253. pen_stack/wgenome/writability.py +72 -0
  254. pen_stack-0.1.0.dist-info/METADATA +401 -0
  255. pen_stack-0.1.0.dist-info/RECORD +259 -0
  256. pen_stack-0.1.0.dist-info/WHEEL +5 -0
  257. pen_stack-0.1.0.dist-info/entry_points.txt +3 -0
  258. pen_stack-0.1.0.dist-info/licenses/LICENSE +21 -0
  259. pen_stack-0.1.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,259 @@
1
+ pen_stack/__init__.py,sha256=CkysPV33Q18BvM8sNMTYpvR7tVlWdIi5o9sJjlB02uk,80
2
+ pen_stack/_resources.py,sha256=afU-9j0i9of-vuo2QCmQpxDvJdKdmTpkfTRS9fe_enk,1578
3
+ pen_stack/cli.py,sha256=0lefZD8vQoYS9Qsbf5toW7mjv9ydIVzXxgea5s0FL9g,5694
4
+ pen_stack/active/__init__.py,sha256=V4C5oU8oHtfSJqLphHeDGrpjSd2COAzmm8RGGqbKBh8,992
5
+ pen_stack/active/acquire.py,sha256=hsDmeW7qC6eTvLoqRM3oDU9SJalziZLsprzVHylnPSs,10097
6
+ pen_stack/active/brains.py,sha256=lxB8HAV7QpIdl5k9soFBrY1FG42vcbdFdz63uFlvpVQ,4043
7
+ pen_stack/active/campaign.py,sha256=BZ5BGCud9K_BBok5NsDhOtPPrh9AS8F9GaeWNnoiX_4,5407
8
+ pen_stack/active/design.py,sha256=OKLQNaAEwOQP79lEhZaZEPsKpu6RGLtqZKU7r4mjMVw,3868
9
+ pen_stack/active/validate.py,sha256=yiQCoSM2brYsPruS86aHW4qD7xRg5df9S3rcTrCgkE0,5020
10
+ pen_stack/adapt/__init__.py,sha256=KYCTlnlgwJqg2YPYa8mTAzUYjdgsPuBacY3uHy7yPl0,778
11
+ pen_stack/adapt/finetune.py,sha256=6f5Beg1fsude4WaM9uhNabw2gc_SOZSOTkTqSUtqJZg,1453
12
+ pen_stack/adapt/ingest.py,sha256=pwciuld4xQqYPJlPe6b3hGJKmhOebqopgjqdHDYOay0,4424
13
+ pen_stack/adapt/pipeline.py,sha256=ty5J63fgeUjMNiNgfYGIACrNp6XQhalsRbunTXMI5l4,5379
14
+ pen_stack/adapt/recalibrate.py,sha256=Yaj67Cjh41TP3Gcz5wjkpeVAmefI4ZZvh8m8xOqjWp8,2390
15
+ pen_stack/adapt/report.py,sha256=o8qc7EYJYeosmroLkXAXbHnTqF4lwyE5c3lOyOZ-AiE,6327
16
+ pen_stack/agent/__init__.py,sha256=fodoBJQKY3AVEWsteoumJqhc6IkyaF8dfaX1J_mdtBM,55
17
+ pen_stack/agent/cite.py,sha256=ihvq62DHDZMy1PbvWopwA7-bsnxFhFrBz-ROHYAHFaM,9263
18
+ pen_stack/agent/co_scientist.py,sha256=xAnWc2MYHBXEjiwqi0-zCwLH9r2-z8K5rIVv5Foww5g,15823
19
+ pen_stack/agent/epistemic.py,sha256=RbeH4XsJQYgLjStLDOkbQOmLhI8GLxS62eZBenFqpOI,5854
20
+ pen_stack/agent/guardrails.py,sha256=W7gOrshFNJBJiqZHlREp8ac5hDooHJPePd6EUpi00Kk,3465
21
+ pen_stack/agent/mcp_server.py,sha256=Qf4C8x_cxL7QWBxTCCns3v8UsHCkAzTaEbN7FlzuVwQ,12015
22
+ pen_stack/agent/orchestrator.py,sha256=7ciAg_DXaoqBmdpbzxTplicLPDVLj6HcNLgs33MSOOU,5940
23
+ pen_stack/agent/orchestrator_live.py,sha256=CzUUxLVqEVkg8TnijpsEhesUaRi0N4GpCvRTlspNgBs,3315
24
+ pen_stack/agent/pen_agent.py,sha256=lrwOZwCiT_DKqTeAcKYpm9guIaCxKCM0nmQKs-5uXZ4,13610
25
+ pen_stack/agent/scope.py,sha256=tvkMk-tFOK9QmQLy63PtqEo71zjl4v511PS_O1cXSHQ,2764
26
+ pen_stack/agent/tools.py,sha256=2j_q4Vp6AEcCyS6SE5AliSrGyYhiTA2fZlFwZADrM9E,6588
27
+ pen_stack/api/__init__.py,sha256=pq3rk17PTQK3Xgfr8b5Mf18pz9p3oPr33kEmJh572Ls,642
28
+ pen_stack/api/manifest.py,sha256=PTtK3B2tv1ZarmS7YwSD_VB_vqH0wszGxa36N8tCA4g,11983
29
+ pen_stack/atlas/__init__.py,sha256=7aFTZzYRcoYNbz78rZm3p-2fUIBzsSMrKXJeTaQ41vM,56
30
+ pen_stack/atlas/atlas.parquet,sha256=P2c6JfjWJiNuvbK3ysSxzerxTPrSATrD5l1KJtvlPTc,927403
31
+ pen_stack/atlas/build_wtkb.py,sha256=trrBRA1-21WhQSz1Pkn_7054QTd1nINt2f2_9WUqJWU,3144
32
+ pen_stack/atlas/crosslink.py,sha256=1n6dYnabxFuUTX4MZKHqoTv658-2MHNNSdhLUFbOB4M,8423
33
+ pen_stack/atlas/expand.py,sha256=K_abXlHh_fSQ0RBsGpoSz6c6F8yxG7Fm7Hd42Y6n8eI,8849
34
+ pen_stack/atlas/guide_design.py,sha256=OwBAKCSfuYE0hu76aMcXl6FNUAh1l4zZAoqvXZI7kC4,10804
35
+ pen_stack/atlas/schema.py,sha256=FlAiAoKOFZ7m1DORVFZ41aG4J8d_3FfomlFNbS49Ooo,2300
36
+ pen_stack/atlas/scorecard.py,sha256=XypiEtFc0dRJypnz3B6qlWSXifPQjk_lqm40mLgOmh0,6081
37
+ pen_stack/atlas/scorecard_v3.parquet,sha256=Y-NopM-NGVL9G5P_j2Al5BsqozJKbKSd8M4DVUJymvg,61527
38
+ pen_stack/atlas/universe.py,sha256=OmeXybCBic-bOL3NtoeS2rNIlogOcvF8T7LtpgcMzIM,3213
39
+ pen_stack/atlas/universe_v3.parquet,sha256=G2CoSu4uibHymYGXbt1Lx2B3HKapGhev4yvbAECi5Mg,58663
40
+ pen_stack/atlas/variant_propose.py,sha256=-pynda8rm8Vsl0DnwdAwVUyDslBC-FzHIAm3-o6Ym08,7987
41
+ pen_stack/atlas/writer_efficiency.py,sha256=xBH7sxI9P7xN4ciB2hwSJDi0WHebwhjO9bya862Lkw0,14813
42
+ pen_stack/atlas/writer_predict.py,sha256=DMZ7C6-4m1aGd2aSMO8RImbW3sVJlAc6Dq6mn2B-VLQ,12402
43
+ pen_stack/atlas/writer_recommend.py,sha256=HG1Lve5R-Oxh6IZaAgH0wCPQQffykEREFgbtB8aDdyo,11200
44
+ pen_stack/atlas/writer_verify.py,sha256=GPUyn5I6ahCcijtePFxq_eVoe2NkAezFSaGuIm3Plt8,9821
45
+ pen_stack/atlas/wtkb.parquet,sha256=8jDTiuI7dw5Z7odJedGRwd4B4s_IeFZw6TJ_fu7hdxQ,16941
46
+ pen_stack/bridge/__init__.py,sha256=TidAW5n5sciKm0xQdtFxQjdO7EqvN0nf2pjoNm_44lI,102
47
+ pen_stack/bridge/activity.py,sha256=yUx0yF-3tx5DQJ2nSVB8dnTGLZSZQoCF2Bw0Kl13r_M,2628
48
+ pen_stack/bridge/cli.py,sha256=L8OWirRciwIHJD16428yotC3jRIPF96fIPmMCLNIqck,3033
49
+ pen_stack/bridge/fold_qc.py,sha256=h6GeeM38AOg4BiNln6WMvWUYSrVcCDwS_GabqtNOaG8,2482
50
+ pen_stack/bridge/guide_qc.py,sha256=P1o1EoVMvClg111H4no8kUgslauJcm-cE2-6c_PFSPs,4688
51
+ pen_stack/bridge/ingest.py,sha256=hj5zurLQWTQJo3eQNu4M6UwzapyxxBVlpLbp1EPTY3c,6038
52
+ pen_stack/bridge/offtarget.py,sha256=uk8Oi1zqFhxk-KQUVCaflI5it7BXDzGcLV92jfqrGc0,9931
53
+ pen_stack/bridge/offtarget_energetics.py,sha256=GfsHNkZNQx9I0gvACtHrd4SYxWT5VWPYa-fgUbEg7hw,5222
54
+ pen_stack/bridge/ortholog_screen.py,sha256=N8vIGR2Pcxsd43j-8OzGhMPIR7KWB9qORVPsjb83wR8,3409
55
+ pen_stack/bridge/pipeline.py,sha256=01DfqqrfQn8nnk6f50EwbXjKy_yG6g_yZTsFEZKxG7s,3772
56
+ pen_stack/build/__init__.py,sha256=G-D1ig2lKvOUq4G3FCtMBcj4wkdk2zjZ76l8EXDobHc,950
57
+ pen_stack/build/cloudlab.py,sha256=u-0o7CPn2F52J12-El8rG5L9GX5IF_QoVZd9GTar2Cc,3991
58
+ pen_stack/build/ingest.py,sha256=vo6FEdhLr9ry67ZVIp804XHY6Fi6Dv7EyMJH6eA1ZR0,2514
59
+ pen_stack/build/protocol.py,sha256=2yo8P_CqdoXdolWsWy2o6aSOlnA1SPhxk2OOk8ngf9Q,3950
60
+ pen_stack/build/simlab.py,sha256=VSTVZmJphhE_UlrKHxgYvfBvjyAoTdT7yIp9kFeJ0wY,1478
61
+ pen_stack/data/__init__.py,sha256=t9reNpgYXK_89maB1aOCQtj8Da7MWS2Z8yH1ohSJVYE,50
62
+ pen_stack/data/encode.py,sha256=MBh1Uz48AxaEv90H2qgPmnmF-cfKtBJrxjTtdAdd700,3122
63
+ pen_stack/data/genome.py,sha256=vcF1ev-p9HQPe22CLeD9rs58IaIO4vDolFDJVLQz_ag,2457
64
+ pen_stack/data/ingest_chromatin.py,sha256=hW56mnnD-vUcN717cAmFYfLFaian4WO15OvjcMlSp2s,4522
65
+ pen_stack/data/ingest_integration.py,sha256=h6NXWJMb-xIU0190bb8IB7Qqpqn4Q_VXUQhHFaUvLoE,4976
66
+ pen_stack/data/ingest_safety_annot.py,sha256=0l2WOKbkynoS_A4bHbcdaZpKhr_hrleBEUCNDICOrSU,9751
67
+ pen_stack/data/ingest_trip.py,sha256=AXMBeEGXihZyIfS3PJ99g9cfXA6HrX5VT1yUNM6pGSU,3710
68
+ pen_stack/design/__init__.py,sha256=_e2hWfkEdtPDkBDon1NtknqPJDsAYWCcXnZFa2buRS0,742
69
+ pen_stack/design/capsid_generate.py,sha256=FA6mHfyBtlbprjTuuJu6m5QvDnsFTZJF2McX0BV7tek,3710
70
+ pen_stack/design/generate.py,sha256=NLHSAjHiq6fQPiH_1Wi6qBi1JTpDpD2fsgk_tAm82Cs,3669
71
+ pen_stack/design/pareto.py,sha256=-7_XAMSD8uxTzGc47e2UAuft3Wv0Br88ExqVzXMksZs,3403
72
+ pen_stack/design/space.py,sha256=INtIwxPw2w0vbT6wDWovJpX0UR78yHeuHkhUivBnM2E,7731
73
+ pen_stack/design/writer_variants.py,sha256=hbGMw8e4IL1m_BSknYulNcA-jA22xJWPiBGJCQTeaxc,8145
74
+ pen_stack/env/__init__.py,sha256=_lBC7H3silHHzOt-n_74AGv4GxuqX5m4hHhYUi5Jtsk,91
75
+ pen_stack/env/genome_writing_env.py,sha256=cXZhqECZsD2Frm-_HKf7BDz_6vECUG4nAJ5wPrHaVEs,12541
76
+ pen_stack/env/policies.py,sha256=uieDgp5u2HBKJHJiFCJiMaf2kRQ9OIAaxxU5pwQ_oSc,4512
77
+ pen_stack/graph/__init__.py,sha256=0z3TKzCkwLicqVj_kWJbNyxT08U_QD9Qk6G4RFlt2Ik,958
78
+ pen_stack/graph/build.py,sha256=Ei19VJFeWtyu1LG16Eoq8QR8_gTDOh_KR5dhredY5hQ,7500
79
+ pen_stack/graph/cell_types.py,sha256=ZYwMqYks2zxKAMpRIiJwgL8f61oSNjiGrwrhDU3eb6E,2593
80
+ pen_stack/graph/ingest.py,sha256=fYA8l9_uvddp2YmPEA5RCo32cPJ3nazbNA3ZWJhsQDw,6802
81
+ pen_stack/graph/query.py,sha256=359iVDvPJO52HnNzHmJOp7dCvvPG49nzyebgQyGqdU8,8006
82
+ pen_stack/graph/schema.py,sha256=tqIP5m7dSm-I2UbTs0J4pAyN9m83NI5FLGURrWc6RpM,4205
83
+ pen_stack/loop/__init__.py,sha256=V6IF958lyVl7MiN4_1p1U8cwzIxCpYTfKAf3IStjdsI,932
84
+ pen_stack/loop/continual.py,sha256=NDFzdRmVYo3Qh-xS7X62iSffXzWGnBOa71rMxSqsOQw,3092
85
+ pen_stack/loop/cycle.py,sha256=HckXGdPVSeGwcURhQTlPSmBH8Kw6qfq-80U9bjXb-gA,4472
86
+ pen_stack/loop/drift.py,sha256=ZB1p2aoxee77e0M6wxvbzwV5MZG8PKMmR4j3dnLk_z8,1972
87
+ pen_stack/mech/__init__.py,sha256=HiAL5p_d5hPGWzZHmBrCDrhWatHyXAi9Sblj_MOXg6w,54
88
+ pen_stack/mech/classify_atlas.py,sha256=gRN6_ZpJMDJrZPZUXOx4SxIqQfSBkQIf7k5u5n0drAM,3248
89
+ pen_stack/mech/pfam_whitelist.yaml,sha256=UueJVmBUpRc2iz0x_ItXjFSCoN4p1hGgYl8GmcmvCEU,13280
90
+ pen_stack/mech/whitelist.py,sha256=oaSecYE9tufRVwXEnQN48bCCgmlazTxeHrlNkoYj2JA,3287
91
+ pen_stack/monitor/__init__.py,sha256=KkAVfylakxmWsipPahemf4r-nXe5akIqE4sKx-_y8_k,57
92
+ pen_stack/monitor/europepmc.py,sha256=aA_NRRKmS3MTrZhyk9fnYUTOyt8cEVFofj48Yqlas0I,1371
93
+ pen_stack/monitor/run.py,sha256=zIn9LUh4dzLiBYylDgFUY1dJ2qEcp5YUklX0UrAgYXg,2417
94
+ pen_stack/monitor/triage.py,sha256=sjpaP0rW8D9M68bWzvoAuPoiYQ8WbI3GC41_7zs2KHs,2599
95
+ pen_stack/oracles/__init__.py,sha256=GUXlQUKfCJDumvwR79P8Bh0vYp3JHSAIAOQ5xXfxloc,3938
96
+ pen_stack/oracles/affinity.py,sha256=cYK9iWKmwpI2Ke1wCKXC_uEc8RJNQl8JSC55dgEs0ek,6561
97
+ pen_stack/oracles/cache.py,sha256=J3Os_GVOSLYUwLOGzf_cNKNQNwETd4K47DJ5tmOQFCQ,1827
98
+ pen_stack/oracles/energetics.py,sha256=_eR152I0M995Oa3NyAPDmfFZYOtmhZog3fLzA7HyM0Q,1962
99
+ pen_stack/oracles/genome.py,sha256=_2dz0ctpUwIGPlPORLX9WwJD5TbuHi79hE1GRgiR5Uc,9593
100
+ pen_stack/oracles/protein_design.py,sha256=qZ4834kuyCN4uf9MjL4kKEWxNsOHYIuH7u2T4RcatCE,8744
101
+ pen_stack/oracles/reliability.py,sha256=rjgl0nsEGBtmytuFCxG3I3LlOcDheZcHOPU73_sR-J0,3147
102
+ pen_stack/oracles/rna.py,sha256=HmzESzii9cxLhzgQDuCAQwXBTHiI-JHrE7Hjxx3c5LU,1640
103
+ pen_stack/oracles/schema.py,sha256=PjyBgYVGX5z2ojjBqvy2DUjPSecOmMVICyG0jSRz1Cc,4366
104
+ pen_stack/oracles/status.py,sha256=4MptGCD7CnONUzs10AW-eVruZ_q5tOWnY8aFZwE3XXM,5166
105
+ pen_stack/oracles/structure.py,sha256=Q11QLgETMblB5eLZxyRK4Qo6aOeZliYbFVCdej4PVZI,2471
106
+ pen_stack/oracles/structure_run.py,sha256=ID-Yo3eQLKyLRCI08L6kqb4xqI1oeqXrSPq4pUsdgeM,4017
107
+ pen_stack/oracles/vcell.py,sha256=GasA2XPcwZ7ZX2FTEEIipbKvwt_wXCR8lPmxm24AIyQ,4896
108
+ pen_stack/planner/__init__.py,sha256=esjiiVelhl13MPZvXoUOeCA_X35ImJu4lCPOjpNJJgY,58
109
+ pen_stack/planner/ada_risk.py,sha256=Y3q1d_c9QPDWdWtkU8M43HaCD8c3wzNIAK0DqJmcjlY,4005
110
+ pen_stack/planner/antipeg_oracle.py,sha256=2L3Fjh3bVOVbnffpjHoPCOfs-RQTX4ByEdekmEdFToE,3838
111
+ pen_stack/planner/capsid_epitope_oracle.py,sha256=tfvBLqUIdEKN8CJrToL7a6QLH5S05Mu3L0b-HqlCkDo,7880
112
+ pen_stack/planner/cargo.py,sha256=9gzmBUKkh7_cRXJntxJcX_McDSvoNArnIJ46wOOD770,2682
113
+ pen_stack/planner/cargo_polish.py,sha256=fsRzz8skQ2sA75-BVkDXnwS-QhLKCnf0W21YIwcUqTk,6340
114
+ pen_stack/planner/chromosome.py,sha256=sbVnJbqKTTa07sOjraVA88mAWprZsc3bMsdpiA2mSsQ,5855
115
+ pen_stack/planner/delivery.py,sha256=J2fna1G5OJegJyz86qAsMcd62W-Bev4m2FHdEWtbUQI,2210
116
+ pen_stack/planner/delivery_constraints.py,sha256=AnoD6RE71q3lUHCErChrI0tto3BL-dW-0aR1ZWccwRk,4614
117
+ pen_stack/planner/delivery_immune.py,sha256=7tLcCBVC5WNO6Fv-xprXYEA9pkDmYms1T4PV3ETt1_w,3947
118
+ pen_stack/planner/delivery_immunology.py,sha256=ipqRY_Bu_sCV86_hcrV-0S3X-WhTAGZcrQWo56SYxW0,14257
119
+ pen_stack/planner/delivery_predict.py,sha256=IcFFdlspWrCpQ99pGZYibYJ6tzkVYSNWdgYgkYBptiE,12623
120
+ pen_stack/planner/delivery_vehicles.py,sha256=ij9VaK89NlP50IEK9JuHUTWvCb173iBF3Z4EvopYO7w,1507
121
+ pen_stack/planner/genotoxicity_oracle.py,sha256=8mIFYRkB3_O7DkhTu2KlfLtjVkocSrpgrk7IfyJUJ2U,6068
122
+ pen_stack/planner/immune_mhc2.py,sha256=-NNju-O8HGUYb9G6fasDV3S8K9_GVXNW4Z07RsCwZAQ,8304
123
+ pen_stack/planner/immune_profile.py,sha256=ASm9BfnWQ5c9bilAZp0E0eyLtsFLIe8ioEzTOLxYstc,19172
124
+ pen_stack/planner/innate_sensing.py,sha256=e9N44vkW1FJPhjwUVj8A7EcORVQorTSufox4bD3lQbs,7814
125
+ pen_stack/planner/multiplex.py,sha256=Y_hiyFAmpKU7354w_DEu7nmL2OeYOSIm9gJgc21NRvQ,5924
126
+ pen_stack/planner/optimize.py,sha256=dVMtBzswzQojSut_b8NTPL_92bbjrHvPievQV9Jl3X4,14256
127
+ pen_stack/planner/pipeline.py,sha256=EQUW7eMtJthVagyBHv3YZZpK16pS88YocEJntleHEM4,4227
128
+ pen_stack/planner/report.py,sha256=Wpjlx1S3zy5HnCdN-3R-aTnb-9dk5HL4PoiV9HNGEgM,1270
129
+ pen_stack/planner/router.py,sha256=LmmpDJWy344_l4ynI06dpGoDMsTKByYl30FcL3UJ4e4,2703
130
+ pen_stack/planner/seroprevalence_oracle.py,sha256=QvudQhKOQzuEKF4vFfVx1Ywb7ICoSQKFYfrA5G45fyU,4848
131
+ pen_stack/planner/target_site.py,sha256=VHsQGN7Z7CDISXjOAAmHqRzB18El8XIITICZgDbWqY8,6488
132
+ pen_stack/rag/__init__.py,sha256=EbVpyeAKamLIsKxeO8Tg0_uo3KIaAvVyrohGI6_fs7g,53
133
+ pen_stack/rag/corpus.py,sha256=H2JSVqWYVCKh0ZjM5tYap-0HuokPG7H8a--fI9g6aEQ,6063
134
+ pen_stack/rag/embed.py,sha256=K6wHwnAbcGAuw-qJ8pzyJG3Sn3OSxb934zEkxSwFgzI,4870
135
+ pen_stack/rag/ground.py,sha256=MYnvbH36tQsv41VuNczGb9xt6VgCeU4KIEdL2b59y1o,8366
136
+ pen_stack/rag/index.py,sha256=LuZbwfaihgUWQyUjg9nFGzc3qXG1zsEaiiRJKOKcG8g,2433
137
+ pen_stack/rag/llm.py,sha256=GDdPmaXRd9SxR9jEDjBcsb8VnxYpoQ0YTHpfrSaQp94,10470
138
+ pen_stack/rag/qa.py,sha256=CJv7EPc6Td1N5h6fpYFl2QiDiSV0TiaXP5azF4F4Bh8,5309
139
+ pen_stack/rag/retrieve.py,sha256=6AQnlJK58JvNXeHDcoDDt9vu0FzWEXKhseIiUMNUm4Q,1877
140
+ pen_stack/rules/__init__.py,sha256=tfwk1Cou-xphiIatx1mMXk6Gb1rOM0lzOcQngBNMhYQ,667
141
+ pen_stack/rules/evaluators.py,sha256=P4h4W3YzT_6_4XCH3tGDMnZ0IoJYv3jwa9BO9nUvp1g,17158
142
+ pen_stack/rules/loader.py,sha256=FMhf1UFljZl1un--RjW1QdiGopQayTQVDJUWPNmYpQg,1070
143
+ pen_stack/rules/schema.py,sha256=sNhoNUniFTNfUGaXrYMGLO_sFJVqskIs29DkU_gKtOY,5030
144
+ pen_stack/rules/solver.py,sha256=-iZGD9zA9gIObzqZjte79D70kTLgA6B65W7tHxmULig,2158
145
+ pen_stack/rules/spec.py,sha256=75NNjoD87fDzP53PqO8qfLetk8jBRpaKmrFHu6CpOnY,3923
146
+ pen_stack/safety/__init__.py,sha256=uWxUO6x1r52zxvkHw5KYSBud0JLNvsalESjT9tIfZzA,1083
147
+ pen_stack/safety/audit.py,sha256=tn2S1OJRx2H8-NW0QFbF4nK7rXKsCJZEZFxJZ0I_OoI,3362
148
+ pen_stack/safety/gate.py,sha256=QqZxRPV_V9n9tFeF8s6elLlkePzhDIwpOa80Z2ErhgM,3398
149
+ pen_stack/safety/pfam_scan.py,sha256=GMo6i9Crbt6WTaXyLtk-Itqw6jN5HJX2lisWu8xb9_I,7999
150
+ pen_stack/safety/policy.py,sha256=v75iOAme01NM1xad7g_ivOLRgrdsXgGz2R-cQW6pw2Y,2772
151
+ pen_stack/safety/redteam.py,sha256=HLzFTJOrYgpB3ajx_vg7TgoQwEXaWDATIIuoXI5zmQY,3524
152
+ pen_stack/safety/registry.py,sha256=LpwofcKobsZET-reXTvXe9YCs6rGnkJnREezk06vPEY,14207
153
+ pen_stack/safety/screen.py,sha256=iU9XQdMRIYU2OW6O2mr9eXTIto3O_VNuyCGysPHd2NM,3210
154
+ pen_stack/safety/standards.py,sha256=RGZm8Vss_1rvCEqYsO2l9l_OyqTkfra-5kHQIMOnNeM,8090
155
+ pen_stack/score/__init__.py,sha256=M97GCoJFfL25JewZaGaDXBWlAeGVv-NTMdeXDEt99XA,55
156
+ pen_stack/score/recalibrate.py,sha256=dqyEorC-_YRO56X_cPFe2LSfFWDwVKXrgh5nIziPrvQ,3080
157
+ pen_stack/score/therapeutic.py,sha256=7WtxnKIzKcbnhR61iwn03Z6AToMtIMpiFpX6DI6Kx4A,3577
158
+ pen_stack/server/__init__.py,sha256=9a1uSEHj2jsSVfetcqvvdKDzG0LjXsFW16_WNkKSDUg,56
159
+ pen_stack/server/api.py,sha256=sxg0UtX8k0EKW2muRTBftlmbQH9bPqkXNfk1aBd7E_s,37778
160
+ pen_stack/spec/__init__.py,sha256=aAMaNYkMOxWdeymsFR2LN0_x6RdxDDl7otAALfHPzRY,663
161
+ pen_stack/spec/clarify.py,sha256=5zMHS1N7UqO13VQsSPMdoI_FzBKn_rQfMMVFNHYN1Q4,2137
162
+ pen_stack/spec/extract.py,sha256=dsXofkdUlIm9w-dMF7C5MHtUqbkbJKFdzxhbIWvaWhA,21735
163
+ pen_stack/spec/satisfy.py,sha256=TFTbBNZIVXcAi6H83PsZsrQIPIs06Er1HhEHmeKvaLE,6364
164
+ pen_stack/spec/service.py,sha256=t4BqSzpSqhl4srlNkL8SmY6_OJwNpTfzbpJlgRtiB-E,1559
165
+ pen_stack/spec/writespec.py,sha256=M5_igTvi3R6rUk-W-9lwkHGPpFMbENhfgem-9LSvL2A,13518
166
+ pen_stack/spec/resolvers/__init__.py,sha256=l4SkmuKPsCcRwBWIiOihVnWmzqGavaaT0ghnueqIHgo,979
167
+ pen_stack/spec/resolvers/cell.py,sha256=o2YIZC7G132fmc7zb2BFVcUP_RAwvFL_YeYKB0R8gJE,2900
168
+ pen_stack/spec/resolvers/chem.py,sha256=Qd6KI1XcoOpwkBMuERDelHH5JJgkfHvwlrpqSwRqeR4,1501
169
+ pen_stack/spec/resolvers/feature.py,sha256=NPYrdykennlfDzVW7rYMnxwNPx0WtVBl68MqPgTrW4Y,1796
170
+ pen_stack/spec/resolvers/gene.py,sha256=8FFzQ8jfoR0iGzUlO0n5_Jr0qgt7xaY2S2cCLpNYmls,2437
171
+ pen_stack/spec/resolvers/locus.py,sha256=8pjWaJc5_pMbjO9kTdFDCngFUOGDdu4WNK-VP-Y_cC4,1413
172
+ pen_stack/spec/resolvers/phenotype.py,sha256=vg53qVUA4cOS-E34b4r3RxPpqB5ZQUXVF27WsGKDVuE,1951
173
+ pen_stack/twin/__init__.py,sha256=EAtSnM8Uks4UHGqtKlT-PkkEnHbHEKfoxp0vJ54FMd8,816
174
+ pen_stack/twin/calibrate.py,sha256=ZB4T_sE_hwAozwRBn92GPJJmTGQ_KdywUxP9F8eN_l8,3061
175
+ pen_stack/twin/mechanistic.py,sha256=FTugE29GVYr0iI0hqBKxalWeXAzqG9sKxKmIkduLptM,7991
176
+ pen_stack/twin/outcome.py,sha256=6SM_6c0Qrm9PwnMYPGFIMVud2UiWdbFpDS2D2jSv9IM,8284
177
+ pen_stack/twin/position_effect.py,sha256=eA-RVj595kAwlllw21NX8BM2v4dEB_fCQybIBSGRIt4,26318
178
+ pen_stack/twin/data/__init__.py,sha256=uVvkKgnj1I1MvBD29Jr5pMxxUf3agpJSSotWxoy2fCw,315
179
+ pen_stack/twin/data/position_effect.py,sha256=LbZ6BjRRcl3plqZoJSuviTUyjy2EvNPoop8XNdMYOAM,12192
180
+ pen_stack/ui/__init__.py,sha256=Roz9YjrU90QbBh6xBi9q2sbROMnqGv2cRD7Us9YPmHY,52
181
+ pen_stack/ui/app.py,sha256=jfoWCIw1AIYsv7VcLVqaQQvoR_D3MVO0IChWJJdE3J8,43347
182
+ pen_stack/validate/__init__.py,sha256=DgFIcLOxNlb6X9hRL4hTJVUlJpJde6OP3sg3Tz2zroA,54
183
+ pen_stack/validate/adapt_demo.py,sha256=-XrQn2cn9AID_b25KWtO94Ka0VOjvtnLZLkaD4T98fg,3848
184
+ pen_stack/validate/agent_eval.py,sha256=al-jH4k7TmwH8Bki7jfPgGyTFNPxxeIWmiKs0UV5s0A,5955
185
+ pen_stack/validate/bench_adversarial_tasks.py,sha256=pkER2K6bxSMPSkhhYhDoE_8euIQLd0PEq1qzoHXHqCo,6832
186
+ pen_stack/validate/bench_coscientist_tasks.py,sha256=-Ck4_qi27CmeHDpfYSLqxosLht2MKSZqALJSF27rvp8,3419
187
+ pen_stack/validate/bench_graph_tasks.py,sha256=QAtnADqH5RchISX7cfNgJoBGqat1kydydBVfZjKuQ6g,3033
188
+ pen_stack/validate/bench_rule_tasks.py,sha256=f8HORITkoT_Yq6F51Rn0bfdztTTV1wEBUrwVX7rsvfw,4955
189
+ pen_stack/validate/bench_trust_tasks.py,sha256=SAYEaNACwnYOK3Z5cC_42rMVrStMWnA4jz5jqD_VDww,6095
190
+ pen_stack/validate/bench_writetype_tasks.py,sha256=VY9HO1Nkac3R29SkMcWSwKTuwoIsB3_GE43MGTYyHAY,5440
191
+ pen_stack/validate/blind_gsh_discovery.py,sha256=Hll7_VBn1Jxtb2u73T28IA35zNsVtI2sOZN46FUvkKk,14259
192
+ pen_stack/validate/cargo_directionality.py,sha256=5eIEznXnAepwp7fPKxW0mY8LcBScQ-10lSDiwz9pL7U,2884
193
+ pen_stack/validate/closed_loop.py,sha256=SnUczm4LZsomSKLdcXBgqFB3OexxcCGcRKjXQxI3CCs,3975
194
+ pen_stack/validate/durability_baselines.py,sha256=rL9EX_7wFDknTwbTH2sNL2tfLYsHY-HavJU1dSSczDE,10680
195
+ pen_stack/validate/experiment_design.py,sha256=D0gCBb17e059F551sPuXRoofx7JiKmSR2wJ3P4Em3D0,3692
196
+ pen_stack/validate/expr_controls.py,sha256=_vQrHsBqi4BHDvrhNqZa_4v34_t2CrqTiQs5XUDXIO8,1865
197
+ pen_stack/validate/forward_hypotheses.py,sha256=mPaLQeUQsCPRXZohkWvebSt9c1bRC-ZwMwPGWNFDo3I,4985
198
+ pen_stack/validate/generative_design.py,sha256=Kg4LU5Hz8Db-j5-QDCYhmiYnShjMsJf0YrL4M8aWYhM,3671
199
+ pen_stack/validate/guide_qc_demo.py,sha256=rK1No_N4mKjwwrepiR9A3lBv94J89qs71dflYZRWpUM,3808
200
+ pen_stack/validate/heldout_celltype_expr.py,sha256=ukTbHar5p9oDalgvJsYHLKcnk2x09QgbzUcjZa0O7jU,1781
201
+ pen_stack/validate/immune_calibration.py,sha256=LyfIM6JqqkFqRimJdTMOyQrdwLdKYPnbBMEfpij2xNk,7867
202
+ pen_stack/validate/intent_specification.py,sha256=uMMi05do3TgFrNxXPgKs7sO9Zq-OrQfo4qu86TCLm9A,3685
203
+ pen_stack/validate/known_biology_expr.py,sha256=-SbXze2ePV36Zs5pmwim43LbXmdGUFWjcuKjtxSmdcs,2050
204
+ pen_stack/validate/offtarget_energetics_eval.py,sha256=HI8-xZYQvQM28GY8-mlrVbM_6aWpQj4ApHoYRfEPp-o,8212
205
+ pen_stack/validate/out_of_scope_refusal.py,sha256=dziPUuBYcwlFpUEkVDboAlyxXznVAFJLPh8xpgJOyLo,4446
206
+ pen_stack/validate/outcome_calibration.py,sha256=1S_Dbu9uD_BV3i3IvusB7NXsAFFmUEUv3xU9H7MPzzQ,9554
207
+ pen_stack/validate/outcome_prediction.py,sha256=X9dArHk4h48HIppkNTcmd5vamJHJExPZ9--2azQyA9s,4434
208
+ pen_stack/validate/paper3_benchmark.py,sha256=F6w4ccYeo4ZnXivfDM_XFT1RMVWiETINtBVlY5TbbL8,8346
209
+ pen_stack/validate/paper4_real_validation.py,sha256=F4UEQCipskurpbasi0Je1aWHlvhEWwX_e7uVJkz984U,6891
210
+ pen_stack/validate/paper4_validation.py,sha256=1ywQN_qF2DXuW10KysXzFtlpF8DSxOllX7hoIbtnyrc,3891
211
+ pen_stack/validate/protocol_safety.py,sha256=bD-458SDesq7RwlvAHxcInQmXQ5X-vEJRVSCSAXJ08s,3100
212
+ pen_stack/validate/safety_screening.py,sha256=6jnvoBhQvs5OHFmBARmJlnquJY7y49JoT38Gw1iVY_s,3310
213
+ pen_stack/validate/selective_prediction.py,sha256=VoK15u2JFrt7z-1wmuONZbIG1iDV-JOSs7CiyMxLKEA,5792
214
+ pen_stack/validate/seq_vs_measured.py,sha256=r6uty2u8mGs7-SYy2fE_LTbe15m2cvVqmu3bVOzeKDE,7382
215
+ pen_stack/validate/target_site_controls.py,sha256=-9tfmTPKXVH-GnBkaQYRJtbCfWDWF6GYwSDWc9BOQ6Q,3698
216
+ pen_stack/validate/uncertainty_eval.py,sha256=Rysgofs848sT1I2vqpoiY1TeYnhg1CKGEOyUXDdjscM,13474
217
+ pen_stack/validate/ungrounded_baseline.py,sha256=6yly4_81USK380I_6NzHaBx2J9zfGojjUDK6JlYI3jc,13233
218
+ pen_stack/validate/within_locus_ranking.py,sha256=uiI4unxoZcivUXESVLwA_X_t19ezdfDr0tUFvqNIbjk,3989
219
+ pen_stack/validate/writer_recovery.py,sha256=FuCp7Qbdy_f7vThFfdCZg4bgMbb_ZOUIO9fqTUv5F8Y,4706
220
+ pen_stack/verify/__init__.py,sha256=7v1jowPmN7nLWtv2tt2C_RGmPh1Y3b_Qaqc2ehPxonA,219
221
+ pen_stack/verify/proof.py,sha256=G3earq5vdf8cNXekpjJ-xtGpeAQQ1SIdaT2rDhp7mSE,12493
222
+ pen_stack/verify/schema.py,sha256=OLuKXRCqzygh1KVORZqM3HtYQiUZhVyUgHi3v7jOEhU,3236
223
+ pen_stack/verify/service.py,sha256=Mq5OG4aX7EuRdI2AWb1Bv-LFHhxuFTpfCCxi9O2NRYQ,11507
224
+ pen_stack/web/__init__.py,sha256=5qFLga6S0RS2eUTqqN4cWx9OuYehTqbP_YgWBMrYNvc,954
225
+ pen_stack/web/guide.py,sha256=7wrqiVq2IG09ZdiNadqiU16U7cOqz76g-GGa65wrf2Y,5432
226
+ pen_stack/web/llm.py,sha256=POUujMQwU2qzNyktDOBGX6_OdVVyR1oJCGvkdpLxWEE,23368
227
+ pen_stack/web/llm_provider.py,sha256=l3KVaGrhrxzthkY8cylbO7EXRQGpDT6xXPbkkW6oGrY,5057
228
+ pen_stack/web/router.py,sha256=_2XDlZ97B0LDhhxPZq4-5Vl9h8KoXER-Vb0fzzUZkxk,7640
229
+ pen_stack/web/server.py,sha256=XlcuhdtyHwZt1uG5njvGgaHMXkBP1Epys_zaBKuMlWE,4456
230
+ pen_stack/web/tools.py,sha256=LmLRNFV-j0OxYTHzPe0JoMCRLcWD9MgoNAMeV4t8YNk,11911
231
+ pen_stack/wgenome/__init__.py,sha256=_fh9c-5xF7Tkmy-7NbpQtiumzwtQ8rNwh7CVGfPSS5s,57
232
+ pen_stack/wgenome/chromatin_seq.py,sha256=EczUd114w_yC_EIVvYPCiwZ8mC-pkCMZuVVt3mrdFA8,4159
233
+ pen_stack/wgenome/durability.py,sha256=DXiata5r7FykP6EANoEBKQ45tDe2PJJW4JIAAi8wPm0,5252
234
+ pen_stack/wgenome/export_tracks.py,sha256=GFK_vEwmCCcOUxpm16lHwnmO8jYneQataXljHU5WfPg,2068
235
+ pen_stack/wgenome/features.py,sha256=WMhg8u80ghW18LF-Y5H0yX2qTju6gqbe9cDEIvxVKOI,3763
236
+ pen_stack/wgenome/genotoxic_blocklist.py,sha256=Zm0F4gENCsDOoBBtJji2kWZNB5VGKrHOjV-mX9np_e8,4002
237
+ pen_stack/wgenome/gsh_baseline.py,sha256=tWVN8NDqtNXUPEf_-2vJezHJr5ONWAGwG9W__wEFowQ,9496
238
+ pen_stack/wgenome/mesh_features.py,sha256=9ItI6gnOoinm4IhgVsYz-sYa08KPLSHyn9Hkx9jRLpk,4063
239
+ pen_stack/wgenome/offtarget_assay.py,sha256=p4nVy-5f55-_o_It00LYN2dGjLUPVnAZMI3Do3wHF4c,6887
240
+ pen_stack/wgenome/offtarget_bridge.py,sha256=S3NrBs8-Tgo2NPYp6a1ruGaj-VVSuHAAe7BBFh5SJLI,3504
241
+ pen_stack/wgenome/offtarget_cast.py,sha256=6GKGsH7L7eXbeanMkSMXEwwlyRPCE7GrGu6kdv7m-7Q,5626
242
+ pen_stack/wgenome/offtarget_data.py,sha256=6MgwXIm8wMHaOqvhABANoN2TnfOdPneamtqcDLWLcas,10161
243
+ pen_stack/wgenome/offtarget_enumerate.py,sha256=63c9NAhcKC1XWoDbE5-D2vRuSgZxf94oXVWFZObok2Q,14626
244
+ pen_stack/wgenome/offtarget_integrase.py,sha256=Yo6pAEMsAc40qBKrM1ActM0Gi2AU7FEyD8jrXkD0XbQ,10529
245
+ pen_stack/wgenome/offtarget_nuclease.py,sha256=oBfIlhvnFiJfB-9lgZh5Mv7cOXeoHRJjHVEOCv9KOjI,8755
246
+ pen_stack/wgenome/offtarget_paste.py,sha256=kW7obwZFUttro1iWSSxXGeUCpYSZVgUn7LRJ6kUxK94,3128
247
+ pen_stack/wgenome/offtarget_predict.py,sha256=nk4vGXrM8rujQLxxQwr_JDtxkP85ZAxCpo-s9QUGa7g,18188
248
+ pen_stack/wgenome/ood.py,sha256=05YfwjH8SX0qbDSKRUngNfwCW4xAztxDEp5_f9iBRxs,6985
249
+ pen_stack/wgenome/providers.py,sha256=QqlZT7UtSE6c8SNcP_-YZu-Iv65Wd1VyoAOppZBVOsg,14123
250
+ pen_stack/wgenome/safety.py,sha256=T8hw4OhmSAk2WFcV6WZWU4RJLW9p4UgIVyen3kxbrPM,3168
251
+ pen_stack/wgenome/structure3d.py,sha256=hmeJHZNqXvxYuLGc5bOSol0G957xRX6wZSO-SMituBs,11555
252
+ pen_stack/wgenome/uncertainty.py,sha256=lDPfLPO7kVVCjONXylez2luhPC3JM_xZ4JG1FAFrYtI,11852
253
+ pen_stack/wgenome/writability.py,sha256=JUSHpe3BVCyEIIjEkpDy92VIpf3BUBda_0AcHXqhzRo,3448
254
+ pen_stack-0.1.0.dist-info/licenses/LICENSE,sha256=DgT85fy5cPpPdDJQulfod-EieETWpC2OVzvbZa1b9Y8,1102
255
+ pen_stack-0.1.0.dist-info/METADATA,sha256=E2aeRsuhLhz-8g0p3chgsuUHUnBPq6dAT1iw8alAa6U,35413
256
+ pen_stack-0.1.0.dist-info/WHEEL,sha256=K260EYznzXsJYBQGqmI8VTxEdiZYNvDZwW9cBh9-_MA,91
257
+ pen_stack-0.1.0.dist-info/entry_points.txt,sha256=5FKPTemiVvUgmeecTWOrvwO-fiuHDpJ9y0ITK5BIO4E,88
258
+ pen_stack-0.1.0.dist-info/top_level.txt,sha256=0jV2NCFBddUK9spN6ubdoD8w27XBdWg3sMZb-HM648Y,10
259
+ pen_stack-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (83.0.0)
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
5
+
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ pen-bridge = pen_stack.bridge.cli:main
3
+ pen-stack = pen_stack.cli:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Anees Ahmed Mahaboob Ali
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1 @@
1
+ pen_stack