makepad/apps/mixer/Cargo.toml
Admin debd8c1075 rename: the mp prefix goes — apps/wm, files, terminal, browser, task, sheets, image, video, pdf; libs/wm_api and wm_theme
Packages are makepad-<name> with the short name as the binary. Env vars
follow (MAKEPAD_WM_*, MAKEPAD_FILES_*, MAKEPAD_TERMINAL_*), config moves
under ~/.makepad/<app>/, the theme namespaces are mod.wm_theme and
mod.browser_theme, the hosted AI envelope key is wm_ai. platform/video
becomes makepad-platform-video so the video app can be makepad-video.
Carries the Score entries that were pending in the WM's curated table.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-02 11:17:12 +02:00

24 lines
1.1 KiB
TOML

# Makepad Mixer — an LR-Mix control surface for a small-format digital
# rack mixer speaking OSC 1.0 over UDP (port 10024).
#
# SAFETY IS THE ARCHITECTURE HERE. The transmit path is built so that the
# application cannot emit a dangerous OSC address even by bug:
# - safety::Param is a closed enum: the ONLY way to construct an outgoing
# message. Phantom power, snapshots, presets, routing, console init and
# preferences are not variants, so they cannot be expressed.
# - safety::GuardedSocket::transmit is the ONE UdpSocket::send_to in the
# client; it re-parses the address out of the encoded bytes and refuses
# anything matching the deny list, plus any non-loopback destination
# when the app runs in --fake (test) mode.
# The tests in src/safety.rs and src/livewire.rs assert both layers against
# an in-process fake mixer on UDP loopback.
[package]
name = "makepad-mixer"
version = "0.1.0"
edition = "2021"
default-run = "makepad-mixer"
[dependencies]
makepad-widgets = { path = "../../widgets" }
makepad-wm-theme = { path = "../../libs/wm_theme" }