@brainervirus/workit-opencode 1.0.6 → 1.0.8
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.
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: workit-babysit
|
|
3
|
-
description: Use when a PR needs driving to merge-ready, CI is red, or the user says babysit
|
|
3
|
+
description: Use after creating a PR (auto-starts, drive default), when a PR needs driving to merge-ready, CI is red, or the user says babysit
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Babysit a PR to merge-ready
|
|
7
7
|
|
|
8
|
-
Babysit starts automatically on PR creation unless declined (
|
|
8
|
+
Babysit starts automatically on PR creation unless declined (`babysit:false`).
|
|
9
9
|
One babysitter per PR; never mutate PR topology (no rebase strategy changes,
|
|
10
10
|
no force-push).
|
|
11
11
|
|
|
@@ -17,8 +17,11 @@ selects requirements; do not wait for a rule that can only exist after assess.
|
|
|
17
17
|
|
|
18
18
|
## Method
|
|
19
19
|
|
|
20
|
-
1. Declare mode: drive (fix + merge
|
|
20
|
+
1. Declare mode in the same turn as the PR URL: drive (fix + merge, the
|
|
21
|
+
default), watch (report only), or threads-only.
|
|
21
22
|
2. Work the merge frontier in order: conflicts → review threads → CI.
|
|
23
|
+
Record a frontier brief (frontier state, next action) in task progress
|
|
24
|
+
per pass so the steps stay visible.
|
|
22
25
|
3. Classify CI before retry: flake (rerun once) vs stale base (verify with
|
|
23
26
|
`git merge-base --is-ancestor` before updating) vs real failure (fix).
|
|
24
27
|
4. Triage bot findings skeptically: reproduce or quote code before acting;
|
package/dist/plugin.js
CHANGED
|
@@ -10796,7 +10796,7 @@ async function runAuthorizedExternalAction(input, effect) {
|
|
|
10796
10796
|
const preflight = typeof contract.details === "object" && contract.details !== null && contract.details.outcome === "not_started";
|
|
10797
10797
|
const outcome = input.failureOutcome ?? (preflight ? "not_started" : "unknown");
|
|
10798
10798
|
const settled = settleWithRefresh(outcome, settle(outcome));
|
|
10799
|
-
if (!settled.ok
|
|
10799
|
+
if (!settled.ok)
|
|
10800
10800
|
return settled;
|
|
10801
10801
|
return contract;
|
|
10802
10802
|
}
|
|
@@ -28308,10 +28308,10 @@ var detectBranchPolicy = (workspaceRoot) => {
|
|
|
28308
28308
|
|
|
28309
28309
|
// packages/workit-core/src/core/registration.ts
|
|
28310
28310
|
var CURSOR_RUNTIME_PACKAGE = "@brainervirus/workit-cursor@latest";
|
|
28311
|
-
var CURSOR_HOOK_RUN_COMMAND = `npx -y --prefer-online --package=${CURSOR_RUNTIME_PACKAGE} workit-cursor-hook`;
|
|
28311
|
+
var CURSOR_HOOK_RUN_COMMAND = `npx -y --prefer-online --min-release-age=0 --package=${CURSOR_RUNTIME_PACKAGE} workit-cursor-hook`;
|
|
28312
28312
|
function cursorHooksEntry(_packageDir) {
|
|
28313
28313
|
return {
|
|
28314
|
-
command: `npx -y --prefer-online --package=${CURSOR_RUNTIME_PACKAGE} workit-cursor-session-start`,
|
|
28314
|
+
command: `npx -y --prefer-online --min-release-age=0 --package=${CURSOR_RUNTIME_PACKAGE} workit-cursor-session-start`,
|
|
28315
28315
|
args: []
|
|
28316
28316
|
};
|
|
28317
28317
|
}
|
|
@@ -30789,7 +30789,7 @@ var resolveExternalActionRequest = (root, request, preservedDateMs) => {
|
|
|
30789
30789
|
if (preview.error)
|
|
30790
30790
|
return failure("invalid_input", preview.error);
|
|
30791
30791
|
const target = String(preview.path);
|
|
30792
|
-
const relative = path23.relative(
|
|
30792
|
+
const relative = path23.relative(fs13.realpathSync(root), target).replaceAll(path23.sep, "/") || "CHANGELOG.md";
|
|
30793
30793
|
const normalized = {
|
|
30794
30794
|
operation: request.operation,
|
|
30795
30795
|
payload: {
|
|
@@ -30897,6 +30897,7 @@ var resolveExternalActionRequest = (root, request, preservedDateMs) => {
|
|
|
30897
30897
|
return failure("storage_error", "external action target could not be resolved");
|
|
30898
30898
|
}
|
|
30899
30899
|
};
|
|
30900
|
+
var prBabysitNext = (output) => `Babysit ${output} to merge-ready (drive mode default). Follow skill workit-babysit: declare mode in this turn, work conflicts, review threads, then CI, and record a frontier brief in task progress per pass. Opt out with babysit:false.`;
|
|
30900
30901
|
var executeConcreteExternalAction = async (request, root, marker, dateMs, step, workText, caller, approvedBeforeDigest, approvedBeforeExists) => {
|
|
30901
30902
|
if (localAction(request.operation)) {
|
|
30902
30903
|
if (!caller)
|
|
@@ -30940,7 +30941,8 @@ var executeConcreteExternalAction = async (request, root, marker, dateMs, step,
|
|
|
30940
30941
|
return result.error || result.ok === false ? unknown3(request.operation) : success(null, null, {
|
|
30941
30942
|
...result,
|
|
30942
30943
|
babysit: request.payload.babysit ?? true,
|
|
30943
|
-
babysitSkill: "workit-babysit"
|
|
30944
|
+
babysitSkill: "workit-babysit",
|
|
30945
|
+
...request.payload.babysit ?? true ? { next: prBabysitNext(String(result.output ?? "")) } : {}
|
|
30944
30946
|
});
|
|
30945
30947
|
}
|
|
30946
30948
|
case "changelog.apply": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brainervirus/workit-opencode",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.8",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Workit OpenCode plugin — native tools, adaptive policy, and fourteen method skills",
|
|
6
6
|
"keywords": [
|
|
@@ -38,7 +38,7 @@
|
|
|
38
38
|
"typecheck": "tsc --noEmit"
|
|
39
39
|
},
|
|
40
40
|
"dependencies": {
|
|
41
|
-
"@brainervirus/workit-core": "^1.0.
|
|
41
|
+
"@brainervirus/workit-core": "^1.0.8"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
44
|
"@opencode-ai/plugin": "1.18.30"
|