Skip to content

Fix workspace mutation lock recovery evidence#507

Merged
chubes4 merged 2 commits into
mainfrom
fix/issue-506-workspace-mutation-locks
Jun 1, 2026
Merged

Fix workspace mutation lock recovery evidence#507
chubes4 merged 2 commits into
mainfrom
fix/issue-506-workspace-mutation-locks

Conversation

@chubes4

@chubes4 chubes4 commented Jun 1, 2026

Copy link
Copy Markdown
Member

Summary

  • Adds actionable filesystem lock evidence to workspace repo-busy failures, including lock age, holder source, status command, stale-prune command, and safety guidance.
  • Adds workspace worktree locks for operator-visible lock status and safe stale/orphan cleanup of expired DB rows plus old unlocked filesystem lock files.
  • Extends the mutation-lock smoke test to cover filesystem-only busy evidence, per-lock status rows, and stale lock recovery guidance.

Fixes #506.

Tests

  • php -l inc/Workspace/WorkspaceMutationLock.php
  • php -l inc/Cli/Commands/WorkspaceCommand.php
  • php -l tests/smoke-workspace-mutation-lock.php
  • php tests/smoke-workspace-mutation-lock.php
  • git diff --check

AI assistance

  • AI assistance: Yes
  • Tool(s): OpenCode (GPT-5.5)
  • Used for: Implementing the workspace mutation lock recovery evidence path, the operator lock status/prune CLI, and focused smoke coverage. Chris remains responsible for review and testing.

@homeboy-ci

homeboy-ci Bot commented Jun 1, 2026

Copy link
Copy Markdown
Contributor

Homeboy Results — data-machine-code

Lint

lint — passed

ℹ️ Full options: homeboy docs commands/lint
ℹ️ Save lint baseline: homeboy lint data-machine-code --baseline
Deep dive: homeboy lint data-machine-code --changed-since a1ee7c5

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-code-lint-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-code-lint-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine-code/actions/runs/26781962520

Test

test — passed

ℹ️ Auto-fix lint issues: homeboy refactor data-machine-code --from lint --write
ℹ️ Collect coverage: homeboy test data-machine-code --coverage
ℹ️ Pass args to test runner: homeboy test -- [args]
ℹ️ Full options: homeboy docs commands/test
Deep dive: homeboy test data-machine-code --changed-since a1ee7c5

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-code-test-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-code-test-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine-code/actions/runs/26781962520

Audit

audit — passed

  • audit — 28 finding(s)
  • Total: 28 finding(s)

Deep dive: homeboy audit data-machine-code --changed-since a1ee7c5

Artifacts and drill-down
  • CI results artifact: homeboy-ci-results-data-machine-code-audit-quality-Linux-node24 contains immediate command JSON for this action invocation.
  • Observation artifact: homeboy-observations-data-machine-code-audit-quality-Linux-node24 contains exported Homeboy run history for deeper queries.
  • Drill-down: download the observation artifact, then run homeboy runs import <dir>, homeboy runs list, and homeboy runs findings <run-id>.
  • Artifacts are attached to the workflow run: https://github.com/Extra-Chill/data-machine-code/actions/runs/26781962520
Tooling versions
  • Homeboy CLI: homeboy 0.216.2+1b69860
  • Extension: wordpress from https://github.com/Extra-Chill/homeboy-extensions
  • Extension revision: 835ae71a
  • Action: unknown@unknown

@chubes4 chubes4 merged commit efe02f3 into main Jun 1, 2026
5 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.

Recover stale workspace mutation locks after crashed worktree lifecycle commands

1 participant