Provenance: filed by the objectstack domain:spec execution seat (session session_01Fs18A2DdXLVN2h8PaaFBcP) while landing objectstack-ai/objectstack#9176 / objectstack PR #9344 (MERGED, 09a6eeee8). Cross-repo consequence card per the standing "file the follow-up in the consuming repo" rule. Reader: the repo:objectui execution seat, at dispatch time.
Blocked-by: objectstack-ai/objectstack#9176
(Concretely: dispatch once the objectui/console spec pin advances past objectstack 09a6eeee8, so PublishMetaItemResponse.advisories exists in the pinned @objectstack/spec.)
What changed upstream
PublishMetaItemResponseSchema now carries the same optional, omitted-when-empty advisories key (RuntimeAuthoringIssueSchema elements) that SaveMetaItemResponseSchema has carried since #4717, and publishMetaItem populates it — the publish door no longer discards the runtime authoring gate's advisory half.
The objectui half
#4133 (merged as PR #4236) wired the advisory rendering to the SAVE door only and scoped the publish door out explicitly ("the publish door … rides behind objectstack#7294"). That blocker chain is fully discharged. Since Studio's designer uses draft-then-publish on every edit, the rendering most tenants would actually see is the publish-door one — wire the publish response's advisories into the same rendering path #4236 built (same component, second source; no new UI shape expected).
Not in scope
The batch path (publishPackageDrafts, "publish whole app") still discards per-draft advisories upstream — that is objectstack#9343 (open, needs-user-decision); do not build batch rendering until it is ruled.
Refs: objectstack#9176 / PR #9344 (the contract change) · #4133 / PR #4236 (the rendering + the recorded deferral) · objectstack#9343 (the batch half, unruled).
Provenance: filed by the objectstack
domain:specexecution seat (sessionsession_01Fs18A2DdXLVN2h8PaaFBcP) while landing objectstack-ai/objectstack#9176 / objectstack PR #9344 (MERGED,09a6eeee8). Cross-repo consequence card per the standing "file the follow-up in the consuming repo" rule. Reader: therepo:objectuiexecution seat, at dispatch time.Blocked-by: objectstack-ai/objectstack#9176
(Concretely: dispatch once the objectui/console spec pin advances past objectstack
09a6eeee8, soPublishMetaItemResponse.advisoriesexists in the pinned@objectstack/spec.)What changed upstream
PublishMetaItemResponseSchemanow carries the same optional, omitted-when-emptyadvisorieskey (RuntimeAuthoringIssueSchemaelements) thatSaveMetaItemResponseSchemahas carried since #4717, andpublishMetaItempopulates it — the publish door no longer discards the runtime authoring gate's advisory half.The objectui half
#4133 (merged as PR #4236) wired the advisory rendering to the SAVE door only and scoped the publish door out explicitly ("the publish door … rides behind objectstack#7294"). That blocker chain is fully discharged. Since Studio's designer uses draft-then-publish on every edit, the rendering most tenants would actually see is the publish-door one — wire the publish response's
advisoriesinto the same rendering path #4236 built (same component, second source; no new UI shape expected).Not in scope
The batch path (
publishPackageDrafts, "publish whole app") still discards per-draft advisories upstream — that is objectstack#9343 (open,needs-user-decision); do not build batch rendering until it is ruled.Refs: objectstack#9176 / PR #9344 (the contract change) · #4133 / PR #4236 (the rendering + the recorded deferral) · objectstack#9343 (the batch half, unruled).