feat(comfy-cloud): Comfy Cloud 预设移到首位 + 新增站点默认选中
预设数组把 comfy-cloud 排第一;站点管理 openAdd 默认选 Comfy Cloud 预设 (预填 url+platform,只需贴 X-API-Key)。detect-race 测试补平台重置以保留竞态覆盖。 Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,14 @@
|
|||||||
const presets = [
|
const presets = [
|
||||||
|
{
|
||||||
|
id: 'comfy-cloud',
|
||||||
|
label: 'Comfy Cloud (工作流执行)',
|
||||||
|
platform: 'comfy_cloud',
|
||||||
|
defaultUrl: 'https://cloud.comfy.org',
|
||||||
|
initialSegment: 'apikey',
|
||||||
|
description: 'Comfy Cloud 工作流执行 API;API Key 填 X-API-Key,经 BoosAPI /comfy-cloud 适配端点供 Pixelle 等调用。',
|
||||||
|
recommendedSkipModelFetch: true,
|
||||||
|
recommendedModels: [],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id: 'codingplan-openai',
|
id: 'codingplan-openai',
|
||||||
label: '阿里云 Coding Plan (OpenAI)',
|
label: '阿里云 Coding Plan (OpenAI)',
|
||||||
@@ -130,16 +140,6 @@ const presets = [
|
|||||||
recommendedSkipModelFetch: true,
|
recommendedSkipModelFetch: true,
|
||||||
recommendedModels: [],
|
recommendedModels: [],
|
||||||
},
|
},
|
||||||
{
|
|
||||||
id: 'comfy-cloud',
|
|
||||||
label: 'Comfy Cloud (工作流执行)',
|
|
||||||
platform: 'comfy_cloud',
|
|
||||||
defaultUrl: 'https://cloud.comfy.org',
|
|
||||||
initialSegment: 'apikey',
|
|
||||||
description: 'Comfy Cloud 工作流执行 API;API Key 填 X-API-Key,经 BoosAPI /comfy-cloud 适配端点供 Pixelle 等调用。',
|
|
||||||
recommendedSkipModelFetch: true,
|
|
||||||
recommendedModels: [],
|
|
||||||
},
|
|
||||||
];
|
];
|
||||||
const urlMatchers = [
|
const urlMatchers = [
|
||||||
{ urlPrefix: 'https://coding.dashscope.aliyuncs.com/v1', id: 'codingplan-openai', platform: 'openai' },
|
{ urlPrefix: 'https://coding.dashscope.aliyuncs.com/v1', id: 'codingplan-openai', platform: 'openai' },
|
||||||
|
|||||||
@@ -10,6 +10,16 @@ export interface SiteInitializationPreset {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const presets: SiteInitializationPreset[] = [
|
const presets: SiteInitializationPreset[] = [
|
||||||
|
{
|
||||||
|
id: 'comfy-cloud',
|
||||||
|
label: 'Comfy Cloud (工作流执行)',
|
||||||
|
platform: 'comfy_cloud',
|
||||||
|
defaultUrl: 'https://cloud.comfy.org',
|
||||||
|
initialSegment: 'apikey',
|
||||||
|
description: 'Comfy Cloud 工作流执行 API;API Key 填 X-API-Key,经 BoosAPI /comfy-cloud 适配端点供 Pixelle 等调用。',
|
||||||
|
recommendedSkipModelFetch: true,
|
||||||
|
recommendedModels: [],
|
||||||
|
},
|
||||||
{
|
{
|
||||||
id: 'codingplan-openai',
|
id: 'codingplan-openai',
|
||||||
label: '阿里云 Coding Plan (OpenAI)',
|
label: '阿里云 Coding Plan (OpenAI)',
|
||||||
@@ -141,16 +151,6 @@ const presets: SiteInitializationPreset[] = [
|
|||||||
recommendedSkipModelFetch: true,
|
recommendedSkipModelFetch: true,
|
||||||
recommendedModels: [],
|
recommendedModels: [],
|
||||||
},
|
},
|
||||||
{
|
|
||||||
id: 'comfy-cloud',
|
|
||||||
label: 'Comfy Cloud (工作流执行)',
|
|
||||||
platform: 'comfy_cloud',
|
|
||||||
defaultUrl: 'https://cloud.comfy.org',
|
|
||||||
initialSegment: 'apikey',
|
|
||||||
description: 'Comfy Cloud 工作流执行 API;API Key 填 X-API-Key,经 BoosAPI /comfy-cloud 适配端点供 Pixelle 等调用。',
|
|
||||||
recommendedSkipModelFetch: true,
|
|
||||||
recommendedModels: [],
|
|
||||||
},
|
|
||||||
];
|
];
|
||||||
|
|
||||||
const urlMatchers: Array<{
|
const urlMatchers: Array<{
|
||||||
|
|||||||
@@ -960,8 +960,15 @@ export default function Sites() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setEditor({ mode: 'add' });
|
setEditor({ mode: 'add' });
|
||||||
setForm(createEmptySiteForm());
|
const base = createEmptySiteForm();
|
||||||
setSelectedInitializationPresetId(null);
|
const comfyPreset = getSiteInitializationPreset('comfy-cloud');
|
||||||
|
if (comfyPreset) {
|
||||||
|
setForm({ ...base, platform: comfyPreset.platform, url: comfyPreset.defaultUrl });
|
||||||
|
setSelectedInitializationPresetId(comfyPreset.id);
|
||||||
|
} else {
|
||||||
|
setForm(base);
|
||||||
|
setSelectedInitializationPresetId(null);
|
||||||
|
}
|
||||||
scrollToEditorTop();
|
scrollToEditorTop();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -110,6 +110,13 @@ describe('Sites detect race handling', () => {
|
|||||||
});
|
});
|
||||||
await flushMicrotasks();
|
await flushMicrotasks();
|
||||||
|
|
||||||
|
// 新增表单现在默认预选 Comfy Cloud 预设;本用例测试空平台下的检测竞态,
|
||||||
|
// 先把平台重置为空(等价于操作员清空平台选择),恢复检测前置条件。
|
||||||
|
await act(async () => {
|
||||||
|
findPlatformSelect(root).props.onChange('');
|
||||||
|
});
|
||||||
|
await flushMicrotasks();
|
||||||
|
|
||||||
const urlInput = findPrimarySiteUrlInput(root);
|
const urlInput = findPrimarySiteUrlInput(root);
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
urlInput.props.onChange({ target: { value: 'https://stale.example.com/v1' } });
|
urlInput.props.onChange({ target: { value: 'https://stale.example.com/v1' } });
|
||||||
@@ -190,6 +197,12 @@ describe('Sites detect race handling', () => {
|
|||||||
});
|
});
|
||||||
await flushMicrotasks();
|
await flushMicrotasks();
|
||||||
|
|
||||||
|
// 重置默认 Comfy Cloud 预选,恢复空平台检测前置条件。
|
||||||
|
await act(async () => {
|
||||||
|
findPlatformSelect(root).props.onChange('');
|
||||||
|
});
|
||||||
|
await flushMicrotasks();
|
||||||
|
|
||||||
const urlInput = findPrimarySiteUrlInput(root);
|
const urlInput = findPrimarySiteUrlInput(root);
|
||||||
await act(async () => {
|
await act(async () => {
|
||||||
urlInput.props.onChange({ target: { value: 'https://blur.example.com/v1' } });
|
urlInput.props.onChange({ target: { value: 'https://blur.example.com/v1' } });
|
||||||
|
|||||||
Reference in New Issue
Block a user