Skip to content

2026-08-03 — Admit petrova-codes/templates to the registry


2026-08-03 — Admit petrova-codes/templates to the registry

Section titled “2026-08-03 — Admit petrova-codes/templates to the registry”

Date: 2026-08-03 Status: proposed Verb: request_review Slug: templates MR-compliance: MR-12

petrova-codes/templates holds .github/workflows/docs-invariants.yml — the workflow petrova_onboard installs into every consumer repo — plus META-RULES.md and brand.yaml.tmpl. petrova-codes consumes it as the core/templates submodule (gitlink 2cd03c1).

Until now it was an ungoverned write surface with estate-wide reach:

  • No registry entry, so no petrova verb could target it.
  • No verb-mediated PR, so no awaiting-human-merge label, no MR citations, no decision-doc trail.
  • A defect in it propagates to every consumer at the next onboard.

That combination is precisely what the control plane exists to prevent, and it was invisible because the repo was never enumerated.

While fixing F-020 (docs-invariants.yml crashes on any repo lacking AGENTS.xml or MILESTONES.md, so petrova_onboard installs a workflow the onboarding PR cannot pass), a request_review against petrova-codes targeting core/templates/.github/workflows/docs-invariants.yml returned:

PUT .../contents/core%2Ftemplates%2F... - 409
Sorry, a file exists where you're trying to create a subdirectory.

GitHub refusing to write through a gitlink. The path is not in petrova-codes’ tree at all.

role: control-plane — this is not a consumer, it is the substrate consumers are built from. profile: strict + fleets_allowed: [] per FR-009.

A fix landing in templates does not reach petrova-codes until the submodule pointer is bumped, and a gitlink update cannot be expressed through the Contents API — so it still requires a non-verb path. This admission makes the content governed; the pin remains a manual step. Recorded as the open half of docs/findings/20260803-1500-docs-invariants-missing-guards.md.

Human merge required per MR-12 — opened with the awaiting-human-merge label.