@eldrforge/kodrdriv 1.2.133 → 1.2.135

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 (96) hide show
  1. package/.cursor/rules/no-local-dependencies.md +6 -0
  2. package/AI-GUIDE.md +4 -1
  3. package/LICENSE +1 -1
  4. package/dist/application.js +34 -42
  5. package/dist/application.js.map +1 -1
  6. package/dist/arguments.js +3 -3
  7. package/dist/arguments.js.map +1 -1
  8. package/dist/constants.js +5 -7
  9. package/dist/constants.js.map +1 -1
  10. package/dist/logging.js +4 -32
  11. package/dist/logging.js.map +1 -1
  12. package/dist/types.js +283 -0
  13. package/dist/types.js.map +1 -0
  14. package/guide/ai-system.md +3 -0
  15. package/guide/architecture.md +3 -0
  16. package/guide/commands.md +3 -0
  17. package/guide/configuration.md +3 -0
  18. package/guide/debugging.md +4 -1
  19. package/guide/development.md +3 -0
  20. package/guide/index.md +4 -1
  21. package/guide/integration.md +3 -0
  22. package/guide/monorepo.md +3 -0
  23. package/guide/quickstart.md +3 -0
  24. package/guide/testing.md +3 -0
  25. package/guide/tree-operations.md +3 -0
  26. package/guide/usage.md +3 -0
  27. package/package.json +15 -10
  28. package/DUPLICATION-CLEANUP.md +0 -104
  29. package/agentic-reflection-commit-2025-12-27T22-56-06-143Z.md +0 -50
  30. package/agentic-reflection-commit-2025-12-27T23-01-57-294Z.md +0 -50
  31. package/agentic-reflection-commit-2025-12-27T23-11-57-811Z.md +0 -50
  32. package/agentic-reflection-commit-2025-12-27T23-12-50-645Z.md +0 -50
  33. package/agentic-reflection-commit-2025-12-27T23-13-59-347Z.md +0 -52
  34. package/agentic-reflection-commit-2025-12-27T23-14-36-001Z.md +0 -50
  35. package/agentic-reflection-commit-2025-12-27T23-18-59-832Z.md +0 -50
  36. package/agentic-reflection-commit-2025-12-27T23-25-20-667Z.md +0 -62
  37. package/dist/commands/audio-commit.js +0 -152
  38. package/dist/commands/audio-commit.js.map +0 -1
  39. package/dist/commands/audio-review.js +0 -274
  40. package/dist/commands/audio-review.js.map +0 -1
  41. package/dist/commands/clean.js +0 -49
  42. package/dist/commands/clean.js.map +0 -1
  43. package/dist/commands/commit.js +0 -680
  44. package/dist/commands/commit.js.map +0 -1
  45. package/dist/commands/development.js +0 -467
  46. package/dist/commands/development.js.map +0 -1
  47. package/dist/commands/link.js +0 -646
  48. package/dist/commands/link.js.map +0 -1
  49. package/dist/commands/precommit.js +0 -99
  50. package/dist/commands/precommit.js.map +0 -1
  51. package/dist/commands/publish.js +0 -1432
  52. package/dist/commands/publish.js.map +0 -1
  53. package/dist/commands/release.js +0 -376
  54. package/dist/commands/release.js.map +0 -1
  55. package/dist/commands/review.js +0 -733
  56. package/dist/commands/review.js.map +0 -1
  57. package/dist/commands/select-audio.js +0 -46
  58. package/dist/commands/select-audio.js.map +0 -1
  59. package/dist/commands/tree.js +0 -2363
  60. package/dist/commands/tree.js.map +0 -1
  61. package/dist/commands/unlink.js +0 -537
  62. package/dist/commands/unlink.js.map +0 -1
  63. package/dist/commands/updates.js +0 -211
  64. package/dist/commands/updates.js.map +0 -1
  65. package/dist/commands/versions.js +0 -221
  66. package/dist/commands/versions.js.map +0 -1
  67. package/dist/content/diff.js +0 -346
  68. package/dist/content/diff.js.map +0 -1
  69. package/dist/content/files.js +0 -190
  70. package/dist/content/files.js.map +0 -1
  71. package/dist/content/log.js +0 -72
  72. package/dist/content/log.js.map +0 -1
  73. package/dist/util/aiAdapter.js +0 -28
  74. package/dist/util/aiAdapter.js.map +0 -1
  75. package/dist/util/fileLock.js +0 -241
  76. package/dist/util/fileLock.js.map +0 -1
  77. package/dist/util/general.js +0 -379
  78. package/dist/util/general.js.map +0 -1
  79. package/dist/util/gitMutex.js +0 -161
  80. package/dist/util/gitMutex.js.map +0 -1
  81. package/dist/util/interactive.js +0 -32
  82. package/dist/util/interactive.js.map +0 -1
  83. package/dist/util/loggerAdapter.js +0 -41
  84. package/dist/util/loggerAdapter.js.map +0 -1
  85. package/dist/util/performance.js +0 -134
  86. package/dist/util/performance.js.map +0 -1
  87. package/dist/util/precommitOptimizations.js +0 -310
  88. package/dist/util/precommitOptimizations.js.map +0 -1
  89. package/dist/util/stopContext.js +0 -146
  90. package/dist/util/stopContext.js.map +0 -1
  91. package/dist/util/storageAdapter.js +0 -31
  92. package/dist/util/storageAdapter.js.map +0 -1
  93. package/dist/util/validation.js +0 -45
  94. package/dist/util/validation.js.map +0 -1
  95. package/dist/utils/branchState.js +0 -700
  96. package/dist/utils/branchState.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":["../src/types.ts"],"sourcesContent":["import * as Cardigantime from '@theunwalked/cardigantime';\nimport { z } from \"zod\";\n\nexport const ConfigSchema = z.object({\n dryRun: z.boolean().optional(),\n verbose: z.boolean().optional(),\n debug: z.boolean().optional(),\n overrides: z.boolean().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n contextDirectories: z.array(z.string()).optional(),\n outputDirectory: z.string().optional(),\n preferencesDirectory: z.string().optional(),\n commit: z.object({\n add: z.boolean().optional(),\n cached: z.boolean().optional(),\n sendit: z.boolean().optional(),\n interactive: z.boolean().optional(),\n amend: z.boolean().optional(),\n push: z.union([z.boolean(), z.string()]).optional(),\n messageLimit: z.number().optional(),\n context: z.string().optional(),\n contextFiles: z.array(z.string()).optional(),\n direction: z.string().optional(),\n skipFileCheck: z.boolean().optional(),\n maxDiffBytes: z.number().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n // Agentic options (always enabled)\n maxAgenticIterations: z.number().optional(),\n allowCommitSplitting: z.boolean().optional(),\n autoSplit: z.boolean().optional(), // Defaults to true if not specified (see commit.ts)\n toolTimeout: z.number().optional(),\n selfReflection: z.boolean().optional(),\n }).optional(),\n audioCommit: z.object({\n maxRecordingTime: z.number().optional(),\n audioDevice: z.string().optional(),\n file: z.string().optional(),\n keepTemp: z.boolean().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n }).optional(),\n release: z.object({\n from: z.string().optional(),\n to: z.string().optional(),\n messageLimit: z.number().optional(),\n context: z.string().optional(),\n contextFiles: z.array(z.string()).optional(),\n interactive: z.boolean().optional(),\n focus: z.string().optional(),\n maxDiffBytes: z.number().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n noMilestones: z.boolean().optional(),\n fromMain: z.boolean().optional(),\n currentBranch: z.string().optional(),\n // Agentic options (always enabled)\n maxAgenticIterations: z.number().optional(),\n selfReflection: z.boolean().optional(),\n }).optional(),\n review: z.object({\n includeCommitHistory: z.boolean().optional(),\n includeRecentDiffs: z.boolean().optional(),\n includeReleaseNotes: z.boolean().optional(),\n includeGithubIssues: z.boolean().optional(),\n commitHistoryLimit: z.number().optional(),\n diffHistoryLimit: z.number().optional(),\n releaseNotesLimit: z.number().optional(),\n githubIssuesLimit: z.number().optional(),\n context: z.string().optional(),\n sendit: z.boolean().optional(),\n note: z.string().optional(),\n editorTimeout: z.number().optional(),\n maxContextErrors: z.number().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n file: z.string().optional(), // File path to read review note from\n directory: z.string().optional(), // Directory to process multiple review files\n }).optional(),\n audioReview: z.object({\n includeCommitHistory: z.boolean().optional(),\n includeRecentDiffs: z.boolean().optional(),\n includeReleaseNotes: z.boolean().optional(),\n includeGithubIssues: z.boolean().optional(),\n commitHistoryLimit: z.number().optional(),\n diffHistoryLimit: z.number().optional(),\n releaseNotesLimit: z.number().optional(),\n githubIssuesLimit: z.number().optional(),\n context: z.string().optional(),\n sendit: z.boolean().optional(),\n maxRecordingTime: z.number().optional(),\n audioDevice: z.string().optional(),\n file: z.string().optional(),\n directory: z.string().optional(),\n keepTemp: z.boolean().optional(),\n model: z.string().optional(),\n openaiReasoning: z.enum(['low', 'medium', 'high']).optional(),\n openaiMaxOutputTokens: z.number().optional(),\n }).optional(),\n publish: z.object({\n mergeMethod: z.enum(['merge', 'squash', 'rebase']).optional(),\n from: z.string().optional(),\n targetVersion: z.string().optional(),\n interactive: z.boolean().optional(),\n skipAlreadyPublished: z.boolean().optional(),\n forceRepublish: z.boolean().optional(),\n dependencyUpdatePatterns: z.array(z.string()).optional(),\n scopedDependencyUpdates: z.array(z.string()).optional(),\n requiredEnvVars: z.array(z.string()).optional(),\n linkWorkspacePackages: z.boolean().optional(),\n unlinkWorkspacePackages: z.boolean().optional(),\n checksTimeout: z.number().optional(),\n skipUserConfirmation: z.boolean().optional(),\n syncTarget: z.boolean().optional(),\n sendit: z.boolean().optional(),\n waitForReleaseWorkflows: z.boolean().optional(),\n releaseWorkflowsTimeout: z.number().optional(),\n releaseWorkflowNames: z.array(z.string()).optional(),\n targetBranch: z.string().optional(),\n noMilestones: z.boolean().optional(),\n fromMain: z.boolean().optional(),\n skipPrePublishMerge: z.boolean().optional(),\n updateDeps: z.string().optional(),\n agenticPublish: z.boolean().optional(),\n agenticPublishMaxIterations: z.number().optional(),\n }).optional(),\n branches: z.record(z.string(), z.object({\n targetBranch: z.string().optional(),\n developmentBranch: z.boolean().optional(),\n version: z.object({\n type: z.enum(['release', 'prerelease']),\n increment: z.boolean().optional(),\n incrementLevel: z.enum(['patch', 'minor', 'major']).optional(),\n tag: z.string().optional(),\n }).optional(),\n })).optional(),\n link: z.object({\n scopeRoots: z.record(z.string(), z.string()).optional(),\n dryRun: z.boolean().optional(),\n packageArgument: z.string().optional(),\n externals: z.array(z.string()).optional(),\n }).optional(),\n unlink: z.object({\n scopeRoots: z.record(z.string(), z.string()).optional(),\n workspaceFile: z.string().optional(),\n dryRun: z.boolean().optional(),\n cleanNodeModules: z.boolean().optional(),\n packageArgument: z.string().optional(),\n externals: z.array(z.string()).optional(),\n }).optional(),\n tree: z.object({\n directories: z.array(z.string()).optional(),\n exclude: z.array(z.string()).optional(),\n startFrom: z.string().optional(),\n stopAt: z.string().optional(),\n cmd: z.string().optional(),\n builtInCommand: z.string().optional(),\n continue: z.boolean().optional(),\n status: z.boolean().optional(),\n promote: z.string().optional(),\n packageArgument: z.string().optional(),\n cleanNodeModules: z.boolean().optional(),\n externals: z.array(z.string()).optional(),\n // Parallel execution options\n parallel: z.boolean().optional(),\n maxConcurrency: z.number().optional(),\n retry: z.object({\n maxAttempts: z.number().optional(),\n initialDelayMs: z.number().optional(),\n maxDelayMs: z.number().optional(),\n backoffMultiplier: z.number().optional(),\n retriableErrors: z.array(z.string()).optional(),\n }).optional(),\n recovery: z.object({\n checkpointInterval: z.enum(['package', 'batch']).optional(),\n autoRetry: z.boolean().optional(),\n continueOnError: z.boolean().optional(),\n }).optional(),\n monitoring: z.object({\n showProgress: z.boolean().optional(),\n showMetrics: z.boolean().optional(),\n logLevel: z.enum(['minimal', 'normal', 'verbose']).optional(),\n }).optional(),\n // Recovery options\n markCompleted: z.array(z.string()).optional(),\n skipPackages: z.array(z.string()).optional(),\n retryFailed: z.boolean().optional(),\n skipFailed: z.boolean().optional(),\n resetPackage: z.string().optional(),\n statusParallel: z.boolean().optional(),\n auditBranches: z.boolean().optional(),\n validateState: z.boolean().optional(),\n }).optional(),\n development: z.object({\n targetVersion: z.string().optional(),\n noMilestones: z.boolean().optional(),\n tagWorkingBranch: z.boolean().optional(),\n createRetroactiveTags: z.boolean().optional(),\n workingTagPrefix: z.string().optional(),\n }).optional(),\n versions: z.object({\n subcommand: z.string().optional(),\n directories: z.array(z.string()).optional(),\n }).optional(),\n updates: z.object({\n scope: z.string().optional(),\n directories: z.array(z.string()).optional(),\n interProject: z.boolean().optional(),\n }).optional(),\n excludedPatterns: z.array(z.string()).optional(),\n traits: z.any().optional(), // Add traits property for cardigantime compatibility\n stopContext: z.object({\n enabled: z.boolean().optional(),\n strings: z.array(z.string()).optional(),\n patterns: z.array(z.object({\n regex: z.string(),\n flags: z.string().optional(),\n description: z.string().optional(),\n })).optional(),\n caseSensitive: z.boolean().optional(),\n replacement: z.string().optional(),\n warnOnFilter: z.boolean().optional(),\n }).optional(),\n});\n\nexport const SecureConfigSchema = z.object({\n openaiApiKey: z.string().optional(),\n});\n\nexport const CommandConfigSchema = z.object({\n commandName: z.string().optional(),\n});\n\nexport type Config = z.infer<typeof ConfigSchema> & Cardigantime.Config;\nexport type SecureConfig = z.infer<typeof SecureConfigSchema>;\nexport type CommandConfig = z.infer<typeof CommandConfigSchema>;\n\nexport type MergeMethod = 'merge' | 'squash' | 'rebase';\n\nexport interface PullRequest {\n html_url: string;\n number: number;\n labels?: {\n name: string;\n }[];\n}\n\nexport type ReleaseSummary = {\n title: string;\n body: string;\n}\n\nexport type ReleaseConfig = {\n from?: string;\n to?: string;\n context?: string;\n contextFiles?: string[]; // Additional context from files\n interactive?: boolean;\n focus?: string;\n messageLimit?: number;\n maxDiffBytes?: number;\n model?: string;\n openaiReasoning?: 'low' | 'medium' | 'high';\n openaiMaxOutputTokens?: number;\n currentBranch?: string;\n // Agentic options (always enabled)\n maxAgenticIterations?: number;\n selfReflection?: boolean;\n}\n\nexport type ReviewConfig = {\n includeCommitHistory?: boolean;\n includeRecentDiffs?: boolean;\n includeReleaseNotes?: boolean;\n includeGithubIssues?: boolean;\n commitHistoryLimit?: number;\n diffHistoryLimit?: number;\n releaseNotesLimit?: number;\n githubIssuesLimit?: number;\n context?: string;\n sendit?: boolean;\n note?: string;\n editorTimeout?: number;\n maxContextErrors?: number;\n model?: string;\n openaiReasoning?: 'low' | 'medium' | 'high';\n openaiMaxOutputTokens?: number;\n}\n\nexport type AudioReviewConfig = {\n includeCommitHistory?: boolean;\n includeRecentDiffs?: boolean;\n includeReleaseNotes?: boolean;\n includeGithubIssues?: boolean;\n commitHistoryLimit?: number;\n diffHistoryLimit?: number;\n releaseNotesLimit?: number;\n githubIssuesLimit?: number;\n context?: string;\n sendit?: boolean;\n maxRecordingTime?: number;\n audioDevice?: string;\n file?: string;\n directory?: string;\n keepTemp?: boolean;\n model?: string;\n openaiReasoning?: 'low' | 'medium' | 'high';\n openaiMaxOutputTokens?: number;\n}\n\nexport type CommitConfig = {\n add?: boolean;\n cached?: boolean;\n sendit?: boolean;\n interactive?: boolean;\n amend?: boolean;\n push?: string | boolean;\n messageLimit?: number;\n context?: string;\n contextFiles?: string[]; // Additional context from files\n direction?: string;\n skipFileCheck?: boolean;\n maxDiffBytes?: number;\n model?: string;\n openaiReasoning?: 'low' | 'medium' | 'high';\n openaiMaxOutputTokens?: number;\n // Agentic options (always enabled)\n maxAgenticIterations?: number;\n allowCommitSplitting?: boolean;\n autoSplit?: boolean;\n toolTimeout?: number;\n selfReflection?: boolean;\n}\n\nexport type AudioCommitConfig = {\n maxRecordingTime?: number;\n audioDevice?: string;\n file?: string;\n keepTemp?: boolean;\n model?: string;\n openaiReasoning?: 'low' | 'medium' | 'high';\n openaiMaxOutputTokens?: number;\n}\n\nexport type LinkConfig = {\n scopeRoots?: Record<string, string>;\n dryRun?: boolean;\n packageArgument?: string;\n externalLinkPatterns?: string[];\n}\n\nexport type UnlinkConfig = {\n scopeRoots?: Record<string, string>;\n workspaceFile?: string;\n dryRun?: boolean;\n cleanNodeModules?: boolean;\n packageArgument?: string;\n}\n\nexport type PublishConfig = {\n mergeMethod?: 'merge' | 'squash' | 'rebase';\n from?: string;\n targetVersion?: string;\n interactive?: boolean;\n skipAlreadyPublished?: boolean;\n forceRepublish?: boolean;\n syncTarget?: boolean;\n dependencyUpdatePatterns?: string[];\n scopedDependencyUpdates?: string[];\n requiredEnvVars?: string[];\n linkWorkspacePackages?: boolean;\n unlinkWorkspacePackages?: boolean;\n checksTimeout?: number;\n skipUserConfirmation?: boolean;\n sendit?: boolean;\n waitForReleaseWorkflows?: boolean;\n releaseWorkflowsTimeout?: number;\n releaseWorkflowNames?: string[];\n targetBranch?: string;\n noMilestones?: boolean;\n updateDeps?: string; // scope for inter-project dependency updates (e.g., '@fjell')\n agenticPublish?: boolean; // use AI agent to automatically diagnose and fix publish issues\n agenticPublishMaxIterations?: number; // maximum iterations for agentic publish (default: 10)\n}\n\nexport type VersionTargetConfig = {\n type: 'release' | 'prerelease';\n increment?: boolean;\n tag?: string;\n}\n\nexport type BranchTargetConfig = {\n targetBranch: string;\n developmentBranch?: boolean;\n version?: VersionTargetConfig;\n}\n\nexport type TargetsConfig = Record<string, BranchTargetConfig>;\n\nexport type TreeConfig = {\n directories?: string[];\n excludedPatterns?: string[];\n exclude?: string[]; // Alias for excludedPatterns\n startFrom?: string;\n stopAt?: string;\n cmd?: string;\n\n builtInCommand?: string;\n continue?: boolean; // Continue from previous tree publish execution\n status?: boolean; // Check status of running tree publish processes\n promote?: string; // Mark a package as completed in the execution context\n packageArgument?: string; // Package argument for link/unlink commands (e.g., \"@fjell\" or \"@fjell/core\")\n cleanNodeModules?: boolean; // For unlink command: remove node_modules and package-lock.json, then reinstall dependencies\n externalLinkPatterns?: string[];\n externals?: string[]; // Alias for externalLinkPatterns\n\n // Parallel execution options\n parallel?: boolean;\n maxConcurrency?: number;\n retry?: {\n maxAttempts: number;\n initialDelayMs: number;\n maxDelayMs: number;\n backoffMultiplier: number;\n retriableErrors?: string[];\n };\n recovery?: {\n checkpointInterval: 'package' | 'batch';\n autoRetry: boolean;\n continueOnError: boolean;\n };\n monitoring?: {\n showProgress: boolean;\n showMetrics: boolean;\n logLevel: 'minimal' | 'normal' | 'verbose';\n };\n\n // Recovery options\n markCompleted?: string[];\n skipPackages?: string[];\n retryFailed?: boolean;\n skipFailed?: boolean;\n resetPackage?: string;\n statusParallel?: boolean;\n auditBranches?: boolean;\n validateState?: boolean;\n}\n\nexport type DevelopmentConfig = {\n targetVersion?: string; // 'patch', 'minor', 'major', or explicit version like '2.1.0' (default: 'patch')\n noMilestones?: boolean; // Disable GitHub milestone integration\n tagWorkingBranch?: boolean; // Tag working branch with release version before bumping to dev (default: true)\n createRetroactiveTags?: boolean; // Create tags for past releases found in git history (default: false)\n workingTagPrefix?: string; // Tag prefix for working branch tags (default: 'working/')\n}\n\nexport type VersionsConfig = {\n subcommand?: string; // 'minor' or other versioning strategies\n directories?: string[]; // directories to scan for packages\n}\n\nexport type UpdatesConfig = {\n scope?: string; // npm scope to update (e.g., '@fjell', '@getdidthey')\n directories?: string[]; // directories to scan for packages (tree mode)\n interProject?: boolean; // update inter-project dependencies based on tree state\n}\n\nexport type StopContextPattern = {\n regex: string;\n flags?: string;\n description?: string;\n}\n\nexport type StopContextConfig = {\n enabled?: boolean;\n strings?: string[];\n patterns?: StopContextPattern[];\n caseSensitive?: boolean;\n replacement?: string;\n warnOnFilter?: boolean;\n}\n"],"names":["ConfigSchema","z","object","dryRun","boolean","optional","verbose","debug","overrides","model","string","openaiReasoning","enum","openaiMaxOutputTokens","number","contextDirectories","array","outputDirectory","preferencesDirectory","commit","add","cached","sendit","interactive","amend","push","union","messageLimit","context","contextFiles","direction","skipFileCheck","maxDiffBytes","maxAgenticIterations","allowCommitSplitting","autoSplit","toolTimeout","selfReflection","audioCommit","maxRecordingTime","audioDevice","file","keepTemp","release","from","to","focus","noMilestones","fromMain","currentBranch","review","includeCommitHistory","includeRecentDiffs","includeReleaseNotes","includeGithubIssues","commitHistoryLimit","diffHistoryLimit","releaseNotesLimit","githubIssuesLimit","note","editorTimeout","maxContextErrors","directory","audioReview","publish","mergeMethod","targetVersion","skipAlreadyPublished","forceRepublish","dependencyUpdatePatterns","scopedDependencyUpdates","requiredEnvVars","linkWorkspacePackages","unlinkWorkspacePackages","checksTimeout","skipUserConfirmation","syncTarget","waitForReleaseWorkflows","releaseWorkflowsTimeout","releaseWorkflowNames","targetBranch","skipPrePublishMerge","updateDeps","agenticPublish","agenticPublishMaxIterations","branches","record","developmentBranch","version","type","increment","incrementLevel","tag","link","scopeRoots","packageArgument","externals","unlink","workspaceFile","cleanNodeModules","tree","directories","exclude","startFrom","stopAt","cmd","builtInCommand","continue","status","promote","parallel","maxConcurrency","retry","maxAttempts","initialDelayMs","maxDelayMs","backoffMultiplier","retriableErrors","recovery","checkpointInterval","autoRetry","continueOnError","monitoring","showProgress","showMetrics","logLevel","markCompleted","skipPackages","retryFailed","skipFailed","resetPackage","statusParallel","auditBranches","validateState","development","tagWorkingBranch","createRetroactiveTags","workingTagPrefix","versions","subcommand","updates","scope","interProject","excludedPatterns","traits","any","stopContext","enabled","strings","patterns","regex","flags","description","caseSensitive","replacement","warnOnFilter","openaiApiKey","commandName"],"mappings":"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"}
