Skip to content

feat: rethink planned operation expiration logic #203

@corentin-core

Description

@corentin-core

Context

Currently, planned operations outside the 5-day tolerance window are silently advanced to the next period. This means a missed operation disappears from the forecast without any user awareness or action.

The current behavior:

  • Within 5 days of balance date: "late" (postponed to tomorrow)
  • Beyond 5 days: silently advanced to next period (effectively ignored)

Proposed solution

  • Rethink the expiration logic: don't silently ignore missed operations
  • Consider a more tolerant window (e.g. 1+ month) or a dedicated "pending user action" state
  • Define a clear state machine for operation lifecycle (pending → late → expired/cancelled)
  • Determine what happens if the user never acts (eventual automatic expiration?)

Acceptance criteria

  • Missed planned operations are not silently skipped
  • Clear expiration policy defined and implemented
  • Edge cases handled (recurring vs one-time, multiple missed iterations)

Related issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions