Skip to content

Tidy Up: "Generate @repeats in recent notes" doesn't recognize concrete-date @repeat(interval, <date>) tags #766

Description

@darrengillman

Checks

  • I confirm I have restarted NotePlan and this problem still persists.
  • I confirm I have reinstalled the Plugin and this problem still persists.
  • Is this a repeatable problem? Yes.

System

  • Device OS: [please fill in, e.g. macOS 15.0.1]
  • NotePlan Version: [please fill in]
  • Plugin Name & Version: Tidy Up v1.20.0, Repeat Extensions v1.2.0

Describe the bug
Since Repeat Extensions v1.2.0 (#760) added support for a concrete base date in @repeat(interval, <date>), running Repeat Extensions' own /generate repeats command correctly recognizes and processes these tags. However, running Tidy Up's Generate @repeats in recent notes command on the same note does not recognize them at all — it behaves as if no repeat is present. Plain @repeat(interval) tags (no concrete date) are still handled correctly by both commands.

Likely cause
If I'm reading it correctly, np.Tidy/src/tidyRepeats.js imports generateRepeats directly from jgclark.RepeatExtensions/src/repeatMain as a relative source-file import, so Tidy Up bundles a compiled snapshot of that code (and its transitive imports, including the repeat-detection regex in helpers/NPExtendedRepeat.js) into its own script.js at build time, rather than depending on Repeat Extensions as a live plugin. Tidy Up's last release (v1.20.0) predates the Repeat Extensions v1.2.0 merge, That would exactly explain why plain repeats still work (unaffected old code) while concrete-date repeats are silently ignored (new syntax the old bundled regex doesn't match).

Testing for the #760 update was always performed on a full build on a local fork, so this would not have arisen. Probably should have been flagged in the PR as a dependency.

If that's right, the fix would be a rebuild + version bump of Tidy Up to pick up the current helpers/NPExtendedRepeat.js, rather than a code change.

To Reproduce

  1. Add * task @repeat(1m, 2026-05-12) to a note and mark it complete.
  2. Run Repeat Extensions' /generate repeats on that note — it correctly generates the next repeat.
  3. Add another * task @repeat(1m, 2026-05-12) to a (different) note and mark it complete.
  4. Run Tidy Up's /Generate @repeats in recent notes — no repeat is generated for that task, even though the note was changed today (well within the default 7-day "recent" window).
  5. For comparison, a plain * task @repeat(1m) completed the same way is picked up correctly by Tidy Up.

Additional context
Related PR: #760

NB*
I think I also have a bug/regression with handling concrete dates in cancelled tasks, which I'll look at separately.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions