Skip to content

fix: remove ancestor_conflict_check from all platforms#2158

Merged
bmadcode merged 1 commit intomainfrom
bmm-installer-conflict-error-to-warning
Mar 28, 2026
Merged

fix: remove ancestor_conflict_check from all platforms#2158
bmadcode merged 1 commit intomainfrom
bmm-installer-conflict-error-to-warning

Conversation

@bmadcode
Copy link
Copy Markdown
Collaborator

Summary

  • Removes ancestor_conflict_check config from claude-code, codex, opencode, and junie in platform-codes.yaml
  • Removes corresponding test suites that asserted the old blocking behavior
  • The ancestor directory walk was based on the false premise that these IDEs inherit skills from parent directories — none of them do (verified against official docs for Claude Code, Codex, and OpenCode)

Test plan

  • All 193 installation component tests pass
  • Lint, markdown lint, and format checks pass
  • Verify bmad init no longer errors when ancestor directories contain unrelated BMAD skills

The ancestor directory walk was based on the false premise that IDEs
like Claude Code inherit skills from parent directories — they do not.
The check blocked legitimate installations when unrelated BMAD skills
existed anywhere up the directory tree.
@bmadcode bmadcode merged commit aae6ddb into main Mar 28, 2026
7 checks passed
@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Mar 28, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: d6b27586-2253-44d2-a988-101d059213cd

📥 Commits

Reviewing files that changed from the base of the PR and between abfc56b and 99556b7.

📒 Files selected for processing (2)
  • test/test-installation-components.js
  • tools/installer/ide/platform-codes.yaml

📝 Walkthrough

Walkthrough

Removes ancestor_conflict_check configuration entries from platform installer definitions and deletes corresponding test suites that validated ancestor directory conflict detection for Claude Code, Codex, and OpenCode installers.

Changes

Cohort / File(s) Summary
Test Suite Removals
test/test-installation-components.js
Deleted three test suites (Tests 10, 12, 15) that verified ancestor conflict behavior for Claude Code, Codex, and OpenCode installers. Removed configuration assertions checking ancestor_conflict_check === true. Replaced each suite with a comment noting ancestor conflict check no longer applies.
Platform Configuration
tools/installer/ide/platform-codes.yaml
Removed ancestor_conflict_check configuration entries from installer definitions for claude-code, codex, junie, and opencode platforms.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch bmm-installer-conflict-error-to-warning

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@augmentcode
Copy link
Copy Markdown

augmentcode bot commented Mar 28, 2026

🤖 Augment PR Summary

Summary: This PR removes platform-level ancestor_conflict_check configuration to stop blocking installs when ancestor directories contain BMAD skills.

Changes:

  • Drops ancestor_conflict_check from platform-codes.yaml for Claude Code, Codex, OpenCode, and Junie
  • Removes test assertions that required the flag to be enabled
  • Deletes the dedicated “ancestor conflict” test suites that validated the old blocking behavior

Rationale/Notes: Based on updated understanding that these IDEs don’t inherit skills from parent directories, nested-workspace installs should no longer fail due to ancestor scans.

🤖 Was this summary useful? React with 👍 or 👎

Copy link
Copy Markdown

@augmentcode augmentcode bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review completed. 2 suggestions posted.

Fix All in Augment

Comment augment review to trigger a new review at any time.

}

console.log('');
// Test 10: Removed — ancestor conflict check no longer applies (no IDE inherits skills from parent dirs)
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

test/test-installation-components.js:440 — With the ancestor-conflict suites removed, there’s no longer a test that asserts the new intended behavior (setup succeeds even when an ancestor dir contains BMAD skills), which could let regressions slip in if defaults/config change later. Consider adding at least one positive test case for this scenario for one of the affected IDEs.

Severity: medium

Other Locations
  • test/test-installation-components.js:492
  • test/test-installation-components.js:609

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

@@ -33,7 +33,6 @@ platforms:
legacy_targets:
- .claude/commands
target_dir: .claude/skills
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tools/installer/ide/platform-codes.yaml:35 — After removing ancestor_conflict_check from platform configs, there are still repo docs that state it’s required (e.g. tools/docs/native-skills-migration-checklist.md mentions it for Claude/Codex/OpenCode), which is now likely misleading. Consider aligning those docs/comments with the new behavior to avoid future confusion.

Severity: low

Fix This in Augment

🤖 Was this useful? React with 👍 or 👎, or 🚀 if it prevented an incident/outage.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant