Skip to content

Add EventBus setup/stop coverage for VSpin and Access2 - #1250

Open
j0nch wants to merge 2 commits into
PyLabRobot:mainfrom
j0nch:feat/vspin-access2-lifecycle-events
Open

Add EventBus setup/stop coverage for VSpin and Access2#1250
j0nch wants to merge 2 commits into
PyLabRobot:mainfrom
j0nch:feat/vspin-access2-lifecycle-events

Conversation

@j0nch

@j0nch j0nch commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Modern VSpin and Access2 setup/stop calls were missing semantic EventBus lifecycles. This adds centrifuge.setup / centrifuge.stop to VSpin and public Access2.setup() / Access2.stop() wrappers emitting centrifuge_loader.setup / centrifuge_loader.stop.

Each operation reports the frontend device identity and emits started followed by completed or failed. Access2 delegates to its existing driver methods, which remain directly callable and undecorated to avoid duplicate events. Hardware behavior is preserved. These namespaces use device-only context rather than the legacy machine.* schema and its required backend field.

Tests cover device identity, lifecycle correlation, exception preservation, and identical Access2 setup/stop transcripts through the frontend and direct driver APIs. Documentation updates cover the operation reference, canonical schema registry, frontend coverage table, and preferred Access2 frontend usage.

Validation:

  • 160 tests and 103 subtests passed across Agilent VSpin/Access2 and EventBus suites.
  • All eight new lifecycle cases fail against the original source and pass with this patch.
  • Ruff lint/format and type checks passed.
  • Tested on a physical workcell; the new lifecycle events were confirmed to look correct.
  • Documentation checks encountered existing stale API references; the no-API check also cannot resolve the excluded VSpin API label.

@j0nch
j0nch requested a review from a team as a code owner September 9, 2026 23:50
@rickwierenga

Copy link
Copy Markdown
Member

@j0nch please fix type

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.

2 participants