@@ -517,3 +517,6 @@ AI: "I understand. This is a unified refactor with tests."
517
517
 
518
518
  The AI system is designed to be transparent, controllable, and effective. Use self-reflection reports to understand and improve its decision-making over time.
519
519
 
520
+
521
+
522
+
@@ -344,3 +344,6 @@ Detailed implementation documentation in root directory:
344
344
 
345
345
  This architecture enables kodrdriv to be powerful, reliable, and extensible while maintaining simplicity for end users.
346
346
 
347
+
348
+
349
+
package/guide/commands.md CHANGED
@@ -378,3 +378,6 @@ kodrdriv tree unlink
378
378
 
379
379
  For detailed command documentation, see the [`docs/public/commands/`](../docs/public/commands/) directory.
380
380
 
381
+
382
+
383
+
@@ -511,3 +511,6 @@ When setting up kodrdriv:
511
511
 
512
512
  Your configuration is the foundation of a great kodrdriv experience!
513
513
 
514
+
515
+
516
+
@@ -553,7 +553,7 @@ kodrdriv commit --debug --dry-run 2>&1 | tee debug-output.txt
553
553
 
554
554
  ### Review Implementation Docs
555
555
 
556
- Check `/Users/tobrien/gitw/calenvarek/` for detailed guides:
556
+ Check `/Users/tobrien/gitw/grunnverk/` for detailed guides:
557
557
  - `PARALLEL-PUBLISH-DEBUGGING-GUIDE.md` - Parallel execution issues
