opencode-pilot 0.18.1 → 0.18.2
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.
package/README.md
CHANGED
|
@@ -65,11 +65,10 @@ Three ways to configure sources, from simplest to most flexible:
|
|
|
65
65
|
|
|
66
66
|
- `github/my-issues` - Issues assigned to me
|
|
67
67
|
- `github/review-requests` - PRs needing my review
|
|
68
|
-
- `github/my-prs-
|
|
69
|
-
- `github/my-prs-attention` - My PRs needing attention (conflicts OR feedback, with dynamic labeling)
|
|
68
|
+
- `github/my-prs-attention` - My PRs needing attention (conflicts OR human feedback)
|
|
70
69
|
- `linear/my-issues` - Linear tickets (requires `teamId`, `assigneeId`)
|
|
71
70
|
|
|
72
|
-
|
|
71
|
+
Session names for `my-prs-attention` indicate the condition: "Conflicts: {title}", "Feedback: {title}", or "Conflicts+Feedback: {title}".
|
|
73
72
|
|
|
74
73
|
### Prompt Templates
|
|
75
74
|
|
package/examples/config.yaml
CHANGED
|
@@ -27,16 +27,13 @@ sources:
|
|
|
27
27
|
|
|
28
28
|
- preset: github/review-requests
|
|
29
29
|
|
|
30
|
-
# PRs needing attention (conflicts OR feedback)
|
|
30
|
+
# PRs needing attention (conflicts OR human feedback)
|
|
31
31
|
# Session names dynamically indicate the condition: "Conflicts: ...", "Feedback: ...", or "Conflicts+Feedback: ..."
|
|
32
32
|
- preset: github/my-prs-attention
|
|
33
33
|
repos:
|
|
34
34
|
- myorg/backend
|
|
35
35
|
- myorg/frontend
|
|
36
36
|
|
|
37
|
-
# Alternative: Simple feedback-only trigger (use my-prs-attention for conflicts too)
|
|
38
|
-
# - preset: github/my-prs-feedback
|
|
39
|
-
|
|
40
37
|
# Linear (requires teamId and assigneeId)
|
|
41
38
|
- preset: linear/my-issues
|
|
42
39
|
args:
|
|
@@ -92,4 +89,4 @@ sources:
|
|
|
92
89
|
# ttl_days: 30
|
|
93
90
|
|
|
94
91
|
# Available presets: github/my-issues, github/review-requests,
|
|
95
|
-
# github/my-prs-
|
|
92
|
+
# github/my-prs-attention, linear/my-issues
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
Address the review feedback on this PR:
|
|
1
|
+
Address the review feedback or merge conflicts on this PR:
|
|
2
2
|
|
|
3
3
|
{title}
|
|
4
4
|
|
|
5
5
|
{html_url}
|
|
6
6
|
|
|
7
|
-
Focus
|
|
7
|
+
Focus on unresolved review comments and merge conflicts. Make the requested changes and respond to reviewers. Skip any conversations that are already resolved.
|
package/package.json
CHANGED
|
@@ -37,23 +37,6 @@ review-requests:
|
|
|
37
37
|
session:
|
|
38
38
|
name: "Review: {title}"
|
|
39
39
|
|
|
40
|
-
my-prs-feedback:
|
|
41
|
-
name: my-prs-feedback
|
|
42
|
-
tool:
|
|
43
|
-
# comments:>0 filter ensures only PRs with feedback are returned
|
|
44
|
-
command: ["gh", "search", "prs", "--author=@me", "--state=open", "comments:>0", "--json", "number,title,url,repository,state,body,updatedAt,commentsCount"]
|
|
45
|
-
item:
|
|
46
|
-
id: "{url}"
|
|
47
|
-
repo: "{repository.nameWithOwner}"
|
|
48
|
-
prompt: review-feedback
|
|
49
|
-
session:
|
|
50
|
-
name: "Feedback: {title}"
|
|
51
|
-
# Reprocess when PR is updated (new commits pushed, new comments, etc.)
|
|
52
|
-
# This ensures we re-trigger after addressing review feedback
|
|
53
|
-
reprocess_on:
|
|
54
|
-
- state
|
|
55
|
-
- updatedAt
|
|
56
|
-
|
|
57
40
|
my-prs-attention:
|
|
58
41
|
name: my-prs-attention
|
|
59
42
|
tool:
|
|
@@ -679,24 +679,6 @@ sources:
|
|
|
679
679
|
assert.ok(sources[0].tool.command.includes('--review-requested=@me'), 'command should include review-requested filter');
|
|
680
680
|
});
|
|
681
681
|
|
|
682
|
-
test('expands github/my-prs-feedback preset', async () => {
|
|
683
|
-
writeFileSync(configPath, `
|
|
684
|
-
sources:
|
|
685
|
-
- preset: github/my-prs-feedback
|
|
686
|
-
`);
|
|
687
|
-
|
|
688
|
-
const { loadRepoConfig, getSources } = await import('../../service/repo-config.js');
|
|
689
|
-
loadRepoConfig(configPath);
|
|
690
|
-
const sources = getSources();
|
|
691
|
-
|
|
692
|
-
assert.strictEqual(sources[0].name, 'my-prs-feedback');
|
|
693
|
-
// GitHub presets now use gh CLI instead of MCP
|
|
694
|
-
assert.ok(sources[0].tool.command.includes('--author=@me'), 'command should include author filter');
|
|
695
|
-
assert.ok(sources[0].tool.command.includes('comments:>0'), 'command should filter for PRs with comments');
|
|
696
|
-
// This preset includes updatedAt in reprocess_on to catch new commits
|
|
697
|
-
assert.deepStrictEqual(sources[0].reprocess_on, ['state', 'updatedAt']);
|
|
698
|
-
});
|
|
699
|
-
|
|
700
682
|
test('expands github/my-prs-attention preset', async () => {
|
|
701
683
|
writeFileSync(configPath, `
|
|
702
684
|
sources:
|
|
@@ -774,7 +756,6 @@ sources:
|
|
|
774
756
|
sources:
|
|
775
757
|
- preset: github/my-issues
|
|
776
758
|
- preset: github/review-requests
|
|
777
|
-
- preset: github/my-prs-feedback
|
|
778
759
|
- preset: github/my-prs-attention
|
|
779
760
|
`);
|
|
780
761
|
|
|
@@ -860,7 +841,6 @@ sources:
|
|
|
860
841
|
sources:
|
|
861
842
|
- preset: github/my-issues
|
|
862
843
|
- preset: github/review-requests
|
|
863
|
-
- preset: github/my-prs-feedback
|
|
864
844
|
- preset: github/my-prs-attention
|
|
865
845
|
`);
|
|
866
846
|
|
|
@@ -874,11 +854,8 @@ sources:
|
|
|
874
854
|
// review-requests: "Review: {title}"
|
|
875
855
|
assert.strictEqual(sources[1].session.name, 'Review: {title}', 'review-requests should prefix with Review:');
|
|
876
856
|
|
|
877
|
-
// my-prs-feedback: "Feedback: {title}"
|
|
878
|
-
assert.strictEqual(sources[2].session.name, 'Feedback: {title}', 'my-prs-feedback should prefix with Feedback:');
|
|
879
|
-
|
|
880
857
|
// my-prs-attention: "{_attention_label}: {title}" (dynamic based on detected conditions)
|
|
881
|
-
assert.ok(sources[
|
|
858
|
+
assert.ok(sources[2].session.name.includes('_attention_label'), 'my-prs-attention should use dynamic label');
|
|
882
859
|
});
|
|
883
860
|
|
|
884
861
|
test('linear preset includes session name', async () => {
|