Mimir/docs/perfect-machine-module-library.md
2026-06-10 16:43:12 +01:00

8 KiB

Perfect Machine Module Library

This is the runtime shelf for coherent parts that deserve to be inside Mimir, not a trophy wall for abandoned attempts. Each module below has one owner and a job-interview answer for why it belongs in the body of the machine.

Runtime Modules

Module Owner Purpose Code
Bioacoustic decoder profiles Mimir.Runtime Named indexed log-mel/MFCC receiver configurations for clean, compact, robust, and high-band room paths. src/Mimir.Runtime/Synchronization/MimirBioacousticDecoderConfiguration.cs
Bioacoustic language profiles Mimir.Runtime Passive, hybrid, continuous, calibration, and phone-witness vocabulary/emission configurations. src/Mimir.Runtime/Synchronization/MimirBioacousticLanguageConfiguration.cs
Bioacoustic clock solver Mimir.Runtime Fits canonical source time from decoded word anchors for local, Raven, phone, and microcontroller witnesses. src/Mimir.Runtime/Synchronization/MimirBioacousticClockHypothesis.cs
Alignment actuator Mimir.Runtime + Faust Converts sync state into bounded fractional-delay, gain, and sample-rate-offset controls; Faust moves samples. src/Mimir.Runtime/Synchronization/MimirAudioAlignmentActuator.cs
Audio actuator strategies Mimir.Runtime + Faust Integer baseline, Farrow fractional delay, variable ASRC, and hybrid delay/ASRC strategy profiles. src/Mimir.Runtime/Synchronization/MimirAudioActuatorConfiguration.cs
CultMesh contracts Mimir.Runtime Typed codebook, decoder, acoustic path, actuator, program, and Move tracking observation documents for distributed Mimir nodes. src/Mimir.Runtime/Synchronization/MimirCultMeshContracts.cs, src/Mimir.Runtime/Synchronization/MimirTrackingObservation.cs
Acoustic path learning Mimir.Runtime Calibration stages for usable bands, confusion, global delay, group delay, and codebook adaptation. src/Mimir.Runtime/Synchronization/MimirAcousticPathLearningConfiguration.cs
Acoustic localization Mimir.Runtime + Fensalir Pairwise TDOA, SRP-PHAT grid, sparse source, and visual-constrained localization profiles plus a small SRP/TDOA scorer. src/Mimir.Runtime/Synchronization/MimirAcousticLocalizationConfiguration.cs, src/Mimir.Runtime/Synchronization/MimirAcousticLocalizationSolver.cs
Benchmark panels Mimir.Runtime Decoder golf and meatspace acceptance degradation panels with receipt roots and thresholds. src/Mimir.Runtime/Synchronization/MimirBenchmarkPanelConfiguration.cs
Capture profiles Mimir.Runtime + native workers Hardware intent for Leap, Kiyos, PS Eyes, Starfire Scarlett, Raven Scarlett, and USB-attached Moves on Starfire/Nightwing. src/Mimir.Runtime/Synchronization/MimirNativeCaptureConfiguration.cs
Camera ingest strategies Mimir.Runtime + native workers Diagnostic metadata, managed native wrapper, native SPSC ring, and shared-GPU-texture ingest shapes. src/Mimir.Runtime/Synchronization/MimirCameraIngestConfiguration.cs
Reservoir strategies Mimir.Runtime + native reservoir + Fensalir Managed rolling buffers, native shared-edge rings, and derived GPU temporal field storage. src/Mimir.Runtime/Synchronization/MimirReservoirConfiguration.cs
Distributed witnesses Mimir.Runtime + CultMesh Raven, phone, microcontroller, and remote camera rig configurations for compact timing/path state. src/Mimir.Runtime/Synchronization/MimirDistributedWitnessConfiguration.cs
Network transports Mimir.Runtime + CultMesh Typed timing state, debug windows, SRT bridge media, and experimental browser transport policy plus constraint-based selection. src/Mimir.Runtime/Synchronization/MimirNetworkTransportConfiguration.cs, src/Mimir.Runtime/Synchronization/MimirNetworkTransportSelector.cs
Authority policy Mimir.Runtime Trust decisions for Starfire loopback, Raven evidence, phone candidates, diagnostic media, and unknown nodes. src/Mimir.Runtime/Synchronization/MimirAuthorityPolicyConfiguration.cs, src/Mimir.Runtime/Synchronization/MimirAuthorityPolicyEvaluator.cs
Audio field configurations Mimir.Runtime Six-mic, source-based, ambisonic, and hybrid evidence field shapes. src/Mimir.Runtime/Synchronization/MimirAudioFieldConfiguration.cs
Visual fusion configurations Mimir.Runtime + Fensalir Sensor roles and fusion modes from cadence proof through full hybrid evidence. src/Mimir.Runtime/Synchronization/MimirVisualFusionConfiguration.cs
Compute offload configurations Mimir.Runtime + CultMesh Local-heavy, distributed witness, and calibration sweep workload placement. src/Mimir.Runtime/Synchronization/MimirComputeOffloadConfiguration.cs
Assembly plans Mimir.Runtime Named combinations of modules that prove synthetic, Scarlett, meatspace, and distributed cuts. src/Mimir.Runtime/Synchronization/MimirMachineAssemblyPlan.cs
Program publication profiles Mimir + Fensalir + Faust + Eve + Yggdrasil Mimir-owned scene publication, Eve operator surfaces, Yggdrasil site feed, and temporary OBS compatibility adapters. src/Mimir.Runtime/Synchronization/MimirProgramPublicationConfiguration.cs
Fensalir lowering Mimir.Runtime -> Fensalir Pure mapping from Mimir rolling/video/audio state into Fensalir GPU sensor and acoustic field frames. src/Mimir.Runtime/Synchronization/MimirFensalirFieldLowering.cs
Module catalog Mimir.Runtime Indexes the live module set and verification commands. src/Mimir.Runtime/Synchronization/MimirModuleLibrary.cs
Manifest factory Mimir.Runtime Produces an exportable JSON manifest for tools, docs, UI, and remote witnesses. src/Mimir.Runtime/Synchronization/MimirPerfectMachineManifest.cs

Current Authority Map

  • Mimir.Runtime owns device and synchronization truth before it becomes a renderer/DSP packet.
  • Fensalir owns GPU resource lifetime, temporal field rendering, debug UI, and program video publication.
  • Faust owns hot sample movement, alignment, spatialization, separation, and stem generation.
  • CultMesh carries typed state surfaces; remote nodes may observe and decode, but they do not become independent clock authorities.
  • USB-attached Moves on Starfire and Nightwing publish mimir.move_tracking_observation.v1 as tracking streams. Muninn emits the witness, Odin discovers/projects it, and Mimir owns buffering plus fusion.
  • OBS may receive compatibility program surfaces and stems. It does not own calibration, composition, preview/control, or publication.

Verification Surface

Use these as quick probes after touching the module shelf:

dotnet build .\Mimir.slnx
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --perfect-machine-profile-smoke
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --perfect-machine-lowering-benchmark
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --perfect-machine-contract-smoke
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --move-tracking-contract-smoke
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --perfect-machine-manifest
dotnet run --no-build --project .\src\Mimir.BufferSmoke\Mimir.BufferSmoke.csproj -- --bioacoustic-actuator-self-test

Cut Line

If a future implementation supersedes one of these module shapes, delete or demote the old module in the same pass. The library is meant to keep usable organs ready at hand, not preserve every fossil that once twitched.