fix: keep managed Homeboy upgrades service-owned - #640
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
Root-provisioned Homeboy at /usr/local/bin cannot replace itself when the agent runs as an unprivileged service user. This is the Homeboy executable recurrence of #203 and the same installation-ownership pattern previously repaired for Kimaki in #580.
Change
Verification
Homeboy Cook retry-0a94a366-1862-563f-acaf-3ae08b6dd323 applied the candidate and recorded three passing gates (homeboy-components, homeboy-verification-guidance, service-identity-adoption); Homeboy publication refused its own green Lab provider lineage (homeboy#15115). Direct OpenCode Luna reviewed the isolated candidate and added ownership/path checks. Locally passed: homeboy-service-identity, homeboy-components, homeboy-verification-guidance, service-identity-adoption, integration-adapters, homeboy-project-id, agents-md-composition-integration, bash -n for touched scripts, and git diff --check. The full agents-md-guidance shell fixture reaches later assertions on macOS then loses Homebrew PHP and /sbin/md5 when it narrows PATH to /usr/bin:/bin; Linux CI is authoritative for that fixture.
Operational evidence
On the managed host the service-owned Homeboy 0.394.0 executable and matching daemon were verified before this PR; generated guidance still points at the compose-visible system binary until this integration upgrade is deployed and recomposed. Finalization occurred outside Homeboy after the repeated publication blocker; no credentials or host state are in the branch.
AI assistance: OpenAI gpt-6-sol via OpenCode diagnosed the VPS ownership mismatch and directed the tracked workflow; OpenAI gpt-6-luna via direct OpenCode refined code and tests in the issue-linked isolated worktree at Chris Huber’s direction. Chris reviewed the fallback scope.