Skip to content

docs(work-items): course SSOT cross-links, map absorptions, ticket/issue triggers - #2976

Merged
kyle-sexton merged 6 commits into
mainfrom
cursor/2947-course-ssot-synonyms-68fa
Aug 17, 2026
Merged

docs(work-items): course SSOT cross-links, map absorptions, ticket/issue triggers#2976
kyle-sexton merged 6 commits into
mainfrom
cursor/2947-course-ssot-synonyms-68fa

Conversation

@kyle-sexton

Copy link
Copy Markdown
Contributor

Closes #2947

Summary

Records ticket/issue as first-class invocation synonyms for canonical "work item", cross-links the Shipping-course SSOT both directions, and makes to-tickets / triage / wayfinder absorptions-under-different-names traceable on the v1.2 map.

Fix

Verification

  • Description lengths: track 959/1536, work 813/1536.
  • check-skill.sh --require-evals track PASS; work PASS (existing evals).

Related

Refs #2933. Stacked on #2975 (local-markdown docs, #2944) — that PR's commits appear here until it merges. Do not edit planning plugin (questionnaire STALE is planning-owned).

Open in Web Open in Cursor 

cursoragent and others added 3 commits August 17, 2026 17:56
…ment (#2944)

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
The confinement note in the local-markdown provider comparison pushed
the file to 503 lines. Compress it so the skill-quality hard cap still
passes.

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
…sue triggers (#2947)

Work item stays canonical; ticket and issue are invocation synonyms on
track/work. Cross-link the Shipping-course SSOT from the skills-repo
record and make to-tickets/triage/wayfinder absorptions traceable on
the v1.2 map.

Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@cursor

cursor Bot commented Aug 17, 2026

Copy link
Copy Markdown

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@claude

claude Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude finished @kyle-sexton's task in 3m 0s —— View job


Code review complete

  • Gather context (PR diff, changed files, CLAUDE.md)
  • Review changed files for correctness / maintainability
  • Post findings (inline + summary)

This is a docs-only PR (ticket/issue Use-when synonyms, course-SSOT cross-links, v1.2 map absorption traceability, plus the stacked local-markdown adapter docs from #2944). Cross-checked the factual claims against the rest of the repo (e.g. row 15's SKILL.md §2b expand-contract reference, row 16's "already adopted" .out-of-scope/ correction, row 17's research/<name>-rejection wording) — all verified consistent with existing SSOT files.

One finding posted inline:

  • plugins/work-items/tools/work-item-tracker/adapters/local-markdown/README.md — the new "Claim / lease" section (lines 30–37) duplicates the claim-identity/lease/reclaim/expiry fact set almost verbatim from CONTRACT.md's new "Branch, worktree, and lease confinement" subsection (CONTRACT.md#L364-L369) — the exact fact set the README's own next section (lines 39–46) says not to re-copy ("do not treat this README as a second copy of that fact set"). The file contradicts its own instruction. Given this repo's SSOT/derivability doctrine (docs-hygiene:extract-ssot), "Claim / lease" should point at CONTRACT.md rather than restate it.

No other correctness or maintainability issues found — links between README.md / setup/SKILL.md / CONTRACT.md / the new adapter README all resolve correctly, and the version bump (0.35.24 → 0.35.26) matches the two new CHANGELOG entries.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 85af03df1f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread plugins/work-items/skills/track/SKILL.md Outdated
Comment thread plugins/work-items/tools/work-item-tracker/adapters/local-markdown/README.md Outdated
Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
@claude

claude Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude finished @cursor[bot]'s task in 3m 15s —— View job


Code review complete

  • Gather context (PR diff, changed files, CLAUDE.md)
  • Run /review:code-review against HEAD SHA 90d5a80
  • Post findings (inline + summary)

Scope: git diff origin/main...HEAD (11 files, docs-only + one manifest/version bump). Skip gate didn't apply — PR is open, non-trivial, and HEAD 90d5a80 postdates the last review's 85af03d (the new commit only touches mattpocock-skills-v12-map.md Relation cells, unrelated to the findings below).

2 findings posted inline (both re-verified independently against the current diff, not restated from prior bot comments):

  1. plugins/work-items/tools/work-item-tracker/adapters/local-markdown/README.md:30-37 — the new "Claim / lease" section duplicates the claim-identity/lease_comment_id/reclaim-exit-6/expiry-view fact set that CONTRACT.md's new "Branch, worktree, and lease confinement" subsection (CONTRACT.md:364-369, added by this same PR) already owns — the exact fact set the README's own next section says not to re-copy. Still present at this head; not touched by the 90d5a80 follow-up commit.
  2. plugins/work-items/skills/track/SKILL.md:2 — ticket got full Use-when trigger symmetry (close a ticket, start a ticket, list tickets) but issue kept only the pre-existing add an issue, so close an issue/start an issue/list issues have weaker routing coverage than the PR's stated ticket/issue synonym parity implies. Verified headroom under the 1536-byte description cap (currently 981 bytes) to fix it.

Checked and found consistent, no finding:

  • local-markdown/README.md's "List / frontier" section (flagged by another reviewer as implying unsupported filter/search flags) — re-read closely: it explicitly disclaims a provider query language and says filter/search/aggregation happen client-side over list-items/list-frontier raw output, which matches list-items.sh's actual --state/--repo-only interface. Not misleading as written.
  • Map row 15/16/17 Relation-cell claims (SKILL.md §2b expand-contract, .out-of-scope/ already-adopted, research/<name> rejection) — spot-checked against the referenced SSOT sections, consistent.
  • Version bump 0.35.240.35.26 matches the two new CHANGELOG entries; cross-links between README.md / setup/SKILL.md / CONTRACT.md / the new adapter README all resolve.

Nothing here was independently executed (no test/lint run was needed for a docs-only diff); the PR body's own verification claims (description lengths, check-skill.sh pass) are author-claimed and not re-verified beyond the one byte-count check above.

Comment thread plugins/work-items/tools/work-item-tracker/adapters/local-markdown/README.md Outdated
Comment thread plugins/work-items/skills/track/SKILL.md Outdated
@github-actions

github-actions Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude has reviewed this PR 3 times. The lane skips further automatic reviews after 5; deleting this comment resets the count.

Keep 0.35.26 course-SSOT changelog on top of 0.35.25 local-markdown
docs. Resolve CONTRACT/README honesty wording in favor of main.
@claude

claude Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude finished @cursor[bot]'s task in 1m 25s —— View job


Code review complete — skip gate applied

  • Gather context (PR diff, changed files, CLAUDE.md, prior reviews)
  • Check skip gate (open/draft/trivial/already-reviewed-at-this-head)
  • Confirm no new content at HEAD fc52ed4
  • Report result

Skip gate #4 applies (/review:code-review's "this head already has a successful review from this lane that still applies"): git diff origin/main...HEAD at fc52ed4 is byte-for-byte identical (9 files, 41 insertions / 19 deletions) to the diff already reviewed at 90d5a80 by this lane at 18:55:57. fc52ed4 is a merge of origin/main into this branch that only pulls in an already-merged, unrelated commit (3466c5b, #2975) — it introduces no new lines to any of this PR's 9 files.

For the record, both findings raised against the earlier head (85af03d) were already fixed by the follow-up commit 90d5a80 and confirmed by the prior review pass:

  • local-markdown/README.md "Claim / lease" section now points at CONTRACT.md instead of restating it.
  • skills/track/SKILL.md Use-when triggers now carry symmetric ticket/issue coverage (close a ticket/close an issue, start a ticket/start an issue, list tickets/list issues), well under the 1536-byte description cap (currently 1032 bytes).

No new findings; nothing further posted per the skip gate.

#2970 took 0.35.26 on main; this branch's ticket/issue-synonym entries move to a
new 0.35.27 section and plugin.json bumps to match.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CnzwTKoTa6xNY7iyEzMYpm
@claude

claude Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude finished @kyle-sexton's task in 1m 21s —— View job


Security review — skip gate applied

  • Gather context (PR diff, changed files, CLAUDE.md)
  • Run /review:security-review per custom instructions
  • Post findings

Skip gate #2 applies: this diff has no security-relevant surface.

Reviewed gh pr diff at HEAD 3100a46 (9 files, +41/-19) directly against the /review:security-review criteria (logic/trust-boundary flaws, injection surfaces, secret/token handling, GitHub Actions permission/trigger risk, supply-chain pins). All 9 changed files are prose/config, not executable surface:

  • docs/upstream/aihero-shipping-course.md, mattpocock-skills-v12-map.md, mattpocock-skills.md — Markdown cross-links and wording tense fixes only.
  • plugins/work-items/.claude-plugin/plugin.json — version string bump (0.35.260.35.27), no schema/permission changes.
  • plugins/work-items/CHANGELOG.md, README.md — new changelog entry and a "Naming" section documenting ticket/issue as invocation synonyms.
  • plugins/work-items/skills/track/SKILL.md, work/SKILL.mddescription: frontmatter gains Use-when trigger phrases (add a ticket, close an issue, etc.); no allowed-tools, argument handling, or executable logic touched.
  • plugins/work-items/tools/work-item-tracker/adapters/local-markdown/README.md — doc-only edit that removes a duplicated fact set (points at CONTRACT.md instead) and declares unsupported filter/search flags explicitly; no script changes.

No .github/workflows/* files, no shell/script files, no code paths handling input, auth, or credentials are touched. Nothing here to report — this lane is scoped to security only, and there's no security-relevant surface in this diff.

@github-actions

Copy link
Copy Markdown

Last security-reviewed head: 3100a46e3bed285a1a411e0f395d8caf49c2438e. On the next push, the relevance gate compares only the commits since this SHA; delete this comment to force a full re-review.

@kyle-sexton
kyle-sexton merged commit caf9da0 into main Aug 17, 2026
48 checks passed
@kyle-sexton
kyle-sexton deleted the cursor/2947-course-ssot-synonyms-68fa branch August 17, 2026 20:39
@claude

claude Bot commented Aug 17, 2026

Copy link
Copy Markdown

Claude finished @kyle-sexton's task in 42s —— View job


Code review — skip gate applied

  • Gather context (PR metadata, prior review history, /review:code-review skill instructions)
  • Check skip gate
  • Report result

Skip gate #1 applies (/review:code-review's skip-gate list: "PR is closed or not open"): this PR's state is MERGED. Per the skill's instructions, I'm stopping before deep review and posting nothing else — no inline comments.

For reference, the last two review passes on this PR (at heads 90d5a80 and fc52ed4) found two issues (local-markdown README duplicating CONTRACT.md's lease facts; asymmetric ticket/issue Use-when trigger coverage), both of which were confirmed fixed by the author and re-verified by two independent bot reviews before merge.

kyle-sexton pushed a commit that referenced this pull request Aug 17, 2026
…SOT lane sections

Main took 0.35.26 (#2942) and 0.35.27 (#2947); this branch's decompose entries
move to 0.35.28 with plugin.json bumped to match. Course SSOT keeps both the
Lane B section (this PR) and the merged Lane W section; v12-map rows 15/16 keep
this PR's deliberate CONVERGENT re-classification. Stacked leftovers from
already-merged #2975/#2976 (track SKILL.md, CONTRACT.md, local-markdown README)
resolve to main's versions.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CnzwTKoTa6xNY7iyEzMYpm
kyle-sexton added a commit that referenced this pull request Aug 17, 2026
…nch fallback (#2978)

<!-- CURSOR_AGENT_PR_BODY_BEGIN -->
Closes #2935

## Summary

Adopts five decompose deltas from the Shipping-course audit:
prefactor-first slices as blockers, one-fresh-window sizing beside
S/M/L, an integration-branch fallback when expand-contract batches
cannot land green alone, "work the frontier" in the report, and a
PR-variant agent brief.

## Fix

- `decompose` SKILL.md: C5–C8 (no token folklore; expand-contract
remains the default).
- `reference/agent-brief.md`: PR-variant (current-behavior-of-the-diff /
finish-what-exists).
- Evals cover the new rows. Course SSOT Lane B → PARTIAL.
- Plugin `0.35.26` → `0.35.27`. Approval gate, born-triaged,
blockers-first publish unchanged.

## Verification

- `check-skill.sh --require-evals decompose` PASS (183/500 lines).
- `check-evals-quality.sh` PASS (4 cases).

## Related

Refs #2933. Stacked on #2976 (#2947) and #2975 (#2944).
<!-- CURSOR_AGENT_PR_BODY_END -->

<div><a
href="https://cursor.com/agents/bc-60311e3e-bf89-4375-aded-ebb9933c68fa?cursor_ref=pr_footer&cursor_cta=open_in_web"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://cursor.com/assets/images/open-in-web-dark.png"><source
media="(prefers-color-scheme: light)"
srcset="https://cursor.com/assets/images/open-in-web-light.png"><img
alt="Open in Web" width="114" height="28"
src="https://cursor.com/assets/images/open-in-web-dark.png"></picture></a>&nbsp;<a
href="https://cursor.com/background-agent?bcId=bc-60311e3e-bf89-4375-aded-ebb9933c68fa&cursor_ref=pr_footer&cursor_cta=open_in_cursor"><picture><source
media="(prefers-color-scheme: dark)"
srcset="https://cursor.com/assets/images/open-in-cursor-dark.png"><source
media="(prefers-color-scheme: light)"
srcset="https://cursor.com/assets/images/open-in-cursor-light.png"><img
alt="Open in Cursor" width="131" height="28"
src="https://cursor.com/assets/images/open-in-cursor-dark.png"></picture></a>&nbsp;</div>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Kyle Sexton <kyle-sexton@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Provenance: course SSOT doc, map staleness fixes, synonym triggers

3 participants