@brainervirus/workit-core 8.26.0 → 8.27.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@brainervirus/workit-core",
3
- "version": "8.26.0",
3
+ "version": "8.27.0",
4
4
  "private": false,
5
5
  "description": "Workit shared core — task, policy, evidence, review, decision, worker, and writer state for agentic coding workflows",
6
6
  "keywords": [
@@ -14,12 +14,12 @@
14
14
  "@alcalzone/ansi-tokenize",
15
15
  "@babel/parser",
16
16
  "@inkjs/ui",
17
+ "@inkjs/ui/chalk",
17
18
  "@openclaw/fs-safe",
18
19
  "ansi-escapes",
19
20
  "ansi-regex",
20
21
  "ansi-styles",
21
22
  "auto-bind",
22
- "chalk",
23
23
  "cli-boxes",
24
24
  "cli-cursor",
25
25
  "cli-truncate",
@@ -33,6 +33,7 @@
33
33
  "get-east-asian-width",
34
34
  "indent-string",
35
35
  "ink",
36
+ "ink/chalk",
36
37
  "is-fullwidth-code-point",
37
38
  "is-in-ci",
38
39
  "is-unicode-supported",
@@ -84,12 +85,12 @@
84
85
  "@alcalzone/ansi-tokenize",
85
86
  "@babel/parser",
86
87
  "@inkjs/ui",
88
+ "@inkjs/ui/chalk",
87
89
  "@openclaw/fs-safe",
88
90
  "ansi-escapes",
89
91
  "ansi-regex",
90
92
  "ansi-styles",
91
93
  "auto-bind",
92
- "chalk",
93
94
  "cli-boxes",
94
95
  "cli-cursor",
95
96
  "cli-truncate",
@@ -103,6 +104,7 @@
103
104
  "get-east-asian-width",
104
105
  "indent-string",
105
106
  "ink",
107
+ "ink/chalk",
106
108
  "is-fullwidth-code-point",
107
109
  "is-in-ci",
108
110
  "is-unicode-supported",
@@ -16,7 +16,7 @@ if [ ! -f "$SOURCE/packages/workit-pi/dist/workit.js" ] && [ -f "$SHARE/packages
16
16
  SOURCE="$SHARE"
17
17
  fi
18
18
 
19
- # pi 0.85.1 loads extensions from the settings `packages` list, not from
19
+ # pi 1.4.0 loads extensions from the settings `packages` list, not from
20
20
  # ~/.pi/config.json below. Register the absolute package dir there (honoring
21
21
  # PI_CODING_AGENT_DIR) so `pi list` picks it up; the config.json write stays
22
22
  # because uninstall and detection still key pi state off it — migrating
@@ -75,12 +75,11 @@ export const isAllowedWorkitCall = (
75
75
 
76
76
  const bypassReason = (flag: string) =>
77
77
  `Workit: \`${flag}\` overrides a Workit gate, so the user decides this call (no allow rule covers it).`;
78
- const EXPANSION_REASON =
79
- "Workit: an expansion before `--` could become a bypass flag, so the user decides this call (no allow rule covers it).";
80
78
 
81
79
  /**
82
80
  * The ask reason for a Workit call in `command` that carries a bypass flag
83
- * before its `--` or a word the shell expands there, or null. Words are read after shell quoting, so `"--unverified"`,
81
+ * before its `--`, or null. A word the shell expands (`$F`, `${F:---unverified}`) is not read: its text is not what runs, and the
82
+ * merge grant and `--reason` stay the gate. Words are read after shell quoting, so `"--unverified"`,
84
83
  * `--unverif''ied` or a tab-separated flag are found where a host's string
85
84
  * rule could miss them. A command the tokenizer cannot analyze is judged on
86
85
  * its text with quotes and backslashes removed.
@@ -102,8 +101,6 @@ export const workitBypassFlag = (
102
101
  const end = words.indexOf("--");
103
102
  const flag = (end < 0 ? words : words.slice(0, end)).find(isBypass);
104
103
  if (flag) return bypassReason(flag.split("=")[0] ?? flag);
105
- const limit = start + 1 + (end < 0 ? words.length : end);
106
- if (segment.expands?.some((index) => index > start && index < limit)) return EXPANSION_REASON;
107
104
  }
108
105
  return null;
109
106
  };
@@ -4,7 +4,7 @@ import type { HostDescriptor } from "../descriptor";
4
4
  export const PI_DESCRIPTOR: HostDescriptor = {
5
5
  host: "pi",
6
6
  label: "Pi",
7
- verifiedAgainst: "@earendil-works/pi-coding-agent 0.85.1",
7
+ verifiedAgainst: "@earendil-works/pi-coding-agent 1.4.0",
8
8
  docs: ["https://github.com/earendil-works/pi-coding-agent"],
9
9
  transport: "in-process-plugin",
10
10
  events: {
@@ -20,7 +20,7 @@ export const PI_DESCRIPTOR: HostDescriptor = {
20
20
  "prompt.submit": { support: "undocumented", native: null },
21
21
  "compact.pre": { support: "native", native: "session_before_compact" },
22
22
  // agent_end carries the run's messages; pi.sendMessage(…, {triggerTurn})
23
- // starts one more turn (pi-coding-agent 0.85.1 types.d.ts). The host has
23
+ // starts one more turn (pi-coding-agent 1.4.0 types.d.ts). The host has
24
24
  // no loop guard: the extension continues at most once per run.
25
25
  stop: { support: "native", native: "agent_end" },
26
26
  },