| β¦ | β¦ | @@ -2331,34 +2371,46 @@ export function GeneralSettingsPanel() { | |
| 2374 | + | settingKeys={["sidebarAutoSettleAfterDays", "sidebarAutoSettleScope"]} | |
| 2335 | 2375 | {...searchableSetting("auto-settle-inactive-threads")} | |
| 2336 | - | description="Sidebar threads with no activity for this long settle automatically." | |
| 2376 | + | description={ | |
π‘ Medium settings/SettingsPanels.tsx:2376
When selected environments have mixed auto-settle settings and the representative target uses without-pr, this row still says that threads without a PR will settle, even though other targets may settle all threads or be off. The description should show a mixed-policy message whenever mixedAutoSettle is true, before applying the representative target's description.
No longer relevant as of 16ae1ffc5cae421ae276f6d8cdc789f7401935cf
Note
Claude responding on behalf of @tris203
Confirmed and fixed. When the selected environments have mixed auto-settle values, the row now says "The selected targets use different inactivity rules." instead of naming the representative target's policy, matching the response-streaming row's mixed description (16ae1ffc5c; first pass in 5ab9f77ec4).
Sorry, I'm unable to act on this request because you do not have permissions within this repository.
Sorry, I'm unable to act on this request because you do not have permissions within this repository.
| β¦ | β¦ | @@ -196,6 +197,11 @@ export function resolveAutoSettlementAt(input: { | |
| 198 | 199 | } | |
| 200 | + | if ( | |
| 201 | + | input.autoSettleScope === "without-pr" && | |
| 202 | + | (links.length > 0 || thread.linkedPullRequest != null || thread.branchPullRequest != null) | |
π‘ Medium orchestration-v2/ThreadSettlementService.ts:202
autoSettleScope: "without-pr" settles a thread for inactivity even when its branch already has a pull request, if that PR has not yet been persisted in thread.branchPullRequest. The first projection-backed call passes pullRequest: null, so this check sees no PR and settles before the later branch PR lookup; perform that lookup before resolving settlement or pass its result into this check.
No longer relevant as of 5ab9f77ec479582db0db2c0250f11ed5ba24723a
Note
Claude responding on behalf of @tris203
Confirmed and fixed in 5ab9f77ec4. The first, projection-only pass could settle a thread on a branch before its pull request had been synced to branchPullRequest, for example a PR opened while the server was stopped. Under the without-pr scope those threads now wait for the sweep's existing branch lookup, and a pull request it returns counts as having a PR. The all scope is unchanged and still decides from the projection alone. Covered by a new resolveAutoSettlementAt case and an unsynced-branch thread in the worker test; both fail without the change.
Sorry, I'm unable to act on this request because you do not have permissions within this repository.