Skip to content

Commit 80559a2

Browse files
docs on new release
1 parent 35a65c1 commit 80559a2

8 files changed

Lines changed: 205 additions & 35 deletions

File tree

developer-guide/20-User interface/05-api-reference.md

Lines changed: 81 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -19,11 +19,9 @@ sidebar_class_name: sidebar-item--updated
1919
```
2020
{
2121
"error": "Human-readable error message",
22-
"error_info": {
23-
"cause": "Human-readable cause (defaults to error if not set)",
24-
"remediation": "Suggested fix or next step",
25-
"status": integer,
26-
}
22+
"cause": "Human-readable cause (defaults to error if not set)",
23+
"remediation": "Suggested fix or next step",
24+
"status": integer,
2725
}
2826
2927
```
@@ -34,7 +32,6 @@ Use `/api/workers/...` for worker-only targets (experiment-scoped jobs/logs) and
3432

3533
-----
3634

37-
3835
## Get Automation Descriptors
3936

4037
Get Automation Descriptors endpoint.
@@ -57,6 +54,21 @@ Get Automation Descriptors endpoint.
5754

5855
_No response body example inferred._
5956

57+
## Get Bioreactor Variable Descriptors
58+
59+
Get Bioreactor Variable Descriptors endpoint.
60+
61+
### Endpoint
62+
`GET /api/bioreactor/descriptors`
63+
64+
### Response
65+
66+
#### Success
67+
68+
**Status:** `200 OK`
69+
70+
_No response body example inferred._
71+
6072
## Get Chart Descriptors
6173

6274
Get Chart Descriptors endpoint.
@@ -425,7 +437,8 @@ Create Experiment endpoint.
425437
"description": "<value>",
426438
"experiment": "<value>",
427439
"mediaUsed": "<value>",
428-
"organismUsed": "<value>"
440+
"organismUsed": "<value>",
441+
"tags": "<value>"
429442
}
430443
```
431444

@@ -436,9 +449,7 @@ Create Experiment endpoint.
436449
**Status:** `201 Created`
437450

438451
```json
439-
{
440-
"status": "success"
441-
}
452+
"<created_experiment>"
442453
```
443454

444455
## Delete Experiment
@@ -508,7 +519,8 @@ Update Experiment endpoint.
508519
#### Request Body
509520
```json
510521
{
511-
"description": "<value>"
522+
"description": "<value>",
523+
"tags": "<value>"
512524
}
513525
```
514526

@@ -519,9 +531,7 @@ Update Experiment endpoint.
519531
**Status:** `200 OK`
520532

521533
```json
522-
{
523-
"status": "success"
524-
}
534+
"<updated_experiment>"
525535
```
526536

527537
## Get Recent Experiment Profile Runs
@@ -1215,6 +1225,15 @@ Update App endpoint.
12151225
### Endpoint
12161226
`POST /api/system/update_next_version`
12171227

1228+
### Request
1229+
1230+
#### Request Body
1231+
```json
1232+
{
1233+
"units": "<value>"
1234+
}
1235+
```
1236+
12181237
### Response
12191238

12201239
#### Success
@@ -1576,7 +1595,9 @@ Kills specified job on unit
15761595

15771596
```json
15781597
{
1579-
"status": "success"
1598+
"unit": "<unit>",
1599+
"task_id": "<task_id>",
1600+
"result_url_path": "/unit_api/task_results/<task_id>"
15801601
}
15811602
```
15821603

@@ -1604,7 +1625,9 @@ Kills specified job on unit
16041625

16051626
```json
16061627
{
1607-
"status": "success"
1628+
"unit": "<unit>",
1629+
"task_id": "<task_id>",
1630+
"result_url_path": "/unit_api/task_results/<task_id>"
16081631
}
16091632
```
16101633

@@ -2746,6 +2769,42 @@ Get Experiment Assignment For Worker endpoint.
27462769
"<result>"
27472770
```
27482771

