Simo and Cursor
8d28739ca6
feat(admin): expand/collapse all sidebar groups with scrollable nav
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m6s
Co-authored-by: Cursor <[email protected] >
2026-07-22 18:49:49 +02:00
Simo and Cursor
e00e9ca2dc
refactor: centralize hotel name fallback via FALLBACK_HOTEL_NAME
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m6s
Route all user-facing Atom hotel defaults through resolveHotelName (settings then HOTEL_NAME env then brand constant). Exclude Playwright e2e from tsconfig until deps are installed.
Co-authored-by: Cursor <[email protected] >
2026-07-22 18:45:59 +02:00
openhands
6b2819aa20
Hide all top bars for unauthenticated users
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m54s
2026-07-22 18:40:09 +02:00
openhands
ffd434485e
Hide navigation bar for unauthenticated users
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m56s
2026-07-22 18:39:22 +02:00
openhands
c90b6decc8
Hero buttons: Enter → Register, Nitro → Login
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m38s
2026-07-22 18:31:54 +02:00
openhands
94c02d9ee6
Redesign register + login pages: glass cards, Habbo bg hero panels
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m5s
2026-07-22 18:31:10 +02:00
openhands
0520041d1e
Redesign homepage: cleaner Habbo layout, glass cards, hero with hotel bg, removed clutter
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m59s
2026-07-22 18:28:12 +02:00
openhands
5c1b35de7e
Use Atom as default hotel name fallback on /me page
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m1s
2026-07-22 18:20:18 +02:00
openhands
5e46dc387d
Redirect logged-in users from / to /me
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m55s
2026-07-22 18:14:50 +02:00
openhands
2438f4f7a8
Add Enter hotel button to /me page
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m21s
2026-07-22 18:12:40 +02:00
openhands
fb039b725f
Fix dropdown z-index by using negative z-index on clouds instead of overriding all children
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m58s
2026-07-22 16:12:21 +02:00
openhands
c2de6cab10
Fix dropdowns falling behind site content due to CSS layer priority
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m55s
2026-07-22 14:56:50 +02:00
openhands
1ffd46713a
Redesign login, register, me pages with premium layout and i18n
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m7s
2026-07-22 14:42:01 +02:00
openhands
063ac9ec40
refactor: clean premium design, fix header banner, remove clutter
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m54s
2026-07-22 14:26:36 +02:00
openhands
e2dab9d184
feat: premium polish with animations, glassmorphism, staggered reveals
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m58s
2026-07-22 14:18:24 +02:00
openhands
8fa59d9d19
feat: incorporate design elements from habbo.nl, hubbly.pw, leet.ws
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m47s
2026-07-22 14:12:55 +02:00
openhands
5fe01532ca
feat: add Habbo sky background and pixel-font logo
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m48s
2026-07-22 14:07:33 +02:00
openhands
eb60f1a762
refactor: complete unique redesign of home and register pages
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m56s
2026-07-22 13:58:58 +02:00
openhands
fb0687ec71
feat: redesign home and register pages with professional Habbo-style layout
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m56s
2026-07-22 13:52:23 +02:00
openhands
b0ad3a128e
fix: resolve turbopack NFT warning and disable Sentry telemetry
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m46s
2026-07-21 23:49:23 +02:00
openhands
3608cb50cc
fix: disable Next.js telemetry and enable build cache
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m37s
2026-07-21 23:44:26 +02:00
openhands
6985b3e6ea
fix: add REDIS_URL to .env and .env.example
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m56s
2026-07-21 23:42:49 +02:00
openhands
5d0983fe41
fix: exclude e2e directory from vitest
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m3s
2026-07-21 23:39:42 +02:00
openhands
077bc9afc0
chore: update pnpm-lock.yaml for new dev dependencies
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 34s
2026-07-21 23:38:04 +02:00
openhands
57f85f5453
chore: add professional tooling (husky, lint-staged, playwright, lighthouse, eslint)
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 6s
2026-07-21 23:36:54 +02:00
Simo and Cursor
968ca15c27
feat: jwt cache, redis health, help-ticket admin, and write rate limits
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m33s
Cut Auth.js DB load with cached jwtVersion checks, surface Redis in /api/health and deploy warnings, add admin help-center ticket reply UI, rate-limit API tickets/reactions/referral claims, and revoke PATs on sign-out-everywhere.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:58:48 +02:00
Simo and Cursor
3bb96eb6f3
test: silence expected clone-import rollback warning
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m52s
The rollback case intentionally hits items_base insert failure; mock console.warn so deploy logs stay clean.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:51:22 +02:00
Simo and Cursor
fa40eebeed
fix(deploy): migrate after stop and shrink DB pool
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m52s
Stage migrate hit ER_CON_COUNT_ERROR while live still held the pool. Build in stage with DATABASE_POOL_SIZE=5, run db:migrate only after stopping the service (with retries), and lower the default pool from 40 to 10.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:44:06 +02:00
Simo and Cursor
687e1f9fb0
fix(deploy): stage worktree build and short .next cutover
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 11s
Build install/test/migrate in a detached worktree while the live site keeps serving, then swap .next and node_modules during a brief stop. Drops nuclear rm -rf src and rolls back .next.prev on cutover failure.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:39:45 +02:00
Simo and Cursor
77931db775
fix: cap Prisma pool during next build to stop deploy SSG timeouts
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m28s
Next build workers were each opening up to DATABASE_POOL_SIZE connections and exhausting MySQL (pool active=0), hanging sitemap generation. Cap build pool to 5, fail connect faster, limit SSG concurrency, and make sitemap dynamic.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:28:27 +02:00
Simo and Cursor
803e8f36c1
feat: shop buy, forum replies, tickets, messages, sessions, and UX hardening
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 4m23s
Complete remaining product gaps: credit-based shop purchases, guild thread replies, help ticket detail/reply/close, offline message compose, sign-out-everywhere via JWT version, ads delete confirm, soft-fail feedback, rate limits, loading states, and single auth() in site layout.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:21:02 +02:00
Simo and Cursor
ed7db6e048
feat: public events/polls, friends graph, captcha, SSE hardening, and admin UX
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m55s
Ship product gaps: register/vote pages, friend add/accept/decline/remove, email verify TTL, captcha on login/forgot, soft-fail user actions, SSE abort/shared client, Commando Centrum error toasts, admin delete for events/polls, and IT/NL i18n fills.
Co-authored-by: Cursor <[email protected] >
2026-07-21 21:08:33 +02:00
Simo and Cursor
2ff08e5127
chore: patch deps, CSP style nonces, otplib 13, and PR CI
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m35s
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:46:02 +02:00
openhands
87bda8dbef
feat: add Magic Hotel style index and register pages
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m55s
2026-07-21 20:42:37 +02:00
Simo and Cursor
964c8b5f5a
fix: pin TypeScript 5.9 until Next.js supports TS 7
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m35s
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:39:14 +02:00
Simo and Cursor
d2120987b0
perf: replace bcryptjs with native bcrypt for password hashing
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 58s
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:37:02 +02:00
Simo and Cursor
830d252346
chore: upgrade Zod 4, Vitest 4, and TypeScript 7
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 52s
Bump major tooling stacks and adapt Zod error APIs (issues/flattenError) plus tsconfig paths for TS 7 baseUrl removal.
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:34:29 +02:00
Simo
160c05a511
Merge pull request 'chore: CSP script nonces, deploy health check, dead-code cleanup' ( #14 ) from chore/phase1-csp-deploy-knip into main
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m32s
Reviewed-on: #14
2026-07-21 20:31:05 +02:00
Simo and Cursor
9b47668fe9
chore: CSP script nonces, deploy health check, dead-code cleanup
...
Add per-request CSP nonces (drop script unsafe-inline), post-deploy /api/health gate, bump next-auth to beta.32, and remove unused motion/cache/permission helpers.
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:27:08 +02:00
Simo and Cursor
c46dadeda4
chore: harden deps, env validation, admin errors, and redis warnings
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m39s
Align nodemailer with Auth.js peers, bump patch deps, validate env on deploy builds, add admin error boundary, and warn when Redis is missing in production.
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:19:05 +02:00
Simo and Cursor
c865e6f699
chore: upgrade Next.js to 16.2.11 for July security release
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m27s
Co-authored-by: Cursor <[email protected] >
2026-07-21 20:06:48 +02:00
openhands
827595ef00
fix: mobile responsiveness for all admin pages
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m25s
- DataTable: overflow-x-auto on table wrapper (affects users, rooms, tickets)
- Radio: overflow-x-auto wrappers around all 3 tables (shouts, applications, schedules)
- Catalog items: responsive grids (grid-cols-1 sm:grid-cols-3) in Add/Edit dialogs
- Catalog tabs: TabsList overflow-x-auto for narrow screens
- Import clone: pagination flex-wrap to prevent overlap on small screens
2026-07-21 16:52:58 +02:00
openhands
d189bb5af4
fix: mobile responsive improvements
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m2s
- Audit: responsive summary cards (grid-cols-2 mobile, p-3), responsive empty states
- Repair-icons/sync-all: log area horizontal scroll (overflow-x-auto, whitespace-nowrap)
- Upload furni: tighter mobile padding (p-4 sm:p-5)
- Nitro client: compact toolbar on mobile (smaller buttons, tighter gap, top-2/left-2)
2026-07-21 16:47:02 +02:00
openhands
43dacea672
fix: add auth error detection to sync-all client
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m25s
2026-07-21 15:39:38 +02:00
openhands
e4b6d5db21
fix: detect auth errors in SSE clients
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 2m3s
Audit and repair-icons clients now check the Content-Type before reading the
stream. If the server returns JSON (e.g. CSRF/permission error), the error
message is shown as a toast instead of silently consuming the response as
an empty SSE stream.
2026-07-21 15:37:52 +02:00
openhands
bebd65c056
fix: refactor audit to SSE streaming, improve error handling
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m52s
- Changed from blocking JSON endpoint to SSE streaming (like sync-all/repair-icons)
- Progress updates during each audit phase with item counts
- Proper error handling with typed AuditEvent for every failure path
- AbortController support for the client
- Shows real-time progress for each check section
2026-07-21 15:33:15 +02:00
openhands
19e4e10b1d
feat: add catalog audit page
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m56s
Checks for:
- items_base entries without catalog_items (not purchasable)
- catalog_items referencing non-existent items_base
- Items without .nitro or icon files on disk
- Duplicate classnames
- Items missing from all configured clone sources
2026-07-21 15:24:58 +02:00
openhands
90107c83d5
fix: rewrite repair-icons with proper error handling and progress
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m38s
- Wrap all DB/file operations in try-catch, send error events via SSE
- Report skipped/progress events for items that already have icons
- Add 'started' event with total count so the UI shows real-time progress
- Catch route-level errors and stream them instead of returning JSON
- Use log line content as React key instead of array index
2026-07-21 15:04:43 +02:00
openhands
13cb5f8670
fix: use admin theme CSS variables in upload-furni-client
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m35s
Replace hardcoded border-gray-300 and text-yellow-* classes
with semantic admin theme tokens (border-input, --admin-warning).
2026-07-21 14:56:38 +02:00
openhands
804daeffca
feat: add .nitro upload + sync-all + repair-icons features
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 32s
- Upload .nitro bundles directly with full DB, catalog, and furnidata integration
- Generate SQL migration files on upload (optional)
- Auto-sync missing furniture from all configured clone sources (SSE batch)
- Repair missing icons by extracting from local .nitro or downloading from sources
- All behind ASSETS_IMPORT permission
2026-07-21 14:53:26 +02:00