Skip to content

Support nested extra plugin sources#1667

Merged
chubes4 merged 1 commit into
mainfrom
nested-plugin-source-mount
Jun 30, 2026
Merged

Support nested extra plugin sources#1667
chubes4 merged 1 commit into
mainfrom
nested-plugin-source-mount

Conversation

@chubes4

@chubes4 chubes4 commented Jun 30, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Add explicit nested/monorepo extra plugin recipe fields: sourcePath, sourceSubdir, and mountSlug.
  • Preserve existing source/slug/sourceRoot/sourceSubpath behavior while validating pluginFile against the mounted plugin slug.
  • Validate source subdirectory traversal, missing nested source directories, and plugin file mount-slug mismatches.
  • Document the public nested plugin contract and clean up public docs boundary wording caught by the docs-boundary test.

Downstream contract shape

{
  "sourcePath": "/repo",
  "sourceSubdir": "plugins/example-plugin",
  "mountSlug": "example-plugin",
  "pluginFile": "example-plugin/example-plugin.php"
}

sourcePath can also point directly at the plugin source directory; keep mountSlug and pluginFile explicit when the source directory name is not the WordPress mount slug.

Tests

  • npm exec tsx tests/recipe-extra-plugin-nested-source.test.ts
  • npm run test:recipe-validation-descriptors
  • npm run test:recipe-runtime-setup-staged-materialization
  • npm run test:recipe-source-packages
  • npm run test:docs-boundary-language
  • npm run build

AI assistance

  • AI assistance: Yes
  • Tool(s): openai/gpt-5.5 via OpenCode
  • Used for: Implementing the recipe contract change, tests, docs updates, and local verification.

@chubes4 chubes4 merged commit e052bfb into main Jun 30, 2026
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