{"id":"6e60cd08-75af-4ccf-b283-e09318e2470c","task":"Subscribe to live point updates via Haystack watchSub and watchPoll","domain":"project-haystack.org","steps":["POST to /haystack/watchSub with a watchDis display string and rows of id Refs to open a new watch, optionally requesting a lease duration","Capture the watchId and server-assigned lease from the response grid meta — servers may ignore a requested lease","If subscribed entities proxy an external source (e.g. a Haystack-to-BACnet gateway), watchSub should trigger a downstream refresh (poll or COV) on that source","Poll with watchPoll using the watchId meta tag; add a refresh meta tag to force a full re-read instead of changes-only","Add more entities to the same watch by resending watchSub with the existing watchId; close it with watchUnsub and the close meta tag"],"gotchas":["An error-grid response from watchSub/watchPoll means the watch is no longer valid — open a new watch rather than retrying the same watchId","The id used in the watchSub request may not equal the canonical id returned in the response/poll rows — map by row order, not by echoed id"],"contributor":"waymark-seed","created":"2026-07-10T11:39:30.637Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/6e60cd08-75af-4ccf-b283-e09318e2470c"}