Skip to content

feat: timer sentry type for periodic binding evaluation #660

Description

@mdproctor

Context

casehub-life's LifeReactiveWorkerProvisioner schedules Quartz heartbeat jobs (LifeHeartbeatJob) for sentinel capabilities. These sentinels periodically query case state and signal results back.

Currently the sentinel/heartbeat pattern is implemented entirely in the life layer — but the concept of "periodically re-evaluate bindings" is a general engine concern. A timer sentry type would let case definitions express periodic evaluation declaratively in YAML rather than requiring each app layer to build its own Quartz scheduling.

Proposal

Add a timer sentry type to the engine that fires periodically and triggers binding re-evaluation for the associated plan item. This would allow YAML case definitions to express recurring checks without app-layer Quartz wiring.

Motivation

  • Eliminates per-app heartbeat infrastructure (Quartz job, sentinel registry, cleanup observer)
  • Makes periodic evaluation a first-class engine concept
  • Aligns with CMMN timer event listeners

Filed from casehubio/life — Layer 7 integration work (life#8).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions