Closing a decision and recording its outcome

A decision does not end when the plan runs out of steps. It ends when you tell Verinode what actually happened: did it work, what did it change, and what is that worth. That last step, the close-ou…

12 min read·Updated July 13, 2026
On this page

What close-out is for

A decision does not end when the plan runs out of steps. It ends when you tell Verinode what actually happened: did it work, what did it change, and what is that worth. That last step, the close-out, is what separates a decision that quietly fades off your list from one that feeds the learning loop, the record IQ and the network draw on the next time a similar pattern shows up.

Verinode never marks a decision as resolved on its own just because every step got checked off. Execution finishing and the outcome being known are two different moments, and the platform tracks them separately so your feedback is never lost or assumed. This article walks through that whole arc: the Outcome section inside a decision, the one-tap read from the Feed, and the full close-out dialog, and explains exactly what verifyOutcome and finalizeOutcome do underneath.

Where to find it

Open Decisions from the sidebar at iq.verinode.ai/decisions, then open any individual decision to land on its workspace at /decisions/[id]. See the decision workspace for the full layout of that page. The Outcome section sits near the bottom of the workspace, below the plan steps and above the footer. It appears once a decision has either started a plan or been marked actioned, and stays visible through to resolution. It does not appear at all for a decision that has not been acted on yet.

You can also record a fast read from the Feed, without opening the workspace, wherever an actioned decision shows the one-tap prompt described below.

The three phases: Executing, Measuring results, Verified

The Outcome section always shows a status pill in its header, one of three states:

  • Executing (gray): steps are still open. The plan is running, and outcome tracking has not started yet. The section reads: "Outcome tracking opens once the work is done. Finish the steps above and IQ will start measuring whether the metric moved."
  • Measuring results (teal, IQ Teal): execution is complete, meaning either the plan recorded a completion timestamp or every step on the plan is checked off, but the decision has not been resolved yet. This is where you tell Verinode what happened.
  • Verified (green): the decision is resolved. The outcome and any realized dollar figure are locked in and shown as the final record.

A decision only ever moves forward through these phases. Nothing downgrades a Verified decision back to Measuring.

Recording what happened: the Measuring results view

Once a decision is Measuring results, the section shows a line of context: when you acted on it ("Acted on [date]"), the dollar target from the original recommendation if there was one ("Target: $X/yr"), and a prompt: "IQ is watching the numbers, tell it what happened, or forward the proof when it lands."

If IQ already read a document

If IQ picked up a remittance, invoice, or email connected to this decision, a card appears above the input area labeled "IQ read your document", showing its read in plain language (for example, a dollar figure it believes was realized) and two buttons:

  • Confirm $X (or plain Confirm if no dollar figure was extracted): accepts IQ's read as the outcome. This calls verifyOutcome with the closed reason set to "completed" and the extracted dollar amount as the realized impact, and marks that evidence row confirmed.
  • Not quite: dismisses the proposed evidence. Nothing is recorded, and the row drops out of the timeline. If that evidence had previously been confirmed and counted toward the network's evidence aggregate, dismissing it retracts that contribution and recomputes the aggregate.

What happened?

Below that, four buttons let you pick a directional read: Worked, Mixed, Too soon to tell, Didn't work. Under the buttons is an optional Realized impact dollar field (pre-filled placeholder shows the original estimate if one exists) and an optional one-line note field ("What happened, in a sentence").

What happens when you submit depends on which button you picked:

  • Worked or Didn't work are terminal reads. Choosing one and submitting resolves the decision immediately: the button reads "Confirm & close out", and it calls verifyOutcome with the closed reason set to "completed" (for Worked) or "failed" (for Didn't work), carrying forward whatever dollar figure and note you entered.
  • Mixed or Too soon to tell are interim reads. They do not resolve the decision. The button reads "Log update", and it writes a note to the evidence timeline without closing anything out. A hint appears below the buttons: "Logged as a progress note, the decision keeps measuring. Pick 'Worked' or 'Didn't work' to close it out."

Add evidence. Next to the submit button, an Add evidence link lets you upload a file (PDF, image, CSV, spreadsheet, or Word/text document) as proof, a remittance, invoice, or confirmation email. IQ reads it and can propose a realized figure, which then shows up as the "IQ read your document" card described above on your next visit.

