refactor: remove the action-owned PR comment fallback — the App owns the PR comment - #147
Draft
jadoonf wants to merge 1 commit into
Draft
Conversation
…he PR comment The action now records, submits, and writes the job's Step Summary; the companion GitHub App posts the Runtime Review PR comment. Drops the comment publish client/plan/error modules, comment-state parsing, and the client-side mirror of server publication policy, and reduces the vendored contract vocab to the values the renderer consumes.
Contributor
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #140 (stacked on its branch): the action stops posting its own fallback PR comment — the companion GitHub App owns the Runtime Review comment; the action owns recording, submission, and the job's Step Summary (unchanged, goldens byte-identical). Net −8.9k lines.
Removed (comment-only machinery)
pr-comment.js,pr-comment-plan.js,pr-comment-error.js,github-issue-comment-client.js, and the comment-state half ofprofile-comment.js(markers, cross-commit merge/diff state,renderCommentBodyreconciliation) pluspublishProfilerCommentandgithubTokenstate plumbing inpost.js. This also deletes the comment-trust attack surface security: validate untrusted inputs and harden comment trust and Markdown link sinks #140 had to harden (marker spoofing, author filtering) instead of patching it.publicationDecision(public-run 404 policy),CONTROL_PLANE_MARKERS, the internal public-Run-Profile mockup.runtime-review-vocab.jsde-prosed to values-only: the vendored contract now carries just the strings/limits the renderer consumes; internal testbed rulings/rationale prose stays in the private testbed. Runtime values are unchanged (contract 6.10.0 asserted in tests).Kept
renderStepSummary/renderPendingReview, and the public profile permalink (now inreport-link.js,utm_medium=ci_logsince the link renders in the CI log/summary, not a comment).gh attestation verify+ OIDC-default behavior;github_tokeninput retained solely forgh attestation verify.Docs/config
action.yaml+ README: the App owns the PR comment;pull-requests: writedropped from examples, permissions table, and the smoke workflows; no-auth path documented as best-effort local Step Summary.Dependabot instrumentation note (this repo): the
Run Garnetstep runs first in CI on Dependabot PRs, but live evidence from #144's run (job 33503608938) shows it degrades to unmonitored: Dependabot-triggeredpull_requestruns get neither Actions secrets nor a usable OIDC grant ("Input 'api_token' is required when OIDC authentication is unavailable"). Fix is repo-admin, not code: mirrorGARNET_API_TOKENinto the repository's Dependabot secrets store —ci.yamlalready passessecrets.GARNET_API_TOKEN, which resolves from that store on Dependabot runs.npm run validategreen (typecheck + 52 tests + build);dist/rebuilt.Link to Devin session: https://app.devin.ai/sessions/3ab2e708c38e478dad8aa472a81c8fcc
Open in Devin Desktop: https://app.devin.ai/desktop/session/3ab2e708c38e478dad8aa472a81c8fcc?variant=devin
Requested by: @jadoonf