Skip to content

fix(todo): stop overdue-flow spam, enforce urgent due date, reconcile charter - #41

Merged
xuyushun441-sys merged 1 commit into
mainfrom
optimize/todo
Jun 14, 2026
Merged

xuyushun441-sys merged 1 commit into
mainfrom
optimize/todo

Conversation

@xuyushun441-sys

Copy link
Copy Markdown
Contributor

Why

todo is the reference template other templates copy — its patterns must be exemplary and its charter must be honest. Three issues:

  1. Overdue flow spam: it triggers on record-after-update with no delta guard, so any edit of an already-overdue task re-notified the assignee.
  2. Unenforced rule: the due_date_required_for_urgent message shipped in all locales but no validation backed it.
  3. Charter vs reality: it claimed a project object, task_label junction, approval, sharing rule, and "no second locale" — none true (2 objects ship; 4 locales ship).

What changed (within caps; no new objects)

  • Overdue flow: previous.* delta guard → fires once on the transition into overdue-and-open; documented the scheduled-flow fork for time-based crossing.
  • Added the urgent-due-date validation.
  • Removed the dead recent_overdue_list widget key from all 4 locales.
  • Reconciled CHARTER: shipped objects = task + label; project/task_label/approval/sharing labelled roadmap; locales corrected to en + zh-CN + ja-JP + es-ES.

Verification

typecheck + objectstack build + repo format:check clean. Build: 2 Objects / 2 Flows.

🤖 Generated with Claude Code

… charter

todo is the reference template other templates copy, so its patterns must be
exemplary and its charter must match reality.

- Overdue flow re-fired on EVERY edit of an already-overdue task (it triggers
  on record-after-update with no delta guard), spamming the assignee. Add a
  `previous.*` guard so it fires once on the transition into overdue-and-open,
  and document that time-based crossing needs a scheduled-flow fork.

- The `due_date_required_for_urgent` validation message shipped in all locales
  but no rule enforced it. Add the validation (urgent tasks need a due date).

- Remove the dead `recent_overdue_list` dashboard-widget translation key from
  all four locales (the widget was migrated to the Overdue tab).

- Reconcile CHARTER with what actually ships: objects are `task` + `label`
  (project / task_label / approval / sharing are labelled roadmap, not claimed
  as shipped); locales are en + zh-CN + ja-JP + es-ES (the "no second locale"
  non-goal was false). Honest docs matter most on the template others copy.

typecheck + objectstack build + format:check clean (2 Objects, 2 Flows).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@xuyushun441-sys
xuyushun441-sys merged commit 7f10c9f into main Jun 14, 2026
3 checks passed
@xuyushun441-sys
xuyushun441-sys deleted the optimize/todo branch June 14, 2026 23:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants