Orchestration Hub
The central nervous system of eight GitHub organizations
Related Live Sites
Orchestration Hub Concept Sketch
The Problem: Scale Without Legibility
Every system with 171 repositories needs a single place that answers "what exists, what's its status, and who owns it?"[1] Meadows identifies information flows as the most powerful leverage points in complex systems — when participants can see the system's state, they make better decisions. Most multi-repo systems rely on tribal knowledge: someone remembers which repo does what, which ones are active, which ones were experiments. That breaks at scale. It breaks when you onboard new contributors — human or AI. And it breaks when you need to answer a simple question: is this system healthy?[2]
The Solution
A machine-readable JSON registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system (registry-v2.json) that serves as the single source of truth for the entire eight-organ system.[3] Fowler's principle of a "Repository" pattern — an abstraction layer that mediates between the domain and data mapping layers — applies here at the organizational scale. Every repository entry carries its current status, documentation tier, dependency declarations, promotion state, implementation status, and portfolio relevance score. The registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system isn't documentationabout the system — it is the system's self-knowledge. When the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system and reality disagree, either the registry must be updated or reality must be fixed. This is Article I of the system constitution.[4]
┌──────────────────────────────┐
│ orchestration-start-here │
│ │
│ registry-v2.json │
│ governance-rules.json │
│ 5 workflows · 3 scripts │
└──────────┬───────────────────┘
│
┌────────────┼────────────────┐
│ │ │
┌────────▼──────┐ ┌──▼──────────┐ ┌───▼──────────┐
│ ORGAN-I │ │ ORGAN-II │ │ ORGAN-III │
│ Theory │─▶ Art │─▶ Commerce │
│ 18 repos │ │ 22 repos │ │ 21 repos │
└───────────────┘ └─────────────┘ └──────────────┘
│ │ │
┌────────▼──────┐ ┌──▼──────────┐ ┌───▼──────────┐
│ ORGAN-V │ │ ORGAN-VI │ │ ORGAN-VII │
│ Process │ │ Community │ │ Marketing │
└───────────────┘ └─────────────┘ └──────────────┘
│
┌──────────▼───────────────────┐
│ meta-organvm │
│ (Umbrella Org) │
└──────────────────────────────┘
Flow enforced: I → II → III (no back-edges)
Hub validates all 31 dependency edges.Registry Architecture
The v2 registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system is a single JSON file with a versioned envelope wrapping per-organ repository arrays. The top-level structure carries a deployment model declaration, a summary block with system-wide counts, and an audit_history array that the monthly workflow appends to automatically — giving the file a built-in changelog of every health check ever run.[5] The schema follows the Composite patternA Gang of Four design pattern where individual objects and groups of objects share a common interface, enabling uniform traversal at any granularity — each repository is a leaf node, organs are composites, and the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system root allows queries at any granularity without traversing the entire structure.
{
"version": "2.0",
"schema_version": "0.2",
"deployment_model": "PARALLEL_ALL_ORGANS",
"summary": {
"total_repos": 80,
"operational_organs": 8,
"portfolio_strength": "SILVER (ALL ORGANS)"
},
"organs": {
"ORGAN-I": {
"name": "Theory",
"launch_status": "OPERATIONAL",
"repositories": [ ... ]
}
},
"audit_history": [
{ "date": "2026-02-01", "total_repos": 79, "violations": 0 },
{ "date": "2026-03-01", "total_repos": 80, "violations": 0 }
]
}Each of the 171 entries in the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system carries structured metadata that enables both automated validation and human reasoning about system state. ORGAN-III repositories carry two additional fields — type (SaaS / B2B / B2C / internal) and revenue — reflecting that commerce-layer repos have a business model dimension absent from theoretical or artistic work.
| Field | Type | Purpose |
|---|---|---|
status | enum | ACTIVE, ARCHIVED, PLANNED |
tier | enum | flagship, standard, stub, archive, infrastructure |
documentation_status | enum | DEPLOYED, FLAGSHIP README DEPLOYED, INFRASTRUCTURE, SKELETON, EMPTY |
dependencies | array | Cross-organ dependency declarations (org/repo strings) |
promotion_status | enum | LOCAL → CANDIDATE → PUBLIC_PROCESS → GRADUATED → ARCHIVED |
implementation_status | enum | PRODUCTION, PROTOTYPE, SKELETON, DESIGN_ONLY |
portfolio_relevance | enum | CRITICAL, HIGH, MEDIUM, LOW, INTERNAL |
last_validated | ISO 8601 | Timestamp of the most recent automated validation pass |
{
"orchestration-start-here": {
"organ": "IV",
"status": "ACTIVE",
"tier": "flagship",
"promotion_status": "GRADUATED",
"implementation_status": "PRODUCTION",
"documentation_status": "FLAGSHIP README DEPLOYED",
"dependencies": [],
"portfolio_relevance": "CRITICAL",
"ci_workflow": "ci-python.yml",
"platinum_status": true,
"last_validated": "2026-03-01T02:00:00Z",
"description": "Central nervous system of the eight-organ architecture"
}
}Because the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system is plain JSON, any tool in the standard Unix toolchain can query it without a bespoke client. The three commands below cover the most common operational queries:
# Count repos per organ
jq '.organs | to_entries[] | {organ: .key, count: (.value.repositories | length)}' registry.json
# Find all repos with CRITICAL portfolio relevance
jq '[.organs[].repositories[] | select(.portfolio_relevance == "CRITICAL")] | .[].name' registry.json
# Find undocumented active repos (candidates for the monthly audit warning list)
jq '[.organs[].repositories[]
| select(.documentation_status != "DEPLOYED"
and .documentation_status != "FLAGSHIP README DEPLOYED"
and .documentation_status != "INFRASTRUCTURE"
and .status == "ACTIVE")] | .[].name' registry.jsonValidation Pipeline
The validation pipeline runs on every pull request that touches a dependency manifest in any organ repository. It fetches the central registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system and governance rules from this hub, classifies the pull request's source organ, then runs three sequential checks before allowing a merge gateA CI enforcement point that blocks code integration until all automated quality and policy checks pass.[6] Humble and Farley's core argument — that the deployment pipeline should be the only legitimate path for changing system state — applies at the governance layer: no dependency may be added except through a PR that passes all three checks.
Direction validation enforces the I→II→III flow: ORGAN-I has no upstream dependencies, ORGAN-VII depends exclusively on ORGAN-V, and every other organ's allowed dependency set is defined ingovernance-rules.json. Circular dependency detection builds the full system-wide graph — not just the PR under review — and runs DFS cycle detection so that a cycle introduced transitively is still caught. Transitive depth analysis measures the longest chain from the PR's repo through all dependencies; the limit of four leaves one additional layer of growth before requiring architectural review.
def validate_dependencies(registry: dict) -> list[str]:
"""Validate all dependency edges. Returns list of violations."""
violations = []
organ_order = {'I': 1, 'II': 2, 'III': 3, 'IV': 4,
'V': 5, 'VI': 6, 'VII': 7, 'META': 8}
for repo, meta in registry.items():
src_organ = meta['organ']
for dep in meta.get('dependencies', []):
dst_organ = dep.split('/')[0].split('-')[-1].upper()
if organ_order.get(dst_organ, 0) < organ_order.get(src_organ, 0):
violations.append(f"BACK-EDGE: {repo} -> {dep}")
# Cycle detection via topological sort
if has_cycle(build_graph(registry)):
violations.append("CIRCULAR DEPENDENCY DETECTED")
return violations # Must be empty for merge gate to passGovernance as Code
The governance-as-codeEncoding organizational rules, policies, and constraints as machine-readable files that are version-controlled, testable, and automatically enforced model is codified in governance-rules.json — a machine-readable constitution with six articles and four amendments.[7] Scott's critique of "high modernist" schemes warns against legibility imposed without local knowledge — these governance rules encode both top-down constraints (no back-edges, mandatory documentation) and bottom-up flexibility (promotion is earned, not assigned). The most important constraint: no-back-edges ruleA dependency constraint requiring that information flow only in one direction through a layered system, preventing circular coupling in the dependency graph. Theory feeds art feeds commerce (I→II→III), validated automatically across all 31 dependency edges.[8]
The four amendments handle edge cases the six articles cannot cover with clean automation. Amendment A establishes the Bronze Tier Launch Path — five rigorously documented repos beat forty-four mediocre ones — encoding a quality-over-quantity policy directly in the governance file. Amendment D acknowledges AI non-determinism: all AI-generated deliverables require human review before a repo may advance beyond CANDIDATE state, preventing automated systems from self-promoting their own output.
| Amendment | Title | Enforcement |
|---|---|---|
| A | Bronze Tier Launch Path | 5 perfect repos beat 44 mediocre repos |
| B | Coordination Overhead Budget | 10% of phase TE budgeted for reconciliation |
| C | Registry Schema Completeness | dependencies[], promotion_status, tier, last_validated required |
| D | AI Non-Determinism Acknowledgment | All AI-generated deliverables require human review |
Automation: Five Workflows, Three Scripts
The automation layer transforms governance from aspiration to enforcement. All five workflows are data-driven: logic lives in registry-v2.json and governance-rules.json, not in workflow YAML. Changing a governance rule — for example, permitting a new dependency direction — requires updating the JSON constitution; no workflow file needs modification. The three Python scripts share the same zero-external-dependencies constraint (Python 3.12 standard library only), making them portable across any environment with a Python interpreter.[9]
- validate-dependencies — Checks the dependency graph on every PR that touches a dependency manifest. Cycle detection, transitive depth analysis (limit: 4), back-edge blocking. Posts a structured PR comment with per-check results.
- monthly-organ-audit — Full system health check on the 1st of each month. Runs all three Python scripts, opens a GitHub Issue with the Markdown report and metrics table, then commits an updated
audit_historyentry back toregistry.json. - promote-repo — Handles promotion state machine transitions triggered by issue comment commands. Pre-validates against governance rules; for commerce promotions, verifies revenue model documentation. Executes repository creation in the destination organ when
ORCHESTRATION_PATis configured. - publish-process — Extracts source README content and generates a structured ORGAN-V process essay with YAML frontmatter, then opens a PR in
organvm-v-logos/public-process. Connects the Theory→Art→Commerce pipeline with the public documentation organ. - distribute-content — POSSE distribution to Mastodon (HTTP 200 verified) and Discord (HTTP 204 verified). Triggered by the
ready-to-distributelabel on any issue in this repository.
# Run dependency direction validation (exit 0 = clean, exit 1 = violation)
python3 scripts/validate-deps.py \
--registry registry.json \
--governance governance-rules.json
# Full organ audit — produces structured Markdown report
python3 scripts/organ-audit.py \
--registry registry.json \
--governance governance-rules.json \
--output audit-report.md
# Calculate system-wide metrics → metrics.json
python3 scripts/calculate-metrics.py \
--registry registry.json \
--output metrics.json
# Trigger monthly audit manually via GitHub CLI
gh workflow run monthly-organ-audit.yml \
--repo organvm-iv-taxis/orchestration-start-here
# Trigger dependency validation manually
gh workflow run validate-dependencies.yml \
--repo organvm-iv-taxis/orchestration-start-hereThe calculate-metrics.py script produces a metrics.json snapshot that the monthly audit workflow embeds in its GitHub Issue report. Each run appends to the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system'saudit_history array, giving every audit a persistent record without requiring a separate data store. The system is self-archiving by design.
Why a Registry Matters
A machine-readable registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system enables automation (CI/CD workflows query it), auditing (monthly health checks generate reports from it), and honest portfolio presentation (the portfolio site reads from the same source of truth as the governance scripts).[10] Deming's principle — "In God we trust; all others must bring data" — is enacted literally: the registryA centralized, queryable data store that serves as the single source of truth for all entities and their relationships in a system is the data. It's what makes the eight-organ system governable rather than merely large. It's the difference between 171 repositories and asystem.[11]
Tradeoffs & Lessons
- Single file vs. distributed config — Keeping the entire registry in one JSON file means every change touches one file and every query is a local read. The alternative (per-repo config files aggregated at build time) would be more distributed but harder to validate atomically. At 171 entries the single-file approach works; at 500 it might not.[12]
- Strict governance vs. velocity — The no-back-edges rule and promotion state machine add friction to every cross-organ change. This is intentional: the friction prevents the most common failure mode of multi-repo systems (tangled dependencies that nobody can reason about). But it slows rapid prototyping across organ boundaries.
- Monthly audit cadence — Monthly is frequent enough to catch drift but infrequent enough to be actionable. Weekly would create audit fatigue; quarterly would let too much drift accumulate. The auto-commit of audit results into
registry.jsonkeeps the cadence self-enforcing. - Constitution as code — Writing governance rules as JSON rather than prose forces precision but loses nuance. Article V ("Portfolio-Quality Documentation") requires human judgment that cannot be reduced to a JSON field. The compromise: automated checks for measurable criteria, manual review gates for qualitative ones.[13]
- Zero external dependencies in scripts — All three Python scripts use only the standard library. This keeps them executable in any GitHub Actions runner without a
pip installstep and eliminates an entire class of supply-chain failure modes. The tradeoff is verbosity: graph algorithms thatnetworkxwould express in two lines require explicit DFS implementations.
References
- Meadows, Donella H.. Thinking in Systems: A Primer. Chelsea Green Publishing, 2008.
- Brooks, Frederick P.. The Mythical Man-Month: Essays on Software Engineering. Addison-Wesley, 1975.
- Fowler, Martin. Patterns of Enterprise Application Architecture. Addison-Wesley, 2002.
- Ostrom, Elinor. Governing the Commons: The Evolution of Institutions for Collective Action. Cambridge University Press, 1990.
- Gamma, Erich, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994.
- Humble, Jez and David Farley. Continuous Delivery: Reliable Software Releases through Build, Test, and Deploy Automation. Addison-Wesley, 2010.
- Scott, James C.. Seeing Like a State: How Certain Schemes to Improve the Human Condition Have Failed. Yale University Press, 1998.
- Martin, Robert C.. Clean Architecture: A Craftsman's Guide to Software Structure and Design. Prentice Hall, 2017.
- Raymond, Eric S.. The Art of Unix Programming. Addison-Wesley, 2003.
- Deming, W. Edwards. Out of the Crisis. MIT Press, 1986.
- Senge, Peter M.. The Fifth Discipline: The Art and Practice of the Learning Organization. Doubleday, 1990.
- Tanenbaum, Andrew S. and Maarten van Steen. Distributed Systems: Principles and Paradigms. Pearson, 2007.
- McConnell, Steve. Code Complete: A Practical Handbook of Software Construction. Microsoft Press, 2004.