ai.md + TASKS: record the LlamaCasty/ytLive naming split and the shipped-exe mismatch
Creator correction 2026-09-26: the product is LlamaCasty; ytLive is only the internal repo/assembly/namespace name. Records the exact split (incl. the capital-L ytLlive app data dir), the Distribution.md LlamaCasty.exe vs real ytLive.exe mismatch, and the three pack URIs that hardcode the assembly name -- MainWindow.xaml:14 is the window icon, so a naive AssemblyName rename ships a broken taskbar icon. Notes the app-data rename is breaking and that no code compares its own assembly name.
This commit is contained in:
@@ -87,6 +87,13 @@
|
||||
is unconditional, so it ships in Release) — it hands the test assembly name to anyone
|
||||
decompiling and advertises that `internal` members are externally reachable, which
|
||||
conflicts with the obfuscation posture in `Distribution.md` §1.2.
|
||||
3. **Decide the shipped exe name.** `Distribution.md` promises the customer
|
||||
`LlamaCasty.exe`; `<AssemblyName>ytLive</AssemblyName>` actually publishes `ytLive.exe`.
|
||||
Renaming the AssemblyName is 4 lines (1 csproj + 3 pack URIs that spell the assembly
|
||||
name — `MainWindow.xaml:14` is the **window icon**, so missing it ships a broken
|
||||
taskbar/Alt-Tab icon). Namespaces stay `ytLive.*`; the 230-file re-brand is NOT
|
||||
wanted. Do **NOT** touch the `%APPDATA%\ytLlive` folder — breaking (orphans users'
|
||||
layout DB). See the naming table in `ai.md`.
|
||||
Do **NOT** add `-p:PublishTrimmed=true`: WPF is not trim-compatible and it fails at
|
||||
runtime (BAML/XAML resource resolution), not at build time. `PublishReadyToRun` is safe.
|
||||
- **TASK 12** — queued future
|
||||
|
||||
@@ -80,6 +80,29 @@ the internals. Treat the two as separate: external/user-facing language says "ll
|
||||
code/assembly/repo names stay `ytLive`. If a full internal re-brand is ever done, this note
|
||||
and the UI locator (Premium/wordmark) are the checklists; it is NOT a goal pre-1.0.
|
||||
|
||||
**Say "LlamaCasty" when reporting to the creator** — never "ytLive" in prose. `ytLive` is
|
||||
the internal repo/assembly/namespace name only. Exact current split:
|
||||
|
||||
| surface | name | note |
|
||||
|---|---|---|
|
||||
| product / site / marketing | **LlamaCasty** | llamacasty.com, llamachile.tube |
|
||||
| repo dir, csproj, `RootNamespace` | `ytLive` | 230 files: `namespace ytLive.*` |
|
||||
| `AssemblyName` → shipped exe | `ytLive` | `ytLive.exe` |
|
||||
| app data dir | `%APPDATA%\ytLlive` | **capital L**, drifts from `ytLive` |
|
||||
| `Distribution.md` tells customers | `LlamaCasty.exe` | ⚠ **mismatch vs the real `ytLive.exe`** |
|
||||
|
||||
**Consequences, so nobody re-hunts them:**
|
||||
- Renaming `<AssemblyName>` to `LlamaCasty` is the cheap win (the customer-visible exe
|
||||
name matches what `Distribution.md` already promises; namespaces can stay `ytLive.*`).
|
||||
It is **4 lines**, but it hard-breaks three pack URIs that spell the assembly name:
|
||||
`MainWindow.xaml:14` (the **window icon** — taskbar/Alt-Tab), `OverlayHost.xaml:96`,
|
||||
`RenameRecordingDialog.xaml:5`. Miss those and you ship a broken icon. Queued in TASKS.md
|
||||
under the shipping task, not done.
|
||||
- Renaming the `%APPDATA%\ytLlive` folder is **breaking** — it would orphan every existing
|
||||
user's layout DB, `Assets` and settings. Never do it casually; needs a migration.
|
||||
- No code compares its own assembly name (no `GetExecutingAssembly().GetName().Name` checks),
|
||||
so the assembly name is otherwise free to change.
|
||||
|
||||
### AI transparency
|
||||
|
||||
This project is built through AI-assisted pair-programming. All code is generated
|
||||
|
||||
Reference in New Issue
Block a user