aiworkhub_manager_learning_commit
Persist a verified Learning Commit for an accepted or rejected task decision, auto-resolving evidence and provenance, then promote lessons, invariants, or Context Graph edges when needed.
Instructions
MANAGER WRITE: persist and project one verified Learning Commit.
SHORT FORM -- the one to use: task_id, request_id and the lesson.
Everything mechanical is resolved server-side from the card's OWN decision
event: outcome is read from the adjudication (never asserted),
repo_area from the paths that decision was taken over, evidence_ids
from the sealed FIXED_AND_VERIFIED acceptance reference, and
idempotency_key/provenance are the deterministic strings the
learning_commit_owed payload in your accept/reject reply already carried.
failure_category is always derived server-side from the card's structured
terminal evidence and is never caller-suppliable. repo_area omitted is
derived from the decision's paths; any explicitly supplied value is
normalized and honored, while an empty or whitespace value is refused with
learning_commit_repo_area_invalid:empty.
Add your own references with extra_evidence_ids. An evidence id must
carry an allowed scheme -- file:, http: or https:. A sha256:
receipt id is refused, and any refusal here returns
allowed_evidence_id_schemes.
outcome is accepted, rejected or inconclusive; only the first
two may promote, and each promotion needs what its store demands (a lesson
for AI Memory, an invariant for KB, an edge plus an acceptance for Context
Graph).
LONG FORM (compatibility): supply repo_area, outcome, evidence_ids, idempotency_key and provenance yourself and nothing is resolved. The lesson text is always the caller's; nothing is written without this call.
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": {
"task_id": "<task_id>",
"request_id": "<request_id>"
},
"name": "aiworkhub_manager_learning_commit"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| outcome | No | accepted, rejected or inconclusive; omit to read it from the card's own adjudication. Only accepted and rejected may promote. | |
| task_id | Yes | Id of the card whose accepted or rejected decision this learning commit records. | |
| repo_area | No | Repository-relative area the lesson concerns, at most 256 bytes with no absolute path, .., backslash or colon; omit to derive it from the decision's paths. | |
| promote_kb | No | True also promotes the invariant to the KB; needs outcome accepted or rejected, an invariant_candidate and an evidence id. Default false. | |
| provenance | No | Non-blank provenance text recorded with the commit, at most 2048 bytes; omit to use the deterministic string from the learning_commit_owed payload. | |
| request_id | Yes | Id of the judged worker request, as carried by the learning_commit_owed payload of the accept/reject reply. | |
| evidence_ids | No | Evidence ids, each starting with file:, http: or https: (a sha256: receipt id is refused); omit to resolve them from the card's sealed acceptance reference. | |
| edge_candidates | No | Context Graph edges to propose, each an object with string keys source, target (different, at most 256 each) and relation (at most 64); promote_context_graph needs one. | |
| idempotency_key | No | 8-192 characters matching ^[A-Za-z0-9][A-Za-z0-9_.:-]{7,191}$; omit to use the deterministic key from the learning_commit_owed payload. | |
| lesson_candidate | No | Lesson text to record with the commit; promote_ai_memory needs it. Default empty. | |
| promote_ai_memory | No | True also promotes the lesson to AI Memory; needs outcome accepted or rejected, a lesson_candidate and an evidence id. Default false. | |
| extra_evidence_ids | No | Further evidence ids merged into the resolved or supplied evidence_ids, with the same allowed schemes; default none. | |
| invariant_candidate | No | Candidate invariant to record with the commit; promote_kb needs it. Default empty. | |
| root_cause_candidate | No | Candidate root cause to record with the commit; default empty. | |
| promote_context_graph | No | True also promotes edge_candidates to the Context Graph; needs outcome accepted and an evidence id. Default false. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||