Namespace Serenity.SoundMixer.Application.Validation
Classes
AudioMixerChannelDeletionPlanner
Pure (Unity-free) planner that, given the current configuration and a mixer group the user wants to delete, works out every Serenity-side reference that would break and the repair actions needed to keep the configuration consistent. Produces a preview/dry-run AudioMixerChannelDeletionPlanner.DeletionPlan; it never touches assets. The window applies the plan (with Undo) only after explicit confirmation. Promoted to Business/SoundMixer/Application (2026-07-04, Phase 9 editor-tooling portability pass).
AudioMixerChannelDeletionPlanner.DeletionPlan
The full preview of deleting a group: affected references, repair actions and warnings.
AudioMixerChannelDeletionPlanner.RepairAction
One planned repair, described in human terms.
AudioMixerRelationshipAnalyzer
Pure (Unity-free) diff engine: compares a MixerSnapshot with a
SerenitySnapshot and reports every inconsistency as a RelationshipIssue.
Deterministic and side-effect free, so the rules can be exhaustively unit tested. The Unity-specific
scanning (reading the mixer, loading assets) is done elsewhere (AudioMixerRelationshipScanner,
Unity infrastructure). Promoted to Business/SoundMixer/Application (2026-07-04, Phase 9 editor-tooling
portability pass) — this is the single AudioMixer↔Serenity consistency model; losing it in a non-Unity
port would silently drop the diff/repair-planning rules.
ConfiguredChannel
A Serenity audio channel: a UnityAudioPlayerSettings asset routed to a mixer group.
EffectLoopConfig
A registered effect loop as Serenity sees it (from its definition asset).
MixerSnapshot
What the Unity AudioMixer reports (groups, exposed parameters, per-group volume parameter).
RelationshipIssue
A single detected inconsistency between the mixer and the Serenity configuration.
RelationshipModel
The derived diff: the two snapshots plus every detected issue.
SerenitySnapshot
What Serenity's configuration reports (channels, exposed-parameter mappings, effect loops).
Enums
AudioMixerChannelDeletionPlanner.RepairActionKind
A single repair the deletion implies.
RelationshipIssueKind
Category of a detected relationship issue, so the UI can group and act on it.
RelationshipSeverity
Severity of a detected relationship issue.