Skip to content

feat(github-issues): linked issues expand, collapse, and show type and labels - #2025

Merged
donjor merged 2 commits into
hyprwsfrom
t3/linked-issue-tree
Nov 9, 2026
Merged

donjor merged 2 commits into
hyprwsfrom
t3/linked-issue-tree

Conversation

@donjor-agent

@donjor-agent donjor-agent Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

🤖 claude/anthropic claude-opus-5-5 (high)

Problem

The Linked issues panel shows no issue type or labels.
Sub-issues sit behind a Show sub-issues button, with no way to collapse a tree.

Change

Snapshot:

  • Adds labels and issueType; same GraphQL read
  • Keys omitted when empty
  • Schema-derived equality for snapshots

UI:

  • Chevron expands or collapses sub-issues
  • Open by default while a sub-issue is linked
  • Guide line marks each nesting level
  • Type and label chips on every linked row
  • One label-chip component for both lists

MCP:

  • list_thread_issues adds issueType, labels

Scope and approval

Fork-owned github-issues domain; requested by the maintainer as the follow-up to #2024.

Verification

Checks:

  • vp run check:changed origin/hyprws → exit 0
  • vp run fork:ci → ok on 3144270
  • Web and server vp run build → exit 0
  • 62 server and 75 web issue tests pass
  • Late parent snapshot keeps its child shown

Not checked:

  • No eval run; no issue-tool eval case exists

Grounded in Chrome with fixture links: biomejs/biome#4726, biomejs/biome#5242, astral-sh/uv#18506.
Before, the panel looked like the #2024 captures.

Expanded: linked #5242 nests under #4726 with its type and labels.

tree-both-expanded.png

Collapsed: progress and chips stay on the row.

tree-collapsed.png

Claude Opus 5.5 via Claude Code, in T3 Code.

Fork trailers

Fork-Domain: github-issues
Fork-Tier: qol

…d labels

Fork-Domain: github-issues
Fork-Tier: qol
@donjor donjor self-assigned this Nov 9, 2026
@rsi-software-agent

rsi-software-agent Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

🧩 Effect Service Conventions 3144270 ✅ clear

No findings.

🕐 9 Nov 03:56 UTC ⏱️ 2 min 🤖 gpt-6.1-sol 🪙 240.7K

⚠️ Not verified: Static review of the whole PR; tests, builds, and knip were not rerun.

Details
Head Result Time Check
3144270 ✅ clear 2 min run
03e7912 ✅ clear 2 min run

@rsi-software-agent

rsi-software-agent Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

🧩 UI Consistency 3144270 ✅ clear

No findings.

🕐 9 Nov 03:59 UTC ⏱️ 5 min 🤖 gpt-6.1-sol 🪙 191.7K

Details
Head Result Time Check
3144270 ✅ clear 5 min run
03e7912 ✅ clear 4 min run

@rsi-software-agent

rsi-software-agent Bot commented Nov 9, 2026 •

Copy link
Copy Markdown

🩺 Aftercare 3144270 ✅ clear

resolved 1

commit 03e7912

  • A1 Linked children disappear when parent snapshots arrive after mount ✅ 3144270

🕐 9 Nov 04:03 UTC ⏱️ 3 min 🤖 gpt-6.1-sol 🪙 389.9K

⚠️ Not verified: Live GitHub synchronization and full browser interaction were not exercised.

Details

A1 Linked children disappear when parent snapshots arrive after mount · apps/web/src/components/githubIssue/ThreadGitHubIssueLinks.tsx:207

  • Problem: Late snapshots nest linked children beneath parents whose initial collapsed state never updates.
  • Fix: Derive expansion until explicitly toggled; cover late snapshots and newly linked children.
  • Note: Default expansion follows arriving children; explicit collapse remains stable across rerenders.
Head Result Time Check
3144270 ✅ clear · 1 fixed 3 min run
03e7912 🔴 1 open · 1 new 5 min run

…fter mount

