Skip to content

Commit 5053d55

Browse files
authored
Merge branch 'main' into fix/high-slack-allowfrom-undefined-catch-crash
2 parents 5cf4dcd + 139271a commit 5053d55

File tree

167 files changed

+13330
-1098
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

167 files changed

+13330
-1098
lines changed

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: Bug report
2-
description: Report a defect or unexpected behavior in OpenClaw.
2+
description: Report a non-regression defect or unexpected behavior in OpenClaw.
33
title: "[Bug]: "
44
labels:
55
- bug
@@ -8,6 +8,7 @@ body:
88
attributes:
99
value: |
1010
Thanks for filing this report. Keep it concise, reproducible, and evidence-based.
11+
If this behavior worked previously and now fails, use the "Regression bug report" template instead.
1112
- type: textarea
1213
id: summary
1314
attributes:
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
name: Regression bug report
2+
description: Report behavior that worked previously and now fails in OpenClaw.
3+
title: "[Regression Bug]: "
4+
labels:
5+
- bug
6+
- regression
7+
body:
8+
- type: markdown
9+
attributes:
10+
value: |
11+
Use this form only for regressions: behavior that previously worked and now fails.
12+
Keep reports concise, reproducible, and evidence-based.
13+
- type: textarea
14+
id: summary
15+
attributes:
16+
label: Summary
17+
description: One-sentence statement of what regressed.
18+
placeholder: Replies in Slack threads worked in <prior version> but fail in <current version>.
19+
validations:
20+
required: true
21+
- type: input
22+
id: last_known_good_version
23+
attributes:
24+
label: Last known good version
25+
description: Exact version/build where behavior still worked.
26+
placeholder: <version such as 2026.2.10>
27+
validations:
28+
required: true
29+
- type: input
30+
id: first_bad_version
31+
attributes:
32+
label: First known bad version
33+
description: Exact version/build where behavior first failed.
34+
placeholder: <version such as 2026.2.17>
35+
validations:
36+
required: true
37+
- type: textarea
38+
id: regression_window
39+
attributes:
40+
label: Regression window and trigger
41+
description: Describe when this started and what changed around that time.
42+
placeholder: Started after upgrading from <last-good-version> to <first-bad-version>; no config changes.
43+
validations:
44+
required: true
45+
- type: textarea
46+
id: repro
47+
attributes:
48+
label: Steps to reproduce
49+
description: Provide the shortest deterministic repro path.
50+
placeholder: |
51+
1. Configure channel X.
52+
2. Send message Y.
53+
3. Run command Z.
54+
validations:
55+
required: true
56+
- type: textarea
57+
id: expected
58+
attributes:
59+
label: Expected behavior
60+
description: What should happen if the regression does not exist.
61+
placeholder: Agent posts a reply in the same thread.
62+
validations:
63+
required: true
64+
- type: textarea
65+
id: actual
66+
attributes:
67+
label: Actual behavior
68+
description: What happens now, including user-visible errors.
69+
placeholder: No reply is posted; gateway logs "reply target not found".
70+
validations:
71+
required: true
72+
- type: input
73+
id: os
74+
attributes:
75+
label: Operating system
76+
description: OS and version where this occurs.
77+
placeholder: macOS 15.4 / Ubuntu 24.04 / Windows 11
78+
validations:
79+
required: true
80+
- type: input
81+
id: install_method
82+
attributes:
83+
label: Install method
84+
description: How OpenClaw was installed or launched.
85+
placeholder: npm global / pnpm dev / docker / mac app
86+
- type: textarea
87+
id: logs
88+
attributes:
89+
label: Logs, screenshots, and evidence
90+
description: Include redacted logs/screenshots/recordings that prove the regression.
91+
render: shell
92+
- type: textarea
93+
id: impact
94+
attributes:
95+
label: Impact and severity
96+
description: |
97+
Explain who is affected, how severe it is, how often it happens, and the practical consequence.
98+
Include:
99+
- Affected users/systems/channels
100+
- Severity (annoying, blocks workflow, data risk, etc.)
101+
- Frequency (always/intermittent/edge case)
102+
- Consequence (missed messages, failed onboarding, extra cost, etc.)
103+
placeholder: |
104+
Affected: Telegram group users on <version>
105+
Severity: High (blocks replies)
106+
Frequency: 100% repro
107+
Consequence: Agents cannot respond in threads
108+
validations:
109+
required: true
110+
- type: textarea
111+
id: additional_information
112+
attributes:
113+
label: Additional information
114+
description: Add any context that helps triage but does not fit above.
115+
placeholder: Temporary workaround is rolling back to <last-known-good-version>.

