Skip to content

v2.18.4 — Full heartbeat identity & canonical face resolver

Choose a tag to compare

@chekh chekh released this 15 Oct 21:56
· 1 commit to main since this release

[2.18.4] - 2026-10-16

Fixed — Full heartbeat identity and canonical face resolver

  • Full heartbeat identity: writeHeartbeat accepts optional full HeartbeatIdentity (owner, sessionId, pid, claimToken) with strict ownership checks (session equality, both-null for transferred ownership, claim_token match); refusals carry the owner's name. HeartbeatRecord persists session_id/pid. wolf claim heartbeat gains --session/--pid/--claim-token (legacy writer-only default preserved).
  • Canonical face resolver: new resolveFace use-case — strict query (type=face, status=active, owner_skill === agentId), deterministic refusal on 0/multiple with sorted candidate diagnostics, content hash. New wolf face resolve CLI (JSON, exit 1 on miss/conflict).
  • wolf-router plugin: canonical face resolve first, legacy text search + owner guard as fallback (2.13 howto delivery preserved).