Commit Graph
2381 Commits
Author SHA1 Message Date
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 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 0b844e6060 fix(favicon): harden sfw board icon swapping 2026-03-24 16:03:31 +07:00
Tommaso Casaburi 3b2110ebc5 docs(blotter): rewrite release messages for general users 2026-03-21 17:52:07 +08:00
Tommaso Casaburi 85e81aae2e fix(release): normalize asset names 2026-03-21 12:41:32 +08:00
Tommaso Casaburi 7af59ae556 chore(release): v0.7.3 2026-03-20 21:54:22 +08: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 ce2ad82c8c fix: allow edit modal saves after delete toggles 2026-03-20 16:20:04 +08:00
Tommaso CasaburiandGitHub 5ecf8fbea8 feat: add in-app update flow and native e2e verification (#1112)
* feat(app-update): add in-app update flow with native e2e coverage

* docs(ai-workflow): infer closed-issue labels automatically

* fix(app-update): address native updater review findings

* fix(android): validate updater redirect hosts

* fix(electron): harden updater file names
2026-03-20 13:31:52 +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 e0fa1ca83f chore(footer): update telegram link 2026-03-18 16:05:41 +08:00
Tommaso Casaburi 132eaa3691 chore(release): v0.7.2 2026-03-17 20:42:04 +08:00
Tommaso CasaburiandGitHub ebf5ab64e4 chore(ai-workflow): tighten agent workflow and worktree tooling (#1107)
* chore(ai-workflow): tighten agent workflow and worktree tooling

* fix(ai-workflow): address review feedback

* fix(ai-workflow): make format hook portable
2026-03-17 19:58:30 +08:00
Tommaso CasaburiandGitHub 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 CasaburiandGitHub 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 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 c9bd6258b2 fix(electron): restore packaged desktop app loading (#1095)
* fix(electron): restore packaged desktop app loading

Rebuild and verify Electron native modules before packaging and use the Vite base URL for packaged asset preloads.

* test(preload-utils): cover non-root base urls
2026-03-17 17:04:47 +08:00
Tommaso CasaburiandGitHub 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 dfd96db7fa chore(release): v0.7.1 2026-03-16 20:56:31 +08:00
Tommaso CasaburiandGitHub 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 CasaburiandGitHub 37c834d975 fix(reply-modal): keep drag interactions sharp (#1086) 2026-03-16 14:42:30 +08:00
Tommaso CasaburiandGitHub 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 7f4e069783 feat(skills): add inspect-elements skill backed by element-source
Closes #1082
2026-03-15 19:02:19 +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 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 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 Casaburi 2df838a14c chore(release): v0.7.0 2026-03-12 18:52:12 +08:00
Tommaso CasaburiandGitHub 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 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 053965f124 fix(settings-modal): raise settings modal above reply and challenge modals (#1062) 2026-03-12 17:51:30 +08:00
Tommaso CasaburiandGitHub fe55e6f332 fix(quotes): resolve external quote links across boards (#1064) 2026-03-12 17:41:11 +08:00
Tommaso CasaburiandGitHub 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 CasaburiandGitHub 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 CasaburiandGitHub 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 CasaburiandGitHub 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
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
plebeius ec2c2d5d70 chore(release): v0.6.10 2026-03-10 18:26:11 +08:00
plebeius 773debece3 fix(post): avoid duplicate history entries on OP permalinks 2026-03-10 18:25:07 +08:00