feat: remove legacy OpenCode runtime

Cut product flows over to Coding/Pi and retain only the migration-owned v1 boundary. Promote supported native optional packages because electron-builder omitted pnpm transitive optional closure from the packaged ASAR.
This commit is contained in:
2026-08-24 12:17:43 +08:00
parent 61fede2b4d
commit 5a275b93a7
199 changed files with 1330 additions and 64725 deletions

View File

@@ -525,7 +525,7 @@ async function handleDownloadAssetToProject(
const body = await parseJsonBody<DownloadAssetInput>(req);
const projectId = readRequiredString(body.projectId, 'projectId');
const fileName = assetZipFileName(slug);
const projects = await ctx.opencodeProjectStore.listProjects();
const projects = await ctx.codingProjectStore.listProjects();
const project = projects.find((candidate) => candidate.id === projectId);
if (!project) {
throw new Error('Project not found');
@@ -1081,7 +1081,7 @@ async function handlePublishProjectSource(
return;
}
const appId = projectMetadata.app_id as string;
const localProject = (await ctx.opencodeProjectStore.listProjects())
const localProject = (await ctx.codingProjectStore.listProjects())
.find((candidate) => candidate.id === projectId);
if (!localProject) {
sendPublishSourceFailure(res, 404, 'PROJECT_NOT_FOUND', '本地项目不存在,请重新选择项目。');
@@ -1266,7 +1266,7 @@ async function handleStartReleaseJob(
sendJson(res, 400, { success: false, code: 'PROJECT_ID_REQUIRED', error: '缺少项目标识。' });
return;
}
const project = (await ctx.opencodeProjectStore.listProjects()).find((candidate) => candidate.id === projectId);
const project = (await ctx.codingProjectStore.listProjects()).find((candidate) => candidate.id === projectId);
if (!project) {
sendJson(res, 404, { success: false, code: 'PROJECT_NOT_FOUND', error: '本地项目不存在。' });
return;