From 9ae641f035f616ec66b527e9724e49fd388c386c Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 17:02:31 +0000 Subject: [PATCH 1/5] docs(work-items): centralize escalation-marker grammar Co-authored-by: Kyle Sexton --- .../work-items/reference/escalation-marker.md | 29 +++++++++++++++++++ .../work-items/skills/attend-queue/SKILL.md | 7 +++-- plugins/work-items/skills/work-loop/SKILL.md | 6 ++-- 3 files changed, 36 insertions(+), 6 deletions(-) create mode 100644 plugins/work-items/reference/escalation-marker.md diff --git a/plugins/work-items/reference/escalation-marker.md b/plugins/work-items/reference/escalation-marker.md new file mode 100644 index 0000000000..5a03838041 --- /dev/null +++ b/plugins/work-items/reference/escalation-marker.md @@ -0,0 +1,29 @@ +# Escalation marker — machine-readable comment grammar + +Worker lanes escalate to the attended queue by pairing the human-gated role label with a +machine-marked HTML comment. `attend-queue` discriminates escalated rows from parked items wearing +the same role label by matching this prefix — a marker missing the `` wrapper does not +match. + +## Comment prefix (first line) + +```text + +``` + +| Token | Values | +| --- | --- | +| `` | Lane id (`work-loop`, `attend-queue`, …) | +| `` | `escalated` \| `ratify-c3` \| `routed-advisory` | + +## Writer / reader contract + +1. Resolve the human-gated role label from `config.role_labels` (never a literal). +2. Post the marker comment (first line exactly as above, remainder is the human-readable question). +3. Apply the role label in the **same** label edit as any label removals the outcome requires. + +`attend-queue` matches on author **and** marker prefix — suppress duplicate markers from the same +write identity, never from marker text alone. + +Loop-lane escalation record files (`.claude/lane-escalations/…`) are optional exhaust; the tracker +item plus marker comment is the escalation of record when the record write fails. diff --git a/plugins/work-items/skills/attend-queue/SKILL.md b/plugins/work-items/skills/attend-queue/SKILL.md index 4353aa5a66..c36639b3d1 100644 --- a/plugins/work-items/skills/attend-queue/SKILL.md +++ b/plugins/work-items/skills/attend-queue/SKILL.md @@ -52,9 +52,10 @@ citation. This skill restates none of them; it adds only the attended-lane mecha Build a single merged view, oldest first, each row tagged by kind: 1. **`[escalated]`** — open items carrying the human-gated role label (**resolved from the - binding's `config.role_labels`, never compared as a literal**; warn loudly on a defaulted - resolution) that also carry a machine-marked escalation comment whose first line starts with - `` - — the marker, + `config.role_labels`, never a literal**, plus a machine-marked escalation comment per + [`${CLAUDE_PLUGIN_ROOT}/reference/escalation-marker.md`](${CLAUDE_PLUGIN_ROOT}/reference/escalation-marker.md) + (`lane=work-loop`, `kind=escalated|ratify-c3|routed-advisory`) — the marker, not a second label, is what discriminates a worker-escalated item from an operator-parked one. The same step performs the contract's escalation record write, **immediately before posting that comment**: create `.claude/lane-escalations/--work-loop.json` (stamp From 6dacfa2deb291b727104eb864c853c2c2e360ad8 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 17:25:39 +0000 Subject: [PATCH 2/5] chore(work-items): bump to 0.35.8 for changelog parity Co-authored-by: Kyle Sexton --- plugins/work-items/CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/plugins/work-items/CHANGELOG.md b/plugins/work-items/CHANGELOG.md index 99231b5b16..24c532ea77 100644 --- a/plugins/work-items/CHANGELOG.md +++ b/plugins/work-items/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [0.35.8] + +### Fixed + +- Centralize escalation-marker grammar in work-items docs. + + All notable changes to the `work-items` plugin are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. From 6eaa53d93c4469f8fd82c70a0559160c7c2fd802 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 17:33:44 +0000 Subject: [PATCH 3/5] style(work-items): fix MD012 in CHANGELOG Co-authored-by: Kyle Sexton --- plugins/work-items/CHANGELOG.md | 1 - 1 file changed, 1 deletion(-) diff --git a/plugins/work-items/CHANGELOG.md b/plugins/work-items/CHANGELOG.md index 24c532ea77..74123601d6 100644 --- a/plugins/work-items/CHANGELOG.md +++ b/plugins/work-items/CHANGELOG.md @@ -6,7 +6,6 @@ - Centralize escalation-marker grammar in work-items docs. - All notable changes to the `work-items` plugin are documented here. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. From 8d63d331b6788a9d97cf7ad2687fc274473f8c4b Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 17:48:08 +0000 Subject: [PATCH 4/5] chore(work-items): bump to 0.35.9 Co-authored-by: Kyle Sexton --- plugins/work-items/CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/plugins/work-items/CHANGELOG.md b/plugins/work-items/CHANGELOG.md index 74123601d6..973fc6aa2f 100644 --- a/plugins/work-items/CHANGELOG.md +++ b/plugins/work-items/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog + +## [0.35.9] + +### Fixed + +- Centralize escalation-marker grammar. + ## [0.35.8] ### Fixed From 33414333d2b4b9cd4e2d464653c9322508bc2cb0 Mon Sep 17 00:00:00 2001 From: Cursor Agent Date: Wed, 12 Aug 2026 20:10:43 +0000 Subject: [PATCH 5/5] fix(work-items): repair changelog parity after merge-forward Co-authored-by: Kyle Sexton --- plugins/work-items/.claude-plugin/plugin.json | 2 +- plugins/work-items/CHANGELOG.md | 20 ++++++++----------- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/plugins/work-items/.claude-plugin/plugin.json b/plugins/work-items/.claude-plugin/plugin.json index 7840658d55..b1347792a9 100644 --- a/plugins/work-items/.claude-plugin/plugin.json +++ b/plugins/work-items/.claude-plugin/plugin.json @@ -1,7 +1,7 @@ { "$schema": "https://json.schemastore.org/claude-code-plugin-manifest.json", "name": "work-items", - "version": "0.35.10", + "version": "0.35.11", "description": "Manages development work items through a provider-neutral tracker seam that ships with the plugin (bundled dispatcher plus github and local-markdown adapters; seam plugin-dir canonical, adapters consumer-local-first): dashboard, taxonomy-labeled creation, a race-safe assignee-plus-lease claim protocol, recurring-schedule checks, TODO scanning, stale-lease auditing, plan decomposition into vertical-slice items, raw-intake triage (issues and unsolicited PRs through raw, verified, briefed, autonomous-eligible states), plus the two work-items loop lanes of the loop-lane convention: a self-paced autonomous work-loop drain (work-class admission gate, adaptive item cap, PR-only) and an attended attend-queue escalation lane. The re-runnable setup skill binds the provider (.work-item-tracker.json), seeds the recurring-schedule seam (.github/recurring-schedule.json), and remaps canonical role labels.", "author": { "name": "Melodic Software", diff --git a/plugins/work-items/CHANGELOG.md b/plugins/work-items/CHANGELOG.md index 6241c67e9e..07bbef9492 100644 --- a/plugins/work-items/CHANGELOG.md +++ b/plugins/work-items/CHANGELOG.md @@ -1,20 +1,16 @@ # Changelog +All notable changes to the `work-items` plugin are documented here. Format follows +[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. -## [0.35.9] - -### Fixed - -- Centralize escalation-marker grammar. - -## [0.35.8] - -### Fixed +## [0.35.11] -- Centralize escalation-marker grammar in work-items docs. +### Changed -All notable changes to the `work-items` plugin are documented here. Format follows -[Keep a Changelog](https://keepachangelog.com/en/1.1.0/); this plugin uses semantic versioning. +- **Escalation-marker grammar has one canonical source (#1672).** `reference/escalation-marker.md` + now defines the marker comment prefix, kind enum, author-match suppression rule, and + label-plus-comment pairing; `work-loop` and `attend-queue` cite it instead of restating the + grammar in prose. ## [0.35.10]