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

Add a dynamic_reference seedtype #21

Open
7 of 9 tasks
jkomoros opened this issue Jul 1, 2023 · 0 comments
Open
7 of 9 tasks

Add a dynamic_reference seedtype #21

jkomoros opened this issue Jul 1, 2023 · 0 comments

Comments

@jkomoros
Copy link
Owner

jkomoros commented Jul 1, 2023

This would allow calculating the ID to include

Type: dynamic.

A reference property that expects an object, and will interpret it like a SeedReference. (Wait, won't the engine interpret a reference as a reference to execute?). Maybe reference should be a packedSeedReference. (That has the benefit that it's not interpeted by the rest of the machinery as a reference)

Make sure the use case of "pass in a seed graph root to execute" works.

Update documentation for things like seed.references() to make it clear that it does not include dynamic seed references.

dynamic should have a allow_remote property. Unless it's set to true, then a reference that goes to a remote packet won't load.

  • Add reference, which takes seed_id and packet, and auto-merges the current location of the seed and returns a packedReference.
  • Add dynamic, which takes a reference (test to make sure it rejects remote calls
  • Mermaid diagram should render dynamic in green
  • Add an allow_remote optional boolean to dynamic.
  • Don't fail remote access if the remote packet is already loaded.
  • A way to set a secret key of disallow_remote that seeds can't read back, but sub-seeds below that point in environment will throw if a remote is tried to access even if allow_remote. And that's true for seed references that are direct
    • It's not so much secret as much as a key that can never be set to false. It starts as false but then can only be set high.
    • (Same thing for Add a fetch seed_type #45, just with disallow_fetch )
  • Add an example ot example-complex.json
jkomoros added a commit that referenced this issue Jul 9, 2023
It generates a packed reference to a seed. It will be useful for `dynamic`.

Part of #21.
jkomoros added a commit that referenced this issue Jul 9, 2023
It allows executing a seed reference that isn't bound until run-time.

This will be very useful for #20.

Part of #21.
jkomoros added a commit that referenced this issue Jul 9, 2023
jkomoros added a commit that referenced this issue Jul 9, 2023
jkomoros added a commit that referenced this issue Jul 9, 2023
… actively.

Part of #21.

There aren't tests yet because tests of remote seed fetches just throws.
jkomoros added a commit that referenced this issue Jul 11, 2023
If set, seed types of `dynamic`, even ones that set `allow_remote` of true will not allow remote access.

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

No branches or pull requests

1 participant