2772+
## Update Bioreactor On Unit
2773+
2774+
Update Bioreactor On Unit endpoint.
2775+
2776+
### Endpoint
2777+
`PATCH /api/workers/{pioreactor_unit}/experiments/{experiment}/bioreactor`
2778+
2779+
### Request
2780+
2781+
#### Path Parameters
2782+
| Name | Type | Required | Description |
2783+
| ---- | ---- | -------- | ----------- |
2784+
| pioreactor_unit | string | Yes | Unit name or `$broadcast` where supported. |
2785+
| experiment | string | Yes | Experiment identifier. |
2786+
2787+
#### Request Body
2788+
```json
2789+
{
2790+
"values": "<value>"
2791+
}
2792+
```
2793+
2794+
### Response
2795+
2796+
#### Success
2797+
2798+
**Status:** `202 Accepted`
2799+
2800+
```json
2801+
{
2802+
"unit": "<unit>",
2803+
"task_id": "<task_id>",
2804+
"result_url_path": "/unit_api/task_results/<task_id>"
2805+
}
2806+
```
2807+
27492808
## Get Logs For Unit And Experiment
27502809

27512810
Shows event logs from specific unit and experiment, uses pagination.
@@ -3272,7 +3331,9 @@ Kills specified job on unit
32723331

32733332
```json
32743333
{
3275-
"status": "success"
3334+
"unit": "<unit>",
3335+
"task_id": "<task_id>",
3336+
"result_url_path": "/unit_api/task_results/<task_id>"
32763337
}
32773338
```
32783339

@@ -3300,7 +3361,9 @@ Kills specified job on unit
33003361

33013362
```json
33023363
{
3303-
"status": "success"
3364+
"unit": "<unit>",
3365+
"task_id": "<task_id>",
3366+
"result_url_path": "/unit_api/task_results/<task_id>"
33043367
}
33053368
```
33063369

developer-guide/20-User interface/06-unit-api-reference.md

Lines changed: 62 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -17,15 +17,12 @@ sidebar_class_name: sidebar-item--updated
1717
```
1818
{
1919
"error": "Human-readable error message",
20-
"error_info": {
21-
"cause": "Human-readable cause (defaults to error if not set)",
22-
"remediation": "Suggested fix or next step",
23-
"status": integer,
24-
}
20+
"cause": "Human-readable cause (defaults to error if not set)",
21+
"remediation": "Suggested fix or next step",
22+
"status": integer,
2523
}
2624
2725
```
28-
2926
## Get All Active Calibrations
3027

