Skip to content

refactor(boundary): drop non-bpod device ports from the task boundary - #76

Merged
larsrollik merged 1 commit into
mainfrom
refactor/drop-device-ports-from-boundary
Aug 14, 2026
Merged

refactor(boundary): drop non-bpod device ports from the task boundary#76
larsrollik merged 1 commit into
mainfrom
refactor/drop-device-ports-from-boundary

Conversation

@larsrollik

Copy link
Copy Markdown
Member

What

Cycle D Step 4 (partial): serial_port_stage / serial_port_scale / serial_port_pulsepal no longer cross the task boundary. Every task now reads those devices from the injected DeviceCollection (fixedsubjects/stage, optotagging & exp_trn_spindle/pulsepal), so the ports are pure orchestrator-internal resolution detail (ctx.ports drives device construction).

  • Removed the three from RunContext.to_task_kwargs().
  • Stripped them from args_dict at the execute.run_task boundary (they also arrive via the CLI dict).
  • Characterization tests updated in lockstep (test_run_task_boundary, test_run_context, test_evaluate_args_characterization).

What stays

serial_port_bpod remains at the boundary: TaskProcess.__init__ takes it as a constructor param for the no-collection bpod-open fallback (and re-injects it), and optotagging's _scope_bpod_to_session still uses it for the real-HW workspace re-open. Its removal rides the TaskProcess God-constructor / bpod-lifecycle refactor (get the port from the bpod descriptor) — tracked separately.

Verification

  • Full msw-core suite green (264 passed).
  • fixedsubjects --simulate smoke: still runs, stage comes from the collection (SimStage), no serial_port_stage at the boundary.

Cycle D Step 4 (partial): serial_port_stage/scale/pulsepal no longer cross the
task boundary - every task now reads those devices from the injected collection.
Removed from RunContext.to_task_kwargs and stripped from args_dict at the
execute.run_task boundary; characterization tests updated. serial_port_bpod
stays: TaskProcess takes it as a constructor param for the no-collection
bpod-open fallback (its removal rides the TaskProcess lifecycle refactor).
@larsrollik
larsrollik requested a review from a team as a code owner August 14, 2026 08:31
@larsrollik
larsrollik merged commit 93865fa into main Aug 14, 2026
7 checks passed
@larsrollik
larsrollik deleted the refactor/drop-device-ports-from-boundary branch August 14, 2026 08:38
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