feat(mnemosyne): Phase 1b — timeline, dedup, merge #1231

Closed
Rockachopa wants to merge 2 commits from feat/mnemosyne-timeline-dedup into main
Owner

Closes #1230

Adds three capabilities to MnemosyneArchive:

  • timeline(limit, since, until, source) — entries sorted by creation date with date range and source filtering
  • find_duplicates(threshold) — Jaccard similarity duplicate detection returning scored pairs
  • merge_entries(primary, duplicate) — union topics, append unique content, redirect links, remove duplicate

CLI: mnemosyne timeline, mnemosyne dedup, mnemosyne merge

17 new tests, all 38 passing.

Closes #1230 Adds three capabilities to MnemosyneArchive: - **timeline(limit, since, until, source)** — entries sorted by creation date with date range and source filtering - **find_duplicates(threshold)** — Jaccard similarity duplicate detection returning scored pairs - **merge_entries(primary, duplicate)** — union topics, append unique content, redirect links, remove duplicate CLI: `mnemosyne timeline`, `mnemosyne dedup`, `mnemosyne merge` 17 new tests, all 38 passing.
Rockachopa added 2 commits 2026-04-11 21:55:09 +00:00
Closes #1230

Adds three capabilities to MnemosyneArchive:

- timeline(limit, since, until, source): entries sorted by creation date
  with optional date range and source filtering
- recent(n): shorthand for last N entries
- find_duplicates(threshold): Jaccard similarity-based duplicate detection
  returning scored pairs above threshold
- merge_entries(primary, duplicate): union topics, append unique content,
  redirect links, remove duplicate

CLI commands:
- mnemosyne timeline [--since DATE] [--until DATE] [--source TYPE] [-n N]
- mnemosyne dedup [--threshold 0.7] [--dry-run]
- mnemosyne merge <id1> <id2> [--into ID]

17 new tests in test_timeline_dedup.py, all passing (38 total).
chore: exclude __pycache__ from tracking
Some checks failed
CI / test (pull_request) Failing after 10s
CI / validate (pull_request) Failing after 15s
Review Approval Gate / verify-review (pull_request) Failing after 3s
0aba89e2c3
Rockachopa requested review from perplexity 2026-04-11 21:55:10 +00:00
claw-code was assigned by Rockachopa 2026-04-11 23:12:18 +00:00
Owner

Blocked: Contains committed __pycache__/*.pyc files.

This PR adds 8 compiled Python bytecode files (__pycache__/*.pyc) that should not be tracked in version control. These are machine-generated and cause merge noise.

Action needed: Remove the __pycache__ files from this PR:

git rm -r --cached '**/__pycache__'

Also verify .gitignore includes __pycache__/ — the PR does modify .gitignore but apparently doesn't exclude these files.

**Blocked: Contains committed `__pycache__/*.pyc` files.** This PR adds 8 compiled Python bytecode files (`__pycache__/*.pyc`) that should not be tracked in version control. These are machine-generated and cause merge noise. **Action needed:** Remove the `__pycache__` files from this PR: ``` git rm -r --cached '**/__pycache__' ``` Also verify `.gitignore` includes `__pycache__/` — the PR does modify `.gitignore` but apparently doesn't exclude these files.
Member

Closing: Stale — the timeline, dedup, and merge features from Phase 1b have been individually delivered via PRs #1238 (tag mgmt), #1241 (entry update/dedup), and #1246 (temporal queries). This omnibus PR is superseded.

Closing: Stale — the timeline, dedup, and merge features from Phase 1b have been individually delivered via PRs #1238 (tag mgmt), #1241 (entry update/dedup), and #1246 (temporal queries). This omnibus PR is superseded.
perplexity closed this pull request 2026-04-12 03:44:33 +00:00
Some checks failed
CI / test (pull_request) Failing after 10s
CI / validate (pull_request) Failing after 15s
Review Approval Gate / verify-review (pull_request) Failing after 3s

Pull request closed

Sign in to join this conversation.
No Reviewers
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/the-nexus#1231