fix(ci): resolve langbot-plugin from PyPI and clear lint failures

CI on feat/sandbox failed across Unit Tests, Lint and Build Dev Image.
Root causes and fixes:

- pyproject.toml had a [tool.uv.sources] editable override pinning
  langbot-plugin to ../langbot-plugin-sdk. That path only exists in a
  paired local checkout, so `uv sync` failed on every CI runner
  ("Distribution not found"). Remove the override and regenerate uv.lock
  so langbot-plugin==0.4.0b1 resolves from PyPI, matching master.

- tests/integration/api/test_pipelines.py: the pipeline extensions
  endpoint now calls ap.skill_service.list_skills(); add the missing
  skill_service mock to the fake_pipeline_app fixture (the test came
  from master, the endpoint change from feat/sandbox).

- Apply ruff format to three src files and prettier to three web files
  that had committed formatting drift, failing `ruff format --check`
  and `pnpm lint`.
This commit is contained in:
Junyan Qin
2026-05-21 13:38:27 +08:00
parent a39c4d5665
commit 7cf4e58ed8
9 changed files with 3614 additions and 3631 deletions

View File

@@ -58,4 +58,4 @@ export class ExtensionCardVO implements IExtensionCardVO {
this.tools = prop.tools;
this.mode = prop.mode;
}
}
}

View File

@@ -67,15 +67,15 @@ export default function PluginCardComponent({
cardVO.type === 'mcp'
? 'border-sky-500 text-sky-600 dark:border-sky-400 dark:text-sky-300'
: cardVO.type === 'skill'
? 'border-emerald-500 text-emerald-600 dark:border-emerald-400 dark:text-emerald-300'
: 'border-violet-500 text-violet-600 dark:border-violet-400 dark:text-violet-300'
? 'border-emerald-500 text-emerald-600 dark:border-emerald-400 dark:text-emerald-300'
: 'border-violet-500 text-violet-600 dark:border-violet-400 dark:text-violet-300'
}`}
>
{cardVO.type === 'mcp'
? 'MCP'
: cardVO.type === 'skill'
? t('common.skill')
: t('market.typePlugin')}
? t('common.skill')
: t('market.typePlugin')}
</Badge>
)}
{cardVO.debug && (

View File

@@ -51,9 +51,7 @@ export default function PluginComponentList({
)}
{!useBadge && (
<div
className="flex flex-row items-center justify-start gap-[0.2rem]"
>
<div className="flex flex-row items-center justify-start gap-[0.2rem]">
{kindIconMap[kind]}
{responsive ? (
<span className="hidden md:inline">
@@ -74,4 +72,4 @@ export default function PluginComponentList({
{componentKindList.length === 0 && <div>{t('market.noComponents')}</div>}
</>
);
}
}