Skip to content

feat: view Support tickets and tighten submissions - #11

Merged
ygpark80 merged 1 commit into
mainfrom
codex/support-view-guidance
Aug 7, 2026
Merged

feat: view Support tickets and tighten submissions#11
ygpark80 merged 1 commit into
mainfrom
codex/support-view-guidance

Conversation

@ygpark80

@ygpark80 ygpark80 commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

User description

Changes

  • add a read-only gh2 support view command with table and JSON output
  • parse open and closed ticket conversations into the original body and chronological replies
  • keep Support requests minimal and require exact user approval before --yes submissions
  • restore the closed feat: view GitHub Support ticket conversations #10 changes on the current rewritten main history

Testing

  • bun run typecheck
  • bun test (124 tests)
  • bun run build
  • npm pack --dry-run

Notes

  • No GitHub Support ticket mutation was submitted during verification.

CodeAnt-AI Description

Add read-only Support ticket viewing and submission guidance

What Changed

  • Added gh2 support view to display a ticket’s metadata, original body, and replies in chronological order
  • Supports table output or JSON output, optional scope selection, and clear errors for inaccessible or malformed tickets
  • Ticket viewing works for both open and closed tickets without exposing authentication details
  • Updated Support guidance and examples to require reviewing exact create/reply content before using --yes

Impact

✅ Faster access to complete Support ticket history
✅ Safer Support submissions
✅ Consistent ticket data for scripts

💡 Usage Guide

Checking Your Pull Request

Every time you make a pull request, our system automatically looks through it. We check for security issues, mistakes in how you're setting up your infrastructure, and common code problems. We do this to make sure your changes are solid and won't cause any trouble later.

Talking to CodeAnt AI

Got a question or need a hand with something in your pull request? You can easily get in touch with CodeAnt AI right here. Just type the following in a comment on your pull request, and replace "Your question here" with whatever you want to ask:

@codeant-ai ask: Your question here

This lets you have a chat with CodeAnt AI about your pull request, making it easier to understand and improve your code.

Example

@codeant-ai ask: Can you suggest a safer alternative to storing this secret?

Preserve Org Learnings with CodeAnt

You can record team preferences so CodeAnt AI applies them in future reviews. Reply directly to the specific CodeAnt AI suggestion (in the same thread) and replace "Your feedback here" with your input:

@codeant-ai: Your feedback here

This helps CodeAnt AI learn and adapt to your team's coding style and standards.

Example

@codeant-ai: Do not flag unused imports.

Retrigger review

Ask CodeAnt AI to review the PR again, by typing:

@codeant-ai: review

Check Your Repository Health

To analyze the health of your code repository, visit our dashboard at https://app.codeant.ai. This tool helps you identify potential issues and areas for improvement in your codebase, ensuring your repository maintains high standards of code health.

Summary by CodeRabbit

  • New Features

    • Added gh support view for viewing GitHub Support ticket details and comments.
    • Supports human-readable and JSON output formats.
    • Supports ticket scope selection and access validation.
    • Displays ticket metadata, status, body, authors, timestamps, and chronological comments.
  • Documentation

    • Updated usage guidance with ticket viewing examples, output details, authentication behavior, and troubleshooting information.
    • Clarified Support workflows, including read-only viewing and reply guidance.

@codeant-ai

codeant-ai Bot commented Aug 7, 2026

Copy link
Copy Markdown

🤖 CodeAnt AI — Review Status

Status Commit Started (UTC) Finished (UTC)
✅ Reviewed your PR 10a3d9f Aug 07, 2026 · 06:13 06:15

@codeant-ai

codeant-ai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Thanks for using CodeAnt! 🎉

We're free for open-source projects. if you're enjoying it, help us grow by sharing.

Share on X ·
Reddit ·
LinkedIn

@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Review Change Stack

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 2ffddbca-1424-4481-8ffc-230b837e88fe

📥 Commits

Reviewing files that changed from the base of the PR and between 5725f69 and 10a3d9f.

