chore(testing): Phase 9 — bun:test suite + CI gating with no-DB fakes
CI / typecheck + build (turbo) (push) Canceled after 0s
CI / typecheck + build (turbo) (push) Canceled after 0s
Added a real test suite (32 tests, 0 external services) using bun:test with in-process module mocking for @mcpedia/db, @mcpedia/queue, @mcpedia/core. Enablers: - apps/api: extracted createApp(deps?) factory + dashboard.ts module from index.ts so the HTTP surface is unit-testable (real queue is lazy-imported). - packages/core: exported shouldCreateRevision pure predicate; restoreRevision gained an opts.reindex seam for the chunk-rebuild contract. - apps/mcp: renamed smoke.test.ts -> smoke.ts (bun test now owns .test.ts), updated stale assertions (10 tools, 4 docs in docs section). - infra: turbo test task (cache:false), test scripts across packages, @types/bun + tsconfig base types, CI 'Test' step after Build. Packages with tests: embeddings(5), parser(5), search(8), core(4), mcp(6 auth-gates), api(8 contracts). All green: typecheck(4/4), test(6/6 pkgs), build(web). Live API verified /health, /metrics, /dashboard, /hooks/* auth gate on temp port.
This commit is contained in:
1 parent
0cdf261d40
commit
76f778c10d
25 files changed
+1055
-193
No files matched your search
@@ -84,6 +84,22 @@ export async function indexContentFile(
|
||||
return { indexed: true, chunks, revision };
|
||||
}
|
||||
|
||||
/**
|
||||
* Pure decision rule for the revision system: create a new revision only when
|
||||
* the body genuinely changed vs the latest snapshot.
|
||||
* - no prior revision (latestBody null) -> true (first snapshot)
|
||||
* - identical body -> false (no noise)
|
||||
* - different body -> true
|
||||
*
|
||||
* Exported separately so it can be unit-tested without a database.
|
||||
*/
|
||||
export function shouldCreateRevision(
|
||||
latestBody: string | null | undefined,
|
||||
body: string,
|
||||
): boolean {
|
||||
return latestBody == null || latestBody !== body;
|
||||
}
|
||||
|
||||
/**
|
||||
* Compare the incoming body against the latest revision's body; if different
|
||||
* (or no prior revision exists), create a new revision with an incremented
|
||||
|
||||
Reference in new issue
Block a user