hobokenchicken
13e3aec2d5
feat(web): add automated build version tracking and update notification banner
2026-07-27 09:51:15 -04:00
hobokenchicken
83c6badc20
fix(web): prevent date parsing sort drop to top of history for real-time messages
2026-07-27 09:46:42 -04:00
hobokenchicken
a54a67e41b
fix(web): persistent WS connection, auto-refetch on ready, and direct selector binding with scroll fix
2026-07-27 09:09:27 -04:00
hobokenchicken
86717a2867
fix(web): normalize channel IDs to lowercase across stores and WS
2026-07-27 09:05:23 -04:00
hobokenchicken
4a416427e9
fix(web): robust date parsing and merge strategy in message store
2026-07-27 09:04:49 -04:00
hobokenchicken
8261555026
fix(web): use keyed Fragment in ChatArea message list
2026-07-27 09:04:35 -04:00
hobokenchicken
3cde62bdc6
fix(web): normalize conversation IDs to lowercase and bind DMChat messages selector
2026-07-27 09:01:53 -04:00
hobokenchicken
065f036807
fix(web): navigate to newly created DM in NewConversationModal
Release Desktop Apps / build-linux (push) Failing after 11m33s
Release Desktop Apps / build-windows (push) Failing after 11m37s
Release Desktop Apps / release (push) Has been skipped
2026-07-27 08:50:14 -04:00
hobokenchicken
f53cd49803
fix(web): robust date parsing and merge strategy in conversation store
2026-07-27 08:49:57 -04:00
hobokenchicken
4e48815b91
fix(web): use keyed Fragment in DMChat message mapping
2026-07-27 08:49:41 -04:00
hobokenchicken
d9b3162f1c
fix(web): move hasMore selector below id declaration to avoid TDZ crash in DMChat
2026-07-22 08:36:12 -04:00
hobokenchicken
6384588122
chore: bump to 0.2.10 (versionCode 2010)
2026-07-21 10:09:20 -04:00
hobokenchicken
978e94da90
fix(android): bump safe-top to 2rem, enlarge toolbar icons, fix login spacing
...
- --safe-top: 1.5rem → 2rem for extra status bar clearance
- Formatting toolbar: w-3→w-4, p-1→p-1.5 for better touch targets
- Login form: increased vertical spacing between buttons, text-xs on passkey
2026-07-21 09:58:02 -04:00
hobokenchicken
34c18c13ae
fix(android): increase login form button spacing, shrink passkey text
...
- forgot password link: mt-3 → mt-4
- passkey button: mt-3 → mt-4, added text-xs to prevent overflow
- create account: mt-4 → mt-5
2026-07-21 09:45:40 -04:00
hobokenchicken
cca6ea0e37
fix: stop infinite scroll feedback when no more messages
...
Scroll handler now checks !hasMore to avoid calling fetchOlderMessages
when all messages are loaded. Previously the handler would fire on every
scroll event (since scrollTop stayed < 100), creating a .then() callback
loop that adjusted scroll position repeatedly, causing 'stuck' scrolling.
2026-07-21 09:05:39 -04:00
hobokenchicken
738b9b17ff
fix: add unsafe-inline to Tauri script-src CSP
Release Desktop Apps / build-linux (push) Successful in 4m50s
Release Desktop Apps / build-windows (push) Successful in 16m59s
Release Desktop Apps / release (push) Successful in 11s
2026-07-20 13:42:21 -04:00
hobokenchicken
57aec2c6b3
sec: hash tokens in DB, set Tauri CSP, escape quotes in XSS guard
...
- Session and email verification/reset tokens stored as SHA-256 hash in DB
(raw token stays client-side in cookie/email link)
- Tauri CSP set: default-src 'self'; script-src 'self'; style-src 'self' 'unsafe-inline';
img-src 'self' data: https:; connect-src 'self' wss: https:
- escapeHtml now handles double and single quotes to prevent attribute-based XSS
2026-07-20 13:13:09 -04:00
hobokenchicken
6f6d1329c6
fix(linux): guard WebSocket.prototype assignment — read-only on WebKitGTK
2026-07-20 12:26:14 -04:00
hobokenchicken
156ee4197c
fix: remove env() from CSS, set safe-area via JS only
2026-07-20 11:50:07 -04:00
hobokenchicken
a5882f32c4
chore: bump to v0.2.9 (version code 2009)
2026-07-20 11:37:26 -04:00
hobokenchicken
516168d290
fix(android): replace env() with JS-set CSS vars for safe areas
2026-07-20 11:30:28 -04:00
hobokenchicken
c2be53e53f
fix: append messages locally on send, don't rely solely on WS
2026-07-20 11:07:57 -04:00
hobokenchicken
4cc6c6f1ed
chore: bump to v0.2.8 (version code 2008)
2026-07-20 10:25:47 -04:00
hobokenchicken
82f329808e
fix(android): replace default icons with dumpster fire logo
2026-07-20 10:12:38 -04:00
hobokenchicken
0ab08a9374
chore: bump to v0.2.7 (version code 2007)
2026-07-20 10:01:32 -04:00
hobokenchicken
974eca4bb2
fix(android): edge-to-edge alignment, keyboard handling, toolbar spacing
2026-07-20 09:49:38 -04:00
hobokenchicken
aa0af5db4f
feat: account deletion in settings + privacy policy with deletion link
2026-07-17 15:47:29 -04:00
hobokenchicken
e79505d8b4
fix(tauri): disable WebKitGTK sandbox inside AppImage on Linux and bump version to 0.2.6
2026-07-16 15:28:36 -04:00
hobokenchicken
b0d820cd92
fix(tauri): set WEBKIT_DISABLE_DMABUF_RENDERER=1 on Linux to prevent white screen
2026-07-16 15:03:10 -04:00
hobokenchicken
bda4c9d73d
fix: handle 401 gracefully on web; add Bearer token auth for Tauri
...
- fetchMe() no longer surfaces 401 as a user-facing error (it just
means 'no session', not a failure)
- API client auto-clears auth state on 401 mid-session so the user
gets redirected to login instead of seeing 'ERR: Request failed: 401'
- Session middleware now accepts Authorization: Bearer <token> header
as fallback when no cookie is present (for Tauri/native clients)
- Login, register, and WebAuthn endpoints expose X-Session-Token header
so non-browser clients can capture the token
2026-07-16 14:46:17 -04:00
hobokenchicken
d4fff01e35
fix(desktop): implement bearer token auth for windows webview2
2026-07-16 14:30:28 -04:00
hobokenchicken
3bc8f9721e
added firebase json
2026-07-16 14:07:29 -04:00
hobokenchicken
a66b777712
fix(tauri): unregister and prevent service worker to fix 404 cache routing issues
2026-07-16 13:58:06 -04:00
hobokenchicken
19386c2b33
fix(tauri): redirect relative fetch and websocket urls to production backend for desktop app
2026-07-16 13:27:33 -04:00
hobokenchicken
300aeb219f
fix: message area scroll — add min-h-0 to flex column
2026-07-16 09:23:08 -04:00
hobokenchicken
0f19b9089d
feat(ui): Discord-style roles/channel perms + IDE themes
...
Split-pane role editor with tri-state channel overrides (roles/members).
CSS-var themes (Gruvbox default + 9 IDE palettes) in top bar and settings.
2026-07-15 21:46:07 -04:00
hobokenchicken
3c7b8278ce
fix: client perms, @everyone/@channel, docs, unit tests
...
- usePermissions ORs current user roles + @everyone only (not all server roles)
- cache myRolesByServer; load on active server; refresh after self role edit
- gate/notify @everyone and @channel; plain @username push; special mention UI
- refresh FEATURE_PARITY (DMs exist; drop stale critical gaps)
- README production deploy notes dumpster.service
- unit tests for permission bits and broadcast mention tokens
2026-07-15 20:56:53 -04:00
hobokenchicken
a277c78e2c
feat(ui): BOTS section in member list
...
Members API appends server bots (is_bot). Sidebar groups ONLINE / OFFLINE / BOTS.
Bots get green BOT badge, no kick menu or profile. Mentions and DMs skip bots.
2026-07-15 20:37:05 -04:00
hobokenchicken
038ac1fe8e
fix(bots): intercept /confess so original never hits chat
...
Root cause of "not anonymous":
1. Confess deleted via raw SQL with no MESSAGE_DELETE broadcast
2. Frontend extractIds only accepted message_id, but deletes send id
so live clients never removed deleted messages without refresh
Fix:
- Intercept /confess at message create: never store or broadcast the
original; post only the anonymous bot message
- Accept both id and message_id on MESSAGE_DELETE in the WS store
- Include both fields on delete broadcasts
2026-07-15 20:28:47 -04:00
hobokenchicken
f6322fb779
feat(bots): anonConfess + shitpostLeaderboard built-in bots
...
- ConfessBot: polls for /confess messages, deletes original, reposts anonymous
- LeaderboardBot: daily top-10 message count recap from DB
- BotFunc extended with *sql.DB param for DB-reading bots
- Both types registered in runner + BotManager UI
2026-07-15 19:46:09 -04:00
hobokenchicken
49ea7c4e3b
fix(pwa): replace hamburger overlays with proper mobile bottom nav
...
- MobileBottomNav: [SERVERS] [CHAT] [MEMBERS] tab bar, always visible
- Servers tab opens sidebar overlay, chat/members switch views
- Removed hamburger + members toggle from mobile top bar
- Top bar compact on mobile (no redundant buttons)
- safe-area-inset-bottom on nav, clean inset on frame
- Desktop status bar hidden on mobile, preserved on desktop
- Dead MobileNav/MobileDrawer left in place (unused, can prune later)
2026-07-15 17:21:10 -04:00
hobokenchicken
3fd0b0e9e2
fix(bots): channel picker dropdown instead of ID text input
...
Server selector + channel dropdown for built-in bot config.
No more asking users to paste UUIDs.
2026-07-15 15:02:39 -04:00
hobokenchicken
5127144709
feat(bots): built-in bot runner + steamfree from UI
...
- BotRunner: server-side goroutine manager for built-in bot types
- steamfree bot embedded in server (polls Steam API, posts free games)
- bot_type + config JSONB columns on bots table
- Create/Update/Delete handlers manage runner lifecycle
- GET /bots/types returns registered bot types
- BotManager: type selector dropdown + config fields on create
- No SSH needed: create a 'Steam Free Games' bot from /bots/manage
2026-07-15 14:14:02 -04:00
hobokenchicken
7c70082f37
feat(bots): bot framework polish + store
...
- /ws/bot endpoint: bot token auth via query param, SHA-256 lookup
- Bot WS actions: SEND_MESSAGE + DELETE_MESSAGE handled in gateway
- Bot messages: bot_id on messages table, bot badge in chat (green + BOT tag)
- Bot store: /bots lists all bots with server count + add-to-server
- Bot manager moved to /bots/manage
- Fix: command routes were double-nested under /bots/{botID}/commands
- Fix: fetchServerCommands route corrected to /bots/servers/...
2026-07-15 12:45:44 -04:00
hobokenchicken
2674c254a1
fix: register forum/thread routes at top level + notification dots in ServerBar
...
Moved thread and forum-tag routes from nested /servers/{sid}/channels/ to
top-level /channels/{id}/... to match frontend API calls. Forum posts were
getting SPA HTML fallback instead of JSON.
Added orange notification dots to DM and server buttons in ServerBar.
2026-07-10 09:45:37 -04:00
hobokenchicken
64df016f3f
feat(ui): character counter in message compose box
2026-07-09 16:00:28 -04:00
hobokenchicken
2f55521187
fix(ui): textarea auto-expands instead of scrolling
2026-07-09 15:55:00 -04:00
hobokenchicken
b23e9ffc6f
feat(calendar): weekly list view with grid toggle, defaults to list
2026-07-09 15:13:40 -04:00
hobokenchicken
fb9e3e39a8
fix(calendar): use r.Route subrouter to avoid chi path ambiguity with /channels/events/{eventID}
2026-07-09 15:02:40 -04:00
hobokenchicken
c55ab2a8bb
fix(voice): add reconnect/disconnect event handlers + connection quality logging
2026-07-09 13:15:21 -04:00