fix(browser-operator): PID аренды только настоящий (/proc/$$/winpid), driver.lock руками не трогать
This commit is contained in:
BIN
dist/browser-operator.skill
vendored
BIN
dist/browser-operator.skill
vendored
Binary file not shown.
@@ -47,11 +47,20 @@ description: >
|
||||
|
||||
```bash
|
||||
BL="$HOME/.config/browser-harness/bin/browser-lease.sh"
|
||||
bash "$BL" acquire --holder "pi:$$" --ttl 900 --pid $$ --tool browser # 0 = взял, 3 = занято, 2 = ошибка
|
||||
HOLD="manual:$$" # метка держателя
|
||||
MYPID="$(cat /proc/$$/winpid 2>/dev/null || echo 0)" # НАСТОЯЩИЙ windows-PID
|
||||
bash "$BL" acquire --holder "$HOLD" --ttl 900 --pid "$MYPID" --tool browser # 0 = взял, 3 = занято, 2 = ошибка
|
||||
# … работа …
|
||||
bash "$BL" release --holder "pi:$$"
|
||||
bash "$BL" release --holder "$HOLD"
|
||||
```
|
||||
|
||||
**PID — только настоящий.** MSYS `$$` это НЕ windows-PID: по нему живость аренды врёт
|
||||
(мёртвый держатель выглядит живым, живой — мёртвым). В bash бери `/proc/$$/winpid`,
|
||||
в pi/Node — `process.pid`; не знаешь — передай `0` («неизвестен», живость решит TTL).
|
||||
|
||||
**`driver.lock` руками не трогай** (в том числе пустой или «битый» — это окно чужой
|
||||
записи): отбор мёртвой аренды делает CLI по `ts`/TTL/мёртвому PID. Чужую аренду не снимай.
|
||||
|
||||
Контракт аренды (формат файла, TTL, кого связывать): вики mappa
|
||||
`concepts/browser-lease-contract`.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user