docs(sdk): contrat commandes/menus apres reload — handler manquant = erreur retryable jamais no-op silencieux, feedback skipped/failed host-owned, pas de contributes.commands separe, reload sans refresh auto par le plugin — #336 (docs only, aucun push)
This commit is contained in:
@ -25,9 +25,10 @@ manifest contribution -> command id -> registered command handler -> optional ta
|
||||
not by a fake task.
|
||||
- Feedback objects must be stable enough for agents and programmatic callers to
|
||||
parse, and their messages must be readable by humans.
|
||||
- The current human menu-click UI does not guarantee display of a command
|
||||
handler return value. When a human must see feedback from a menu action, open
|
||||
or focus a plugin layout/window from the handler with
|
||||
- The human menu-click UI presents minimal host-owned feedback for `skipped`
|
||||
and `failed` results. It intentionally does not expose the raw result payload.
|
||||
For successful actions and richer status, open or focus a plugin layout/window
|
||||
from the handler with
|
||||
`ctx.services.windows.open({ layoutType, state })`.
|
||||
|
||||
## Preconditions
|
||||
@ -78,9 +79,9 @@ Use the same `status` vocabulary consistently:
|
||||
|
||||
Visible surfaces are intentionally distinct:
|
||||
|
||||
- Command return value: immediate feedback for programmatic callers, agents and
|
||||
future host surfaces. It is not a guaranteed visible UI surface for current
|
||||
human menu clicks.
|
||||
- Command return value: immediate feedback for programmatic callers and agents.
|
||||
The human menu host maps `skipped` and `failed` results to concise feedback;
|
||||
plugin-specific fields and messages are not displayed verbatim.
|
||||
- Plugin layout/window: the normative visible feedback surface for menu actions
|
||||
that need to show status, results or next steps to a human. The layout must be
|
||||
declared in `idea-plugin.json` and registered during activation.
|
||||
|
||||
Reference in New Issue
Block a user