Structured records produced by merge-analyses need to be a union of their platform variants with platforms listed on properties that can vary across platforms like superclasses and binding slots
Categories
(Webtools :: Searchfox, enhancement)
Tracking
(Not tracked)
People
(Reporter: asuth, Unassigned)
Details
As mentioned in https://github.com/mozsearch/mozsearch/pull/692 at:
Something this absolutely reveals is that the structured "variants" mechanism where we hash on content is causing duplicates. Additionally, this raises the issue that we really need to the root structured rep to be a composite of all variants, not just one arbitrary one. Otherwise the diagram functionality and anything else that is trying to treat the root structured object as canonical is potentially going to be misleading.
And discussed in the latter part of https://bugzilla.mozilla.org/show_bug.cgi?id=1896441#c3 starting from "An interesting nuance"...
We need to have the structured records produced by the merge process be a union of what happens across all platforms, annotating properties like the superclasses and lists of fields for identification of what platforms they exist on, and potentially platform-specific details like what the offsets are, etc.
This is likely a situation where we might want something like WithLocation<T> using #[serde(flatten)].
Description
•