@hivehub/rulebook 5.8.0 → 5.8.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.
@@ -51,7 +51,7 @@ export declare function configureClaudeSettings(projectRoot: string): Promise<bo
51
51
  * Creates the target directory even when no source templates exist.
52
52
  * Returns the list of installed file names.
53
53
  */
54
- export declare function installAgentDefinitions(projectRoot: string, templatesPath: string): Promise<string[]>;
54
+ export declare function installAgentDefinitions(projectRoot: string, templatesPath: string, language?: string): Promise<string[]>;
55
55
  /**
56
56
  * Install multi-agent workflow scripts into .claude/workflows/.
57
57
  * Copies templates/claude-workflows/*.js to the project's .claude/workflows/
@@ -1 +1 @@
1
- {"version":3,"file":"claude-mcp.d.ts","sourceRoot":"","sources":["../../../src/core/claude/claude-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,4BAA4B,EAAE,MAAM,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9E;AAcD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAwCjG;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBnF;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAWD;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,CAAC,CAyChC"}
1
+ {"version":3,"file":"claude-mcp.d.ts","sourceRoot":"","sources":["../../../src/core/claude/claude-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAcH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,4BAA4B,EAAE,MAAM,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9E;AAcD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAwCjG;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAED;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAyBnF;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,EAAE,CAAC,CA+BnB;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAyBnB;AAWD;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,EACtB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,qBAAqB,CAAC,CAoDhC"}
@@ -11,6 +11,8 @@ import { homedir } from 'os';
11
11
  import { readdir } from 'fs/promises';
12
12
  import { fileExists, readFile, writeFile, ensureDir } from '../../utils/file-system.js';
13
13
  import { WorkspaceManager } from '../workspace/workspace-manager.js';
14
+ import { resolveAgentPlaceholders, substituteAgentPlaceholders, } from '../generators/generator.js';
15
+ import { detectProject } from '../detect/detector.js';
14
16
  /**
15
17
  * Detect if Claude Code is installed by checking for ~/.claude directory
16
18
  */
