Tommaso Casaburi and GitHub
556973a445
Improve React Doctor score and badge ( #1127 )
...
* fix(react doctor): improve quality score and badge
* fix(react doctor): address review feedback
* fix(review): address final bot feedback
2026-05-10 18:25:13 +07:00
Tommaso Casaburi
5fe653726d
perf(directories): dedupe refreshes across hook mounts
2026-05-10 12:21:27 +07:00
Tommaso Casaburi
3de85520bd
fix(android upload): handle transient imgur errors
2026-05-01 22:54:05 +07:00
Tommaso Casaburi
9f388693eb
fix(media hosting): restore android imgur support
2026-05-01 22:52:56 +07:00
Tommaso Casaburi
7e1513b688
feat(media hosting): disable unreachable providers
2026-05-01 22:52:55 +07:00
Tommaso Casaburi
5c74a1e495
fix(pending posts): clean up failed post display
2026-04-30 17:39:06 +07:00
Tommaso Casaburi
8ba1761d07
Merge branch 'codex/fix/mod-queue-post-order'
2026-04-27 15:13:38 +07:00
Tommaso Casaburi
463509e105
fix(replies): order approved queue replies
2026-04-27 15:12:52 +07:00
Tommaso Casaburi
abaa0d4e16
perf(mod queue): reduce loading rerenders
2026-04-27 14:59:24 +07:00
Tommaso Casaburi and GitHub
5dc5408a15
fix(codebase audit): preserve cleanup without regressions
...
Fix codebase audit regressions while preserving UI/UX behavior and adding review-driven hardening.
2026-04-24 15:48:07 +07:00
Tommaso Casaburi
c046c542b6
chore(deps): use published bitsocial react hooks
2026-04-20 22:11:36 +07:00
Tommaso Casaburi
4b06ac8c9a
perf(home): stop popular threads rerenders after load
2026-04-19 15:01:27 +07:00
Tommaso Casaburi
508fffe5d6
fix(home): preserve popular threads during navigation
2026-04-19 14:24:35 +07:00
Tommaso Casaburi
70d8c37222
feat(multiboards): expand time filters in place
2026-04-18 16:47:04 +07:00
Tommaso Casaburi
df01cbfb49
merge: codex/fix/all-active-sort
...
# Conflicts:
# public/translations/ar/default.json
# public/translations/bn/default.json
# public/translations/cs/default.json
# public/translations/da/default.json
# public/translations/de/default.json
# public/translations/el/default.json
# public/translations/en/default.json
# public/translations/es/default.json
# public/translations/fa/default.json
# public/translations/fi/default.json
# public/translations/fil/default.json
# public/translations/fr/default.json
# public/translations/he/default.json
# public/translations/hi/default.json
# public/translations/hu/default.json
# public/translations/id/default.json
# public/translations/it/default.json
# public/translations/ja/default.json
# public/translations/ko/default.json
# public/translations/mr/default.json
# public/translations/nl/default.json
# public/translations/no/default.json
# public/translations/pl/default.json
# public/translations/pt/default.json
# public/translations/ro/default.json
# public/translations/ru/default.json
# public/translations/sq/default.json
# public/translations/sv/default.json
# public/translations/te/default.json
# public/translations/th/default.json
# public/translations/tr/default.json
# public/translations/uk/default.json
# public/translations/ur/default.json
# public/translations/vi/default.json
# public/translations/zh/default.json
2026-04-18 16:01:00 +07:00
Tommaso Casaburi
49422591b8
fix(multiboards): restore stable time-filter suggestions
2026-04-18 15:58:27 +07:00
Tommaso Casaburi
e161606147
perf(board): reduce desktop reverse-scroll jank on /all
...
Apply the asymmetric viewport buffer that already fixed mobile to desktop
multiboard feeds, and trim per-post mount cost so remounts during scroll-up
are cheaper:
- Desktop multiboard buffer goes from {600,600} to {1200,2400} (top-heavy),
matching the mobile pattern from 99c0bbfac so items stay mounted longer
when scrolling back up
- Cache feed post height estimate by CID in pretext-height-estimates so
remounts skip the Pretext text-measurement work
- Memoize CommentMedia and switch its expanded-media-store reads to atomic
selectors so it stops rerendering on unrelated store changes
- Memoize useCommentMediaInfo return so its reference is stable for memo
comparators downstream
- Stop useFetchGifFirstFrame from forcing an extra render on every post
mount by bailing out of equivalent setState calls
- Extract PendingModerationActions out of PostInfo so the two
usePublishCommentModeration calls only run on the post page when
mod-approval is actually pending, not on every feed item
2026-04-18 13:31:02 +07:00
Tommaso Casaburi
4cae9c3caa
fix(board status): resolve offline indicators with strict community refs
2026-04-17 12:51:14 +07:00
Tommaso Casaburi
ee7a5b5778
refactor(core): remove legacy plebbit terminology
2026-04-17 10:48:27 +07:00
Tommaso Casaburi
e366dac25c
fix(quotes): keep same-thread board previews local
2026-04-16 15:33:12 +07:00
Tommaso Casaburi
431f84b871
fix(feed): restore multiboard loading placeholder
2026-04-15 13:18:03 +07:00
Tommaso Casaburi
45567013fc
test(ci): align strict community mocks
2026-04-15 13:18:02 +07:00
Tommaso Casaburi
621235379c
fix(feed): support strict community refs and safer domain publishing
2026-04-15 12:51:21 +07:00
Tommaso Casaburi
256cd459cf
Merge branch 'codex/feature/spam-blocker-challenge'
...
# Conflicts:
# package.json
# src/components/settings-modal/advanced-settings/__tests__/advanced-settings.test.tsx
# src/components/settings-modal/advanced-settings/advanced-settings.tsx
# src/stores/__tests__/publish-stores.test.ts
# yarn.lock
2026-04-14 13:34:02 +07:00
Tommaso Casaburi
956fb426ea
fix(challenge): support pkc spam blocker flow
2026-04-14 13:30:31 +07:00
Tommaso Casaburi
fea7b8ea10
fix(feed): unblock multiboard directories with public key fallback
2026-04-13 16:24:42 +07:00
Tommaso Casaburi
f52545ec5b
fix(directories): support multisub public keys
2026-04-13 14:54:23 +07:00
Tommaso Casaburi
19095aefa1
fix(hooks): handle pkc rebrand regressions
2026-04-11 16:57:00 +07:00
Tommaso Casaburi
5f9e603b62
fix(publish): retry failed comments without duplicate replies
2026-04-10 16:02:10 +07:00
Tommaso Casaburi and GitHub
251e103db3
feat: finalize pretext feed sizing rollout ( #1120 )
...
* feat(feeds): add pretext-backed item sizing across board, catalog, and thread replies
* feat: finalize pretext feed sizing rollout
* fix(catalog): raise multiboard viewport buffer
* fix(board): preserve pretext query overrides
2026-04-02 19:45:55 +07:00
Tommaso Casaburi and GitHub
c2e8e169c2
fix(accounts): adapt 5chan to compact account history hooks ( #1118 )
...
* chore(cursor): use composer-2 for subagents
* fix(accounts): adapt 5chan to compact account history hooks
* fix(accounts): address 5chan account-history review findings
2026-03-20 21:25:57 +08:00
Tommaso Casaburi and GitHub
d7703953fb
refactor: migrate 5chan to the community hooks API ( #1073 )
...
* refactor(community-api): migrate 5chan to community hooks
* fix(review): address PR feedback
* fix(review): preserve legacy board context fallbacks
* fix(review): address latest bot feedback
* fix(review): use communityAddress in edit menu privileges
2026-03-13 13:25:10 +08:00
Tommaso Casaburi and GitHub
0aafb7f538
fix(post): move failed publish notice into comment body ( #1066 )
...
Align the failed notice and delete action with the existing post card and footer controls.
2026-03-12 17:56:52 +08:00
Tommaso Casaburi and GitHub
fe55e6f332
fix(quotes): resolve external quote links across boards ( #1064 )
2026-03-12 17:41:11 +08:00
Tommaso Casaburi and GitHub
ea792fe8a8
fix(replies): refresh thread backlinks from live account replies ( #1058 )
...
* fix(replies): refresh thread backlinks from live account replies
* refactor(replies): extract useRegisterFreshReplies hook per CodeRabbit
2026-03-12 15:08:45 +08:00
Tommaso Casaburi and GitHub
6ed3708322
fix(post): align op permalinks to the outer thread container ( #1050 )
...
* fix(post): align op permalinks to the outer thread container
* perf(scroll-to-reply): stop interval when max attempts/duration reached
2026-03-10 18:08:20 +08:00
plebeius
a862852e53
fix(subplebbit): resolve aliased board metadata in subplebbit selectors
2026-03-10 12:47:38 +08:00
plebeius
af89b59cca
refactor(state-string): make loading state strings user-friendly, replace gateway hostnames with via IPFS
2026-03-09 19:36:54 +08:00
plebeius
417482060d
refactor: org name changed from bitsocialhq to bitsocialnet
2026-03-09 17:01:35 +08:00
plebeius
71b0b0fa42
perf(popular-threads): show board-count loading state for popular threads
2026-03-08 17:36:55 +08:00
plebeius
c27590372c
fix(popular-posts): randomize popular thread board selection on mount
2026-03-08 16:58:55 +08:00
plebeius
824c14f538
fix(home): stabilize initial popular threads box
...
Keep usePopularPosts() keyed to the requested board list, wait to reveal the box until the first result set is stable, and limit the grid to one thread per board. Freeze the first revealed threads until refresh or filter changes so later board loads cannot displace visible cards.
2026-03-08 16:48:38 +08:00
plebeius
2b32866b6b
test: cover edit, challenge, advanced settings, and gif preview flows
2026-03-08 16:48:01 +08:00
plebeius
90a01057f2
chore(knip): trim dead exports and tool noise
2026-03-08 16:37:34 +08:00
plebeius
b2137c7f91
test: expand markdown and post menu coverage
...
Adds focused regression coverage for quote previews, markdown link rendering, embed toggles, and desktop/mobile post-menu actions. It also fixes the undefined feed-state crash in use-state-string.ts and removes unnecessary runtime imports with import type.
2026-03-08 16:30:02 +08:00
plebeius
dc5d23d8d9
test: expand hook and utility runtime coverage
2026-03-08 15:46:05 +08:00
plebeius
1fbf715aa9
test: cover board, catalog, and publish flows
...
Board browsing, catalog filtering, post publishing, and reply publishing had little or no honest whole-repo coverage, which let route-level regressions and duplicated form side effects slip through. This pass adds targeted tests for those user flows and fixes the duplicate `PostFormTable` mounting bug they exposed.
2026-03-08 14:29:47 +08:00
plebeius
76eb4b537e
test: expand honest whole-repo coverage
...
Adds broad coverage across stores, hooks, and runtime utilities while switching `vitest.config.ts` to an explicit whole-repo include list. This turns the coverage report into a real repo-wide baseline instead of an imported-file subset.
2026-03-08 13:59:38 +08:00
plebeius
eda5af7bf2
test: expand directory and electron upload coverage
...
Added hook coverage for cached directory hydration, alias lookup, and fallback behavior, plus broader Electron automation tests around hidden BrowserWindow upload flows and failure cases. useDirectoriesState() and related fallback paths now stay synchronized when the shared cache is already populated but the GitHub refresh fails.
2026-03-08 13:04:51 +08:00
plebeius
34e2c2bc4d
fix: hold gif thumbnails until first frame is ready
...
Distinguish GIF frame loading from GIF frame failure in useFetchGifFirstFrame(), so thread and catalog thumbnails no longer render animated GIFs before the still frame arrives. Keep the existing animated fallback when the first-frame fetch actually fails.
2026-03-07 21:16:13 +08:00