|
1 | | -# BLOOM |
| 1 | +<div align="center"> |
| 2 | +<pre> |
| 3 | +██████╗ ██╗ ██████╗ ██████╗ ███╗ ███╗ |
| 4 | +██╔══██╗██║ ██╔═══██╗██╔═══██╗████╗ ████║ |
| 5 | +██████╔╝██║ ██║ ██║██║ ██║██╔████╔██║ |
| 6 | +██╔══██╗██║ ██║ ██║██║ ██║██║╚██╔╝██║ |
| 7 | +██████╔╝███████╗╚██████╔╝╚██████╔╝██║ ╚═╝ ██║ |
| 8 | +╚═════╝ ╚══════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ |
| 9 | +</pre> |
| 10 | +<p><strong>Internal material, container, lineage, and lab-action graph service.</strong></p> |
| 11 | +<p> |
| 12 | + <a href="#quickstart">Quickstart</a> · |
| 13 | + <a href="#api">API</a> · |
| 14 | + <a href="#gui">GUI</a> · |
| 15 | + <a href="docs/lab_actions.md">Lab actions</a> · |
| 16 | + <a href="#testing-info">Tests</a> |
| 17 | +</p> |
| 18 | +</div> |
2 | 19 |
|
3 | 20 | ## Overview |
4 | 21 |
|
5 | 22 | Bloom is the LSMC internal material and container graph service. It owns laboratory containers, materials/content, equipment, lineage, recursive template creation, search, and graph views. Atlas owns orders and customer-facing accession context; Bloom owns the physical/material execution graph. |
6 | 23 |
|
7 | | -Current Dayhoff pin: `7.0.14`. Current TapDB dependency: `daylily-tapdb @ ...@9.0.4`. |
| 24 | +Current Dayhoff pin: `7.0.16`. Current TapDB dependency: `daylily-tapdb @ ...@9.0.5`. |
8 | 25 |
|
9 | 26 | Bloom is internal-only in Dayhoff exposure policy. It must be reachable only through approved LSMC networks and Dayhoff-generated service credentials. |
10 | 27 |
|
| 28 | +## What It Does |
| 29 | + |
| 30 | +- Owns Bloom containers, materials/content, equipment, recursive templates, lineages, search, and graph views. |
| 31 | +- Exposes `/lab-actions` and `/api/v1/lab-actions/*` for extraction plate, sequencing-library plate, pool-tube, and sequencing-run setup. |
| 32 | +- Mounts TapDB at `/tapdb` for generic object, template, lineage, audit, graph, and external-link inspection. |
| 33 | +- Provides health and observability surfaces for Kahlo and Dayhoff deployment verification. |
| 34 | + |
| 35 | +## How It Works |
| 36 | + |
| 37 | +```mermaid |
| 38 | +flowchart LR |
| 39 | + Tube["Incoming tube + content"] --> Extraction["Extraction plate + gDNA"] |
| 40 | + Extraction --> Library["Sequencing-library plate"] |
| 41 | + Library --> Pool["Pool tube + pool content"] |
| 42 | + Pool --> RunSet["Sequencing run set"] |
| 43 | + RunSet --> OWY["Samplesheet for OWY/Kahlo traceability"] |
| 44 | +``` |
| 45 | + |
| 46 | +Bloom models physical/material execution. Atlas owns orders and customer accession context; Dewey owns durable artifact identity; Ursa owns analysis trigger/job records. |
| 47 | + |
11 | 48 | ## Quickstart |
12 | 49 |
|
13 | 50 | ```bash |
@@ -76,7 +113,7 @@ python -m pytest tests -q |
76 | 113 | python -m pytest tests/test_lsmc_ui_skin_system_contract.py -q |
77 | 114 | ``` |
78 | 115 |
|
79 | | -Deployed browser evidence should target `https://bloom.<deploy>.dev.lsmc.bio` and include the dashboard, object search/detail, TapDB mount, graph, and auth redirect surfaces. Current committed `jemdev5` evidence is linked from Dayhoff `docs/releases/dayhoff_7_0_61_jemdev5_evidence/`. |
| 116 | +Deployed browser evidence should target `https://bloom.<deploy>.dev.lsmc.bio` and include the dashboard, object search/detail, TapDB mount, graph, and auth redirect surfaces. Current `jemdev5` deployment evidence is linked from Dayhoff `docs/plans/20260618T132900Z_jemdev5_dayhoff_7067_live_deploy_ledger.md`. |
80 | 117 |
|
81 | 118 | ## Technical Details, History, And Linkouts |
82 | 119 |
|
|
0 commit comments