BaryoDev / BaryoDev/barakoCMS

Scheduling and reminders module: time-based triggers for any module

Open
#255 2 comments 0 reactions 1 assignee Claimed by @arnelirobles View on GitHub
enhancement primitive-module
Dominant language
C#
Stars
6
Forks
7
Avg merge
4h 42m
Merged PRs (30d)
307

Description

Part of #249.

Time-based triggers any module can hang work off: send this later, remind me then, run this on a schedule. Distinct from the workflow engine (which reacts to events); this reacts to time.

Three unrelated systems that reuse it: a CRM (follow-up reminder), a CMS (scheduled publish, which already exists ad hoc), a survey (close at a deadline). Primitive.

Contract:
- A scheduled entry with a due time, a target action, and a status, plus recurrence.
- A single sweep (the scheduled-content service is the seed of this) that fires due entries and hands them to the raising module, tenant-scoped.
- At-least-once with idempotency, so a missed sweep or a retry does not double-fire.

Done when: a module ships with tests (schedule, fire at due time with a fake clock, recurrence, idempotent retry, tenant isolation), and the existing content scheduler is refactored to sit on it rather than beside it.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.