brainiac-github 0.2.8 → 0.2.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: db8e2a2ac41b7a6fe786239a6a909aac61975a70273068c243b301eeb2407f93
4
- data.tar.gz: 8427ed0cbf86df7198149a11cbf64309471dea9ce9293ad9a49db57f2d14a03d
3
+ metadata.gz: ac4e54b24a8bb52bf92a37bfe86acb8d6e16f76c646811dfdb586be8921e4ad3
4
+ data.tar.gz: 0c31ee9574f36510100bb08094b884aa3eb81917b89c149ae8fb814fbc6aa7de
5
5
  SHA512:
6
- metadata.gz: e385a16a159af98f746a0c7ada60c04802de2549d8ace8a37ee8830ad8886d9bf5fa5ba89a34d38ba69b21c4b6aa82b0a1d24114a950e19bd10b5f7a45f9877d
7
- data.tar.gz: 43cc967f3aafd227715a82e2a366e289452e0136e29415a52d244b0e796b9355f72983b1b32a056c86707a820dad269f9c2cfa9324d96945580c6574f6554685
6
+ metadata.gz: 26615c5fd5c52574cd4a9739fa8d2179eb834ed91d805f7f02e7881cee59f3cc2952fce2751b7441ef97fe013e9db1809a026bb987ef7e5108c47b9e738d0185
7
+ data.tar.gz: c43852a07188be9a2ae9f8158eb15b91a3c4083dfdc0abab4a0514b1a3b7a755520f4bbde5e8be59919c1a71fc0aa1883c8334c673a7783334f8cd14766eeb19
@@ -61,15 +61,19 @@ module Brainiac
61
61
  post("/repos/#{repo}/issues/comments/#{comment_id}/reactions", { content: reaction }, agent_key: agent_key)
62
62
  end
63
63
 
64
- # POST a reaction on a PR review.
64
+ # POST a reaction on a PR (or issue) itself.
65
+ #
66
+ # GitHub's reactions API has NO endpoint for PR reviews — only for
67
+ # issue comments, PR review comments, issues, and PRs. Since a PR is
68
+ # an issue under the hood, PR reactions go through the issues path.
65
69
  #
66
70
  # @param repo [String] "owner/repo"
67
- # @param review_id [Integer]
68
- # @param reaction [String]
71
+ # @param pr_number [Integer]
72
+ # @param reaction [String] e.g. "eyes", "+1", "rocket"
69
73
  # @param agent_key [String, nil] agent key for per-agent app identity
70
74
  # @return [Hash] parsed response
71
- def create_review_reaction(repo, review_id, reaction, agent_key: nil)
72
- post("/repos/#{repo}/pulls/reviews/#{review_id}/reactions", { content: reaction }, agent_key: agent_key)
75
+ def create_pr_reaction(repo, pr_number, reaction, agent_key: nil)
76
+ post("/repos/#{repo}/issues/#{pr_number}/reactions", { content: reaction }, agent_key: agent_key)
73
77
  end
74
78
 
75
79
  # GET request to GitHub API.
@@ -730,10 +730,12 @@ module Brainiac
730
730
  agent_name = resolve_work_item_agent(card_info, project_config)
731
731
 
732
732
  Thread.new do
733
+ # GitHub has no reactions endpoint for PR reviews, so react on the
734
+ # PR itself (PRs are issues under the hood) to signal "on it".
733
735
  if AppClient.configured?(agent_name)
734
- AppClient.create_review_reaction(repo_name, review_id, "eyes", agent_key: agent_name)
736
+ AppClient.create_pr_reaction(repo_name, pr_number, "eyes", agent_key: agent_name)
735
737
  else
736
- run_cmd("gh", "api", "-X", "POST", "/repos/#{repo_name}/pulls/reviews/#{review_id}/reactions",
738
+ run_cmd("gh", "api", "-X", "POST", "/repos/#{repo_name}/issues/#{pr_number}/reactions",
737
739
  "-f", "content=eyes", "-H", "Accept: application/vnd.github+json", chdir: repo_path)
738
740
  end
739
741
 
@@ -14,6 +14,19 @@ module Brainiac
14
14
  - ``` ```language ``` for code blocks
15
15
  - `- item` for lists
16
16
 
17
+ ### @Mentions (STRICT — read carefully)
18
+ On GitHub, an `@name` only works if it maps to a real GitHub account.
19
+ The other agents (Galen, GLaDOS, Threepio, etc.) are NOT GitHub users —
20
+ `@threepio` just pings some unrelated stranger who happens to own that
21
+ username. That's noisy and rude.
22
+
23
+ Rules for GitHub comments:
24
+ - The ONLY people you may @mention are **@ardavis** (Andy) and **@fladamd** (Adam).
25
+ - NEVER @mention any other agent or person. Refer to other agents by
26
+ plain name instead — write `Threepio` or `GLaDOS`, not `@threepio`.
27
+ - If you're unsure whether a name is a real GitHub account, don't @mention it.
28
+ Drop the `@` and use the plain name.
29
+
17
30
  ### Scope
18
31
  You are responding to activity on a GitHub PR. Focus on the code changes and review feedback.
19
32
  When posting comments, post on the PR unless specifically asked to update the card.
@@ -3,7 +3,7 @@
3
3
  module Brainiac
4
4
  module Plugins
5
5
  module Github
6
- VERSION = "0.2.8"
6
+ VERSION = "0.2.9"
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: brainiac-github
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.8
4
+ version: 0.2.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Davis