How to edit a point's status encoding when clicking on it?

I have a scatter plot with ~400 points, color-coded by the status of Column X (4 choices). I’d like a way for the user to interact with the plot and be able to click a point and change the status of Column X for that point, thus changing that point’s color.

I could probably do this with pandas behind the scenes, but I’m unclear on how to offer the user the choices of Column X and how to apply that choice live and update the graph.

I reviewed the Selections and Transforms sections of the documentation, but don’t see a way to do this.

There must be a way to get the index information for those selected points out, ideally to pass into a variable to do more work with. Would alt.condition help here? With a selection function? Filter Transform — Altair 4.1.0 documentation

For example, how does the OR operator | work in this example to link the selection to the neighboring graph?
https://altair-viz.github.io/gallery/scatter_linked_brush.html