patchrelay 0.35.16 → 0.36.0
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 +11 -2
- package/dist/agent-session-plan.js +14 -2
- package/dist/build-info.json +3 -3
- package/dist/cli/args.js +1 -0
- package/dist/cli/cluster-health.js +739 -0
- package/dist/cli/commands/cluster.js +14 -0
- package/dist/cli/data.js +9 -5
- package/dist/cli/help.js +21 -0
- package/dist/cli/index.js +27 -2
- package/dist/cli/output.js +38 -0
- package/dist/cli/watch/StateHistoryView.js +1 -0
- package/dist/cli/watch/TimelineRow.js +1 -0
- package/dist/cli/watch/detail-rows.js +1 -0
- package/dist/cli/watch/history-builder.js +1 -0
- package/dist/db/migrations.js +9 -0
- package/dist/db.js +32 -8
- package/dist/github-webhook-handler.js +5 -78
- package/dist/idle-reconciliation.js +88 -6
- package/dist/issue-query-service.js +2 -0
- package/dist/issue-session-events.js +2 -2
- package/dist/issue-session.js +2 -0
- package/dist/linear-session-reporting.js +2 -0
- package/dist/linear-session-sync.js +2 -0
- package/dist/run-orchestrator.js +196 -31
- package/dist/service.js +13 -5
- package/dist/waiting-reason.js +8 -2
- package/dist/webhook-handler.js +71 -13
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -271,6 +271,7 @@ These files define how the agent should work in that repo.
|
|
|
271
271
|
```bash
|
|
272
272
|
patchrelay doctor
|
|
273
273
|
patchrelay service status
|
|
274
|
+
patchrelay dashboard
|
|
274
275
|
```
|
|
275
276
|
|
|
276
277
|
### 8. Check linked workspaces and repos
|
|
@@ -298,6 +299,7 @@ Important:
|
|
|
298
299
|
|
|
299
300
|
Useful commands:
|
|
300
301
|
|
|
302
|
+
- `patchrelay dashboard`
|
|
301
303
|
- `patchrelay issue list --active`
|
|
302
304
|
- `patchrelay issue show APP-123`
|
|
303
305
|
- `patchrelay issue watch APP-123`
|
|
@@ -309,7 +311,14 @@ Useful commands:
|
|
|
309
311
|
PatchRelay's operator surface is being reduced to its own runtime responsibilities: issue status,
|
|
310
312
|
active work, waiting reason, worktree handoff, and retry controls.
|
|
311
313
|
|
|
312
|
-
`patchrelay issue open` is the handoff bridge: it opens Codex in the issue worktree and resumes the existing thread when PatchRelay has one.
|
|
314
|
+
`patchrelay issue open` is the handoff bridge: it opens a normal Codex CLI session in the issue worktree and resumes the existing thread when PatchRelay has one.
|
|
315
|
+
|
|
316
|
+
If automation looks stuck, this is the usual operator path:
|
|
317
|
+
|
|
318
|
+
1. `patchrelay dashboard` to see active issues and waiting reasons across the service.
|
|
319
|
+
2. `patchrelay issue show APP-123` or `patchrelay issue watch APP-123` to inspect one issue in more detail.
|
|
320
|
+
3. `patchrelay issue open APP-123` to take over inside the exact worktree and continue from the same issue context.
|
|
321
|
+
4. `patchrelay service logs --lines 100` if the problem looks like webhook intake, Codex startup, or service runtime failure.
|
|
313
322
|
|
|
314
323
|
Today that takeover path is intentionally YOLO mode: it launches Codex with `--dangerously-bypass-approvals-and-sandbox`.
|
|
315
324
|
|
|
@@ -337,7 +346,7 @@ The steward now has its own bootstrap flow:
|
|
|
337
346
|
merge-steward init https://queue.example.com
|
|
338
347
|
merge-steward attach app owner/repo --base-branch main --required-check test,lint
|
|
339
348
|
merge-steward doctor --repo app
|
|
340
|
-
merge-steward service status
|
|
349
|
+
merge-steward service status
|
|
341
350
|
merge-steward queue status --repo app
|
|
342
351
|
```
|
|
343
352
|
|
|
@@ -27,6 +27,14 @@ function reviewFixPlan() {
|
|
|
27
27
|
{ content: "Merge", status: "pending" },
|
|
28
28
|
];
|
|
29
29
|
}
|
|
30
|
+
function branchUpkeepPlan() {
|
|
31
|
+
return [
|
|
32
|
+
{ content: "Prepare workspace", status: "completed" },
|
|
33
|
+
{ content: "Repairing branch upkeep", status: "pending" },
|
|
34
|
+
{ content: "Awaiting re-verification", status: "pending" },
|
|
35
|
+
{ content: "Merge", status: "pending" },
|
|
36
|
+
];
|
|
37
|
+
}
|
|
30
38
|
function ciRepairPlan(attempt) {
|
|
31
39
|
return [
|
|
32
40
|
{ content: "Prepare workspace", status: "completed" },
|
|
@@ -75,7 +83,9 @@ function resolvePlanRunType(params) {
|
|
|
75
83
|
}
|
|
76
84
|
switch (params.factoryState) {
|
|
77
85
|
case "changes_requested":
|
|
78
|
-
return "
|
|
86
|
+
return params.pendingRunType === "branch_upkeep" || params.activeRunType === "branch_upkeep"
|
|
87
|
+
? "branch_upkeep"
|
|
88
|
+
: "review_fix";
|
|
79
89
|
case "repairing_ci":
|
|
80
90
|
return "ci_repair";
|
|
81
91
|
case "repairing_queue":
|
|
@@ -125,6 +135,8 @@ function planForRunType(runType, params) {
|
|
|
125
135
|
switch (runType) {
|
|
126
136
|
case "review_fix":
|
|
127
137
|
return reviewFixPlan();
|
|
138
|
+
case "branch_upkeep":
|
|
139
|
+
return branchUpkeepPlan();
|
|
128
140
|
case "ci_repair":
|
|
129
141
|
return ciRepairPlan(params.ciRepairAttempts ?? 1);
|
|
130
142
|
case "queue_repair":
|
|
@@ -146,7 +158,7 @@ export function buildAgentSessionPlanForIssue(issue, options) {
|
|
|
146
158
|
export function buildRunningSessionPlan(runType) {
|
|
147
159
|
return buildAgentSessionPlan({
|
|
148
160
|
factoryState: runType === "ci_repair" ? "repairing_ci"
|
|
149
|
-
: runType === "review_fix" ? "changes_requested"
|
|
161
|
+
: runType === "review_fix" || runType === "branch_upkeep" ? "changes_requested"
|
|
150
162
|
: runType === "queue_repair" ? "repairing_queue"
|
|
151
163
|
: "implementing",
|
|
152
164
|
activeRunType: runType,
|
package/dist/build-info.json
CHANGED