Skip to content

[ATLAS-390] Support LC Plus titles browsing for eligible tier-check user - #391

Open
codeon89 wants to merge 1 commit into
towerwatchman:nightlyfrom
codeon89:atlas/390/lewdcorner-tier-check-browsing-support
Open

[ATLAS-390] Support LC Plus titles browsing for eligible tier-check user#391
codeon89 wants to merge 1 commit into
towerwatchman:nightlyfrom
codeon89:atlas/390/lewdcorner-tier-check-browsing-support

Conversation

@codeon89

@codeon89 codeon89 commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

What this changes

LewdCorner member tier detection: Atlas now scrapes your LewdCorner shop page to determine your membership tier (Standard / Plus) and filters Browse content accordingly. Plus sees everything; Free sees only Free-tier rows. Non-Tier will also see the tiles like Free but the assets streaming will be gated by server permission. This is rechecked periodically (default 24h) or forced on re-link.

  • User tier VIP → gate skipped; the user sees all LC content (Free, VIP, NULL tier).
  • User tier Free or not-logged-in (null) → only tier = 'Free' rows.

Vocabulary: The stored user-tier value is Free / VIP to match LC's content-tier column uses for each thread in lewdcorner_data. The Accounts page maps Free → STANDARD and VIP → PLUS for display.

Tier promotion latency: In case someone was Standard when they log in then they got promoted on LC, Standard → Plus upgrade only reflects after the next periodic recheck (up to tierRecheckHours, default 24h). Relaunching does not reflect it if the result still cache. Workaround is to disconnect and reconnect LC account, which trigger re-linking and force an immediate scrape.

Why

#390
Atlas was showing no plus title regardless of user permission. This fetch the roles info (plus double check on a Games+ thread) to determine if you are eligible and allow Plus titles to be search / displayed on browsing catalog.

How it was tested

  • Added tests that cover this change
  • For a fix: the regression test fails against the unfixed code
  • npm run check passes locally
  • New functions and IPC handlers have comments explaining why
  • CHANGELOG.md updated
  • This PR targets nightly, not main

AI assistance

  • No AI was used on this change
  • AI was used on this change

Tool and model: VSCode auto free + opencode reviews

What it wrote:

  • Pretty much all, but I do verify what i write to approve and also correct it of edge cases and approaches, plus multiple review cycles.

What you verified myself:

  • Verified on client.

IPC changes

  • Added lewdcorner-tier channel (electron/ipc/accounts.js). Returns { tier, tierCheckedAt, lcTierMismatch }. Caller: src/components/settings/Accounts.jsx. No removed or renamed channels.

Anything the reviewer should know

  • Certain warning log is added - keep the one that shop lcTierMismatch (at least one) to have warning when LC site change their structure or class names. The backup games+ thread check workaround will still work but I prefer a 2 check approach to be stricter🤔
  • The config is stored in a config file. It's a question if it should be more obfuscated but ig that should be ok for packaged official client. If someone wanna modified there are easier one liner way to bypass.
  • I did test plus + no-login, but did not have standard or prestige roles to test, so those were not manually tests, just through test files.
  • The Games+ thread provided is a Games+ entry on LC, and the check is a fallback (though always check) when verify tier. However, one exception I can think of is when LC decide to move it back to normal Games section then it might not be a correct check - TODO: Might want to do a more details check if the thread can be access with assets, and the forum is Games+. Make it a bit more fragile to break if the site change but probably be more guaranteed.

@codeon89 codeon89 changed the title Add LC tier check for browsing [ATLAS-390] Add LC tier check for browsing Aug 27, 2026
@codeon89 codeon89 changed the title [ATLAS-390] Add LC tier check for browsing [ATLAS-390] Support LC Plus tier browsing for eligible tier-check user Aug 27, 2026
@codeon89 codeon89 changed the title [ATLAS-390] Support LC Plus tier browsing for eligible tier-check user [ATLAS-390] Support LC Plus titles browsing for eligible tier-check user Aug 27, 2026
@codeon89
codeon89 force-pushed the atlas/390/lewdcorner-tier-check-browsing-support branch 4 times, most recently from dfbec98 to 86d65dc Compare August 27, 2026 16:52
@codeon89
codeon89 force-pushed the atlas/390/lewdcorner-tier-check-browsing-support branch from 86d65dc to 0cb0036 Compare August 27, 2026 17:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant