Skip to content

Releases: thrialectics/threadlinking

v3.1.0

09 Mar 20:56

Choose a tag to compare

What's New

  • threadlinking_reindex MCP tool — rebuild semantic index without dropping to CLI (13 tools now)

Fixes

  • Lock ordering fix — updateThread no longer holds two locks simultaneously, eliminating deadlock risk under concurrent writes
  • Deterministic lock ordering in relate — threads locked alphabetically to prevent A-B vs B-A deadlock

Performance

  • Meta index carries counts — threadlinking list reads one small file instead of loading every thread from disk
  • Semantic search optimization — loads only matched thread files instead of all threads

Improvements

  • CLI contextual error tips — "thread not found" now suggests threadlinking list, etc.
  • Duplicate snippet detection — warns on exact-match duplicates within last 10 snippets
  • Thread relationships — threadlinking relate / unrelate to link related threads
  • Track error logging — hook errors written to ~/.threadlinking/debug.log instead of silently swallowed
  • README rewrite — stronger opening hook, MCP tools table
  • Plugin version synced to 3.1.0

v3.0.1 — Windows fixes & maintenance

09 Mar 01:53

Choose a tag to compare

What's Changed

  • Fixed plugin and skills implementation
  • Windows path normalization for .threadlinkingignore matching
  • Windows CI fixes (USERPROFILE for homedir(), skip Unix-only permission tests)
  • Security audit fixes (.env and IDE patterns in .gitignore)
  • Updated test harness for cross-platform path handling

v3.0.0 — File-per-thread architecture

09 Mar 01:51

Choose a tag to compare

What's New

Architecture overhaul

  • File-per-thread storage — each thread gets its own JSON file instead of one monolithic thread_index.json
  • Per-thread locking — different threads can be written concurrently without conflicts
  • Atomic writes — temp file + rename pattern prevents corruption on crash
  • Corruption recovery — automatic detection and recovery from corrupted thread files
  • Auto-migration — seamlessly upgrades from v2 format on first run

Quality

  • 194 tests across 7 test files
  • Cross-platform CI: Ubuntu, macOS, Windows (Node 20 + 22)
  • Concurrency and corruption edge cases covered

Other improvements

  • .threadlinkingignore support for filtering noise from pending files
  • prune command to clean ignored files from pending list
  • Structured OperationResult<T> pattern across all operations
  • Input sanitization (null bytes, control chars, length limits)
  • Path traversal protection via safeThreadPath()
  • Shared prompt() helper extracted to utils

Breaking changes

  • Storage format changed from single file to file-per-thread (migration is automatic)