@v2/concordia-substrate is the V2-owned composition boundary for the planned
Concordia substrate while @concordia/* remains planned-only. The service wires
the four Nous primitives directly:
@nous/cooperative-bargainingfor case sessions and bargaining lifecycle.@nous/preference-inferencefor per-party Bradley-Terry preference plans and utility fits.@nous/agreement-searchfor seed candidates, kernel ranking, and Nash search.@nous/concordia-sealed-memoryfor sealed private intake and preference evidence.
The same composition now wires @iris/concordia-assistant for appellant /
arbiter dialogue scaffolding. Each surface includes an assistantDialogue
object with:
- appellant and arbiter
IntakeFlowStaterecords advanced to the first substantivefactsprompt after consent gating; - canonical Iris
promptForStepscripts, with trauma-aware tone on crew conflicts; PartyIsolatedPromptBuilderandvalidateContextIsolationchecks for each party context; and- only sealed-memory refs for private context handoff.
@oshun/concordia-integration is also wired as the V2 to substrate event
routing shim. Each surface includes an eventRouting object with:
- a
ConcordiaIntegrationRegistrationfor the V2 tenant; - case, intake, preference, search, and escalation subscriptions produced from privacy-projected payloads only;
- case workbench, audit, and player dispute-status nav descriptors; and
- redacted telemetry sinks for non-performance Concordia events.
@kuanyin/concordia-restorative is wired for the high-impact moderation branch.
Anti-cheat appeals create a moderation_appeal restorative preflight with
required safety checks from Kuanyin, but the branch does not open automatically:
party consent and safety gates must pass before a restorative circle can start.
Tournament-result disputes and crew conflicts expose an explicit non-eligible
branch reason rather than silently entering the moderation path.
Launch Gate#
@oshun/config owns the launch gate for external exposure. The
ENABLE_V2_CONCORDIA_SUBSTRATE flag defaults to disabled until launch readiness
is signed off. While disabled, the composition surface still runs internal
off-rollback checks and reports featureGate.blocksExternalExposure: true; when
enabled, the same deterministic/off-rollback surface reports that it no longer
blocks external exposure.
The first V2 use cases are anti-cheat appeals, tournament-result disputes, and crew conflicts. Each case is off rollback, stores private party artifacts only behind sealed-memory references, and exposes search summaries without raw private intake text. The Iris dialogue scaffold, Oshun event routing shim, and Kuanyin restorative branch are also off rollback and cannot influence deterministic gameplay simulation.
Verification#
V2/ue/Tools/check-v2-concordia-substrate.py validates package wiring, tests,
docs, lockfile entries, tsconfig.base.json, and CI workflow coverage.