mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-09-20 00:11:37 +00:00
* refactor: migrate from KuzuDB to LadybugDB v0.15 KuzuDB was archived (Apple acquisition, Oct 2025). LadybugDB is the community fork with full API compatibility. - Package swap: kuzu → @ladybugdb/core, kuzu-wasm → @ladybugdb/wasm-core - Rename all internal paths: kuzu → lbug (adapters, schema, storage) - Storage path: .gitnexus/kuzu → .gitnexus/lbug (with auto-cleanup) - Add explicit VECTOR extension loading (required in v0.15) - Update CI workflow, documentation, and all tests - 1151 unit + 27 integration tests passing Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix: address code review findings (P1-P3) P1: Fix WASM adapter to use getAll() API, wire cleanupOldKuzuFiles into analyze command, add symlink path traversal protection. P2: Cache VECTOR extension load state, batch augmentation engine queries (20→4), fix web getCopyQuery for multi-language tables, fix stale KuzuDB references, correct brainstorm package names. P3: Complete lbug-wasm.d.ts type declarations, batch semantic search per-label, update stale BM25 comment. * chore: remove outdated KuzuDB migration brainstorming document * fix: load FTS extension in MCP pool adapter on init The read-only pool adapter never loaded the FTS extension, so all QUERY_FTS_INDEX calls failed silently. This broke search-pool and augmentation integration tests, and caused empty results in the web UI server mode. * feat: implement shared Database caching and connection reference counting * feat: enhance KuzuDB migration handling and status reporting * fix: mock cleanupOldKuzuFiles in local backend callTool tests * fix: update mock for cleanupOldKuzuFiles and adjust imports in callTool tests --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
36 lines
1.1 KiB
TypeScript
36 lines
1.1 KiB
TypeScript
/**
|
|
* Augment CLI Command
|
|
*
|
|
* Fast-path command for platform hooks.
|
|
* Shells out from Claude Code PreToolUse / Cursor beforeShellExecution hooks.
|
|
*
|
|
* Usage: gitnexus augment <pattern>
|
|
* Returns enriched text to stdout.
|
|
*
|
|
* Performance: Must cold-start fast (<500ms).
|
|
* Skips unnecessary initialization (no web server, no full DB warmup).
|
|
*/
|
|
|
|
import { augment } from '../core/augmentation/engine.js';
|
|
|
|
export async function augmentCommand(pattern: string): Promise<void> {
|
|
if (!pattern || pattern.length < 3) {
|
|
process.exit(0);
|
|
}
|
|
|
|
try {
|
|
const result = await augment(pattern, process.cwd());
|
|
|
|
if (result) {
|
|
// IMPORTANT: Write to stderr, NOT stdout.
|
|
// LadybugDB's native module captures stdout fd at OS level during init,
|
|
// which makes stdout permanently broken in subprocess contexts.
|
|
// stderr is never captured, so it works reliably everywhere.
|
|
// The hook reads from the subprocess's stderr.
|
|
process.stderr.write(result + '\n');
|
|
}
|
|
} catch {
|
|
// Graceful failure — never break the calling hook
|
|
process.exit(0);
|
|
}
|
|
}
|