ticket: accept mcp resources prompts tools
This commit is contained in:
parent
6ac916c785
commit
b2b4764f36
|
|
@ -1 +1,2 @@
|
|||
{"id":"orch-plan-20260620-060022-1","ticket_id":"00001KVHR3WSN","kind":"blocked_by","related_ticket":"00001KVHR3WRY","note":"Resources/prompts operations require initialized MCP stdio lifecycle. `00001KVHR3WRY` is queued and depends on `00001KVHR3WRF`; leave this Ticket queued until lifecycle is closed.","author":"yoi-orchestrator","at":"2026-06-20T06:00:22Z"}
|
||||
{"id":"orch-plan-20260620-093652-2","ticket_id":"00001KVHR3WSN","kind":"accepted_plan","accepted_plan":{"summary":"MCP resources/list, resources/read, prompts/list, prompts/get を explicit namespaced Yoi tool operationsとして exposeし、returned content/templatesを untrusted ordinary Tool result dataとして履歴に記録する。Hidden context injection を導入せず、result size/rich content/paginationを boundedに扱う。","branch":"impl/00001KVHR3WSN-mcp-resources-prompts-tools","worktree":"/home/hare/Projects/yoi/.worktree/00001KVHR3WSN-mcp-resources-prompts-tools","role_plan":"Orchestrator は acceptance records を commit 後、専用 implementation worktree `.worktree/00001KVHR3WSN-mcp-resources-prompts-tools` を作成し、Coder をその child worktree への narrow write scope で起動する。Coder 実装後、Reviewer が resources/prompts explicit tool operations、ordinary Tool result/history path、hidden context injection absence、untrusted/bounded content handling、pagination/bounds、no list_changed/sampling/elicitation scope creep を確認する。"},"author":"yoi-orchestrator","at":"2026-06-20T09:36:52Z"}
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
---
|
||||
title: 'MCP: expose resources and prompts as explicit tool operations'
|
||||
state: 'queued'
|
||||
state: 'inprogress'
|
||||
created_at: '2026-06-20T05:30:04Z'
|
||||
updated_at: '2026-06-20T06:00:44Z'
|
||||
updated_at: '2026-06-20T09:37:22Z'
|
||||
assignee: null
|
||||
readiness: 'implementation_ready'
|
||||
risk_flags: ['mcp', 'resources', 'prompts', 'prompt-context', 'history', 'untrusted-content']
|
||||
|
|
|
|||
|
|
@ -27,3 +27,70 @@ Next:
|
|||
- `00001KVHR3WRY` が closed になった後、改めて reroute する。
|
||||
|
||||
---
|
||||
|
||||
<!-- event: decision author: yoi-orchestrator at: 2026-06-20T09:37:14Z -->
|
||||
|
||||
## Decision
|
||||
|
||||
Routing decision: implementation_ready_parallel
|
||||
|
||||
Reason:
|
||||
- User directive: 「blocker無いなら並列にやっちゃえよ」。現在 inprogress は 0 件であり、依存 blocker も解消済みのため、この queued Ticket を開始する。
|
||||
- 前回は `00001KVHR3WRY` stdio lifecycle が未完了だったため blocked/queued hold としたが、現在 `00001KVHR3WRY` は closed。
|
||||
- Ticket body は resources/list, resources/read, prompts/list, prompts/get を explicit tool operations として exposeし、hidden context injection を禁止し、ordinary Tool result/history path・untrusted/bounded content handling・pagination/list bounds を明確にしている。
|
||||
- Orchestrator worktree は clean、matching branch/worktree はなし。
|
||||
- Risk domain は mcp / resources / prompts / prompt-context / history / untrusted-content だが、Ticket は explicit Tool operations、ordinary history、no hidden injection、bounded/rich content serialization を明示している。bounded context check 後も implementation 前に必要な追加 human decision は見つからなかった。
|
||||
|
||||
Evidence checked:
|
||||
- Ticket `00001KVHR3WSN` body / thread / relations / artifacts。
|
||||
- `TicketRelationQuery(00001KVHR3WSN)`: outgoing `depends_on 00001KVHR3WRY` is now closed。
|
||||
- `TicketOrchestrationPlanQuery(00001KVHR3WSN)`: previous `blocked_by 00001KVHR3WRY` is resolved; accepted plan recorded now。
|
||||
- Workspace state:
|
||||
- Orchestrator worktree clean at `6ac916c7`。
|
||||
- queued: `00001KVHR3WSN`, `00001KVHR3WSW`。
|
||||
- inprogress: 0。
|
||||
- spawned child implementation Pods: 0。
|
||||
- no matching MCP resources/prompts branch/worktree。
|
||||
|
||||
IntentPacket:
|
||||
|
||||
Intent:
|
||||
- Expose MCP resources/prompts as explicit namespaced Yoi tool operations: `resources/list`, `resources/read`, `prompts/list`, `prompts/get`。
|
||||
- Returned resources/prompt templates are untrusted Tool result data and must be recorded through ordinary Tool result/history paths。
|
||||
- Do not inject resource/prompt content directly into model context outside Tool history。
|
||||
|
||||
Binding decisions / invariants:
|
||||
- No hidden context injection path。
|
||||
- All returned content/templates are untrusted data。
|
||||
- Bound result sizes and rich/embedded content serialization。
|
||||
- Handle pagination/list bounds where applicable。
|
||||
- Diagnostics identify server/resource/prompt operation without leaking secrets。
|
||||
- Do not implement MCP tool execution itself beyond existing completed support。
|
||||
- Do not implement list_changed refresh, sampling, or elicitation in this Ticket。
|
||||
- Preserve prior MCP lifecycle/tool-call redaction/bounds/ordinary Tool path behavior。
|
||||
|
||||
Requirements / acceptance criteria:
|
||||
- `resources/list` and `resources/read` can be invoked as explicit tools。
|
||||
- `prompts/list` and `prompts/get` can be invoked as explicit tools。
|
||||
- Results are ordinary Tool results and history records。
|
||||
- No hidden context injection path is introduced。
|
||||
- Oversize/rich content is bounded。
|
||||
- Tests cover list/read/get happy paths, untrusted content, bounds, and no hidden injection。
|
||||
|
||||
Escalate if:
|
||||
- Existing ToolRegistry/provider path cannot represent resources/prompts operations without broad provider-substrate changes。
|
||||
- MCP prompt message/content serialization requires product decision beyond safe bounded Tool result data。
|
||||
- Hidden context injection would be needed to satisfy a feature expectation; that would violate Ticket intent and must stop。
|
||||
|
||||
Next action:
|
||||
- Record `queued -> inprogress` and commit Ticket records before creating implementation worktree and spawning Coder。
|
||||
|
||||
---
|
||||
|
||||
<!-- event: state_changed author: yoi-orchestrator at: 2026-06-20T09:37:22Z from: queued to: inprogress reason: orchestrator_acceptance_mcp_resources_prompts_tools field: state -->
|
||||
|
||||
## State changed
|
||||
|
||||
User explicitly authorized parallel implementation when no blocker exists. Ticket body/thread, relation metadata, closed MCP lifecycle dependency, Orchestrator worktree state, visible Pods, existing branch/worktree, and bounded MCP resources/prompts context were checked. Dependency `00001KVHR3WRY` is closed, no inprogress/capacity blocker exists, no matching worktree/branch exists, and no missing planning decision was found. Accepting this queued Ticket for implementation before worktree/Pod side effects.
|
||||
|
||||
---
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user