Skip to content

[NIDX-05 workstream] Replace remaining administration and remove Bluge #14005

Description

@hanahmily

[NIDX-05 workstream] Replace remaining administration and remove Bluge

Parent: #13990
Blocked by: #14002, #14007, #14003, and #14004

Tracking parent — do not apply Backlog. Split this workstream only after NIDX-01 through NIDX-04 close. Dependency removal also requires explicit legacy-retirement approval.

End-state boundary

Every remaining verify, rebuild, union/dedup, index-mode copy destination, migration output, dump, maintenance, and CLI path uses native APIs. Runtime and offline retired dependencies are removed. Compatibility evidence remains only as neutral, immutable oracle fixtures; it does not retain a direct library import, module name, or runtime fallback.

Required behavior

  • Verify reports fixed valid counts and deterministic artifacts for missing segments, corrupt offsets, duplicate identities, and logical mismatches.
  • Rebuild, union/dedup, copy, and migration destinations publish exactly the declared logical records through crash-safe staging.
  • Dump and remaining callers handle historical and native directories through bounded native APIs.
  • The full two-binary matrix passes before dependency removal.
  • Removal introduces no format version, opening rewrite, replay, CRC32 processing, or unsupported search feature.
  • Writer exclusion is owned by BanyanDB's database lock; delete the obsolete index-local PID filename and every constant, filter, fixture, and test that names or depends on it.

Just-in-time decomposition gate

After all four predecessor workstreams close, file ordered leaves for the live remaining commands observed at that point. Keep verify, rebuild/union, copy/migration, dump/maintenance, and final dependency removal separate when their seams differ. Every non-removal leaf must replace a named production or CLI caller. The removal leaf is last and blocked by its sibling merges plus retirement approval. It must remove the remaining keyword occurrences and paths rather than merely making them unreachable. Apply Backlog to one unblocked leaf only.

Completion criteria

All future leaves merge; compatibility and crash matrices pass; and all of these final scans produce no output:

git grep -in bluge -- ':!docs/design/archive/**'
git ls-files | grep -i bluge
go list -deps ./... | grep -i bluge

The content scan covers the active repository surface, including Go source and tests, active documentation, modules, scripts/configuration, fixtures/provenance, messages, and generated license assets. The path scan covers every tracked filename. Archived design/research records and Git history are the only historical exemptions. No misspelling, split string, or neutral-looking alias may retain a runtime dependency. Once these gates pass, the umbrella may close.

Final lexical removal

NIDX-05 is the contract phase of the expand–migrate–contract sequence. Earlier implementation leaves add zero new case-insensitive bluge tokens or matching tracked paths; the last removal leaf deletes every pre-existing occurrence and matching path from the active repository surface. This includes imports, aliases, identifiers, filenames, the obsolete runtime filename, strings/messages, tests, fixtures/provenance, modules, scripts, configuration, active docs, and generated assets.

Compatibility evidence must use neutral oracle labels plus immutable revision/content hashes. Archived design/research records and Git history remain as provenance because they document the retired dependency; no active code, test, tool, or generated output may require them.

Design

BDB-NIDX-SPEC-001 revision 0.2 — NIDX-05 behavior

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions