Skip to content

2026-05-08 — Onboard skyflow-hq to the petrova line

Status: accepted Author: alex@devarno.com Decides for: petrova-hq registry; skyflow-hq governance posture

The skyflow-me GitHub organisation hosts ~25 consumer repos for Skyflow V2 (V1 Python/FastAPI/Mongo → V2 Go/Python/Postgres/NATS, async timeline analysis, event-driven SOA, BFF preserved). A 22-artefact V2 spec corpus exists (protobuf schemas, SQL schemas, NATS topology, 5 service SRS, 2026-02-13 strategic plan) but had no governance loop — no acceptance gates, no verification rounds, no delegation grammar.

Skyflow needs the same governance treatment kahn-hq, eva-hq, rocky-hq already get: a control-plane workspace that knows which org repos exist, what phase they are in, and which subagent owns the next acceptance gate.

Add skyflow-hq to petrova-hq/registry.yaml with:

  • role: control-plane
  • profile: strict
  • fleets_allowed: []
  • integrations_applicability: ares:not_applicable, traceo:optional, crumb:not_applicable, rocky:optional, eva:required (9 cycles wired at bootstrap).
  • contract_committers: ["humans"]
  • contract_sha: omitted — skyflow-hq has not yet authored .petrova/contract.yaml. First contract commit will populate this field on a follow-up PR per MR-13 (intent vs. observation; the registry edit is intent only).

Bump updated: from 2026-05-06 to 2026-05-08.

  • The petrova CLI (petrova status --slug skyflow-hq) resolves the registry entry once this PR merges. Skyflow’s bootstrap ADR (skyflow-me/skyflow-hq:docs/decisions/2026-05-08-petrova-bootstrap-skyflow.md) references this entry as a precondition for Phase 1 entry.
  • profile: strict + fleets_allowed: [] mirrors petrova-hq, eva-hq, rocky-hq. Verbs requiring a fleet identity (request_merge_when_green) will be refused for skyflow-hq. Open-decision / verify-round / request-review verbs remain available for human-fleet invocation.
  • eva: required because 9 cycles are wired at bootstrap. A follow-up petrova-doctor pass should observe eva:wired once the cycles run their first artefact-emitting cadence (per MR-14: probes auto-demote, never auto-promote — promotion to wired requires the consumer-side contract commit).
  • Adding a 26th repo to the skyflow-me org continues to require a registry-update PR here (Skyflow-side onboarding flow lives at skyflow-hq:docs/runbooks/petrova-cli.md).
  • (none)
  • skyflow-hq bootstrap ADR: https://github.com/skyflow-me/skyflow-hq/blob/main/docs/decisions/2026-05-08-petrova-bootstrap-skyflow.md
  • skyflow-hq cycle inventory: cycles/{daily-eng-pulse,weekly-eng-changes,monthly-fleet-snapshot,decompose-pending-work,email-flow-health,phase-acceptance-gate,north-star-drift-check,governance-mr-audit,decision-doc-freshness}/cycle.yaml.
  • skyflow-hq AGENTS.xml: 13 subagents (5 generic + 8 Skyflow-specific: proto-schema-author, migrator, nats-topology-author, go-service-implementer, python-service-implementer, bff-forwarding-implementer, infra-implementer, data-cutover-author).
  • V2 spec corpus: STRATEGIC-PLAN.md (2026-02-13), 5 service SRS, protobuf + SQL + NATS topology.
  1. Registry validates against registry.schema.json:
    Terminal window
    python -c 'import json,yaml,jsonschema; jsonschema.validate(yaml.safe_load(open("registry.yaml")), json.load(open("registry.schema.json")))'
    (Confirmed at PR-creation time.)
  2. petrova status --slug skyflow-hq resolves the entry post-merge.
  3. petrova doctor --slug skyflow-hq runs without REPO_NOT_IN_REGISTRY.
  4. The skyflow-hq docs-invariants.yml workflow runs green on its first PR.