Tommaso Casaburi
57310867ec
chore(release): v0.9.11
2026-07-03 01:43:41 +07:00
Tommaso Casaburi and GitHub
099fdd6f3e
Add hidden trash board ( #1183 )
...
* feat(trash-board): add hidden trash board
* fix(trash-board): resolve special board transfer lookups
* fix(trash-board): exclude source aliases from transfers
* fix(trash-board): avoid hidden rules hash
2026-07-02 21:22:19 +07:00
Tommaso Casaburi
19530d1d99
Revert "chore(release): v0.9.11"
...
This reverts commit 6fb4adc0b2 .
2026-07-02 16:18:10 +07:00
Tommaso Casaburi
6fb4adc0b2
chore(release): v0.9.11
2026-07-02 16:15:24 +07:00
Tommaso Casaburi
e50e4e630b
fix(transfer modal): remember dragged position
2026-07-02 16:07:25 +07:00
Tommaso Casaburi and GitHub
b4a6f0a65a
feat(mod queue): transfer posts across boards ( #1182 )
...
* feat(mod queue): transfer posts across boards
* fix(mod queue): polish transfer modal and reason
* fix(mod queue): recover abandoned transfer challenges
* fix(mod queue): address transfer review feedback
* fix(mod queue): hide transfer for unavailable posts
* fix(mod queue): prevent repeat transfer submit
* fix(mod queue): sync transfer state with queue actions
* fix(mod queue): omit transfer temp index
* fix(mod queue): harden transfer failure states
* fix(mod queue): keep hidden transfer lock
* fix(mod queue): release hidden transfer lock
2026-07-02 14:52:06 +07:00
Tommaso Casaburi
546ee99f12
fix(reply modal): remember desktop position across opens in session
...
Dragged reply modal positions persist in sessionStorage for the tab and restore on the next desktop open, while mobile viewports still center the modal.
2026-07-01 22:51:30 +07:00
Tommaso Casaburi
fde4f0ac6a
Merge branch 'codex/fix/reply-preview-modal-width'
2026-07-01 16:43:40 +07:00
Tommaso Casaburi
c0537cc680
fix(reply modal): align composer controls
2026-07-01 16:43:21 +07:00
Tommaso Casaburi
4bfe298d4b
fix(reply modal): insert YouTube links at cursor and enable conversion everywhere
...
YouTube thumbnail conversion now inserts links at the textarea caret instead of prepending, runs in reply modals even when media links are optional, and preserves the YouTube brand label on desktop posts.
2026-07-01 16:33:32 +07:00
Tommaso Casaburi
21056ae6b9
feat(bbcode preview): allow resizing preview pane
2026-07-01 16:08:53 +07:00
Tommaso Casaburi
b90138f1d9
fix(reply modal): constrain bbcode preview width
2026-07-01 16:01:31 +07:00
Tommaso Casaburi
5aaee154d2
chore(deps): bump pkc and hooks packages
2026-06-29 20:18:44 +07:00
Tommaso Casaburi
3c3236c0bd
docs(product): document the no-emoji-affordances policy and rationale
...
Explain why emoji render as raw Unicode but get no picker, shortcode/emote system, or Twemoji styling: imageboard expressive norms (greentext, reaction images, kaomoji/ASCII art), emoji as an outsider marker, and structural-not-cosmetic differentiation from 4chan. Add the matching DESIGN.md guardrail and regenerate the LLM index.
2026-06-29 15:34:08 +07:00
Tommaso Casaburi
e52aa3a44f
chore(release): v0.9.10
2026-06-29 10:07:32 +07:00
Tommaso Casaburi
69ba4ace7a
fix(post form): respect reply link rules
2026-06-29 09:55:55 +07:00
Tommaso Casaburi
3b3a5a5e6c
chore(release): v0.9.9
2026-06-29 00:44:49 +07:00
Tommaso Casaburi
deb7c841b7
chore(deps): upgrade bitsocial-react-hooks to 0.1.25
2026-06-29 00:41:39 +07:00
Tommaso Casaburi and GitHub
7258e21f6f
fix(markdown): render code tags on code-enabled boards
...
Enable [code] tag parsing for both /g/ and /q/ rendering paths, show the post-form hint on code-enabled boards, and preserve whitespace in BBCode previews.
2026-06-28 23:37:59 +07:00
Tommaso Casaburi
1de28afd45
chore(deps): upgrade bitsocial-react-hooks to 0.1.24
2026-06-28 23:22:11 +07:00
Tommaso Casaburi
64dd30ff24
fix(post-content): keep visited link colors on theme palette
...
Apply post link and quotelink CSS variables to visited anchors in
bbcode and markdown so they match unvisited styling.
2026-06-28 23:14:23 +07:00
Tommaso Casaburi
6e361e224d
chore(deps): upgrade pkc-js to 0.0.59
2026-06-28 22:57:57 +07:00
Tommaso Casaburi
e24685a234
Merge branch 'codex/fix/q-topbar-category'
2026-06-28 15:47:17 +07:00
Tommaso Casaburi
afb3e31f0a
fix(boards-bar): group /q/ with r9k, s5s, and vip in top bar
...
Move the feedback board into the same desktop bracket category as the
other small meta boards instead of the large general group.
2026-06-28 15:47:12 +07:00
Tommaso Casaburi
6b2b85f51e
fix(post-form): enforce required post link board rules
...
Validate link and media requirements from community/directory features in
post and reply forms, with shared helpers and translated alert messages.
2026-06-28 15:44:36 +07:00
Tommaso Casaburi
b974be7b2f
chore(release): v0.9.8
2026-06-27 18:46:31 +07:00
Tommaso Casaburi
fa5320e834
fix(edit-menu): let moderators edit their own post content
...
Show a content editor in the mod menu when the signed-in mod is the post
author, and publish author edits alongside moderation actions on save.
2026-06-27 18:41:28 +07:00
Tommaso Casaburi
fcd2171e62
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-06-27 17:47:01 +07:00
Tommaso Casaburi and GitHub
ecb7f9e4cc
fix(catalog): use search hashes for board routes
...
Use 4chan-style #s= catalog search hashes for redirected board search routes and quotelinks.
2026-06-27 17:45:38 +07:00
Tommaso Casaburi
f213d41296
fix(favicon): show dedicated icon on 404 pages
...
Add favicon-404.ico and switch tab favicon on not-found routes while
keeping static app pages and larger crawler icons unchanged.
2026-06-27 17:38:55 +07:00
Tommaso Casaburi
eacb422f40
fix(routing): canonicalize board page 1 routes instead of not-found
...
Board URLs ending in /1 now redirect to the canonical page-1 path while
preserving search, hash, and settings suffixes.
2026-06-27 17:02:51 +07:00
Tommaso Casaburi
292d3e35a4
fix(footer): rename contact link to contributors
2026-06-27 16:27:58 +07:00
Tommaso Casaburi
9e027a0159
fix(ai workflow): align hook configs
2026-06-27 14:25:56 +07:00
Tommaso Casaburi
9c269d9dfa
chore(deps): upgrade bitsocial-react-hooks to 0.1.23
2026-06-27 14:23:56 +07:00
Tommaso Casaburi
87f73d7268
chore(deps): upgrade pkc-js to 0.0.57
2026-06-27 14:23:36 +07:00
Tommaso Casaburi
a06733cad4
Fix Codex hooks config schema
2026-06-27 13:53:09 +07:00
Tommaso Casaburi
42c08ecc49
Merge branch 'codex/feature/add-q-feedback-directory'
2026-06-26 18:12:11 +07:00
Tommaso Casaburi
51c0a16249
feat(directories): add /q/ feedback directory and link site footer
...
Register /q/ in directory defaults and board codes, ship the feedback
directory list, merge remote defaults with bundled fallbacks, and route
footer Feedback to /q/ instead of GitHub issues.
2026-06-26 18:12:05 +07:00
Tommaso Casaburi and GitHub
c6d048ecd7
Review settings upgrades before applying defaults
...
Adds a review modal for settings upgrades, keeps the settings banner reviewable, and preserves explicit router settings during account import.
2026-06-26 17:14:31 +07:00
Tommaso Casaburi
802aa2a447
docs: conform DESIGN.md to design.md spec
...
Reorder sections to canonical Overview/Colors/Typography/Layout/
Elevation & Depth/Shapes/Components/Do's and Don'ts, drop heading
numbers and the H1 title, add Layout and Shapes sections, and add
version: alpha. Regenerate public/llms*.txt.
2026-06-26 16:25:50 +07:00
Tommaso Casaburi
24e340e4b6
fix(media): pause other videos when a new one starts playing
...
Only one inline video should play at a time across the page. Wire exclusive
video playback into the existing offscreen media suspend hook.
2026-06-26 15:42:06 +07:00
Tommaso Casaburi
31197bb7e0
chore(release): v0.9.7
2026-06-26 10:24:21 +07:00
Tommaso Casaburi
8170cd169d
fix(post flags): show flags on directory candidate boards
2026-06-26 10:21:43 +07:00
Tommaso Casaburi
ca2473ef48
chore(release): v0.9.6
2026-06-25 23:56:10 +07:00
Tommaso Casaburi
5024365e5b
merge: all feed initial load stability
2026-06-25 23:49:34 +07:00
Tommaso Casaburi
2ff7b8bc88
fix(board): preserve feed order during hydration
2026-06-25 23:49:21 +07:00
Tommaso Casaburi
7fe3bd7911
fix(media playback): keep partially visible videos playing
2026-06-25 23:44:32 +07:00
Tommaso Casaburi
23706a86db
chore(release): v0.9.5
2026-06-25 19:49:21 +07:00
Tommaso Casaburi
fb004469e3
feat(p2p): enable pure browser p2p by default
2026-06-25 18:36:37 +07:00
Tommaso Casaburi
5dd2d95213
fix(p2p): stop account recovery reload loop
2026-06-25 18:33:02 +07:00
Tommaso Casaburi
466e0fee87
chore(deps): upgrade bitsocial packages
2026-06-25 18:06:54 +07:00
Tommaso Casaburi and GitHub
f1022fc2d9
fix: consume enriched account comments directly ( #1178 )
...
* fix: consume enriched account comments directly
* fix(account comments): use empty lookup patch
2026-06-24 16:23:42 +07:00
Tommaso Casaburi
dff0aef8f8
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-06-23 18:55:24 +07:00
Tommaso Casaburi and GitHub
371de88e22
chore(architecture): finish refactor audit
...
Merge the architecture audit refactors and follow-up UX fixes: remove release notes from generated LLM context, keep author edit controls delete-only, stabilize board refresh rendering, and address review feedback for role loading, refresh holds, moderation actions, and P2P stats polling.
2026-06-23 18:48:47 +07:00
Tommaso Casaburi
7f193b479b
fix(deps): bump vulnerable transitive dependencies for Dependabot alerts
...
Resolve 17 open alerts by pinning patched versions of vite, undici, ws, protobufjs, tar, js-yaml, @babel/core, form-data, and tmp.
2026-06-23 17:28:24 +07:00
Tommaso Casaburi
ca5582cffa
fix(settings): keep pubsub visibility stable before refresh
2026-06-23 16:30:17 +07:00
Tommaso Casaburi
4737d37967
fix(replies): hide no-reason removed replies
2026-06-23 16:20:15 +07:00
Tommaso Casaburi
da92b2fb0a
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-06-23 00:05:09 +07:00
Tommaso Casaburi and GitHub
04262214e1
fix(publishing): keep submit guard active until publish settles
...
Keep one-shot post and reply submissions guarded until the effect-driven publish settles, so duplicate clicks reuse the in-flight request instead of creating a second signed publish. Adds regression tests for post and reply duplicate-submit paths.
2026-06-22 14:53:28 +07:00
Tommaso Casaburi
cb74ba803d
fix(account-data-editor): restore Ace load ordering
2026-06-22 12:58:02 +07:00
Tommaso Casaburi
394fe2af00
chore(release): v0.9.4
2026-06-18 22:29:48 +07:00
Tommaso Casaburi
fb1a61eace
fix(posts): hide stale initializing footer
2026-06-18 22:27:30 +07:00
Tommaso Casaburi
87df18162c
chore(release): v0.9.4
2026-06-18 19:07:21 +07:00
Tommaso Casaburi
34ed150e22
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-06-18 19:02:28 +07:00
Tommaso Casaburi and GitHub
eb47214f08
Fix empty board loading state and browser P2P patch ( #1175 )
...
* fix(board): show loaded empty boards
* fix(p2p): patch browser hooks runtime
* fix(board): stop flash loading for explicit empty boards
* fix(board): wait for feed on preloaded empty pages
2026-06-18 18:54:48 +07:00
Tommaso Casaburi
1c140035b4
fix(p2p): disable browser pure P2P by default
...
New browser sessions use IPFS gateway mode unless the user explicitly enables pure P2P in advanced settings.
2026-06-18 18:53:33 +07:00
Tommaso Casaburi and GitHub
9896c4400b
fix(replies): keep fresh replies scoped to thread ( #1174 )
2026-06-18 18:13:31 +07:00
Tommaso Casaburi
0bffa38930
Merge branch 'codex/fix/desktop-board-address-verification'
2026-06-18 15:59:21 +07:00
Tommaso Casaburi
57805d60e5
Merge branch 'codex/fix/thread-author-controls'
2026-06-18 15:59:20 +07:00
Tommaso Casaburi
3a4a0d4130
fix(electron): add BSO name resolvers for desktop board address resolution
...
Configure desktop PKC RPC with Ethereum-backed BSO resolvers so .bso board addresses resolve correctly.
2026-06-18 15:59:15 +07:00
Tommaso Casaburi
6297edb49f
fix(post): restore thread author controls after publish navigation
...
Overlay local account comment author data on thread pages so edit/delete controls stay available after navigation from publish.
2026-06-18 15:59:14 +07:00
Tommaso Casaburi
d2f058a5ed
fix(home): point footer Blog link to bitsocial.net
2026-06-18 15:57:33 +07:00
Tommaso Casaburi
f4eb1d28d2
chore(home): replace Telegram footer link with Blog
...
Reorder footer links and add Home; Blog points to bitsocial.app/blog?q=5chan.
2026-06-18 15:57:02 +07:00
Tommaso Casaburi
9179988e7f
chore(release): v0.9.3
2026-06-18 14:19:34 +07:00
Tommaso Casaburi
8cf03a7bb4
fix(pubsub): repair browser pure p2p publishing
2026-06-18 14:18:14 +07:00
Tommaso Casaburi
de06d5d4bc
chore(release): v0.9.3
2026-06-17 23:13:33 +07:00
Tommaso Casaburi
1278cf42c0
fix(pubsub): restore browser pure p2p publishing
2026-06-17 23:09:39 +07:00
Tommaso Casaburi
d3772786ff
test(pubsub): align pure p2p option expectations
2026-06-16 22:53:22 +07:00
Tommaso Casaburi
f7771d33dd
chore(release): v0.9.3
2026-06-16 22:51:09 +07:00
Tommaso Casaburi
10015de6b9
fix(pubsub): avoid false browser p2p provider failures
2026-06-16 22:48:09 +07:00
Tommaso Casaburi
1fed20a471
chore: upgrade knip to 6.17.0
2026-06-16 17:21:20 +07:00
Tommaso Casaburi
8f491f58ed
Merge branch 'codex/chore/upgrade-bitsocial-react-hooks-0.1.18'
2026-06-15 18:40:30 +07:00
Tommaso Casaburi
88b44dc3a3
chore(deps): upgrade bitsocial-react-hooks to 0.1.18
2026-06-15 18:40:24 +07:00
Tommaso Casaburi
6006a658fb
fix(rules): re-scroll directory hash when data refreshes
...
Remove the one-shot scroll guard so /rules#code anchors scroll again when directory data updates after the initial render.
2026-06-15 18:39:49 +07:00
Tommaso Casaburi
f3565f0dda
perf(mod queue): stabilize moderation subscriptions
2026-06-15 18:10:58 +07:00
Tommaso Casaburi
75dd7a8496
fix(ci): keep raw board tests side-effect free
2026-06-14 20:58:26 +07:00
Tommaso Casaburi and GitHub
33bb1d1356
perf(mod queue): stabilize empty loading state
...
Keep the mod queue empty state visible while background P2P loading continues, reduce footer-driven rerenders, and preserve footer errors when retained queue history rows are rendered.
2026-06-14 20:38:25 +07:00
Tommaso Casaburi
35776737f2
fix(release): align blotter and release copy with LaTeX in /sci/
...
Update v0.9.2 blotter message and release one-liner to describe LaTeX
in /sci/ instead of generic scientific math preview wording.
2026-06-14 16:21:57 +07:00
Tommaso Casaburi
f53bd0f6e5
ci(release): make React Doctor check advisory
...
The release preflight ran yarn doctor --diff against the previous tag as a
hard gate, but many error-level diagnostics flag intentional patterns rather
than bugs (e.g. resetting preview state when the reply modal closes, mirroring
long-accepted code). Mark the step continue-on-error so it still runs and posts
annotations without blocking a release.
2026-06-13 18:25:53 +07:00
Tommaso Casaburi
591aaa729f
fix(challenge-modal): publish challenge answers with pkc object schema
...
pkc-js's publishChallengeAnswers destructures { challengeAnswers } from its
argument, so passing a bare string[] left challengeAnswers undefined and
silently broke challenge submission (i.e. posting). Wrap answers in the object
form via a publishPublicationChallengeAnswers helper with error logging, and
align the ChallengePublication type with the real runtime signature.
2026-06-13 18:25:04 +07:00
Tommaso Casaburi
ded239bef2
chore(release): v0.9.2
2026-06-13 18:09:24 +07:00
Tommaso Casaburi
f72d0b9fa5
chore(release): drop macOS quarantine workaround from release notes
...
The mac DMGs are now signed with a Developer ID and notarized, so Gatekeeper
no longer shows the "app is damaged" error and the xattr quarantine command
is no longer needed.
2026-06-13 18:04:42 +07:00
Tommaso Casaburi
cdb1d13bef
fix(post ids): avoid cid fallback for poster identity
2026-06-13 17:56:15 +07:00
Tommaso Casaburi
fb03957835
chore: sharpen advisory code quality review skill
2026-06-13 16:22:31 +07:00
Tommaso Casaburi and GitHub
85b782e934
feat(electron): sign and notarize mac release builds ( #1171 )
...
* feat(electron): sign and notarize mac release builds when Apple credentials are present
* fix(electron): work around codesign PID parsing for digit-leading app name in @electron/notarize
codesign interprets a bare '5chan.app' argument as process ID 5, so
@electron/notarize 2.5.0's pre-upload signature check fails with 'No such
process'. Backport the './' basename prefix from electron/notarize#245 as
a yarn patch until forge depends on notarize >= 3.x.
* docs(agent-playbooks): record codesign PID parsing surprise for digit-leading app name
* fix(ci): keep mac signing env consistent with certificate availability
2026-06-13 15:26:31 +07:00
Tommaso Casaburi
3484963a59
chore: add advisory code quality review workflow
2026-06-13 15:13:25 +07:00
Tommaso Casaburi
824c36e518
Merge branch 'master' of github.com:bitsocialnet/5chan
2026-06-13 13:43:34 +07:00
Tommaso Casaburi and GitHub
6cb28b0e4f
fix(youtube thumbnails): prefer best available image
...
Prefer the best available YouTube thumbnail, fall back cleanly when high-resolution images are unavailable, and keep the React Doctor PR gate scoped to newly introduced issues.
2026-06-13 13:39:22 +07:00
Tommaso Casaburi
43b160b1fc
fix: resolve open Dependabot security alerts
...
Bump vulnerable transitive dependencies via yarn resolutions and direct dependency updates.
2026-06-13 12:55:31 +07:00
Tommaso Casaburi
c3d72e53cc
chore: upgrade react-doctor to 0.5.2
2026-06-13 12:42:11 +07:00