.github/workflows/auto-response.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,20 @@ jobs:
1919
steps:
2020
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
2121
id: app-token
22+
continue-on-error: true
2223
with:
2324
app-id: "2729701"
2425
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
26+
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
27+
id: app-token-fallback
28+
if: steps.app-token.outcome == 'failure'
29+
with:
30+
app-id: "2971289"
31+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
2532
- name: Handle labeled items
2633
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
2734
with:
28-
github-token: ${{ steps.app-token.outputs.token }}
35+
github-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
2936
script: |
3037
// Labels prefixed with "r:" are auto-response triggers.
3138
const rules = [

.github/workflows/labeler.yml

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,25 @@ jobs:
2727
steps:
2828
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
2929
id: app-token
30+
continue-on-error: true
3031
with:
3132
app-id: "2729701"
3233
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
34+
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
35+
id: app-token-fallback
36+
if: steps.app-token.outcome == 'failure'
37+
with:
38+
app-id: "2971289"
39+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
3340
- uses: actions/labeler@8558fd74291d67161a8a78ce36a881fa63b766a9 # v5
3441
with:
3542
configuration-path: .github/labeler.yml
36-
repo-token: ${{ steps.app-token.outputs.token }}
43+
repo-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
3744
sync-labels: true
3845
- name: Apply PR size label
3946
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
4047
with:
41-
github-token: ${{ steps.app-token.outputs.token }}
48+
github-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
4249
script: |
4350
const pullRequest = context.payload.pull_request;
4451
if (!pullRequest) {
@@ -127,7 +134,7 @@ jobs:
127134
- name: Apply maintainer or trusted-contributor label
128135
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
129136
with:
130-
github-token: ${{ steps.app-token.outputs.token }}
137+
github-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
131138
script: |
132139
const login = context.payload.pull_request?.user?.login;
133140
if (!login) {
@@ -204,13 +211,20 @@ jobs:
204211
steps:
205212
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
206213
id: app-token
214+
continue-on-error: true
207215
with:
208216
app-id: "2729701"
209217
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
218+
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
219+
id: app-token-fallback
220+
if: steps.app-token.outcome == 'failure'
221+
with:
222+
app-id: "2971289"
223+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
210224
- name: Backfill PR labels
211225
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
212226
with:
213-
github-token: ${{ steps.app-token.outputs.token }}
227+
github-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
214228
script: |
215229
const owner = context.repo.owner;
216230
const repo = context.repo.repo;
@@ -444,13 +458,20 @@ jobs:
444458
steps:
445459
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
446460
id: app-token
461+
continue-on-error: true
447462
with:
448463
app-id: "2729701"
449464
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
465+
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
466+
id: app-token-fallback
467+
if: steps.app-token.outcome == 'failure'
468+
with:
469+
app-id: "2971289"
470+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
450471
- name: Apply maintainer or trusted-contributor label
451472
uses: actions/github-script@f28e40c7f34bde8b3046d885e986cb6290c5673b # v7
452473
with:
453-
github-token: ${{ steps.app-token.outputs.token }}
474+
github-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
454475
script: |
455476
const login = context.payload.issue?.user?.login;
456477
if (!login) {

.github/workflows/stale.yml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,20 @@ jobs:
1616
steps:
1717
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
1818
id: app-token
19+
continue-on-error: true
1920
with:
2021
app-id: "2729701"
2122
private-key: ${{ secrets.GH_APP_PRIVATE_KEY }}
23+
- uses: actions/create-github-app-token@d72941d797fd3113feb6b93fd0dec494b13a2547 # v1
24+
id: app-token-fallback
25+
if: steps.app-token.outcome == 'failure'
26+
with:
27+
app-id: "2971289"
28+
private-key: ${{ secrets.GH_APP_PRIVATE_KEY_FALLBACK }}
2229
- name: Mark stale issues and pull requests
2330
uses: actions/stale@v9
2431
with:
25-
repo-token: ${{ steps.app-token.outputs.token }}
32+
repo-token: ${{ steps.app-token.outputs.token || steps.app-token-fallback.outputs.token }}
2633
days-before-issue-stale: 7
2734
days-before-issue-close: 5
2835
days-before-pr-stale: 5

0 commit comments

Comments
 (0)