01 / DECIDE
Architecture decision
ChatGPT-integrated tool に form、map、table、preview など interactive presentation が必要な場合に使う。
MCP server が tool truth と authorization を所有し、embedded component は state を描画して narrow bridge 経由で action を要求する。 input、output、state、side effect を一つの観測可能な経路にしてから、MCP tool に UI を追加しても trust を browser に移さない の所有層を決めます。
02 / BUILD
3段階の実装
- 01
contract を定義
caller、data classification、success condition、timeout、cancel、ownership を先に記述します。ChatGPT-integrated tool に form、map、table、preview など interactive presentation が必要な場合に使う。
- 02
狭い経路を構築
request correlation、typed state、reversible failure handling を持つ一つの end-to-end path だけを実装します。MCP server が tool truth と authorization を所有し、embedded component は state を描画して narrow bridge 経由で action を要求する。
- 03
outcome を証明
acceptance を再実行可能な fixture、contract test、browser test にします。integration test で tool descriptor、component resource、bridge message、auth denial、loading、error、retry state を確認する。
03 / BOUND
Production boundary
component message を untrusted input とし、CSP/origin rule を適用し、重大 authorization は server に残す。
04 / PROVE
Acceptance evidence
integration test で tool descriptor、component resource、bridge message、auth denial、loading、error、retry state を確認する。
SOURCE / HTTP
再現可能な source probe
curl -fsSI 'https://developers.openai.com/plugins/build/chatgpt-ui' | sed -n '1,5p'