📒 Files selected for processing (7)
  • README.md
  • skills/guide/SKILL.md
  • src/commands/support/index.ts
  • src/commands/support/view.ts
  • src/lib/support.ts
  • tests/fixtures/support-ticket.html
  • tests/support.test.ts

📝 Walkthrough

Walkthrough

Adds a read-only gh support view command. It parses Support ticket metadata and chronological comments, supports table or JSON output, reuses scoped ticket lookup, and documents viewing and reply workflows.

Changes

Support ticket viewing

Layer / File(s) Summary
Ticket detail parsing
src/lib/support.ts, tests/fixtures/support-ticket.html, tests/support.test.ts
Adds ticket detail models, HTML parsing, validation, and fixture-backed tests for open and closed tickets.
Shared ticket lookup
src/lib/support.ts
Adds shared scoped lookup logic for existing ticket opening and read-only ticket viewing.
View command and output
src/commands/support/view.ts, src/commands/support/index.ts
Adds support view, scope handling, authentication, ticket retrieval, and table or JSON rendering.
Support workflow documentation
README.md, skills/guide/SKILL.md
Documents ticket viewing, replies, output fields, authentication, approval rules, stdin support, and captcha behavior.

Estimated code review effort: 4 (Complex) | ~45 minutes

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant supportViewCommand
  participant SupportSession
  participant SupportPortal
  participant parseSupportTicketDetails

  User->>supportViewCommand: request ticket
  supportViewCommand->>SupportSession: authenticate and viewTicket
  SupportSession->>SupportPortal: fetch ticket page
  SupportPortal-->>SupportSession: ticket HTML
  SupportSession->>parseSupportTicketDetails: parse ticket HTML
  parseSupportTicketDetails-->>SupportSession: ticket details
  SupportSession-->>supportViewCommand: normalized ticket
  supportViewCommand-->>User: table or JSON output
Loading

Possibly related PRs

  • circlesac/gh2-cli#7: Changes Support command output and dry-run handling for the related reply workflow.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/support-view-guidance

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codeant-ai codeant-ai Bot added the size:L This PR changes 100-499 lines, ignoring generated files label Aug 7, 2026
@ygpark80
ygpark80 merged commit 8d97730 into main Aug 7, 2026
2 checks passed
@ygpark80
ygpark80 deleted the codex/support-view-guidance branch August 7, 2026 06:14
Comment on lines +13 to +19
function ticketOutput(ticket: SupportTicketDetails, account: string | undefined) {
return {
ticket: ticket.ticketId,
subject: ticket.subject,
status: ticket.status,
account: account ?? ticket.author,
scope: ticket.scope,

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Suggestion: The JSON and table account field is populated from the authenticated GitHub login, which is not necessarily the Support account represented by the ticket. Organization tickets will consequently report the viewer's login instead of the ticket account; derive this value from the parsed scope or expose the authenticated identity under a separate field. [api mismatch]

Severity Level: Major ⚠️
- ⚠️ Organization ticket metadata reports the viewer account.
- ⚠️ JSON consumers receive an incorrect account field.
- ⚠️ Table output can confuse authors with Support accounts.

Fix in Cursor Fix in VSCode Claude

(Use Cmd/Ctrl + Click for best experience)

Prompt for AI Agent 🤖
This is a comment left during a code review.

**Path:** src/commands/support/view.ts
**Line:** 13:19
**Comment:**
	*Api Mismatch: The JSON and table `account` field is populated from the authenticated GitHub login, which is not necessarily the Support account represented by the ticket. Organization tickets will consequently report the viewer's login instead of the ticket account; derive this value from the parsed scope or expose the authenticated identity under a separate field.

Validate the correctness of the flagged issue. If correct, How can I resolve this? If you propose a fix, implement it and please make it concise.
Once fix is implemented, also check other comments on the same PR, and ask user if the user wants to fix the rest of the comments as well. if said yes, then fetch all the comments validate the correctness and implement a minimal fix
👍 | 👎

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:L This PR changes 100-499 lines, ignoring generated files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant