Disciplines · Proposals

Domain Responsibility Contracts (YSD-0150–YSD-0162, YSD-0165)

CODEOWNERS entry), implementing contracts from the shared libs/contracts study namespace (YSD-1005).

14sections5 minread

On this page

Version 1.0.0 — 2026-07-18. The versioned adapter-boundary definitions for every accountable owner in the proposal §3.2 responsibility matrix. Sections 1/2/6 implement against these definitions; YSD-0163 conformance tests and YSD-0164 architecture tests enforce them once adapters exist. This document is superseded, never edited, when a boundary changes (YSD-0013).

YSD-0150 — Versioned adapter boundary convention (all owners)#

  • Each accountable owner exposes exactly one study adapter package, libs/<owner>/study-adapter, owned by that domain (Nx tag scope:<owner>, CODEOWNERS entry), implementing contracts from the shared libs/contracts study namespace (YSD-1005). Yemaya never implements another domain's adapter.
  • Every adapter exports STUDY_ADAPTER_CONTRACT_VERSION (semver). Breaking contract changes bump major and ship with a compatibility window; the YSD-2010 breaking-change detector enforces.
  • Every adapter implements capability discovery (capabilities(): CapabilityDescriptor[]) and returns the YSD-2007 response vocabulary (unsupported, unavailable, forbidden, insufficient-rights, partial-success, degraded) instead of throwing generic errors or fabricating results.
  • Domain-native identifiers cross the boundary intact, wrapped — never re-minted (mapping tables per YSD-3002); YSD-0163 round-trip tests prove no lossy re-identification.
  • Adapters call their domain's public API/service surface only — no direct cross-domain database access, no copied taxonomies (YSD-0164).

YSD-0151 — Yemaya#

  • Responsibilities: workspace composition; StudyProject lifecycle; project-specific inspiration (collections, canvas, original concepts); CreativeDecision records; project transfer with originality safeguards.
  • Adapter boundary: Yemaya is the composer, not a lens owner — libs/yemaya/study-workspace (YSD-1004) orchestrates via the other domains' adapters and owns only workspace-native aggregates (InspirationCollection/Item, OriginalConcept, CreativeDecision, ProjectTransfer).
  • Must not: take over domain engines; re-implement analysis; store evidence or notebook records outside Sophia/Nisaba canonical stores.

YSD-0152 — Nisaba#

  • Responsibilities: study semantics; source-grounded comparison (ComparisonSet); annotation (selector-union model extended with media selectors per the YSD-0113 assessment); typed links; notebooks and StudyCards (canonical identity); commentary; research continuity.
  • Adapter boundary: libs/nisaba/study-adapter exposes notebook/annotation/comparison contracts; new media-study contracts are Nisaba-owned additions, not Yemaya copies.
  • Must not: own media production, media storage, or rights decisions.

YSD-0153 — Sophia#

  • Responsibilities: stable EvidenceAnchors; citations; provenance and acquisition lineage; retrieval; confidence-bearing claims; rights dependencies on evidence; source lineage across derivations.
  • Adapter boundary: libs/sophia/study-adapter extends the existing SourceAdapter pattern (video-transcript adapter is the template); evidence records live in Sophia's store, referenced everywhere else.
  • Must not: interpret; rank creative quality; duplicate Nisaba notebook semantics.

YSD-0154 — Hathor#

  • Responsibilities: narrative, character, dramatic structure, directing, cinematography theory, and MDA lens outputs — bound to source anchors when surfaced in the workspace.
  • Adapter boundary: libs/hathor/study-adapter wraps narrative-api / world-api surfaces; theory outputs return TaxonomyTerm-referenced, anchor-bound lens results.
  • Must not: own the whole workspace (the §3.1 rejected alternative); emit unanchored theory prose as evidence.

YSD-0155 — Aja#

  • Responsibilities: video, region annotation, tracking, pose, motion, action, animation reference, and correction semantics for visual motion.
  • Adapter boundary: libs/aja/study-adapter wraps svc-reference-video and motion services per YSD-1007 — simulated paths (probe, scene detection) surface as unsupported until rewired to the real libs/shared/encoding primitives; the dual annotation models stay behind the adapter, translated to the shared contract.
  • Must not: expose fabricated frame statistics; own audio or narrative semantics.

