Skip to content

docs: GitHub App install section + Marketplace-compliant action description#97

Draft
jadoonf wants to merge 6 commits into
mainfrom
devin/1783537604-app-install-docs
Draft

docs: GitHub App install section + Marketplace-compliant action description#97
jadoonf wants to merge 6 commits into
mainfrom
devin/1783537604-app-install-docs

Conversation

@jadoonf

@jadoonf jadoonf commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

Resolves the TODO(farrukh) in README §3 ("Install the companion GitHub App") with concrete copy: install link to https://github.com/apps/garnet-platform (and the Settings → GitHub path in app.garnet.ai), a permission table (Pull requests: Read & write; Metadata: Read), and a note that the App consumes no webhook events.

The permission table documents the minimal set the control-plane comment flow actually uses (audited from githubapp/client.go: installation lookup, installation token, and issue-comment list/create/patch/delete only). If the production app currently requests more, trim it to this set before/with merging this — reducing permissions needs no installer re-approval.

Also unblocks the Marketplace listing (ENG-1335): rewrites the action.yaml description to the 117-char "Runtime review for your PRs — process trees and network destinations from your CI runs, rendered in the pull request." (GitHub's Marketplace limit is 125; the previous description was 141 chars of content). Plus README Outputs-table pipe alignment cosmetics. Docs/metadata only — no src//dist/ changes; all 77 tests pass.

Link to Devin session: https://app.devin.ai/sessions/65415adabada4e1288ab68fd8feecb7a
Requested by: @jadoonf


Open in Devin Review

Co-Authored-By: Farrukh Jadoon <fkjadoon94@gmail.com>
@jadoonf jadoonf self-assigned this Jul 8, 2026
@devin-ai-integration

Copy link
Copy Markdown
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

…E table cosmetics

Co-Authored-By: Farrukh Jadoon <fkjadoon94@gmail.com>
@jadoonf

jadoonf commented Jul 8, 2026

Copy link
Copy Markdown
Contributor Author

Note for team: this will include some other cosmetic changes so we can align that at once

@devin-ai-integration devin-ai-integration Bot changed the title docs: fill in companion GitHub App install URL and permission table docs: GitHub App install section + Marketplace-compliant action description Jul 8, 2026
devin-ai-integration Bot and others added 3 commits July 8, 2026 19:19
Co-Authored-By: Farrukh Jadoon <fkjadoon94@gmail.com>
Co-Authored-By: Farrukh Jadoon <fkjadoon94@gmail.com>

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 2 new potential issues.

Open in Devin Review

Comment thread action.yaml Outdated
Comment on lines +2 to +4
description: "Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRsreview.

"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔍 Old description was more informative than the replacement

The previous description at action.yaml:2 clearly stated what the action does: "Records what each job in your workflow did at runtime — processes and network egress — and posts the Runtime Review from the Action stage." The new description is more marketing-oriented ("Execution evidence for code review...") but loses specificity about processes, network egress, and the Runtime Review posting behavior. Since this text appears in the GitHub Marketplace listing, it may be worth ensuring the replacement conveys the same functional information.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@jadoonf jadoonf left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Automated review-assist (agent-generated, advisory — not an approval or block).

Verified: action.yaml:2 new description is 117 chars (≤ 125 Marketplace limit) and matches actual behavior; name: is untouched (main already carries "Garnet Runtime Review", so no collision with #82's rename — that hunk of #82 is stale); README L109 install link uses the new App slug garnet-runtime-review (live; apps/garnet-platform 404s). The diff adds no comment-shape example blocks, so nothing here freezes pre-v6.1 shapes for the ENG-1355 renderer port — overlap with that PR is low.

Findings:

  1. README.md:111-118 (blocker): "Two permissions, nothing else" / "no webhook events" doesn't match the live App, which requests actions:read, metadata:read, pull_requests:write, workflows:write and subscribes to workflow_job + workflow_run. Installers will see four permissions. Trimming first (as the PR body proposes) needs control-plane sign-off: service/event_processors.go references a workflow_run-webhook comment flow and server/github_webhook.go is a live (no-op today) receiver, so those grants may be reserved for planned coverage work.
  2. README.md:109: "Settings → GitHub in app.garnet.ai" — garnet-ui's install button still links the old slug (app/(dashboard)/settings/github-settings-card.tsx:159,169-170apps/garnet-platform[-dev], now 404). Needs the cross-repo fix or this install path dead-ends.
  3. README.md:115,118 (minor): "one … comment per commit" is correct today; the v6.1 contract converges on one canonical comment per PR across commits — expect a wording pass after the port lands.
  4. Nit: PR body says the link is apps/garnet-platform; the diff correctly uses apps/garnet-runtime-review.
  5. vs #82: this supersedes #82's description rewrite. #82's only remaining unique bits: author: field, SHA-pin example (stale at v2.1.0), alternate-install section. Consider cherry-picking author: here and closing #82 (it's conflicting).

CI: Build/dist verify ✅; smoke jobs skipped (docs-only). Mergeable once (1) is resolved; timing is independent of the v6.1 port.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Devin Review found 2 new potential issues.

Open in Devin Review

Comment thread action.yaml
Comment on lines +2 to +4
description: "Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRs.

"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🟡 Action description contains an accidental trailing newline from malformed multi-line YAML

The action's description field includes an unintended trailing newline character (action.yaml:2-4) due to the closing quote being placed on a separate line after a blank line, so the metadata shown in the GitHub Marketplace or action listings may display with extra whitespace.

Impact: The action description displayed in GitHub Marketplace and workflow editor may show trailing whitespace or a blank line.

Multi-line YAML scalar produces trailing newline

The old description at action.yaml:2 was a clean single-line string:

description: "Records what each job in your workflow did at runtime ..."

The new description spans lines 2-4:

description: "Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRs.

"

When parsed by a YAML parser, this produces the string 'Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRs.\n' — note the trailing \n. The blank line between the text and the closing " on line 4 introduces this newline. The previous description had no trailing newline.

Suggested change
description: "Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRs.
"
description: "Execution evidence for code review: what each CI job ran and reached, recorded at the kernel, posted on your PRs."
Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@jadoonf is this on purpose?

Comment thread README.md
Comment on lines +109 to +118
Install the [Garnet Runtime Review GitHub App](https://github.com/apps/garnet-runtime-review) on the repos you monitor, or from Settings → GitHub in [app.garnet.ai](https://app.garnet.ai).

Two permissions, nothing else:

| Permission | Access | Why |
| ---------- | ------ | --- |
| Pull requests | Read & write | Post and update the one Runtime Review comment per commit |
| Metadata | Read | Required for every GitHub App |

The App writes the comment and does nothing else — no webhooks, no code access. Once installed it owns the comment across every recorded job on the commit, and the Action stands down.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔍 TODO placeholder replaced with concrete GitHub App details

The old README line 107 contained a TODO comment (<!-- TODO(farrukh): confirm GitHub App install URL + exact permissions/feature list -->) that has now been replaced with a concrete link to https://github.com/apps/garnet-runtime-review and a permissions table at README.md:109-118. The permissions listed (Pull requests: Read & write, Metadata: Read) and the statement that the App does "nothing else — no webhooks, no code access" are worth verifying against the actual GitHub App configuration to ensure accuracy.

Open in Devin Review

Was this helpful? React with 👍 or 👎 to provide feedback.

@jadoonf
jadoonf marked this pull request as draft July 9, 2026 10:58
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.

2 participants