Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Endo: thread powers by policy #423

Open
kriskowal opened this issue Aug 19, 2020 · 7 comments
Open

Endo: thread powers by policy #423

kriskowal opened this issue Aug 19, 2020 · 7 comments
Assignees
Labels
kriskowal-reviewed-2024-01 Issues that kriskowal is satisfied do not need attention from team bug review as of January, 2024 lavamoat metamask

Comments

@kriskowal
Copy link
Member

kriskowal commented Aug 19, 2020

Endo currently creates compartment graphs where all third-party packages are completely powerless. They do not receive any powerful built-in modules and do not receive any global or lexical “endowments”. The intention is for the run-time to thread built-in modules and globals or lexicals as described in the “compartment map”. Endo’s module loader would need to generate these threads based on the policies generated by LavaMoat. LavaMoat would in turn use Endo’s loader API to generate policies based on static analysis of the loaded module working set. LavaMoat would in turn collect suggestions from third-party package.json (e.g., this library is designed to run with a frozen global and defends its own API objects so advises you not to create unnecessary membranes) and overrides from the application package.json (e.g., use this package in place of that package).

To do this, we need an ESM LavaMoatStaticRecord constructor and will use the existing policy aggregator in LavaMoat core.

@kriskowal
Copy link
Member Author

cc @erights @kumavis

@kriskowal kriskowal mentioned this issue Aug 22, 2020
36 tasks
@kriskowal
Copy link
Member Author

I’ve since change Endo such that every package receives all of the endowed globals and modules. This gives us parity with our existing Rollup solution. This issue tracks support for least-authority linkage.

@kriskowal
Copy link
Member Author

Passing this to @naugtur to sign off if it’s done done.

@kriskowal kriskowal assigned naugtur and unassigned kriskowal, dckc and erights Jan 10, 2024
@kriskowal kriskowal added the kriskowal-reviewed-2024-01 Issues that kriskowal is satisfied do not need attention from team bug review as of January, 2024 label Jan 10, 2024
@kumavis
Copy link
Member

kumavis commented Jan 19, 2024

cc @boneskull -- i believe this is the top-level "endomoat" ticket for this repo

@boneskull
Copy link
Contributor

@kumavis I seem to have misplaced my context. What is this?

@kumavis
Copy link
Member

kumavis commented Jan 22, 2024

@boneskull

🤠 this here is the endomoatiest ticket this side of the endo-lavamoat divide 🌵

This ticket is for tracking policy support in Endo. At present, the exact criteria for closing this ticket can only be viewed in a dream state. If you awake from this dream and find the criteria has been met, please close this ticket.

@boneskull
Copy link
Contributor

boneskull commented Jan 23, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kriskowal-reviewed-2024-01 Issues that kriskowal is satisfied do not need attention from team bug review as of January, 2024 lavamoat metamask
Projects
None yet
Development

No branches or pull requests

6 participants