synchrony / smsn

Semantic Synchrony. An experiment in cognitive and sensory augmentation.
Other
179 stars 15 forks source link

Bug: Nodes in loops not always editable #32

Closed JeffreyBenjaminBrown closed 7 years ago

JeffreyBenjaminBrown commented 8 years ago

If node A is a child of itself, and a few generations of that hierarchy is on screen at once, then none of those instances (not even the top one) is editable. Edits can be entered but they are ignored.

Similarly, if nodes A and B are each others' children, and that cycle is sufficiently open (where sufficient might mean half a generation; my test was at four half-generations), then neither is editable.

joshsh commented 8 years ago

Thanks for the bug report. I did find a bug related to recursive views (and fixed it in the latest commit), but this is more a question of expectations. If an atom is repeated in a view, you need to be aware of the order in which atoms are updated if you want to make a change. They are updated in a pre-ordered fashion, so that the deeper of the two instances of an atom will "win" in case of conflict. I have added a unit test to nail this pre-order behavior down. Let's consider this bug resolved once the behavior is documented.

joshsh commented 7 years ago

This is now covered by unit tests; considering this sufficient documentation for now.