# BigBrother Hardware Tier Definitions
# Platform-specific resource limits and capability gates.
# Platform auto-detected at boot or set in bigbrother.yaml.

# ---------------------------------------------------------------------------
# Orange Pi Zero 3 (4GB) — Primary Implant
# Allwinner H618, 4x Cortex-A53 @ 1.5GHz, WiFi 5 + BT 5.0, 1x GbE
# Dimensions: 50x55mm, ~$29, 0.8W idle / ~3.5W load
# OS: Armbian Debian 12 Bookworm
# ---------------------------------------------------------------------------
opi_zero3:
  max_passive: 16                   # All passive modules supported
  max_active: 6                     # Concurrent active module limit
  max_ram_mb: 3800                  # ~4GB minus OS overhead
  zstd_level: 19                    # Max compression (10-15x on PCAPs)
  kdf: "argon2id"                   # Strong key derivation
  mitmproxy: true                   # 100-200MB RAM — fits in budget
  lkm: false                        # No kernel headers on Armbian
  cellular: true                    # Via 13-pin header USB breakout
  overlayfs_mb: 200                 # tmpfs overlay size
  thermal_warning: 55               # Celsius — needs heatsink
  thermal_shed: 70                  # Shed active modules at this temp
  wifi_attacks: true                # Built-in WiFi 5 supports evil twin
  inline_bridge: true               # Via USB Ethernet adapter

# ---------------------------------------------------------------------------
# Raspberry Pi 3B — Condo / Secondary Implant
# BCM2837B0, 4x Cortex-A53 @ 1.2GHz, WiFi 4 + BT 4.2, 1x 100M Ethernet
# 1GB RAM — passive sniffing + limited active capability
# OS: Ubuntu 24.04 LTS (arm64)
# ---------------------------------------------------------------------------
pi3b:
  max_passive: 8                    # 8 passive modules (RAM-limited)
  max_active: 2                     # Minimal active capability
  max_ram_mb: 700                   # 900MB total - ~200MB OS overhead
  zstd_level: 3                     # Fast compression (CPU-limited)
  kdf: "pbkdf2"                     # argon2id too expensive for 1GB
  mitmproxy: false                  # Too RAM-heavy
  lkm: false                        # No kernel headers
  cellular: false                   # No USB header
  overlayfs_mb: 64                  # Small tmpfs overlay
  thermal_warning: 60               # Celsius — Pi 3B runs warm
  thermal_shed: 75                  # Shed modules at this temp
  wifi_attacks: false               # Single wlan0 = uplink, can't spare for monitor
  inline_bridge: false              # eth0 not available in this configuration

# ---------------------------------------------------------------------------
# Raspberry Pi Zero 2W — Jumpbox / Beacon
# BCM2710A1, 4x Cortex-A53 @ 1.0GHz, WiFi 4, no Ethernet (USB adapter)
# 512MB RAM — lightweight passive sniffing + callback beacon only.
# No active attack capability. Deploy as decoy/expendable.
# ---------------------------------------------------------------------------
pi_zero:
  max_passive: 4                    # dns_logger, credential_sniffer, host_discovery, +1
  max_active: 0                     # No active modules — jumpbox only
  max_ram_mb: 410                   # 512MB minus OS (~110MB)
  zstd_level: 3                     # Fast mode (5-8x compression, minimal CPU)
  kdf: "pbkdf2"                     # argon2id too expensive for 512MB
  mitmproxy: false                  # Way too much RAM
  lkm: false                        # No kernel headers
  cellular: false                   # No USB header
  overlayfs_mb: 30                  # Minimal tmpfs overlay
  thermal_warning: 55               # Celsius
  thermal_shed: 70                  # Shed modules at this temp
  wifi_attacks: false               # WiFi 4 too weak for evil twin
  inline_bridge: false              # No Ethernet port

# ---------------------------------------------------------------------------
# Generic Debian Host — Full Capability
# Any x86_64/aarch64 Debian host. No hardware constraints.
# Supports all modules including LKM rootkit.
# ---------------------------------------------------------------------------
generic:
  max_passive: 16                   # All passive modules
  max_active: 99                    # Effectively unlimited
  max_ram_mb: null                  # No artificial limit
  zstd_level: 19                    # Max compression
  kdf: "argon2id"                   # Strong key derivation
  mitmproxy: true                   # Plenty of RAM
  lkm: true                         # Kernel headers available
  cellular: true                    # If USB modem attached
  overlayfs_mb: null                # Not needed on full host
  thermal_warning: 80               # Server-grade thermal limits
  thermal_shed: 95                  # Server-grade thermal limits
  wifi_attacks: true                # If wireless adapter present
  inline_bridge: true               # Dual NIC supported
