refactor(launcher): canonicalize default profiles
This commit is contained in:
@@ -41,7 +41,8 @@ The integration is built on a decoupled three-layer communication model to ensur
|
||||
- **Role:** Provides a clean, typed API for Svelte components.
|
||||
- **Responsibilities:**
|
||||
- Mapping `camelCase` UI triggers to `snake_case` IPC calls.
|
||||
- Resolving a Launch Profile to a single `native_template` string before crossing IPC.
|
||||
- Resolving an extension alias to a canonical Launch Profile, then to a single
|
||||
`native_template` string before crossing IPC.
|
||||
|
||||
The reason for this split is simple: Launch Profiles are policy, while Native Templates are
|
||||
executable strings. Keeping that distinction explicit prevents the bridge from mixing config
|
||||
@@ -199,6 +200,11 @@ resolved a template yet, it should stop before IPC and surface a missing-profile
|
||||
This keeps all fallback logic in Svelte, where it can be edited without rebuilding Electron.
|
||||
The native layer should not invent or guess a default launch path.
|
||||
|
||||
The built-in defaults are organized as canonical profile names plus extension aliases. That
|
||||
lets multiple file types share one profile without repeating the same app/script details.
|
||||
URL-based presentations remain a special pseudo-extension handled separately from the cache
|
||||
open flow.
|
||||
|
||||
### Native Template Formats
|
||||
|
||||
| Format | Example |
|
||||
|
||||
Reference in New Issue
Block a user