558
558
  - `RECOVERY-FIXES.md` - Recovery mechanisms
559
559
  - `AI-SERVICE-INTEGRATION-COMPLETE.md` - AI system details
@@ -582,3 +582,6 @@ Most issues can be diagnosed with `--verbose` and resolved with proper configura
582
582
  - **[Commands Reference](./commands.md)** - Command-specific help
583
583
  - **[Development Guide](./development.md)** - Extend or modify kodrdriv
584
584
 
585
+
586
+
587
+
@@ -627,3 +627,6 @@ npx typedoc src/index.ts
627
627
 
628
628
  Start contributing to kodrdriv and make it even better!
629
629
 
630
+
631
+
632
+
package/guide/index.md CHANGED
@@ -155,7 +155,7 @@ export GITHUB_TOKEN="your-token" # For publish
155
155
 
156
156
  ## Implementation Guides in Root Directory
157
157
 
158
- The `/Users/tobrien/gitw/calenvarek/` directory contains extensive implementation documentation:
158
+ The `/Users/tobrien/gitw/grunnverk/` directory contains extensive implementation documentation:
159
159
 
160
160
  ### Recent Improvements
161
161
  - `SELF-REFLECTION-IMPROVEMENTS.md` - File location and prompt improvements
@@ -210,3 +210,6 @@ If you're integrating kodrdriv:
210
210
 
211
211
  **Need help?** Start with the guide that matches your goal, and refer to the implementation documents in the root directory for detailed technical information.
212
212
 
213
+
214
+
215
+
@@ -505,3 +505,6 @@ publish:
505
505
 
506
506
  Your kodrdriv integration is complete! 🎉
507
507
 
508
+
509
+
510
+
package/guide/monorepo.md CHANGED
@@ -528,3 +528,6 @@ Comprehensive guides in root directory:
528
528
 
529
529
  Kodrdriv makes monorepo management straightforward and automated!
530
530
 
531
+
532
+
533
+
@@ -221,3 +221,6 @@ kodrdriv commit --model gpt-4o-mini
221
221
 
222
222
  You're ready to use kodrdriv! 🚀
223
223
 
224
+
225
+
226
+
package/guide/testing.md CHANGED
@@ -458,3 +458,6 @@ npm test -- --reporter=verbose | grep -E "[0-9]+ms" | sort -n
458
458
 
459
459
  Keep the tests green! 🟢
460
460
 
461
+
462
+
463
+
@@ -616,3 +616,6 @@ See comprehensive documentation:
616
616
 
617
617
  Tree operations make managing multi-package projects simple and efficient!
618
618
 
619
+
620
+
621
+
package/guide/usage.md CHANGED
@@ -573,3 +573,6 @@ commit:
573
573
  └──────────────────────────────────────┘
