Advertise AquaSynth live session schemas

This commit is contained in:
Meta Vens 2026-06-15 03:38:32 +01:00
commit 91c7c61832
4 changed files with 132 additions and 30 deletions

View file

@ -2,7 +2,7 @@
"schema": "gamecult.eve.provider_advertisement.v1",
"providerId": "aquasynth.service",
"title": "AquaSynth Service",
"description": "AquaSynth accepts .aqua DSL and Weksa utterance handoffs, compiles Faust-native instruments, returns live instrument handles, and publishes controllable synth state through CultMesh/Eve.",
"description": "AquaSynth accepts .aqua DSL and Weksa utterance handoffs, compiles Faust-native instruments, owns live streaming patch sessions, and publishes controllable synth state through CultMesh/Eve.",
"mode": "fixture-read-only",
"serviceVerse": {
"id": "verse.aquasynth.service.v1",
@ -13,8 +13,10 @@
"patch graph semantics",
"Faust source emission",
"native Faust compilation",
"compiled instrument handles",
"live control sessions",
"compiled instrument sessions",
"live streaming patch sessions",
"live session control state",
"live session lifecycle receipts",
"sample/render receipts",
"learned utterance embeddings and synth-driver controls"
],
@ -48,10 +50,18 @@
"id": "aquasynth.instrument",
"kind": "instrument",
"cultMeshKey": "aquasynth.instrument/sessions",
"authority": "AquaSynth native host and control-session owner",
"authority": "AquaSynth native host and live-session owner",
"schemas": [
"aquasynth.instrument_handle.v0",
"aquasynth.control_session.v0"
"aquasynth.compiled_instrument_session.v1",
"aquasynth.live_instrument_session.v1",
"aquasynth.command.instrument_open.v1",
"aquasynth.command.instrument_control.v1",
"aquasynth.command.instrument_block.v1",
"aquasynth.command.instrument_close.v1",
"aquasynth.instrument_open_receipt.v1",
"aquasynth.instrument_control_receipt.v1",
"aquasynth.instrument_block_receipt.v1",
"aquasynth.instrument_close_receipt.v1"
]
},
{
@ -97,10 +107,14 @@
"family": "instrument",
"namespace": "aquasynth.instrument.*",
"witnesses": [
"aquasynth.instrument_handle.v0",
"aquasynth.control_session.v0"
"aquasynth.compiled_instrument_session.v1",
"aquasynth.live_instrument_session.v1",
"aquasynth.instrument_open_receipt.v1",
"aquasynth.instrument_control_receipt.v1",
"aquasynth.instrument_block_receipt.v1",
"aquasynth.instrument_close_receipt.v1"
],
"durableShape": ".aquasynth/sessions/{sessionId}.cc"
"durableShape": ".aquasynth/sessions/{sessionId}.cc and .aquasynth/live-sessions/{sessionId}.cc"
},
{
"family": "render",
@ -189,16 +203,58 @@
"aquasynth.compiled_instrument.v0"
]
},
{
"id": "aquasynth.command.instrument.open",
"owner": "AquaSynth",
"acceptedByFixture": false,
"allowedInputs": [
".aqua DSL",
"block size",
"initial semantic control values"
],
"emits": [
"aquasynth.compiled_instrument_session.v1",
"aquasynth.live_instrument_session.v1",
"aquasynth.instrument_open_receipt.v1"
]
},
{
"id": "aquasynth.command.instrument.control",
"owner": "AquaSynth",
"acceptedByFixture": false,
"allowedInputs": [
"instrument handle",
"live session id",
"semantic control values"
],
"emits": [
"aquasynth.control_session.v0"
"aquasynth.live_instrument_session.v1",
"aquasynth.instrument_control_receipt.v1"
]
},
{
"id": "aquasynth.command.instrument.block",
"owner": "AquaSynth",
"acceptedByFixture": false,
"allowedInputs": [
"live session id",
"frame count",
"optional control values"
],
"emits": [
"aquasynth.live_instrument_session.v1",
"aquasynth.instrument_block_receipt.v1"
]
},
{
"id": "aquasynth.command.instrument.close",
"owner": "AquaSynth",
"acceptedByFixture": false,
"allowedInputs": [
"live session id"
],
"emits": [
"aquasynth.live_instrument_session.v1",
"aquasynth.instrument_close_receipt.v1"
]
},
{
@ -206,9 +262,10 @@
"owner": "AquaSynth",
"acceptedByFixture": false,
"allowedInputs": [
"instrument handle",
".aqua DSL",
"duration",
"sample format"
"sample format",
"optional semantic control values"
],
"emits": [
"aquasynth.render_sample.v0"
@ -232,9 +289,9 @@
}
],
"loweringRules": [
"AquaSynth owns learned embeddings, synth controls, Faust compilation, native binary lifetime, instrument handles, and sampled outputs.",
"AquaSynth owns learned embeddings, synth controls, Faust compilation, native binary lifetime, compiled instrument sessions, live streaming patch sessions, and sampled outputs.",
"Weksa owns writing-to-intent and intent-to-utterance lowering.",
"Faust source and native binaries are emitted artifacts with typed receipts, not the semantic patch owner.",
"Eve surfaces control and inspect sessions through CultMesh command documents; they do not own audio state."
"Eve surfaces control and inspect sessions through CultMesh command documents and retained live-session state; they do not own audio state."
]
}

View file

@ -20,9 +20,12 @@ Outputs:
- `aquasynth.patch_graph.v0`
- `aquasynth.faust_source.v0`
- `aquasynth.compiled_instrument.v0`
- `aquasynth.instrument_handle.v0`
- `aquasynth.control_session.v0`
- `aquasynth.compiled_instrument_session.v1`
- `aquasynth.live_instrument_session.v1`
- `aquasynth.instrument_open_receipt.v1`
- `aquasynth.instrument_control_receipt.v1`
- `aquasynth.instrument_block_receipt.v1`
- `aquasynth.instrument_close_receipt.v1`
- `aquasynth.render_sample.v0`
- Eve/CultUI surfaces for patch graphs, compile products, live controls, and
speech-training/render status