{{define "title"}}Source health — {{.SiteTitle}}{{end}} {{define "main"}} {{$admin := .Admin}}

{{if $admin}}owner view{{else}}live status{{end}}

Source health

{{if $admin}}Per-feed poll status and content stats. Rows that are currently failing float to the top. {{else}}Every feed Pete follows and whether it's still updating. This runs on a best-effort basis, so a source going quiet for a bit is normal.{{end}}

{{len .Sources}} sources {{if .DegradedCnt}} ⚠ {{.DegradedCnt}} {{if $admin}}degraded{{else}}delayed{{end}} {{else}} ✓ all updating {{end}}
{{if $admin}} {{end}} {{range .Sources}} {{if $admin}} {{end}} {{if $admin}}{{if .LastError}}{{if not .Healthy}} {{end}}{{end}}{{end}} {{else}} {{end}}
Source Channel Status Last updateLast poll Items Stories Paywall Last story Last posted
{{.Name}} {{.Channel}} {{if .NeverRun}} ◌ idle {{else if .Healthy}} ● live {{else if $admin}} ✕ {{.Failures}} fail{{if ne .Failures 1}}s{{end}} {{else}} ✕ delayed {{end}} {{if .LastSuccessAt.IsZero}}never{{else}}{{timeAgo .LastSuccessAt}}{{end}}{{if .LastPollAt.IsZero}}never{{else}}{{timeAgo .LastPollAt}}{{end}} {{.LastItemCount}} {{.Total}} {{if .Total}}{{.PaywallRate}}%{{else}}—{{end}} {{if .LastSeenAt.IsZero}}—{{else}}{{timeAgo .LastSeenAt}}{{end}} {{if .LastPostedAt.IsZero}}—{{else}}{{timeAgo .LastPostedAt}}{{end}}
{{.LastError}}
No sources configured.
{{end}}