@brainervirus/workit-cli 8.4.1 → 8.5.1

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.
Files changed (2) hide show
  1. package/dist/index.js +21 -8
  2. package/package.json +4 -4
package/dist/index.js CHANGED
@@ -65,7 +65,7 @@ var package_default;
65
65
  var init_package = __esm(() => {
66
66
  package_default = {
67
67
  name: "@brainervirus/workit-cli",
68
- version: "8.4.1",
68
+ version: "8.5.1",
69
69
  private: false,
70
70
  description: "Workit CLI — setup wizard, doctor, and task control for agentic coding workflows",
71
71
  keywords: [
@@ -103,9 +103,9 @@ var init_package = __esm(() => {
103
103
  },
104
104
  dependencies: {
105
105
  "@babel/parser": "7.29.9",
106
- "@brainervirus/workit-core": "^8.4.1",
107
- "@brainervirus/workit-cursor": "^8.4.1",
108
- "@brainervirus/workit-opencode": "^8.4.1",
106
+ "@brainervirus/workit-core": "^8.5.1",
107
+ "@brainervirus/workit-cursor": "^8.5.1",
108
+ "@brainervirus/workit-opencode": "^8.5.1",
109
109
  "@inkjs/ui": "2.0.0",
110
110
  ink: "7.1.1",
111
111
  react: "19.2.8"
@@ -15121,6 +15121,9 @@ function summarizeRow(row) {
15121
15121
  case "standing.cleared":
15122
15122
  summary = `cleared ${text("target") || "every standing order"} (fanout ${text("fanout")})`;
15123
15123
  break;
15124
+ case "skill.loaded":
15125
+ summary = `${text("skill")} (${text("via") || "tool"})${row.actor.session ? "" : " (no session)"}`;
15126
+ break;
15124
15127
  case "commit.recorded":
15125
15128
  summary = `${(row.head ?? "?").slice(0, 12)} ${text("subject")}${row.actor.session ? "" : " (no session)"}`;
15126
15129
  break;
@@ -76194,20 +76197,30 @@ async function status(argv, io) {
76194
76197
  return forgeFail(io, report);
76195
76198
  const doc = report.data.doc;
76196
76199
  const hint = nextHint(doc.next, doc.number);
76197
- return emit(io, ok({ ...doc, nextHint: hint, verdict: verdictBlock(io.cwd, doc.head.branch) }), (data) => {
76200
+ return emit(io, ok({ ...doc, nextHint: hint, verdict: verdictBlock(io.cwd, doc.head.branch, doc) }), (data) => {
76198
76201
  const lines = renderStatus(data);
76199
- lines.splice(lines.length - 1, 0, data.verdict ? `verdict: ${data.verdict.accepted ? `accepted (${data.verdict.basis})` : data.verdict.review === "self-reviewed" ? "self-reviewed (author's own verdict; not independent)" : `not accepted (${data.verdict.reasons.join(", ") || data.verdict.basis})`}` : "verdict: unknown (ledger unreadable)");
76202
+ lines.splice(lines.length - 1, 0, data.verdict?.merge ? `verdict: ${mergedVerdictLine(data.verdict.merge)}` : data.verdict ? `verdict: ${data.verdict.accepted ? `accepted (${data.verdict.basis})` : data.verdict.review === "self-reviewed" ? "self-reviewed (author's own verdict; not independent)" : `not accepted (${data.verdict.reasons.join(", ") || data.verdict.basis})`}` : "verdict: unknown (ledger unreadable)");
76200
76203
  if (data.nextHint)
76201
76204
  lines.splice(lines.length - 1, 0, `do: ${data.nextHint}`);
76202
76205
  return lines;
76203
76206
  });
76204
76207
  }
76205
- function verdictBlock(cwd, branch) {
76208
+ function verdictBlock(cwd, branch, doc) {
76206
76209
  const ledger = readLedger(cwd);
76207
76210
  if (!ledger.ok)
76208
76211
  return null;
76209
76212
  const check = checkVerdicts(cwd, branch, ledger.value.rows);
76213
+ let landed = null;
76214
+ if (doc.state === "merged") {
76215
+ const row = ledger.value.rows.findLast((candidate) => candidate.type === "pr.merged" && candidate.observer === "workit_cli" && candidate.pr === doc.number && candidate.base === doc.base);
76216
+ landed = row ? {
76217
+ head: typeof row.head === "string" ? row.head : null,
76218
+ verdictId: typeof row.verdictId === "string" ? row.verdictId : null,
76219
+ unverified: row.unverified !== undefined && row.unverified !== null
76220
+ } : "untracked";
76221
+ }
76210
76222
  return {
76223
+ merge: landed,
76211
76224
  accepted: check.accepted.accepted,
76212
76225
  review: check.review,
76213
76226
  basis: check.current.basis,
@@ -76493,7 +76506,7 @@ async function run10(argv, io) {
76493
76506
  return reply(rest, io);
76494
76507
  return usage3(io, sub && !sub.startsWith("-") ? `unknown pr subcommand "${sub}"` : "missing pr subcommand", USAGE4);
76495
76508
  }
76496
- var STATUS_USAGE = "workit pr status [--pr <n> | --branch <b>] [--log-lines 60] [--json]", CREATE_USAGE = "workit pr create [--base <b> | --track <t>] (--title <t> [--body <text> | --body-file <f|->] | --fill) [--label <l>]… [--reviewer <login>]… [--draft] [--json]", MERGE_USAGE = "workit pr merge [--pr <n>] [--method squash|merge|rebase] [--delete-branch] [--unverified --reason <why>] [--json]", READY_USAGE = "workit pr ready [--pr <n>] [--undo] [--json]", EDIT_USAGE = "workit pr edit [--pr <n>] [--title <t>] [--body-file <f|->] [--add-label <l>]… [--remove-label <l>]… [--add-reviewer <login>]… [--base <b>] [--json]", THREADS_USAGE = "workit pr threads [--pr <n>] [--json]", REPLY_USAGE = "workit pr reply [--pr <n>] --thread <id> [--body-file <f|->] [--resolve] [--json]", USAGE4 = "workit pr status|create|merge|ready|edit|threads|reply ... (workit help pr)", prLabel = (kind, number) => `${kind === "github" ? "PR #" : "MR !"}${number}`, METHODS2;
76509
+ var STATUS_USAGE = "workit pr status [--pr <n> | --branch <b>] [--log-lines 60] [--json]", CREATE_USAGE = "workit pr create [--base <b> | --track <t>] (--title <t> [--body <text> | --body-file <f|->] | --fill) [--label <l>]… [--reviewer <login>]… [--draft] [--json]", MERGE_USAGE = "workit pr merge [--pr <n>] [--method squash|merge|rebase] [--delete-branch] [--unverified --reason <why>] [--json]", READY_USAGE = "workit pr ready [--pr <n>] [--undo] [--json]", EDIT_USAGE = "workit pr edit [--pr <n>] [--title <t>] [--body-file <f|->] [--add-label <l>]… [--remove-label <l>]… [--add-reviewer <login>]… [--base <b>] [--json]", THREADS_USAGE = "workit pr threads [--pr <n>] [--json]", REPLY_USAGE = "workit pr reply [--pr <n>] --thread <id> [--body-file <f|->] [--resolve] [--json]", USAGE4 = "workit pr status|create|merge|ready|edit|threads|reply ... (workit help pr)", prLabel = (kind, number) => `${kind === "github" ? "PR #" : "MR !"}${number}`, mergedVerdictLine = (landed) => landed === "untracked" ? "merged outside workit (no merge record)" : landed.unverified ? `merged unverified at ${(landed.head ?? "?").slice(0, 12)} (recorded bypass)` : `merged with accepted verdict ${landed.verdictId ?? "?"} at ${(landed.head ?? "?").slice(0, 12)}`, METHODS2;
76497
76510
  var init_pr = __esm(() => {
76498
76511
  init_pr_body();
76499
76512
  init_pr_edit();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brainervirus/workit-cli",
3
- "version": "8.4.1",
3
+ "version": "8.5.1",
4
4
  "private": false,
5
5
  "description": "Workit CLI — setup wizard, doctor, and task control for agentic coding workflows",
6
6
  "keywords": [
@@ -38,9 +38,9 @@
38
38
  },
39
39
  "dependencies": {
40
40
  "@babel/parser": "7.29.9",
41
- "@brainervirus/workit-core": "^8.4.1",
42
- "@brainervirus/workit-cursor": "^8.4.1",
43
- "@brainervirus/workit-opencode": "^8.4.1",
41
+ "@brainervirus/workit-core": "^8.5.1",
42
+ "@brainervirus/workit-cursor": "^8.5.1",
43
+ "@brainervirus/workit-opencode": "^8.5.1",
44
44
  "@inkjs/ui": "2.0.0",
45
45
  "ink": "7.1.1",
46
46
  "react": "19.2.8"