Novolis Docs
novolis-governance / bootstrap-gate-assessment.md

Bootstrap and migration gates

dotnetgovernancenovolis

Assessment date: 2026-05-17. Split per frank-naming-and-structure.md.

Two gates (do not conflate)

GatePurposeStatus
**Org bootstrap**GitHub org, template, workflows, registry, reserved repos, template CI**Done** (smoketest validates template/workflows)
**Migration readiness**Naming sign-off + first real library NuGet from a domain repo**In progress** — pilot on `novolis-messaging`

Org bootstrap — verdict

ActivityAllowed?
Frank inventory, scoring, planning docsYes
Governance and extraction briefsYes
Template / smoketest CIYes
Copying Frank source into `novolis-*`Yes (after [frank-naming-and-structure.md](./frank-naming-and-structure.html) sign-off)

Org bootstrap criteria

CriterionStatus
Organization existsDone
Governance, template, workflows, installer, registryDone
Reserved domain repos existDone
CI on template / smoketestDone
.NET 10 standardDone (2026-05-17)

novolis-smoketest validates org bootstrap only (Novolis.TemplateSmokeTest). It is not the Frank migration publish gate.

Migration readiness gate

StepStatus
[frank-naming-and-structure.md](./frank-naming-and-structure.html) signed offDone (2026-05-17)
Trusted publishing on `novolis-messaging`Configure per [nuget-setup.md](./nuget-setup.html#migration-gate-novolis-messaging)
Ship `Novolis.Messaging.Channels` `0.1.0-preview.1`After pilot extract + release
Registry entry for pilot packagePending first publish

Sign-off (migration gate)

Migration publish gate opened: YYYY-MM-DD — Novolis.Messaging.Channels 0.1.0-preview.1 from novolis-messaging (trusted publishing).

Non-blocking follow-ups

  • Branch rulesets on all org repos
  • Registry PR flow sign-off for all packages
  • Maintainer runbook for per-repo trusted publishing policies