Follow-up to #877/#878. codeant correctly identified that the driver's in-place repin path (deploy_repo when repin_source = existing stub body, e.g. BODY_PRESERVING_WORKFLOWS + meta-repo channel-consumers) rewrites only uses:/agent_ref and would flag an S7635-marker-drift but never RESTORE the marker → a non-converging drift loop.
Verified LATENT (2026-07-22): no currently-marker-affected stub reaches this path — dev-lead/dependabot-automerge are SKIP_SELF_MANAGED on both meta-repos (never swept), auto-rebase deploys verbatim (template carries the marker), and neither feature-ideation (the sole BODY_PRESERVING workflow) nor pr-auto-review (the meta-repo SKIP_OVERRIDES consumer) has a real secrets: inherit line. So it cannot churn today.
Why fix anyway (defense-in-depth): the moment a marker-affected workflow is added to BODY_PRESERVING_WORKFLOWS, or a secrets: inherit template is opted into a meta-repo via SKIP_OVERRIDES, this becomes a live non-converging loop.
Scope
- On the in-place repin path, when the template
template_requires_s7635_marker and the repinned body lacks the marker, INJECT # NOSONAR(githubactions:S7635) first-party trusted reusable onto the secrets: inherit line of the repinned body (or fall back to the template body).
- Bats: an in-place repin of a marker-less body whose template requires the marker produces a body that carries it (converges in one pass).
Refs: Epic #850, #877/#878, codeant review on #878.
Follow-up to #877/#878. codeant correctly identified that the driver's in-place repin path (
deploy_repowhenrepin_source= existing stub body, e.g. BODY_PRESERVING_WORKFLOWS + meta-repo channel-consumers) rewrites onlyuses:/agent_refand would flag an S7635-marker-drift but never RESTORE the marker → a non-converging drift loop.Verified LATENT (2026-07-22): no currently-marker-affected stub reaches this path —
dev-lead/dependabot-automergeare SKIP_SELF_MANAGED on both meta-repos (never swept),auto-rebasedeploys verbatim (template carries the marker), and neitherfeature-ideation(the sole BODY_PRESERVING workflow) norpr-auto-review(the meta-repo SKIP_OVERRIDES consumer) has a realsecrets: inheritline. So it cannot churn today.Why fix anyway (defense-in-depth): the moment a marker-affected workflow is added to BODY_PRESERVING_WORKFLOWS, or a
secrets: inherittemplate is opted into a meta-repo via SKIP_OVERRIDES, this becomes a live non-converging loop.Scope
template_requires_s7635_markerand the repinned body lacks the marker, INJECT# NOSONAR(githubactions:S7635) first-party trusted reusableonto thesecrets: inheritline of the repinned body (or fall back to the template body).Refs: Epic #850, #877/#878, codeant review on #878.