Define the stable StorageProvider trait + types (ObjectKey, ObjectMeta, Etag, PutOptions={Overwrite|Create|Update{etag}}, error enum) in a new loami-storage crate, plus a reusable conformance kit (get/put/range/list/delete + CAS: Create→AlreadyExists, Update→Precondition).
Add loami-storage-memory (mem://) — hand-rolled HashMap + monotonic etag (zero-dep reference impl) that passes the kit.
Done when: memory provider passes the full conformance kit (incl. CAS) in CI.
Define the stable
StorageProvidertrait + types (ObjectKey,ObjectMeta,Etag,PutOptions={Overwrite|Create|Update{etag}}, error enum) in a newloami-storagecrate, plus a reusable conformance kit (get/put/range/list/delete + CAS: Create→AlreadyExists, Update→Precondition).Add
loami-storage-memory(mem://) — hand-rolled HashMap + monotonic etag (zero-dep reference impl) that passes the kit.Done when: memory provider passes the full conformance kit (incl. CAS) in CI.