YSD-0156 — Euterpe#

  • Responsibilities: voice, dialogue sound, music, rhythm, listening, sound-event, and mix-analysis outputs with timecode-anchored results.
  • Adapter boundary: libs/euterpe/study-adapter is Euterpe's first service-facing surface (no service exists today) — analysis libraries are wrapped with capability discovery; persistence stays in workspace stores until Euterpe owns a durable store.
  • Must not: perform speaker identification or vocal-emotion truth claims (YSD-4052).

YSD-0157 — Aglaea#

  • Responsibilities: garments, fabric, accessories, construction, material, fashion history, and cultural terminology — with taxonomy authorship and applicability limits (YSD-4072).
  • Adapter boundary: libs/aglaea/study-adapter exposes garment/style knowledge keyed by media-region anchors supplied by the workspace; region grounding is workspace-side, terminology is Aglaea-side.
  • Must not: body-shape inference or demographic classification.

YSD-0158 — Bellona and product runtimes#

  • Responsibilities: signed session manifests; replay; engine state; gameplay events; telemetry; trustworthy synchronization; and the DCC/engine bridge — the Unreal/Unity/Godot/Blender/Houdini/Maya/DaVinci adapters, interchange, and DCC/engine backlinks consumed by Sections 5, 9.13, 12.2, and 15.4 — reusing the existing apps/bellona/bridge-* and libs/bellona/remote-protocol machinery rather than building parallel integrations.
  • Adapter boundary: libs/bellona/study-adapter exposes the cross-game study contract (session manifests, replay references, telemetry streams); product runtimes (aphrodite OSHRPLY replay, V2 telemetry) plug in behind it — the workspace never imports product-runtime code directly.
  • Must not: accept unsigned session manifests as instrumented truth; bridge external commercial titles into instrumented tiers.

YSD-0159 — Metis#

  • Responsibilities: concept prerequisites; curricula; exercises; rubrics; assessment; feedback; spaced review (FSRS-5 scheduler); mastery (KnowledgeTracker); portfolios.
  • Adapter boundary: libs/metis/study-adapter maps craft concepts into Metis's concept graph and returns MasteryRecords/SpacedReviewItems; the contract-visible mastery vocabulary is chosen once (schema-inventory conflict #9) and recorded here when Section 14 lands.
  • Must not: interpret sources; score taste or originality (YSD-2047).

YSD-0160 — Isis#

  • Responsibilities: approved inference/generation gateway returning versioned outputs (model, configuration, run identity) with provider substitution and residency enforcement (per the YSD-0131 draft).
  • Adapter boundary: libs/isis/study-adapter is the only model-call path for the workspace; every response carries AnalysisRun identity.
  • Must not: become the evidence, notebook, or rights system of record; persist study sources beyond processing scratch.

YSD-0161 — Oshun#

  • Responsibilities: identity; authentication; tenancy; permissions; Studio navigation; Library continuity; audit infrastructure (canonical audit events + hash chain); shared collaboration behavior (presence, commenting substrate).
  • Adapter boundary: consumed through existing platform libraries (libs/oshun/auth, navigation, shell-core, persistence projections) — the workspace registers its routes/projections rather than wrapping Oshun in a study adapter.
  • Must not: own study semantics or domain analysis.

YSD-0162 — Iris#

  • Responsibilities: accessibility policy; assistive alternatives; accessible visualization semantics (timeline/canvas/graph non-spatial equivalents); learning accommodations.
  • Adapter boundary: policy + primitive consumption (libs/iris a11y packages) with workspace-specific patterns contributed back to Iris, not forked.
  • Must not: be bypassed — every learner-facing surface passes Iris policy gates (Gate 10).

YSD-0165 — Neith and Maya (engine domains)#

  • Responsibilities: sandboxed 3D asset, material, scene, and level parsing/inspection primitives consumed by Section 9.13 — mesh, UV, material, rig, scene-graph, and USD/glTF/FBX/OBJ/Alembic interchange (neith-asset-import, neith-engine-interchange, neith-scene-graph, maya engine-core crates).
  • Adapter boundary: libs/neith/study-adapter (TypeScript face over the Rust crates via napi-rs/WASM per the stack policy) exposes inspection results inside the YSD-4093 sandbox/resource-limit envelope; Maya capability reuse routes through the same adapter.
  • Must not: be reimplemented inside Yemaya — the workspace must not contain engine-grade geometry or scene inspection code.