feat: implement runCommand wrapper and refactor command executions across modules
This commit is contained in:
@@ -21,7 +21,7 @@ async function getAuthenticatedModels(
|
||||
api: OpenClawPluginApi,
|
||||
): Promise<Array<{ model: string; provider: string; authenticated: boolean }>> {
|
||||
try {
|
||||
const models = fetchAuthenticatedModels();
|
||||
const models = await fetchAuthenticatedModels();
|
||||
|
||||
// Map to the format expected by assignModels()
|
||||
return models.map((m) => {
|
||||
|
||||
@@ -39,7 +39,7 @@ export function createHealthTool() {
|
||||
for (const pid of projectIds) {
|
||||
const project = getProject(data, pid);
|
||||
if (!project) continue;
|
||||
const { provider } = resolveProvider(project);
|
||||
const { provider } = await resolveProvider(project);
|
||||
|
||||
for (const role of ["dev", "qa"] as const) {
|
||||
const fixes = await checkWorkerHealth({
|
||||
|
||||
@@ -124,7 +124,7 @@ export function createProjectRegisterTool() {
|
||||
const repoPath = resolveRepoPath(repo);
|
||||
|
||||
// 3. Create provider and verify it works
|
||||
const { provider, type: providerType } = createProvider({ repo });
|
||||
const { provider, type: providerType } = await createProvider({ repo });
|
||||
|
||||
const healthy = await provider.healthCheck();
|
||||
if (!healthy) {
|
||||
|
||||
@@ -68,7 +68,7 @@ Examples:
|
||||
}
|
||||
|
||||
const { project } = await resolveProject(workspaceDir, groupId);
|
||||
const { provider, type: providerType } = resolveProvider(project);
|
||||
const { provider, type: providerType } = await resolveProvider(project);
|
||||
|
||||
const issue = await provider.getIssue(issueId);
|
||||
|
||||
|
||||
@@ -70,7 +70,7 @@ Examples:
|
||||
const workspaceDir = requireWorkspaceDir(ctx);
|
||||
|
||||
const { project } = await resolveProject(workspaceDir, groupId);
|
||||
const { provider, type: providerType } = resolveProvider(project);
|
||||
const { provider, type: providerType } = await resolveProvider(project);
|
||||
|
||||
const issue = await provider.createIssue(title, description, label, assignees);
|
||||
|
||||
|
||||
@@ -60,7 +60,7 @@ Examples:
|
||||
const workspaceDir = requireWorkspaceDir(ctx);
|
||||
|
||||
const { project } = await resolveProject(workspaceDir, groupId);
|
||||
const { provider, type: providerType } = resolveProvider(project);
|
||||
const { provider, type: providerType } = await resolveProvider(project);
|
||||
|
||||
const issue = await provider.getIssue(issueId);
|
||||
const currentState = provider.getCurrentStateLabel(issue);
|
||||
|
||||
@@ -54,7 +54,7 @@ export function createWorkFinishTool(api: OpenClawPluginApi) {
|
||||
const issueId = worker.issueId ? Number(worker.issueId.split(",")[0]) : null;
|
||||
if (!issueId) throw new Error(`No issueId for active ${role.toUpperCase()} on ${project.name}`);
|
||||
|
||||
const { provider } = resolveProvider(project);
|
||||
const { provider } = await resolveProvider(project);
|
||||
const repoPath = resolveRepoPath(project.repo);
|
||||
const issue = await provider.getIssue(issueId);
|
||||
|
||||
|
||||
@@ -42,7 +42,7 @@ export function createWorkStartTool(api: OpenClawPluginApi) {
|
||||
|
||||
if (!groupId) throw new Error("projectGroupId is required");
|
||||
const { project } = await resolveProject(workspaceDir, groupId);
|
||||
const { provider } = resolveProvider(project);
|
||||
const { provider } = await resolveProvider(project);
|
||||
|
||||
// Find issue
|
||||
let issue: { iid: number; title: string; description: string; labels: string[]; web_url: string; state: string };
|
||||
|
||||
Reference in New Issue
Block a user