Commit d27fd3e
fix: fall back to org membership when author_association is CONTRIBUTOR (#292)
GitHub's author_association is scoped to the repository, not the owning
organization, so an actual org member can still show up as CONTRIBUTOR
when their membership is private, when contribution history resolves
before membership, or in PR review comment edge cases. The previous
trust filter only accepted OWNER/MEMBER/COLLABORATOR, which silently
dropped legitimate maintainer comments - including the triggering
@oz-agent comment on PRs.
Add a GET /orgs/{org}/members/{login} fallback at every trust boundary
the issue called out:
- fetch_github_context.py: new _TrustResolver class with a per-run
membership cache; _filter_comments and the rendering helpers consult
it so the agent sees CONTRIBUTOR-but-org-member comments with
trust=TRUSTED. Added a --trust-org CLI override.
- aggregate_triage_feedback.py: gh api-backed probe with the same
cache shape for the update-triage self-improvement loop.
- respond-to-pr-comment-local.yml, create-spec-from-issue-local.yml,
create-implementation-from-issue-local.yml: new check_trust pre-gate
job that uses the existing GitHub App token to run the same fallback
before invoking the reusable workflow.
- implement-specs / implement-issue SKILL.md: describe the trust model.
336 tests pass, including 7 new tests for the promotion path, cache
behaviour, and the 204/404/302 contract of the membership probe.
Co-authored-by: Oz <oz-agent@warp.dev>
Co-authored-by: Safia Abdalla <captainsafia@users.noreply.github.com>1 parent 4a93d35 commit d27fd3e
9 files changed
Lines changed: 778 additions & 77 deletions
File tree
- .agents/skills
- implement-issue
- implement-specs
- scripts
- update-triage/scripts
- .github
- scripts/tests
- workflows
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | | - | |
| 43 | + | |
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
| 70 | + | |
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
| 30 | + | |
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| |||
0 commit comments