Simo
0c8e62357f
fix: preserve runtime furni assets during deploy
CI / check (push) Successful in 46s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m33s
2026-08-02 17:32:32 +02:00
Simo
bac2f653af
feat: add manual recent furni resync action
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 44s
2026-08-02 14:59:31 +02:00
Simo
88ac5ac1ba
feat: add recent furni resync client contract
2026-08-02 14:56:12 +02:00
Simo
cf563f3550
docs: plan manual recent furni resync
2026-08-02 14:54:19 +02:00
Simo
6b6fc5dc64
docs: design manual recent furni resync
2026-08-02 14:51:46 +02:00
Simo
ab43f5d63c
fix: use JSON FurnitureData from gamedata
CI / check (push) Successful in 23s
CI / release (push) Skipped
CI / deploy (push) Successful in 42s
2026-08-02 14:42:23 +02:00
Simo
c78f8812ad
fix: use configured furni source and catalog assets
2026-08-02 14:22:05 +02:00
Simo
aed70db81f
docs: plan configurable furni import source
2026-08-02 14:09:28 +02:00
Simo
1126a70d55
docs: design configurable furni import source
2026-08-02 14:04:58 +02:00
Simo
86cd43def9
fix: mirror manual furni uploads to live assets
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 46s
2026-08-02 13:24:15 +02:00
Simo
01570874a8
fix: map furni imports to production gamedata
2026-08-02 13:16:51 +02:00
Simo
a81af2d71a
docs: plan production furni asset fix
2026-08-02 13:13:58 +02:00
Simo
44b4b3b45c
docs: design production furni asset mapping
2026-08-02 13:12:10 +02:00
Simo
b3245a18ea
fix: bootstrap admin CSRF tokens
CI / check (push) Successful in 23s
CI / release (push) Skipped
CI / deploy (push) Successful in 41s
2026-08-02 11:46:43 +02:00
Simo
a57c73055f
fix: retry login across deploy cutovers
CI / check (push) Successful in 23s
CI / release (push) Skipped
CI / deploy (push) Successful in 41s
2026-08-02 11:31:35 +02:00
Simo
bfc951cfd9
fix: minimize deploy cutover downtime
CI / check (push) Successful in 22s
CI / release (push) Skipped
CI / deploy (push) Successful in 40s
2026-08-02 11:25:03 +02:00
Simo
828fda63e7
fix: keep app online during deploy preparation
CI / check (push) Successful in 23s
CI / release (push) Skipped
CI / deploy (push) Successful in 44s
2026-08-02 11:19:53 +02:00
Simo
1f4aadb3d7
chore: remove Sentry integration
CI / check (push) Successful in 21s
CI / release (push) Skipped
CI / deploy (push) Successful in 53s
2026-08-01 22:12:31 +02:00
Simo
d173dd3194
fix: add automatic deployment skew protection
CI / check (push) Successful in 37s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m28s
2026-08-01 21:52:28 +02:00
Simo and Cursor
d39738eb0d
chore(test): exclude UI client modules from coverage floors
...
CI / check (push) Failing after 9s
CI / release (push) Skipped
CI / deploy (push) Skipped
Admin *-client.tsx files dilute function coverage without unit tests.
Co-authored-by: Cursor <[email protected] >
2026-08-01 16:00:45 +02:00
Simo and Cursor
d69e3f5da5
fix(test): mock db in admin-alerts suite for push hook
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:58:17 +02:00
Simo and Cursor
811cf5719b
fix(admin): cast clothing-set hard-fail mock return type
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:57:14 +02:00
Simo and Cursor
2194aa1239
fix(admin): type-fix clothing-set hard-fail test mock
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:56:53 +02:00
Simo and Cursor
16191cef14
fix(admin): harden clothing/pets/effects/clone imports
...
Align grids on data.items, only treat SSE done as success, hard-fail
clothing sets when libs fail, and add Cancel via AbortController.
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:56:38 +02:00
Simo and Cursor
9c4949186c
feat(admin): server-safe StatusCard and Import hub polish
...
CI / check (push) Failing after 8s
CI / release (push) Skipped
CI / deploy (push) Skipped
Split OnlineUsersWidget from StatusCard, decouple ad delete button, sync badge import to ExternalTexts+WebsiteBadges, add Import section hub with cancelable SSE jobs and upload SQL option.
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:48:21 +02:00
Simo and Cursor
db957d7fb1
fix(ops): narrow DB_BACKUP_DIR for jobs-worker typecheck
...
CI / check (push) Failing after 9s
CI / release (push) Skipped
CI / deploy (push) Skipped
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:27:01 +02:00
Simo and Cursor
725e1cb338
feat(ops): health-fail alerts, optional DB backup, admin UX polish
...
Wire jobs-worker health probes to Discord/email alerts with cooldown, optional mysqldump, rate-limit /api/health, mark-all-read alerts, ConfirmDialog on destructive admin actions, and raise coverage floors.
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:25:47 +02:00
Simo and Cursor
3bd712e744
fix(admin): polish tickets, photos purge note, drizzle contracts
...
CI / check (push) Failing after 9s
CI / release (push) Skipped
CI / deploy (push) Skipped
Add queue banners/counts on ticket detail pages, document local-only photo purge, and harden Drizzle Kit smoke contracts after Prisma removal.
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:07:54 +02:00
Simo and Cursor
ba82789166
chore(db): finish Prisma cutover to Drizzle Kit tooling
...
CI / check (push) Failing after 9s
CI / release (push) Skipped
CI / deploy (push) Skipped
Move CMS SQL to drizzle/migrations, drop prisma packages/schema, wire drizzle-kit scripts, and regenerate schema names from src/db/schema.ts.
Co-authored-by: Cursor <[email protected] >
2026-08-01 15:02:21 +02:00
Simo and Cursor
d8199ea1e4
feat(admin): unified ticket inbox over CMS and help-center queues
...
CI / check (push) Successful in 22s
CI / release (push) Skipped
CI / deploy (push) Successful in 57s
Merged read-model inbox at /admin/tickets and /mod/tickets with type badges and deep links; CMS-only lists moved to /desk. No DB schema merge.
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:49:19 +02:00
Simo and Cursor
24d0b735c1
chore(db): remove Prisma facade and drop prisma:generate from CI (2)
...
CI / check (push) Successful in 22s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m0s
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:39:20 +02:00
Simo and Cursor
422567272c
chore(db): remove Prisma facade and drop prisma:generate from CI
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:38:42 +02:00
Simo and Cursor
ca72966a37
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle (6)
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m2s
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:43 +02:00
Simo and Cursor
30b54e99e7
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle (5)
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:39 +02:00
Simo and Cursor
9aa4f331bf
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle (4)
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:36 +02:00
Simo and Cursor
580972c0a0
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle (3)
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:32 +02:00
Simo and Cursor
2cd0863cb8
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle (2)
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:28 +02:00
Simo and Cursor
7c39aef5d9
refactor(db): migrate app pages and APIs from Prisma facade to Drizzle
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 14:15:12 +02:00
Simo and Cursor
53b350057d
fix(test): mock @/lib/db in send-currency tests for pre-push
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m2s
Co-authored-by: Cursor <[email protected] >
2026-08-01 13:30:16 +02:00
Simo and Cursor
65b2fbee6a
refactor(db): finish Drizzle migration for remaining actions and services
...
Co-authored-by: Cursor <[email protected] >
2026-08-01 13:27:59 +02:00
Simo and Cursor
22234fe102
fix(test): type drizzle mock callbacks for tsc
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m4s
Co-authored-by: Cursor <[email protected] >
2026-08-01 13:18:10 +02:00
Simo and Cursor
096f55b394
test: align remaining action tests with Drizzle mocks
...
EOF
Co-authored-by: Cursor <[email protected] >
2026-08-01 13:17:35 +02:00
Simo and Cursor
ed9c23c702
refactor(db): migrate staff and app actions from Prisma facade to Drizzle
...
Co-authored-by: Cursor <[email protected] >
2026-07-31 21:35:05 +02:00
Simo and Cursor
9854719cfd
feat(admin): drizzle trade-lock + RCON sync and photo local purge
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m2s
Co-authored-by: Cursor <[email protected] >
2026-07-31 21:14:03 +02:00
Simo and Cursor
67656a9aad
fix(ci): migrate on tag release and wire drizzle schema generate
...
CI / check (push) Successful in 23s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <[email protected] >
2026-07-31 21:03:54 +02:00
Simo and Cursor
20b85381fe
fix(db): accumulate many-includes and nest relations in prisma facade
...
CI / check (push) Successful in 26s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m12s
Co-authored-by: Cursor <[email protected] >
2026-07-31 20:57:52 +02:00
Simo and Cursor
0224b34f15
feat(admin): configurable sidebar menu order and visibility
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m7s
Co-authored-by: Cursor <[email protected] >
2026-07-30 21:45:53 +02:00
Simo and Cursor
1127807aaa
chore(test): raise coverage floors to 6/4/5/6
...
CI / check (push) Successful in 24s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m1s
Co-authored-by: Cursor <[email protected] >
2026-07-30 21:36:30 +02:00
Simo and Cursor
3ac5d6f4f6
chore(ops): strip redundant force-dynamic and probe Redis in ops health
...
CI / check (push) Successful in 25s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m8s
Co-authored-by: Cursor <[email protected] >
2026-07-30 21:33:40 +02:00
Simo and Cursor
3e584aadaf
ci: unify check and production deploy into one workflow
...
CI / check (push) Successful in 25s
CI / release (push) Skipped
CI / deploy (push) Successful in 1m8s
Co-authored-by: Cursor <[email protected] >
2026-07-30 20:58:40 +02:00
Simo and Cursor
bfbc02c75d
fix(ci): remove duplicate deploy job that raced production Deploy
...
CI / check (push) Successful in 21s
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 58s
Co-authored-by: Cursor <[email protected] >
2026-07-30 20:50:05 +02:00
Simo and Cursor
98613af875
feat(admin): items_base browser and AdminPageShell on core pages
...
CI / check (push) Successful in 21s
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 59s
CI / deploy (push) Failing after 9s
Co-authored-by: Cursor <[email protected] >
2026-07-30 20:41:31 +02:00
Simo and Cursor
3ad3f9512c
feat(admin): ban appeals, photos polish, economy adjust, staff smoke
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m17s
CI / check (push) Successful in 25s
CI / deploy (push) Failing after 11s
Co-authored-by: Cursor <[email protected] >
2026-07-30 20:23:03 +02:00
Simo and Cursor
58fae1f90f
feat(admin): analytics redis cache, shared ops health, ticket queue clarity
...
CI / check (push) Successful in 29s
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m25s
CI / deploy (push) Failing after 10s
Co-authored-by: Cursor <[email protected] >
2026-07-30 19:57:00 +02:00
Simo and Cursor
ed5b9a6f7c
fix(test): align media path mocks and deploy contract with main
...
CI / check (push) Successful in 23s
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m22s
CI / deploy (push) Failing after 11s
Use path.join in admin-media tests for Windows path.sep checks, and drop the deploy-job pnpm test expectation after it moved to CI.
Co-authored-by: Cursor <[email protected] >
2026-07-30 19:41:45 +02:00
Simo and Cursor
6eab5e5343
feat(admin): ACL repair, mod users, ticket clarity, ops online hub
...
Add Repair nav grants on permissions, /mod/users without email/IP, shared ticket queue banners, and shared online roster on CommandoCentrum.
Co-authored-by: Cursor <[email protected] >
2026-07-30 19:37:01 +02:00
Simo and Cursor
c433e5a52f
fix(deploy): clear EADDRINUSE orphans and update deploy contract tests
...
CI / check (push) Successful in 23s
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m13s
Co-authored-by: Cursor <[email protected] >
2026-07-30 18:41:26 +02:00
Simo and Cursor
540bce911f
fix(deploy): free PORT before PM2 start to clear EADDRINUSE orphans
...
Co-authored-by: Cursor <[email protected] >
2026-07-30 18:40:42 +02:00
Simo and Cursor
749dc237f1
fix(deploy): export PORT from .env before PM2 reload so health check matches
...
CI / check (push) Successful in 26s
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 2m6s
Co-authored-by: Cursor <[email protected] >
2026-07-30 18:33:38 +02:00
Simo and Cursor
738d7b8223
chore: retrigger deploy after isomorphic-dompurify v3
...
Co-authored-by: Cursor <[email protected] >
2026-07-28 21:04:37 +02:00
Simo and Cursor
ab63de000b
fix(ci): clone bare repo and fetch PR branch tip
...
Co-authored-by: Cursor <[email protected] >
2026-07-28 20:55:00 +02:00
Simo and Cursor
3532972357
fix(ci): checkout PR SHA via bare-repo worktree
...
CI / check (pull_request) Failing after 11s
Co-authored-by: Cursor <[email protected] >
2026-07-28 20:53:21 +02:00
Simo and Cursor
e644362d09
chore(deps): update dependency isomorphic-dompurify to v3
...
CI / check (pull_request) Failing after 10s
Co-authored-by: Cursor <[email protected] >
2026-07-28 20:51:46 +02:00
Simo and Cursor
b6b8625246
feat(mod): help-center tickets queue with reduced PII
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m35s
Co-authored-by: Cursor <[email protected] >
2026-07-28 20:26:57 +02:00
Simo and Cursor
01126207dc
fix(admin): live online widget, ticket queue clarity, i18n+contract coverage
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m27s
Co-authored-by: Cursor <[email protected] >
2026-07-28 20:22:50 +02:00
Simo and Cursor
255c09b9fd
fix(admin): restore sidebar categories via ACL grant repair
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m49s
Co-authored-by: Cursor <[email protected] >
2026-07-22 21:47:23 +02:00
Simo and Cursor
ce6e8235cc
fix(admin): housekeeping TS returns + clearer permissions UX
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m50s
Co-authored-by: Cursor <[email protected] >
2026-07-22 21:39:01 +02:00
Simo and Cursor
75cace41ea
feat(mod): tickets+team tabs; retire HK writes for live ACL
...
Deploy / release (push) Skipped
Deploy / deploy (push) Failing after 30s
Co-authored-by: Cursor <[email protected] >
2026-07-22 21:35:35 +02:00
Simo and Cursor
084cca6ea4
feat(mod): lite /mod panel + clarify ACL vs housekeeping legacy
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m31s
Co-authored-by: Cursor <[email protected] >
2026-07-22 21:29:32 +02:00
Simo and Cursor
a384c9a8bb
feat(admin): guilds console + user sanctions timeline
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m44s
Co-authored-by: Cursor <[email protected] >
2026-07-22 21:19:16 +02:00
Simo and Cursor
025af147cd
feat(admin): marketplace console + analytics degraded banners
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m40s
Co-authored-by: Cursor <[email protected] >
2026-07-22 19:06:54 +02:00
Simo and Cursor
f150aea8b9
feat(admin): P1 — clearer tickets labels, pagination, min_staff_rank, analytics errors
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m37s
Co-authored-by: Cursor <[email protected] >
2026-07-22 19:04:45 +02:00
Simo and Cursor
75cdfdebe4
fix(admin): P0 integrity — permanent bans, ACL sidebar, rank guards
...
Deploy / release (push) Skipped
Deploy / deploy (push) Successful in 1m36s
Co-authored-by: Cursor <[email protected] >
2026-07-22 19:01:59 +02:00
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
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
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
Simo
57c3fe601a
Merge pull request 'fix(admin): chat/command logs crash on ignored Prisma models' ( #13 ) from fix/admin-chat-command-logs into main
...
Local Build and Deploy / deploy (push) Successful in 59s
Reviewed-on: #13
2026-07-18 22:25:52 +02:00
Simo and Cursor
3dcd100c9f
Fix admin trade logs: wrong Prisma model and missing relations.
...
Load room_trade_log via SQL with user joins; status is always completed (no column in DB).
Co-authored-by: Cursor <[email protected] >
2026-07-18 22:25:38 +02:00
Simo and Cursor
afeabdad1b
Fix admin chat/command logs crashing on missing Prisma models.
...
chatlogs_room and commandlogs are @@ignore (no client delegates); load them via raw SQL with user joins instead of fetchAdminList(chatLog/commandLog).
Co-authored-by: Cursor <[email protected] >
2026-07-18 22:24:10 +02:00
Simo
ef0d673cfe
Merge pull request 'feat(admin): collapsible sidebar nav groups' ( #12 ) from feat/admin-nav-collapse into main
...
Local Build and Deploy / deploy (push) Successful in 1m7s
Reviewed-on: #12
2026-07-18 22:15:50 +02:00
Simo and Cursor
518ed14a83
Add collapsible admin sidebar nav groups with persistence.
...
Category headers toggle open/closed; state is stored in localStorage and the active route group stays expanded.
Co-authored-by: Cursor <[email protected] >
2026-07-18 22:15:33 +02:00
Simo
4628511bae
Merge pull request 'feat(admin): feature-first nav + soft light mode' ( #11 ) from feat/admin-feature-nav into main
...
Local Build and Deploy / deploy (push) Successful in 1m7s
Reviewed-on: #11
2026-07-18 22:07:29 +02:00
Simo and Cursor
dd806d2527
Reorganize admin nav by feature and soften light mode.
...
Sidebar lists one entry per feature; keep hub tabs only for sibling views (events, tickets, ranks/permissions, moderation, radio, analytics, devops). Soft cool-gray light canvas/surface replaces harsh white.
Co-authored-by: Cursor <[email protected] >
2026-07-18 22:06:41 +02:00
Simo
022fbfa223
Merge pull request 'feat(i18n): observability - analytics + log tables (+ events/polls detail)' ( #10 ) from feat/observability-i18n into main
...
Local Build and Deploy / deploy (push) Successful in 59s
Reviewed-on: #10
2026-07-18 21:52:36 +02:00
Simo
9a4976f588
Merge branch 'main' into feat/observability-i18n
2026-07-18 21:52:24 +02:00
Simo and Cursor
bcbdca841b
i18n observability hub: analytics pages and log tables.
...
Translate analytics overview/activity/economy plus peak-hours/revenue charts, and audit/chat/commands/trades DataTables (en/nl/it). Includes prior events/polls detail i18n.
Co-authored-by: Cursor <[email protected] >
2026-07-18 21:51:55 +02:00