Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs/PAGE_DESIGN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Setting up a forum for distributed caching is somewhat complex. It's tempting to
reach for a Merkle tree or the like, and have each thread have that internal
structure; this would allow for caching of the entries easily, since each of the
threads could have effectively a full commit history of the discussion, with
edits and new comments being handled smoothly. However, this is still a bit
heavy-weight; since we don't necessarily need the full functionality of a merkle
tree, and the hashing of history could cause issues with both moderation and how
quickly a client can load all of the content.

What's probably a good take-away, though, is that we can keep mostly static
content for each post, and transmit history linearly, but allow for some later
clean-up. This allows us to simplify some situations, like a highly edited post,
and allows for removal of information where required (e.g. dmca takedowns).