Skip to content

remove unused pulse registry scaffolding#104

Open
sebastianorbell-qm wants to merge 2 commits into
release/nightlyfrom
pulse-registry-removal-spike
Open

remove unused pulse registry scaffolding#104
sebastianorbell-qm wants to merge 2 commits into
release/nightlyfrom
pulse-registry-removal-spike

Conversation

@sebastianorbell-qm

Copy link
Copy Markdown
Contributor

Summary

This draft PR removes the pulse-registry scaffolding that is not currently used by the runtime pulse wiring flow.

Today, default pulses are materialized directly in macro_engine.wiring._ensure_default_pulses() from concrete channel instances. The extra pulse_registry.py / register_default_component_pulse_factories() layer was not the active path and added confusion around where pulse-default changes should actually be made.

What Changed

  • removed quam_builder/architecture/quantum_dots/operations/pulse_registry.py
  • removed register_default_component_pulse_factories() and related reset plumbing
  • updated operations/__init__.py exports to match the simplified pulse surface
  • kept component_pulse_catalog.py as helper pulse builders only
  • kept _ensure_default_pulses() as the single default-pulse materialization path
  • updated pulse helper tests and docs to match the simplified design

Why

The pulse code had two competing shapes:

  • an apparent component-type pulse registry
  • the actual runtime materialization path in _ensure_default_pulses()

In practice, the registry layer was placeholder-only, while the wiring layer did the real work. Removing the unused layer makes the code clearer and makes future pulse changes easier to place correctly.

Impact

  • no intended runtime behavior change for the existing default pulse wiring path
  • reduced pulse-layer API surface and testing/reset scaffolding
  • makes it clearer that new default pulse logic should be added in the runtime wiring pass

Validation

Ran:

pytest tests/architecture/quantum_dots/operations/test_pulse_catalog.py tests/architecture/quantum_dots/operations/test_catalog_reset.py tests/builder/quantum_dots/test_pulse_wiring.py

All 18 tests passed.

Notes

This branch was preserved from an exploratory cleanup so the change can be discussed separately from the ongoing QDAC/baseband pulse work.

@sebastianorbell-qm sebastianorbell-qm changed the title [codex] remove unused pulse registry scaffolding remove unused pulse registry scaffolding Apr 14, 2026
@sebastianorbell-qm sebastianorbell-qm marked this pull request as ready for review April 14, 2026 13:37
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