Commit Graph
538 Commits
Author SHA1 Message Date
Tommaso Casaburi 4b06ac8c9a perf(home): stop popular threads rerenders after load 2026-04-19 15:01:27 +07:00
Tommaso Casaburi f2ab25bd08 Merge branch 'codex/fix/mod-queue-approved-stuck'
# Conflicts:
#	package.json
#	yarn.lock
2026-04-19 13:46:29 +07:00
Tommaso Casaburi 8957f0439e fix(mod queue): keep approved items from sticking 2026-04-19 13:45:24 +07:00
Tommaso Casaburi 58a4be1be7 fix(catalog): reuse board feed identity when idle 2026-04-18 17:29:33 +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 d425927618 Merge branch 'claude/wizardly-jemison-9f409f' 2026-04-18 13:31:21 +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 d8944e3c7c feat(pass): localize pass page copy 2026-04-17 15:11:15 +07:00
Tommaso Casaburi b81bcd8c55 Merge branch 'codex/fix/pass-voting-copy' 2026-04-17 14:21:22 +07:00
Tommaso Casaburi 1c6cf3fc0f feat(pass): add pass page and update voting copy 2026-04-17 14:21:10 +07:00
Tommaso Casaburi 77d22713da fix(account-data-editor): load Ace before esm-resolver 2026-04-17 13:47:52 +07:00
Tommaso Casaburi ee7a5b5778 refactor(core): remove legacy plebbit terminology 2026-04-17 10:48:27 +07:00
Tommaso Casaburi f6ce2ba018 fix(reply-quote-preview): keep floating OP previews at desktop width 2026-04-16 15:20:49 +07:00
Tommaso Casaburi 7fb825b4c6 perf(homepage): isolate boards list from live hook churn 2026-04-15 14:36:18 +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 420c7207e1 merge: board selector default boards fix 2026-04-11 17:04:49 +07:00
Tommaso Casaburi 3d40e6c37e fix(rules): keep board selector limited to default boards 2026-04-11 17:04:35 +07:00
Tommaso Casaburi 19095aefa1 fix(hooks): handle pkc rebrand regressions 2026-04-11 16:57:00 +07:00
Tommaso Casaburi 74f8fae496 fix(post): load capcode icons from public asset root 2026-04-09 16:30:21 +07:00
Tommaso Casaburi a35ec83966 fix(catalog): address missed review findings 2026-04-03 15:51:57 +07:00
Tommaso CasaburiandGitHub 7ba28becc5 fix(catalog): stop virtualizing single-board catalogs (#1121)
* fix(catalog): defer pretext row work and trim multiboard append batches

* fix(catalog): stop virtualizing single-board catalogs
2026-04-03 15:08:22 +07:00
Tommaso CasaburiandGitHub 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 99c0bbfac5 perf(board): reduce mobile reverse-scroll jank 2026-03-31 19:47:36 +07:00
Tommaso CasaburiandGitHub 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 CasaburiandGitHub 816281c607 fix(thread-page): make thread auto updates opt-in (#1115)
* fix(thread-page): make thread auto updates opt-in

Wire `Auto` and `Update` to the same manual refresh path and cover the thread flow with an e2e harness.

* fix(thread-page): address PR review findings
2026-03-20 16:48:57 +08:00
Tommaso Casaburi e0fa1ca83f chore(footer): update telegram link 2026-03-18 16:05:41 +08:00
Tommaso Casaburi 1db0c625e8 feat(home): show platform-specific info message on homepage
Web users see the existing download prompt; native app users see a P2P encouragement message instead.

Closes #1096
2026-03-17 17:54:52 +08:00
Tommaso CasaburiandGitHub fd9ab19de3 fix(mod-queue): show board button from live roles (#1079)
* fix(mod-queue): show board button from live roles

* fix(mod-queue): require live role for board access
2026-03-13 16:37:57 +08:00
Tommaso CasaburiandGitHub aedee9fb83 feat(archive): implement comment.archived and add archive page (#1074)
* feat(archive): implement comment.archived and add archive page

Add isCommentArchived() utility, /board/:boardIdentifier/archive route,
archive view with filtered feed, and UI integration (board buttons, edit
menu, catalog row, post). Archived indicator on catalog and posts.

* fix(archive): address review feedback from Bugbot and CodeRabbit

Add missing i18n keys (archived, thread_archived, view, loading_archive),
add /archive/settings route, replace hardcoded English in archive.tsx, and
fix mobile test state.
2026-03-13 16:06:36 +08:00
Tommaso CasaburiandGitHub 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 CasaburiandGitHub 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 CasaburiandGitHub fe55e6f332 fix(quotes): resolve external quote links across boards (#1064) 2026-03-12 17:41:11 +08:00
tomcasaburi 0105dd0a0f style(rules): sort boards alphabetically 2026-03-11 19:04:22 +08:00
tomcasaburi 1960e99b82 chore: update github username 2026-03-11 19:03:51 +08:00
Tommaso CasaburiandGitHub 6c03253cb4 fix(post): stop thread navigation from forcing OP alignment (#1052)
* Update README.md

* fix(post): stop thread navigation from forcing OP alignment

Route-driven thread opens now use the normal top-of-page behavior, while explicit OP permalink intents carry a scrollThreadContainerCid state and resolve against the visible thread container only. The old spacer injection path is removed.

* fix(post): address PR review follow-ups
2026-03-11 18:43:36 +08:00
Tommaso CasaburiandGitHub 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 a20f131201 fix(mod-queue): preserve pending reject state after refresh 2026-03-09 19:05:29 +08:00
plebeius 417482060d refactor: org name changed from bitsocialhq to bitsocialnet 2026-03-09 17:01:35 +08:00
plebeius 3b341922c4 fix(tests): mock board-buttons and style-selector to avoid Solana import crash 2026-03-09 16:31:06 +08:00
plebeius 9f2fd12200 chore: update footer links 2026-03-09 15:46:13 +08:00
plebeius c3cfc7d63a feat(catalog): add mobile footer with Return, Archive, Top, Refresh buttons 2026-03-09 15:17:39 +08:00
plebeius 04b98b84a4 feat(popular-threads): show actual feed state string instead of generic loading 2026-03-08 16:50:27 +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 90a01057f2 chore(knip): trim dead exports and tool noise 2026-03-08 16:37:34 +08:00
plebeius 9444d3e01a test: cover comment rendering and edge-route states 2026-03-08 16:00:54 +08:00
plebeius 29b6c85541 test: cover board actions, pagination, and thread routes
Core browsing flows around board controls, pagination, and thread pages were still largely unmeasured in the honest whole-repo report. That left route mismatches, cached-thread hydration, board action wiring, and mod-queue control regressions underprotected in CI.
2026-03-08 14:37:35 +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