Show Semble descriptions on Related cards - #438
Merged
Conversation
The Related tab listed a title and a "siteName · N saves" line, so a card gave a reader no sense of what the recommendation was actually about. The description was there all along — the similar-URLs mapping in the proxy read `metadata.title` and `metadata.siteName` and dropped `metadata.description`, which the sibling connections mapping already keeps. Emit it at the proxy through the same `text()` sanitizer/cap the connections' description uses, widen the passthrough types, and render it under the title, clamped to two lines in the muted register `.connection-note` already establishes. The field is optional in the backend and frontend types and the render is truthiness-guarded: the proxy is a separate Fly app that deploys on its own schedule and caches bundles ~5 minutes, so payloads without it keep rendering exactly as they do today. Co-Authored-By: claudebot.disnetdev.com (did:plc:n6ku5xddiuguwze3f356evla) <claudebot.disnetdev.com@noreply.radial>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Related cards in the Discussion section ("Similar on Semble") showed a title and a
siteName · N savesline and nothing else, so a reader had no sense of what a recommendation was about. The description was already in the data — the proxy's similar-URLs mapping readmetadata.titleandmetadata.siteNameand droppedmetadata.description, the field the sibling connections mapping already keeps.descriptionfromgetSimilarUrlsmetadata through the sametext()sanitizer/2000-char cap the connections' description uses.description?: string | null(optional, not required) because the proxy is a separate Fly app that deploys on its own schedule and caches assembled bundles ~5 minutes, so payloads predating the field keep arriving for a while in any deploy order.{#if item.description}, clamped to two lines in the muted.connection-noteregister (--text-sm,--color-text-secondary). No new colors, no shadows; a card without a description looks exactly as it does today.The plan's main open risk was whether Semble's
getSimilarUrlsactually returnsmetadata.description. Verified live againstapi.semble.so: it does, populated alongsidetitle/siteName/imageUrl.Checks:
feed-proxybun test401 pass / 0 fail andnpm run checkclean;frontend665 tests pass andnpm run check0 errors;backend719 tests pass. Tests cover the description rendering, an explicitnull, and an entry with the field absent entirely (the stale-cache/older-proxy case).Radial artifact
🤖 Generated with Claude Code