Pearls & Irritations — System Status

Generated Thu 23 Jul 2026 04:45:21 AEST · re-runs every 6 hours from box · this page is a snapshot, not live.

Newsletter delivery (receipt monitor: ~/status/newsletter_receipt_check.log)

Receipts for 2026-07-23 (Sydney)
StateFeedDetail
PENDINGdailynot yet sent (daily expected ~06:00, check completes 07:05)
N/Aweeklyonly sent on Sundays

Yesterday’s views (analytics pipeline: ~/analytics/output/daily_views_*.csv.gz)

2026-07-22 · data refreshed 4.9h ago · 32,263 unique visitors · 75,498 total post views · most-read author (top article): John Menadue
#ViewsArticleAuthor(s)
12,346What is the point of power without purpose?John Menadue
21,516AUKUS is being exposed, but will anything change?Julie Macken
31,274
41,261Israeli embassy attacks Labor’s draft Gaza platformMichelle Grattan
5597Trachoma finally on the way out in AustraliaJack Waterford

Server & content pipeline (left → right: WordPress → box → GitHub → Cloudflare)

StateComponentNewest article / status
UPWordPress (publish.*)newest publish: 2026-07-22T14:52:30Z · id=473843 · Productivity growth is the best answer to populism · view
UPBox ~/hugo/content/newest rsync: 2026-07-23 01:00:11 AEST · id=473843 · Productivity growth is the best answer to populism
UPGitHub content-liveHEAD 5861633 · 2026-07-23 01:05:26 +1000 · bridge sync 2026-07-23T01:05:26+10:00
UPGitHub content-archiveHEAD 4be72372 · 2026-07-23 01:05:20 +1000 · bridge sync 2026-07-23T01:05:19+10:00
UPCloudflare (content-live-pages)newest item: Thu, 23 Jul 2026 00:52:30 +1000 · Productivity growth is the best answer to populism

Pipeline checks (prlsi/system monitor.yml)

run #429 at 2026-07-22T18:39:09Z → conclusion=success · view on GitHub
SevCheckDetail
OKarchive-workersall 4 < 36h
OKcf-pages-quota227/500 builds used this month
INFOcontent-liveWP REST 415 from publish.* (can't fetch source truth this run; HEAD 58616338 age 3.6h). publish.* HTTP 415 (same WAF rejection — see wp-future above; not a separate incident).
INFOe-click/e/ → homepage (https://pearlsandirritations.com/?utm_source=pi_news&utm_medium=email&utm_campaign=daily-2026-07-22) — expected intra-day (refresh_postid_kv runs 04:40; its own CRIT covers a real failure)
OKfeed-daily10 items, fresh, matches Pages
INFOfrontpage-paritypublish.* HTTP 415 (same WAF rejection — see wp-future above; not a separate incident).
OKgh-rate-limitREST core 0% used (0/5000)
OKpages-deploysuccess, 139m ago
INFOplugin-driftpublish.* HTTP 415 (same WAF rejection — see wp-future above; not a separate incident).
OKtoken-expiryCF token non-expiring or not reported
INFOwp-cron-healthpublish.* HTTP 415 (same WAF rejection — see wp-future above; not a separate incident).
INFOwp-futurepublish.* WP host HTTP 415 (hosting WAF likely rejecting this runner IP — same call from any other IP works; not a plugin/auth issue. Other publish.* checks in this run will be collapsed into this notice.)

Tokens & credentials (box: token_liveness_check.py)

Last run 34m ago
SevCredentialDetail
OKcf_box_tokenstatus=active expires=no-expiry
OKfastmailsession ok
OKgithub_sshHi prlsi! You've successfully authenticated, but GitHub does not provide shell a
OKr2listed
OKaws_glaciervalid
OKmailchimpEverything's Chimpy!
OKlinkedin_tokenactive, expires 2026-08-17 (in 26d)
OKlinkedin_org_tokenactive, expires 2026-08-19 (in 27d)

Box-resident component freshness (log file mtimes)

StateComponentAgeLast log line
OKNewsletter receipt monitor21.7h / 26h[2026-07-22 07:05:04] OK — daily 07:05 re-check: received 2026-07-21T20:15:34Z from daily@pearlsandirritations.com (subj 'P&I Daily', ~44 links)
OKPOSTID_MAP KV refresh0.1h / 26h[2026-07-23T04:41:35+10:00] done
OKToken liveness check0.6h / 26h[2026-07-23 04:10:13] OK — all credentials live: cf_box_token:OK | fastmail:OK | github_ssh:OK | r2:OK | aws_glacier:OK | mailchimp:OK | linkedin_token:OK | linkedin_org_token:OK
OKData-bridge (mostread→site)4.5h / 26h[2026-07-23T00:15:04+10:00] data-bridge done
OKAnalytics pipeline4.3h / 9h[INFO] • https:///statistics/
OKContent git-bridge (WP→GH)0.0h / 1h[2026-07-23T04:45:01+10:00] git-bridge start (full=0)