Below all of this, an Evidence timeline lists every confirmed entry for this decision so far, oldest first suppressed, newest first shown: who or what logged it (You, Document, Email, or IQ verified), the directional read if any, the dollar figure if any, a one-line summary, and the date. IQ-verified entries show as a green dot; everything else shows copper.

The full close-out dialog

The Outcome section's quick capture is the fast path. The Close project dialog is the complete post-mortem, and it is what you get when every step on a plan is checked off: a toast appears in the bottom-right corner of the workspace reading "All steps done" with the note "Close the project and share what worked, your feedback helps the network learn," and two buttons, Close project and Later. You can also trigger the same dialog manually if a "Close project" control is present elsewhere on the page for the decision you're viewing.

If you never started a plan for this decision at all (the accept-the-risk path, deciding not to act), the dialog's title changes to Mark as handled instead of Close project, and its subtitle changes to "Capture why, so the network learns when to push versus when to let it go." The fields are identical either way; only the framing copy changes.

The dialog is built to take about fifteen seconds. Only one field is required.

How did it end? (required)

Five options, each shown as a labeled row with a hint underneath:

  • Completed; it worked: "All steps done, outcome landed as planned"
  • Solved earlier than planned: "Outcome landed before we finished the plan"
  • Abandoned; didn't pan out: "Stopped working on this, no meaningful result"
  • Failed; made things worse: "The approach backfired, we'd avoid this next time"
  • No longer relevant: "Circumstances changed, the plan is moot"

Pick the one that matches. This is the single field that must be set before you can submit.

Actual impact captured

An optional dollar field, labeled "per year" to the right, pre-filled with the original estimated impact from the decision if one exists (with a note underneath: "Pre-filled with the signal's estimate. Adjust to what actually landed."). You can type over it with what actually landed, clear it to leave it blank, or leave the pre-fill in place. Only non-negative numbers are accepted; anything invalid is treated as blank. Figures above $100,000,000 are capped at that ceiling as a sanity check, this is a server-side guard, not a real limit you're likely to hit.

Was this plan useful? / Was this recommendation useful? (required)

A five-star rating. The label changes depending on whether you had a plan running ("Was this plan useful?") or were closing out without ever starting one ("Was this recommendation useful?"). As you hover or select, a word appears next to the stars: Not useful (1), Weak (2), OK (3), Useful (4), Nailed it (5). This is the second required field, alongside the closed reason.

What worked? / What didn't? / What would you do differently?

Three optional free-text fields, each a short text box, each simply labeled "Optional" as its placeholder. These are the qualitative notes that make the difference between a data point and something a future you, or IQ, could actually learn from. They are entirely optional but worth fifteen extra seconds if the decision was notable either way.

Submitting

The Close project button in the footer is disabled until a closed reason and a rating (1 to 5) are both set. Clicking it calls the closeDecision server action with everything you entered. If the decision was already resolved by the time you submit (for example, a race with the quick Measuring-results capture resolving it first), you'll see the error "This decision is already closed" and nothing is written twice. Any other failure shows the raw error message inline above the footer, and the dialog stays open so you can retry.

On success, the dialog closes and the workspace refreshes to show the Verified state.

The Feed one-tap read

On an actioned decision surfaced in the Feed, a compact prompt reads "Did this pay off?" with three buttons: Worked, Didn't, Too early. This is the fastest possible capture, three taps, no dialog, no typing. Tapping one writes the same kind of evidence-timeline entry the Measuring-results view writes (a directional read, no dollar figure, no note) and shows a plain confirmation: "Thanks, noted." It does not resolve the decision on its own; a "Worked" or "Didn't" tap here logs the read but the decision only moves to Verified once a terminal outcome is confirmed through the workspace's Measuring-results submit or the full close-out dialog. Use this when you just want to register a quick gut check without leaving the Feed; use the workspace when you have a dollar figure or notes worth capturing.

Verified: what the resolved state shows

Once a decision resolves, the Outcome section shows:

  • A green checkmark and the humanized outcome category (for example, Renegotiated, Vendor changed, Process improved, Risk accepted, Deferred, or No action taken), never the underlying database token.
  • If a realized dollar figure was captured, it shows beneath the category as "$X/yr realized" in green.
  • "Verified [date]" underneath, the date the decision resolved.
  • The confirmed evidence timeline, same format as during Measuring results.