@@ -156,13 +158,18 @@ export async function configureClaudeSettings(projectRoot) {
156
158
  * Creates the target directory even when no source templates exist.
157
159
  * Returns the list of installed file names.
158
160
  */
159
- export async function installAgentDefinitions(projectRoot, templatesPath) {
161
+ export async function installAgentDefinitions(projectRoot, templatesPath, language) {
160
162
  const agentsSourceDir = join(templatesPath, 'agents');
161
163
  const agentsTargetDir = join(projectRoot, '.claude', 'agents');
162
164
  await ensureDir(agentsTargetDir);
163
165
  if (!(await fileExists(agentsSourceDir))) {
164
166
  return [];
165
167
  }
168
+ // Agent templates carry {{language}}/{{file_naming}}/{{test_framework}}
169
+ // placeholders. Resolve them from the project's primary language so the
170
+ // installed agents are stack-correct (e.g. TypeScript/kebab-case/vitest)
171
+ // instead of leaking raw placeholders to the consumer.
172
+ const placeholders = resolveAgentPlaceholders(language);
166
173
  const entries = await readdir(agentsSourceDir);
167
174
  const installed = [];
168
175
  for (const entry of entries) {
@@ -171,7 +178,7 @@ export async function installAgentDefinitions(projectRoot, templatesPath) {
171
178
  const sourcePath = join(agentsSourceDir, entry);
172
179
  const targetPath = join(agentsTargetDir, entry);
173
180
  const content = await readFile(sourcePath);
174
- await writeFile(targetPath, content);
181
+ await writeFile(targetPath, substituteAgentPlaceholders(content, placeholders));
175
182
  installed.push(entry);
176
183
  }
177
184
  return installed;
@@ -235,7 +242,16 @@ export async function setupClaudeCodeIntegration(projectRoot, templatesPath, hom
235
242
  const skillsInstalled = await installClaudeCodeSkills(projectRoot, resolvedTemplatesPath);
236
243
  const devSkillsInstalled = await installDevSkills(projectRoot, resolvedTemplatesPath);
237
244
  const agentTeamsEnabled = await configureClaudeSettings(projectRoot);
238
- const agentDefinitionsInstalled = await installAgentDefinitions(projectRoot, resolvedTemplatesPath);
245
+ // Resolve the project's primary language so agent placeholders render correctly.
246
+ let primaryLanguage;
247
+ try {
248
+ const detection = await detectProject(projectRoot);
249
+ primaryLanguage = detection.languages[0]?.language;
250
+ }
251
+ catch {
252
+ // Detection failure → installAgentDefinitions falls back to TypeScript defaults.
253
+ }
254
+ const agentDefinitionsInstalled = await installAgentDefinitions(projectRoot, resolvedTemplatesPath, primaryLanguage);
239
255
  const workflowDefinitionsInstalled = await installWorkflowDefinitions(projectRoot, resolvedTemplatesPath);
240
256
  return {
241
257
  detected: true,
@@ -1 +1 @@
1
- {"version":3,"file":"claude-mcp.js","sourceRoot":"","sources":["../../../src/core/claude/claude-mcp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-mcp.js","sourceRoot":"","sources":["../../../src/core/claude/claude-mcp.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACxF,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EACL,wBAAwB,EACxB,2BAA2B,GAC5B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAYtD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAAgB;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,IAAI,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACxD,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,SAAS,kBAAkB,CAAC,SAAmB;IAC7C,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,0BAA0B,EAAE,YAAY,CAAC,CAAC;IAC9D,IAAI,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,WAAmB,EAAE,SAAmB;IAC7E,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEnD,IAAI,SAAS,GAA6C,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAE7E,IAAI,MAAM,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,CAAC;YACxC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;YAClC,SAAS,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;IAED,SAAS,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,EAAE,CAAC;IAElD,MAAM,YAAY,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAEnD,IAAI,SAAS,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,SAAS,CAAC,UAAU,CAAC,QAA+B,CAAC;QACtE,MAAM,oBAAoB,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,gBAAgB,CAAC,CAAC;QACvE,uEAAuE;QACvE,MAAM,kBAAkB,GAAG,SAAS,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,CAAC;QAEhF,IAAI,oBAAoB,IAAI,kBAAkB,EAAE,CAAC;YAC/C,QAAQ,CAAC,IAAI,GAAG,YAAY,CAAC;YAC7B,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;QAC1E,CAAC;QAED,OAAO,KAAK,CAAC,CAAC,4CAA4C;IAC5D,CAAC;IAED,SAAS,CAAC,UAAU,CAAC,QAAQ,GAAG;QAC9B,OAAO,EAAE,KAAK;QACd,IAAI,EAAE,YAAY;KACnB,CAAC;IAEF,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,aAAqB;IAErB,MAAM,iBAAiB,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;IAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAEnE,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,iBAAiB,CAAC,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAEnC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IACjD,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAErC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAClD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC;QAElD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,WAAmB,EACnB,aAAqB;IAErB,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAE/D,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,CAAC,eAAe,CAAC,CAAC;IAEjC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,eAAe,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;YAAE,SAAS;QAEnC,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAChE,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;YAAE,SAAS;QAE7C,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACzD,MAAM,SAAS,CAAC,cAAc,CAAC,CAAC;QAEhC,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,SAAS,CAAC,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3D,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,WAAmB;IAC/D,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAEnE,IAAI,QAAQ,GAA4B,EAAE,CAAC;IAE3C,IAAI,MAAM,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;YACzC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,QAAQ,GAAG,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;IAED,MAAM,GAAG,GAAI,QAAQ,CAAC,GAA0C,IAAI,EAAE,CAAC;IAEvE,IAAI,GAAG,CAAC,oCAAoC,KAAK,GAAG,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,QAAQ,CAAC,GAAG,GAAG,EAAE,GAAG,GAAG,EAAE,oCAAoC,EAAE,GAAG,EAAE,CAAC;IAErE,MAAM,SAAS,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;IAC9C,MAAM,SAAS,CAAC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,WAAmB,EACnB,aAAqB,EACrB,QAAiB;IAEjB,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IACtD,MAAM,eAAe,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAE/D,MAAM,SAAS,CAAC,eAAe,CAAC,CAAC;IAEjC,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,wEAAwE;IACxE,wEAAwE;IACxE,yEAAyE;IACzE,uDAAuD;IACvD,MAAM,YAAY,GAAG,wBAAwB,CAAC,QAAQ,CAAC,CAAC;IAExD,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,eAAe,CAAC,CAAC;IAC/C,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAErC,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;QAEhD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,SAAS,CAAC,UAAU,EAAE,2BAA2B,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC,CAAC;QAChF,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAAmB,EACnB,aAAqB;IAErB,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;IACnE,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAErE,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC;QAC5C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,CAAC,kBAAkB,CAAC,CAAC;IAEpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAClD,MAAM,SAAS,GAAa,EAAE,CAAC;IAE/B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,SAAS;QAErC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QACnD,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;QAEnD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACrC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB;IACvB,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACtC,OAAO,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,WAAmB,EACnB,aAAsB,EACtB,OAAgB;IAEhB,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAEtD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO;YACL,QAAQ,EAAE,KAAK;YACf,aAAa,EAAE,KAAK;YACpB,eAAe,EAAE,EAAE;YACnB,kBAAkB,EAAE,EAAE;YACtB,iBAAiB,EAAE,KAAK;YACxB,yBAAyB,EAAE,EAAE;YAC7B,4BAA4B,EAAE,EAAE;SACjC,CAAC;IACJ,CAAC;IAED,MAAM,qBAAqB,GAAG,aAAa,IAAI,gBAAgB,EAAE,CAAC;IAElE,yDAAyD;IACzD,MAAM,WAAW,GAAG,gBAAgB,CAAC,mBAAmB,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/E,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IACvE,MAAM,eAAe,GAAG,MAAM,uBAAuB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IAC1F,MAAM,kBAAkB,GAAG,MAAM,gBAAgB,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IACtF,MAAM,iBAAiB,GAAG,MAAM,uBAAuB,CAAC,WAAW,CAAC,CAAC;IAErE,iFAAiF;IACjF,IAAI,eAAmC,CAAC;IACxC,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,WAAW,CAAC,CAAC;QACnD,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,iFAAiF;IACnF,CAAC;IAED,MAAM,yBAAyB,GAAG,MAAM,uBAAuB,CAC7D,WAAW,EACX,qBAAqB,EACrB,eAAe,CAChB,CAAC;IACF,MAAM,4BAA4B,GAAG,MAAM,0BAA0B,CACnE,WAAW,EACX,qBAAqB,CACtB,CAAC;IAEF,OAAO;QACL,QAAQ,EAAE,IAAI;QACd,aAAa;QACb,eAAe;QACf,kBAAkB;QAClB,iBAAiB;QACjB,yBAAyB;QACzB,4BAA4B;KAC7B,CAAC;AACJ,CAAC"}
@@ -13,7 +13,7 @@ export declare function generateDelegationSection(config: ProjectConfig): string
13
13
  /**
14
14
  * Resolve placeholder values from project config.
15
15
  */
16
- export declare function resolveAgentPlaceholders(config: ProjectConfig): Record<string, string>;
16
+ export declare function resolveAgentPlaceholders(config: ProjectConfig | string | undefined): Record<string, string>;
17
17
  /**
18
18
  * Substitute placeholders in agent template content.
19
19
  */
@@ -1 +1 @@
1
- {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/core/generators/generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAWpD,wBAAgB,eAAe,IAAI,MAAM,CAKxC;AAcD,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAgVlF;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS7E;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAezE;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAa3E;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDxE;AAgQD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAwCvE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA+CtF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,MAAM,CAMR;AA4BD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,sGAKxB,CAAC;AAEX;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CAsBf;AAmBD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAwTjB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,aAAa,EACzB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAiCjB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAGjB"}
1
+ {"version":3,"file":"generator.d.ts","sourceRoot":"","sources":["../../../src/core/generators/generator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAWpD,wBAAgB,eAAe,IAAI,MAAM,CAKxC;AAcD,wBAAsB,qBAAqB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAgVlF;AAED,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS7E;AAED,wBAAsB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAezE;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAa3E;AAED,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAqDxE;AAgQD;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAwCvE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,aAAa,GAAG,MAAM,GAAG,SAAS,GACzC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAgDxB;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,MAAM,CAMR;AA4BD;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,sGAKxB,CAAC;AAEX;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,MAAM,EACjB,eAAe,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,GAC7B,OAAO,CAAC,IAAI,CAAC,CAsBf;AAmBD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAwTjB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,aAAa,EACzB,YAAY,EAAE,MAAM,GACnB,OAAO,CAAC,IAAI,CAAC,CAuCf;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAiCjB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,aAAa,EACrB,WAAW,GAAE,MAAsB,GAClC,OAAO,CAAC,MAAM,CAAC,CAGjB"}
@@ -621,7 +621,7 @@ export function generateDelegationSection(config) {
621
621
  * Resolve placeholder values from project config.
622
622
  */
623
623
  export function resolveAgentPlaceholders(config) {
624
- const primaryLang = config.languages?.[0] || 'TypeScript';
624
+ const primaryLang = (typeof config === 'string' ? config : config?.languages?.[0]) || 'TypeScript';
625
625
  // Map language to common test framework
626
626
  const testFrameworkMap = {
627
627
  typescript: 'vitest',
@@ -1 +1 @@
1
- {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/core/generators/generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/core/generators/generator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hivehub/rulebook",
3
- "version": "5.8.0",
3
+ "version": "5.8.2",
4
4
  "description": "Tool-agnostic AI development framework. Standardize projects across Claude Code, Cursor, Gemini, Codex, Windsurf, Copilot with automated templates, quality gates, persistent memory, and framework detection for 28 languages, 17 frameworks, 13 MCP modules, and 20 services",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -4,6 +4,8 @@ description: "Use this agent when you need to track project progress, update tas
4
4
  model: haiku
5
5
  color: blue
6
6
  memory: project
7
+ tools: Read, Glob, Grep, Bash, Write, Edit
8
+ maxTurns: 20
7
9
  ---
8
10
 
9
11
  You are an elite Project Manager and Technical Lead with deep expertise in software development lifecycle management, agile methodologies, quality assurance, and continuous delivery. You have 15+ years of experience managing complex software projects, tracking deliverables, conducting code reviews, and ensuring teams maintain high standards of quality and test coverage.
@@ -4,6 +4,9 @@ description: "Use this agent when code has been written or modified and needs to
4
4
  model: opus
5
5
  color: purple
6
6
  memory: project
7
+ tools: Read, Glob, Grep, Bash
8
+ disallowedTools: Write, Edit
9
+ maxTurns: 25
7
10
  ---
8
11
 
9
12
  You are a Senior Software Quality Engineer and Security Specialist with 20+ years of experience in code review, static analysis, security auditing, and quality assurance across enterprise-grade systems. You have deep expertise in OWASP security standards, SOLID principles, clean code practices, design patterns, and software testing methodologies. You are the final quality gate — nothing ships without your approval.
@@ -2,7 +2,7 @@ export const meta = {
2
2
  name: 'review-fanout',
3
3
  description:
4
4
  'Adversarial multi-dimension review of the current git diff (correctness, security, performance, tests). Each finding is independently verified before it survives, then synthesized into a prioritized report.',
5
- phases: [{ title: 'Review' }, { title: 'Verify' }, { title: 'Synthesize', model: 'opus' }],
5
+ phases: [{ title: 'Review' }, { title: 'Verify' }, { title: 'Synthesize', model: 'sonnet' }],
6
6
  }
7
7
 
8
8
  const FINDINGS_SCHEMA = {
@@ -64,16 +64,23 @@ const DIMENSIONS = [
64
64
  },
65
65
  ]
66
66
 
67
- // Optional path-scoping: when invoked with args.paths, review ONLY those files (the
68
- // caller's changeset) instead of the whole uncommitted diff. Avoids re-reviewing
69
- // unrelated accumulated changes when there are no commits between units of work.
70
- const scopePaths = args && Array.isArray(args.paths) && args.paths.length ? args.paths : null
71
- const diffCmd = scopePaths
72
- ? `git --no-pager diff -- ${scopePaths.join(' ')} ; git --no-pager diff --staged -- ${scopePaths.join(' ')}`
73
- : 'git --no-pager diff ; git --no-pager diff --staged'
74
- const scopeNote = scopePaths
75
- ? `Review ONLY these files (the caller's changeset): ${scopePaths.join(', ')}. Ignore changes in any other file.`
76
- : 'Review the full current diff.'
67
+ // Scoping, in priority order:
68
+ // args.baseRef review everything committed since this ref (`git diff <ref>..HEAD`).
69
+ // Preferred when the caller commits each unit of work (rulebook-driver).
70
+ // args.paths — review only these files in the uncommitted working-tree diff.
71
+ // (neither) — review the full uncommitted diff.
72
+ const baseRef = args && typeof args.baseRef === 'string' && args.baseRef ? args.baseRef : null
73
+ const scopePaths = !baseRef && args && Array.isArray(args.paths) && args.paths.length ? args.paths : null
74
+ const diffCmd = baseRef
75
+ ? `git --no-pager diff ${baseRef}..HEAD`
76
+ : scopePaths
77
+ ? `git --no-pager diff -- ${scopePaths.join(' ')} ; git --no-pager diff --staged -- ${scopePaths.join(' ')}`
78
+ : 'git --no-pager diff ; git --no-pager diff --staged'
79
+ const scopeNote = baseRef
80
+ ? `Review ONLY the changes committed since ${baseRef} (this task's changeset). Ignore anything before that ref.`
81
+ : scopePaths
82
+ ? `Review ONLY these files (the caller's changeset): ${scopePaths.join(', ')}. Ignore changes in any other file.`
83
+ : 'Review the full current diff.'
77
84
 
78
85
  // Pipeline: each dimension's findings verify as soon as that dimension finishes —
79
86
  // no barrier, so the fast haiku security pass is not blocked by the slower lenses.
@@ -112,7 +119,7 @@ phase('Synthesize')
112
119
  const report = await agent(
113
120
  `Synthesize a prioritized code-review report from these confirmed findings (already verified as real). Group by severity, give each a one-line fix recommendation, and lead with blockers.
114
121
  ${JSON.stringify(confirmed, null, 2)}`,
115
- { label: 'synthesize', phase: 'Synthesize', model: 'opus' }
122
+ { label: 'synthesize', phase: 'Synthesize', model: 'sonnet' }
116
123
  )
117
124
 
118
125
  return { confirmedCount: confirmed.length, confirmed, blocking, report }
@@ -1,31 +1,38 @@
1
1
  export const meta = {
2
2
  name: 'rulebook-driver',
3
3
  description:
4
- 'Drain the rulebook backlog in a loop: discover the next unchecked task item, implement it, gate it through an independent SDD+TDD opus reviewer (max 3 rounds), document it, then move to the next item — until none remain, a item fails review, the item cap is hit, or the token budget runs low.',
4
+ 'Drain the rulebook backlog in a loop: discover the next unchecked task item, implement it, gate it through an independent SDD+TDD opus reviewer (max 3 rounds), document it, COMMIT it, then move to the next item — until none remain, a item fails review, the item cap is hit, or the token budget runs low. Each approved item is committed before the next starts, so the working tree is clean between items and every gate sees only the relevant diff.',
5
5
  phases: [
6
6
  { title: 'Discover', detail: 'find first unchecked item (lowest phase)', model: 'haiku' },
7
7
  { title: 'Implement', detail: 'dev implements; independent opus reviewer gates; loop ≤3', model: 'sonnet' },
8
8
  { title: 'Review', detail: 'independent full SDD+TDD review', model: 'opus' },
9
- { title: 'Fanout', detail: 'review-fanout adversarial diff review per approved item' },
10
9
  { title: 'Document', detail: 'docs-writer updates README/CHANGELOG', model: 'haiku' },
11
- { title: 'Gate', detail: 'release-gate go/no-go once the backlog is drained' },
10
+ { title: 'Commit', detail: 'commit the approved item (conventional, hooks must pass)', model: 'sonnet' },
11
+ { title: 'Fanout', detail: 'OPT-IN ({ fanout: true }) review-fanout adversarial review of the task changeset', model: 'sonnet' },
12
+ { title: 'Gate', detail: 'release-gate go/no-go once the backlog is drained', model: 'sonnet' },
12
13
  ],
13
14
  }
14
15
 
15
16
  // ---- Tunables (override via args) ------------------------------------------
16
- // args: { once?: boolean, maxItems?: number, minBudget?: number, fanoutRounds?: number }
17
+ // args: { once?, maxItems?, minBudget?, fanout?, fanoutRounds? }
17
18
  // once — process a single item then stop (legacy one-shot behavior)
18
19
  // maxItems — hard cap on items processed in one run (default 25 safety stop)
19
20
  // minBudget — stop before the next item if remaining tokens fall below this
20
- // fanoutRounds max review-fanout remediation rounds per completed task (default 2)
21
+ // fanout run the per-task review-fanout adversarial gate. DEFAULT false
22
+ // (it is the most token-expensive phase). Pass { fanout: true } to
23
+ // enable. The per-item SDD+TDD opus review + the commit hooks still
24
+ // run regardless; fanout is the extra multi-dimension pass.
25
+ // fanoutRounds — max review-fanout remediation rounds per completed task (default 1)
21
26
  const opts = args && typeof args === 'object' ? args : {}
22
27
  const ONCE = opts.once === true
23
28
  const MAX_ITEMS = typeof opts.maxItems === 'number' ? opts.maxItems : 25
24
29
  const MIN_BUDGET = typeof opts.minBudget === 'number' ? opts.minBudget : 60_000
25
30
  const MAX_REVIEW_ROUNDS = 3
31
+ // Fanout is OFF by default — opt in with { fanout: true }.
32
+ const FANOUT_ENABLED = opts.fanout === true
26
33
  // Per-completed-task adversarial gate. Counted SEPARATELY from MAX_REVIEW_ROUNDS so a
27
34
  // fanout finding never competes with the per-item SDD/TDD round budget.
28
- const MAX_FANOUT_ROUNDS = typeof opts.fanoutRounds === 'number' ? opts.fanoutRounds : 2
35
+ const MAX_FANOUT_ROUNDS = typeof opts.fanoutRounds === 'number' ? opts.fanoutRounds : 1
29
36
 
30
37
  // ---- Structured-output schemas --------------------------------------------
31
38
 
@@ -73,19 +80,55 @@ const VERDICT_SCHEMA = {
73
80
  },
74
81
  }
75
82
 
76
- const FILES_SCHEMA = {
83
+ const HEAD_SCHEMA = {
77
84
  type: 'object',
78
85
  additionalProperties: false,
79
- required: ['files'],
86
+ required: ['sha'],
87
+ properties: { sha: { type: 'string', description: 'full commit sha of HEAD' } },
88
+ }
89
+
90
+ const COMMIT_SCHEMA = {
91
+ type: 'object',
92
+ additionalProperties: false,
93
+ required: ['committed', 'sha', 'message'],
80
94
  properties: {
81
- files: {
82
- type: 'array',
83
- items: { type: 'string' },
84
- description: 'union of changed file paths from `git diff --name-only` and `--staged`',
85
- },
95
+ committed: { type: 'boolean', description: 'true only if a commit was actually created and hooks passed' },
96
+ sha: { type: 'string', description: 'the new commit sha; empty if not committed' },
97
+ message: { type: 'string', description: 'the conventional-commit message used' },
98
+ error: { type: 'string', description: 'reason / hook output when committed=false' },
86
99
  },
87
100
  }
88
101
 
102
+ // ---- Git helpers (agent-run, since workflows cannot exec shell directly) ----
103
+
104
+ async function gitHead() {
105
+ const r = await agent(
106
+ 'Run `git rev-parse HEAD` and return the full commit sha as { sha }.',
107
+ { label: 'git-head', phase: 'Discover', agentType: 'researcher', model: 'haiku', schema: HEAD_SCHEMA }
108
+ )
109
+ return r && r.sha ? r.sha : 'HEAD'
110
+ }
111
+
112
+ // Commit the current working tree as ONE conventional commit. The project's pre-commit
113
+ // hooks (type-check + lint + tests) run here and MUST pass — never bypass with --no-verify.
114
+ // Returns COMMIT_SCHEMA. committed=false signals the commit/quality gate failed.
115
+ async function commitWork(label, context, specPaths) {
116
+ return agent(
117
+ `Commit the current working-tree changes as ONE Conventional Commits commit.
118
+
119
+ Context: ${context}
120
+ Specs (for scope/context): ${(specPaths || []).join(', ') || 'n/a'}
121
+
122
+ Steps:
123
+ 1. \`git status --short\` and \`git --no-pager diff --stat\` to see what changed. If nothing is staged or modified, return committed=false, error="nothing to commit".
124
+ 2. \`git add -A\`.
125
+ 3. Commit with a Conventional Commits message — \`type(scope): subject\` (subject ≤72 chars), optional body. Choose the type from the actual change (feat/fix/docs/test/refactor/chore).
126
+ 4. The pre-commit hooks (type-check, lint, tests) MUST pass. NEVER pass --no-verify. If a hook fails, do NOT bypass it: return committed=false with the hook output in error.
127
+ Return committed, the new commit sha, and the message used.`,
128
+ { label, phase: 'Commit', agentType: 'build-engineer', model: 'sonnet', schema: COMMIT_SCHEMA }
129
+ )
130
+ }
131
+
89
132
  // ---- Per-item pipeline ----------------------------------------------------
90
133
 
91
134
  async function driveItem(task, itemIndex) {
@@ -102,6 +145,7 @@ Task: ${task.taskId} / ${task.phase}
102
145
  Item: ${task.item}
103
146
  Specs to satisfy (READ THESE FIRST): ${task.specPaths.join(', ')}
104
147
 
148
+ The working tree is clean (previous items are already committed), so your changes are the ONLY uncommitted diff. Do NOT commit — the driver commits after review.
105
149
  TDD: write the failing test(s) first, then the minimum implementation that makes them pass.
106
150
  SDD: every behavior you add must trace to a SHALL/MUST scenario in the spec. Do NOT add unspecified features.
107
151
  Before finishing: run the type-checker, then the relevant tests. Both must be green.
@@ -110,7 +154,7 @@ Report exactly which files you created/changed and which tests you added.`
110
154
 
111
155
  ${lastIssues.map((i, n) => `${n + 1}. ${i}`).join('\n')}
112
156
 
113
- Re-run the type-checker and tests (both must pass). Report which files you changed and which tests you added or updated.`
157
+ Do NOT commit. Re-run the type-checker and tests (both must pass). Report which files you changed and which tests you added or updated.`
114
158
 
115
159
  const dev = await agent(devPrompt, {
116
160
  label: `dev:item${itemIndex}:r${round}`,
@@ -119,13 +163,14 @@ Re-run the type-checker and tests (both must pass). Report which files you chang
119
163
  model: 'sonnet',
120
164
  })
121
165
 
122
- // Independent reviewer — fresh subagent, NO conversation context, opus for a
123
- // thorough complete review. Sees only the git diff + the spec.
166
+ // Independent reviewer — fresh subagent, NO conversation context, opus for a thorough
167
+ // review. Sees only the current item's diff (working tree) + the spec, because previous
168
+ // items are already committed.
124
169
  verdict = await agent(
125
170
  `You are an INDEPENDENT senior reviewer with NO prior context. This is the FINAL quality gate — be exhaustive, judge ONLY from hard evidence, never trust the developer's claims without checking.
126
171
 
127
172
  Steps:
128
- 1. Run \`git --no-pager diff\` and \`git --no-pager diff --staged\` to see exactly what changed.
173
+ 1. Run \`git --no-pager diff\` and \`git --no-pager diff --staged\` to see exactly what changed. (Previous items are committed; this is only the current item's work.)
129
174
  2. Read the spec files: ${task.specPaths.join(', ')}
130
175
  3. Judge on two axes:
131
176
  - SDD: does the diff satisfy EVERY SHALL/MUST scenario in the spec, with nothing unspecified bolted on?
@@ -166,7 +211,7 @@ Task: ${task.taskId} / ${task.phase}
166
211
  Item: ${task.item}
167
212
  Specs: ${task.specPaths.join(', ')}
168
213
 
169
- Update the application documentation to reflect what shipped:
214
+ Update the application documentation to reflect what shipped (do NOT commit — the driver commits next):
170
215
  1. Run \`git --no-pager diff\` to see exactly what changed.
171
216
  2. Update CHANGELOG.md with a conventional-commit-style entry under the unreleased section.
172
217
  3. Update README.md only if public/user-facing behavior changed.
@@ -175,27 +220,32 @@ Report which documentation files you updated.`,
175
220
  { label: `document:item${itemIndex}`, phase: 'Document', agentType: 'docs-writer', model: 'haiku' }
176
221
  )
177
222
 
178
- return { passed: true, passedRound, review: verdict.summary, docs }
179
- }
180
-
181
- // Snapshot the set of changed files (via git). Used to scope each task's review-fanout
182
- // to only that task's changeset, since the driver does not commit between items/tasks.
183
- async function gitChangedFiles() {
184
- const r = await agent(
185
- 'Run `git --no-pager diff --name-only` and `git --no-pager diff --name-only --staged`. Return the de-duplicated union of file paths, one per entry. Return an empty list if there are no changes.',
186
- { label: 'git-files', phase: 'Discover', agentType: 'researcher', model: 'haiku', schema: FILES_SCHEMA }
223
+ // Commit the approved item BEFORE the next item starts. Pre-commit hooks gate it; a hook
224
+ // failure means the item is not actually done, so we surface it as a failure.
225
+ const commit = await commitWork(
226
+ `commit:item${itemIndex}`,
227
+ `Rulebook task item "${task.item}" (${task.taskId}/${task.phase}) passed independent SDD+TDD review and docs are updated.`,
228
+ task.specPaths
187
229
  )
188
- return (r && Array.isArray(r.files) ? r.files : []).filter(Boolean)
230
+ if (!commit || !commit.committed) {
231
+ return {
232
+ passed: false,
233
+ issues: [`commit failed: ${(commit && commit.error) || 'unknown error'}`],
234
+ verdict: 'item implementation passed review but the commit (pre-commit quality gate) failed',
235
+ }
236
+ }
237
+
238
+ return { passed: true, passedRound, review: verdict.summary, docs, commitSha: commit.sha, commitMessage: commit.message }
189
239
  }
190
240
 
191
241
  // ---- Per-task adversarial gate (review-fanout) -----------------------------
192
- // Runs ONCE per completed task, not per item. Scoped (via paths) to that task's
193
- // changeset. Blocking (blocker/major) findings are remediated by a dev agent and
194
- // re-reviewed, up to MAX_FANOUT_ROUNDS. Returns { passed, rounds, blocking } —
195
- // passed=false means the task could not be cleaned.
196
- async function reviewFanoutGate(taskId, specPaths, paths) {
197
- const scope = paths && paths.length ? { paths } : undefined
198
- const scopeLabel = scope ? ` (scoped to ${paths.length} file(s))` : ''
242
+ // Runs ONCE per completed task, not per item. Scoped (via baseRef) to that task's committed
243
+ // changeset. Blocking (blocker/major) findings are remediated by a dev agent, committed, and
244
+ // re-reviewed, up to MAX_FANOUT_ROUNDS. Returns { passed, rounds, blocking } — passed=false
245
+ // means the task could not be cleaned.
246
+ async function reviewFanoutGate(taskId, specPaths, baseRef) {
247
+ const scope = baseRef ? { baseRef } : undefined
248
+ const scopeLabel = baseRef ? ` (since ${baseRef.slice(0, 8)})` : ''
199
249
  for (let fround = 1; fround <= MAX_FANOUT_ROUNDS; fround++) {
200
250
  phase('Fanout')
201
251
  log(`Task ${taskId}: review-fanout round ${fround}/${MAX_FANOUT_ROUNDS}${scopeLabel}…`)
@@ -203,6 +253,10 @@ async function reviewFanoutGate(taskId, specPaths, paths) {
203
253
  const blocking = (fanout && fanout.blocking) || []
204
254
 
205
255
  if (blocking.length === 0) {
256
+ // If a prior round remediated, those fixes are uncommitted — commit them now.
257
+ if (fround > 1) {
258
+ await commitWork(`commit:fanout-fix:${taskId}`, `review-fanout remediation for task ${taskId}`, specPaths)
259
+ }
206
260
  log(`Task ${taskId}: review-fanout clean (round ${fround}).`)
207
261
  return { passed: true, rounds: fround, blocking: [] }
208
262
  }
@@ -217,7 +271,7 @@ async function reviewFanoutGate(taskId, specPaths, paths) {
217
271
  .join('\n')
218
272
  log(`Task ${taskId}: review-fanout flagged ${blocking.length} blocking issue(s); remediating.`)
219
273
  await agent(
220
- `An independent adversarial review of task ${taskId} found blocking issues in the current diff. Fix ONLY these; do not touch anything else, and do not weaken or delete tests to make them pass:
274
+ `An independent adversarial review of task ${taskId} found blocking issues in the committed diff. Fix ONLY these; do not touch anything else, and do not weaken or delete tests to make them pass. Do NOT commit — the driver commits the remediation after re-review:
221
275
 
222
276
  ${issues}
223
277
 
@@ -236,22 +290,19 @@ const taskGates = []
236
290
  let stopReason = 'backlog-drained'
237
291
  let currentTaskId = null
238
292
  let currentSpecPaths = []
239
- let currentTaskBaseline = []
293
+ let currentTaskBaseRef = null
240
294
  let halted = false
241
295
 
242
- // Run the per-task review-fanout gate once, scoped to the task's changeset, and record it.
243
- async function gateCompletedTask(taskId, specPaths, baseline) {
244
- const now = await gitChangedFiles()
245
- const baseSet = new Set(baseline || [])
246
- const paths = now.filter((f) => !baseSet.has(f))
247
- const gate = await reviewFanoutGate(taskId, specPaths, paths)
248
- taskGates.push({
249
- taskId,
250
- passed: gate.passed,
251
- rounds: gate.rounds,
252
- blockingCount: gate.blocking.length,
253
- scopedFiles: paths.length,
254
- })
296
+ // Run the per-task review-fanout gate once, scoped to the task's committed changeset (baseRef).
297
+ // No-op (auto-pass) when fanout is disabled — the per-item SDD+TDD review + commit hooks
298
+ // already gated every item; fanout is the opt-in extra adversarial pass.
299
+ async function gateCompletedTask(taskId, specPaths, baseRef) {
300
+ if (!FANOUT_ENABLED) {
301
+ taskGates.push({ taskId, passed: true, rounds: 0, blockingCount: 0, baseRef, skipped: true })
302
+ return { passed: true, rounds: 0, blocking: [] }
303
+ }
304
+ const gate = await reviewFanoutGate(taskId, specPaths, baseRef)
305
+ taskGates.push({ taskId, passed: gate.passed, rounds: gate.rounds, blockingCount: gate.blocking.length, baseRef })
255
306
  return gate
256
307
  }
257
308
 
@@ -282,10 +333,10 @@ Set found=false (and leave the other string fields empty) if every item in every
282
333
  }
283
334
 
284
335
  // Task boundary: a new taskId means the previous task is fully checked → gate it once,
285
- // then snapshot the new task's baseline file set so its gate is scoped to its own diff.
336
+ // then record the new task's baseRef (current HEAD) so its gate is scoped to its own commits.
286
337
  if (task.taskId !== currentTaskId) {
287
338
  if (currentTaskId) {
288
- const gate = await gateCompletedTask(currentTaskId, currentSpecPaths, currentTaskBaseline)
339
+ const gate = await gateCompletedTask(currentTaskId, currentSpecPaths, currentTaskBaseRef)
289
340
  if (!gate.passed) {
290
341
  stopReason = 'task-fanout-failed'
291
342
  log(`Halting: task ${currentTaskId} failed the review-fanout gate.`)
@@ -295,7 +346,7 @@ Set found=false (and leave the other string fields empty) if every item in every
295
346
  }
296
347
  currentTaskId = task.taskId
297
348
  currentSpecPaths = task.specPaths || []
298
- currentTaskBaseline = await gitChangedFiles()
349
+ currentTaskBaseRef = await gitHead()
299
350
  }
300
351
 
301
352
  log(`[${i}/${MAX_ITEMS}] ${task.taskId} / ${task.phase}: ${task.item}`)
@@ -304,7 +355,7 @@ Set found=false (and leave the other string fields empty) if every item in every
304
355
 
305
356
  if (!result.passed) {
306
357
  stopReason = 'item-failed-review'
307
- log(`Item ${i} failed after ${MAX_REVIEW_ROUNDS} rounds — halting loop (sequential tasks must not build on a broken item).`)
358
+ log(`Item ${i} failed (${(result.issues || []).join('; ') || 'see verdict'}) — halting loop (sequential tasks must not build on a broken item).`)
308
359
  halted = true
309
360
  break
310
361
  }
@@ -319,7 +370,7 @@ Set found=false (and leave the other string fields empty) if every item in every
319
370
  // Gate the final task only when the backlog drained cleanly (last task fully checked).
320
371
  // Mid-task stops (once / max-items / budget-low) leave the task incomplete — skip the gate.
321
372
  if (!halted && stopReason === 'backlog-drained' && currentTaskId) {
322
- const gate = await gateCompletedTask(currentTaskId, currentSpecPaths, currentTaskBaseline)
373
+ const gate = await gateCompletedTask(currentTaskId, currentSpecPaths, currentTaskBaseRef)
323
374
  if (!gate.passed) {
324
375
  stopReason = 'task-fanout-failed'
325
376
  halted = true
@@ -338,6 +389,6 @@ if (passed > 0 && !halted) {
338
389
  log(`release-gate: ${releaseGate && releaseGate.go ? 'GO ✅' : 'NO-GO ⛔'}`)
339
390
  }
340
391
 
341
- log(`Done: ${passed}/${processed.length} item(s) passed. Stop reason: ${stopReason}.`)
392
+ log(`Done: ${passed}/${processed.length} item(s) passed & committed. Stop reason: ${stopReason}.`)
342
393
 
343
394
  return { stopReason, processedCount: processed.length, passedCount: passed, processed, taskGates, releaseGate }
@@ -60,10 +60,16 @@ jobs:
60
60
  flags: unittests
61
61
  fail_ci_if_error: false
62
62
 
63
- - name: Security audit
63
+ - name: Security audit (blocking on high/critical)
64
+ # Fails the build on high or critical production vulnerabilities.
65
+ # Runs only once (ubuntu/20.x) to avoid duplicate failures across the matrix.
66
+ if: matrix.os == 'ubuntu-latest' && matrix.node-version == '20.x'
67
+ run: |
68
+ echo "Running security audit (production, high+)..."
69
+ npm audit --production --audit-level=high
70
+
71
+ - name: Dependency hygiene (informational)
64
72
  run: |
65
- echo "Running security audit..."
66
- npm audit --production --audit-level=moderate || true
67
73
  echo "Checking for outdated dependencies..."
68
74
  npm outdated || true
69
75