lua sandbox is too restrictive
The lack of {set,get}metatable is rather restrictive when it comes to writing lua scripts. Though it can be worked around when writing a single script it restricts the use of established lua patterns, prevents you from using a large part of the tooling/libraries from the existing lua ecosystem, etc. Presumably the intention is that lua scripts shouldn't become complex enough to require these things, but in my experience so far it just tends to encourage scripts to be more brittle and adhoc.
What even is the rationale for enforcing such a restrictive sandbox, isn't Lua already a sandbox of its own? Anyone with write access to the configuration could just load a native library extension instead, and are likely a user with the same permissions/ownership as the wireplumber process anyway (if not more powerful).
My understanding is that it's meant to prevent scripts from interfering with each other because they're all executed together in the same context/state; but why is that really a concern?
(I suppose after a certain point I should just try writing things with the gobject-introspection bindings instead?)