### wai-quantum 0.6.9: cut-rank amplitudes with the circuit's own global phase

Additive. Every pinned digest is unchanged.

- **`PhasedTableau`** (`quantum_tableau`) is a stabilizer tableau with its global phase.
  - It tracks one basis state `r` of the support and its exact amplitude
    `⟨r|ψ⟩ = 2^{-k/2} e^{iπm/4}` through every gate.
  - Paulis, phase gates, CX, CY, CZ and SWAP move `r` and the phase directly.
  - For a Hadamard on qubit `a`, the amplitude of `r ⊕ e_a` comes from the stabilizer
    whose X part is `e_a`, found by reducing the stabilizers (about `n³/64` word
    operations). `√X` is `H S H`, exactly.
  - Tested against the dense state vector after every gate of 40 random circuits
    (2 to 8 qubits, over 2,000 gates). A mutant of the Hadamard update is caught.
- **`ProductMeasured::with_last`** keeps the graph form, order and steps with other closing
  gates. **`ProductMeasured::scale`** multiplies every amplitude by a factor, folded into
  one qubit's weights. Tested against fresh builds.
- **The service's `cutrank` method** returns amplitudes with the circuit's own global
  phase.
  - The factor is `e^{iΘ} a/b`. Here `a` is the tracked amplitude of the Clifford part,
    `b` is the graph form's amplitude at the same basis state (closing gates set to the
    identity), and `e^{iΘ}` is the phase the lowering to Clifford gates drops. That
    phase is read gate by gate from each gate's matrix against its lowering's.
  - Past about a minute of tracking (counted from the Hadamards), the result says
    `global_phase` is not fixed, as before.
  - `auto` now tries `cutrank` for amplitudes too, before `tensor_network`.
  - Tests compare amplitudes with the state vector's directly (no phase aligned). The
    circuits include phase-carrying lowerings: `rz`, `rx`, `ry`, `u`, `p`, `cp`, `rzz`,
    `rxx`, `iswap`, `sx`, `sxdg`, `cy`, `swap`, `crz` and `cu`. Two mutants are caught:
    the lowering phase dropped, and the tracked amplitude ignored.

