Skip to content
Merged
Show file tree
Hide file tree
Changes from all 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
26 changes: 1 addition & 25 deletions apps/web/src/lib/organizations/auto-model-change-log.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,6 @@ describe('computeRelevantChangesForOrg', () => {
test('allow-list mode: new model from already-allowed provider is relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
},
});
Expand All @@ -92,7 +91,6 @@ describe('computeRelevantChangesForOrg', () => {
test('allow-list mode: new model from non-allowed provider is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
},
});
Expand All @@ -111,7 +109,6 @@ describe('computeRelevantChangesForOrg', () => {
test('allow-list mode: brand-new provider with new model is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
},
});
Expand All @@ -130,7 +127,6 @@ describe('computeRelevantChangesForOrg', () => {
test('allow-list mode: new model on the deny list is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
model_deny_list: ['z-ai/glm-5.1'],
},
Expand All @@ -144,7 +140,7 @@ describe('computeRelevantChangesForOrg', () => {
expect(relevantChangesIsEmpty(changes)).toBe(true);
});

test('legacy deny-list mode (empty deny lists): new model from any provider is relevant', () => {
test('no allow list: new model from any provider is relevant', () => {
const org = buildEnterpriseOrg({ settings: {} });
const oldSnapshot = buildSnapshot([{ slug: 'z-ai', models: ['z-ai/glm-5'] }]);
const newSnapshot = buildSnapshot([
Expand All @@ -158,25 +154,9 @@ describe('computeRelevantChangesForOrg', () => {
expect(changes.addedByReasonProvider.get('new-provider')).toEqual(['new-provider/foo']);
});

test('legacy deny-list mode: new model from denied provider is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: { provider_deny_list: ['bad-corp'] },
});
const oldSnapshot = buildSnapshot([{ slug: 'bad-corp', models: ['bad-corp/old'] }]);
const newSnapshot = buildSnapshot([
{ slug: 'bad-corp', models: ['bad-corp/old', 'bad-corp/new'] },
]);

const diff = computeSnapshotDiff(oldSnapshot, newSnapshot);
const changes = computeRelevantChangesForOrg(org, diff);

expect(relevantChangesIsEmpty(changes)).toBe(true);
});

test('removed from catalog: model that was accessible is recorded', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
},
});
Expand All @@ -193,7 +173,6 @@ describe('computeRelevantChangesForOrg', () => {
test('removed from allowed providers: model still in catalog but only via denied providers', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['openai'],
},
});
Expand All @@ -216,7 +195,6 @@ describe('computeRelevantChangesForOrg', () => {
test('removed model that was denied is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['z-ai'],
model_deny_list: ['z-ai/glm-4.0'],
},
Expand All @@ -233,7 +211,6 @@ describe('computeRelevantChangesForOrg', () => {
test('removed model still offered by another allowed provider is NOT relevant', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['openai', 'azure'],
},
});
Expand All @@ -255,7 +232,6 @@ describe('computeRelevantChangesForOrg', () => {
test('deterministic reason provider: picks first alphabetical allowed provider', () => {
const org = buildEnterpriseOrg({
settings: {
provider_policy_mode: 'allow',
provider_allow_list: ['azure', 'openai'],
},
});
Expand Down
7 changes: 1 addition & 6 deletions apps/web/src/lib/organizations/auto-model-change-log.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@ type Availability = { allowed: boolean; reasonProvider: string | null };
type PrecomputedRestrictions = {
modelDenySet: Set<string>;
providerAllowSet: Set<string> | undefined;
providerDenySet: Set<string>;
};

function precompute(restrictions: ModelRestrictions): PrecomputedRestrictions {
Expand All @@ -39,7 +38,6 @@ function precompute(restrictions: ModelRestrictions): PrecomputedRestrictions {
providerAllowSet: restrictions.providerAllowList
? new Set(restrictions.providerAllowList)
: undefined,
providerDenySet: new Set(restrictions.providerDenyList),
};
}

Expand Down Expand Up @@ -72,10 +70,7 @@ function checkAvailability(
: { allowed: false, reasonProvider: null };
}

const nonDeniedProvider = sortedProviders.find(slug => !precomputed.providerDenySet.has(slug));
return nonDeniedProvider
? { allowed: true, reasonProvider: nonDeniedProvider }
: { allowed: false, reasonProvider: null };
return { allowed: true, reasonProvider: sortedProviders[0] };
}

/**
Expand Down