574
574
  ```
575
575
 
576
+
577
+
578
+
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eldrforge/kodrdriv",
3
- "version": "1.2.133",
3
+ "version": "1.2.135",
4
4
  "description": "Create Intelligent Release Notes or Change Logs from Git",
5
5
  "main": "dist/main.js",
6
6
  "type": "module",
@@ -9,7 +9,7 @@
9
9
  },
10
10
  "repository": {
11
11
  "type": "git",
12
- "url": "git+https://github.com/calenvarek/kodrdriv.git"
12
+ "url": "git+https://github.com/grunnverk/kodrdriv.git"
13
13
  },
14
14
  "scripts": {
15
15
  "build": "npm run lint && tsc --noEmit && vite build && copyfiles -u 1 \"src/**/*.md\" dist && chmod 755 ./dist/main.js 2>/dev/null || chmod 755 ./dist/kodrdriv/src/main.js",
@@ -35,16 +35,21 @@
35
35
  "changelog",
36
36
  "analysis"
37
37
  ],
38
- "author": "Calen Varek <calenvarek@gmail.com>",
38
+ "author": "Tim O'Brien <tobrien@discursive.com>",
39
39
  "license": "Apache-2.0",
40
40
  "dependencies": {
41
- "@eldrforge/ai-service": "^0.1.16",
42
- "@eldrforge/audio-tools": "^0.1.10",
43
- "@eldrforge/git-tools": "^0.1.15",
44
- "@eldrforge/github-tools": "^0.1.17",
45
- "@eldrforge/shared": "^0.1.5",
46
- "@eldrforge/tree-core": "^0.1.4",
47
- "@eldrforge/tree-execution": "^0.1.4",
41
+ "@eldrforge/core": "^0.1.1",
42
+ "@eldrforge/commands-git": "^0.1.2",
43
+ "@eldrforge/commands-tree": "^0.1.1",
44
+ "@eldrforge/commands-publish": "^0.1.2",
45
+ "@eldrforge/commands-audio": "^0.1.1",
46
+ "@eldrforge/ai-service": "^0.1.18",
47
+ "@eldrforge/audio-tools": "^0.1.12",
48
+ "@eldrforge/git-tools": "^0.1.17",
49
+ "@eldrforge/github-tools": "^0.1.19",
50
+ "@eldrforge/shared": "^0.1.7",
51
+ "@eldrforge/tree-core": "^0.1.6",
52
+ "@eldrforge/tree-execution": "^0.1.6",
48
53
  "@octokit/rest": "^22.0.0",
49
54
  "@riotprompt/riotprompt": "^0.0.10",
50
55
  "@theunwalked/cardigantime": "^0.0.16",
@@ -1,104 +0,0 @@
1
- # Duplication Cleanup Report
2
-
3
- ## Overview
4
- This document summarizes the removal of duplicative code from the kodrdriv project after extracting functionality to `@eldrforge/tree-core` and `@eldrforge/tree-execution`.
5
-
6
- ## Changes Made
7
-
8
- ### 1. Removed `src/util/mutex.ts` ✓
9
- **Status**: DELETED
10
-
11
- **Reason**: The `SimpleMutex` class was duplicated between kodrdriv and tree-execution. The tree-execution version is more complete (includes `runExclusive` method).
12
-
13
- **Action Taken**:
14
- - Deleted `/Users/tobrien/gitw/calenvarek/kodrdriv/src/util/mutex.ts`
15
- - Updated `src/commands/tree.ts` to import from `@eldrforge/tree-execution` instead:
16
- ```typescript
17
- // Before:
18
- import { SimpleMutex } from '../util/mutex';
19
-
20
- // After:
21
- import { SimpleMutex } from '@eldrforge/tree-execution';
22
- ```
23
-
24
- **Impact**: No functional changes. The tree-execution version provides the same functionality plus additional convenience methods.
25
-
26
- ### 2. Renamed `PackageInfo` in `src/commands/versions.ts` ✓
27
- **Status**: RENAMED
28
-
29
- **Reason**: The `PackageInfo` interface in versions.ts was confusingly named the same as the comprehensive `PackageInfo` type from `@eldrforge/tree-core`, but had a different structure (simplified, only 3 fields vs 6 fields).
30
-
31
- **Action Taken**:
32
- - Renamed interface from `PackageInfo` to `VersionPackageInfo`
33
- - Updated all references throughout the file
34
- - Added clarifying comment:
35
- ```typescript
36
- // Simplified package info for version management (distinct from tree-core's PackageInfo)
37
- interface VersionPackageInfo {
38
- name: string;
39
- version: string;
40
- packageJsonPath: string;
41
- }
42
- ```
43
-
44
- **Impact**: No functional changes. Improves code clarity and prevents confusion with tree-core's PackageInfo type.
45
-
46
- ## Verification
47
-
48
- ### TypeScript Compilation
49
- ✓ Passed - `npx tsc --noEmit` completed successfully with no errors
50
-
51
- ### Tests
52
- ✓ Passed - All tests pass with good coverage:
53
- - Overall coverage maintained
54
- - No test failures introduced
55
- - versions.ts coverage: 94.35% statements
56
-
57
- ### Build
58
- ✓ Passed - `npx vite build` completed successfully
59
- - All modules compiled correctly
60
- - No import errors
61
- - dist/commands/tree.js: 140.11 kB
62
- - dist/commands/versions.js: 10.57 kB
63
-
64
- ## Code That Remains (Correctly Using Extracted Libraries)
65
-
66
- ### Using `@eldrforge/tree-core` ✓
67
- `src/commands/tree.ts` correctly imports:
68
- - Types: `PackageInfo`, `DependencyGraph`
69
- - Functions: `scanForPackageJsonFiles`, `parsePackageJson`, `buildDependencyGraph`, `topologicalSort`, `shouldExclude`
70
-
71
- ### Using `@eldrforge/tree-execution` ✓
72
- `src/commands/tree.ts` correctly imports:
73
- - `SimpleMutex` (for global state protection)
74
- - `TreeExecutionAdapter` (for parallel execution)
75
- - `createParallelProgressLogger`, `formatParallelResult` (for parallel mode UI)
76
- - `loadRecoveryManager` (for recovery functionality)
77
-
78
- ## Potential Future Improvements
79
-
80
- ### 1. Checkpoint Unification (Low Priority)
81
- The sequential execution mode in `src/commands/tree.ts` still uses a legacy checkpoint system (`TreeExecutionContext`, `saveExecutionContext`, `loadExecutionContext`). This could potentially be unified to use tree-execution's `CheckpointManager` for both sequential and parallel modes.
82
-
83
- **Current State**:
84
- - Parallel mode: Uses tree-execution's CheckpointManager ✓
85
- - Sequential mode: Uses legacy TreeExecutionContext system
86
-
87
- **Recommendation**: Consider consolidating in a future refactor, but not critical as both systems work correctly.
88
-
89
- ### 2. Parallel Execution Helper (Low Priority)
90
- `src/utils/branchState.ts` contains an inline `parallelMap` helper function (lines 317-331) that implements concurrency-limited parallel execution. This is similar to functionality in tree-execution's `DynamicTaskPool`.
91
-
92
- **Current State**: Small, specialized inline implementation for branch auditing
93
-
94
- **Recommendation**: Could potentially extract to a shared utility, but the current inline implementation is acceptable given its small size and specific use case.
95
-
96
- ## Summary
97
-
98
- ✅ **Removed**: 1 duplicate file (`src/util/mutex.ts`)
99
- ✅ **Renamed**: 1 confusing interface (`PackageInfo` → `VersionPackageInfo`)
100
- ✅ **Verified**: TypeScript compilation, tests, and build all pass
101
- ✅ **Confirmed**: All imports from tree-core and tree-execution are working correctly
102
-
103
- The kodrdriv project now properly uses the extracted libraries without unnecessary duplication.
104
-
@@ -1,50 +0,0 @@
1
- # Agentic Workflow - Self-Reflection Report
2
-
3
- Generated: 2025-12-27T22:56:06.143Z
4
-
5
- ## Execution Summary
6
-
7
- - **Iterations**: 1
8
- - **Tool Calls**: 0
9
- - **Unique Tools**: 0
10
-
11
- ## Tool Effectiveness Analysis
12
-
13
- *No tools were executed during this run.*
14
-
15
- ## Recommendations for Improvement
16
-
17
- *No specific recommendations at this time. Execution appears optimal.*
18
-
19
- ## Detailed Execution Timeline
20
-
21
- *No tool execution timeline available.*
22
- ## Conversation History
23
-
24
- <details>
25
- <summary>Click to expand full agentic interaction</summary>
26
-
27
- ```json
28
- [
29
- {
30
- "role": "system",
31
- "content": "You are an expert software engineer tasked with generating meaningful commit messages.\n\n## Available Tools\n\n### Understanding\n\n**get_file_history** _(cheap)_\nGet git commit history for one or more files to understand their evolution and past changes\n\nParameters:\n- `filePaths` (required): Array of file paths to get history for\n- `limit`: Maximum number of commits to return (default: 10)\n- `format`: Output format: \"summary\" for brief or \"detailed\" for full messages\n\n**When to use:** Get git commit history for one or more files to understand their evolution and past changes\n\n**Examples:**\n- Check if file has recent refactoring: `get_file_history({\"filePaths\":[\"src/auth.ts\"],\"limit\":5})`\n- Understand evolution of multiple related files: `get_file_history({\"filePaths\":[\"src/user.ts\",\"src/auth.ts\"],\"limit\":10,\"format\":\"detailed\"})`\n\n---\n\n**get_file_content** _(moderate)_\nGet the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\nParameters:\n- `filePath` (required): Path to the file\n- `includeLineNumbers`: Include line numbers in output (default: false)\n\n**When to use:** Get the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\n**Examples:**\n- See full class definition for modified method: `get_file_content({\"filePath\":\"src/services/auth.ts\",\"includeLineNumbers\":true})`\n- Check imports and structure: `get_file_content({\"filePath\":\"src/utils/helpers.ts\"})`\n\n---\n\n**get_related_tests** _(cheap)_\nFind test files related to production files to understand what the code is supposed to do\n\nParameters:\n- `filePaths` (required): Production file paths\n\n**When to use:** Find test files related to production files to understand what the code is supposed to do\n\n**Examples:**\n- Find tests for modified service: `get_related_tests({\"filePaths\":[\"src/services/auth.ts\"]})`\n\n---\n\n**analyze_diff_section** _(cheap)_\nGet expanded context around specific lines in a file to better understand changes\n\nParameters:\n- `filePath` (required): File containing the section to analyze\n- `startLine` (required): Starting line number\n- `endLine` (required): Ending line number\n- `contextLines`: Number of additional context lines to show before and after (default: 10)\n\n**When to use:** Get expanded context around specific lines in a file to better understand changes\n\n**Examples:**\n- See context around confusing change: `analyze_diff_section({\"filePath\":\"src/auth.ts\",\"startLine\":45,\"endLine\":52,\"contextLines\":15})`\n\n---\n\n**get_recent_commits** _(cheap)_\nGet recent commits that modified the same files to understand recent work in this area\n\nParameters:\n- `filePaths` (required): Files to check for recent commits\n- `since`: Time period to look back (e.g., \"1 week ago\", \"2 days ago\")\n- `limit`: Maximum number of commits to return (default: 5)\n\n**When to use:** Get recent commits that modified the same files to understand recent work in this area\n\n**Examples:**\n- Check for duplicate commit messages: `get_recent_commits({\"filePaths\":[\"src/auth.ts\"],\"since\":\"1 week ago\",\"limit\":5})`\n\n---\n\n### Analysis\n\n**search_codebase** _(moderate)_\nSearch for code patterns, function names, or text across the codebase using git grep\n\nParameters:\n- `query` (required): Search pattern (can be plain text or regex)\n- `fileTypes`: Limit search to specific file extensions (e.g., [\"ts\", \"js\"])\n- `contextLines`: Number of context lines to show around matches (default: 2)\n\n**When to use:** Search for code patterns, function names, or text across the codebase using git grep\n\n**Examples:**\n- Find all uses of a renamed function: `search_codebase({\"query\":\"oldFunctionName\",\"fileTypes\":[\"ts\",\"tsx\"]})`\n- Check if pattern exists elsewhere: `search_codebase({\"query\":\"pattern.*string\",\"contextLines\":3})`\n\n---\n\n**get_file_dependencies** _(moderate)_\nFind which files import or depend on the changed files to assess change impact\n\nParameters:\n- `filePaths` (required): Files to analyze dependencies for\n\n**When to use:** Find which files import or depend on the changed files to assess change impact\n\n**Examples:**\n- Check impact of util function change: `get_file_dependencies({\"filePaths\":[\"src/utils/format.ts\"]})`\n\n---\n\n### Organization\n\n**group_files_by_concern** _(cheap)_\nAnalyze changed files and suggest logical groupings that might represent separate commits\n\nParameters:\n- `filePaths` (required): All changed files to analyze\n\n**When to use:** Analyze changed files and suggest logical groupings that might represent separate commits\n\n**Examples:**\n- Check if multiple unrelated changes should be split: `group_files_by_concern({\"filePaths\":[\"src/auth.ts\",\"README.md\",\"tests/auth.test.ts\",\"package.json\"]})`\n\n---\n\n\n\n## Investigation Strategy\n\nFor simple changes (1-3 files, obvious purpose):\n- Use 1-2 tools: get_recent_commits to avoid duplicates, get_related_tests if logic changed\n\nFor moderate changes (4-10 files, clear theme):\n- Use 2-4 tools: group_files_by_concern, get_file_content for key files, get_recent_commits, get_related_tests\n\nFor complex changes (10+ files, or unclear purpose):\n- Use 4-6 tools: group_files_by_concern, get_file_history, get_file_content for key files, get_file_dependencies, get_related_tests, search_codebase\n\nAlways use tools to understand context - don't rely only on the diff.\n\n## Guidelines\n- Follow conventional commit format when appropriate (feat:, fix:, refactor:, docs:, test:, chore:)\n- Consider suggesting split commits for unrelated changes\n- Output only the commit message and/or splits - no conversational remarks\n- NEVER include phrases like \"If you want\" or \"Let me know\" or offer follow-up actions\n\nOutput format:\nWhen you're ready to provide the final commit message, format it as:\n\nCOMMIT_MESSAGE:\n[Your generated commit message here]\n\nIf you recommend splitting into multiple commits, also include:\n\nSUGGESTED_SPLITS:\nSplit 1:\nFiles: [list of files]\nRationale: [why these belong together]\nMessage: [commit message for this split]\n\nSplit 2:\n...\n\nIf changes should remain as one commit, do not include SUGGESTED_SPLITS section."
32
- },
33
- {
34
- "role": "user",
35
- "content": "I have staged changes that need a commit message.\n\nChanged files (0):\n\n\nDiff:\n\n\nUser direction: --dry-run\n\nRecent commit history for context:\ncommit bcd2c75294b26735fb1fa03d85c020d5c7516960\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Sat Dec 27 14:27:54 2025 -0800\n\n feat(publish): add \"agentic publish\" AI-powered branch-sync recovery\n \n - Introduce Agentic Publish feature to attempt automated diagnosis & recovery when publish prechecks detect branch sync/divergence issues.\n - Add detailed docs: docs/AGENTIC-PUBLISH.md (usage, tools, examples, safety, dry-run).\n - CLI:\n - Add flags: --agentic-publish and --agentic-publish-max-iterations (map into publish config).\n - Surface an AI-powered alternative hint in the publish precheck error output.\n - Integration:\n - Wire in @eldrforge/ai-service's runAgenticPublish and formatAgenticPublishResult in src/commands/publish.ts.\n - When target branch is out-of-sync, optionally invoke the agent with context (branch names, SHAs, working dir, logger, dry-run and max iterations).\n - On success, verify branch sync and continue; on failure or when manual intervention required, fall back to existing manual resolution steps.\n - Preserve dry-run behavior and log a formatted agent report for visibility.\n - Types & config:\n - Extend ConfigSchema and PublishConfig with agenticPublish and agenticPublishMaxIterations options in src/types.ts.\n - Add corresponding CLI parsing support in src/arguments.ts.\n - Dependency & lock:\n - Temporarily point @eldrforge/ai-service to local file:../ai-service in package.json (and update package-lock.json) to develop/test agent integration.\n \n Notes:\n - Agent runs are conservative: agent diagnoses first, prefers non-destructive ops, and reports actions; failures fall back to manual instructions.\n - Dry-run mode supported for agentic publish so users can preview recommended actions without applying changes.\n\ncommit 9fb2702f0ff1ee081d03e9fe8e701afc1a3c664a\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:14:10 2025 -0800\n\n 1.2.132-dev.0\n\ncommit 5d44108e6867b6c0e38d2dc251735bd01b79eaf4\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:12:04 2025 -0800\n\n chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release. (#429)\n \n * 1.2.131-dev.0\n \n * chore(refactor): remove duplicated errors/mutex and use shared packages; rename PackageInfo\n \n - Removed local duplicate implementations and error classes in favor of shared packages:\n - Deleted: src/error/ArgumentError.ts, src/error/CancellationError.ts, src/error/CommandErrors.ts, src/error/ExitError.ts\n - Deleted: src/util/mutex.ts\n - Added documentation: DUPLICATION-CLEANUP.md (summary of the cleanup and rationale)\n \n - Updated imports to consume shared implementations:\n - Replace local error imports with @eldrforge/shared across commands, content modules, and util:\n - src/application.ts, src/commands/audio-commit.ts, src/commands/clean.ts, src/commands/commit.ts, src/commands/review.ts, src/content/diff.ts, src/content/log.ts, src/util/errorHandler.ts, tests/**\n - Use @eldrforge/tree-execution SimpleMutex in src/commands/tree.ts instead of the deleted local mutex.\n - Continued use of @eldrforge/tree-core / tree-execution where appropriate for tree-related functionality.\n \n - Rename and clarify a type in versions:\n - Renamed local PackageInfo -> VersionPackageInfo in src/commands/versions.ts and updated all usages to avoid confusion with tree-core's PackageInfo. Added a clarifying comment.\n \n - Tests updated to match the new externalized modules:\n - Updated tests to import error classes and to mock @eldrforge/shared using async importOriginal where needed (tests/*).\n \n - Misc:\n - Adjusted some mocks to spread actual exports and override specific functions (preserve existing behavior while mocking).\n - No behavior changes intended — this is a deduplication / extraction cleanup to consume the extracted packages.\n \n Rationale:\n - Removes duplicated code now provided by @eldrforge/shared, @eldrforge/tree-core, and @eldrforge/tree-execution.\n - Improves clarity (renamed type) and centralizes shared error types and utilities.\n - Keeps kodrdriv focused; reduces maintenance burden and avoids drift.\n \n Verification:\n - TypeScript compiles (npx tsc --noEmit).\n - Tests updated to reference the shared packages. All existing test expectations preserved.\n \n * chore(deps-dev): bump vite from 7.2.4 to 7.2.7 (#420)\n \n Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.2.4 to 7.2.7.\n - [Release notes](https://github.com/vitejs/vite/releases)\n - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md)\n - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite)\n \n ---\n updated-dependencies:\n - dependency-name: vite\n dependency-version: 7.2.7\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump esbuild from 0.27.0 to 0.27.1 (#418)\n \n Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.0 to 0.27.1.\n - [Release notes](https://github.com/evanw/esbuild/releases)\n - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)\n - [Commits](https://github.com/evanw/esbuild/compare/v0.27.0...v0.27.1)\n \n ---\n updated-dependencies:\n - dependency-name: esbuild\n dependency-version: 0.27.1\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump eslint from 9.37.0 to 9.39.2 (#417)\n \n Bumps [eslint](https://github.com/eslint/eslint) from 9.37.0 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/compare/v9.37.0...v9.39.2)\n \n ---\n updated-dependencies:\n - dependency-name: eslint\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps): bump openai from 6.9.1 to 6.10.0 (#416)\n \n Bumps [openai](https://github.com/openai/openai-node) from 6.9.1 to 6.10.0.\n - [Release notes](https://github.com/openai/openai-node/releases)\n - [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)\n - [Commits](https://github.com/openai/openai-node/compare/v6.9.1...v6.10.0)\n \n ---\n updated-dependencies:\n - dependency-name: openai\n dependency-version: 6.10.0\n dependency-type: direct:production\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump @eslint/js from 9.39.1 to 9.39.2 (#419)\n \n Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.39.1 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/commits/v9.39.2/packages/js)\n \n ---\n updated-dependencies:\n - dependency-name: \"@eslint/js\"\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * Updated package lock\n \n * Updated package lock\n \n * chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release.\n \n ---------\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n\n\nPlease investigate these changes and generate an appropriate commit message.\nUse the available tools to gather additional context as needed.\nIf these changes should be split into multiple commits, suggest the groupings."
36
- },
37
- {
38
- "role": "assistant",
39
- "content": "COMMIT_MESSAGE:\nchore(repo): noop commit — no staged changes (dry-run)"
40
- }
41
- ]
42
- ```
43
-
44
- </details>
45
-
46
- ## Generated Commit Message
47
-
48
- ```
49
- chore(repo): noop commit — no staged changes (dry-run)
50
- ```
@@ -1,50 +0,0 @@
1
- # Agentic Workflow - Self-Reflection Report
2
-
3
- Generated: 2025-12-27T23:01:57.294Z
4
-
5
- ## Execution Summary
6
-
7
- - **Iterations**: 1
8
- - **Tool Calls**: 0
9
- - **Unique Tools**: 0
10
-
11
- ## Tool Effectiveness Analysis
12
-
13
- *No tools were executed during this run.*
14
-
15
- ## Recommendations for Improvement
16
-
17
- *No specific recommendations at this time. Execution appears optimal.*
18
-
19
- ## Detailed Execution Timeline
20
-
21
- *No tool execution timeline available.*
22
- ## Conversation History
23
-
24
- <details>
25
- <summary>Click to expand full agentic interaction</summary>
26
-
27
- ```json
28
- [
29
- {
30
- "role": "system",
31
- "content": "You are an expert software engineer tasked with generating meaningful commit messages.\n\n## Available Tools\n\n### Understanding\n\n**get_file_history** _(cheap)_\nGet git commit history for one or more files to understand their evolution and past changes\n\nParameters:\n- `filePaths` (required): Array of file paths to get history for\n- `limit`: Maximum number of commits to return (default: 10)\n- `format`: Output format: \"summary\" for brief or \"detailed\" for full messages\n\n**When to use:** Get git commit history for one or more files to understand their evolution and past changes\n\n**Examples:**\n- Check if file has recent refactoring: `get_file_history({\"filePaths\":[\"src/auth.ts\"],\"limit\":5})`\n- Understand evolution of multiple related files: `get_file_history({\"filePaths\":[\"src/user.ts\",\"src/auth.ts\"],\"limit\":10,\"format\":\"detailed\"})`\n\n---\n\n**get_file_content** _(moderate)_\nGet the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\nParameters:\n- `filePath` (required): Path to the file\n- `includeLineNumbers`: Include line numbers in output (default: false)\n\n**When to use:** Get the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\n**Examples:**\n- See full class definition for modified method: `get_file_content({\"filePath\":\"src/services/auth.ts\",\"includeLineNumbers\":true})`\n- Check imports and structure: `get_file_content({\"filePath\":\"src/utils/helpers.ts\"})`\n\n---\n\n**get_related_tests** _(cheap)_\nFind test files related to production files to understand what the code is supposed to do\n\nParameters:\n- `filePaths` (required): Production file paths\n\n**When to use:** Find test files related to production files to understand what the code is supposed to do\n\n**Examples:**\n- Find tests for modified service: `get_related_tests({\"filePaths\":[\"src/services/auth.ts\"]})`\n\n---\n\n**analyze_diff_section** _(cheap)_\nGet expanded context around specific lines in a file to better understand changes\n\nParameters:\n- `filePath` (required): File containing the section to analyze\n- `startLine` (required): Starting line number\n- `endLine` (required): Ending line number\n- `contextLines`: Number of additional context lines to show before and after (default: 10)\n\n**When to use:** Get expanded context around specific lines in a file to better understand changes\n\n**Examples:**\n- See context around confusing change: `analyze_diff_section({\"filePath\":\"src/auth.ts\",\"startLine\":45,\"endLine\":52,\"contextLines\":15})`\n\n---\n\n**get_recent_commits** _(cheap)_\nGet recent commits that modified the same files to understand recent work in this area\n\nParameters:\n- `filePaths` (required): Files to check for recent commits\n- `since`: Time period to look back (e.g., \"1 week ago\", \"2 days ago\")\n- `limit`: Maximum number of commits to return (default: 5)\n\n**When to use:** Get recent commits that modified the same files to understand recent work in this area\n\n**Examples:**\n- Check for duplicate commit messages: `get_recent_commits({\"filePaths\":[\"src/auth.ts\"],\"since\":\"1 week ago\",\"limit\":5})`\n\n---\n\n### Analysis\n\n**search_codebase** _(moderate)_\nSearch for code patterns, function names, or text across the codebase using git grep\n\nParameters:\n- `query` (required): Search pattern (can be plain text or regex)\n- `fileTypes`: Limit search to specific file extensions (e.g., [\"ts\", \"js\"])\n- `contextLines`: Number of context lines to show around matches (default: 2)\n\n**When to use:** Search for code patterns, function names, or text across the codebase using git grep\n\n**Examples:**\n- Find all uses of a renamed function: `search_codebase({\"query\":\"oldFunctionName\",\"fileTypes\":[\"ts\",\"tsx\"]})`\n- Check if pattern exists elsewhere: `search_codebase({\"query\":\"pattern.*string\",\"contextLines\":3})`\n\n---\n\n**get_file_dependencies** _(moderate)_\nFind which files import or depend on the changed files to assess change impact\n\nParameters:\n- `filePaths` (required): Files to analyze dependencies for\n\n**When to use:** Find which files import or depend on the changed files to assess change impact\n\n**Examples:**\n- Check impact of util function change: `get_file_dependencies({\"filePaths\":[\"src/utils/format.ts\"]})`\n\n---\n\n### Organization\n\n**group_files_by_concern** _(cheap)_\nAnalyze changed files and suggest logical groupings that might represent separate commits\n\nParameters:\n- `filePaths` (required): All changed files to analyze\n\n**When to use:** Analyze changed files and suggest logical groupings that might represent separate commits\n\n**Examples:**\n- Check if multiple unrelated changes should be split: `group_files_by_concern({\"filePaths\":[\"src/auth.ts\",\"README.md\",\"tests/auth.test.ts\",\"package.json\"]})`\n\n---\n\n\n\n## Investigation Strategy\n\nFor simple changes (1-3 files, obvious purpose):\n- Use 1-2 tools: get_recent_commits to avoid duplicates, get_related_tests if logic changed\n\nFor moderate changes (4-10 files, clear theme):\n- Use 2-4 tools: group_files_by_concern, get_file_content for key files, get_recent_commits, get_related_tests\n\nFor complex changes (10+ files, or unclear purpose):\n- Use 4-6 tools: group_files_by_concern, get_file_history, get_file_content for key files, get_file_dependencies, get_related_tests, search_codebase\n\nAlways use tools to understand context - don't rely only on the diff.\n\n## Guidelines\n- Follow conventional commit format when appropriate (feat:, fix:, refactor:, docs:, test:, chore:)\n- Consider suggesting split commits for unrelated changes\n- Output only the commit message and/or splits - no conversational remarks\n- NEVER include phrases like \"If you want\" or \"Let me know\" or offer follow-up actions\n\nOutput format:\nWhen you're ready to provide the final commit message, format it as:\n\nCOMMIT_MESSAGE:\n[Your generated commit message here]\n\nIf you recommend splitting into multiple commits, also include:\n\nSUGGESTED_SPLITS:\nSplit 1:\nFiles: [list of files]\nRationale: [why these belong together]\nMessage: [commit message for this split]\n\nSplit 2:\n...\n\nIf changes should remain as one commit, do not include SUGGESTED_SPLITS section."
32
- },
33
- {
34
- "role": "user",
35
- "content": "I have staged changes that need a commit message.\n\nChanged files (0):\n\n\nDiff:\n\n\nUser direction: --dry-run\n\nRecent commit history for context:\ncommit bcd2c75294b26735fb1fa03d85c020d5c7516960\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Sat Dec 27 14:27:54 2025 -0800\n\n feat(publish): add \"agentic publish\" AI-powered branch-sync recovery\n \n - Introduce Agentic Publish feature to attempt automated diagnosis & recovery when publish prechecks detect branch sync/divergence issues.\n - Add detailed docs: docs/AGENTIC-PUBLISH.md (usage, tools, examples, safety, dry-run).\n - CLI:\n - Add flags: --agentic-publish and --agentic-publish-max-iterations (map into publish config).\n - Surface an AI-powered alternative hint in the publish precheck error output.\n - Integration:\n - Wire in @eldrforge/ai-service's runAgenticPublish and formatAgenticPublishResult in src/commands/publish.ts.\n - When target branch is out-of-sync, optionally invoke the agent with context (branch names, SHAs, working dir, logger, dry-run and max iterations).\n - On success, verify branch sync and continue; on failure or when manual intervention required, fall back to existing manual resolution steps.\n - Preserve dry-run behavior and log a formatted agent report for visibility.\n - Types & config:\n - Extend ConfigSchema and PublishConfig with agenticPublish and agenticPublishMaxIterations options in src/types.ts.\n - Add corresponding CLI parsing support in src/arguments.ts.\n - Dependency & lock:\n - Temporarily point @eldrforge/ai-service to local file:../ai-service in package.json (and update package-lock.json) to develop/test agent integration.\n \n Notes:\n - Agent runs are conservative: agent diagnoses first, prefers non-destructive ops, and reports actions; failures fall back to manual instructions.\n - Dry-run mode supported for agentic publish so users can preview recommended actions without applying changes.\n\ncommit 9fb2702f0ff1ee081d03e9fe8e701afc1a3c664a\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:14:10 2025 -0800\n\n 1.2.132-dev.0\n\ncommit 5d44108e6867b6c0e38d2dc251735bd01b79eaf4\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:12:04 2025 -0800\n\n chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release. (#429)\n \n * 1.2.131-dev.0\n \n * chore(refactor): remove duplicated errors/mutex and use shared packages; rename PackageInfo\n \n - Removed local duplicate implementations and error classes in favor of shared packages:\n - Deleted: src/error/ArgumentError.ts, src/error/CancellationError.ts, src/error/CommandErrors.ts, src/error/ExitError.ts\n - Deleted: src/util/mutex.ts\n - Added documentation: DUPLICATION-CLEANUP.md (summary of the cleanup and rationale)\n \n - Updated imports to consume shared implementations:\n - Replace local error imports with @eldrforge/shared across commands, content modules, and util:\n - src/application.ts, src/commands/audio-commit.ts, src/commands/clean.ts, src/commands/commit.ts, src/commands/review.ts, src/content/diff.ts, src/content/log.ts, src/util/errorHandler.ts, tests/**\n - Use @eldrforge/tree-execution SimpleMutex in src/commands/tree.ts instead of the deleted local mutex.\n - Continued use of @eldrforge/tree-core / tree-execution where appropriate for tree-related functionality.\n \n - Rename and clarify a type in versions:\n - Renamed local PackageInfo -> VersionPackageInfo in src/commands/versions.ts and updated all usages to avoid confusion with tree-core's PackageInfo. Added a clarifying comment.\n \n - Tests updated to match the new externalized modules:\n - Updated tests to import error classes and to mock @eldrforge/shared using async importOriginal where needed (tests/*).\n \n - Misc:\n - Adjusted some mocks to spread actual exports and override specific functions (preserve existing behavior while mocking).\n - No behavior changes intended — this is a deduplication / extraction cleanup to consume the extracted packages.\n \n Rationale:\n - Removes duplicated code now provided by @eldrforge/shared, @eldrforge/tree-core, and @eldrforge/tree-execution.\n - Improves clarity (renamed type) and centralizes shared error types and utilities.\n - Keeps kodrdriv focused; reduces maintenance burden and avoids drift.\n \n Verification:\n - TypeScript compiles (npx tsc --noEmit).\n - Tests updated to reference the shared packages. All existing test expectations preserved.\n \n * chore(deps-dev): bump vite from 7.2.4 to 7.2.7 (#420)\n \n Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.2.4 to 7.2.7.\n - [Release notes](https://github.com/vitejs/vite/releases)\n - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md)\n - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite)\n \n ---\n updated-dependencies:\n - dependency-name: vite\n dependency-version: 7.2.7\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump esbuild from 0.27.0 to 0.27.1 (#418)\n \n Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.0 to 0.27.1.\n - [Release notes](https://github.com/evanw/esbuild/releases)\n - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)\n - [Commits](https://github.com/evanw/esbuild/compare/v0.27.0...v0.27.1)\n \n ---\n updated-dependencies:\n - dependency-name: esbuild\n dependency-version: 0.27.1\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump eslint from 9.37.0 to 9.39.2 (#417)\n \n Bumps [eslint](https://github.com/eslint/eslint) from 9.37.0 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/compare/v9.37.0...v9.39.2)\n \n ---\n updated-dependencies:\n - dependency-name: eslint\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps): bump openai from 6.9.1 to 6.10.0 (#416)\n \n Bumps [openai](https://github.com/openai/openai-node) from 6.9.1 to 6.10.0.\n - [Release notes](https://github.com/openai/openai-node/releases)\n - [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)\n - [Commits](https://github.com/openai/openai-node/compare/v6.9.1...v6.10.0)\n \n ---\n updated-dependencies:\n - dependency-name: openai\n dependency-version: 6.10.0\n dependency-type: direct:production\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump @eslint/js from 9.39.1 to 9.39.2 (#419)\n \n Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.39.1 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/commits/v9.39.2/packages/js)\n \n ---\n updated-dependencies:\n - dependency-name: \"@eslint/js\"\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * Updated package lock\n \n * Updated package lock\n \n * chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release.\n \n ---------\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n\n\nPlease investigate these changes and generate an appropriate commit message.\nUse the available tools to gather additional context as needed.\nIf these changes should be split into multiple commits, suggest the groupings."
36
- },
37
- {
38
- "role": "assistant",
39
- "content": "COMMIT_MESSAGE:\nchore: dry-run — no staged changes to commit (nothing to commit)"
40
- }
41
- ]
42
- ```
43
-
44
- </details>
45
-
46
- ## Generated Commit Message
47
-
48
- ```
49
- chore: dry-run — no staged changes to commit (nothing to commit)
50
- ```
@@ -1,50 +0,0 @@
1
- # Agentic Workflow - Self-Reflection Report
2
-
3
- Generated: 2025-12-27T23:11:57.811Z
4
-
5
- ## Execution Summary
6
-
7
- - **Iterations**: 1
8
- - **Tool Calls**: 0
9
- - **Unique Tools**: 0
10
-
11
- ## Tool Effectiveness Analysis
12
-
13
- *No tools were executed during this run.*
14
-
15
- ## Recommendations for Improvement
16
-
17
- *No specific recommendations at this time. Execution appears optimal.*
18
-
19
- ## Detailed Execution Timeline
20
-
21
- *No tool execution timeline available.*
22
- ## Conversation History
23
-
24
- <details>
25
- <summary>Click to expand full agentic interaction</summary>
26
-
27
- ```json
28
- [
29
- {
30
- "role": "system",
31
- "content": "You are an expert software engineer tasked with generating meaningful commit messages.\n\n## Available Tools\n\n### Understanding\n\n**get_file_history** _(cheap)_\nGet git commit history for one or more files to understand their evolution and past changes\n\nParameters:\n- `filePaths` (required): Array of file paths to get history for\n- `limit`: Maximum number of commits to return (default: 10)\n- `format`: Output format: \"summary\" for brief or \"detailed\" for full messages\n\n**When to use:** Get git commit history for one or more files to understand their evolution and past changes\n\n**Examples:**\n- Check if file has recent refactoring: `get_file_history({\"filePaths\":[\"src/auth.ts\"],\"limit\":5})`\n- Understand evolution of multiple related files: `get_file_history({\"filePaths\":[\"src/user.ts\",\"src/auth.ts\"],\"limit\":10,\"format\":\"detailed\"})`\n\n---\n\n**get_file_content** _(moderate)_\nGet the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\nParameters:\n- `filePath` (required): Path to the file\n- `includeLineNumbers`: Include line numbers in output (default: false)\n\n**When to use:** Get the complete current content of a file to understand context around changes. Returns a message if the file does not exist (e.g., if it was deleted).\n\n**Examples:**\n- See full class definition for modified method: `get_file_content({\"filePath\":\"src/services/auth.ts\",\"includeLineNumbers\":true})`\n- Check imports and structure: `get_file_content({\"filePath\":\"src/utils/helpers.ts\"})`\n\n---\n\n**get_related_tests** _(cheap)_\nFind test files related to production files to understand what the code is supposed to do\n\nParameters:\n- `filePaths` (required): Production file paths\n\n**When to use:** Find test files related to production files to understand what the code is supposed to do\n\n**Examples:**\n- Find tests for modified service: `get_related_tests({\"filePaths\":[\"src/services/auth.ts\"]})`\n\n---\n\n**analyze_diff_section** _(cheap)_\nGet expanded context around specific lines in a file to better understand changes\n\nParameters:\n- `filePath` (required): File containing the section to analyze\n- `startLine` (required): Starting line number\n- `endLine` (required): Ending line number\n- `contextLines`: Number of additional context lines to show before and after (default: 10)\n\n**When to use:** Get expanded context around specific lines in a file to better understand changes\n\n**Examples:**\n- See context around confusing change: `analyze_diff_section({\"filePath\":\"src/auth.ts\",\"startLine\":45,\"endLine\":52,\"contextLines\":15})`\n\n---\n\n**get_recent_commits** _(cheap)_\nGet recent commits that modified the same files to understand recent work in this area\n\nParameters:\n- `filePaths` (required): Files to check for recent commits\n- `since`: Time period to look back (e.g., \"1 week ago\", \"2 days ago\")\n- `limit`: Maximum number of commits to return (default: 5)\n\n**When to use:** Get recent commits that modified the same files to understand recent work in this area\n\n**Examples:**\n- Check for duplicate commit messages: `get_recent_commits({\"filePaths\":[\"src/auth.ts\"],\"since\":\"1 week ago\",\"limit\":5})`\n\n---\n\n### Analysis\n\n**search_codebase** _(moderate)_\nSearch for code patterns, function names, or text across the codebase using git grep\n\nParameters:\n- `query` (required): Search pattern (can be plain text or regex)\n- `fileTypes`: Limit search to specific file extensions (e.g., [\"ts\", \"js\"])\n- `contextLines`: Number of context lines to show around matches (default: 2)\n\n**When to use:** Search for code patterns, function names, or text across the codebase using git grep\n\n**Examples:**\n- Find all uses of a renamed function: `search_codebase({\"query\":\"oldFunctionName\",\"fileTypes\":[\"ts\",\"tsx\"]})`\n- Check if pattern exists elsewhere: `search_codebase({\"query\":\"pattern.*string\",\"contextLines\":3})`\n\n---\n\n**get_file_dependencies** _(moderate)_\nFind which files import or depend on the changed files to assess change impact\n\nParameters:\n- `filePaths` (required): Files to analyze dependencies for\n\n**When to use:** Find which files import or depend on the changed files to assess change impact\n\n**Examples:**\n- Check impact of util function change: `get_file_dependencies({\"filePaths\":[\"src/utils/format.ts\"]})`\n\n---\n\n### Organization\n\n**group_files_by_concern** _(cheap)_\nAnalyze changed files and suggest logical groupings that might represent separate commits\n\nParameters:\n- `filePaths` (required): All changed files to analyze\n\n**When to use:** Analyze changed files and suggest logical groupings that might represent separate commits\n\n**Examples:**\n- Check if multiple unrelated changes should be split: `group_files_by_concern({\"filePaths\":[\"src/auth.ts\",\"README.md\",\"tests/auth.test.ts\",\"package.json\"]})`\n\n---\n\n\n\n## Investigation Strategy\n\nFor simple changes (1-3 files, obvious purpose):\n- Use 1-2 tools: get_recent_commits to avoid duplicates, get_related_tests if logic changed\n\nFor moderate changes (4-10 files, clear theme):\n- Use 2-4 tools: group_files_by_concern, get_file_content for key files, get_recent_commits, get_related_tests\n\nFor complex changes (10+ files, or unclear purpose):\n- Use 4-6 tools: group_files_by_concern, get_file_history, get_file_content for key files, get_file_dependencies, get_related_tests, search_codebase\n\nAlways use tools to understand context - don't rely only on the diff.\n\n## Guidelines\n- Follow conventional commit format when appropriate (feat:, fix:, refactor:, docs:, test:, chore:)\n- Consider suggesting split commits for unrelated changes\n- Output only the commit message and/or splits - no conversational remarks\n- NEVER include phrases like \"If you want\" or \"Let me know\" or offer follow-up actions\n\nOutput format:\nWhen you're ready to provide the final commit message, format it as:\n\nCOMMIT_MESSAGE:\n[Your generated commit message here]\n\nIf you recommend splitting into multiple commits, also include:\n\nSUGGESTED_SPLITS:\nSplit 1:\nFiles: [list of files]\nRationale: [why these belong together]\nMessage: [commit message for this split]\n\nSplit 2:\n...\n\nIf changes should remain as one commit, do not include SUGGESTED_SPLITS section."
32
- },
33
- {
34
- "role": "user",
35
- "content": "I have staged changes that need a commit message.\n\nChanged files (0):\n\n\nDiff:\n\n\nUser direction: --dry-run\n\nRecent commit history for context:\ncommit bcd2c75294b26735fb1fa03d85c020d5c7516960\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Sat Dec 27 14:27:54 2025 -0800\n\n feat(publish): add \"agentic publish\" AI-powered branch-sync recovery\n \n - Introduce Agentic Publish feature to attempt automated diagnosis & recovery when publish prechecks detect branch sync/divergence issues.\n - Add detailed docs: docs/AGENTIC-PUBLISH.md (usage, tools, examples, safety, dry-run).\n - CLI:\n - Add flags: --agentic-publish and --agentic-publish-max-iterations (map into publish config).\n - Surface an AI-powered alternative hint in the publish precheck error output.\n - Integration:\n - Wire in @eldrforge/ai-service's runAgenticPublish and formatAgenticPublishResult in src/commands/publish.ts.\n - When target branch is out-of-sync, optionally invoke the agent with context (branch names, SHAs, working dir, logger, dry-run and max iterations).\n - On success, verify branch sync and continue; on failure or when manual intervention required, fall back to existing manual resolution steps.\n - Preserve dry-run behavior and log a formatted agent report for visibility.\n - Types & config:\n - Extend ConfigSchema and PublishConfig with agenticPublish and agenticPublishMaxIterations options in src/types.ts.\n - Add corresponding CLI parsing support in src/arguments.ts.\n - Dependency & lock:\n - Temporarily point @eldrforge/ai-service to local file:../ai-service in package.json (and update package-lock.json) to develop/test agent integration.\n \n Notes:\n - Agent runs are conservative: agent diagnoses first, prefers non-destructive ops, and reports actions; failures fall back to manual instructions.\n - Dry-run mode supported for agentic publish so users can preview recommended actions without applying changes.\n\ncommit 9fb2702f0ff1ee081d03e9fe8e701afc1a3c664a\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:14:10 2025 -0800\n\n 1.2.132-dev.0\n\ncommit 5d44108e6867b6c0e38d2dc251735bd01b79eaf4\nAuthor: Calen Varek <calenvarek@gmail.com>\nDate: Fri Dec 26 23:12:04 2025 -0800\n\n chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release. (#429)\n \n * 1.2.131-dev.0\n \n * chore(refactor): remove duplicated errors/mutex and use shared packages; rename PackageInfo\n \n - Removed local duplicate implementations and error classes in favor of shared packages:\n - Deleted: src/error/ArgumentError.ts, src/error/CancellationError.ts, src/error/CommandErrors.ts, src/error/ExitError.ts\n - Deleted: src/util/mutex.ts\n - Added documentation: DUPLICATION-CLEANUP.md (summary of the cleanup and rationale)\n \n - Updated imports to consume shared implementations:\n - Replace local error imports with @eldrforge/shared across commands, content modules, and util:\n - src/application.ts, src/commands/audio-commit.ts, src/commands/clean.ts, src/commands/commit.ts, src/commands/review.ts, src/content/diff.ts, src/content/log.ts, src/util/errorHandler.ts, tests/**\n - Use @eldrforge/tree-execution SimpleMutex in src/commands/tree.ts instead of the deleted local mutex.\n - Continued use of @eldrforge/tree-core / tree-execution where appropriate for tree-related functionality.\n \n - Rename and clarify a type in versions:\n - Renamed local PackageInfo -> VersionPackageInfo in src/commands/versions.ts and updated all usages to avoid confusion with tree-core's PackageInfo. Added a clarifying comment.\n \n - Tests updated to match the new externalized modules:\n - Updated tests to import error classes and to mock @eldrforge/shared using async importOriginal where needed (tests/*).\n \n - Misc:\n - Adjusted some mocks to spread actual exports and override specific functions (preserve existing behavior while mocking).\n - No behavior changes intended — this is a deduplication / extraction cleanup to consume the extracted packages.\n \n Rationale:\n - Removes duplicated code now provided by @eldrforge/shared, @eldrforge/tree-core, and @eldrforge/tree-execution.\n - Improves clarity (renamed type) and centralizes shared error types and utilities.\n - Keeps kodrdriv focused; reduces maintenance burden and avoids drift.\n \n Verification:\n - TypeScript compiles (npx tsc --noEmit).\n - Tests updated to reference the shared packages. All existing test expectations preserved.\n \n * chore(deps-dev): bump vite from 7.2.4 to 7.2.7 (#420)\n \n Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 7.2.4 to 7.2.7.\n - [Release notes](https://github.com/vitejs/vite/releases)\n - [Changelog](https://github.com/vitejs/vite/blob/v7.2.7/packages/vite/CHANGELOG.md)\n - [Commits](https://github.com/vitejs/vite/commits/v7.2.7/packages/vite)\n \n ---\n updated-dependencies:\n - dependency-name: vite\n dependency-version: 7.2.7\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump esbuild from 0.27.0 to 0.27.1 (#418)\n \n Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.0 to 0.27.1.\n - [Release notes](https://github.com/evanw/esbuild/releases)\n - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)\n - [Commits](https://github.com/evanw/esbuild/compare/v0.27.0...v0.27.1)\n \n ---\n updated-dependencies:\n - dependency-name: esbuild\n dependency-version: 0.27.1\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump eslint from 9.37.0 to 9.39.2 (#417)\n \n Bumps [eslint](https://github.com/eslint/eslint) from 9.37.0 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/compare/v9.37.0...v9.39.2)\n \n ---\n updated-dependencies:\n - dependency-name: eslint\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps): bump openai from 6.9.1 to 6.10.0 (#416)\n \n Bumps [openai](https://github.com/openai/openai-node) from 6.9.1 to 6.10.0.\n - [Release notes](https://github.com/openai/openai-node/releases)\n - [Changelog](https://github.com/openai/openai-node/blob/master/CHANGELOG.md)\n - [Commits](https://github.com/openai/openai-node/compare/v6.9.1...v6.10.0)\n \n ---\n updated-dependencies:\n - dependency-name: openai\n dependency-version: 6.10.0\n dependency-type: direct:production\n update-type: version-update:semver-minor\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * chore(deps-dev): bump @eslint/js from 9.39.1 to 9.39.2 (#419)\n \n Bumps [@eslint/js](https://github.com/eslint/eslint/tree/HEAD/packages/js) from 9.39.1 to 9.39.2.\n - [Release notes](https://github.com/eslint/eslint/releases)\n - [Commits](https://github.com/eslint/eslint/commits/v9.39.2/packages/js)\n \n ---\n updated-dependencies:\n - dependency-name: \"@eslint/js\"\n dependency-version: 9.39.2\n dependency-type: direct:development\n update-type: version-update:semver-patch\n ...\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n \n * Updated package lock\n \n * Updated package lock\n \n * chore(release): bump @eldrforge/kodrdriv version to 1.2.131\n \n Update package.json version from 1.2.131-dev.0 to 1.2.131 to prepare the stable release.\n \n ---------\n \n Signed-off-by: dependabot[bot] <support@github.com>\n Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>\n\n\nPlease investigate these changes and generate an appropriate commit message.\nUse the available tools to gather additional context as needed.\nIf these changes should be split into multiple commits, suggest the groupings."
36
- },
37
- {
38
- "role": "assistant",
39
- "content": "COMMIT_MESSAGE:\nchore: no staged changes (dry-run)"
40
- }
41
- ]
42
- ```
43
-
44
- </details>
45
-
46
- ## Generated Commit Message
47
-
48
- ```
49
- chore: no staged changes (dry-run)
50
- ```