Skip to content

docs: audit the Devices tab components - #155

Merged
pskeshu merged 1 commit into
gently-project:developmentfrom
pskeshu:docs/devices-tab-audit
Sep 5, 2026
Merged

docs: audit the Devices tab components#155
pskeshu merged 1 commit into
gently-project:developmentfrom
pskeshu:docs/devices-tab-audit

Conversation

@pskeshu

@pskeshu pskeshu commented Sep 5, 2026

Copy link
Copy Markdown
Collaborator

Read of every surface from the bottom camera through to starting an experiment, judged against docs/architecture/PANELS.md. From the code, without hardware; anything needing the rig is marked.

The calibration finding is fixed in #154. The other two workflow-correctness findings are recorded here and fixed next:

  • Start is four different verbs behind one labelsingle acquires one volume and finishes, adaptive starts a timelapse, library runs a tactic, agent hands over a prompt. Label never changes; the mode selector is in a different block.
  • single mode silently ignores the roster — every other mode passes subjectIds(). And subjectIds() falls back to every embryo when all are references, so a roster of pure references would be imaged as subjects.

Also recorded: three renderings of one roster with arbitrarily different action sets (delete on one pane, Centre and role on the other) — #129's root and the last duplicated surface in the tab. And the actionable empty state sits on the pane you reach second.

The issue cache from an earlier draft is gitignored instead: ruff 0.16 formats Python code blocks inside markdown, so committing verbatim issue bodies means the formatter rewrites the snippets people quoted.

A read of every surface from the bottom camera through to starting an
experiment, judged against docs/architecture/PANELS.md. Done from the code,
without hardware; anything needing the rig is marked.

Three findings are workflow correctness rather than presentation. The first is
fixed separately; the other two are recorded here.

**Nothing checks that calibration has been done.** Fixed in its own change —
see the preflight. Recorded here because it is the finding that reorders the
rest of the list.

**`Start` is four different verbs behind one label.** `startRun` branches on
`_mode`: `single` acquires one volume and finishes, `adaptive` starts a
timelapse, `library` runs a tactic, `agent` hands over a prompt. The label
never changes, and the mode selector lives in a different block above it. In
`single` mode the primary button is not starting an experiment at all.

**`single` mode silently ignores the roster.** Every other mode passes
`subjectIds()`; `single` uses `_selected` alone. So the roster the whole
preceding workflow exists to produce matters or does not depending on a
segmented control, with nothing saying so. Related: `subjectIds()` falls back
to every embryo when all of them are references, so a roster of nothing but
reference embryos would be imaged as subjects.

Also recorded: three renderings of one roster (`renderEmbryoRail`,
`renderRoster`, and the `embryos.js` badge) with arbitrarily different action
sets — delete on one pane, Centre and role on the other, for no reason either
pane justifies. That is the root of gently-project#129 and the last duplicated surface in the
tab.

And a smaller one worth its own line: the actionable empty state ("Go to Bottom
cam") is on Acquisition, while Bottom cam — the pane you are already on —
describes the fix without offering it.

The issue cache that was in an earlier draft of this commit is gitignored
instead. ruff 0.16 formats Python code blocks inside markdown, so committing a
verbatim mirror of issue bodies means the formatter rewrites the snippets
people quoted in them. It is regenerable local convenience, not source.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@pskeshu
pskeshu merged commit bbe60c1 into gently-project:development Sep 5, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant