Strip historical narrative from documentation
Remove what a doc used to say, when it changed, the incidents that justified
a rule, finished migration narration, and counts and versions that rot.
State the rules in the present tense instead.
Keep every instruction, prohibition and threshold, and keep the measurements
that make a rule actionable. Public-facing docs keep their explanatory voice.
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
- Claude-Session
- https://claude.ai/code/session_01MptwXZ8k65v19rFmdGAyki
2 files changed,
+5 insertions,
-5 deletions
| 26 |
26 |
|
| `convert.rs` | DOM walker, `Context` state, element dispatch |
|
| 27 |
27 |
|
| `elements.rs` | Element classification, tracking pixel / hidden detection |
|
| 28 |
28 |
|
| `whitespace.rs` | Output normalization |
|
| 29 |
|
- |
| `tables.rs` | Table layout detection and unwrapping (Phase 2) |
|
| 30 |
|
- |
| `replies.rs` | Reply chain detection and quoting (Phase 3) |
|
|
29 |
+ |
| `tables.rs` | Table layout detection and unwrapping |
|
|
30 |
+ |
| `replies.rs` | Reply chain detection and quoting |
|
| 31 |
31 |
|
|
| 32 |
32 |
|
## Design Decisions
|
| 33 |
33 |
|
|
| 37 |
37 |
|
|
| 38 |
38 |
|
**Faithful conversion**: pter converts what's there. Content extraction (stripping marketing wrappers) and post-processing (trimming signatures) are separate concerns, composable before or after pter.
|
| 39 |
39 |
|
|
| 40 |
|
- |
**Blockquote rendering**: Blockquotes render children into a temporary buffer, then prefix each line with `> `. This handles nested blockquotes naturally — inner quotes produce `> ` lines, outer quote prefixes them again to get `> > `.
|
|
40 |
+ |
**Blockquote rendering**: Blockquotes render children into a temporary buffer, then prefix each line with `> `. This handles nested blockquotes naturally: inner quotes produce `> ` lines, and the outer quote prefixes them again to get `> > `.
|
| 41 |
41 |
|
|
| 42 |
42 |
|
## Dependencies
|
| 43 |
43 |
|
|
| 201 |
201 |
|
assert!(md.contains("> Second para"));
|
| 202 |
202 |
|
}
|
| 203 |
203 |
|
|
| 204 |
|
- |
/// Found by the `no_excessive_blank_lines` property after 44,991 draws, which
|
| 205 |
|
- |
/// is why the count in `tests/proptest.rs` is no longer proptest's default.
|
|
204 |
+ |
/// Found by the `no_excessive_blank_lines` property, which is why
|
|
205 |
+ |
/// `tests/proptest.rs` raises its case count above proptest's default.
|
| 206 |
206 |
|
///
|
| 207 |
207 |
|
/// The list inside the fence has nothing to say, so all that reaches the body
|
| 208 |
208 |
|
/// is the blank lines its own block separators asked for, and the fence closes
|