Skip to content

[Data]: Issue numbers must be unique forever — never reuse IDs from deleted tasks #3

Description

@rosspeili

Which layer?

.hppm/store.json metadata

Severity feel

Data loss / orphan store entry / corrupted file

Before → after (redacted)

**Before:** Delete `#10`, create a new task → may become `#10` again (gap fill / reuse).

**After:** Delete `#10`, create task → `#N` where `N` is greater than any ID ever issued in that project (including deleted). Done and deleted tasks keep their numbers forever. Audit entries for deleted tasks remain unambiguous.

**Implementer notes:** Persist `nextIssueId` / `issueIdSeq` that never decreases. On project open, migrate seq to `max(existing ids, seq, ids in audit)`. Docs in data-model + task-drawer: “IDs are permanent.” Test: create → delete → create ⇒ IDs differ. Out of scope: renumbering/compacting IDs; cross-project global IDs.

Steps (in app and/or external editor)

  1. Note highest issue number in a project.
  2. Delete a mid-range task; create a new task.
  3. Confirm new ID is not a reused gap; audit still shows deleted task under original #.

Tracker sections present?

  • Critical
  • Very High
  • High
  • Med
  • None
  • Done
  • Custom / nonstandard headings

HPPM version

0.26

Checklist

  • Sample is redacted / synthetic
  • I can share a tiny fixture project if asked

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:markdownTracker *.md format, sections, checkbox linesneeds reproNeeds clearer steps, sample, or environment info

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions