2.9 KiB
2.9 KiB
Created
Created by tickets.sh create.
Decision
Distribution direction from user discussion:
- Initial plugin packages should be single-file archives placed in user or workspace plugin stores, such as
~/.config/insomnia/plugins/and./.insomnia/plugins/. - Package presence is discovery only. Tool/Hook registration, WASM initialization, or MCP process startup requires explicit manifest/profile enablement and capability grant resolution.
- The package should contain a root
plugin.tomland optional runtime assets such asmodule.wasm, schemas, README, and license files. - User and workspace stores map to source/trust categories.
user:<id>andproject:<id>are distinct; ambiguous selectors should fail closed. - Workspace packages are repository-provided and must be treated conservatively, especially for executable runtimes and MCP/process-spawn behavior.
Decision
決定:
pod::featureは API / contribution substrate として扱い、Plugin や MCP の権限管理を担わせない。- Plugin は
pod::featureをユーザー向け package/config/runtime 形式で使わせる層であり、Plugin permission / trust policy は Plugin layer で定義する。 - MCP は
pod::feature上に protocol-backed integration layer を構築するが、MCP server enablement / command-env-secret policy / trust boundary / MCP-specific permission は MCP layer が独自に持つ。 - MCP local stdio server の OS-level side effects は Yoi feature authority では制御できないため、feature-layer authority / grant を MCP や Plugin の permission model に流用しない。
反映:
00001KTR81P9Xは authority ではなく provider lifecycle / dynamic contribution / normal ToolRegistry path / untrusted normalization に絞る。00001KTR82RB7は MCP 固有の explicit config と trust model を持つ。00001KSXRQ4G8と00001KT0Z4BK8は Plugin permission を Plugin layer として扱い、MCP を初期 Plugin packaging/runtime から分離する。
Decision
決定:
- Plugin discovery stores, source-qualified identity, discovery/enablement separation, Pod-startup initialization timing, restore behavior, and MCP boundaryをこの
00001KT0Z4BK8の安定 contract として統合した。 - User Plugin package store は
${XDG_DATA_HOME:-~/.local/share}/yoi/plugins/とし、~/.config/yoi/plugins/は使わない。 - Package presence は discovery only であり、実行・登録・runtime initialization は explicit enablement 後の Pod startup に限定する。
- Restore は metadata snapshot の enabled Plugin plan を正本とし、fresh discovery で silent upgrade しない。