openhands
3e1597fd62
fix: hardcode GITEA_API/GITEA_REPO (gitea.* vars produced 500 on release create)
2026-07-20 19:18:09 +02:00
openhands
cbd87d490b
ci: trigger pack rebuild (release diagnostics)
2026-07-20 19:14:14 +02:00
openhands
997b74129e
fix: harden release step (validate vars, per-curl http codes, diagnostics) to debug exit 3
2026-07-20 19:14:09 +02:00
openhands
614d351a7c
ci: trigger pack rebuild (emulator subdir)
2026-07-20 19:10:07 +02:00
openhands
3fcd1e1018
fix: build emulator from Emulator/ subdir (pom.xml lives there, not repo root)
2026-07-20 19:10:03 +02:00
openhands
eda03c7f96
ci: trigger pack rebuild (clone retries)
2026-07-20 19:07:07 +02:00
openhands
c4a0c607bf
fix: retry all repo clones + fail loudly on missing pom/package.json (emulator clone was silently empty)
2026-07-20 19:07:03 +02:00
openhands
acdbcdf36e
ci: trigger pack rebuild (render before nitro)
2026-07-20 19:02:56 +02:00
openhands
2af0fc3447
fix: run renderer build before Nitro-V3 so vite.config finds the SDK
2026-07-20 19:02:52 +02:00
openhands
e2a2b7162d
ci: trigger pack rebuild with renderer path fix
2026-07-20 18:58:40 +02:00
openhands
cc4b7da756
fix: clone CMS from local bare repo in pack workflow (avoids runner HTTPS auth failure)
2026-07-20 18:55:11 +02:00
openhands
134bb97410
fix: clone renderer to Nitro_Render_V3 so Nitro-V3 vite build finds the SDK
2026-07-20 18:50:39 +02:00
openhands
682babb1c0
perf: cache per-component builds in pack workflow (only rebuild changed repos; sparse catalogus clone)
2026-07-20 18:45:24 +02:00
openhands
8b5999970b
feat: pack auto-rebuilds on any upstream change (CMS/catalogus/nitro/render/emulator) via 15min cron poll
2026-07-20 18:42:02 +02:00
openhands
87d72a1aef
feat: add site-pack workflow (builds CMS+catalogus+nitro+render+emulator into pack-YYYYMMDD-HHMM release)
2026-07-20 18:33:00 +02:00
openhands
222fa1a9db
chore: harden update-Nitrov3.sh (git retry, offline maven, parallel build failure detection, real emulator health port check)
2026-07-20 18:21:47 +02:00
openhands
7e0519a04c
Revert "test: trigger deploy webhook"
...
This reverts commit 6525512a93 .
2026-07-20 17:50:10 +02:00
openhands
6525512a93
test: trigger deploy webhook
2026-07-20 17:48:29 +02:00
openhands
5e8a13a84f
fix: resolve all biomaly lint errors and warnings across CMS
...
- Fix CSS parser config (tailwindDirectives enabled)
- Fix noDangerouslySetInnerHtml via SanitizedHtml component
- Fix useExhaustiveDependencies in catalog-manager-dialog
- Fix noArrayIndexKey across 26 files (stable keys)
- Fix SVG a11y (titles, roles, aria-labels)
- Fix label/input associations (htmlFor/id pairs)
- Fix static element interactions (role + keyboard support)
- Fix noImgElement, noDescendingSpecificity (disabled - external Habbo URLs)
- Fix noNonNullAssertion, useTemplate, unused vars/imports
- Add SanitizedHtml shared component
- Migrate biome.json to 2.5.4 schema
2026-07-20 17:41:53 +02:00
openhands
dd66a5ba2e
fix: use TOKEN from env with fallback to secret
2026-07-20 16:03:13 +02:00
openhands
7eb3ba1ce8
feat: add create-release.sh for manual release creation
2026-07-20 15:56:45 +02:00
openhands
0c0540cf59
fix: yaml syntax in deploy workflow
2026-07-20 15:52:40 +02:00
openhands
0913e9d529
fix: merge release into deploy workflow for Gitea compatibility
2026-07-20 15:50:03 +02:00
openhands
02df513b18
debug: extensive logging in release workflow
2026-07-20 15:42:46 +02:00
openhands
323e2cd9d3
fix: generate changelog from bare repo before clone, use jq
...
Bare repo ensures all tags and full history are available.
Changelog saved before clone to avoid filesystem isolation issues.
2026-07-20 15:38:42 +02:00
openhands
cb683b7322
chore: remove test workflow, clean up test tags
2026-07-20 15:36:55 +02:00
openhands
c959487605
test: add tag trigger test workflow
2026-07-20 15:35:09 +02:00
openhands
26da114e0e
fix: use curl+jq instead of Python for release creation
...
Eliminates potential Python/heredoc issues in Gitea Actions runner.
Full clone guarantees git history is available for changelog.
2026-07-20 15:29:54 +02:00
openhands
8badcd9c92
fix: full clone instead of shallow for proper changelog
...
Shallow clone (--depth 1) prevented git log from seeing full history.
Local bare repo clone is instant, so full clone adds no network delay.
2026-07-20 15:27:57 +02:00
openhands
25a8d6ab22
debug: add extensive logging to release workflow
...
Writes debug output to /tmp/release-debug.log for post-mortem analysis.
2026-07-20 15:23:14 +02:00
openhands
57ef6289ff
fix: generate changelog via Python subprocess for reliability
...
Previous approaches using temp files or env vars failed in Gitea runner.
Python now runs git commands directly via subprocess, reads stdout,
and builds the JSON payload — no intermediate files or shell escaping.
2026-07-20 15:21:12 +02:00
openhands
80bf3bb0d5
fix: use local checkout for changelog generation
...
Bare git repo has no HEAD; git log without --all showed nothing.
Now uses /var/www/atom-nexst (full checkout with proper HEAD).
Also adds debug output and handles first-release edge case.
2026-07-20 15:16:19 +02:00
openhands
15ed8ffbf0
fix: generate release changelog from full local repo
...
Shallow clone (depth 1) only has one commit, so git log was empty.
Now generates changelog from the bare repo before cloning, and uses
Python to build the JSON payload for proper multiline escaping.
2026-07-20 15:11:59 +02:00
openhands
aea9d83865
refactor: rewrite updater to v8.0 — faster, stabler, more features
...
Faster:
- Parallel Maven builds (-T 1C, skip tests)
- yarn install with --prefer-offline
- Renderer + client installs run in parallel via parallel_run()
- Skip building if no upstream changes
- Dev mode (--only=dev) skips all builds, just syncs configs
Stabler:
- Flock-based lockfile prevents concurrent runs
- Preflight check function with fatal error handling
- Config backup before overwriting (rollback on crash)
- JSON config validation after syncing
- Disk space warning at 50% threshold
- Better Maven error logging (last 20 lines)
- Redis flush after config sync (immediate effect)
- Automatic cleanup of old config backups (keep 10)
New features:
- Dev mode (menu option 19) — skip builds, configs + restart only
- Git stash viewer (menu option 20 / stash command)
- Emulator journal viewer (service menu option 8)
- Docker system prune (clean menu option 6)
- Maven artifact cleanup (clean menu option 7)
- DB processlist viewer (database menu option 7)
- Git ahead/behind indicators in status dashboard
- Program renamed to SMaRT v8.0.0
2026-07-20 15:10:17 +02:00
openhands
df604bf432
fix: copy .env into temp clone for Prisma build
2026-07-20 15:06:25 +02:00
openhands
73a36d503a
fix: combine release workflow into single run block
...
Each Gitea Actions step is a separate shell session; git context did not
persist between steps. All steps are now in one run block.
2026-07-20 15:03:11 +02:00
openhands
9b8a0e5075
ci: add Gitea release workflow on tag push
...
Creates an automated Gitea release with changelog when a tag (v*) is pushed.
Requires GITEA_TOKEN secret in Gitea with repository write access.
2026-07-20 14:59:51 +02:00
openhands
c8ccbe1f42
perf: add Prisma query caching, ISR for news pages, and aggressive SW caching
...
- Introduce redis-backed Prisma query cache (prisma-cache.ts) with per-model TTL
- Replace force-dynamic with revalidate=60 + generateStaticParams on news/[slug]
- Wrap article query with Redis cache (60s TTL)
- Upgrade service worker to v2 with dedicated API cache and stale-while-revalidate
for static assets
2026-07-20 14:54:55 +02:00
openhands
d5e3bc7875
refactor: mark dead exports with TODO, deduplicate field sanitization, fix import placement
2026-07-20 14:47:05 +02:00
openhands
2beba07ba5
feat: enable React Compiler, optimizePackageImports for lucide-react, add loading states for (site) and client routes
2026-07-20 14:25:12 +02:00
openhands
ccd4994028
feat: enable React Compiler, add Redis caching for API routes, update README with requirements and install guide
2026-07-20 14:14:49 +02:00
openhands
f53d25e0a5
feat: add view transitions, smooth scroll, bundle analyzer, SSE radio stream, and AnimatePresence animations
2026-07-20 14:06:43 +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
...
Reviewed-on: remco/EpicNext-Cms#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
...
Reviewed-on: remco/EpicNext-Cms#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
...
Reviewed-on: remco/EpicNext-Cms#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
...
Reviewed-on: remco/EpicNext-Cms#10
2026-07-18 21:52:36 +02:00