Skip to content

Add run-level linkage across related decision evaluations #10

@MuttleyD

Description

@MuttleyD

Context

MIDAS currently evaluates decisions as individual governed events, with each evaluation producing its own envelope, audit chain, and outcome.

However, many real-world decisioning scenarios involve multiple related evaluations that belong to the same higher-level execution instance or business journey.

Problem

There is currently no first-class way to link related decision evaluations together as part of the same run.

This makes it harder to:

  • understand how multiple decisions relate to the same end-to-end flow
  • trace execution across a journey rather than only at single-decision level
  • support future journey analytics and escalation tracking
  • distinguish isolated evaluations from evaluations that are part of a broader execution path

Proposed solution

Introduce a first-class run-level linkage model for MIDAS.

A Run should represent a higher-level execution instance that can link multiple related decision evaluations over time.

Each evaluation envelope should be able to reference a run_id, allowing envelopes produced during the same journey or execution path to be grouped together.

Scope

  • Define a canonical Run model
  • Introduce a stable run_id
  • Link evaluation envelopes to a run
  • Ensure multiple envelopes can share the same run_id
  • Expose run linkage through the API and/or envelope model
  • Preserve backward compatibility for evaluations that do not participate in a run

Acceptance criteria

  • A first-class Run model exists in the domain
  • Evaluation envelopes can reference a run_id
  • Multiple related evaluations can be linked to the same run_id
  • Run linkage is deterministic and serialisable
  • Existing single-evaluation flows continue to function without requiring run context
  • Feature is documented

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions