You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Part of #3842, requirement 3: a red or cancelled source build must not become visible to portals.
The shared node-repo-module-pack.yml workflow hands each module bundle to the live registry inside its pack matrix entry, immediately after that module's own suite. A sibling module, the portal-host suite, compile-check or the runtime gate can still fail afterwards. modules-floor artifacts are inputs to those later gates, so adding their jobs as dependencies of the existing pack job creates a cycle.
Evidence from the current workflow:
Hand the bundle to the registry runs under inputs.publish && steps.plan.outputs.need_publish == 'true' inside pack.
The module-bundle-<module> artifact is uploaded before the hand-over and already supplies downstream compile/runtime checks.
Plugins modules-floor and modules-rest enable publishing on main push, schedule and repository dispatch. Their dependencies cover initial validation and platform selection, not the later full-source verdict.
Keep packing, artifact upload and tests available before the full source verdict; move only live-registry hand-over into a downstream shared publication operation.
The caller must provide a positive verdict from every required validation job. Failed, skipped, cancelled, missing and unknown results must prevent every publication request.
Publish the exact validated artifact bytes for the selected source, framework identity, module and version. Refuse missing, substituted or foreign-lane receipts and artifacts. Reuse existing credential scope; no access-control or credential changes are included.
Preserve ledger reuse/coalescing and test ownership. A staged artifact is not a Published ledger record, and a failed hand-over must not be recorded as published.
Exercise both directions: green validation publishes the expected bytes, and a later sibling/source failure leaves the registry untouched even though the module was successfully packed. Mutation tests must detect a missing required dependency or a status-function override.
Carry the core and Plugins caller changes through green review/CI and verify supported production publication before closing this issue.
This issue removes publication before the source validation verdict. Atomic visibility if publication itself fails or is cancelled, all publishers' source provenance, and last-green source selection remain obligations of #3842 and the generation work in #3461. They must not be described as solved by moving this one hand-over step.
Related: Plugins #1583 blocks its bake publisher on the portal-host aggregate; it does not cover this earlier registry hand-over. Core #3876/#3877 repairs HTTP behavior while a publication seal is absent, not whether the producer was entitled to publish that source.
Part of #3842, requirement 3: a red or cancelled source build must not become visible to portals.
The shared
node-repo-module-pack.ymlworkflow hands each module bundle to the live registry inside itspackmatrix entry, immediately after that module's own suite. A sibling module, the portal-host suite, compile-check or the runtime gate can still fail afterwards.modules-floorartifacts are inputs to those later gates, so adding their jobs as dependencies of the existing pack job creates a cycle.Evidence from the current workflow:
Hand the bundle to the registryruns underinputs.publish && steps.plan.outputs.need_publish == 'true'insidepack.module-bundle-<module>artifact is uploaded before the hand-over and already supplies downstream compile/runtime checks.modules-floorandmodules-restenable publishing on main push, schedule and repository dispatch. Their dependencies cover initial validation and platform selection, not the later full-source verdict.publish: falsefor its compose artifacts and independently publishes a NodeType/module set throughplugins-bake. That separate publication path is outside this early module hand-over fix and remains in No platform pins in module repos — build against the released platform, and be TOLERANT of drift (same major serves) #3842.Repair contract:
This issue removes publication before the source validation verdict. Atomic visibility if publication itself fails or is cancelled, all publishers' source provenance, and last-green source selection remain obligations of #3842 and the generation work in #3461. They must not be described as solved by moving this one hand-over step.
Related: Plugins #1583 blocks its bake publisher on the portal-host aggregate; it does not cover this earlier registry hand-over. Core #3876/#3877 repairs HTTP behavior while a publication seal is absent, not whether the producer was entitled to publish that source.