(cfg: ProjectsConfig)
| 311 | } |
| 312 | |
| 313 | function buildWorkspaceConfigLookup(cfg: ProjectsConfig): Map<string, WorkspaceConfigLookupEntry> { |
| 314 | const workspaceLookup = new Map<string, WorkspaceConfigLookupEntry>(); |
| 315 | |
| 316 | for (const [projectPath, project] of cfg.projects) { |
| 317 | const projectName = path.basename(projectPath) || projectPath || "unknown-project"; |
| 318 | for (const workspace of project.workspaces) { |
| 319 | if (!workspace.id) continue; |
| 320 | if (!workspace.name) continue; |
| 321 | workspaceLookup.set(workspace.id, { |
| 322 | workspaceName: workspace.name, |
| 323 | projectName, |
| 324 | parentWorkspaceId: workspace.parentWorkspaceId, |
| 325 | }); |
| 326 | } |
| 327 | } |
| 328 | |
| 329 | return workspaceLookup; |
| 330 | } |
| 331 | |
| 332 | function formatAncestorPlanPathInstructions( |
| 333 | entries: readonly AncestorPlanPathEntry[] |
no test coverage detected