From d04173c7ebf7644670db99137ba8264ee0940dc1 Mon Sep 17 00:00:00 2001 From: hopeatina Date: Thu, 30 Apr 2026 12:05:30 -0500 Subject: [PATCH] Require changeset reporting in task protocol --- task-protocol/SKILL.md | 6 ++++++ task-protocol/skill.toml | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/task-protocol/SKILL.md b/task-protocol/SKILL.md index 91e0c35..1a26913 100644 --- a/task-protocol/SKILL.md +++ b/task-protocol/SKILL.md @@ -36,6 +36,9 @@ description: | - Pause with `mcp__orgx__entity_action type=task action=pause note="..."`. - Document the blocker clearly with `mcp__orgx__comment_on_entity`. - Emit blocker telemetry with `mcp__orgx__orgx_emit_activity phase=blocked`. +- When the blocker needs an explicit approval, tradeoff, or de-stall decision, + create it through `mcp__orgx__orgx_apply_changeset` with a `decision.create` + operation and an idempotency key tied to the task/run. - Before cross-domain delegation, call `mcp__orgx__check_spawn_guard`. - Use `mcp__orgx__spawn_agent_task` or `mcp__orgx__handoff_task` only after the guard passes. @@ -45,6 +48,9 @@ description: | - Run domain-specific quality gates. - Verify readiness with `mcp__orgx__verify_entity_completion type=task`. - Attach final proof if anything is still only in the transcript. +- Batch any final task, milestone, or decision state updates through + `mcp__orgx__orgx_apply_changeset` when more than one state mutation is + required. - Emit final telemetry with `mcp__orgx__orgx_emit_activity phase=completed progress_pct=100`. - Complete with `mcp__orgx__entity_action type=task action=complete`. diff --git a/task-protocol/skill.toml b/task-protocol/skill.toml index 563adec..1c9cdee 100644 --- a/task-protocol/skill.toml +++ b/task-protocol/skill.toml @@ -2,6 +2,6 @@ name = "task-protocol" version = "2.0.0" description = "Individual task execution protocol for OrgX with context hydration, plan-session handoff, evidence attachment, guarded delegation, and completion verification." entry_instructions = "SKILL.md" -required_tools = ["mcp__orgx__orgx_bootstrap", "mcp__orgx__workspace", "mcp__orgx__get_task_with_context", "mcp__orgx__list_entities", "mcp__orgx__entity_action", "mcp__orgx__orgx_emit_activity", "mcp__orgx__comment_on_entity", "mcp__orgx__check_spawn_guard", "mcp__orgx__spawn_agent_task", "mcp__orgx__handoff_task", "mcp__orgx__verify_entity_completion", "mcp__orgx__start_plan_session", "mcp__orgx__improve_plan", "mcp__orgx__record_plan_edit", "mcp__orgx__complete_plan"] +required_tools = ["mcp__orgx__orgx_bootstrap", "mcp__orgx__workspace", "mcp__orgx__get_task_with_context", "mcp__orgx__list_entities", "mcp__orgx__entity_action", "mcp__orgx__orgx_emit_activity", "mcp__orgx__orgx_apply_changeset", "mcp__orgx__comment_on_entity", "mcp__orgx__check_spawn_guard", "mcp__orgx__spawn_agent_task", "mcp__orgx__handoff_task", "mcp__orgx__verify_entity_completion", "mcp__orgx__start_plan_session", "mcp__orgx__improve_plan", "mcp__orgx__record_plan_edit", "mcp__orgx__complete_plan"] required_scopes = [] resources = []