I reckon #nostr clients need to become some kind of portal, that picks up runtime code from relays, stored in notes, and executed on the fly. Obviously risky, but your apps technically do that all the time, we just need to agree on what all those "prime" code notes are, and how to call them.
They should be pseudo code definitions that are then implemented in whatever language you need - but it's root is pseudo code, and that's what nostr clients navigate through. "Frames" are defined and located according to their code. It works, because the hash of the note _is also the ID for you to pick up that specific note_.
So a global, "Hello World", prime piece of code can be stored in a note, and executed by any client that knows the note ID for this Hello World code. It will do what it says, every time, and everyone can see and audit it, and most people choose to use it. There'll obviously be thousands of pieces of the same code, but their IDs are different.
This way we achieve diversity of thought and a kind of democracy-based code system for global networks. If you don't like a piece of code, make it yourself, and either everyone considers you the "prime" Hello World example or they don't.
What this system needs is a way of validating which sections of code you chose to use to perform a certain action. Well, the hash of a function definition is it's ID already, and that can be it's private key. The definition _is_ the private key, that can then sign "transactions" on data passing through it, and can prove that a piece of data was created by passing through these various notes of code, or "frames", since you're always carrying your "current frame hash" into the next frame, like Bitcoin bringing "last hash" into the current block.
So there feels like something analogous to multi-sig that's possible with data and code, I reckon. Just need to share global function definitions, that start as pseudo code, and then progressively start using them directly in the nostr clients, and these functions sign their handy work as data moves through.
It allows you to turn these nostr clients into ANYTHING, since you can technically modify the entire runtime, and switch from looking at social media to photos or messages, your alarm clock, a way to hail a taxi, everything. A globally distributed nostr runtime environment with known functions available.
I mean that's what Bitcoin _is_, right. It's a globally distributed runtime environment that follows specific rules. Same concept, but now we start to align all our functions, stop reinventing wheels, and start building a common code and definition repository, a common source of distributed, verifiable compute.