Commit Graph
100 Commits
Author SHA1 Message Date
Jage9 71a190866d Use notify sound for reboot system messages 2026-02-27 19:19:44 -05:00
Jage9 d522ba10a8 Protect user role from deletion and use action sound asset 2026-02-27 19:15:13 -05:00
Jage9 7d25cc226f Add item transfer own/any role permissions 2026-02-27 05:19:15 -05:00
Jage9 8ba0398d25 Add reboot and version slash commands with permission guard 2026-02-27 04:40:36 -05:00
Jage9 464d39f78b Add server chat slash commands for me and uptime 2026-02-27 04:33:54 -05:00
Jage9 10e7a01e73 Fix help duplicates and role selection focus timing 2026-02-27 04:23:30 -05:00
Jage9 f07bdb0296 Add changelog entry for roles/permissions system 2026-02-27 04:18:48 -05:00
Jage9 c450806aed Suppress redundant set-role success announcement 2026-02-27 04:16:37 -05:00
Jage9 84db109e63 Polish role admin speech flow and permission tooltips 2026-02-27 04:12:37 -05:00
Jage9 d114e0d532 Refine admin set-role flow and remove extra status chatter 2026-02-27 03:59:02 -05:00
Jage9 7c0ddf99d1 Remove retroactive editor permission fallback 2026-02-27 03:54:02 -05:00
Jage9 181ab22a80 Refine admin role menus and editor default pickup permission 2026-02-27 03:52:02 -05:00
Jage9 aba319751b Move admin menu wiring server-side and filter ban/unban lists 2026-02-27 03:49:28 -05:00
Jage9 0edc9b9a3f Remove admin shortcut from user help 2026-02-27 03:40:36 -05:00
Jage9 52584197e9 Implement server-authoritative roles and Shift+Z admin flows 2026-02-27 03:37:20 -05:00
Jage9 6ab3325263 Include coordinates in self drop confirmation message 2026-02-27 02:41:11 -05:00
Jage9 1508e7e371 Broadcast pickup and drop system chat messages to other users 2026-02-27 02:39:25 -05:00
Jage9 31ecb8eb5c Store item actor ids with display-name snapshots and nickname carrier display 2026-02-27 02:34:58 -05:00
Jage9 4fcd006856 Track item updatedBy as readonly metadata and inspect field 2026-02-27 02:27:16 -05:00
Jage9 ac88195c6e Add tooltips for readonly item system properties 2026-02-27 02:22:59 -05:00
Jage9 1440273661 Add Feb 27 changelog entry for talking clock alarm feature 2026-02-27 02:18:47 -05:00
Jage9 cc54842334 Allow clock alarm toggle updates without revalidating unchanged time 2026-02-27 02:15:15 -05:00
Jage9 d74937b2dc Set default clock alarm time and gate alarm time field by visibility 2026-02-27 02:11:08 -05:00
Jage9 78be266fcf Add clock alarm scheduling with formatted alarm time options 2026-02-27 02:06:51 -05:00
Jage9 7eb94b3f12 Align one-shot spatial smoothing with stream ramp profile 2026-02-27 01:52:29 -05:00
Jage9 385b430382 Restore target-based spatial ramp for radio and emit streams 2026-02-27 01:47:57 -05:00
Jage9 73fe9e1228 Unify spatial node update logic for one-shots and streams 2026-02-27 01:37:33 -05:00
Jage9 0fbd4f3615 Remove client fallback for readonly item property display 2026-02-27 01:34:32 -05:00
Jage9 4840aa454b Move readonly item property display values to server 2026-02-27 01:32:25 -05:00
Jage9 ad50fc9afb Fix one-shot use-sound spatial panning updates 2026-02-27 01:26:10 -05:00
Jage9 73e0a7b637 Reduce client item property formatting to metadata-driven rules 2026-02-27 01:18:54 -05:00
Jage9 4dbe928dc2 Make boolean item property display/edit metadata-driven 2026-02-27 01:17:07 -05:00
Jage9 76a54e48be Render top-of-hour clock toggle as on/off in property UI 2026-02-27 01:13:44 -05:00
Jage9 3b414b1f89 Apply clock announcement spatial range from server 2026-02-27 01:12:24 -05:00
Jage9 47a7aa0a83 Apply item-specific spatial range to use sounds 2026-02-27 01:10:32 -05:00
Jage9 4ed52649f1 Add spoken spatial clock announcements with top-of-hour mode 2026-02-27 01:05:23 -05:00
Jage9 2e532f5471 Simplify peer track replacement after negotiation sequencing fix 2026-02-25 02:49:49 -05:00
Jage9 97ed7b4b61 Defer peer negotiation until post-media setup and queue early signals 2026-02-25 02:40:33 -05:00
Jage9 4bef1eddb8 Force renegotiation when attaching to null audio sender 2026-02-25 02:25:45 -05:00
Jage9 b41e903fca Fix outbound audio track attach for pre-media peers 2026-02-25 02:20:09 -05:00
Jage9 7b36014cea Route remote teleport completion through shared spatial one-shot path 2026-02-25 02:07:04 -05:00
Jage9 561801e97c Fix remote voice negotiation and teleport cue timing 2026-02-25 02:01:37 -05:00
Jage9 fad78e12af Harden auth failure handling and registration logging 2026-02-25 01:42:24 -05:00
Jage9 6fe07cae3f Fix teleport sync packets to respect movement budget 2026-02-25 01:33:36 -05:00
Jage9 550870e530 Added changelog entries 2026-02-25 01:22:05 -05:00
Jage9 194c698406 Added changelog entries 2026-02-25 01:20:31 -05:00
Jage9 6143798b83 Make radio secondary now-playing message self-only 2026-02-25 01:14:17 -05:00
Jage9 08d74b8e2c Add Shift+Enter secondary item action with radio handler 2026-02-25 01:11:47 -05:00
Jage9 6fa588c684 Order radio station metadata fields in inspect view 2026-02-25 00:59:19 -05:00
Jage9 9eaa330c3e Add radio now-playing metadata polling and readonly props 2026-02-25 00:52:28 -05:00
Jage9 1745915ec3 Use stable default auth DB path for local server runs 2026-02-25 00:42:28 -05:00
Jage9 a2b1218357 Mark deploy up.sh as executable 2026-02-25 00:37:54 -05:00
Jage9 f41e03a671 Make deploy defaults host-agnostic and support Enter auth submit 2026-02-25 00:31:23 -05:00
Jage9 a63e7027cd Switch auth password hashing to Argon2id 2026-02-25 00:22:08 -05:00
Jage9 e7d3b41782 Harden auth flow against timing and event-loop blocking 2026-02-25 00:17:05 -05:00
Jage9 54232acd87 Add February 24 changelog entries 2026-02-25 00:01:49 -05:00
Jage9 610e3015c5 Auth-before-mic connect flow and generic deploy docs 2026-02-25 00:01:11 -05:00
Jage9 d1afca806a Move host-specific deploy notes to local/bestmidi 2026-02-24 23:54:54 -05:00
Jage9 5c63e087b3 Remove auth/connect error beeps 2026-02-24 23:52:26 -05:00
Jage9 946f7c44c7 Update welcome copy and mute invalid-login error beep 2026-02-24 23:49:07 -05:00
Jage9 f1a7cbf468 Route preconnect status to header and silence nickname ack cue 2026-02-24 23:44:09 -05:00
Jage9 ba31fee5ce Use single auth mode toggle button 2026-02-24 23:38:47 -05:00
Jage9 45db5762a1 Move nickname/position state server-side per account 2026-02-24 23:37:10 -05:00
Jage9 e8b8cac27d Hide auth mode toggles when session is active 2026-02-24 23:28:16 -05:00
Jage9 d0c8434eb9 Show session summary when pre-auth token exists 2026-02-24 23:25:22 -05:00
Jage9 853bca824a Tighten auth defaults and register form behavior 2026-02-24 23:12:01 -05:00
Jage9 4fbae1dcc2 Use local server .env via wrapper startup script 2026-02-24 23:02:53 -05:00
Jage9 2fec127b1c Provision systemd auth env file during install 2026-02-24 22:57:05 -05:00
Jage9 45d527a8a6 Rename settings button to Audio setup 2026-02-24 22:45:15 -05:00
Jage9 7d2a031115 Adjust auth toggle labels and hide logout when unauthenticated 2026-02-24 22:43:56 -05:00
Jage9 06d5e3fbf3 Show server auth policy limits in client auth UI 2026-02-24 22:35:29 -05:00
Jage9 f26e1f3c27 Improve admin bootstrap prompts and validation flow 2026-02-24 22:31:18 -05:00
Jage9 b424a0ae34 Fix auth landing flow and up.sh service fallback 2026-02-24 22:21:38 -05:00
Jage9 d7be6d999a Update docs to use default local run commands 2026-02-24 22:14:23 -05:00
Jage9 404384416e Make install_server handle one-time admin bootstrap prompt 2026-02-24 22:11:10 -05:00
Jage9 bf3bc90f2a Add account auth with websocket login/register and sessions 2026-02-24 22:03:10 -05:00
Jage9 1938f239e6 Set new radio default emit range to 10 2026-02-24 21:24:31 -05:00
Jage9 503ba63a24 Restore saved player position on reconnect 2026-02-24 21:08:48 -05:00
Jage9 6eb83d6df4 Keep emit sounds playing while items are carried 2026-02-24 21:05:37 -05:00
Jage9 4ea5419d30 Fix position desync causing item interaction failures 2026-02-24 21:01:21 -05:00
Jage9 297f1c0c1a Broadcast teleport landing sound to nearby users 2026-02-24 20:55:02 -05:00
Jage9 a1132ea22a Fix movement pacing defaults and remove config knobs 2026-02-24 20:43:24 -05:00
Jage9 4577ceb1ad Stop tracking plans directory and ignore local plan files 2026-02-24 20:36:10 -05:00
Jage9 686d065bf9 Fix carried use-sound origin and centralize sound normalization 2026-02-24 20:34:48 -05:00
Jage9 fa65d7bd0d Enforce cumulative per-tick movement budget on server 2026-02-24 20:15:24 -05:00
Jage9 3003aaf742 Cap stream retries with cooldown reset for radio and emit 2026-02-24 20:07:22 -05:00
Jage9 1609a297a2 Normalize Dropbox URLs and add throttled stream restart retries 2026-02-24 20:04:23 -05:00
Jage9 c38778451d Remove client fallback item metadata inference 2026-02-24 19:57:05 -05:00
Jage9 fe07fa3e8f Use structured piano status packets instead of message text matching 2026-02-24 19:56:44 -05:00
Jage9 7488ac9f67 Make spawn and movement acceptance server-authoritative 2026-02-24 19:52:38 -05:00
Jage9 a588148039 Drive piano digit shortcuts from server instrument metadata 2026-02-24 19:44:01 -05:00
Jage9 60c0ced7b7 Server-first label metadata and architecture guidance 2026-02-24 19:06:08 -05:00
Jage9 59db0a0dda docs(plan): add explicit 1-6 completion status 2026-02-24 19:01:33 -05:00
Jage9 3c52d35983 refactor: remove per-type module.py and simplify plugin wiring 2026-02-24 18:56:42 -05:00
Jage9 fcb5e85b13 refactor: complete server-first item schema wiring and plugin contract checks 2026-02-24 18:48:08 -05:00
Jage9 7776676e2d docs(plan): expand refinement items 1-4 with implementation details 2026-02-24 15:36:22 -05:00
Jage9 3718449156 refactor: split item type packages into definition/validator/actions 2026-02-24 03:08:30 -05:00
Jage9 7903bab131 refactor: collapse item modules into plugins and remove no-op client item behaviors 2026-02-24 03:00:30 -05:00
Jage9 d4dbb807da server: make state-save debounce timing configurable 2026-02-24 02:50:47 -05:00
Jage9 f7e29ec968 client: require server item schema and drive property UI from metadata 2026-02-24 02:49:17 -05:00