This is a closed record. There's no way to re-open a Verified decision, deliberately: the resolve step is a one-way door so the learning loop and the network aggregates it feeds never see a decision counted twice.

What verifyOutcome and finalizeOutcome actually do

You don't interact with these functions directly, but understanding what they do explains why the close-out flow behaves the way it does.

finalizeOutcome is the single place any decision gets resolved, no matter which path got you there (the full close-out dialog, the terminal Measuring-results submit, or confirming an IQ-proposed evidence row). It:

  1. Confirms the decision belongs to your operator account and isn't already resolved (idempotent: if it's already resolved, it returns success without writing a second time, so a race between two capture paths can't double-count).
  2. Reads how many plan steps existed and how many were completed, if there was a structured plan, to record plan adherence alongside the outcome.
  3. Sanitizes any dollar figure you entered (non-negative, finite, capped at $100,000,000) and, if there was an original estimate, computes an impact accuracy percentage, how close the realized figure landed to the original estimate (100% means it matched exactly).
  4. Writes one row to the decision outcomes record: the closed reason, the outcome category, the estimated and actual impact, the impact accuracy, the plan step counts, your rating, and your three qualitative notes.
  5. Marks the underlying decision resolved, stamps the resolution time, and records the outcome category and dollar value on the decision itself so the Verified view above can render it.
  6. Mirrors the same outcome onto the structured plan record, if one exists, including whether the metric moved (true for a successful close, false for a failed one, unset for abandoned or no-longer-relevant).
  7. Runs the learning loop (best-effort): this is what teaches IQ's per-operator memory and the network-wide recommendation-accuracy aggregate whether this kind of recommendation tends to land. A failure here is logged but never blocks the resolution itself, your close-out always lands even if the learning step has a hiccup.
  8. Sends you an in-app notification confirming the outcome was recorded, and refreshes the decision, the Decisions list, Actions, and the Feed so the new state shows up everywhere immediately.

verifyOutcome is the entry point the UI calls (from the Measuring-results submit, from confirming an IQ-proposed evidence card, and internally). Before handing off to finalizeOutcome, it also marks any IQ-proposed evidence row you confirmed as confirmed, and refreshes the network evidence aggregate to reflect it.

The distinction matters for one reason: only a rating and a real closed reason (not a null "canceled without a verdict" state) count toward the network's success-rate math, and only a terminal, resolved decision writes to the outcomes record at all. Progress notes logged during Measuring results (Mixed, Too soon to tell, and anything written through "Log update") are stored on the evidence timeline for context, but they do not resolve anything and do not feed the learning loop until a terminal read closes the loop.

Tip

If you're not sure yet whether something worked, that's exactly what Too soon to tell and Mixed are for. Logging a progress note costs nothing and keeps the decision open; picking Worked or Didn't work is the one-way door that resolves it. There's no penalty for waiting.

Note

The rating you give is never shown to peers and never used to rank or shame anyone. It trains IQ's own sense of which kinds of recommendations, for your business specifically and across the network in aggregate, tend to be worth acting on. As an independent data trust, Verinode never sells this feedback, or any operator data behind it, to carriers.

Heads up

Actual impact is always a gain or zero, the fields reject negative numbers outright. If a decision genuinely cost you money rather than saved it, capture that in the closed reason (Failed; made things worse) and the "What didn't?" note rather than trying to enter a negative dollar figure.

Best-practice example

Say IQ recommended renegotiating a vendor contract, projecting $8,400 a year in savings. You work the plan, and two months later the vendor confirms new pricing by email. IQ reads that email, proposes "$700/mo realized," and the "IQ read your document" card shows up in the workspace's Measuring-results view. You click Confirm $700/mo, and the decision resolves immediately: outcome category Renegotiated, realized impact $8,400/yr, impact accuracy at 100%. No dialog, no typing, because the proof already told the story. On a messier decision, say a staffing change that only partly worked, you'd instead pick a directional read, add a one-line note ("Cut overtime but turnover ticked up"), and either log it as Mixed to keep measuring, or close it out through the full dialog with Abandoned and a candid "What would you do differently?" note so the next similar recommendation lands smarter.

Data sources

Data sources

  1. 1.Your plan steps, evidence, and closed-out feedback. Your business.
  2. 2.Documents and emails you forward as proof. Your business.
  3. 3.Per-operator and network learning aggregates. Verinode intelligence layer.
Was this helpful?