Commit graph

4 commits

Author SHA1 Message Date
19286e9860 feat(patterns): full Linux-to-Linux distro matrix + M2 LLM chat wiring
Pattern files: 12 cross-family migration pairs covering debian, fedora, arch,
opensuse — each tuned to the user's prior tooling (apt, dnf, pacman, zypper).
Includes the custom linux-to-arch file for experienced distro-hoppers and
the macos-to-arch / windows-to-debian expansions from the prior session.

Code changes:
- patterns::load() accepts source_distro_family: Option<&str> — tries
  specific debian-to-arch.toml before falling back to linux-to-arch.toml
- MigrationConfig adds source_distro_family: Option<String> with serde default
- complete_onboarding() accepts optional source_distro arg and derives family
  via distro_family() for Linux-to-Linux migrations
- llm.rs: Ollama streaming client with Vec<u8> buffer for UTF-8 safety,
  emit errors logged not silenced
- commands::chat: spawns stream task, returns immediately so frontend
  isn't blocked waiting for full LLM response
- lib.rs: registers mod llm and commands::chat in invoke_handler
2026-05-19 08:24:06 -07:00
89271f08f8 feat(patterns): add linux-to-arch pattern set for experienced distro-hopper on CachyOS
Targets an experienced Debian/Fedora user on first Arch install. Body text
is terse and technical — no hand-holding, just Arch-specific gotchas.

- pacman.log as watched applog source (catches terminal pacman/AUR runs)
- pacman/AUR: db lock, dep conflicts, conflicting files, build failures,
  PGP keys, missing makedepends, partial upgrade warning, Chaotic-AUR sig
- DKMS: build failures + CachyOS kernel module signature mismatch
- System: locale not generated (Arch vs Debian difference), systemd-resolved,
  OOM (zram suggestion), disk I/O
- Audio: PipeWire/WirePlumber, Bluetooth rfkill + profile
- GPU: hang (mesa-git/DKMS version mismatch context), XWayland crash
- Gaming: Proton, Lutris Wine runner
- Network: NetworkManager + Realtek firmware callout for CachyOS
2026-05-19 08:10:13 -07:00
f7639346a6 feat(patterns): expand macOS-to-Arch and Windows-to-Debian pattern sets
macOS-to-Arch: +9 patterns (pacman lock, dep conflict, DKMS build fail,
PipeWire, WirePlumber, Bluetooth rfkill/profile, GPU hang, XWayland crash,
OOM killer, disk I/O, NetworkManager)

Windows-to-Debian: +11 patterns (dpkg interrupted, PipeWire, PulseAudio,
Bluetooth rfkill/profile, NTFS dirty/force flags, disk I/O, USB reset,
OOM killer, GPU hang, NetworkManager, CUPS unavailable)

All patterns target sources Robin actually watches: journald, kmsg, applog.
match_text strings use invariant substrings from real log output.
2026-05-19 08:07:22 -07:00
8195ad98b0 feat(m1): starter pattern files — macos-to-arch and windows-to-debian 2026-05-18 18:25:11 -07:00