Skip to content

Commit

Permalink
drop "Thread Forks" from the spec
Browse files Browse the repository at this point in the history
  • Loading branch information
mixmix committed May 9, 2023
1 parent c0a1cd8 commit d90233a
Showing 1 changed file with 13 additions and 16 deletions.
29 changes: 13 additions & 16 deletions 010.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ Date: 2023-03-27

License: CC0-1.0

## Abstract

The `post` message type is the foundational unit for talking with peers on
the original scuttlebutt network.

Expand Down Expand Up @@ -315,13 +317,7 @@ This message is not well connected, but it's common to render it in later steps
regardless


## 4. Thread Forks

TODO

## 5. Rendering a thread


## 4. Rendering a thread

Each message is generally displayed showing:
- author name + image (derived from `msg.value.author` and other messages outside
Expand All @@ -333,7 +329,7 @@ Each message is generally displayed showing:
- info about any `fork` that this `post` started
- a list of other threads which have linked to this message (backlinks)

### 5.1. Linear rendering of a tangle
### 4.1. Linear rendering of a tangle

A tangle with forks is hard to render as a nice linear output (the most familiar
way humans like to engage with threads in).
Expand Down Expand Up @@ -380,36 +376,36 @@ _Figure. showing a linearised thread tangle, along with a "best guess" placement
of disconnected message `Y`._


### 5.2. Scuttlebutt Markdown
### 4.2. Scuttlebutt Markdown

The `text` field of `post` messages is Scuttlebutt flavoured Markdown, which is
basic Markdown with a couple of important privacy enhancing features.

#### 5.2.1 Image rendering
#### 4.2.1 Image rendering

DO NOT render images that link to the web. This leaks data, which allows
tracking of users.
```markdown
![unsafe image](https://upload.wikimedia.org/wikipedia/commons/1/11/Panopticon.jpg)
```
Such images MUST instead be rendered as a link with an alert/ warning
(see 6.2.2).
(see 4.2.2).

ONLY render images that link to blobs that are hosted locally:
```markdown
![snails](&7AUsuVcxUzIJZPBBLqR3O2KvIiuECgdYq9lzEh0jcS8=.sha256)
```

#### 5.2.2 Link rendering
#### 4.2.2 Link rendering

When a link to the web is present, the interface MUST render an alert to users
on-click. Similar to 6.2.1, this is to prevent accidental tracking.
on-click. Similar to 4.2.1, this is to prevent accidental tracking.

```markdown
[click here](www.google.com)
```

#### 5.2.3 Old @mentions (deprecated)
#### 4.2.3 Old @mentions (deprecated)

Older messages used `mentions` in a fancy way so that the text didn't have
honking ugly markdown links to feedIds in it, but most clients have given
Expand All @@ -433,7 +429,7 @@ This was an innovation [@pfraze](@hxGxqPrplLjRG2vtjQL87abX4QKqeLgCwQpS730nNwE=.e
came up with',
```

### 5.3. Blocked authors
### 4.3. Blocked authors

If some message `B` is from a blocked author, we may still use its tangle data
for causal ordering, but not render that message in the thread.
Expand All @@ -446,7 +442,7 @@ particular client whether this means
display?"


### 5.4. Content warnings
### 4.4. Content warnings

If the post contains a `contentWarning` field, the UI SHOULD NOT display the
raw content and instead display a message which:
Expand All @@ -459,6 +455,7 @@ rendered as usual.
## Reference implementation

- [ssb-threads](https://github.com/ssbc/ssb-threads)

## Informative references

- this spec first started in thread:
Expand Down

0 comments on commit d90233a

Please sign in to comment.