KB-4725

IU Core 6000x-authority-closeout — Section C · Mac User-Cron Healthcheck Install (Pilot)

3 min read Revision 1
iu-core6000x-authority-closeoutcron-installmac-user-cronmonitoring-pilotsection-c

6000x-authority-closeout — Section C · Mac user-cron healthcheck install

Verdict: DONE (as user-approved monitoring pilot).

Authority and scope

User explicitly authorised: install user-level crontab only on this Mac, no sudo, no systemd on macOS, no VPS install. Recorded limitation: Mac cron is a monitoring pilot, not final production-grade VPS monitoring (host can sleep/offline).

Pre-install proof

IU_CORE_HEALTH_LOG_DIR=/tmp/iu-core-health-preinstall ops/healthcheck-cron-package/scripts/iu_core_healthcheck_wrapper.sh → exit 0, JSON log line: ts 2026-05-24T01:55:19Z | exit 0 | overall_ok True | surfaces 7

Install

$ ops/healthcheck-cron-package/install/install.sh cron
[install] crontab entry added.
*/10 * * * * /Users/nmhuyen/iu-cutter-build/repo/iu-cutter/ops/healthcheck-cron-package/scripts/iu_core_healthcheck_wrapper.sh >/dev/null
[install] OK — healthcheck exited 0.

Pre-existing crontab entry (daily_check.py) untouched. Install idempotent (grep -qF guard).

Live run proof

tail -1 ~/.iu-core-health/log/healthcheck.jsonlts 2026-05-24T01:55:54Z exit 0 overall_ok True

Log dir: ~/.iu-core-health/log/. Format: JSONL, one record per run. Rotation: 1 MiB size-based, 5 generations kept.

Surfaces logged each tick

  1. three_axis_cache
  2. directus_collection
  3. qdrant_collection
  4. auto_refresh_trigger
  5. vector_boundary
  6. write_gates
  7. operator_runtime

Recorded limitations

  • Mac sleep / offline: cron does not fire when host is asleep.
  • Single host: cron miss invisible to team.
  • No alerting on FAIL: MAILTO empty; wrapper writes JSONL only.

Rollback

ops/healthcheck-cron-package/install/uninstall.sh cron removes the schedule line. To purge logs: rm -rf ~/.iu-core-health/.

Non-actions

  • No sudo. No /etc/cron.d. No systemd. No VPS cron mutation. No root cron.

Next monitoring step (out of scope)

Install same package on long-running iu-cutter Linux operator host via install.sh systemd (user systemd timer, needs loginctl enable-linger).

Back to Knowledge Hub knowledge/dev/laws/dieu44-trien-khai/v0.6-iu-core-6000x-authority-closeout-open-goal/04-cron-install.md