77 lines
5.5 KiB
Markdown
77 lines
5.5 KiB
Markdown
|
|
# Glossary (v2)
|
||
|
|
|
||
|
|
Extends [`docs/glossary.md`](../docs/glossary.md) with pillar vocabulary.
|
||
|
|
|
||
|
|
## Pillars
|
||
|
|
|
||
|
|
- **Watch** — playback, Player, Home rails, queue, Continue Watching UX.
|
||
|
|
- **Library** — catalog scan, index, grouping, metadata enrichment.
|
||
|
|
- **Download** — torrent acquisition, transmission, custody floor, reaper,
|
||
|
|
`peers_for`, seed TTL, governor prefetch buffer.
|
||
|
|
- **Net** — TVAnarchy **data** synced between installs (editions over
|
||
|
|
`friend_mesh`); trust per part (`friends` vs `network`). Not video bytes.
|
||
|
|
- **Devices** — device registry + install pairing (the product term that replaced
|
||
|
|
"fleet" in UI), storage pools, shared media volume, offline/extension policy.
|
||
|
|
|
||
|
|
**Cross-pillar settings** — theme, Winamp skins, shell chrome
|
||
|
|
([settings.md](./pillars/settings.md)).
|
||
|
|
|
||
|
|
Tagline (press/GTM): **Napster for Netflix** — see [docs/marketing/](./docs/marketing/).
|
||
|
|
|
||
|
|
Pillars: **Watch · Library · Download · Net · Devices**.
|
||
|
|
|
||
|
|
## Additional terms (from 2026-06 doc build-out)
|
||
|
|
|
||
|
|
- **Pillar (lens)**: Organizational product/engineering boundary. See plan.md Appendix C for how separation is achieved while staying DRY (correlation tags + manifest as truth, packages/faces for engines, pattern reuse like TitleLibrary → Net obs, state path segregation, UI surface mapping). Not runtime modules or separate apps.
|
||
|
|
- **Faces pattern**: See packages/README.md + bittorrentdrive.md.
|
||
|
|
- **ContentKey**: Stable non-path identity (ContentID.canonical + optional fingerprint). Used by Library/TitleLibrary, Net observations/editions, Devices placement, Download hints.
|
||
|
|
- **Winamp chrome / .wsz system**: Custom retro skin implementation (real .wsz BMP sprites + TXT parsing into ThemePalette + exact sprite views for transport/LED/spectrum). Hybrid AppKit (NSImage, no interpolation) + SwiftUI (environment, custom buttons/sliders). macOS Player-focused; standard theme + iOS unaffected. Detailed in plan.md Appendix C + pillars/watch-appearance.md.
|
||
|
|
- **Embedded UI (Net)**: No dedicated tab. Lives in Settings sections + Player hooks (bounds, contribute observation). See correlation/ui.md.
|
||
|
|
- **Switching pillars**: Single-shell navigation (RootView NavigationSplitView sidebar enum Section + selection-driven @ViewBuilder detail switch + library subnav). Global cross chrome (queue, theme env, offline, notifications) always available. Controllers per pillar; heavy pollers gated to relevant selection. See plan.md Appendix C + RootView.swift + correlation/ui.md.
|
||
|
|
- **PathGuard**: Reusable input guard (realpath + ext allow + media roots containment after realpath of roots; model on bridge/library.ts resolveStreamId). Implemented + wired for blacktv (sh + TS dispatch in tools); model/pattern for future Swift/MCP/Net surfaces (cf. existing prefix checks in LibraryScanner/MediaPaths and resolveStreamId for bridge streams). See plan.md App C + security inserts.
|
||
|
|
- **Mandatory auth**: No default-open for daemons/bridges/serves/HTTP/MCP surfaces (bearer token or equiv required; fatal if missing post-install). Per v1 review + v2 plan (fleet serve bearer, Phase 7 control-plane, bridge). See plan.md checklist + cross-cutting.
|
||
|
|
|
||
|
|
## Net terms
|
||
|
|
|
||
|
|
- **part** — named dataset type (`intro-markers`, `grouping`, `quality`,
|
||
|
|
`signal`, `peers-hints`).
|
||
|
|
- **edition** — versioned snapshot of a part, distributed as a small torrent.
|
||
|
|
- **observation** — one install's contribution (value + confidence + provenance).
|
||
|
|
- **merge** — local policy producing the subscribed view from observations.
|
||
|
|
- **trust** — `friends` (`f2f_only`) or `network` (k-anon aggregates).
|
||
|
|
|
||
|
|
## Disambiguation
|
||
|
|
|
||
|
|
| Term | Means | Pillar |
|
||
|
|
|------|-------|--------|
|
||
|
|
| torrent **peers** | seeders/leechers for an infohash | Download |
|
||
|
|
| **Net** peers | other TVAnarchy installs | Net |
|
||
|
|
| **friend_mesh** | source kind / transport | Download + Net |
|
||
|
|
| **watchlog** | append-only play events JSONL | Watch write, Download read |
|
||
|
|
| **signal** | k-anon watch aggregates | Net part (not raw watchlog) |
|
||
|
|
| **holdings** | completed copies on install nodes | Download |
|
||
|
|
| **install** | one operator identity + devices (UI term) | Devices |
|
||
|
|
| **fleet** | legacy impl name for install registry | Devices (internal) |
|
||
|
|
| **shared media volume** | logical library across storage + extension tiers | Devices |
|
||
|
|
| **extension tier** | spare disk on laptop expanding canonical storage | Devices |
|
||
|
|
| **extended warmup** | placement to extension while watching; alias not duplicate | Devices + Watch |
|
||
|
|
| **Title Library** | local `contentKey` → episode title dataset we own | Library |
|
||
|
|
| **episode refiner** | M2 MLX parser for cache misses; writes Title Library | Library / recommender |
|
||
|
|
| **BitTorrentDrive** | shared package: internal (Devices) + external (Net) faces | packages/ |
|
||
|
|
| **internal face** | within-install pins, pools, extension tiers | Devices → drive |
|
||
|
|
| **external face** | cross-install edition swarms | Net → drive |
|
||
|
|
|
||
|
|
## Legacy terms (unchanged)
|
||
|
|
|
||
|
|
Fleet, custody floor, duty, F2F relay, reaper, `peers_for`, PlayerTarget,
|
||
|
|
meta-tracker, Identity (discord_id root), Discord planes/bridge (notify surface only) — see main glossary + v2/plan.md §13.5 (Phase 8). Map to pillars:
|
||
|
|
|
||
|
|
| Legacy term | Pillar |
|
||
|
|
|-------------|--------|
|
||
|
|
| custody floor, rolling baton, zombie, reaper | Download |
|
||
|
|
| `peers_for`, meta-tracker | Download |
|
||
|
|
| PlayerTarget, Continue Watching | Watch |
|
||
|
|
| `appTheme`, `.wsz` skin | Watch (local appearance) |
|
||
|
|
| discovery/signal graph (aggregates) | Net |
|
||
|
|
| broadcast, f2f_relay duties | Download |
|
||
|
|
| Identity (discord_id + fleets[]), Discord planes/bridge (notify surface) | Devices (duty + identity) + Download (governor runtime) | See v2/plan.md §13.5 |
|