Skip to content

fix: compare launchd configuration literally - #268

Draft
aikinley wants to merge 1 commit into
monk-io:mainfrom
aikinley:codex/fix-launchd-literal-config
Draft

fix: compare launchd configuration literally#268
aikinley wants to merge 1 commit into
monk-io:mainfrom
aikinley:codex/fix-launchd-literal-config

Conversation

@aikinley

@aikinley aikinley commented Aug 5, 2026

Copy link
Copy Markdown

Summary

  • compare launchd configuration values as fixed strings instead of regular expressions
  • ensure auth/client/audience/autospin/local/plugin-version drift triggers the required companion restart
  • update all three shipped launcher mirrors
  • add an isolated Darwin-branch regression for a regex-equivalent but different auth URL

Why

The default auth URL contains dots. In v0.1.54, grep -q treats those dots as wildcards, so the requested https://auth.monk.io incorrectly matches a stored https://auth-monk-io. The healthy fast path then reports success while reusing a companion with stale authentication configuration.

Validation

  • pristine v0.1.54 regression: exits 1 because no launchd restart occurs
  • fixed regression: tests/start-monk-agent-launchd-regex-drift.sh passes
  • existing tests/start-monk-agent-fastpath.sh passes
  • existing tests/start-monk-agent-readiness-timeout.sh passes
  • C:\Program Files\Git\bin\bash.exe -n scripts/start-monk-agent.sh
  • SHA-256 equality verified across all three launcher mirrors
  • git diff --check

Generated artifacts

GENERATED.md says the public tree is generated from the private monk-agent/plugin source. This PR updates the mirrored public artifacts consistently; the corresponding source change should be ported before the next regeneration.

Fixes #256

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.

[Bug bounty] macOS launchd fast path regex-matches drifted auth configuration

1 participant