Forge
csharpdeeb25a2
1using CascadeIDE.Contracts;
2
3namespace CascadeIDE.Features.HybridIndex.Application;
4
5/// <summary>ADR 0106: пара workspace/solution под <c>[hybrid_index] scope_mode</c> без привязки к VM.</summary>
6[ComputingUnit]
7public static class HybridIndexScopeResolver
8{
9 /// <summary>Применить режим области (например <c>workspace</c> без solution в ключе SQLite vs <c>workspace+solution</c>).</summary>
10 public static (string WorkspaceRoot, string? SolutionPath) ApplyScopeMode(
11 string? scopeMode,
12 string workspaceRoot,
13 string? solutionPath)
14 {
15 var ws = (workspaceRoot ?? "").Trim();
16 if (string.IsNullOrWhiteSpace(ws))
17 return ("", null);
18
19 var mode = (scopeMode ?? "").Trim();
20 if (string.Equals(mode, "workspace", StringComparison.OrdinalIgnoreCase))
21 return (ws, null);
22 return (ws, solutionPath);
23 }
24}
25
View only · write via MCP/CIDE