tc39 / proposal-shadowrealm

ECMAScript Proposal, specs, and reference implementation for Realms
https://tc39.es/proposal-shadowrealm/
1.41k stars 67 forks source link

Who Maintains the Invariants #401

Open mgaudet opened 4 months ago

mgaudet commented 4 months ago

I have a slightly dumb question about ShadowRealms. In principle, we're doing a whole bunch of work to define the set of exposed interfaces inside a ShadowRealm for the web platform integration. Mechanically right now that's all done via Exposed=*.

The discussion about what to include covers things like maintaining invariants like confidentiality.

My question is this: As the web platform evolves, and new standard authors write their interfaces... who is going to make sure that someone doesn't break the invariants (especially since for new standards, I'm sure Exposed=* seems reasonable as a default choice). Are we going to provide guidance for how standards should interact with this?

This is extremely related to (but not 100% overlapping with) https://github.com/tc39/proposal-shadowrealm/issues/398 as well.

mgaudet commented 4 months ago

(Yulia suggested I tag @domenic / @annevk here as well for visibility)

annevk commented 4 months ago

He Who Remains

j/k, no idea.

caridy commented 4 months ago

@mgaudet this is a great question. I do think that this kind of situation exists today. As a champion of a new API, how do you decide to have something on a worker or worklet or not? I believe the burden falls onto the champions, and the editors can simply raise issues as they are reviewing the spec changes. Is there a centralized place where we keep guidelines for champions?

Joooojj commented 4 months ago

شكراً