3128
Get All Active Calibrations endpoint.
@@ -166,6 +163,65 @@ Set Active Estimator endpoint.
166163
}
167164
```
168165

166+
## Get Bioreactor Values
167+
168+
Get Bioreactor Values endpoint.
169+
170+
### Endpoint
171+
`GET /unit_api/bioreactor/experiments/{experiment}`
172+
173+
### Request
174+
175+
#### Path Parameters
176+
| Name | Type | Required | Description |
177+
| ---- | ---- | -------- | ----------- |
178+
| experiment | string | Yes | Experiment identifier. |
179+
180+
### Response
181+
182+
#### Success
183+
184+
**Status:** `200 OK`
185+
186+
```json
187+
{
188+
"values": "<value>"
189+
}
190+
```
191+
192+
## Update Bioreactor Values
193+
194+
Update Bioreactor Values endpoint.
195+
196+
### Endpoint
197+
`PATCH /unit_api/bioreactor/experiments/{experiment}`
198+
199+
### Request
200+
201+
#### Path Parameters
202+
| Name | Type | Required | Description |
203+
| ---- | ---- | -------- | ----------- |
204+
| experiment | string | Yes | Experiment identifier. |
205+
206+
#### Request Body
207+
```json
208+
{
209+
"values": "<value>"
210+
}
211+
```
212+
213+
### Response
214+
215+
#### Success
216+
217+
**Status:** `200 OK`
218+
219+
```json
220+
{
221+
"status": "success"
222+
}
223+
```
224+
169225
## Get Calibration Protocols
170226

171227
Get Calibration Protocols endpoint.
288 KB
Loading
589 KB
Loading
598 KB
Loading

user-guide/02-Experiment basics/04-set-up-an-experiment.md

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,21 @@ import Admonition from '@theme/Admonition';
1010

1111
### Creating an experiment
1212

13-
1. To create a new experiment, click on the drop-down menu on the top of the left-hand bar. Click the "New experiment" button.
13+
To create your first experiment, open the experiment selector in the top-left corner of the UI and choose **Start a new experiment**. This appears as the first item in the dropdown above your other experiments.
1414

15-
![](/img/user-guide/02-experiment-basics/04-set-up-an-experiment/start_new_experiment.png)
15+
![](/img/user-guide/02-experiment-basics/04-set-up-an-experiment/start-new-experiment-dropdown-framed.png)
1616

17-
2. On the next screen, enter your new experiment name. This name should be unique from prior experiment names. Enter optional metadata about your experiment; you can modify the description later, if necessary. Click "Save" when done.
17+
On **Start a new experiment**:
1818

19-
![](/img/user-guide/02-experiment-basics/04-set-up-an-experiment/create_new_experiment_page.png)
19+
1. Enter a unique experiment name.
20+
2. Optionally add a description. This can be edited later.
21+
3. Optionally add tags. Press `Enter` or type a comma after each tag to save it.
22+
4. If you want to reuse setup details from a previous run, click **Populate with previous experiment**.
23+
5. Click **Save**.
24+
25+
Tags are useful for grouping related experiments across time. For example, you might tag experiments by strain, media, operator, protocol, or project name.
26+
27+
After saving, you can come back to the experiment later from **Experiments**. Tags make it easier to find related runs when your list grows.
2028

2129

2230
### Assigning Pioreactors to your experiment
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
title: The Experiments page
3+
slug: /experiments-page
4+
hide_table_of_contents: true
5+
---
6+
7+
Use **Experiments** to find active and previous runs, jump back into an experiment, and start a new one when needed.
8+
9+
![](/img/user-guide/02-experiment-basics/07-experiments-page/experiments-page-overview-framed.png)
10+
11+
At the top of **Experiments**, you can:
12+
13+
1. Click **New experiment** to open [**Start a new experiment**](/user-guide/set-up-an-experiment).
14+
2. Search by experiment name or description.
15+
3. Filter the table by status with **all**, **active**, and **inactive**.
16+
4. Filter by tags to show only experiments that match a tag or set of tags.
17+
18+
Each row shows the experiment name, description, tags, creation time, and whether the experiment is currently active.
19+
20+
Click an experiment name to open that experiment. Use **More actions** for experiment-specific actions available in the UI.
21+
22+
## Using tags
23+
24+
Tags help group related work across many runs. You might use tags for strain names, media recipes, operators, projects, or protocols.
25+
26+
![](/img/user-guide/02-experiment-basics/07-experiments-page/experiments-page-tags-open-framed.png)
27+
28+
Open **Filter by tags** and select one or more tags to narrow the list. This is useful when your cluster has many past experiments and you want to quickly find a subset without searching by the full experiment name.

user-guide/29-Automations/02-dosing-automations.md

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ hide_table_of_contents: true
77

88
When pairing the Pioreactor with dosing pumps, there are new capabilities and experiments you can run. The Pioreactor is pre-programmed with the following dosing automations. In the below automations, values highlighted `like so` are configurable.
99

10+
Before starting a dosing automation from the UI, review the `Current volume` and `Max working volume` fields in the automation dialog. `Current volume` should match the liquid currently in the vial, and `Max working volume` should match the volume set by the height of your waste / efflux tube.
11+
1012
## Available dosing automations
1113

1214

@@ -47,9 +49,22 @@ The chemostat automation is the second simplest dosing automation. Every `durati
4749
* one labelled "media"
4850

