/** * ADR-406 P0/P1 — gather inputs (git history, packed npm contents, engine * probes) and produce the inventory report, engine report and catalog. * * Reads command sources; writes only the catalog and report files it is given. * External programs run through fixed argv with no shell (`execFileSync`). */ import { type EngineReport, type Runner } from './engine-report.js'; import { type RawCommand } from './inventory.js'; import type { CommandCatalog } from './schema.js'; export declare const CATALOG_RELATIVE_PATH = "v3/@claude-flow/cli/src/mods/command-registry/catalog.generated.json"; export declare const ENGINE_REPORT_RELATIVE_PATH = "v3/@claude-flow/cli/src/mods/command-registry/engine-report.generated.json"; export declare const PROPOSED_NAMES: readonly ["ruflo", "ruflo-workbench", "ruflo-console"]; export declare const defaultRunner: Runner; /** * Last commit per repository-relative path, in one `git log` pass; dirty paths * are dropped (they read as `uncommitted`). `order` lists commits newest first. */ export declare function lastCommits(repoRoot: string, roots: readonly string[], run?: Runner): { byPath: Record; order: string[]; dirty: Set; }; /** * The catalog's anchor: the newest commit that touched a file the catalog * actually inventories, so unrelated plugin commits do not make it stale. */ export declare function anchorCommit(paths: readonly string[], commits: ReturnType): string; /** `npm pack --dry-run --json` file list for a package directory, made repository-relative. */ export declare function packedFiles(repoRoot: string, packageDir: string, run?: Runner): { name: string; files: string[]; } | null; export interface GenerateInput { readonly repoRoot: string; readonly engineExecutable: string | null; readonly run?: Runner; /** Skip `npm pack` (tests); shipped status is then not asserted. */ readonly inspectPackages?: boolean; } export interface GenerateResult { readonly inventory: readonly RawCommand[]; readonly catalog: CommandCatalog; readonly engine: EngineReport; readonly modHookSource: 'engine-validate' | 'source-scan'; readonly packages: readonly string[]; } export declare function generate(input: GenerateInput): GenerateResult; /** Counts for the P0 exit gate: every inventoried command is classified. */ export declare function summarize(result: GenerateResult): Record; //# sourceMappingURL=generate.d.ts.map