County IT must ship a municipal CRS helper plug-in for the city's digital-twin viewers. What build constraint is essential?
Select an answer to reveal the explanation.
Short Explanation
Plug-ins are like radio crystals—they have to match the radio you own. Build against the city's pinned OpenUSD version or the CRS helper will not tune in.
Full Explanation
County IT shipping a municipal CRS helper plug-in must build that plug-in against the city's pinned OpenUSD version so it loads in municipal viewers. OpenUSD plug-ins are ABI- and version-sensitive: headers, library symbols, and plugin registration expectations must match the runtime that agency viewers actually ship. Pinning is a governance requirement in civic IT—viewers are certified on a known USD stack, and a helper built against a random tip will fail to load or crash in production twins.
Compiling only against the newest public USD tip regardless of city pins maximizes novelty and breakage; municipal fleets are not bleeding-edge film facilities. Shipping Python-only scripts and skipping plugInfo registration entirely may work for some tools but fails when a native CRS helper plug-in is required; without plugInfo, the USD plugin system will not discover the plug-in as intended. Linking against a random film-studio USD fork without documenting the ABI creates an unsupported binary that will not match city viewers and violates change-control norms.
Exam caveat: 'pinned version' is the operative phrase for municipal customization questions. Match runtime, register via plugInfo where required, and treat ABI drift as a release blocker—not a surprise for field users.
Operational check: build against the pinned SDK, install into the viewer's plugin path, confirm plugInfo discovery, load a city stage that exercises the CRS helper, and verify the plug-in loads on the certified viewer build without symbol errors.