# LiDMaS+ v1.2.0-rc.2

Release date: 2026-03-17

Tag: `v1.2.0-rc.2`  
Package version: `1.2.0rc2`

This release candidate focuses on Xanadu hardware-data integration and large-dataset conversion reliability.

## Highlights

- Added multi-format Xanadu data conversion into `decoder_io` NDJSON:
  - legacy job JSON (`output`/`samples`)
  - Aurora decoder-demo switch-setting batches
  - QCA/Borealis shot matrices (`.json`, `.npy`, `.npz`)
  - count-compressed outcome tables (GKP-style exports)
- Added C++ replay workflow integration for converted NDJSON requests.
- Added streaming/chunked conversion controls for heavy datasets:
  - `--stream`
  - `--shot-start`
  - `--max-shots`
  - `--append-out`
  - `--progress-every`
- Added runnable fixtures/scripts for Aurora/QCA/GKP conversion and replay validation.

## Included Changes Since v1.1.4

- `feat(hardware): add decoder_io NDJSON replay CLI and Xanadu integration example` (`431b0c9`)
- `feat(hardware): add streaming Xanadu dataset integration` (`a544e2b`)

Comparison:  
`https://github.com/DennisWayo/lidmas_cpp/compare/v1.1.4...v1.2.0-rc.2`

## Validation Performed

- Python compile check:
  - `python3 -m py_compile examples/hardware_integration/convert_xanadu_job_to_decoder_io.py`
- Fixture conversions:
  - `bash examples/hardware_integration/run.sh`
  - `bash examples/hardware_integration/run_public_datasets.sh`
- Replay checks:
  - `bash examples/hardware_integration/replay.sh examples/results/hardware_integration/decoder_requests_aurora.ndjson`
  - `bash examples/hardware_integration/replay.sh examples/results/hardware_integration/decoder_requests_qca.ndjson`
  - `bash examples/hardware_integration/replay.sh examples/results/hardware_integration/decoder_requests_gkp.ndjson`
- Result: replay completed with `errors=0` on fixture datasets.

## Notes

- `.npy/.npz` conversion paths require NumPy (`pip install numpy`).
- This is an RC intended for real-data validation at scale before final `v1.2.0`.
- No breaking changes are expected for existing workflows.

## Upgrade / Usage

- Use this RC tag for validation runs:
  - `git checkout v1.2.0-rc.2`
- For large QCA/Aurora inputs, prefer streaming/chunking:
  - `--stream --shot-start <N> --max-shots <K> [--append-out]`
