I finally got back around to this project, and I tried, and it's still not quite working. .I've found a slight alteration that got it to work w/o the duplication, but I'm thinking there might be some kind of bug.
Anyways. The project is now open source under AGPLv3 at
http://github.com/humble/HumbleBugs/ The rule is on line 81,
This is what I've managed to get working
has_permission_on :developers, :to => [:read, :read_address] do
if_permitted_to :is_member, :games => { :ports => :developer }
end
This is what I *assumed* should have been able to work
has_permission_on :developers, :to => [:read, :read_address] do
if_permitted_to :is_porter, :games
end
However it blows an error that it can't read. the spec test is in specs/roles/porter_role_spec.rb line 37 ('can read including address info for developers with games I am porting')