docs(launcher): CMSC Charlotte task breakdown + doc date fix
- TODO__Agents: expand CMSC Charlotte launcher task into done/remaining sections; enumerate Svelte-side migration items (default templates, composable open flow, error fallback, slide control config, kill list config, Launcher config UI editor, end-to-end Mac test gate) - PROJECT__AE_Events_Launcher_Native_integration: update Last Updated to 2026-05-11
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
# Aether Events Launcher: Native Electron Integration
|
# Aether Events Launcher: Native Electron Integration
|
||||||
|
|
||||||
> **Status:** Operational / Phase 5 Implementation
|
> **Status:** Operational / Phase 5 Implementation
|
||||||
> **Last Updated:** 2026-03-11
|
> **Last Updated:** 2026-05-11
|
||||||
> **Primary Platform:** macOS (Darwin)
|
> **Primary Platform:** macOS (Darwin)
|
||||||
> **Fallback Platform:** Linux / Windows
|
> **Fallback Platform:** Linux / Windows
|
||||||
|
|
||||||
|
|||||||
@@ -6,10 +6,44 @@
|
|||||||
## 🔴 CMSC Charlotte — May 27 (Presentation Management)
|
## 🔴 CMSC Charlotte — May 27 (Presentation Management)
|
||||||
**Drive down:** May 25 | **Setup:** May 26 morning | **Show:** May 27+
|
**Drive down:** May 25 | **Setup:** May 26 morning | **Show:** May 27+
|
||||||
|
|
||||||
- [ ] **[Electron/Launcher] Clean up presentation file launch scripts** — BGH show revealed
|
**[Electron/Launcher] Clean up presentation file launch scripts** — BGH show revealed issues
|
||||||
issues with the scripts used to open/launch presentation files through the Electron Launcher.
|
with the scripts used to open/launch presentation files. Architecture decision: move launch
|
||||||
Audit and improve the launch/open flow (script reliability, error handling, file path resolution).
|
logic to the Svelte side so it can be changed without an Electron rebuild. Electron becomes a
|
||||||
Must be tested and ready before May 26 setup day.
|
thin OS primitive layer; all business logic lives in Svelte and device config.
|
||||||
|
|
||||||
|
**Electron groundwork (2026-05-11) — DONE:**
|
||||||
|
- [x] `run_osascript` hardened — temp `.scpt` file approach; handles multi-line + special chars
|
||||||
|
- [x] `native:copy-from-cache-to-temp` primitive added — copy to tmp, caller decides launch
|
||||||
|
- [x] `native:launch-from-cache` accepts optional `script_template` — AppleScript or `shell:` prefix; falls back to hardcoded defaults when null
|
||||||
|
- [x] `get_launch_script_template()` in `launcher_file_cont.svelte` reads from device config then event config; passes result to `launch_from_cache`
|
||||||
|
|
||||||
|
**Svelte-side migration — remaining before May 26:**
|
||||||
|
- [ ] **[Launcher] Built-in Svelte default templates** — move the "known good" pptx/key/pdf
|
||||||
|
AppleScript strings out of Electron hardcode and into a Svelte constants file (e.g.
|
||||||
|
`ae_launcher__default_launch_scripts.ts`). Priority: `get_launch_script_template()` already
|
||||||
|
checks device config and event config; add a 3rd fallback to these Svelte defaults before
|
||||||
|
returning `null`. This means Electron's hardcoded defaults become the last-resort only.
|
||||||
|
- [ ] **[Launcher] Composable open flow** — refactor `handle_open_file()` to use
|
||||||
|
`copy_from_cache_to_temp` + `run_osascript` / `run_cmd` directly instead of the all-in-one
|
||||||
|
`launch_from_cache`. Finer error handling at each step (verify copy succeeded before
|
||||||
|
attempting script; surface failure clearly in UI).
|
||||||
|
- [ ] **[Launcher] Error handling + fallback** — when the launch script fails, offer fallback
|
||||||
|
to `open_local_file_v2` (OS default handler) rather than silently failing. Show error detail
|
||||||
|
in the launcher file row so staff can diagnose onsite.
|
||||||
|
- [ ] **[Launcher] Slide control scripts in Svelte config** — `control_presentation` AppleScript
|
||||||
|
one-liners are hardcoded in Electron. Move to device config (`data_json.control_scripts`) or
|
||||||
|
Svelte constants so slide nav behavior (e.g. keystroke vs. AppleScript command) can be adjusted
|
||||||
|
without a rebuild. Wire through `run_osascript` directly.
|
||||||
|
- [ ] **[Launcher] `kill_processes` target list in config** — process names to kill on cleanup
|
||||||
|
are currently caller-hardcoded. Allow device config to specify the process name list per
|
||||||
|
file type / app, so adding a new presentation app doesn't require a Svelte code change.
|
||||||
|
- [ ] **[Launcher] Launcher config UI — launch_scripts editor** — add a Technical Mode panel
|
||||||
|
in the Launcher config (tabbed settings) to view and edit `launch_scripts` entries on the
|
||||||
|
active device record. PATCH via `event_device` V3 CRUD. Lets OSIT staff tune scripts onsite
|
||||||
|
without needing phpMyAdmin or a code deploy.
|
||||||
|
- [ ] **[Launcher] End-to-end test on macOS** — test pptx and key opens on a real podium Mac
|
||||||
|
before May 26 setup day. Verify: file copies to tmp correctly, script fires, app opens in
|
||||||
|
slideshow mode, error fallback works.
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user