Scope#
V2 subscribes to isis.asset.generated through @v2/oshun-adapter for
generated assets tagged for V2 launch content. The subscription is intentionally
narrow:
v2.cosmetic.*v2.stage.*v2.decal.*
Other Isis generated assets are acknowledged and ignored by V2.
Bellona Cook Handoff#
Accepted events become non-deterministic V2 reactions with
reactionKind: "isis_generated_bellona_cook" and a bellona.cook.enqueue
request for @bellona/unreal. The request carries:
- Isis asset id and job id
- source URI, source format, and source content hash
- selected cook profile:
v2.cosmetic,v2.stage, orv2.decal - target content root:
Content/Generated/Isis - target prefix:
Cosmetics,Stages, orDecals - original tags
provenanceRequired: truequalityGateRequired: true- a passed
v2.isis.generated-asset.shipping-quality-gateattestation rollbackSafe: true
Shipping Quality Gate#
Every Isis-generated V2 shipping asset must pass the launch-blocking accept gate
before Bellona cook can accept it. The attestation content hash must match the
Isis source asset hash, and every package result must be passed:
@isis/anomaly-detection@themis/music-shield@themis/visual-shield@themis/text-shield@themis/video-shield@themis/design-shield@kuanyin/precognition
The Themis Originality Shields family is wired for V2 through
@v2/themis-originality-shields. Any planned_unavailable result still blocks
V2 launch accept-gates instead of bypassing them. Malformed, missing, failed,
blocked, review, or hash-mismatched gate attestations are dead-lettered by
@v2/oshun-adapter and never produce a bellona.cook.enqueue command.
This route only schedules generated assets for cook after the quality gate has
passed. Cook completion still flows through bellona.artifact.cooked, where the
existing Bellona reimport and provenance gates validate generated .uasset /
.umap outputs under Content/Generated/.