Resolve a memory outcome
memory_resolveAppend a resolution outcome to an already-observed memory: graded 0–1 or UNKNOWN, without rewriting history. Requires memory_id or subject and confirmation.
Instructions
Append a memory_resolution outcome on an already-observed memory (AKM-TRIAD-1.0). UNKNOWN is distinct from MISS. Does not rewrite history. Use this when an observed memory_id or subject now has an outcome. Do not use it for first observation, calibration, or reading history; use memory_observe, memory_calibrate, or memory_get instead. Write: additive resolution stamp. Missing memory_id/subject refuses AKM-NO-MEMORY. Does not rewrite prior observations. No memory_update — this is the forward outcome path. Requires memory_id or a previously observed subject. outcome is optional [0,1]; omit for UNKNOWN. Mutation requires confirm=true (runtime gate) or dry_run=true (preview only, no write). confirm and dry_run stay optional on inputSchema.required. Returns resolution stamp with outcome or UNKNOWN.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| fact | No | Fact text clipped to 160 characters. Required on observe. Hash-only cards refuse AKM-NO-FACT. | |
| confirm | No | Documented confirmation flag. Optional in inputSchema.required (connector refresh must not break). tools/call still refuses MCP-CONFIRM-REQUIRED when confirm is missing or false unless dry_run=true (preview, no write). | |
| dry_run | No | Optional preview flag. When true, return a would-mutate preview and do not write. Alternative to confirm=true. Does not mutate. | |
| outcome | No | Optional graded outcome in [0, 1]. Omit (or pass UNKNOWN) for an UNKNOWN resolution — distinct from MISS. | |
| subject | No | Optional subject key clipped to 80 characters. Used to find or create memory_id. | |
| use_case | No | Optional use-case label for calibration / adaptive recall ranking. Not a truth claim. | |
| memory_id | No | Optional existing memory id. Alternative to subject for resolve/calibrate/get. | |
| outcome_label | No | Optional label (for example HIT, MISS, GRADED, UNKNOWN). UNKNOWN is a first-class state, not a miss. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| code | No | FragGate or fabric code when present: FG-OK, FG-HALLUC-TOOL, FG-STUB, FG-LOCAL-ONLY, FG-UNKNOWN-OP, FG-GATE-REFUSE, FG-LAMB-REFUSE, or a module refuse such as MESH-* / AKM-*. | |
| door | No | Door name. The public door is fraggate. | |
| ran_in | No | Execution locale (for example aziel-runtime) when present. | |
| result | No | FragGate body: ok, code, door, slug, op, engine_digest, ran_in, provenance, refusal, limitations, receipt, plus the engine result. Unknown names refuse FG-HALLUC-TOOL; stubs refuse FG-STUB. | |
| status | No | HTTP-like status when present on wrappers (200 ok; 400+ error / refuse). | |
| display | No | Human-facing envelope. Show title and summary, then take the next input. | |
| receipt | No | Optional receipt, ledger tip, or TemporalLock/ForgeReceipts exit when the door stamped one. | |
| refusal | No | Explicit refuse object, code, or message when the door or engine refused. | |
| engine_op | No | Resolved engine op when present (often inside result). | |
| ledger_tip | No | Ask/refuse ledger tip when the door stamped one. | |
| provenance | No | Provenance / input packet when the pipeline attached one. | |
| session_id | No | Raw session id when session plumbing was used. Hidden unless the user asked for the chain. | |
| engine_slug | No | Resolved engine slug when present (often inside result). | |
| limitations | No | Capability limitations or Remain-OFF notes when present. | |
| engine_digest | No | 64-hex engine_digest when a true in-process engine ran (often inside result). |