In this new model a node holds the latex source of the diagram (hashable so the compilation of the artifacts can be cached).
An edge is a modification either by an LLM or by the user and the edge holds the summary of the update (commit message?). So a user updating a diagram is a walk on this graph and the full walked path is called a chain.
The chain is shareable and holds all history. To get cached previews correct on boh telegram or other socials we need to not only share the uuid of the chain but also of the current node so the proposal is something like:
/d/{chain_uuid}/{source_hash}
If somebody shared a chain with an old hash then the UI will show a message like "this isn't the latest version of this diagram, go to the latest version instead".
This requires practically a full rewrite... A good thing would be to also add a nice summary or auto-generated description to diagrams for nice sharable links.
In this new model a node holds the latex source of the diagram (hashable so the compilation of the artifacts can be cached).
An edge is a modification either by an LLM or by the user and the edge holds the summary of the update (commit message?). So a user updating a diagram is a walk on this graph and the full walked path is called a **chain**.
The chain is shareable and holds all history. To get cached previews correct on boh telegram or other socials we need to not only share the `uuid` of the chain but also of the current node so the proposal is something like:
```
/d/{chain_uuid}/{source_hash}
```
If somebody shared a chain with an old hash then the UI will show a message like "this isn't the latest version of this diagram, go to the latest version instead".
This requires practically a full rewrite... A good thing would be to also add a nice summary or auto-generated description to diagrams for nice sharable links.
In this new model a node holds the latex source of the diagram (hashable so the compilation of the artifacts can be cached).
An edge is a modification either by an LLM or by the user and the edge holds the summary of the update (commit message?). So a user updating a diagram is a walk on this graph and the full walked path is called a chain.
The chain is shareable and holds all history. To get cached previews correct on boh telegram or other socials we need to not only share the
uuidof the chain but also of the current node so the proposal is something like:If somebody shared a chain with an old hash then the UI will show a message like "this isn't the latest version of this diagram, go to the latest version instead".
This requires practically a full rewrite... A good thing would be to also add a nice summary or auto-generated description to diagrams for nice sharable links.