Skip to content

[ponytail] Delete legacy superpowers importer, import-legacy command and validateSearchQuality #115

Closed

Description

@devinmlowe

Cut

Delete the legacy "superpowers conversation-index" importer. It was a one-shot personal migration (it hardcodes EXCLUDED_PROJECT = "double-shot-latte"), it has already been run on the only machine that needed it, and it ships to every npm user.

Findings

  • delete src/migration/migrate.ts, src/migration/types.ts, src/migration/backfill-entity-conversations.ts, src/migration/add-informativeness-columns.ts (~1,060 lines together with the items below)
  • delete the import-legacy CLI command (src/interfaces/cli/index.ts:542) and the deprecated migrate --source / --batch-size / --force forwarding to it (src/interfaces/cli/index.ts:566, ~14 lines)
  • delete the source-comparing checks in src/migration/validate.ts (validateRowCounts, validateContent, the sourcePath branch); keep ValidationResult and the vector/FTS integrity checks that engram validate still needs
  • delete validateSearchQuality (src/migration/validate.ts:372, ~77 lines): it FTS-matches eight hardcoded English words and passes when at least one returns a row, which asserts nothing

Also update

  • CLAUDE.md and README.md mentions of import-legacy and validate --source
  • the CLI command count in CLAUDE.md (27 today)
  • tests that import the deleted modules

Verification

npm run build and npm run test:run green before and after. engram validate and engram validate --fix still run against a real database.

Activity

  1. added
    sub-issueChild task of a parent issue
    ponytailOver-engineering audit cut (2026-09-20)
    on Sep 21, 2026
  2. devinmlowe commented on Sep 21, 2026

    @devinmlowe
    OwnerAuthor

    PR: #129 (branch ponytail/legacy-importer, not merged).

    Tests: 137 files / 1798 tests before, 134 files / 1763 tests after; every dropped case covered deleted code (migrate.test.ts 20, informativeness-columns 4, backfill-entity-conversations 3, validateRowCounts / validateContent / validateSearchQuality 8). Build and lint green. git diff --shortstat: 28 files, +429 / -2390.

    Skipped: nothing. The surviving validate code moved to src/interfaces/cli/validate.ts; src/migration/ stays for backfill-event-ts.ts.

    Note for the maintainer: engram validate on the real store fails the pre-existing FTS hit rate (>80%) check (40-60% across runs); that check moved verbatim and is unrelated to this cut, but it looks like another ponytail candidate.

  3. added a commit that references this issue on Sep 21, 2026
  4. devinmlowe commented on Sep 21, 2026

    @devinmlowe
    OwnerAuthor

    Merged PR #129 into main with --no-ff (commit 25db27a); CHANGELOG conflict with #128 resolved by keeping both entries. Post-merge on main: build clean, 133 test files / 1745 tests passing (was 136 / 1780 after #128; all 35 dropped cases covered the deleted importer). Noted: the pre-existing FTS hit-rate check in validate fails on the real DB (40-60% vs 80% threshold); unrelated to this cut, tracked separately.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    ponytailOver-engineering audit cut (2026-09-20)sub-issueChild task of a parent issue

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions