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

Design and implement host<->macro protocol #15

Open
davidmorgan opened this issue Jun 28, 2024 · 1 comment
Open

Design and implement host<->macro protocol #15

davidmorgan opened this issue Jun 28, 2024 · 1 comment

Comments

@davidmorgan
Copy link
Contributor

dart_model covers introspection and augmentations; it doesn't cover the high level host<->macro protocol:

  • the macro telling the host about itself, the host telling the macro to run phases, the macro telling the host that it's done
  • all the meta chatter about which versions of the protocol / model we're on

We haven't really talked about this yet @jakemac53 I guess because it mostly doesn't seem super complicated. So I'll just throw out what I have ended up assuming, please correct anything that does not make sense / let's discuss anything that looks worth discussing:

  • Doesn't belong in the dart_model package, does embed data described in dart_model
  • Same wire format + extension types approach as dart_model, pretty much directly reuse all that
  • Gets its own schema
  • Versioning has to work correctly so it needs care but I think it's just a matter of throwing together some concrete design :) ... the main complication being the interaction of JSON and binary formats

How does that sound?

I'm not feeling that this is super urgent yet, mostly filing to flesh out the work we know we need to do for the "breaking changes" milestone.

Thanks.

@jakemac53
Copy link
Contributor

SGTM, the main question I think is around the versioning.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

2 participants