feat(evidence): use server-side Qdrant BM25 retrieval
This commit is contained in:
@@ -13,7 +13,6 @@ export interface EvidenceJobState {
|
||||
export interface EvidencePreprocessingDependencies {
|
||||
runStage(argv: string[]): Promise<Record<string, unknown>>;
|
||||
persistJob(): void;
|
||||
semanticPreflight(): Promise<{ ok: true } | { ok: false; code: SemanticFailureCode }>;
|
||||
evidencePreflight(): Promise<{ ok: true } | { ok: false; code: SemanticFailureCode }>;
|
||||
requireRunId(value: unknown): string;
|
||||
numberRecord(value: unknown): Record<string, number> | undefined;
|
||||
@@ -139,9 +138,9 @@ export async function preprocessEvidence(
|
||||
}
|
||||
const policy = evidencePolicy(request.evidence, request.httpPrivateHostAllowlist);
|
||||
if (policy) return policy;
|
||||
const semantic = await deps.evidencePreflight();
|
||||
if (!semantic.ok) {
|
||||
return { status: "failed", code: semantic.code, runId: request.job.runId };
|
||||
const preflight = await deps.evidencePreflight();
|
||||
if (!preflight.ok) {
|
||||
return { status: "failed", code: preflight.code, runId: request.job.runId };
|
||||
}
|
||||
if (request.job.completedStages.includes("evidence") && !request.dryRun) {
|
||||
return {
|
||||
|
||||
@@ -412,7 +412,6 @@ export class WorkspacePreprocessingService {
|
||||
return {
|
||||
runStage: async (argv) => await this.runJsonStage(scope.runtime, argv),
|
||||
persistJob: () => this.state(scope.runtime.workspaceId).writeJob(scope.job),
|
||||
semanticPreflight: async () => await this.deps.semanticPreflight(scope.runtime.workspace),
|
||||
evidencePreflight: async () => await this.deps.evidencePreflight(scope.runtime.workspace),
|
||||
requireRunId: (value) => this.requireRunId(value),
|
||||
numberRecord: (value) => this.numberRecord(value),
|
||||
|
||||
Reference in New Issue
Block a user