chore: sync upstream updates (core v6.3.0, TEA v1.12.2, GDS v0.3.0)#60
Open
tgorka wants to merge 4 commits into
Open
chore: sync upstream updates (core v6.3.0, TEA v1.12.2, GDS v0.3.0)#60tgorka wants to merge 4 commits into
tgorka wants to merge 4 commits into
Conversation
Complements clean-orphaned-skills.ts (which removes whole orphan skill directories) by detecting individual files that survive inside skill directories that still exist. For example, when upstream renames or removes a sub-file while keeping the skill's top-level directory, the stale file is never cleaned up because sync only copies/overwrites. Multiple upstream sources can contribute into the same plugin skill directory (e.g., skills/research/ receives content from both core and GDS), so the expected file set is the union across all enabled sources, plus SKILL.md (generated) and plugin-only data. Run: bun run find-orphans # report all sources bun run find-orphans -- --source core # filter report bun run find-orphans:delete # delete orphans Opt-in only — not wired into sync-all, mirroring clean:orphaned's invocation pattern.
Upstream release: https://github.com/bmad-code-org/BMAD-METHOD/releases/tag/v6.3.0 Notable upstream changes pulled in: - bmad-init skill eliminated; config now loads from _bmad/bmm/config.yaml - Dev personas Barry/Quinn/Bob consolidated into Developer (Amelia) — corresponding skill dirs removed (bmad-agent-qa, bmad-agent-quick-flow- solo-dev, bmad-agent-sm) - spec-wip.md singleton replaced by spec-{slug}.md (status field) - Custom content installation removed in favor of marketplace-based install Tooling fix included: clean-orphaned-skills.ts now also checks src/core-skills/ for valid skill names. Upstream renamed src/core/skills/ → src/core-skills/ at v6.2.x but the cleanup script was still pointing at the old path, causing it to wrongly remove core skills that sync had just populated (bmad-brainstorming, bmad-distillator, etc.). Backward-compatible: older paths are still checked as fallbacks. Plugin version bumped to 6.3.0.0 via bun run bump-core.
Upstream releases covered: v1.8.0 through v1.12.2 Latest at https://github.com/bmad-code-org/bmad-method-test-architecture-enterprise/releases Notable upstream changes pulled in: - v1.9.0: Skills made self-contained with embedded resources (tea-index.csv) - v1.9.1: Playwright 1.59 compatibility, banner and doc cross-link updates - v1.10+: Continued refinements to testarch workflows (atdd, trace, nfr, ci, framework, automate, test-design, test-review, teach-me-testing) The fetch-latest bump picked v1.12.2 rather than the v1.9.1 referenced in issue PabloLION#58 because several intermediate releases have shipped since the issue was opened. Happy to pin to v1.9.1 via --tag if preferred — this brings the plugin to the actual latest TEA release. Plugin version bumped to 6.3.0.1 via bun run bump-module --source tea.
Upstream releases covered: v0.2.3, v0.2.4, v0.3.0 Latest at https://github.com/bmad-code-org/bmad-module-game-dev-studio/releases Notable upstream changes pulled in: - v0.2.2: All 22 workflows renamed with gds- prefix (applied earlier, inherited here) - v0.2.3: Workflow refs changed from markdown links to bare paths (Opencode compatibility) - v0.2.4: Hardcoded _bmad/ paths replaced with relative / skill: prefixes (future-proofing) - v0.3.0: Latest tag — brings plugin to newest GDS release Structural changes surfaced by find-orphan-files: - gds-create-gdd: steps/ → steps-c/ reorganization — 15 old step files removed - gds-quick-dev: steps/ → steps-c/ reorganization — 6 old step files removed - 3 orphan skill dirs removed by clean:orphaned (create-prd, gds-quick-dev-new-preview, gds-quick-spec) - 5 new game-dev agents regenerated The fetch-latest bump picked v0.3.0 rather than the v0.2.4 referenced in issue PabloLION#56 because v0.3.0 shipped between the issue opening and this sync. Happy to pin to v0.2.4 via --tag if preferred. Plugin version bumped to 6.3.0.2 via bun run bump-module --source gds.
tgorka
added a commit
to tgorka/bmad-plugin
that referenced
this pull request
Apr 19, 2026
Brings main up to 6.3.0.2 (core v6.3.0, TEA v1.12.2, GDS v0.3.0) so the fork's main branch can be used as a Claude Code marketplace source for testing before upstream PR PabloLION#60 merges.
This was referenced Apr 28, 2026
Closed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi @PabloLION — first off, huge thanks for maintaining this plugin. I use BMAD via Claude Code every day across several projects, and this plugin is a big part of why that workflow holds together. Can't wait to use the v6.3.0 agents and skills in production, and I'm happy to help however is useful — iterating on this PR, splitting it, pinning to specific versions, dropping the helper script, future syncs, whatever.
Summary
Bundled sync of all three upstreams to their latest releases, bringing the plugin to 6.3.0.2.
Also adds a small helper script
scripts/find-orphan-files.tsto detect stale files that the current sync tooling leaves behind (see below).Note: the fetch-latest bumps picked v1.12.2 (TEA) and v0.3.0 (GDS) rather than the v1.9.1 and v0.2.4 referenced in the issues because several intermediate releases have shipped since the issues were opened. Happy to pin to the issue-specific versions via
--tagif you'd prefer — just let me know.Upstream releases:
Notable upstream changes
core v6.3.0
bmad-initskill eliminated — config loads directly from_bmad/bmm/config.yamlbmad-agent-qa,bmad-agent-quick-flow-solo-dev,bmad-agent-sm) are removed in this commitspec-wip.mdreplaced withspec-{slug}.md(status field)TEA v1.12.2 (covering v1.8.0+)
tea-index.csv)GDS v0.3.0 (covering v0.2.3, v0.2.4, v0.3.0)
_bmad/paths replaced with relative /skill:prefixessteps/→steps-c/) ingds-create-gddandgds-quick-dev— old files removed viafind-orphan-filesSmall tooling fix bundled in
The sync for core surfaced a latent path-mismatch in
scripts/clean-orphaned-skills.ts: it was looking atsrc/core/skills/andsrc/core/workflows/, but upstream renamed this tosrc/core-skills/at v6.2.x. Result: after sync,clean:orphanedwas wrongly removing freshly-synced core skill dirs (bmad-brainstorming,bmad-distillator, etc.) because those names weren't in its "valid" set.Fix is minimal and backward-compatible — the old paths are still checked as fallbacks. Included inside the
coresync commit so the tree passes validation after each commit.New helper:
find-orphan-files.tsclean:orphanedremoves whole orphan skill directories. Individual files left behind inside surviving skill directories — for example, the GDSsteps/→steps-c/reorganization or the TEA embedded-resources refactor — survive sync because sync only copies/overwrites. This script walksplugins/bmad/skills/and reverse-maps each file through the same workflow iteration and skip filters that sync uses, reporting (or deleting with--delete) anything whose upstream origin is gone.Opt-in only (not wired into
sync-all) — same invocation pattern asclean:orphaned. Happy to remove or split into a separate PR if you'd prefer.Commit structure
Each upstream sync is its own commit so reverts and cherry-picks stay clean:
feat(scripts): add find-orphan-files ...chore: sync upstream core v6.2.2 → v6.3.0(includes theclean-orphaned-skillsfix and thebump-coreversion changes)chore: sync upstream TEA v1.7.3 → v1.12.2(includesbump-module --source tea)chore: sync upstream GDS v0.2.2 → v0.3.0(includesbump-module --source gds)Note on ordering:
bump-core/bump-moduleare run before each sync (rather than a single bump commit at the end) becausesync:sourceuses.upstream-versions/<id>.jsonto pick the checkout tag — bumping first lets each sync:source pull the intended version. Final plugin version is 6.3.0.2 after all three bumps chain through.Test plan
bun run validatepasses (only pre-existing plugin-only agent warnings remain)bun run typecheckpassesbun run lintpassesbun testpasses (6/6)clean:orphaned+find-orphans --deleterun per source.upstream-versions/reflects new versions (core v6.3.0, tea v1.12.2, gds v0.3.0)package.jsonat 6.3.0.2Closes #56
Closes #58
Closes #59
(Also resolves #57 — superseded by later TEA releases)