WorktreePulseScanner class
Walks each live worktree's .grid and reports the newest file mtime.
Async, deliberately (quality M4): the scan runs inside the 30 s tick
pass on the station's SINGLE isolate, beside every engine build and every
bd write — a synchronous listSync(recursive:)/statSync walk stalls all
of them for the whole walk. Directory.list + FileStat.stat yield to the
event loop at every entry, so the per-entry stall is one syscall, never the
tree; the axis that matters is the isolate stall the scan imposes, not its
wall-clock share of the tick period. The worktree set itself is bounded by
the liveness query's batch (stage1-wiring §2.4's bounded-pass rule), which
bounds one tick pass's scan.
Constructors
- WorktreePulseScanner()
-
The scanner reads ONLY the paths it is handed — they come from P6's
worktreecolumn, which the station itself wrote — so it needs no root and holds no state.const
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
scan(
Iterable< String> worktrees) → Future<WorktreeScan> -
Scans
worktrees(duplicates collapse) and returns the newest.gridmtime per path. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited