Setting a Permission on a child model also sets that permission on the parent model

(Bug, Closed -> Misunderstanding, Priority: Critical, Test Status: Unit tested , Reported By Bad Link: Thing 3y284oe not found, )
Summary: Eric hit this one in the field. It is deeply weird, but repro's easily.
Recipe:
  • Create model Parent Model, with submodel Sub Model.
  • Create some instances of each.
  • Confirm that a member of the Space can read an instance of Parent.
  • Change Who Can Read on Sub Model's instances to Owner.
  • The member can no longer read the Parent's instance!
Somehow, permission changes on the submodel are being applied to the parent model. This is very strange. It isn't clear whether the problem is the UI doing something wrong, or something broken in the internal logic.
I suspect the problem is general to all permissions, but I have only proven it on Who Can Read yet.