Skip to content

[TASK] ResourceLockService protocol + impl via NSRunningApplication + proc_listpids #40

@kirich1409

Description

@kirich1409

Context

Quiescence checks without spawning lsof (P5). NSRunningApplication.runningApplications(withBundleIdentifier:) for bundle checks; proc_listpids + proc_pidinfo for open-file checks, batched.

Acceptance criteria

  • isProcessRunning(bundleID/prefix) uses NSRunningApplication.
  • isPathBusy(URL) batch via proc_listpids.
  • ProcessPredicate enum (noProcessWithBundleID, noProcessWithBundleIDPrefix, noLaunchdService, noOpenHandleToPath, noGitOperationInWorktree).

Files to touch (estimate)

best-effort estimate; agent refines during implementation

Implementation notes

  • See research report §S11, §P5.

Dependencies

None.

Safety checklist

See .github/ISSUE_TEMPLATE/task.yml — tick applicable invariants in the issue if any destructive path is touched.

Definition of Done

  • Acceptance criteria satisfied and verifiable
  • Tests added or updated
  • No build / lint / test regressions
  • Self-review against research-report invariants
  • Code review approved

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:performancePerformance invariants (P1-P10)area:plugin-apiPlugin API contracts and core typestype:taskConcrete implementation task

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions