Ontology, Knowledge Graph, and Semantic Data Intake Virtuoso — Boss Agent and MOA Registration
Version: 1.0.0 Registered: August 6, 2026 Status: Code-side registration complete on the feature branch; production activation follows the normal Boss/MOA/Virtuoso deployment pipeline. Do not claim production registration until the serving-plane checks at the bottom pass.
Purpose
One additive, governed semantic-governance skill — ontology-kg-virtuoso — giving Boss Agent and MOA eight routable expertise profiles (a parent orchestrator plus seven specialists) across ontology engineering, ontology research, controlled ontology evolution, semantic data intake, entity resolution, knowledge-graph quality, and graph-powered retrieval/reasoning. It is the canonical owner of semantic governance: canonical concepts and definitions, source mappings, identity semantics, provenance/temporal/contradiction rules, ontology versions, and graph integrity. It extends miz-oki-platform-expert and complements enterprise-virtuoso (whose knowledge_acquisition_virtuoso discovers and trust-scores the sources this skill semantically governs) and media-acquisition-virtuoso; it replaces neither and removes nothing. It also establishes the repository's first canonical ontology registry (ontology/).
What is registered
| Profile | Family | Runtime purpose |
|---|---|---|
ontology_kg_virtuoso |
parent | Semantic-scope routing, delegation planning, synthesis, dissent preservation, ontology-governance decision packaging |
ontology_engineering_virtuoso |
Semantic Foundation | Foundational/enterprise/domain/application ontology design, taxonomies, vocabularies, constraints, competency questions |
ontology_research_virtuoso |
Semantic Foundation | Internal schema research + external standards (RDF/RDFS/OWL/SHACL/SKOS/PROV-O, Schema.org, Dublin Core, FIBO, GS1, ISO, regulatory vocabularies) with authority/licensing/compatibility review |
ontology_evolution_virtuoso |
Semantic Foundation | Gap/drift detection, change proposals, simulation/benchmarking, approval routing (automatic/steward/architecture), versioned migrations, rollback, monitoring |
semantic_intake_virtuoso |
Intake & Identity | 20-step source intake: registration, profiling, schema inference, mapping with governed statuses, normalization, validation, quarantine, controlled ingestion |
entity_resolution_virtuoso |
Intake & Identity | Deterministic-first matching, golden records, survivorship, reversible merge/split — consent-gated; probabilistic edges recall-only |
graph_quality_virtuoso |
Graph Operations & Reasoning | Constraint auditing, validation/repair, migration safety, lineage, observability, provenance/temporal/contradiction enforcement |
graph_reasoning_virtuoso |
Graph Operations & Reasoning | GraphRAG retrieval optimization, CausalRAG reasoning support, competency-question evaluation, measured benchmarks |
The profile names are skill overlays, not model IDs. Model selection remains governed by the central Virtuoso role registry (roles used: CODING_ARCH, DATA_CAUSAL). Every profile is recommend_only.
Registration chain
skills/ontology-kg-virtuoso/ (CANONICAL — 17 files)
├── SKILL.md
└── references/
├── profile_registry.yaml (8 profiles, machine-readable)
├── routing_matrix.yaml (routing rules + smoke routes)
├── output_contracts.md (28-item decision package + claim labels)
├── governance_contract.md (17 additive hard rules)
├── tool_capability_map.yaml (capability CATEGORIES per profile)
├── semantic_intake_contract.md (mandatory 20-step intake + 9 mapping statuses + quarantine)
├── ontology_evolution_contract.md (lifecycle + proposal template + 3 approval levels)
├── provenance_temporal_contradictions.md (provenance fields, 9 assertion types, temporal axes, contradiction protocol)
├── quality_metrics.yaml (metric DEFINITIONS — design targets, not results)
└── domain_playbooks/*.md (7 specialist doctrines)
│
├─ byte-identical mirror → .claude/skills/ontology-kg-virtuoso/ (Claude Code discovery)
├─ byte-identical mirror → src/shared/virtuoso_models/skills_data/ontology_kg_virtuoso/
└─ byte-identical mirror → services/virtuoso-models-service/virtuoso_models/skills_data/ontology_kg_virtuoso/
skills/miz-oki-platform-expert/references/boss_agent_skillpack.md
└── §10 ▸ "### Ontology & Knowledge Graph Virtuoso Registry v1.0 — Boss + MOA" (the runtime registration)
├─ Boss startup: skillpack_bootstrap.compose_skillpack_context() → system prompt (full mode)
├─ MOA experts: model_factory._moa_system_instruction() → shared skill context
├─ every virtuoso_call(..., skills=True) → role-sliced context
└─ MCP: skills_get_section("10") → section retrieval
miz-oki-adk-agents/config/config.yaml ▸ agents.specialists
└── 8 ontology profiles: model_role + provider + skill_profile + skill_source
+ execution_posture: "recommend_only" (Acquisition's 5 and Enterprise's 13 remain above, unchanged)
mcp/mizoki-skills-mcp/ (additive extension)
├── ontology_core.py (transport-free, stdlib-only)
└── server.py registers:
├─ resource mizoki://skills/ontology-kg-virtuoso (SKILL.md verbatim)
├─ resource mizoki://skills/ontology-kg-virtuoso/profiles (registry YAML)
├─ resource mizoki://skills/ontology-kg-virtuoso/routing (routing matrix YAML)
├─ resource mizoki://skills/ontology-kg-virtuoso/capabilities (capability map YAML)
├─ tool ontology_skills_list_profiles
├─ tool ontology_skills_get_profile
├─ tool ontology_skills_route
├─ tool ontology_skills_get_capabilities
└─ tool ontology_skills_version
ontology/ (NEW — canonical ontology registry, first in repo)
├── registry.yaml (version 1.0.0, documented baseline; inventories existing schema homes)
├── foundational/ (33 classes, 28 relationships incl. OPERATING_SYSTEM §2.2 set, 18 constraints)
├── enterprise/ (36 business concepts)
├── mappings/ + competency-questions/ + proposals/ + migrations/ + changelog/
src/cells/cell06/workflows/miz3-semantic-intake-v1.json (Cell 6 MOE-Router workflow manifest,
additive; discoverable via GET /workflows; existing identity-resolution manifest unchanged)
The skillpack §9 GOVERNANCE section is untouched — its SHA-256
(6c529ac9e60a2e8c7079058f51d232a14f4d431185d75b0d6b949bfd1aaa4eee) and the
12-entry section map are unchanged, so no fingerprint pin churn occurred.
Routing behavior
- Single-scope requests route to the matching specialist.
- Requests spanning ≥2 semantic scopes route first to
ontology_kg_virtuoso, which builds the delegation plan and dispatches specialists to MOA. ontology_evolution_virtuosoauto-includes on canonical semantic changes (class merge/split, identifier/definition change, constraint change, deprecation);entity_resolution_virtuosoon identity/merge/person-household work;graph_reasoning_virtuosoon retrieval/reasoning impact measurement.- Cross-skill:
knowledge_acquisition_virtuoso(Enterprise) joins for source discovery/trust scoring;legal_compliance_virtuosofor external-ontology licensing and sensitive-data authorization; the Media Acquisition profiles for marketing/commerce source onboarding. Existing routes of both prior skills are unchanged; when multiple skills apply, all are used. - MOA specialists analyze independently, cite evidence, state uncertainty, and preserve dissent; consensus can never override a failed validation gate.
Governed operating boundary
Evidence pipeline: governed connectors → service-canonical-ingestion → canonical event envelope (MAPPERS[source](raw) → ingest_gate) → KG projection. No direct writes to the canonical KG, BigQuery, Firestore, or vector indexes; semantic validation completes before canonical integration, and data that cannot pass is quarantined with reason codes, never forced or silently dropped. Mappings carry the nine-status vocabulary projecting onto the envelope's coarse mapping_status (the shape registry always wins). Identity is deterministic-first, consent-gated, confidence-scored, reversible; probabilistic identity/household edges stay recall-only and out of causal measurement; raw email/phone never enter the KG. Every assertion carries provenance, confidence, assertion type, and temporal metadata; predictions/recommendations/opinions/hypotheses are never served as observed facts; history is superseded, never overwritten; contradictions are preserved with recorded-evidence-only resolution. Ontology changes are versioned, audited migrations under three approval levels (automatic/steward/architecture) with no self-approval above automatic; irreversible changes are permanently approval-gated. No hallucinated standards, no unlicensed external ontology adoption, no mock benchmark results; improvement claims require measured before/after benchmarks.
Verification
python scripts/ontology_skills_sync.py --check --json # 8 profiles, mirrors, governance, MCP, ontology/ (incl. loader validation battery), legacy intact
python scripts/skills_sync.py --check # base Skills v3.0 parity (incl. vscode extension bundled copy)
python scripts/acquisition_skills_sync.py --check --json # Media Acquisition unchanged
python scripts/enterprise_skills_sync.py --check --json # Enterprise unchanged
python3 src/shared/ontology_registry.py --check # governed registry loader: zero violations
python3 scripts/ontology_eval.py --check # benchmark artifact byte-reproducible
python -m pytest -q tests/skills/test_ontology_kg_virtuoso.py
python -m pytest -q tests/skills # full skills suite
Expected: Ontology-KG Virtuoso parity: OK (8 profiles; governance preserved; legacy skills intact).
Measured on the feature branch (2026-08-06): all four gates OK; tests/skills 99 passed, 1 skipped (pre-existing MCP-SDK-dependent skip).
CI: .github/workflows/ontology-kg-virtuoso-skills-parity.yml (PR + push to main/agent/** + dispatch); the umbrella ci.yaml skills gate also runs the test file via pytest tests/skills -q.
Production rollout
- Merge to
mainthrough the repository's established workflow (AI-branch auto-merge or reviewed PR). - The Deploy Router matches the changed paths:
src/shared/**andmiz-oki-adk-agents/config/config.yaml→deploy-boss-agent-core.yml;src/shared/virtuoso_models/**→deploy-coding-moa.yml;services/virtuoso-models-service/**→deploy-virtuoso-models.yml. The MOA controller (deploy-moa-controller.yml) watches onlymiz-oki-adk-agents/moa/**and must be dispatched manually so its vendored skillpack hash matches the Boss. - Post-deploy serving-plane checks (all must pass before claiming production registration):
# Boss serves the registry (all 8 profile ids + the marker):
curl -s -X POST "$BOSS_URL/execute" -H "Content-Type: application/json" \
-d '{"tool":"skills_get_section","section_name":"10"}'
# Skillpack context loaded, full mode, hash reported:
curl -s -X POST "$BOSS_URL/execute" -H "Content-Type: application/json" \
-d '{"tool":"skills_version"}'
# latestReady == latestCreated on boss-agent-adk, coding-moa, virtuoso-models-service,
# miz-oki-moa-controller; unauth /health posture unchanged (403 = IAM-locked, healthy).
Rollback
- Code: revert the Ontology-KG Virtuoso commits (all changes are additive; reverting restores the prior skillpack/config byte-exactly), rerun all four parity gates.
- Runtime: route traffic to the prior known-good Cloud Run revision per service; verify health and the prior skillpack hash.
- Feature: the existing global kill switch
VIRTUOSO_SKILLS_DISABLED=1disables all skillpack context (base + acquisition + enterprise + ontology) on every surface;ENABLE_SKILLPACK_CONTEXT=falsedisables the Boss bootstrap only. No ontology-specific flag was added: the registration is inert data unless the shared skillpack layer serves it, and a scoped kill switch would have required new code in the hash-pinned load path. Removing the §10 H3 block (a one-commit revert) is the scoped disable.
Known limitations
- The registration lives in skillpack §10:
DATA_CAUSAL/CREATIVE_MMrole slices ofvirtuoso_calldo not include §10 (same as the acquisition and enterprise skills); Boss (full mode), MOA experts (role=None),CODING_ARCH, andDEVOPS_OPSreceive it, and any agent can pull it viaskills_get_section("10"). ontology_skills_routeis deterministic keyword routing over registry aliases — advisory metadata for Boss, not a semantic classifier.- Capability categories map to live tools only through runtime discovery; unconfigured stores report
not_configured, never mock data. - Specialist profiles are governed config entries composed on demand (same as acquisition/enterprise); they are not eight always-on services.
ontology/is a machine-validated baseline (spec authority, registry v1.1.0 / OCP-20260806-001): the governed loadersrc/shared/ontology_registry.pyparses and structurally validates every module (reference integrity, subclass acyclicity, named approval-ladder appointments, evaluation-set integrity, content hash), the mizoki-skills MCP server consumes it at runtime (ontology_registry_get/ontology_registry_validate+mizoki://ontology/registry), and CI fails on any violation viascripts/ontology_skills_sync.py --check. Per-service ADOPTION of ontology-governed behavior still lands through governed proposals/migrations — the loader existing opts no service in. The envelope'sontology_version/mapping_statusfields and the existing schema homes (kg_schemas.py, UEES,kg_ingestion_config.yaml,mizoki_financegraph labels,marketing_ontology.yaml) remain the serving surfaces and are inventoried, not modified.- The steward/architecture approval rungs are operational: named appointments live in
ontology/registry.yaml(approval_ladder_appointments— owner directive 2026-08-06: the Owner,ceo@mediaintelligence.ai, on both rungs; delegation per GOVERNANCE.md 1.1.4), and the loader fails CI when a rung is empty. Approval identity at decision time still derives from authentication. - Retrieval/reasoning metrics have governed evaluation sets (
ontology/evaluation/, frozen v1.0.0) with a deterministic harness (scripts/ontology_eval.py) and a committed byte-reproducible baseline artifact (evaluation/results/structural-baseline-v1.json). Scope honesty: the baseline measures the documented registry (lexical baseline retriever + structural reasoning); live GraphRAG/CausalRAG figures remain design targets until a live evaluation artifact exists (acceptance_eligible_for_live_claims: false). - The Cell 6 manifest makes the semantic-intake workflow discoverable (
GET /workflows); step execution binds to services incrementally — the manifest is declarative registration, not a claim that all 20 steps are automated today. - The
vscode-boss-agent-extension/resources/boss_agent_skillpack.mdbundled copy is re-synced byte-identical to canonical and standing-gated (extension v3.0.2, 2026-08-06):scripts/skills_sync.py --checknow verifies it and--fixre-syncs it, so it can no longer drift silently as it did through the Acquisition/Enterprise generations. Repackaging/installing the.vsixremains an operator-local step (npx @vscode/vsce package --no-dependencies).