ORCHESTRA — Integration-Tests Authority Coordination Record¶
Authority codename: ORCHESTRA (ecosystem-integration-tests, the only public ecosystem project at v1.7.1)
Authority repo: ecosystem-integration-tests/ (public)
FCC owner persona: LAR (Lane-Aware Router Steward) + OTO (OpenTelemetry Observer) coordinate on the emission side; test-side ownership is split across the 8 personas that own the contract-validated surfaces
FCC peer liaisons: RHL (NEXUS side), IHL/OSC/PCT (PHOENIX side) — ORCHESTRA cross-cuts both
Active handoffs: 6 offline contract modules + advisory/required CI gate + five-partner contract validation
Authority role¶
ORCHESTRA is the ecosystem's Integration-Tests Authority. It is a standalone Python test project (pyproject.toml, pytest config + markers, independent make check) that validates the inter-repo contracts across the FCC-L2 constellation without coupling its test runs to any single partner's make check. Every partner can still pass its own tests offline; ORCHESTRA validates that partners' public surfaces remain mutually compatible.
At v1.7.1 ORCHESTRA is the only public ecosystem project — every other FCC-side ecosystem tool (NEXUS registries, PHOENIX patent tree, constellation vocabularies) operates under mirrored or private-until-cleared postures. ORCHESTRA's public status is load-bearing: it is the artifact an external auditor, prospective JV partner, or reproducibility reviewer can clone without special access. It is the ecosystem's "open front door."
FCC depends on ORCHESTRA because FCC publishes eight entry-point groups (fcc.plugins.personas, fcc.plugins.engines, fcc.plugins.templates, fcc.plugins.scorers, fcc.plugins.validators, fcc.plugins.providers, fcc.plugins.vocabulary_providers, fcc.plugins.subscribers) whose shape must stay compatible with what AOME/CRUCIBLE, CTO, PRISM, AURORA, and NEXUS consume. If FCC ships a persona registry change, a vocabulary-provider-plugin contract change, or a FederationRegisteredEvent-shape change, ORCHESTRA catches the break across the ecosystem before it reaches production.
ORCHESTRA's design philosophy is offline-default with clean skip semantics. All default-tier tests use AST walking and grep-style substring checks against partner source trees — no HTTP, no subprocess, no DB. Live-mode integration is available but strictly opt-in via markers. This lets ORCHESTRA run in any CI environment (including sandboxed / air-gapped) without credentials, and lets it gracefully skip whenever a partner repo is simply not checked out locally.
Coordination cadence¶
- Per-commit (required from v1.5.x): ORCHESTRA's offline test suite runs as a required CI gate on FCC pull requests under
ecosystem-integration-tests.yml. Prior to v1.5.x it ran as advisory (added v1.3.11). - Per-release (FCC patch cadence): full matrix run including
requires_fcc_installedmarker set; validates the eight FCC entry-point groups - Weekly scheduled: live-mode opt-in run that includes
requires_paom_live,requires_aome_live,requires_distiller_livemarkers against staging deployments (when credentials are available) - Ad-hoc: any partner publishing a new contract-surface (new namespace, new event type, new MCP method) MUST add a corresponding ORCHESTRA contract test before the partner's release merges
Handoff artifacts¶
FCC hands to ORCHESTRA:
- Stable module and API surfaces for the eight
fcc.plugins.*entry-point groups - Canonical event shapes (85 event types across PAOMBus + UXBus at v1.4.2+)
- Namespace registry (11 ecosystems) for cross-consistency checks
- Vocabulary provider class-map shape (12 vocabulary_providers plugins)
- FederationRegisteredEvent serialization contract
- Persona registry structure (168 personas at v1.7.1 with R.I.S.C.E.A.R. spec)
ORCHESTRA hands back to FCC:
- Per-PR CI status (green/red) on the offline contract suite
- Per-release full-matrix contract report
- Contract-drift reports when a partner's change breaks FCC's assumption (auto-assigned to the appropriate FCC persona owner)
- New contract-test templates when a new cross-repo surface is ecosystem-wide
Cross-repo contracts¶
Partners exercised (5 + 1 optional)¶
| Codename | Repo path | Role |
|---|---|---|
| CTO | ../attic_om_poc/cto/ |
core (ontology) |
| CRUCIBLE | ../aome_ext/ |
core (agentic OM) |
| PRISM | ../constel_ext/ |
core (metadata) |
| AURORA | ../sky-parlour_poc/sky-parlour/backend/ |
application (visualization) |
| NEXUS | ../research_center_ext/ |
foundation (statistical) |
| SENTINEL | ../paom/ |
integration (LLM/router) — optional live-mode only |
Contract test modules (8 total — 2 legacy + 6 RT-14 additions)¶
Legacy (pre-RT-14):
| Module | Validates |
|---|---|
test_namespace_registry.py |
namespaces.yaml cross-consistency across all partners |
test_plugin_discovery.py |
FCC entry-point declarations (requires_fcc_installed marker) |
test_vocabulary_roundtrip.py |
vocabulary provider class-map shape |
test_event_replay.py |
FederationRegisteredEvent round-trip |
test_mcp_contract.py |
PAOM → CTO / AOME MCP stubs |
test_http_contract.py |
PAOM HTTP endpoints (live marker) |
RT-14 Sprint 1 contract modules (six, under tests/contracts/):
| Module | Validates |
|---|---|
test_aome_sid_contract.py |
RT-13 SID three-layer models + domains + URI prefixes + bus + /api/v1/sid/* routes |
test_aome_qa_contract.py |
RT-12 Q&A models + LLMAdapter Protocol + /api/v1/qa/* routes + ideation bundle shape |
test_aome_distiller_bidirectional.py |
AOME bridge / handlers / clients + Distiller /api/v1/aome/* routes + bus subjects |
test_paom_fcc_plugins_aome_consumes.py |
PAOM 8 FCC entry-point groups + AOME PAOM proxy modules |
test_otel_event_boundary.py |
back-office BUS_* constants stay out of aurora. / skyparlour. / fornax: UX-lane prefixes |
test_a2a_skill_card_complete.py |
JV agent-card parity with SkillRegistrar — 10 required skill_ids |
All RT-14 tests use AST walking + grep-style substring checks against the partner source trees — no HTTP, no subprocess, no DB. Tests skip cleanly when partner repos are missing. Fixtures for future AOME-shape offline checks live in tests/contracts/fixtures/aome/.
Markers and modes¶
| Marker | Default | Trigger |
|---|---|---|
cross_repo |
on | default, fast, offline |
requires_fcc_installed |
off | skipped unless FCC_ROOT env set |
requires_paom_live |
off | skipped unless PAOM_LIVE=1 |
requires_aome_live |
off | skipped unless AOME_LIVE=1 (needs AOME on :3100) |
requires_distiller_live |
off | skipped unless DISTILLER_LIVE=1 (needs Distiller on :8002) |
CI gate evolution¶
| FCC release | Gate status |
|---|---|
| v1.3.10 and earlier | not yet wired |
| v1.3.11 | advisory — runs on FCC PRs but does not block merge (ecosystem-integration-tests CI gate added) |
| v1.4.0 – v1.4.4 | advisory; partner repos added contract tests as they stabilized |
| v1.5.0 – v1.5.x | required-candidate — green required to release, but blocking enforcement still soft-gated |
| v1.7.1+ (this record) | required in the per-PR check matrix |
Open items¶
- Live-mode credentials: staging credentials for
requires_paom_live/requires_aome_live/requires_distiller_livestill owner-approval-gated for automated CI; weekly live run requires manual trigger - SENTINEL contract coverage: SENTINEL (PAOM) is optional-live-mode at v1.7.1; offline contract module for SENTINEL pending when PAOM stabilizes its LLM-router surface
- RT-14 fixtures:
tests/contracts/fixtures/aome/placeholder only; full fixture set pending AOME v2.6.0 shape freeze - Cross-cutting contract drift: no durable dashboard for per-partner contract-drift trend; ORCHESTRA emits per-run reports but has no aggregation UI
- Public-repo responsibility: as the only public project at v1.7.1, ORCHESTRA also serves as the external-facing reproducibility artifact; separate README section for "how to evaluate FCC from outside" pending
References¶
- Sibling record (research lane):
docs/ecosystem/coordination/nexus-research-coordination.md - Sibling record (open-science / patent lane):
docs/ecosystem/coordination/phoenix-open-science-coordination.md - Landing page:
docs/ecosystem/coordination/README.md - Tri-authority topology:
docs/ecosystem/tri-authority-topology.md - Ecosystem alignment status:
docs/ecosystem/alignment-status.md - ORCHESTRA repo:
ecosystem-integration-tests/(public) - Partner repos:
attic_om_poc/cto/(CTO),aome_ext/(CRUCIBLE),constel_ext/(PRISM),sky-parlour_poc/sky-parlour/backend/(AURORA),research_center_ext/(NEXUS),paom/(SENTINEL — optional) - CI workflow:
.github/workflows/ecosystem-integration-tests.yml - Created under: RT-8 (Ecosystem Integration + Release) in the FCC-L2 Federation Alignment plan
- LAR persona:
src/fcc/data/personas/lane_aware_router_steward.yaml - OTO persona:
src/fcc/data/personas/opentelemetry_observer.yaml