Fork-Domain: github-issues
Fork-Tier: qol
@donjor
donjor merged commit e39fc21 into hyprws Nov 9, 2026
22 checks passed
@donjor
donjor deleted the t3/linked-issue-tree branch November 9, 2026 08:29
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
…d labels (#2025)

## Problem

The Linked issues panel shows **no issue type or labels**.
Sub-issues sit behind a **Show sub-issues** button, with **no way to collapse** a tree.

## Change

**Snapshot:**

- **Adds `labels` and `issueType`**; same GraphQL read
- **Keys omitted** when empty
- **Schema-derived equality** for snapshots

**UI:**

- **Chevron** expands or collapses sub-issues
- **Open by default** while a sub-issue is linked
- **Guide line** marks each nesting level
- **Type and label chips** on every linked row
- **One label-chip component** for both lists

**MCP:**

- **`list_thread_issues`** adds `issueType`, `labels`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer as the follow-up to #2024.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 0
- `vp run fork:ci` → ok on `3144270`
- Web and server `vp run build` → exit 0
- **62 server** and **75 web** issue tests pass
- **Late parent snapshot** keeps its child shown

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome with fixture links: `biomejs/biome#4726`, `biomejs/biome#5242`, `astral-sh/uv#18506`.
Before, the panel looked like the #2024 captures.

Expanded: **linked `pingdotgg#5242` nests** under `pingdotgg#4726` with its **type and labels**.

![tree-both-expanded.png](https://github.com/user-attachments/assets/2fd8b427-377d-4d3c-b558-1249c3c0e76f)

Collapsed: **progress and chips** stay on the row.

![tree-collapsed.png](https://github.com/user-attachments/assets/20dc930f-095d-4bf1-a7d5-485bd76ac9c3)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
…d labels (#2025)

## Problem

The Linked issues panel shows **no issue type or labels**.
Sub-issues sit behind a **Show sub-issues** button, with **no way to collapse** a tree.

## Change

**Snapshot:**

- **Adds `labels` and `issueType`**; same GraphQL read
- **Keys omitted** when empty
- **Schema-derived equality** for snapshots

**UI:**

- **Chevron** expands or collapses sub-issues
- **Open by default** while a sub-issue is linked
- **Guide line** marks each nesting level
- **Type and label chips** on every linked row
- **One label-chip component** for both lists

**MCP:**

- **`list_thread_issues`** adds `issueType`, `labels`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer as the follow-up to #2024.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 0
- `vp run fork:ci` → ok on `3144270`
- Web and server `vp run build` → exit 0
- **62 server** and **75 web** issue tests pass
- **Late parent snapshot** keeps its child shown

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome with fixture links: `biomejs/biome#4726`, `biomejs/biome#5242`, `astral-sh/uv#18506`.
Before, the panel looked like the #2024 captures.

Expanded: **linked `pingdotgg#5242` nests** under `pingdotgg#4726` with its **type and labels**.

![tree-both-expanded.png](https://github.com/user-attachments/assets/2fd8b427-377d-4d3c-b558-1249c3c0e76f)

Collapsed: **progress and chips** stay on the row.

![tree-collapsed.png](https://github.com/user-attachments/assets/20dc930f-095d-4bf1-a7d5-485bd76ac9c3)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 9, 2026
…d labels (#2025)

## Problem

The Linked issues panel shows **no issue type or labels**.
Sub-issues sit behind a **Show sub-issues** button, with **no way to collapse** a tree.

## Change

**Snapshot:**

- **Adds `labels` and `issueType`**; same GraphQL read
- **Keys omitted** when empty
- **Schema-derived equality** for snapshots

**UI:**

- **Chevron** expands or collapses sub-issues
- **Open by default** while a sub-issue is linked
- **Guide line** marks each nesting level
- **Type and label chips** on every linked row
- **One label-chip component** for both lists

**MCP:**

- **`list_thread_issues`** adds `issueType`, `labels`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer as the follow-up to #2024.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 0
- `vp run fork:ci` → ok on `3144270`
- Web and server `vp run build` → exit 0
- **62 server** and **75 web** issue tests pass
- **Late parent snapshot** keeps its child shown

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome with fixture links: `biomejs/biome#4726`, `biomejs/biome#5242`, `astral-sh/uv#18506`.
Before, the panel looked like the #2024 captures.

Expanded: **linked `pingdotgg#5242` nests** under `pingdotgg#4726` with its **type and labels**.

![tree-both-expanded.png](https://github.com/user-attachments/assets/2fd8b427-377d-4d3c-b558-1249c3c0e76f)

Collapsed: **progress and chips** stay on the row.

![tree-collapsed.png](https://github.com/user-attachments/assets/20dc930f-095d-4bf1-a7d5-485bd76ac9c3)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 10, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 11, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 12, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 12, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 12, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 12, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 13, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 13, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 13, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 13, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 14, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 14, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 14, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 14, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 15, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
rsi-software-agent Bot pushed a commit that referenced this pull request Nov 15, 2026
…2024)

## Problem

A thread that links a **parent or tracker issue** shows **no sub-issue progress** or hierarchy.
Agents reading `list_thread_issues` **cannot see the children** either.

## Change

**Snapshot:**

- **Adds `subIssues` and `parent`**
- **Keys omitted** when empty
- **Optional fields**; old snapshots still decode

**Sync:**

- **Same GraphQL read**; no extra request
- **Deleted the second read** for child close reasons
- **One issue URL parser**, shared from contracts
- **A child's state change** rereads its linked parent
- **Child edits** count as a snapshot change

**UI:**

- **Linked children nest** under a linked parent
- **Other children** open with **Show sub-issues**
- **Progress** (`2/6`) on row, badge, and details
- **Parent meta** (`↰ #N`) on a root row
- **Stale cycles** fall back to roots

**MCP:**

- **`list_thread_issues`** adds `subIssues`, `parent`

## Scope and approval

**Fork-owned `github-issues` domain**; requested by the maintainer in the thread that did the work.

## Verification

**Checks:**

- `vp run check:changed origin/hyprws` → exit 1
- **11 browser files** failed on module fetch; **all pass** on rerun
- `vp run fork:ci` → ok on `1843b1e`
- Web and server `vp run build` → exit 0
- Server, contracts, and web typecheck → exit 0
- **62 server**, **74 web**, **6 contracts** issue tests pass

**Not checked:**

- **No eval run**; no issue-tool eval case exists

**Grounded** in Chrome against `astral-sh/uv` fixture links; before, none of these surfaces showed sub-issues.

Collapsed: **progress** and **linked children nested**.

![subissues-collapsed.png](https://github.com/user-attachments/assets/9a10d8d8-6657-456c-bf33-3023fd3741c2)

Expanded: **Show sub-issues** lists the rest.

![subissues-expanded.png](https://github.com/user-attachments/assets/205f5fae-d134-448e-ab6e-fb174abce2e4)

Root child: **parent meta**.

![subissues-parent.png](https://github.com/user-attachments/assets/314355b3-ffd4-4993-9d4a-dc4327b28f69)

Badge hover: **progress** in the mini list.

![subissues-badge.png](https://github.com/user-attachments/assets/b497bdbc-ee68-4e48-ae17-f3ab736e3951)

Details panel: **progress** on the issue row.

![subissues-details.png](https://github.com/user-attachments/assets/19ed83c4-bf6b-4528-badc-dcccd771e171)

Claude Opus 5.5 via Claude Code, in T3 Code.

## Fork trailers

Squashes:

- c3c6084144 feat(github-issues): linked issues nest and track their sub-issues (#2024) (#2024)
- 16f839c3ae feat(github-issues): linked issues expand, collapse, and show type and labels (#2025) (#2025)

Fork-Domain: github-issues
Fork-Tier: qol
Co-authored-by: donjor <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant