@popoverai/dotrequirements 0.36.0 → 0.37.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/dist/commands/solution/brief.d.ts +0 -2
- package/dist/commands/solution/index.js +2 -15
- package/dist/commands/solution/pull-request.d.ts +0 -13
- package/dist/commands/solution/pull-request.js +1 -37
- package/dist/commands/solution/status.js +1 -5
- package/dist/convex.d.ts +0 -3
- package/dist/convex.js +0 -3
- package/package.json +1 -1
|
@@ -54,8 +54,6 @@ export type PanelOutcome = {
|
|
|
54
54
|
agent: string;
|
|
55
55
|
part: "draft" | "review";
|
|
56
56
|
}>;
|
|
57
|
-
/** The reviewers waiting on its pull request, their sessions ended (PULL-5). */
|
|
58
|
-
waiting?: string[];
|
|
59
57
|
};
|
|
60
58
|
/** A checkpoint on the plan panel, as far as the CLI reads it. */
|
|
61
59
|
export type PanelCheckpoint = {
|
|
@@ -7,7 +7,7 @@ import { REQUEST_CONTRACT } from "./contract.js";
|
|
|
7
7
|
import { createCommand } from "./create.js";
|
|
8
8
|
import { thingsCommand } from "./look-up.js";
|
|
9
9
|
import { nextCommand } from "./next.js";
|
|
10
|
-
import { prStatusCommand,
|
|
10
|
+
import { prStatusCommand, pullRequestCommand } from "./pull-request.js";
|
|
11
11
|
import { rehearseCommand } from "./rehearse.js";
|
|
12
12
|
import { reviewCommand } from "./review.js";
|
|
13
13
|
import { doneCommand } from "./share.js";
|
|
@@ -100,14 +100,6 @@ it can merge: clean means it can, with every required check passing and no
|
|
|
100
100
|
conflict. Failed checks come with a link to them; checks still running are named.
|
|
101
101
|
Reading it changes nothing.
|
|
102
102
|
`;
|
|
103
|
-
/** What `pr wait` does, on its `--help` (PULL-5, PULL-6). */
|
|
104
|
-
const PR_WAIT_HELP = `
|
|
105
|
-
For a reviewer, when the pull request has to change before you can give a result,
|
|
106
|
-
as while its checks run. Records where it stands now; then end your session
|
|
107
|
-
without a result. You are started again, in this session, when GitHub reports it
|
|
108
|
-
changed and nothing on it is still running, or once it is merged or closed. A new
|
|
109
|
-
submission ends the wait too, and you review that as you would any other.
|
|
110
|
-
`;
|
|
111
103
|
/** What `pr open` does, on its `--help`, where `author --help` sends the agent (PULL-2). */
|
|
112
104
|
const PULL_REQUEST_HELP = `
|
|
113
105
|
Pushes your commits to the solution's branch, then opens a pull request from it
|
|
@@ -243,7 +235,7 @@ export function registerSolution(program) {
|
|
|
243
235
|
.action(wrap(authorCommand));
|
|
244
236
|
const pr = solution
|
|
245
237
|
.command("pr", HIDDEN)
|
|
246
|
-
.description("The solution's pull request: open it, read it
|
|
238
|
+
.description("The solution's pull request: open it, read it");
|
|
247
239
|
whereOptions(pr
|
|
248
240
|
.command("open")
|
|
249
241
|
.description("Push the solution's branch and open its pull request, or find the one open; prints its reference, pr:<number>, to submit"))
|
|
@@ -255,11 +247,6 @@ export function registerSolution(program) {
|
|
|
255
247
|
.option("--json", "Print as JSON")
|
|
256
248
|
.addHelpText("after", PR_STATUS_HELP)
|
|
257
249
|
.action(wrap(prStatusCommand));
|
|
258
|
-
whereOptions(pr
|
|
259
|
-
.command("wait")
|
|
260
|
-
.description("Wait on the pull request with your session ended: you start again when it changes and nothing on it is still running"))
|
|
261
|
-
.addHelpText("after", PR_WAIT_HELP)
|
|
262
|
-
.action(wrap(prWaitCommand));
|
|
263
250
|
whereOptions(solution
|
|
264
251
|
.command("review <result> [video...]", HIDDEN)
|
|
265
252
|
.description("Record the review's result: approved, approved-with-revisions or needs-revision"))
|
|
@@ -25,11 +25,6 @@ export type PullRequestState = {
|
|
|
25
25
|
}>;
|
|
26
26
|
head: string;
|
|
27
27
|
};
|
|
28
|
-
/**
|
|
29
|
-
* Where the pull request stood, as a wait records it (PULL-6.4): what a
|
|
30
|
-
* reviewer judges by, so a later read that differs is a change.
|
|
31
|
-
*/
|
|
32
|
-
export declare function seenOf(state: PullRequestState): string;
|
|
33
28
|
/** Where the pull request stands, as a reviewer reads it (PULL-4). */
|
|
34
29
|
export declare function describeState(state: PullRequestState): string;
|
|
35
30
|
/**
|
|
@@ -39,14 +34,6 @@ export declare function describeState(state: PullRequestState): string;
|
|
|
39
34
|
export declare function prStatusCommand(options: WhereOptions & {
|
|
40
35
|
json?: boolean;
|
|
41
36
|
}): Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* `dotreq solution pr wait`: the reviewer waits on the pull request with
|
|
44
|
-
* no session running (PULL-5): it records where the pull request stands,
|
|
45
|
-
* and its session can end without a result. It starts again, in the same
|
|
46
|
-
* session, when the pull request changes and nothing on it is still running
|
|
47
|
-
* (PULL-6).
|
|
48
|
-
*/
|
|
49
|
-
export declare function prWaitCommand(options: WhereOptions): Promise<void>;
|
|
50
37
|
/**
|
|
51
38
|
* `dotreq solution pr open`: the solution's pull request, opened or
|
|
52
39
|
* found (PULL-2). Inside a runner the branch is pushed first, as a submission
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { webApiUrl } from "../../cloud.js";
|
|
2
|
-
import { api } from "../../convex.js";
|
|
3
2
|
import { getProjectCredentials } from "../../utils/project-settings.js";
|
|
4
3
|
import { solutionClient } from "./client.js";
|
|
5
4
|
import { pushWork } from "./pushing.js";
|
|
@@ -7,19 +6,6 @@ import { requireWhere } from "./run-file.js";
|
|
|
7
6
|
import { outcomeFor } from "./status.js";
|
|
8
7
|
/** The command that opens the solution's pull request and prints its reference. */
|
|
9
8
|
export const OPEN_IT = "dotreq solution pr open";
|
|
10
|
-
/**
|
|
11
|
-
* Where the pull request stood, as a wait records it (PULL-6.4): what a
|
|
12
|
-
* reviewer judges by, so a later read that differs is a change.
|
|
13
|
-
*/
|
|
14
|
-
export function seenOf(state) {
|
|
15
|
-
return [
|
|
16
|
-
state.head,
|
|
17
|
-
state.mergeState,
|
|
18
|
-
state.mergeable,
|
|
19
|
-
state.reviewDecision ?? "",
|
|
20
|
-
state.checks ?? "",
|
|
21
|
-
].join(" ");
|
|
22
|
-
}
|
|
23
9
|
/** The pull request the outcome the agent is at reads, as the app finds it (PULL-4.0, 4.0.0). */
|
|
24
10
|
async function stateFor(where) {
|
|
25
11
|
const said = await ask({
|
|
@@ -60,7 +46,7 @@ export function describeState(state) {
|
|
|
60
46
|
}
|
|
61
47
|
if (state.mergeable === "unknown") {
|
|
62
48
|
// PULL-4.3.
|
|
63
|
-
lines.push("GitHub hasn't yet worked out whether it can merge: read it again shortly
|
|
49
|
+
lines.push("GitHub hasn't yet worked out whether it can merge: read it again shortly.");
|
|
64
50
|
}
|
|
65
51
|
return lines.join("\n");
|
|
66
52
|
}
|
|
@@ -72,28 +58,6 @@ export async function prStatusCommand(options) {
|
|
|
72
58
|
const state = await stateFor(requireWhere(options));
|
|
73
59
|
console.log(options.json ? JSON.stringify(state) : describeState(state));
|
|
74
60
|
}
|
|
75
|
-
/**
|
|
76
|
-
* `dotreq solution pr wait`: the reviewer waits on the pull request with
|
|
77
|
-
* no session running (PULL-5): it records where the pull request stands,
|
|
78
|
-
* and its session can end without a result. It starts again, in the same
|
|
79
|
-
* session, when the pull request changes and nothing on it is still running
|
|
80
|
-
* (PULL-6).
|
|
81
|
-
*/
|
|
82
|
-
export async function prWaitCommand(options) {
|
|
83
|
-
const where = requireWhere(options);
|
|
84
|
-
const state = await stateFor(where);
|
|
85
|
-
await solutionClient().mutation(api.solutions.waits.waitOnPullRequest, {
|
|
86
|
-
solutionId: where.solutionId,
|
|
87
|
-
agent: where.agent,
|
|
88
|
-
...(where.outcome ? { outcome: where.outcome } : {}),
|
|
89
|
-
seen: seenOf(state),
|
|
90
|
-
});
|
|
91
|
-
console.log([
|
|
92
|
-
describeState(state),
|
|
93
|
-
"",
|
|
94
|
-
"Waiting on it. End your session now: you'll be started again, here, when it changes and nothing on it is still running.",
|
|
95
|
-
].join("\n"));
|
|
96
|
-
}
|
|
97
61
|
/**
|
|
98
62
|
* `dotreq solution pr open`: the solution's pull request, opened or
|
|
99
63
|
* found (PULL-2). Inside a runner the branch is pushed first, as a submission
|
|
@@ -140,14 +140,10 @@ export async function statusCommand(options) {
|
|
|
140
140
|
// other reviewer stalled. Asking, stalling and recording all take the
|
|
141
141
|
// agent off it.
|
|
142
142
|
const atIt = outcome.atWork?.some((each) => each.agent === where.agent && each.part === part) === true;
|
|
143
|
-
// PULL-5.2: a reviewer waiting on the pull request owes nothing until it
|
|
144
|
-
// starts again.
|
|
145
|
-
const waiting = part === "review" && outcome.waiting?.includes(where.agent) === true;
|
|
146
143
|
const owes = part === "draft"
|
|
147
144
|
? !setAside &&
|
|
148
145
|
(atIt || outcome.status === "drafting" || outcome.status === "ready")
|
|
149
|
-
:
|
|
150
|
-
(atIt || outcome.status === "reviewing") &&
|
|
146
|
+
: (atIt || outcome.status === "reviewing") &&
|
|
151
147
|
(await reviewerOwes(client, where.solutionId, outcome.name, where.agent));
|
|
152
148
|
if (options.json) {
|
|
153
149
|
process.stdout.write(`${JSON.stringify({ agent: where.agent, outcome: outcome.name, part, status: outcome.status, reason: outcome.reason ?? null, reviews: part === "review", ...(setAside ? { setAside } : {}), owes })}\n`);
|
package/dist/convex.d.ts
CHANGED
|
@@ -122,9 +122,6 @@ export declare const api: {
|
|
|
122
122
|
recordPush: import("convex/server").FunctionReference<"mutation", "public", any, any, string | undefined>;
|
|
123
123
|
removal: import("convex/server").FunctionReference<"query", "public", any, any, string | undefined>;
|
|
124
124
|
};
|
|
125
|
-
waits: {
|
|
126
|
-
waitOnPullRequest: import("convex/server").FunctionReference<"mutation", "public", any, any, string | undefined>;
|
|
127
|
-
};
|
|
128
125
|
};
|
|
129
126
|
lib: {
|
|
130
127
|
authActions: {
|
package/dist/convex.js
CHANGED
|
@@ -143,9 +143,6 @@ export const api = {
|
|
|
143
143
|
recordPush: mutation("solutions/branches:recordPush"),
|
|
144
144
|
removal: query("solutions/branches:removal"),
|
|
145
145
|
},
|
|
146
|
-
waits: {
|
|
147
|
-
waitOnPullRequest: mutation("solutions/waits:waitOnPullRequest"),
|
|
148
|
-
},
|
|
149
146
|
},
|
|
150
147
|
lib: {
|
|
151
148
|
authActions: {
|
package/package.json
CHANGED