@kitman-sh/software-engineering 0.10.61 → 0.10.62
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/bundle.js +6 -2
- package/dist/declarations.json +1 -1
- package/package.json +3 -3
- package/src/shepherd.ts +8 -1
package/dist/bundle.js
CHANGED
|
@@ -21275,6 +21275,7 @@ var shepherd_default = defineLoop({
|
|
|
21275
21275
|
let stalls = 0;
|
|
21276
21276
|
let unreviewed;
|
|
21277
21277
|
let notCarried;
|
|
21278
|
+
let behind = false;
|
|
21278
21279
|
const done = (status, reason) => ({ status, reason, fixRounds, replies });
|
|
21279
21280
|
const runOnRunner = (step, cycle, head, checks) => gen2(function* () {
|
|
21280
21281
|
const verification = `pipeline-${step}:${cycle}`;
|
|
@@ -21387,7 +21388,8 @@ var shepherd_default = defineLoop({
|
|
|
21387
21388
|
});
|
|
21388
21389
|
if (mergeable.type === commented.event)
|
|
21389
21390
|
continue;
|
|
21390
|
-
if (mergeable.payload.mergeable === false) {
|
|
21391
|
+
if (mergeable.payload.mergeable === false || behind) {
|
|
21392
|
+
behind = false;
|
|
21391
21393
|
const synced = yield* syncBase(`sync:${cycle}`, { agent: "implementer", target });
|
|
21392
21394
|
if (synced.status === "conflict")
|
|
21393
21395
|
return done("needs_you", `Merging ${target} in conflicts on ${synced.files.join(", ")}: ${synced.reason}`);
|
|
@@ -21493,6 +21495,8 @@ var shepherd_default = defineLoop({
|
|
|
21493
21495
|
changeRequestId,
|
|
21494
21496
|
head: pipeline.head
|
|
21495
21497
|
});
|
|
21498
|
+
if (merged.status === "conflict")
|
|
21499
|
+
behind = true;
|
|
21496
21500
|
if (merged.status !== "merged")
|
|
21497
21501
|
continue;
|
|
21498
21502
|
yield* writeBack("write-back", { milestone: "merged" });
|
|
@@ -29396,4 +29400,4 @@ var runKit = (config, identity, packages) => {
|
|
|
29396
29400
|
runMain2(program.pipe(flatMap3((code) => sync2(() => process.exit(code)))));
|
|
29397
29401
|
};
|
|
29398
29402
|
// .kitman-build-entry.ts
|
|
29399
|
-
runKit(kitman_config_default, { name: "@kitman-sh/software-engineering", version: "0.10.
|
|
29403
|
+
runKit(kitman_config_default, { name: "@kitman-sh/software-engineering", version: "0.10.62" }, []);
|
package/dist/declarations.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kitman-sh/software-engineering",
|
|
3
|
-
"version": "0.10.
|
|
3
|
+
"version": "0.10.62",
|
|
4
4
|
"description": "Everything for building software: Loops, their Agents, the skills they use and the Ponytail plugin.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -17,12 +17,12 @@
|
|
|
17
17
|
"tsconfig.json"
|
|
18
18
|
],
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@kitman-sh/sdk": "0.10.
|
|
20
|
+
"@kitman-sh/sdk": "0.10.62",
|
|
21
21
|
"effect": "4.1.2"
|
|
22
22
|
},
|
|
23
23
|
"kitman": {
|
|
24
24
|
"bundle": "dist/bundle.js",
|
|
25
|
-
"digest": "
|
|
25
|
+
"digest": "06bb59464e917a4c122b8587e1d0c70f0b1dbda3db6cec33d74cc3e5b21ffed1",
|
|
26
26
|
"protocolVersion": 5,
|
|
27
27
|
"declarations": "dist/declarations.json",
|
|
28
28
|
"setup": {
|
package/src/shepherd.ts
CHANGED
|
@@ -187,6 +187,8 @@ export default defineLoop({
|
|
|
187
187
|
|
|
188
188
|
/** Why an approval of the head is still needed after a catch-up merge, for a person who is left to give it. */
|
|
189
189
|
let notCarried: string | undefined
|
|
190
|
+
// The last merge did not go in as the ChangeRequest is: its target moved on, or it conflicts.
|
|
191
|
+
let behind = false
|
|
190
192
|
|
|
191
193
|
const done = (status: Output['status'], reason: string): Output => ({ status, reason, fixRounds, replies })
|
|
192
194
|
|
|
@@ -339,7 +341,9 @@ export default defineLoop({
|
|
|
339
341
|
|
|
340
342
|
if (mergeable.type === commented.event) continue
|
|
341
343
|
|
|
342
|
-
if (mergeable.payload.mergeable === false) {
|
|
344
|
+
if (mergeable.payload.mergeable === false || behind) {
|
|
345
|
+
behind = false
|
|
346
|
+
|
|
343
347
|
const synced = yield* syncBase(`sync:${cycle}`, { agent: 'implementer', target })
|
|
344
348
|
|
|
345
349
|
if (synced.status === 'conflict')
|
|
@@ -500,6 +504,9 @@ export default defineLoop({
|
|
|
500
504
|
head: pipeline.head
|
|
501
505
|
})
|
|
502
506
|
|
|
507
|
+
// Its target moved on, with no Event to say so, or it conflicts: merge the target in, as for a not-mergeable one.
|
|
508
|
+
if (merged.status === 'conflict') behind = true
|
|
509
|
+
|
|
503
510
|
if (merged.status !== 'merged') continue
|
|
504
511
|
yield* writeBack('write-back', { milestone: 'merged' })
|
|
505
512
|
|