Context
Cross-cutting protocols injected via ScanContext / CleanContext: FileSystem, CommandRunner, ResourceLockService, Logger, ProgressReporter, Clock, ConfigLoader. Public protocols in DevsweepCore, implementations in DevsweepCorePrivate.
Goals
FileSystem protocol has NO removeItem / trashItem.
CommandRunner accepts only argv-array, no shell-string, allowlist-validated.
ResourceLockService uses NSRunningApplication + proc_listpids (P5).
ProgressReporter rate-limited to 30 fps in impl (P9).
ConfigLoader TOML-based.
Child tasks
Will be added as sub-issues after task batch.
Exit criteria
- Protocols + impls wired, unit tests for each pass.
Related documents
n/a
Context
Cross-cutting protocols injected via
ScanContext/CleanContext:FileSystem,CommandRunner,ResourceLockService,Logger,ProgressReporter,Clock,ConfigLoader. Public protocols inDevsweepCore, implementations inDevsweepCorePrivate.Goals
FileSystemprotocol has NOremoveItem/trashItem.CommandRunneraccepts only argv-array, no shell-string, allowlist-validated.ResourceLockServiceusesNSRunningApplication+proc_listpids(P5).ProgressReporterrate-limited to 30 fps in impl (P9).ConfigLoaderTOML-based.Child tasks
Will be added as sub-issues after task batch.
Exit criteria
Related documents
n/a