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
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 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
4fb7739991
fix(catalog-search): clear stale query filter
2026-04-01 19:05:58 +07:00
Tommaso Casaburi
99c0bbfac5
perf(board): reduce mobile reverse-scroll jank
2026-03-31 19:47:36 +07:00
Tommaso Casaburi
eeb288e2dc
fix(catalog): avoid stretching unknown-size thumbnails
2026-03-31 17:46:01 +07:00
Tommaso Casaburi
e345935aac
fix(reply modal): stop recentering on input
2026-03-29 16:40:09 +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
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
ce2ad82c8c
fix: allow edit modal saves after delete toggles
2026-03-20 16:20:04 +08:00
Tommaso Casaburi
a2286aa68e
feat(app-update): add in-app update flow with native e2e coverage
2026-03-19 20:19:48 +08:00
Tommaso Casaburi and GitHub
714c39cf47
feat(settings): add expanded video auto-unmute preference ( #1104 )
...
* feat(settings): add expanded video auto-unmute preference
* fix(translations): add missing unmute labels
* fix(translations): localize unmute label
2026-03-17 19:09:29 +08:00
Tommaso Casaburi and GitHub
8c37258f20
perf(replies): prefer cached board preview replies ( #1101 )
...
* perf(replies): prefer cached board preview replies
* fix(replies): address review feedback
2026-03-17 19:01:56 +08:00
Tommaso Casaburi and GitHub
f812fe1d18
fix(pwa): make web updates deterministic ( #1093 )
...
* fix(pwa): make web updates deterministic
* fix(pwa): address review feedback
2026-03-17 16:20:13 +08:00
Tommaso Casaburi and GitHub
f4ff7a23f7
feat(post-menu): add Report/Delete, reorder buttons, edit-only-for-mods, copy link 5chan.app ( #1089 )
...
* Update crypto address UI for .bso accounts
* feat(post-menu): add Report/Delete, reorder buttons, edit-only-for-mods, copy link 5chan.app
- Remove redundant reason field from edit menu (purged posts unreachable)
- Add Report post (placeholder alert) and Delete post (mobile) to post menus
- Reorder: Report, Hide, Delete, Copy x3, Image search
- Mobile edit checkbox only for mods; authors use Delete in post menu
- Copy direct link always uses 5chan.app domain
- 10px margin-top on mod menu save button
* fix(post-menu): add confirmation before delete post (Bugbot)
2026-03-16 17:54:17 +08:00
Tommaso Casaburi
6ecf3c40d3
fix(thread): count user id tooltips from thread data
...
Replace the DOM-based user ID tooltip count with a deduped per-thread author map in `getThreadPostCountsByAuthor()`. This keeps mounted preview copies from doubling ID totals on desktop and mobile thread views.
2026-03-16 15:13:04 +08:00
Tommaso Casaburi
47e8c5a37b
fix(multiboards): hide archive button slot
2026-03-16 14:57:00 +08:00
Tommaso Casaburi and GitHub
37c834d975
fix(reply-modal): keep drag interactions sharp ( #1086 )
2026-03-16 14:42:30 +08:00
Tommaso Casaburi and GitHub
3a7400e4a8
fix(reply-quote-preview): restore (You) for pseudonymous quotes ( #1084 )
...
* fix(reply-quote-preview): restore (You) for pseudonymous quotes
* test(reply-quote-preview): mock account comments hook
2026-03-16 14:26:08 +08:00
Tommaso Casaburi and GitHub
726522586c
fix(edit-menu): allow pseudonymous reply deletion ( #1076 )
...
* fix(edit-menu): allow pseudonymous reply deletion
* fix(edit-menu): ignore non-pseudonymous mode
2026-03-13 16:37:44 +08:00
Tommaso Casaburi and GitHub
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 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
abf6727212
Add NSFW/SFW board filter to /all/ board page on mobile ( #1071 )
...
* feat(board-buttons): add NSFW/SFW filter to /all/ board page on mobile
* refactor(board-buttons): extract MobileAllFeedFilter padding to CSS class
2026-03-12 18:33:04 +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
053965f124
fix(settings-modal): raise settings modal above reply and challenge modals ( #1062 )
2026-03-12 17:51:30 +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
ef375e3578
fix(mobile): hide empty mobile reply backlink wrapper ( #1060 )
...
getRenderableMobileBacklinks() now filters mobile backlinks down to replies that can actually render, so ReplyBacklinks only mounts mobileReplyBacklinks when there is visible content. This adds a regression test for the gap where a newly published reply exists before it receives its post number.
2026-03-12 16:40:48 +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
2dd7c0e8d7
fix(catalog): use alias-aware media link labels ( #1056 )
...
* fix(catalog): use alias-aware media link labels
* fix(settings): align advanced settings tests with save label
2026-03-11 22:03:15 +08:00
Tommaso Casaburi and GitHub
d56175a66e
feat(ui): polish advanced settings, media hosting warning, reply modal mobile UX ( #1054 )
...
- Move Save Advanced Settings button to bottom-center of advanced settings
- Reduce spacing above/below web upload warning in media hosting
- Set 16px font for reply modal inputs on mobile (prevents iOS zoom)
- Autofocus textarea when opening reply modal on mobile
2026-03-11 19:42:34 +08:00
Tommaso Casaburi and GitHub
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
plebeius
773debece3
fix(post): avoid duplicate history entries on OP permalinks
2026-03-10 18:25:07 +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
6954b5bcc9
fix(replies): hide author-deleted replies from thread views
2026-03-09 21:10:56 +08:00
plebeius
454c94555d
Update crypto-address-setting.tsx
2026-03-09 20:47:22 +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
892e6e824a
fix(settings): restore style selector to interface settings
2026-03-09 15:53:53 +08:00
plebeius
cf55eaa781
feat(markdown): make spoiler tags case-insensitive like BBCode
2026-03-09 15:31:53 +08:00
plebeius
c3cfc7d63a
feat(catalog): add mobile footer with Return, Archive, Top, Refresh buttons
2026-03-09 15:17:39 +08:00
plebeius
9c79bf2198
fix(i18n): default interface language to english
2026-03-08 21:09:22 +08:00
plebeius
723a2dee52
fix: share board offline state between post form and reply modal
2026-03-08 19:02:49 +08:00
plebeius
08ec9f31ff
fix(reply-modal): align offline warning with post form
2026-03-08 17:10:48 +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
9444d3e01a
test: cover comment rendering and edge-route states
2026-03-08 16:00:54 +08:00
plebeius
dc5d23d8d9
test: expand hook and utility runtime coverage
2026-03-08 15:46:05 +08:00