aboutsummaryrefslogtreecommitdiff
path: root/docs/session-context.org
blob: e5aea9370391fa570cb7388d9995561986e6467f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#+TITLE: Session Context - Active Session
#+DATE: 2026-01-24

* Session: Friday 2026-01-23 @ 14:08 CST (continued 2026-01-24)

** Key Decisions This Session

*** Project Rename: archangel
- Decided to rename project from "archzfs" to "archangel"

*** Btrfs Implementation Approach
- Phase 2: Single-disk btrfs, no encryption (test first)
- Phase 2.7: Test basic btrfs before adding encryption
- Phase 2.8: LUKS encryption after basic btrfs works
- Phase 3: Multi-disk (stripe, mirror, raidX) + encrypted/unencrypted

** Work Completed

*** Phase 1: Refactor (COMPLETE)
- [X] lib/common.sh, config.sh, disk.sh, zfs.sh created
- [X] Filesystem selection prompt
- [X] Renamed to archangel
- [X] VM test passed

*** Phase 2.1-2.6: Btrfs Support (COMPLETE)
- [X] Created lib/btrfs.sh with full implementation
- [X] 10 subvolumes matching ZFS dataset layout
- [X] Mount functions with proper options
- [X] fstab generation (subvol= NOT subvolid!)
- [X] GRUB + grub-btrfs configuration with serial console
- [X] Snapper firstboot service (configures on first boot)

*** Phase 2.7: Basic Btrfs Testing (COMPLETE @ 05:23 CST)
- [X] VM boots from installed btrfs disk
- [X] GRUB menu shows and auto-boots
- [X] All 10 subvolumes mount correctly
- [X] Snapper works when configured
- [X] Genesis snapshot can be created
- [X] grub-btrfs detects snapshots

**** Issues Fixed During Testing
1. GRUB couldn't find normal.mod - added proper boot-directory config
2. GRUB_BTRFS_GRUB_DIRNAME was wrong - removed, use default
3. HEREDOC not working in remote execution - switched to echo
4. Snapper needs D-Bus - firstboot service approach
5. rootflags=subvol=@ was duplicated - grub-mkconfig adds it

** Commits This Session
- a49f4b1: Phase 2.1: Implement btrfs support
- 35a661c: Fix btrfs bugs from VM testing
- bd0616c: Fix btrfs GRUB boot and snapper firstboot

** Next Steps
1. Phase 2.8: LUKS encryption for btrfs
2. Rebuild ISO with all fixes
3. Full end-to-end automated test
4. Phase 3: Multi-disk support

** Notes
- Craig on remote console: 30 lines tall, ~145 columns wide
- Testing approach: syntax first, then full VM test
- Snapper requires D-Bus - can't configure in chroot, needs firstboot