Skip to content

feat(#591 followup): 7-day cron auto-expire silent gap on multi-day sessions #598

@michael-wojcik

Description

@michael-wojcik

Surfaced during PR #596 blind review (architect-F1).

Problem: CronCreate auto-expires recurring crons after 7 days (per platform schema). The wake mechanism's design relies on CronList-then-arm idempotency at workflow-start to re-arm post-expiry. This works as long as workflow commands run periodically.

Failure window: a session sits idle (no workflow commands invoked) for >7 days AND the cron expires. Wake mechanism is silently disabled until the next workflow command. Practical impact bounded — fully idle user isn't sending messages anyway.

Why deferred: fix is operationally complex relative to bounded impact. Cron-self-extension is impossible (the cron is the thing expiring). ScheduleWakeup-at-6.5d adds yet another state surface. Workflow-start age check doesn't help passive sessions.

Suggested fix scope: detect cron expiry on next workflow-start via CronList empty + STATE_FILE.armed_at >6d → trigger re-arm path. Edge case; defer until reachable.

Originating review: docs/review/591-blind-architect.md F1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    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