Compare commits

..

21 Commits

Author SHA1 Message Date
Cal Corum
1ed911e61b fix: single-quote awk program in stuck_procs() collector
All checks were successful
Auto-merge docs-only PRs / auto-merge-docs (pull_request) Successful in 3s
Reindex Knowledge Base / reindex (push) Successful in 3s
The awk program was double-quoted inside the single-quoted
COLLECTOR_SCRIPT, causing $1/$2/$3 to be expanded by the remote
shell as empty positional parameters instead of awk field references.
This made the D-state process filter silently match nothing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 20:48:56 -05:00
Cal Corum
7c801f6c3b fix: guard --output-dir arg and use configurable ZOMBIE_WARN threshold
- Validate --output-dir has a following argument before accessing $2
  (prevents unbound variable crash under set -u)
- Add ZOMBIE_WARN config variable (default: 1) and use it in the zombie
  check instead of hardcoding 0

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 20:48:56 -05:00
Cal Corum
9a39abd64c fix: add homelab-audit.sh with variable interpolation and collector fixes (#23)
Closes #23

- Fix STUCK_PROC_CPU_WARN not reaching remote collector: COLLECTOR_SCRIPT
  heredoc stays single-quoted; threshold is passed as $1 to the remote
  bash session so it is evaluated correctly on the collecting host
- Fix LXC IP discovery for static-IP containers: lxc-info result now falls
  back to parsing pct config when lxc-info returns empty
- Fix SSH failures silently dropped: stderr redirected to
  $REPORT_DIR/ssh-failures.log; SSH_FAILURE entries counted and printed
  in the summary
- Add explicit comment explaining why -e is omitted from set options

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-02 20:48:56 -05:00
Cal Corum
def437f0cb docs: sync KB — troubleshooting.md 2026-04-02 20:48:39 -05:00
Cal Corum
2e86864e94 docs: sync KB — ace-step-local-network.md 2026-04-02 20:48:06 -05:00
Cal Corum
016683cc35 docs: sync KB — release-2026.4.02.md 2026-04-02 20:48:06 -05:00
Cal Corum
51389c612a docs: sync KB — database-release-2026.4.1.md 2026-04-02 20:48:06 -05:00
Cal Corum
98c69617ff docs: sync KB — troubleshooting-gunicorn-worker-timeouts.md 2026-04-02 20:48:06 -05:00
Cal Corum
50125d8b39 docs: sync KB — release-2026.3.31.md,release-2026.4.01.md 2026-04-02 20:48:06 -05:00
Cal Corum
7bdaa0e002 docs: sync KB — troubleshooting.md 2026-04-02 20:48:06 -05:00
Cal Corum
2cb1ced842 docs: sync KB — troubleshooting.md 2026-04-02 20:48:06 -05:00
Cal Corum
ad6adf7a4c docs: sync KB — release-2026.3.31-2.md 2026-04-02 20:48:06 -05:00
Cal Corum
acb1a35170 docs: sync KB — release-2026.3.31.md 2026-04-02 20:48:06 -05:00
Cal Corum
1d85ed26b9 docs: sync KB — release-2026.3.31.md 2026-04-02 20:48:06 -05:00
Cal Corum
1e7f99269e docs: sync KB — 2026-03-30.md 2026-04-02 20:48:06 -05:00
Cal Corum
f5eab93f7b docs: sync KB — subagent-write-permission-blocked.md,release-2026.3.28.md 2026-04-02 20:48:06 -05:00
Cal Corum
bf4b7dc8b7 docs: sync KB — codex-agents-marketplace.md 2026-04-02 20:48:06 -05:00
Cal Corum
3ac33d0046 docs: sync KB — open-packs-checkin-crash.md 2026-04-02 20:48:06 -05:00
cal
d730ea28bc Merge pull request 'docs: Roku WiFi buffering fix in troubleshooting' (#17) from docs/roku-wifi-buffering-fix into main
All checks were successful
Reindex Knowledge Base / reindex (push) Successful in 3s
2026-03-26 11:55:30 +00:00
Cal Corum
b6e00ca33a docs: sync KB — Roku WiFi buffering fix in troubleshooting.md
All checks were successful
Auto-merge docs-only PRs / auto-merge-docs (pull_request) Successful in 13s
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 06:55:04 -05:00
cal
43e72fc1b6 Merge pull request 'docs: add Ansible controller LXC setup guide' (#16) from docs/ansible-controller-setup into main
All checks were successful
Reindex Knowledge Base / reindex (push) Successful in 3s
2026-03-26 03:27:29 +00:00

View File

@ -548,6 +548,20 @@ tar -czf ~/jellyfin-config-backup-$(date +%Y%m%d).tar.gz ~/docker/jellyfin/confi
- Test on non-production instance if possible
- Document current working configuration
## Roku Buffering on Weak WiFi — Client Bitrate Cap (2026-03-26)
**Severity:** Low — single device, non-critical viewing location
**Problem:** Roku in a far corner of the house with poor WiFi signal was buffering/failing to play videos. Content was not being transcoded down to accommodate the limited bandwidth.
**Root Cause:** Jellyfin does not dynamically adapt bitrate mid-stream (no HLS ABR like Netflix). The server's `RemoteClientBitrateLimit` was set to `0` (unlimited), and LAN clients are treated as "local" anyway so that setting wouldn't apply. The Roku Jellyfin app was requesting full-quality streams that exceeded the WiFi throughput.
**Fix:** Set **Max Streaming Bitrate** in the Jellyfin Roku app settings (Settings > Playback) to a lower value (4-8 Mbps). This forces the server to transcode down via NVENC before sending. No server-side changes needed.
**Lesson:** For bandwidth-constrained clients, the client-side bitrate setting is the first lever to pull. For a server-enforced cap that survives app resets, create a dedicated Jellyfin user for that device and set a per-user bitrate limit in Dashboard > Users > Playback. The `RemoteClientBitrateLimit` in system.xml only applies to clients Jellyfin considers "remote" — LAN devices are always "local."
---
## PGS Subtitle Default Flags Causing Roku Playback Hang (2026-04-01)
**Severity:** Medium — affects all Roku/Apple TV clients attempting to play remuxes with PGS subtitles