Skip to content

uik-daemon hardening: swap warning, agent gate, launchd docs - #53

Merged
ThinkOffApp merged 1 commit into
mainfrom
feat/uik-daemon-hardening
Aug 1, 2026
Merged

uik-daemon hardening: swap warning, agent gate, launchd docs#53
ThinkOffApp merged 1 commit into
mainfrom
feat/uik-daemon-hardening

Conversation

@ThinkOffApp

Copy link
Copy Markdown
Owner

Product-izing today's UIK dashboard recovery per the product-not-local-tuning rule:

  • Startup warning when INTENT_USER_ID equals the agent handle — the misconfiguration that fed heartbeats into a nonexistent user's document for 27 silent days on the Mini (and that two of us reproduced independently in one day). The API accepts any user string, so the wrong form appears to work.
  • INTENT_AGENT_GATE_CMD — optional shell gate; the agent beat publishes only while the command exits 0, tying agent presence to its real supervisor instead of a timer (deployed on the MacBook for @codexmb, gated on the codex webhook supervisor).
  • launchd install docs with the TTL rationale and a plist template.

204/204 tests pass. node --check clean.

🤖 Generated with Claude Code

The Jul 31 dashboard outage taught three lessons in one afternoon:
INTENT_USER_ID set to the agent handle ran silently for 27 days on the
Mini (the API creates any user document without complaint) - the daemon
now warns at startup on that exact swap. INTENT_AGENT_GATE_CMD lets an
agent's beat follow its real supervisor process instead of a bare timer,
so a dead agent stops reading as active. launchd installation documented
with the TTL rationale. 204/204 tests pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@cursor

cursor Bot commented Jul 31, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@chatgpt-codex-connector

Copy link
Copy Markdown

To use Codex here, create an environment for this repo.

@ThinkOffApp
ThinkOffApp merged commit 3b2a398 into main Aug 1, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant