v1.24.0 — runner hardening + review-gate honesty (kindly adoption)
Adopted from the MIT-licensed "kindly" skill (ideas runner-hardening-kindly +
meta-protocol-change-review-gate-honesty):
- Agent supervision: first-output watchdog (120s, one retry), stall guard
(30m, output-growth based), persistedagent.heartbeatevents (60s; excluded
from transcripts/triggers); counting writers — zero healthy-path I/O; typed
agent.no_first_output/agent.stalledevents appended BEFORE the kill.
Config:first_event_timeout_ms,stall_timeout_ms,heartbeat_ms. - Failure classification:
agent.failednow carriesfailure_class+
recovery_hint(rate-limit/auth/billing/overloaded/…); surfaced in the TUI
narrator and agent headers. - Artifact beats exit code: a validated artifact with an ordinary nonzero
exit finishes withagent_exitinstead of failing (removes the agy
wrote-then-exit-1 flake); ACP validation now respects the run phase; fix-ups
validate IMPLEMENTATION.md instead of trusting exit 0;Result.Success(). - Review snapshots: Phase 6 reviewers read a disposable shared-clone
checkout on local tmp (dirty trees become temp-index snapshot commits);
artifacts move back via copy+fsync+rename; loud fallback events. - parley consult +
parley consults list: advisory cross-agent questions
with durable artifacts under parley-deck/consults/ (never quorum evidence). - Hardening: claude participants shed nested host markers; read-only git probes
set GIT_OPTIONAL_LOCKS=0;fsutil.AppendLine; docs/agent-cli-mechanics.md. - Protocol: Phase 6 "Review briefs and dispositions" (no-suppression),
Phase 8 opt-instrict_gate+ "Stopping judgment", §8 "Consults" standing;
mirrored to the embedded default protocol.