Be told when the answer about an address changes
monitor_subjectAsk to be told when the answer about an address CHANGES. The dimensions are the ones the counterparty check already answers, so this is that same reading on a schedule rather than a second opinion; what it adds is the comparison. The first run records a reading and reports nothing — there is nothing yet to compare against, and a first reading dressed up as news is the thing this avoids. Idempotent per subject: calling it again edits the watch rather than creating a second. An unknown dimension or policy is REFUSED rather than dropped, because a watch that quietly ignores half of what you asked for is worse than no watch. Needs a key. WHY readOnlyHint IS false: this call writes a row in our store on behalf of the caller, so a second identical call is not free of consequence.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| policy | No | The policy its verdict is read against. An unknown name is refused rather than replaced with a default. | |
| subject | Yes | The address to watch. | |
| dimensions | No | What to watch. All four if you leave it out. An unknown name is refused, not ignored. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The watch, for changing or ending it later. | |
| says | No | What this watch will and will not tell you. It reports a CHANGE in what we hold, which is not the same as a change in the world. | |
| policy | No | The policy its verdict is read against. Null where the watch names none and the default applies; read `says` for which that is. | |
| subject | Yes | The address being watched, read back so a watch cannot be set on the wrong one. | |
| dimensions | Yes | What is actually being watched, which is what you asked for or all four. | |
| firstReadingAt | No | When the comparison baseline was taken. Null means no reading yet, so nothing can be reported as a change. |