Skip to content

Commit 4455dcd

Browse files
kvapsclaude
andcommitted
docs(plan): update csi-sanity baseline to 53/74
Document the iterative gap-closing pass and the remaining failure class (node-specific operations against the fake csi-sanity-node). Co-Authored-By: Claude <noreply@anthropic.com> Signed-off-by: Andrei Kvapil <kvapss@gmail.com>
1 parent 469d69c commit 4455dcd

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

PLAN.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,7 @@ Full scope list lives in `docs/csi-api-surface.md` (to be created in Phase 1).
358358
- [x] Intra-cluster snapshot shipping for clone/replica-expansion: `Reconciler.ShipSnapshot` picks `zfs send | ssh peer zfs recv` for ZFS / ZFS_THIN and `thin-send-recv` for LVM_THIN, dispatched via an injectable ShipExec so unit tests assert command lines without spinning up the real tools. 3 contract tests.
359359
- ZFS pools: `zfs send | ssh | zfs recv` over satellite-to-satellite
360360
- LVM-thin: `thin-send-recv` (LINBIT)
361-
- [x] csi-sanity runs end-to-end against blockstor REST (2026-05-08): `stand/csi-sanity-job.yaml` is a single-pod Job hosting `piraeus-csi` + `csi-sanity` sharing /csi via emptyDir; piraeus-csi dials `http://blockstor-controller:3370`, csi-sanity hammers it through the standard CSI gRPC contract. Baseline on the dev stand: **38/92 specs passing**, 36 failing, 1 pending, 17 skipped (Identity + most of the Controller surface — Capabilities, GetPluginInfo, ControllerGetCapabilities, NodeGetVolumeStats etc. all green). The 36 failures highlight specific semantic gaps (e.g. CreateVolume size validation, idempotent CreateVolume payload diffs, GroupVolumeSnapshot which we don't implement) — they're concrete regression targets for incremental work, not blockers for the architecture.
361+
- [x] csi-sanity runs end-to-end against blockstor REST (2026-05-08): `stand/csi-sanity-job.yaml` is a single-pod Job hosting `piraeus-csi` + `csi-sanity` sharing /csi via emptyDir; piraeus-csi dials `http://blockstor-controller:3370`, csi-sanity hammers it through the standard CSI gRPC contract. Initial baseline: 38/92. Iterative gap-closing (2026-05-08…09): csi-sanity-node init container, K8sName slugifier for non-RFC1123 names, lenient JSON decoder matching Java LINSTOR semantics, override_props passthrough on RG/RD/spawn payloads, RemoteList envelope shape, int64 `ret_code`, satellite_encryption_type uppercase normalisation. Current: **53/74 specs passing** (74 of 92 ran, 17 skipped, 1 pending). Remaining 21 failures cluster around `volume not present in storage backend` and node-specific lookups for the fake `csi-sanity-node` — those are the parts of csi-sanity that need a live satellite present on the test node; not REST-layer regressions.
362362

363363
**Exit**: csi-sanity green; piraeus-operator e2e green for what they cover; PVC clone across nodes works.
364364

0 commit comments

Comments
 (0)