Dashboard › craft › Craft resolveWorkspaceConfig: github me…
019f8997-676a-77ce-9fb2-aba988ae6543| Project | Hits | Last recalled |
|---|---|---|
| opencode-lore | 1 | 2026-07-27 |
Trap: merging a workspace-level github override into base github config via a naive shallow spread can produce a truthy-but-incomplete github object (e.g. only projectPath set, no owner/repo) — even when the BASE config has no github block at all. Since it's truthy, getGlobalGitHubConfig() (config.ts:471) treats it as 'configured' and skips its git-remote-inference fallback, breaking projects relying on auto-detected owner/repo. Fix (config.ts, PR #848, committed 42d17f0): compute mergedGithub, adopt it only if owner && repo are BOTH present; otherwise leave github unset so getGlobalGitHubConfig() still falls back to git-remote. Verified across base-has-github+projectPath-override, base-no-github+projectPath-only, empty github:{}, and owner-only-override cases; regression test added in config.test.ts. Confirmed fixed by Cursor Bugbot (High, bug bd9608c5) and independent adversarial review.