Record a decision about a finding
shoot_plan_record_decisionRecords a decision about one finding from shoot_plan_check (accepted, overridden or wont_fix), with the reason and who decided, so that you do not raise it again next session. We keep nothing: the answer is the updated decision log, and you must keep it and send it back to shoot_plan_check as dispositions. A finding with a remembered decision then comes back closed, with the reason, for as long as the evidence behind it is unchanged; if the evidence changes, it comes back open again. Input: plan; finding_id (a finding's id from shoot_plan_check); decision (accepted, overridden or wont_fix); reason (why, in plain words); by (who decided); optionally at (an ISO 8601 time with a zone, such as 2026-10-18T09:30:00Z; the time of the request if left out) and dispositions (the log you were given last time, to extend it: a later decision about the same finding replaces the earlier one, which stays as history). Output: dpl.dispositions/1, the log with this decision added. A finding_id the plan does not have is refused. No AI model runs. We don't keep the plan. We log a one-way fingerprint (hash) of it, its size, the tool, the type of client, the result and the time taken. Needs an agent key from a Shoot Plan account. Free, and it does not count toward the account's 3 free projects a month. Plans up to 8 MB and 120 calls a minute (5,000 a day).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"plan": "<plan>",
"finding_id": "<finding_id>",
"decision": "<decision>",
"reason": "<reason>",
"by": "<by>"
},
"name": "shoot_plan_record_decision"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| at | No | Optional: when it was decided, an ISO 8601 time with a zone, for example 2026-10-18T09:30:00Z. The time of the request if left out. | |
| by | Yes | Who decided: a name. | |
| plan | Yes | The plan itself: a dpl.plan/1 JSON object (not text inside a string). Call shoot_plan_format for the schema links and an example. | |
| reason | Yes | Why, in plain words. It is shown when the finding is closed by this decision. | |
| decision | Yes | accepted, overridden or wont_fix. | |
| finding_id | Yes | The id of a finding in the shoot_plan_check result for this plan, for example f-3a9c51d02b7e. | |
| dispositions | No | The decision log: the dpl.dispositions/1 document shoot_plan_record_decision returned, exactly as returned. You keep it; we don't. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||