Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions services/apps/merge_suggestions_worker/src/activities.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ import {
getMembers,
getMembersForLLMConsumption,
getRawMemberMergeSuggestions,
removeRawMemberMergeSuggestions,
updateMemberMergeSuggestionsLastGeneratedAt,
} from './activities/memberMergeSuggestions'
import {
Expand All @@ -21,6 +22,7 @@ import {
getOrganizations,
getOrganizationsForLLMConsumption,
getRawOrganizationMergeSuggestions,
removeRawOrganizationMergeSuggestions,
updateOrganizationMergeSuggestionsLastGeneratedAt,
} from './activities/organizationMergeSuggestions'

Expand All @@ -40,7 +42,9 @@ export {
getMembersForLLMConsumption,
getOrganizationsForLLMConsumption,
getRawOrganizationMergeSuggestions,
removeRawOrganizationMergeSuggestions,
getRawMemberMergeSuggestions,
removeRawMemberMergeSuggestions,
saveLLMVerdict,
mergeMembers,
mergeOrganizations,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -350,3 +350,11 @@ export async function getRawMemberMergeSuggestions(
)
return memberMergeSuggestionsRepo.getRawMemberSuggestions(similarityFilter, limit)
}

export async function removeRawMemberMergeSuggestions(suggestion: string[]): Promise<void> {
const memberMergeSuggestionsRepo = new MemberMergeSuggestionsRepository(
svc.postgres.writer.connection(),
svc.log,
)
await memberMergeSuggestionsRepo.removeRawMemberSuggestions(suggestion)
}
Original file line number Diff line number Diff line change
Expand Up @@ -427,3 +427,11 @@ export async function getRawOrganizationMergeSuggestions(

return suggestions
}

export async function removeRawOrganizationMergeSuggestions(suggestion: string[]): Promise<void> {
const organizationMergeSuggestionsRepo = new OrganizationMergeSuggestionsRepository(
svc.postgres.writer.connection(),
svc.log,
)
await organizationMergeSuggestionsRepo.removeRawOrganizationMergeSuggestions(suggestion)
}
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ export async function mergeMembersWithLLM(

if (members.length !== 2) {
console.log(`Failed getting members data in suggestion. Skipping suggestion: ${suggestion}`)
await memberActivitiesProxy.removeRawMemberMergeSuggestions(suggestion)
continue
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@ export async function mergeOrganizationsWithLLM(
console.log(
`Failed getting organization data in suggestion. Skipping suggestion: ${suggestion}`,
)
await organizationActivitiesProxy.removeRawOrganizationMergeSuggestions(suggestion)
continue
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,28 @@ class MemberMergeSuggestionsRepository {

return results.map((r) => [r.memberId, r.toMergeId])
}

async removeRawMemberSuggestions(suggestion: string[]): Promise<void> {
const query = `
delete from "memberToMergeRaw"
where
("memberId" = $(memberId) and "toMergeId" = $(toMergeId))
or
("memberId" = $(toMergeId) and "toMergeId" = $(memberId))
`

const replacements = {
memberId: suggestion[0],
toMergeId: suggestion[1],
}

try {
await this.connection.result(query, replacements)
} catch (error) {
this.log.error('Error removing raw member suggestions', error)
throw error
}
}
Comment thread
skwowet marked this conversation as resolved.
}

export default MemberMergeSuggestionsRepository
Original file line number Diff line number Diff line change
Expand Up @@ -300,6 +300,28 @@ class OrganizationMergeSuggestionsRepository {

return results.map((r) => [r.organizationId, r.toMergeId])
}

async removeRawOrganizationMergeSuggestions(suggestion: string[]): Promise<void> {
const query = `
delete from "organizationToMergeRaw"
where
("organizationId" = $(organizationId) and "toMergeId" = $(toMergeId))
or
("organizationId" = $(toMergeId) and "toMergeId" = $(organizationId))
`

const replacements = {
organizationId: suggestion[0],
toMergeId: suggestion[1],
}

try {
await this.connection.result(query, replacements)
} catch (error) {
this.log.error('Error removing raw organization suggestions', error)
throw error
}
}
Comment thread
skwowet marked this conversation as resolved.
}

export default OrganizationMergeSuggestionsRepository