JuliusBrussee/caveman · error

recordOutcome: confidence is required and must be a number w

Error message

recordOutcome: confidence is required and must be a number within [0,1]

What it means

Error "recordOutcome: confidence is required and must be a number within [0,1]" thrown in JuliusBrussee/caveman.

Source

Thrown at packages/mastra/src/index.ts:676

      throw new Error(`recordOutcome: evidence.${key} must be a string, number, or boolean`);
    }
    if (typeof value === "number" && !Number.isFinite(value)) {
      throw new Error(`recordOutcome: evidence.${key} must be a finite number`);
    }
    const ref = `${key}:${String(value)}`;
    if (!ref.slice(key.length + 1)) throw new Error(`recordOutcome: evidence.${key} must be non-empty`);
    return ref;
  });
  if (evidenceRefs.length === 0) {
    throw new Error("recordOutcome: evidence must contain at least one reference");
  }
  if (evidenceRefs.length > MAX_EVIDENCE_REFS) {
    throw new Error(`recordOutcome: evidence must contain at most ${MAX_EVIDENCE_REFS} references`);
  }

  const confidence = input.confidence;
  if (typeof confidence !== "number" || !Number.isFinite(confidence) || confidence < 0 || confidence > 1) {
    throw new Error("recordOutcome: confidence is required and must be a number within [0,1]");
  }
  if (typeof input.source !== "string" || !OUTCOME_SOURCES.has(input.source)) {
    throw new Error("recordOutcome: source is required and must be one of ci|environment|database|business_event|human");
  }

  const occurredAt = input.occurredAt === undefined ? new Date() : new Date(input.occurredAt);
  if (Number.isNaN(occurredAt.getTime())) {
    throw new Error("recordOutcome: occurredAt must be a valid date");
  }

  const body = JSON.stringify({
    correlation_kind: "task",
    correlation_id: taskId,
    source: input.source,
    observed_outcome: `${contract} ${stableStringify(input.values, "values")}`,
    confidence,
    evidence_refs: evidenceRefs,
    occurred_at: occurredAt.toISOString(),

View on GitHub (pinned to 27d5a3981a)

Solutions

  1. Pass confidence as a number within [0,1].

When it happens

Trigger: Thrown at packages/mastra/src/index.ts:676 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of JuliusBrussee/caveman@27d5a3981a (2026-08-15). Data as JSON: /api/errors/d9d84ca7493dd372. Report an issue: GitHub.