Skip to content

[Feature]: Rich execution completion report with metrics #249

@JeremyDev87

Description

@JeremyDev87

Problem Statement

After successful execution, the completion comment only says "Implementation complete. Please check PR #N."
Users have no visibility into what was actually done — how many files changed, which steps were implemented,
or how large the diff is — without manually opening the PR.

Proposed Solution

Enhance the post-completion comment to include a rich execution report with:

  • Summary table: PR number, branch name, commit count, changed files count (+additions, -deletions)
  • Implemented steps: List of step commits parsed from git history
  • Changed files: Compact list of modified file paths
  • Link to workflow run log

Example Output

Item Value
PR #42
Branch claude/issue-15
Commits 5
Changed files 8 (+340, -52)

Technical Approach

This is a pure post-processing enhancement — no changes to Claude prompts needed.

Files to modify:

  • src/github.ts — Add getReportData() method using octokit.rest.repos.compareCommits()
  • src/comment_builder.ts — Extend buildCompletionComment() to accept and render report data
  • src/post_process_cli.ts — Extend runPostCompletion() to collect report data (add BASE_BRANCH env var)
  • src/i18n.ts — Add translation keys: report_header, report_summary_pr, report_summary_commits, report_summary_files, report_steps_header, report_files_header, report_truncated

Edge cases:

  • GitHub API returns max 300 files in compareCommits — add truncation disclaimer when files.length >= 300
  • No PR found for branch — fall back to current simple completion comment

Acceptance Criteria

  • Completion comment includes summary table with PR, branch, commits, and file stats
  • Step commits are listed with their messages
  • Changed file paths are shown in compact format
  • Fallback to simple comment when report data unavailable
  • All 8 languages have new translation keys
  • Tests cover getReportData(), extended buildCompletionComment(), and runPostCompletion()

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestleonidasTrigger Leonidas automation

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions