Skip to content

F-070: revise plugins design (static register / custom type)#185

Merged
stepango merged 2 commits into
v2from
forma/F-070-plugins-design-revise
Jul 19, 2026
Merged

F-070: revise plugins design (static register / custom type)#185
stepango merged 2 commits into
v2from
forma/F-070-plugins-design-revise

Conversation

@stepango

Copy link
Copy Markdown
Collaborator

Summary

Corrects F-070 after product feedback: do not put free-form plugins = plugins(plugin(\"id\")…) on every target.

Correct model

Path Plugin identity Target definition
A pre-defined types Static registerTargetPlugin optional uniform pluginConfig
B custom target type On the type same optional pluginConfig

Deprecate chain withPlugin / PluginWrapper. Catalog KSP + FeatureDefinition unchanged.

Full rewrite: docs/TARGET-PLUGINS.md. TICKETS F-071–F-073 notes aligned.

Test plan

  • Docs-only

Claw added 2 commits July 19, 2026 09:54
Reject free-form plugins= lists on every target. Plugin identity lives on
static registration (pre-defined types) or custom target types; instances
only take optional uniform pluginConfig.
Call sites are attributes-only. Extending a target type with a plugin
applies it on every use. Reject per-callsite pluginConfig(binding).
@stepango
stepango merged commit b8aea0b into v2 Jul 19, 2026
@stepango
stepango deleted the forma/F-070-plugins-design-revise branch July 19, 2026 16:59
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