Files

1.2 KiB

BeeOS Phase 4 Notes

Completed in this phase

Phase 4 adds the first BeeOS Runtime API.

New core file:

beeos/core/runtime_api.py

New runtime concepts

  • BeeRuntime
  • BeeRuntimeContext
  • BeeDisplayAPI
  • BeeStorageAPI
  • RuntimeResult

Runtime API currently supports

  • app lifecycle simulation
  • BeeApp(ctx).on_open()
  • BeeApp(ctx).on_draw(display)
  • main(ctx) fallback
  • script execution through main(ctx) or run(ctx)
  • display command capture
  • notifications through ctx.notify(title, body)
  • package-local JSON storage
  • permission checks through ctx.has_permission(name)
  • simple system APIs:
    • battery percent
    • uptime
    • RAM usage
    • PSRAM usage
    • storage usage
    • CPU usage

Not real sandboxing yet

This is a simulator runtime. It is not a security sandbox.

Actual watch firmware will need much stricter execution boundaries, especially for filesystem access, networking, Bluetooth, sensors, background services, plugin hooks, and permissions.

Next possible phase

Phase 5 should probably add:

  • app lifecycle sessions
  • touch event delivery to apps
  • package settings pages
  • watch face runtime
  • plugin hook registry
  • basic permission approval screens