Skip to content

Reply archive gap recovery marks note replies untruncated and skips tombstones silently #67

Closed

Description

@wolfgang-aura

Impact: reply-archive gap recovery records syndication data less honestly than the rest of the engine.

  1. Records are built with truncated: false even when the payload carries note_tweet. Syndication returns only the preview for long-form posts, so a preview is archived as full text with no truncation flag.
  2. A 200 response whose payload is a tombstone (no text, no media) hits if (!text && !(payload && payload.mediaDetails)) return;. It becomes neither an unavailable record nor an entry in errors, so the reply stays "known but uncaptured" with no reason.
  3. Text is flattened with .replace(/\s+/g, ' '), so line breaks in replies are lost.

Where: enrichReplyArchiveViaSyndication in sourcecapsule.user.js (~10196-10215). Compare syndicationToQuoteBlock (8216), which sets truncated: !!t.note_tweet, and the GraphQL path, which marks Tombstone/Unavailable typenames unavailable.

Evidence: Node repro with stubbed syndication. A payload with note_tweet produces truncated: false. A TweetTombstone payload produces neither a tombstone record nor an error.

Environment: main 72777ef (v1.6.8). Engine loaded in Node through the module.exports guard. No browser.

Next action: set truncated: !!payload.note_tweet, treat a tombstone typename like the 404 path, and keep line breaks in the stored text.

Activity

  1. wolfgang-aura commented on Oct 7, 2026

    @wolfgang-aura
    OwnerAuthor

    Fixed in 3c0d1f2 (PR #73). Released in v1.6.9 (main fe4d3f1); userscript installs update from main. Verified by a regression test in test/dom.test.mjs that fails on v1.6.8; npm test and CI pass. Not yet live-verified on X.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions