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

Support function as virtual/durable kinds #10435

Open
mhofman opened this issue Nov 9, 2024 · 0 comments
Open

Support function as virtual/durable kinds #10435

mhofman opened this issue Nov 9, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request liveslots requires vat-upgrade to deploy changes

Comments

@mhofman
Copy link
Member

mhofman commented Nov 9, 2024

What is the Problem Being Solved?

Today Far accepts either a function or an object (with methods). However the same support for exportable functions is not extended to virtual / durable kinds.

Description of the Design

Accept a function as behavior for a single facet kind, and as facets for a multi kind.

Update zones to make sure function behaviors are accepted (probably update types as well).

Consider having the exo makers be virtual/durable as well, as least for durable zones so they can be stored (for async-flow endowments)

Figure out if this simplifies any of the Callback stuff.

Security Considerations

None. Having makers be themselves virtual/durable would make them exportable, which may not be expected.

Scaling Considerations

None

Test Plan

TBD

Upgrade Considerations

Requires an upgrade to liveslots, which is only deployed as part of chain software upgrades.

This is technically enables functionality that was previously failing, so a contract using this feature would need to be deployed on an updated liveslots versions. We don't currently have a mechanism to verify/assert "expected features".

@mhofman mhofman added enhancement New feature or request liveslots requires vat-upgrade to deploy changes labels Nov 9, 2024
@mhofman mhofman self-assigned this Nov 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request liveslots requires vat-upgrade to deploy changes
Projects
None yet
Development

No branches or pull requests

1 participant