@brainervirus/workit-core 8.5.0 → 8.5.2

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.5.0",
3
+ "version": "8.5.2",
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": [
@@ -49,7 +49,7 @@ const SKILL_HOST: Record<HostId, SkillHost> = {
49
49
  const PROMPT_INTENTS: ReadonlyArray<readonly [WorkitSkill, RegExp]> = [
50
50
  [
51
51
  "workit-debug",
52
- /\b(flaky|regression|(?:is|are|got|looks) broken|debug (?:this|it|the|why)|fix (?:the|this|a) bug)\b/i,
52
+ /\b(flaky|regressed|(?:is|introduced) a regression|regression (?:in|after|since|from)|(?:is|are|got|looks) broken|debug (?:this|it|the|why)|fix (?:the|this|a) bug)\b/i,
53
53
  ],
54
54
  [
55
55
  "workit-continue",
@@ -61,14 +61,17 @@ const PROMPT_INTENTS: ReadonlyArray<readonly [WorkitSkill, RegExp]> = [
61
61
  ],
62
62
  [
63
63
  "workit-ship",
64
- /\b(ship (?:it|this|the)|babysit|open (?:a|the) (?:PR|pr|MR|mr)|merge (?:the|this|my) (?:PR|pr|MR|mr|branch)|(?:get|until|make) CI (?:is )?green)\b/i,
64
+ /\b(ship (?:it|this|the)|babysit|open (?:a|the) (?:PR|pr|MR|mr)(?=\s*$|\s+(?:for|to|on|with|and|against|into|from|after|once)\b|[.!,;])|merge (?:the|this|my) (?:PR|pr|MR|mr|branch)|(?:get|until|make) CI (?:is )?green)\b/i,
65
65
  ],
66
66
  ["workit-bdd", /\b(BDD|TDD|acceptance criteria|Given\/When\/Then)(?![\w/])/],
67
67
  ["workit-test-audit", /\b(test audit|audit the tests|tautolog\w*|weak tests)\b/i],
68
68
  ["workit-deslop", /\b(deslop|slop|dead code)\b/i],
69
- ["workit-fanout", /\b(fan(?: |-)?out|parallelize|parallel agents|swarm)\b/i],
69
+ [
70
+ "workit-fanout",
71
+ /\b(fan(?: |-)?out|parallelize|parallel agents|agent swarm|swarm of agents)\b/i,
72
+ ],
70
73
  ["workit-verify-app", /\b(verify the app|smoke test|prove it works)\b/i],
71
- ["workit-retro", /\b(retro|retrospective)\b(?!\.\w)/i],
74
+ ["workit-retro", /\b((?:a|the) retro(?![-\w]|\.\w)|retrospective)/i],
72
75
  ["workit-architecture", /\b(deepen (?:the )?modules|architecture (?:review|pass|audit))\b/i],
73
76
  [
74
77
  "workit-shape",
@@ -170,6 +173,8 @@ const READERS = new Set([
170
173
  export const skillReadIn = (command: string, dialect: ShellDialect = "posix"): string | null => {
171
174
  for (const { words } of segmentsOf(command, dialect)) {
172
175
  if (!READERS.has((words[0]?.split(/[\\/]/).at(-1) ?? "").toLowerCase())) continue;
176
+ // `sed -i` edits the file; it does not load it.
177
+ if (words.some((word) => /^(?:-i(?:\.\w+)?|--in-place(?:=.*)?)$/.test(word))) continue;
173
178
  for (const word of words.slice(1)) {
174
179
  const skill = skillFileIn(word);
175
180
  if (skill) return skill;