4951

50-
A turbidostat ("turbidity-static") tries to keep the turbidity (the optical density, or OD), constant over time. This is usually accomplished by taking frequent measurements of the turbidity (every 15 seconds), and performing a set media/waste pump cycle if the optical density (or normalized optical density) exceeds a `target OD` (or `target nOD`). The amount exchanged is the `volume` parameter (mL). For very fast growing cultures, we recommend a `volume` between 1.0 ml and 2.0 ml.
52+
A turbidostat ("turbidity-static") tries to keep the biomass constant over time. This is usually accomplished by taking frequent measurements (every 15 seconds), and performing a set media / waste pump cycle if the selected `biomass signal` exceeds the `target biomass`. The amount exchanged each time is the `exchange volume` parameter (mL). For very fast growing cultures, we recommend an `exchange volume` between 1.0 mL and 2.0 mL.
53+
54+
This automation will always move the full `exchange volume`, even if it's not enough for the measured biomass to drop below the `target biomass`. If that happens, the automation will trigger again after the next check.
55+
56+
The current turbidostat fields in the UI are:
57+
58+
- `exchange volume`: how much media and waste to move in each dilution cycle, in mL.
59+
- `target biomass`: the biomass threshold that triggers a dilution cycle.
60+
- `biomass signal`: which biomass estimate to monitor. `auto` will prefer `od_fused` when an active OD fused estimator is available, then `od` when an active OD calibration is available for the resolved signal channel, and otherwise falls back to `normalized_od`.
61+
62+
When `biomass signal` is set to:
5163

52-
This automation will always dose the `volume` parameter, even if it's not enough for the OD to drop below the `target OD`. If that happens, then `OD > target OD`, and so the automation will trigger after the next check (30 seconds).
64+
- `normalized_od`: the automation compares against normalized OD.
65+
- `od_fused`: the automation compares against the fused OD estimator.
66+
- `od`: the automation compares against calibrated OD from the resolved OD channel.
67+
- `auto`: the automation chooses the most specific available signal automatically.
5368

5469
### PID Morbidostat
5570

@@ -96,13 +111,13 @@ To further avoid overflow, we limit how much liquid is added in a single pump cy
96111
### Volume parameters
97112

98113

99-
- **Initial volume**: this is how much liquid is initially in the vial
114+
- **Current volume**: this is how much liquid is currently in the vial when you start the automation.
100115
- **Max working volume**: the efflux tube's position determines the maximum volume your liquid volume will reach.
101116

102117

103118
### Configuration parameters
104119

105-
You can edit these parameters in your config.ini files.
120+
You can edit these parameters in your config.ini files. For dosing runs started from the UI, `Current volume` and `Max working volume` can also be adjusted directly in the automation dialog before starting.
106121

107122

108123
#### Section `[dosing_automation.config]`
@@ -114,6 +129,6 @@ You can edit these parameters in your config.ini files.
114129

115130
#### Section `[bioreactor]`
116131

117-
- `max_volume_ml`: determined by the volume that just touches the outflow tube. I.e. if you where to keep running the waste pump, what would the stable volume be.
118-
- `initial_volume_ml`: the initial volume of liquid in the vial. This is used to calculate the volume of liquid in the vial at any given time.
119-
- `initial_alt_media_fraction`: the initial fraction of the alternative media in the vial. This is used to calculate the volume of alternative media in the vial at any given time.
132+
- `max_working_volume_ml`: determined by the volume that just touches the outflow tube. I.e. if you were to keep running the waste pump, what would the stable volume be.
133+
- `initial_volume_ml`: the initial volume of liquid in the vial. In the UI this is surfaced as `Current volume`, and is used to calculate the volume of liquid in the vial at any given time.
134+
- `initial_alt_media_fraction`: the initial fraction of the alternative media in the vial. This is used to calculate the volume of alternative media in the vial at any given time.

0 commit comments

Comments
 (0)