fix: keep new.gholaktala.ir as Hamkar, not Khanegi

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
2026-08-11 17:26:00 +03:30
co-authored by Cursor
parent 51e350405a
commit 0aeb17bd1b
2 changed files with 133 additions and 1 deletions
+19 -1
View File
@@ -35,6 +35,11 @@ const FORCE_KHANEGI: Array<{ domain?: string; name?: string; externalId?: number
{ domain: 'goldaliii.com' },
];
/** Never mix with FORCE_KHANEGI — these sold versions are Hamkar (site/* APIs). */
const FORCE_HAMKAR: Array<{ domain?: string; name?: string; externalId?: number }> = [
{ domain: 'new.gholaktala.ir' },
];
/** Canonical public domains after migrations */
const DOMAIN_OVERRIDES: Record<string, { domain: string; appUrl: string; nodeServer: string }> = {
'24gold.app': {
@@ -87,6 +92,19 @@ function classifyProduct(row: SourceUser, domains: string[]): {
confident: boolean;
reason: string;
} {
const forcedHamkar = FORCE_HAMKAR.find((item) => {
if (item.externalId && item.externalId === row.id) return true;
if (item.domain && domains.includes(item.domain)) return true;
return false;
});
if (forcedHamkar) {
return {
product: 'hamkar',
confident: true,
reason: `manual override hamkar (${forcedHamkar.domain || forcedHamkar.externalId})`,
};
}
const forced = FORCE_KHANEGI.find((item) => {
if (item.externalId && item.externalId === row.id) return true;
if (item.domain && domains.includes(item.domain)) return true;
@@ -96,7 +114,7 @@ function classifyProduct(row: SourceUser, domains: string[]): {
return {
product: 'khanegi',
confident: true,
reason: `manual override (${forced.domain || forced.externalId})`,
reason: `manual override khanegi (${forced.domain || forced.externalId})`,
};
}