rdmsm4x-changelog-20260927-0158-localai-apps-lead-integration
rdmsm4x - changelog - localai apps driven to ready-for-use; localdb LaunchAgents live - claude - FEAT-20260926-25/24/21 - rdmodelrouter+memcache+localdb - 2026-09-27 01:58 EDT
All three localAI apps (rdmodelrouter, memcache, localdb) are merged, notarized, installed as login items and running on rdmsm4x. The localdb LaunchAgents were signed off and bootstrapped.
Scope
- Host: rdmsm4x only. Lead: claude@rdmsm4x/lead0927. Session ran 2026-09-27 00:20 → 01:58 EDT.
- Three Opus background workers, one per app, plus codex exec (6
read-only verifier passes for localdb). Budget advice was
proceed(Anthropic 33% of 7d, OpenAI 16%).
Results (lead-verified)
| App | main | Tests | Install | Signing |
|---|---|---|---|---|
| rdmodelrouter 0.2.0 | 4dd4803 (localAI/rdmodelrouter) | 68/7 suites, 0 fail | ~/bin/rdmodelrouter, ~/Applications/RDModelRouterStatus.app (login item) | Notarized Developer ID, universal2 |
| memcache 1.1.0 | lib e71b198, app 7d2ade5 | 76, 0 fail | ~/Applications/memcache.app (login item, pid 57744) | Notarized Developer ID, universal2 (3 executables) |
| localdb P1 | ca0b99a (fleet/rdsysdb) | P1 25/0, app 34/0, e2e 41/0 | ~/.localdb/bin, ~/Applications/localdb.app (login item), 5 LaunchAgents | Notarized Developer ID, universal2 |
All pushed to fleet + backup remotes; no force. Merged worktrees removed (branches kept).
Lead actions
- 00:21 snapshotted uncommitted localdb fix1 (~/.agent-coordination/snapshots/rdmsm4x/rdsysdb-p1-20260926/20260927-002105).
- Checked in with grok and the lane bots over the bus; relayed grok's constraints (lane bots keep their claims, no keychain/GUI prompts, pin Xcode 27 RC).
- Traced Rich's 00:53 keychain prompt to the rmr-keys agy branch (real SecItemCopyMatching in KeyResolverTests), not main. Fix routed to rdmodelrouter@ + grok and noted on FEAT-20260927-10.
- ecs_sign_notarize.zsh defects (exit 141 after Accepted; notarytool error hidden) routed to standards@rdmsm4x on ISSUE-20260927-03.
- 01:45 signed off on TASK-20260926-63 (independently re-checked the plists, binary hashes and python3) and bootstrapped the localdb LaunchAgents. Verified by 01:55: localdbd running, health 0.83 ms; ticketledger exit 0 with 28/28 matching; agentstatus exit 0; notifier running. TASK-63 resolved.
Open
- localdb startup race (notifier/ticketledger exit 1 before the socket exists, self-heal after 300 s) is with the localdb lane.
- localdb criterion 13 (latency: measure at load1 40–60) and 17 (06:15 run).
- Intel runtime QA not done for any of the three apps. The rmr-keys keychain fix is with the rdmodelrouter lane.
Undo
- localdb:
zsh ~/dev/fleet/rdsysdb/scripts/rollback.zsh. Apps: previous copies are in ~/dev/_archive/rdmodelrouter-install/20260927-005043 and ~/.localdb/archive/install-20260927-013641; remove login items in System Settings.
Notes: file copy only; the Notes entry is left to the autopublisher (no-GUI-prompt rule tonight, Rich asleep).
Incident contained 01:58 → 02:06 EDT (ISSUE-20260927-07, assigned to ops@rdmsm4x)
- Load1 ~1000 with 7,736 processes. Cause: third-party "Usage" app
(pro.usage.mac 1.6.8). Its LaunchAgent pro.usage.mac.Helper had spawned
4,768
system_profiler SPDisplaysDataType -jsonand 1,186top -l 1 -o memsamplers that fed each other. Not localdb (checked). - Actions:
launchctl bootout gui/501/pro.usage.mac.Helper(plist kept) and pkill of the exact orphaned top command line. By 02:06: procs 1,867, samplers 0, load1 187 and falling. localdb stayed healthy throughout. - Undo:
launchctl bootstrap gui/501 ~/Library/LaunchAgents/pro.usage.mac.Helper.plist. Re-enabling it is Rich's call; recommend leaving it off.
Pre-reboot addendum 2026-09-27 17:37 EDT
- Re-measured: load1 48; all 4 app processes up; all 5 localdb jobs
last exit 0 (nightlyaudit ran the 06:15 job);
localdb healthOK. launchctl disable gui/501/pro.usage.mac.Helperso the Usage containment survives the reboot (bootout alone does not). Undo:launchctl enable …+bootstrap.- Resumable state:
~/dev/_handoff/lead0927-localai-apps-20260927/SESSION-STATE.md. This session holds no claims.
Round 2, 2026-09-27 22:09 → 2026-09-28 00:48 EDT
- Three Sonnet workers (memcache, rdmodelrouter, localdb) plus inline rollout; budget advice went hold→conserve, so no agy/codex runs.
- memcache: 16 loop branches reviewed and merged (205 tests), app 1.2.0 notarized; CLI 1.2.0 rolled out to all 6 hosts with a smoke test between each (DEC-20260927-14, Rich 22:16 "all approved").
- rdmodelrouter: tests can no longer touch the login keychain (ISSUE-20260927-23 fixed, 152 tests); status app relaunched.
- localdb: startup race confirmed fixed live; criterion 13 measured.
- Agent rules: one CORE.md §8 row + one ~/dev/AGENTS.md line, pushed to 6 hosts. MCP registration handed to ops (TASK-20260928-01).
- Intel QA: all three CLIs run on both Intel Macs.
- Coordination: scope agreed with coordinator sessions dev-b4 and dev-28; no duplicate work.
- Waiting on Rich: DEC-20260927-06 Keychain Access step (on the ticket).
Round 3, pre-reboot save (2026-09-28 20:42:53 EDT)
- Auto-resume: pin
fleet/ops/resume/pins.d/14-lead0927-localai-apps.pin(fleet be9217c) runs launcher_handoff/lead0927-localai-apps-20260927/resume_after_reboot.commandv1.1, which resumes session 25f13a31 with a seed prompt to continue pending tickets (TASK-20260928-20, TASK-20260927-56 after ops TASK-20260928-01, localdb criterion 13 re-measure, MC-90 only with a spend cap). The one existing dispatcher, cap 3 per boot; no new LaunchAgent. - Incident: my launcher test briefly started a real duplicate resume (43 s, pid 1839, killed); it only added a dry-run hook to the launcher. Details in SESSION-STATE.
- Undo:
enabled: falsein the pin, or move the pin to ops/resume/archive/.