Commit Graph
21 Commits
Author SHA1 Message Date
openhands dee843106f feat: add auto furniture interaction detection
- New auto-interaction.ts: detects canSit/canLay/canStand from classname/name keywords
- Maps keywords to interaction types (bench, chair, bed, table, etc.)
- Returns clickLimit and interactionModesCount for proper click/interaction limits
- Nitro editor: added auto-detect button with preview of detected settings
- furni-import.ts: auto-sets interaction_modes_count during import
- upload-import.ts: auto-detects for direct insert and SQL migrations
- clone-import.ts: auto-detects when cloning from other hotels
2026-08-18 22:33:40 +02:00
openhands 578a6e943a fix: preserve real exit code in EXIT trap and fold parallel job state 2026-08-11 20:30:30 +02:00
openhands ade0f286d3 fix: preserve real exit code in EXIT trap and fold parallel job state
The EXIT trap ended with '[ $ec -ne 0 ] && cleanup_notify_failure ...',
so its last command returned 1 on success and the notify status on
failure — every run exited with code 1 regardless of the actual result.
Rewrite cleanup_on_exit to return the real status.

Parallel jobs run in subshells, so HAD_UPDATES/UPDATED_REPOS/NITRO_BUILT
set inside update_renderer/update_client were lost. Persist per-job
deltas to a temp state dir and re-source them in parallel_wait so the
summary reflects renderer/client updates. Also keep the per-repo yarn
cache between updates (only removed on explicit Clean) and drop the
dead clean_node_modules helper.
2026-08-11 19:49:00 +02:00
openhands 9e453666e5 fix: use jsonc-parser in config merge and make updater reliably restart all services
merge-config.cjs loaded json5 (not installed, and unable to parse JSONC
comments), so sync_configs crashed mid-update and do_restart never ran —
leaving the emulator running the old JAR.

- merge-config.cjs: switch from json5 to jsonc-parser (already a
  dependency) to parse .jsonc configs including comments
- update-Nitrov3.sh: always run renderer/client parallel builds instead
  of gating them on the emulator's update status
- update-Nitrov3.sh: isolate each repo's yarn cache (--cache-folder) so
  parallel installs can't corrupt a shared cache and silently drop
  vite/pixi.js; replace invalid --no-cache flag with per-repo cache reset
- update-Nitrov3.sh: fix misleading [DRY-RUN] label on real updates
2026-08-11 19:06:29 +02:00
openhands ebd2ff131c inport fix 2026-08-08 21:39:52 +02:00
openhands 6f53ca514d fix: use --no-cache in parallel yarn install fallback
Parallel yarn install commands (renderer + client) corrupt the shared
yarn cache, causing vite/pixi.js to be missing despite yarn install
succeeding. Add --no-cache to the final fallback install to force a
clean fetch from the registry.
2026-08-05 18:44:05 +02:00
openhands cf89681576 fix: root-safe www-data chown after builds and config sync 2026-08-03 19:12:22 +02:00
openhands 613b7502e1 fix: repair updater and migrate configs to JSONC only
- fix emulator git path (repo root vs Maven submodule) and SQL/backup dirs
- auto-detect branch; track real parallel job exit status
- verify vite presence and clean+full install when node_modules is incomplete
- fix health-check label handling and skip jsonc/example files in JSON scan
- stop hardcoding the Nitro client path in chown
- drop JSON5: sync config URLs to .jsonc, remove legacy .json5 files
- bump to v8.0.2
2026-08-03 17:43:19 +02:00
openhands 474de0717b feat: add flyaway repair to updater 2026-07-30 19:49:54 +02:00
openhands 17847545dd Improvements: remove dead config, fix ESM, add URL validation, unify types, add missing logging
- Remove .prettierrc (dead config, Biome replaces Prettier)
- Rename lighthouserc.json to lighthouserc.cjs with module.exports for ESM compat
- Add logger.warn to empty catch blocks in auth, register, site-settings, prisma-cache, redis, security, rate-limit
- Unify ActionResult type: action-helper.ts uses 'ok' consistent with safe-action-shared.ts
- Add noUnusedLocals + noUnusedParameters to tsconfig + fix 25 pre-existing unused vars
- Replace barrel export src/types/index.ts with direct @/types/common imports
- Make trustHost conditional (development only) in auth.ts
- Add pre-flight URL validation to update-Nitrov3.sh to catch image.library.url misconfigurations
- Improve NITRO_IMAGE_LIBRARY_URL content validation in pre-flight & post-compute checks
2026-07-26 20:28:11 +02:00
openhands 4e2c4ccf07 Add sudo chown -R www-data:www-data /var/www/Nitro-V3/ at end of update to fix permissions after build 2026-07-25 21:21:45 +02:00
openhands c9144dc293 fix: improve health check reliability in do_restart
- Use nc -z directly instead of fragile bash /dev/tcp
- Fall through to ss and /dev/tcp as additional fallbacks
- Check emulator health immediately before first sleep
- Show emulator journal log on health check failure
- Increment ERRORS count on failure so exit code reflects it
2026-07-21 14:12:49 +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 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 f53d25e0a5 feat: add view transitions, smooth scroll, bundle analyzer, SSE radio stream, and AnimatePresence animations 2026-07-20 14:06:43 +02:00
openhands 9255788b06 Rename Habbo jar pattern to Polaris and bump JVM heap to 4G 2026-07-10 19:12:46 +02:00
openhands b058a3827b Fix theme consistency, i18n completeness, CSS variable naming, and hardcoded strings 2026-07-09 18:13:22 +02:00
openhands 0abd490f67 Improve update-Nitrov3.sh parallelism, UX, and compatibility
- Run renderer and client builds in parallel (background + wait) for
  faster updates
- Cache detected git branches in interactive menu (avoid re-running
  git branch -r on every redraw); re-cache after switching branches
- Add health check after emulator restart (poll until active or retries
  exhausted)
- Add service_active() helper with systemd/service/pgrep fallback for
  non-systemd systems; replace all systemctl is-active calls
- Add 30s read timeout (-t 30) on all interactive prompts to prevent
  hanging on non-terminal stdin
- Add set -E for ERR trap inheritance in subshells
2026-07-08 19:27:27 +02:00
openhands f9b0ec78d1 Improve update-Nitrov3.sh security, reliability, and portability
- Security: replace eval-based load_branches with nameref+readarray,
  remove export MYSQL_PWD (leaks to child processes), fix URL-decode
  via Python's urllib.parse, fix JSON injection in notify via json.dumps,
  add package.json guard before sudo rm -rf
- Portability: replace seq (external) with repeat() built-in, add
  mysql/mysqldump fallback alongside mariadb, add format_size() fallback
  when numfmt is unavailable, remove -maxdepth from list_sorted helper
- Robustness: add set -o pipefail, fix spinner zombie (remove disown),
  wrap git_update/detect_best_branch in subshells to prevent cd leaks,
  capture full mvn/yarn build output to log instead of tail, add -r to
  xargs basename, make ssl-verify-server-cert configurable via .env
- UX: add --dry-run/-n flag for preview without changes
2026-07-08 19:12:28 +02:00
openhands 9a7b40eae6 Add favicon assets, update Nitro v3 script, and update logs 2026-07-07 16:04:25 +02:00
openhands e5b0649bf1 fix: remove debug console.log from root layout 2026-07-03 15:51:33 +02:00