Commit Graph

84 Commits

Author SHA1 Message Date
486c194f08 update Android to use shared mosis-core library
- Remove duplicate sandbox sources from Android (now in core/)
- Update Android CMakeLists to link mosis-core
- Add OpenSSL crypto support for Android
- Update all includes to use core library headers
- Remove duplicate logger from Android (use core logger)
- Add openssl to Android vcpkg dependencies

This removes ~5,500 lines of duplicate code by sharing
the sandbox implementation between desktop and Android.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 12:14:34 +01:00
33841516f1 extract shared mosis-core library from sandbox APIs
Create core/ directory with platform-agnostic sandbox components:
- Timer manager, JSON API, Crypto API, Virtual FS
- Lua sandbox, Permission gate, Audit log, Rate limiter
- Platform abstraction interfaces (IAssetInterface, IFilesystemInterface)
- Platform-agnostic logger with Android/Desktop implementations

Update designer to link against mosis-core library instead of
including sandbox sources directly.

This is the foundation for unifying the Android service and
desktop designer to share the same codebase.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 11:57:10 +01:00
f41eda6f62 add simulator mode to desktop designer for testing apps
- Add --simulator flag to launch home screen showing discovered apps
- Create app discovery system to scan test-apps/ directory
- Build simulator home screen with dark phone-like UI
- Add Lua API: simulator.launchApp, simulator.goHome, simulator.getApps
- ESC key returns to home when inside an app
- Apps displayed with icons in grid layout

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 11:16:01 +01:00
02db0d849c add --screenshot-after option and fix test app document access
- Add --screenshot-after CLI option to capture screenshot after playback
- Fix sandbox test app to cache document reference for onclick handlers
- Add getDocument() helper that works with RmlUi Lua proxy objects

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:36:14 +01:00
a583ef64a1 fix action player wait actions to properly delay playback finish
Wait actions now extend the minimum finish time based on their
timestamp + duration, ensuring timers and other async operations
have time to complete before playback ends and screenshot is taken.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:35:44 +01:00
8432bbb986 add sandbox support to desktop designer, fix mouse coordinates and UI issues
- Add DesktopSandbox class that integrates timer, JSON, crypto, and VirtualFS APIs
- Fix mouse coordinate handling: GLFW reports window coordinates, not physical pixels
- Fix font path resolution to search multiple locations for test apps
- Fix screenshot capture timing (capture before buffer swap)
- Fix test app CSS: use border-width instead of border:none, add display:block
- Fix test app Lua: add document nil checks, use HTML entities for symbols
- Update hot_reload to reset sandbox state on reload

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-19 10:22:32 +01:00
d40ea1e537 add generated icon for sandbox test app 2026-01-19 09:17:56 +01:00
d88bddbf75 fix sandbox test app: replace os.date, add goBack, remove missing icon ref 2026-01-19 09:15:30 +01:00
bbf1638f20 update roadmap with completed milestones, trim SANDBOX.md to reference milestone files 2026-01-19 09:07:31 +01:00
010e11cf6b move docs to docs/ folder, merge architecture files, update references 2026-01-19 09:02:11 +01:00
1b34b0e974 update docs with app management and sandbox system documentation 2026-01-18 23:14:56 +01:00
2364d0d327 integrate sandbox manager with app lifecycle (LaunchApp, StopApp, IsAppRunning) 2026-01-18 23:11:24 +01:00
0278acc0fc fix build errors: add missing include, LOG_* macros, stub sandbox integration 2026-01-18 22:55:20 +01:00
60d1a75838 integrate AppManager and UpdateService into kernel with Lua API registration 2026-01-18 22:38:02 +01:00
3ab586956e add app management sources and dependencies to build system 2026-01-18 22:36:14 +01:00
5ea0cdde63 add device-side app management with AppManager, UpdateService and App Store UI (M10) 2026-01-18 22:33:15 +01:00
03556ff1d4 update go.sum with CLI dependencies 2026-01-18 22:25:44 +01:00
9ccdf846f0 remove and ignore test results 2026-01-18 22:18:13 +01:00
8cb3cf769d add documentation site with markdown rendering (M12) 2026-01-18 22:07:35 +01:00
94a573f218 change module path from github.com/omixlab to omixlab.com 2026-01-18 21:55:47 +01:00
a5aa3cc9d7 add telemetry system with analytics and crash reporting (M08) 2026-01-18 21:53:06 +01:00
fbcb5c9543 add app review system with validation pipeline and admin htmx UI 2026-01-18 21:35:43 +01:00
cf9f42b66d add developer CLI tool with Cobra for app workflow 2026-01-18 21:24:50 +01:00
149736108e add local filesystem storage for packages and assets with upload handlers 2026-01-18 21:16:42 +01:00
01a0ac68a4 add htmx web frontend with templates and session auth 2026-01-18 21:11:23 +01:00
1bc112047d add app CRUD and public store API endpoints 2026-01-18 21:05:41 +01:00
8601bb5ba3 add OAuth authentication with JWT tokens and API key support 2026-01-18 21:00:03 +01:00
2eb6292dc2 add mosis-portal Go project with package signing and validation 2026-01-18 20:56:06 +01:00
d76627ebc3 add Developer Portal architecture summary to docs 2026-01-18 20:49:03 +01:00
a76724a3d5 finalize M06-M12 with Go/SQLite/Synology NAS implementation decisions 2026-01-18 20:29:13 +01:00
b86ee54934 update M05 frontend with htmx + Go templates for NAS deployment 2026-01-18 20:18:51 +01:00
366cc94d86 update M04 auth with Go implementation details 2026-01-18 18:53:15 +01:00
416c447ad8 finalize Go + SQLite stack decisions for Synology NAS deployment 2026-01-18 18:52:08 +01:00
30a7146929 add comprehensive app specifications document 2026-01-18 17:31:16 +01:00
5cfee2aa66 add developer portal planning documentation (M01-M12) 2026-01-18 17:20:51 +01:00
9805bdf175 implement Milestone 20: Kernel Integration with LuaSandboxManager (149 tests) 2026-01-18 16:54:02 +01:00
1b163891e0 implement Milestone 19: Security Testing Suite with fuzzer (141 tests pass) 2026-01-18 16:45:09 +01:00
372a293bd0 implement Milestone 18: inter-app MessageBus with intent system 2026-01-18 16:36:08 +01:00
72a06f542b implement Milestone 17: Contacts interface with read/write permissions 2026-01-18 16:29:07 +01:00
00b9ceb467 implement Milestone 16: Bluetooth interface with user consent 2026-01-18 16:21:06 +01:00
4ab5e52259 implement Milestone 15: sensor interface with fingerprinting prevention 2026-01-18 16:14:18 +01:00
779f66b2bb implement Milestone 14: location interface with coarse/fine precision and rate limiting 2026-01-18 16:07:32 +01:00
c2e8b8c212 implement Milestone 13: audio output with volume limits and concurrent sound management 2026-01-18 16:02:31 +01:00
d61b8f0bd8 implement Milestone 12: Microphone interface with permission and user gesture requirements 2026-01-18 15:45:30 +01:00
5eb1113c1a implement Milestone 11: Camera interface with permission and user gesture requirements 2026-01-18 15:38:58 +01:00
0c19247838 implement Milestone 10: WebSocket with connection limits and SSRF prevention 2026-01-18 15:30:13 +01:00
c0baa673b8 implement Milestone 9: Network HTTP with SSRF prevention 2026-01-18 15:24:56 +01:00
a94e0d5d63 implement Milestone 8: SQLite Database with injection prevention 2026-01-18 15:18:47 +01:00
2bb083fd7d add virtual filesystem with path sandboxing and quotas (milestone 7 complete) 2026-01-18 15:04:46 +01:00
be663282d7 add JSON and crypto APIs with sandbox protection (milestone 6 complete) 2026-01-18 14:44:51 +01:00