revise slots work
checkpoint/WIP
flatten
pg: notify + listen(js)