| … | … | @@ -1,14 +1,71 @@ | |
| 28 | + | const config = decodeClaudeSettings(instance.config ?? {}); | |
| 29 | + | if (Option.isNone(config)) continue; | |
| 30 | + | const env = yield* mergeProviderInstanceEnvironment(instance.environment, environment); | |
| 31 | + | roots.push(yield* resolveClaudeHomePath(config.value, env)); | |
🟠 High orchestration-v2/workflowScriptQuery.ts:31
When CLAUDE_CONFIG_DIR is relative, this query searches under the server cwd and rejects workflow scripts that are under the session’s config root. resolveClaudeHomePath receives no session cwd here, unlike the workflow-file resolution in ClaudeAdapterV2.ts; resolve the relative value against the session cwd consistently.
No longer relevant as of 0c3d2edb11b1203152fcb3ebc6f519c883441e67
Fixed in 0c3d2ed. The existing typed threadId is forwarded by WS; the query derives persisted worktree cwd, falling back to project workspace root. Only inherited relative CLAUDE_CONFIG_DIR uses that cwd; explicit homePath retains server normalization and precedence. The real persisted-thread/temp-checkout regression failed before and now passes, with all 8 workflow/transcript cases green. Both R5 reviewers verified the full layer.