Well here's the new rule:
```
     rule (. => allowInit(makeUnknown(UnionLoc, F, Fields)))
          ~> write-specific(
               loc(_, _, (SetItem(fromUnion(UnionLoc:SymLoc, F:CId, Fields:FieldInfo))
                    => .Set) _), _, _)
          [structural]    
```
So make it something like this (stripProv() should work for this scenario):
```
     rule (. => makeUnionsUnknown(.K, getProv(Loc)))
          ~> write-specific(stripProv(Loc:SymLoc), _, _) 
     when hasUnionMarker(Loc)
     [structural]

     when hasUnionMarker(Loc)
```