Repository navigation
Conversation
Show how old each scanned account's most recent post is, to help spot inactive accounts worth unfollowing. Off by default. Block-safety: - only fetches when the scan is finished or paused (never competes with the scan's request budget) - serial throttled queue (one request at a time, 2-4s jitter) - cached by user id in localStorage (each account fetched at most once) - manual mode (fetch on click) or auto mode (fetch when a card scrolls into view, capped to the visible page) Uses the public web_profile_info endpoint (the same call IG web makes on a profile visit). Per-item try/catch isolation + tagged diagnostic logs so one poison account can't kill the queue and the unverified response shape can be inspected on first repro. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
notluquis
marked this pull request as ready for review
June 17, 2026 20:48
web_profile_info no longer returns post nodes (edge_owner_to_timeline_media
comes back with a count but empty edges), so every account resolved to
"no posts". Switch to /api/v1/feed/user/{id}?count=3, which returns real
items with taken_at + code. Keyed by the numeric user id we already have
from the scan (no username->id round trip), take the max timestamp across
the few items so a pinned-older post can't win, and only render a post link
when the code matches a real shortcode (some items expose a long internal
code).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Owner
|
I will take a look asap |
This branch has not been deployed
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.
About
Adds an optional "last post age" badge to each account in the scan results (e.g.
last post 8mo ago), so inactive accounts are easy to spot when deciding who to unfollow. Touches the same intent as #203/#237 (more per-account context) without the request-volume cost of fetching for everyone.The feature is off by default — existing behavior is unchanged unless you enable it in Settings.
How it works (block-safety first)
The last-post data is not in the scan payload, so it needs one extra request per account. To keep that from triggering Instagram rate limits:
localStorage— an account is fetched at most once, ever.Endpoint:
GET /api/v1/feed/user/{id}/?count=3withx-ig-app-id, keyed by the numeric user id already available from the scan. We take the maxtaken_atacross the few returned items so a pinned-older post can't win, and only render a/p/<code>link when the item exposes a real shortcode.Settings
New section in the Settings menu: a "Show last-post age" toggle and a Manual / Auto radio, with a note that it only fetches when idle.
Resilience
Per-account
try/catchisolation in the queue (a poison account or alocalStoragequota error can't kill the batch) plus tagged diagnostic logs (lastpost.*) for anomalous responses.Notes
Searching.tsxandmain.scss— overlaps PRs feat: add whitelist/unwhitelist functionality for selected users #297 and Iphone responsive redesign #293, expect a mechanical rebase.🤖 Generated with Claude Code