Skip to content

Latest commit

 

History

History
52 lines (40 loc) · 1.97 KB

File metadata and controls

52 lines (40 loc) · 1.97 KB

TODO Plan

This file tracks intentionally deferred follow-up work after the JAX algorithm switch and backend-object runner cleanup.

Open Items

1. Decide long-term algorithm-selection UX

Current state:

  • JAX algorithm choice is controlled through spd.jax_backend.set_algorithm(...)
  • advanced users can also construct a BackendAdapter and configure backend.module.set_algorithm(...) before passing backend=... into runners

Deferred decision:

  • whether algorithm selection should remain documented as a low-level advanced setting
  • or whether it should eventually gain a more explicit runner/backend-construction API

2. Run the full suite before release/merge

Resolved for the search/update top-k cap fix:

  • full suite passed with 474 passed

Keep this as a general release checklist item for future changes.

3. Revisit curated low-level public API

The note in docs/low_level_api_scope_note.md is still relevant. If power-user low-level operations become more important, consider defining a small supported low-level public module instead of exposing runtime internals indirectly.

4. Decide long-term fate of stack_sort_merge

Current state:

  • stack_sort_merge remains available as a reference and fallback algorithm
  • selected stack_sort_merge and search_update_merge paths now retain capped live rows by coefficient magnitude
  • search_update_merge then restores lexicographic storage for later search/update steps

Deferred decision:

  • keep it permanently as a supported alternate path
  • or deprecate/remove it after the new JAX path has enough long-term confidence
  • or continue using it as a reference path for capped top-k behavior

5. Separate IR from padded backend storage width

Current state:

  • parsed OpenQASM / pytket operations are lowered with packbit-padded Pauli strings

Possible refactor:

  • keep the IR logical and unpadded
  • move padding/packing to the backend-lowering step instead of the frontend parser