prototype: basic Upwelling-style branches, using forks#10
Open
geoffreylitt wants to merge 15 commits into
Open
prototype: basic Upwelling-style branches, using forks#10geoffreylitt wants to merge 15 commits into
geoffreylitt wants to merge 15 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This branch is a tech spike exploring an implementation of upwelling-style branches (explicitly created in advance of editing) using the existing fork capability. (Because it's a spike, not planning to merge to main, although perhaps we might want to if we want to start using some of this functionality?)
For now I've prototyped all this in standalone-TEE just to be able to make rapid progress and avoid making things too generic yet. But nearly all this stuff isn't TEE-specific and should be lifted out into a broader TR environment.
The basic design, so far:
Alongside that basic forking logic, I also used this as a chance to explore two related threads which were tangentially relevant:
effect/schema-- because I was evolving the TEE doc schema and hitting problems with missing fields in old docs. I define the doc schema in effect/schema, autogen a typescript type, and check at runtime if the doc can parse into the right schema. (Much more to explore here but it was already useful)A list of issues that have come up during this work so far:
await. For now, just did a hardcoded delay...