Raw queries against the cell_item table.
Ordered-child membership: each row is (parent_id, position) → child_id.
position is opaque text (fractional-indexing key) — lex ordering is
the contract. The PK on (parent_id, position) enforces one cell per
slot but allows the same child_id to appear at multiple positions
(the primitive is JSON-array-shaped — ordered multiset, not set;
domain dedup rules ride on top).
Reads filter both endpoints by cell.deleted_at IS NULL so items
dangling off a soft-deleted cell don't surface.
query_cell_item_insert returns the inserted row OR throws the
underlying 23505 (Postgres unique violation) on a `(parent_id,
position)` collision. Handlers convert this into the
cell_item_position_taken JSON-RPC error so the client retries with a
refreshed bracket.