fix(init): clarify github app reviewer credentials#344
Conversation
|
Findings Minor: Minor: The new readiness test only covers the Minor: The tmux evidence shows the reviewer details copy and final command hints, but not the final readiness text even though readiness wording changed. Please capture or mention the readiness line from the real TUI/finalize flow so the user-facing readiness behavior is empirically verified, not only unit-tested. |
|
Findings Minor: The code-level concerns from the prior review are addressed, but the supplied verification evidence still only shows the reviewer details copy and final command hints. This diff changes |
|
No findings. The new |
|
Coverage Gap
|
monit-reviewer
left a comment
There was a problem hiding this comment.
Automated PR Review
Reviewed commit: 3d0c2c9
Approved with 2 non-blocking suggestions below. Address at your discretion.
Summary
| Reviewer | Findings |
|---|---|
| harness-engineering:harness-self-documenting-code-reviewer | 2 |
harness-engineering:harness-self-documenting-code-reviewer (2 findings)
💡 Suggestion - internal/cmd/credentialcmd/credentialcmd.go:6157
initCredentialScopedKeySummary: the word 'Scoped' does not communicate intent. A reader comparing this to initCredentialKeySummary cannot tell from names alone what distinguishes them. A name like initCredentialKeySummaryIfMultiKey would make the guard condition legible without reading the body.
💡 Suggestion - internal/cmd/credentialcmd/init_reviewer_entity_editor.go:447
reviewerEntityKindDetailDescription (GitHub App branch) and reviewerEntitySecretLocationDescription (line 455) both assemble strings via chained + concatenation of string literals and credential key constants. The sentence structure is interrupted by the constant splices, making the prose hard to read at a glance. Using fmt.Sprintf with the full sentence as a format string in both functions would make the copy structure immediately legible.
1 info-level observations excluded. Run with --verbose to include.
4 PR discussion threads considered.
Completed in 2m 05s | $1.55 | sonnet | daemon 0.2.132 | Glorfindel
| Field | Value |
|---|---|
| Model | sonnet |
| Reviewers | hybrid-synthesis, harness-engineering:harness-architecture-reviewer, harness-engineering:harness-enforcement-reviewer, harness-engineering:harness-knowledge-reviewer, harness-engineering:harness-self-documenting-code-reviewer, security:security-code-auditor |
| Engine | claude · sonnet |
| Reviewed by | pr-review-daemon · monit-pr-reviewer |
| Duration | 2m 05s wall · 2m 01s compute (Reviewers: 1m 23s · Synthesis: 38s) |
| Cost | $1.55 (estimated) |
| Tokens | 305.1k in / 12.4k out |
| Turns | 12 |
Per-workstream usage
| Workstream | Model | In | Out | Cache read | Cache create | Cost |
|---|---|---|---|---|---|---|
| hybrid-synthesis | sonnet | 38.0k | 2.1k | 13.8k | 24.2k (1h) | $0.18 |
| harness-engineering:harness-architecture-reviewer | sonnet | 51.8k | 810 | 13.8k | 38.0k (1h) | $0.24 |
| harness-engineering:harness-enforcement-reviewer | sonnet | 53.9k | 2.5k | 13.8k | 40.1k (1h) | $0.28 |
| harness-engineering:harness-knowledge-reviewer | sonnet | 52.4k | 1.2k | 13.8k | 38.7k (1h) | $0.25 |
| harness-engineering:harness-self-documenting-code-reviewer | sonnet | 56.8k | 4.8k | 13.8k | 43.0k (1h) | $0.33 |
| security:security-code-auditor | sonnet | 52.1k | 1.1k | 13.8k | 38.4k (1h) | $0.25 |
Re-reviews only run when @monit-reviewer is re-requested as a reviewer — push as many commits as you need, then re-request when ready. PRs targeting branches other than main, master are skipped, even when @monit-reviewer is re-requested.
| } | ||
| return "" | ||
| } | ||
|
|
There was a problem hiding this comment.
🔵 Low (harness-engineering:harness-self-documenting-code-reviewer): initCredentialScopedKeySummary: the word 'Scoped' does not communicate intent. A reader comparing this to initCredentialKeySummary cannot tell from names alone what distinguishes them. A name like initCredentialKeySummaryIfMultiKey would make the guard condition legible without reading the body.
Reply to this thread when addressed.
| @@ -441,6 +446,22 @@ func reviewerEntityEditorStateForSelection(ctx initPromptContext, seed initDraft | |||
| return newReviewerEntityEditorState(initReviewerEntityDraft{Kind: initReviewerEntityKind(selection)}, candidate, false) | |||
| } | |||
There was a problem hiding this comment.
🔵 Low (harness-engineering:harness-self-documenting-code-reviewer): reviewerEntityKindDetailDescription (GitHub App branch) and reviewerEntitySecretLocationDescription (line 455) both assemble strings via chained + concatenation of string literals and credential key constants. The sentence structure is interrupted by the constant splices, making the prose hard to read at a glance. Using fmt.Sprintf with the full sentence as a format string in both functions would make the copy structure immediately legible.
Reply to this thread when addressed.
Summary
github_app_installation_id.Closes #339
Verification
go test ./internal/cmd/credentialcmd ./internal/credentials ./internal/configmake checkrianjs-botGitHub App reviewer and deferred reviewer credentials.Reviewer details capture included:
Final readiness/hints capture included: