@eldrforge/kodrdriv 1.2.133 → 1.2.134

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/AI-GUIDE.md CHANGED
@@ -744,7 +744,7 @@ cd ../kodrdriv && npm run build
744
744
  ## Directory Structure Reference
745
745
 
746
746
  ```
747
- /Users/tobrien/gitw/calenvarek/
747
+ /Users/tobrien/gitw/grunnverk/
748
748
  ├── kodrdriv/ # Main package
749
749
  │ ├── guide/ # AI-friendly guides ⭐
750
750
  │ ├── docs/ # Detailed documentation
@@ -832,3 +832,6 @@ cd ../kodrdriv && npm run build
832
832
 
833
833
  This guide is your complete reference for working with kodrdriv. Start with the guide directory, dive into implementation docs as needed, and leverage the extensive documentation to help users succeed!
834
834
 
835
+
836
+
837
+
package/LICENSE CHANGED
@@ -175,7 +175,7 @@
175
175
 
176
176
  END OF TERMS AND CONDITIONS
177
177
 
178
- Copyright 2025 Calen Varek
178
+ Copyright 2025 Tim O'Brien
179
179
 
180
180
  Licensed under the Apache License, Version 2.0 (the "License");
181
181
  you may not use this file except in compliance with the License.
@@ -22,6 +22,7 @@ import { execute as execute$e } from './commands/updates.js';
22
22
  import { execute as execute$d } from './commands/versions.js';
23
23
  import { DEFAULT_CONFIG_DIR, VERSION, COMMAND_CHECK_CONFIG, COMMAND_INIT_CONFIG, COMMAND_COMMIT, COMMAND_AUDIO_COMMIT, COMMAND_RELEASE, COMMAND_PUBLISH, COMMAND_TREE, COMMAND_LINK, COMMAND_UNLINK, COMMAND_AUDIO_REVIEW, COMMAND_CLEAN, COMMAND_PRECOMMIT, COMMAND_REVIEW, COMMAND_SELECT_AUDIO, COMMAND_DEVELOPMENT, COMMAND_VERSIONS, COMMAND_UPDATES } from './constants.js';
24
24
  import { getLogger, setLogLevel } from './logging.js';
25
+ import { ConfigSchema } from './types.js';
25
26
 
26
27
  /**
27
28
  * Print debug information about the command being executed when debug flag is enabled.
@@ -62,6 +63,7 @@ async function runApplication() {
62
63
  defaults: {
63
64
  configDirectory: DEFAULT_CONFIG_DIR
64
65
  },
66
+ configShape: ConfigSchema.shape,
65
67
  features: [
66
68
  'config',
67
69
  'hierarchical'
@@ -1 +1 @@
1
- {"version":3,"file":"application.js","sources":["../src/application.ts"],"sourcesContent":["import * as Cardigantime from '@theunwalked/cardigantime';\nimport 'dotenv/config';\nimport { setLogger as setGitLogger } from '@eldrforge/git-tools';\nimport { setLogger as setGitHubLogger, setPromptFunction } from '@eldrforge/github-tools';\nimport { promptConfirmation } from '@eldrforge/shared';\nimport { initializeTemplates } from '@eldrforge/ai-service';\nimport { CommandConfig } from 'types';\nimport * as Arguments from './arguments';\nimport * as AudioCommit from './commands/audio-commit';\nimport * as AudioReview from './commands/audio-review';\nimport * as Clean from './commands/clean';\nimport * as Commit from './commands/commit';\nimport * as Development from './commands/development';\nimport * as Link from './commands/link';\nimport * as Precommit from './commands/precommit';\nimport * as Publish from './commands/publish';\nimport * as Release from './commands/release';\nimport * as Review from './commands/review';\nimport * as SelectAudio from './commands/select-audio';\nimport * as Tree from './commands/tree';\nimport * as Unlink from './commands/unlink';\nimport * as Updates from './commands/updates';\nimport * as Versions from './commands/versions';\nimport { COMMAND_AUDIO_COMMIT, COMMAND_AUDIO_REVIEW, COMMAND_CHECK_CONFIG, COMMAND_CLEAN, COMMAND_COMMIT, COMMAND_DEVELOPMENT, COMMAND_INIT_CONFIG, COMMAND_LINK, COMMAND_PRECOMMIT, COMMAND_PUBLISH, COMMAND_RELEASE, COMMAND_REVIEW, COMMAND_SELECT_AUDIO, COMMAND_TREE, COMMAND_UNLINK, COMMAND_UPDATES, COMMAND_VERSIONS, DEFAULT_CONFIG_DIR, VERSION } from './constants';\nimport { UserCancellationError } from '@eldrforge/shared';\nimport { getLogger, setLogLevel } from './logging';\nimport { Config, SecureConfig } from './types';\n\n/**\n * Print debug information about the command being executed when debug flag is enabled.\n */\nfunction printDebugCommandInfo(commandName: string, runConfig: Config): void {\n if (runConfig.debug) {\n const logger = getLogger();\n logger.info('DEBUG_INFO_HEADER: KodrDriv debug information');\n logger.info('DEBUG_INFO_COMMAND: Command being executed | Command: %s', commandName);\n logger.info('DEBUG_INFO_VERSION: KodrDriv version | Version: %s', VERSION);\n logger.info('DEBUG_INFO_FOOTER: End of debug information');\n }\n}\n\n/**\n * Configure early logging based on command line flags.\n *\n * Hey we need this because we need to be able to debug CardiganTime.\n * This method checks for --verbose and --debug flags early in the process\n * before CardiganTime is configured, allowing us to capture debug output\n * from the CardiganTime initialization itself.\n */\nexport function configureEarlyLogging(): void {\n const hasVerbose = process.argv.includes('--verbose');\n const hasDebug = process.argv.includes('--debug');\n\n // Set log level based on early flag detection\n if (hasDebug) {\n setLogLevel('debug');\n } else if (hasVerbose) {\n setLogLevel('verbose');\n }\n}\n\nexport async function runApplication(): Promise<void> {\n // Configure logging early, before CardiganTime initialization\n configureEarlyLogging();\n\n // Initialize RiotPrompt templates for ai-service\n initializeTemplates();\n\n // Use proper typing for CardiganTime create function\n interface CardigantimeCreateParams {\n defaults?: any;\n features?: string[];\n configShape?: any;\n logger?: any;\n }\n\n interface CardigantimeInstance {\n read: (args: any) => Promise<any>;\n checkConfig: () => Promise<void>;\n generateConfig: (dir: string) => Promise<void>;\n setLogger: (logger: any) => void;\n }\n\n const cardigantimeModule = Cardigantime as any;\n const createCardigantime = cardigantimeModule.create as (params: CardigantimeCreateParams) => CardigantimeInstance;\n\n const cardigantime = createCardigantime({\n defaults: {\n configDirectory: DEFAULT_CONFIG_DIR,\n },\n features: ['config', 'hierarchical'],\n logger: getLogger(),\n });\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [runConfig, secureConfig, commandConfig]: [Config, SecureConfig, CommandConfig] = await Arguments.configure(cardigantime); // Pass cardigantime instance\n\n // Set log level based on verbose flag\n if (runConfig.verbose) {\n setLogLevel('verbose');\n }\n if (runConfig.debug) {\n setLogLevel('debug');\n }\n\n const logger = getLogger();\n cardigantime.setLogger(logger);\n\n // Configure external packages to use our logger and prompt\n setGitLogger(logger);\n setGitHubLogger(logger);\n setPromptFunction(promptConfirmation);\n\n // Display version information\n logger.info('APPLICATION_STARTING: KodrDriv application initializing | Version: %s | Status: starting', VERSION);\n\n // Handle check-config command first\n if (commandConfig.commandName === COMMAND_CHECK_CONFIG) {\n // CardiganTime's checkConfig has already been called in Arguments.configure()\n // No additional processing needed here\n return;\n }\n\n // Handle init-config command\n if (commandConfig.commandName === COMMAND_INIT_CONFIG) {\n // CardiganTime's initConfig has already been called in Arguments.configure()\n // No additional processing needed here\n return;\n }\n\n // Get the command from Commander\n const command = process.argv[2];\n let commandName = commandConfig.commandName;\n\n // Handle special case for tree command with built-in command argument\n if (command === 'tree' && process.argv[3]) {\n const treeBuiltInCommand = process.argv[3];\n const supportedBuiltInCommands = ['commit', 'publish', 'link', 'unlink', 'development', 'updates'];\n if (supportedBuiltInCommands.includes(treeBuiltInCommand)) {\n // This is a tree command with built-in command, keep commandName as 'tree'\n commandName = 'tree';\n } else {\n // Unknown tree argument, let it fail naturally in tree.ts\n commandName = 'tree';\n }\n }\n // If we have a specific command argument, use that\n else if (command === 'commit' || command === 'audio-commit' || command === 'release' || command === 'publish' || command === 'tree' || command === 'link' || command === 'unlink' || command === 'audio-review' || command === 'clean' || command === 'precommit' || command === 'review' || command === 'select-audio' || command === 'development' || command === 'versions' || command === 'updates') {\n commandName = command;\n }\n\n let summary: string = '';\n\n try {\n // Print debug info at the start of command execution\n if (commandName) {\n printDebugCommandInfo(commandName, runConfig);\n }\n\n if (commandName === COMMAND_COMMIT) {\n summary = await Commit.execute(runConfig);\n } else if (commandName === COMMAND_AUDIO_COMMIT) {\n summary = await AudioCommit.execute(runConfig);\n } else if (commandName === COMMAND_RELEASE) {\n const releaseSummary = await Release.execute(runConfig);\n summary = `${releaseSummary.title}\\n\\n${releaseSummary.body}`;\n } else if (commandName === COMMAND_PUBLISH) {\n await Publish.execute(runConfig);\n } else if (commandName === COMMAND_TREE) {\n // Handle tree directories mapping from command-specific arguments\n if (runConfig.audioReview?.directory && !runConfig.tree?.directories) {\n runConfig.tree = runConfig.tree || {};\n runConfig.tree.directories = [runConfig.audioReview.directory];\n }\n // Handle tree exclusion patterns - use global excludedPatterns for tree\n if (runConfig.excludedPatterns && !runConfig.tree?.exclude) {\n runConfig.tree = runConfig.tree || {};\n runConfig.tree.exclude = runConfig.excludedPatterns;\n }\n summary = await Tree.execute(runConfig);\n } else if (commandName === COMMAND_LINK) {\n summary = await Link.execute(runConfig);\n } else if (commandName === COMMAND_UNLINK) {\n summary = await Unlink.execute(runConfig);\n } else if (commandName === COMMAND_AUDIO_REVIEW) {\n summary = await AudioReview.execute(runConfig);\n } else if (commandName === COMMAND_CLEAN) {\n await Clean.execute(runConfig);\n summary = 'Output directory cleaned successfully.';\n } else if (commandName === COMMAND_PRECOMMIT) {\n summary = await Precommit.execute(runConfig);\n } else if (commandName === COMMAND_REVIEW) {\n summary = await Review.execute(runConfig);\n } else if (commandName === COMMAND_SELECT_AUDIO) {\n await SelectAudio.execute(runConfig);\n summary = 'Audio selection completed successfully.';\n } else if (commandName === COMMAND_DEVELOPMENT) {\n summary = await Development.execute(runConfig);\n } else if (commandName === COMMAND_VERSIONS) {\n summary = await Versions.execute(runConfig);\n } else if (commandName === COMMAND_UPDATES) {\n summary = await Updates.execute(runConfig);\n }\n\n // eslint-disable-next-line no-console\n console.log(`\\n\\n${summary}\\n\\n`);\n } catch (error: any) {\n // Handle user cancellation gracefully\n if (error instanceof UserCancellationError) {\n logger.info('APPLICATION_ERROR: Application error occurred | Error: ' + error.message);\n process.exit(0);\n }\n\n // Re-throw other errors to be handled by main.ts\n throw error;\n }\n}\n"],"names":["printDebugCommandInfo","commandName","runConfig","debug","logger","getLogger","info","VERSION","configureEarlyLogging","hasVerbose","process","argv","includes","hasDebug","setLogLevel","runApplication","initializeTemplates","cardigantimeModule","Cardigantime","createCardigantime","create","cardigantime","defaults","configDirectory","DEFAULT_CONFIG_DIR","features","secureConfig","commandConfig","Arguments","verbose","setLogger","setGitLogger","setGitHubLogger","setPromptFunction","promptConfirmation","COMMAND_CHECK_CONFIG","COMMAND_INIT_CONFIG","command","treeBuiltInCommand","supportedBuiltInCommands","summary","COMMAND_COMMIT","Commit","COMMAND_AUDIO_COMMIT","AudioCommit","COMMAND_RELEASE","releaseSummary","Release","title","body","COMMAND_PUBLISH","Publish","COMMAND_TREE","audioReview","directory","tree","directories","excludedPatterns","exclude","Tree","COMMAND_LINK","Link","COMMAND_UNLINK","Unlink","COMMAND_AUDIO_REVIEW","AudioReview","COMMAND_CLEAN","Clean","COMMAND_PRECOMMIT","Precommit","COMMAND_REVIEW","Review","COMMAND_SELECT_AUDIO","SelectAudio","COMMAND_DEVELOPMENT","Development","COMMAND_VERSIONS","Versions","COMMAND_UPDATES","Updates","console","log","error","UserCancellationError","message","exit"],"mappings":"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"}
1
+ {"version":3,"file":"application.js","sources":["../src/application.ts"],"sourcesContent":["import * as Cardigantime from '@theunwalked/cardigantime';\nimport 'dotenv/config';\nimport { setLogger as setGitLogger } from '@eldrforge/git-tools';\nimport { setLogger as setGitHubLogger, setPromptFunction } from '@eldrforge/github-tools';\nimport { promptConfirmation } from '@eldrforge/shared';\nimport { initializeTemplates } from '@eldrforge/ai-service';\nimport { CommandConfig } from 'types';\nimport * as Arguments from './arguments';\nimport * as AudioCommit from './commands/audio-commit';\nimport * as AudioReview from './commands/audio-review';\nimport * as Clean from './commands/clean';\nimport * as Commit from './commands/commit';\nimport * as Development from './commands/development';\nimport * as Link from './commands/link';\nimport * as Precommit from './commands/precommit';\nimport * as Publish from './commands/publish';\nimport * as Release from './commands/release';\nimport * as Review from './commands/review';\nimport * as SelectAudio from './commands/select-audio';\nimport * as Tree from './commands/tree';\nimport * as Unlink from './commands/unlink';\nimport * as Updates from './commands/updates';\nimport * as Versions from './commands/versions';\nimport { COMMAND_AUDIO_COMMIT, COMMAND_AUDIO_REVIEW, COMMAND_CHECK_CONFIG, COMMAND_CLEAN, COMMAND_COMMIT, COMMAND_DEVELOPMENT, COMMAND_INIT_CONFIG, COMMAND_LINK, COMMAND_PRECOMMIT, COMMAND_PUBLISH, COMMAND_RELEASE, COMMAND_REVIEW, COMMAND_SELECT_AUDIO, COMMAND_TREE, COMMAND_UNLINK, COMMAND_UPDATES, COMMAND_VERSIONS, DEFAULT_CONFIG_DIR, VERSION } from './constants';\nimport { UserCancellationError } from '@eldrforge/shared';\nimport { getLogger, setLogLevel } from './logging';\nimport { Config, SecureConfig, ConfigSchema } from './types';\n\n/**\n * Print debug information about the command being executed when debug flag is enabled.\n */\nfunction printDebugCommandInfo(commandName: string, runConfig: Config): void {\n if (runConfig.debug) {\n const logger = getLogger();\n logger.info('DEBUG_INFO_HEADER: KodrDriv debug information');\n logger.info('DEBUG_INFO_COMMAND: Command being executed | Command: %s', commandName);\n logger.info('DEBUG_INFO_VERSION: KodrDriv version | Version: %s', VERSION);\n logger.info('DEBUG_INFO_FOOTER: End of debug information');\n }\n}\n\n/**\n * Configure early logging based on command line flags.\n *\n * Hey we need this because we need to be able to debug CardiganTime.\n * This method checks for --verbose and --debug flags early in the process\n * before CardiganTime is configured, allowing us to capture debug output\n * from the CardiganTime initialization itself.\n */\nexport function configureEarlyLogging(): void {\n const hasVerbose = process.argv.includes('--verbose');\n const hasDebug = process.argv.includes('--debug');\n\n // Set log level based on early flag detection\n if (hasDebug) {\n setLogLevel('debug');\n } else if (hasVerbose) {\n setLogLevel('verbose');\n }\n}\n\nexport async function runApplication(): Promise<void> {\n // Configure logging early, before CardiganTime initialization\n configureEarlyLogging();\n\n // Initialize RiotPrompt templates for ai-service\n initializeTemplates();\n\n // Use proper typing for CardiganTime create function\n interface CardigantimeCreateParams {\n defaults?: any;\n features?: string[];\n configShape?: any;\n logger?: any;\n }\n\n interface CardigantimeInstance {\n read: (args: any) => Promise<any>;\n checkConfig: () => Promise<void>;\n generateConfig: (dir: string) => Promise<void>;\n setLogger: (logger: any) => void;\n }\n\n const cardigantimeModule = Cardigantime as any;\n const createCardigantime = cardigantimeModule.create as (params: CardigantimeCreateParams) => CardigantimeInstance;\n\n const cardigantime = createCardigantime({\n defaults: {\n configDirectory: DEFAULT_CONFIG_DIR,\n },\n configShape: ConfigSchema.shape,\n features: ['config', 'hierarchical'],\n logger: getLogger(),\n });\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const [runConfig, secureConfig, commandConfig]: [Config, SecureConfig, CommandConfig] = await Arguments.configure(cardigantime); // Pass cardigantime instance\n\n // Set log level based on verbose flag\n if (runConfig.verbose) {\n setLogLevel('verbose');\n }\n if (runConfig.debug) {\n setLogLevel('debug');\n }\n\n const logger = getLogger();\n cardigantime.setLogger(logger);\n\n // Configure external packages to use our logger and prompt\n setGitLogger(logger);\n setGitHubLogger(logger);\n setPromptFunction(promptConfirmation);\n\n // Display version information\n logger.info('APPLICATION_STARTING: KodrDriv application initializing | Version: %s | Status: starting', VERSION);\n\n // Handle check-config command first\n if (commandConfig.commandName === COMMAND_CHECK_CONFIG) {\n // CardiganTime's checkConfig has already been called in Arguments.configure()\n // No additional processing needed here\n return;\n }\n\n // Handle init-config command\n if (commandConfig.commandName === COMMAND_INIT_CONFIG) {\n // CardiganTime's initConfig has already been called in Arguments.configure()\n // No additional processing needed here\n return;\n }\n\n // Get the command from Commander\n const command = process.argv[2];\n let commandName = commandConfig.commandName;\n\n // Handle special case for tree command with built-in command argument\n if (command === 'tree' && process.argv[3]) {\n const treeBuiltInCommand = process.argv[3];\n const supportedBuiltInCommands = ['commit', 'publish', 'link', 'unlink', 'development', 'updates'];\n if (supportedBuiltInCommands.includes(treeBuiltInCommand)) {\n // This is a tree command with built-in command, keep commandName as 'tree'\n commandName = 'tree';\n } else {\n // Unknown tree argument, let it fail naturally in tree.ts\n commandName = 'tree';\n }\n }\n // If we have a specific command argument, use that\n else if (command === 'commit' || command === 'audio-commit' || command === 'release' || command === 'publish' || command === 'tree' || command === 'link' || command === 'unlink' || command === 'audio-review' || command === 'clean' || command === 'precommit' || command === 'review' || command === 'select-audio' || command === 'development' || command === 'versions' || command === 'updates') {\n commandName = command;\n }\n\n let summary: string = '';\n\n try {\n // Print debug info at the start of command execution\n if (commandName) {\n printDebugCommandInfo(commandName, runConfig);\n }\n\n if (commandName === COMMAND_COMMIT) {\n summary = await Commit.execute(runConfig);\n } else if (commandName === COMMAND_AUDIO_COMMIT) {\n summary = await AudioCommit.execute(runConfig);\n } else if (commandName === COMMAND_RELEASE) {\n const releaseSummary = await Release.execute(runConfig);\n summary = `${releaseSummary.title}\\n\\n${releaseSummary.body}`;\n } else if (commandName === COMMAND_PUBLISH) {\n await Publish.execute(runConfig);\n } else if (commandName === COMMAND_TREE) {\n // Handle tree directories mapping from command-specific arguments\n if (runConfig.audioReview?.directory && !runConfig.tree?.directories) {\n runConfig.tree = runConfig.tree || {};\n runConfig.tree.directories = [runConfig.audioReview.directory];\n }\n // Handle tree exclusion patterns - use global excludedPatterns for tree\n if (runConfig.excludedPatterns && !runConfig.tree?.exclude) {\n runConfig.tree = runConfig.tree || {};\n runConfig.tree.exclude = runConfig.excludedPatterns;\n }\n summary = await Tree.execute(runConfig);\n } else if (commandName === COMMAND_LINK) {\n summary = await Link.execute(runConfig);\n } else if (commandName === COMMAND_UNLINK) {\n summary = await Unlink.execute(runConfig);\n } else if (commandName === COMMAND_AUDIO_REVIEW) {\n summary = await AudioReview.execute(runConfig);\n } else if (commandName === COMMAND_CLEAN) {\n await Clean.execute(runConfig);\n summary = 'Output directory cleaned successfully.';\n } else if (commandName === COMMAND_PRECOMMIT) {\n summary = await Precommit.execute(runConfig);\n } else if (commandName === COMMAND_REVIEW) {\n summary = await Review.execute(runConfig);\n } else if (commandName === COMMAND_SELECT_AUDIO) {\n await SelectAudio.execute(runConfig);\n summary = 'Audio selection completed successfully.';\n } else if (commandName === COMMAND_DEVELOPMENT) {\n summary = await Development.execute(runConfig);\n } else if (commandName === COMMAND_VERSIONS) {\n summary = await Versions.execute(runConfig);\n } else if (commandName === COMMAND_UPDATES) {\n summary = await Updates.execute(runConfig);\n }\n\n // eslint-disable-next-line no-console\n console.log(`\\n\\n${summary}\\n\\n`);\n } catch (error: any) {\n // Handle user cancellation gracefully\n if (error instanceof UserCancellationError) {\n logger.info('APPLICATION_ERROR: Application error occurred | Error: ' + error.message);\n process.exit(0);\n }\n\n // Re-throw other errors to be handled by main.ts\n throw error;\n }\n}\n"],"names":["printDebugCommandInfo","commandName","runConfig","debug","logger","getLogger","info","VERSION","configureEarlyLogging","hasVerbose","process","argv","includes","hasDebug","setLogLevel","runApplication","initializeTemplates","cardigantimeModule","Cardigantime","createCardigantime","create","cardigantime","defaults","configDirectory","DEFAULT_CONFIG_DIR","configShape","ConfigSchema","shape","features","secureConfig","commandConfig","Arguments","verbose","setLogger","setGitLogger","setGitHubLogger","setPromptFunction","promptConfirmation","COMMAND_CHECK_CONFIG","COMMAND_INIT_CONFIG","command","treeBuiltInCommand","supportedBuiltInCommands","summary","COMMAND_COMMIT","Commit","COMMAND_AUDIO_COMMIT","AudioCommit","COMMAND_RELEASE","releaseSummary","Release","title","body","COMMAND_PUBLISH","Publish","COMMAND_TREE","audioReview","directory","tree","directories","excludedPatterns","exclude","Tree","COMMAND_LINK","Link","COMMAND_UNLINK","Unlink","COMMAND_AUDIO_REVIEW","AudioReview","COMMAND_CLEAN","Clean","COMMAND_PRECOMMIT","Precommit","COMMAND_REVIEW","Review","COMMAND_SELECT_AUDIO","SelectAudio","COMMAND_DEVELOPMENT","Development","COMMAND_VERSIONS","Versions","COMMAND_UPDATES","Updates","console","log","error","UserCancellationError","message","exit"],"mappings":"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"}
package/dist/constants.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import os__default from 'os';
2
2
  import path__default from 'path';
3
3
 
4
- const VERSION = '1.2.133 (HEAD/1c05f66 T:v1.2.133 2025-12-31 11:42:01 -0800) linux x64 v22.21.1';
4
+ const VERSION = '1.2.134 (HEAD/6ce5c89 T:v1.2.134 2026-01-09 21:46:52 -0800) linux x64 v22.21.1';
5
5
  const PROGRAM_NAME = 'kodrdriv';
6
6
  const DEFAULT_OVERRIDES = false;
7
7
  const DATE_FORMAT_YEAR_MONTH_DAY_HOURS_MINUTES_SECONDS_MILLISECONDS = 'YYYY-MM-DD-HHmmss.SSS';
package/dist/types.js ADDED
@@ -0,0 +1,282 @@
1
+ import { z } from 'zod';
2
+
3
+ const ConfigSchema = z.object({
4
+ dryRun: z.boolean().optional(),
5
+ verbose: z.boolean().optional(),
6
+ debug: z.boolean().optional(),
7
+ overrides: z.boolean().optional(),
8
+ model: z.string().optional(),
9
+ openaiReasoning: z.enum([
10
+ 'low',
11
+ 'medium',
12
+ 'high'
13
+ ]).optional(),
14
+ openaiMaxOutputTokens: z.number().optional(),
15
+ contextDirectories: z.array(z.string()).optional(),
16
+ outputDirectory: z.string().optional(),
17
+ preferencesDirectory: z.string().optional(),
18
+ commit: z.object({
19
+ add: z.boolean().optional(),
20
+ cached: z.boolean().optional(),
21
+ sendit: z.boolean().optional(),
22
+ interactive: z.boolean().optional(),
23
+ amend: z.boolean().optional(),
24
+ push: z.union([
25
+ z.boolean(),
26
+ z.string()
27
+ ]).optional(),
28
+ messageLimit: z.number().optional(),
29
+ context: z.string().optional(),
30
+ contextFiles: z.array(z.string()).optional(),
31
+ direction: z.string().optional(),
32
+ skipFileCheck: z.boolean().optional(),
33
+ maxDiffBytes: z.number().optional(),
34
+ model: z.string().optional(),
35
+ openaiReasoning: z.enum([
36
+ 'low',
37
+ 'medium',
38
+ 'high'
39
+ ]).optional(),
40
+ openaiMaxOutputTokens: z.number().optional(),
41
+ // Agentic options (always enabled)
42
+ maxAgenticIterations: z.number().optional(),
43
+ allowCommitSplitting: z.boolean().optional(),
44
+ toolTimeout: z.number().optional(),
45
+ selfReflection: z.boolean().optional()
46
+ }).optional(),
47
+ audioCommit: z.object({
48
+ maxRecordingTime: z.number().optional(),
49
+ audioDevice: z.string().optional(),
50
+ file: z.string().optional(),
51
+ keepTemp: z.boolean().optional(),
52
+ model: z.string().optional(),
53
+ openaiReasoning: z.enum([
54
+ 'low',
55
+ 'medium',
56
+ 'high'
57
+ ]).optional(),
58
+ openaiMaxOutputTokens: z.number().optional()
59
+ }).optional(),
60
+ release: z.object({
61
+ from: z.string().optional(),
62
+ to: z.string().optional(),
63
+ messageLimit: z.number().optional(),
64
+ context: z.string().optional(),
65
+ contextFiles: z.array(z.string()).optional(),
66
+ interactive: z.boolean().optional(),
67
+ focus: z.string().optional(),
68
+ maxDiffBytes: z.number().optional(),
69
+ model: z.string().optional(),
70
+ openaiReasoning: z.enum([
71
+ 'low',
72
+ 'medium',
73
+ 'high'
74
+ ]).optional(),
75
+ openaiMaxOutputTokens: z.number().optional(),
76
+ noMilestones: z.boolean().optional(),
77
+ fromMain: z.boolean().optional(),
78
+ currentBranch: z.string().optional(),
79
+ // Agentic options (always enabled)
80
+ maxAgenticIterations: z.number().optional(),
81
+ selfReflection: z.boolean().optional()
82
+ }).optional(),
83
+ review: z.object({
84
+ includeCommitHistory: z.boolean().optional(),
85
+ includeRecentDiffs: z.boolean().optional(),
86
+ includeReleaseNotes: z.boolean().optional(),
87
+ includeGithubIssues: z.boolean().optional(),
88
+ commitHistoryLimit: z.number().optional(),
89
+ diffHistoryLimit: z.number().optional(),
90
+ releaseNotesLimit: z.number().optional(),
91
+ githubIssuesLimit: z.number().optional(),
92
+ context: z.string().optional(),
93
+ sendit: z.boolean().optional(),
94
+ note: z.string().optional(),
95
+ editorTimeout: z.number().optional(),
96
+ maxContextErrors: z.number().optional(),
97
+ model: z.string().optional(),
98
+ openaiReasoning: z.enum([
99
+ 'low',
100
+ 'medium',
101
+ 'high'
102
+ ]).optional(),
103
+ openaiMaxOutputTokens: z.number().optional(),
104
+ file: z.string().optional(),
105
+ directory: z.string().optional()
106
+ }).optional(),
107
+ audioReview: z.object({
108
+ includeCommitHistory: z.boolean().optional(),
109
+ includeRecentDiffs: z.boolean().optional(),
110
+ includeReleaseNotes: z.boolean().optional(),
111
+ includeGithubIssues: z.boolean().optional(),
112
+ commitHistoryLimit: z.number().optional(),
113
+ diffHistoryLimit: z.number().optional(),
114
+ releaseNotesLimit: z.number().optional(),
115
+ githubIssuesLimit: z.number().optional(),
116
+ context: z.string().optional(),
117
+ sendit: z.boolean().optional(),
118
+ maxRecordingTime: z.number().optional(),
119
+ audioDevice: z.string().optional(),
120
+ file: z.string().optional(),
121
+ directory: z.string().optional(),
122
+ keepTemp: z.boolean().optional(),
123
+ model: z.string().optional(),
124
+ openaiReasoning: z.enum([
125
+ 'low',
126
+ 'medium',
127
+ 'high'
128
+ ]).optional(),
129
+ openaiMaxOutputTokens: z.number().optional()
130
+ }).optional(),
131
+ publish: z.object({
132
+ mergeMethod: z.enum([
133
+ 'merge',
134
+ 'squash',
135
+ 'rebase'
136
+ ]).optional(),
137
+ from: z.string().optional(),
138
+ targetVersion: z.string().optional(),
139
+ interactive: z.boolean().optional(),
140
+ skipAlreadyPublished: z.boolean().optional(),
141
+ forceRepublish: z.boolean().optional(),
142
+ dependencyUpdatePatterns: z.array(z.string()).optional(),
143
+ scopedDependencyUpdates: z.array(z.string()).optional(),
144
+ requiredEnvVars: z.array(z.string()).optional(),
145
+ linkWorkspacePackages: z.boolean().optional(),
146
+ unlinkWorkspacePackages: z.boolean().optional(),
147
+ checksTimeout: z.number().optional(),
148
+ skipUserConfirmation: z.boolean().optional(),
149
+ syncTarget: z.boolean().optional(),
150
+ sendit: z.boolean().optional(),
151
+ waitForReleaseWorkflows: z.boolean().optional(),
152
+ releaseWorkflowsTimeout: z.number().optional(),
153
+ releaseWorkflowNames: z.array(z.string()).optional(),
154
+ targetBranch: z.string().optional(),
155
+ noMilestones: z.boolean().optional(),
156
+ fromMain: z.boolean().optional(),
157
+ skipPrePublishMerge: z.boolean().optional(),
158
+ updateDeps: z.string().optional(),
159
+ agenticPublish: z.boolean().optional(),
160
+ agenticPublishMaxIterations: z.number().optional()
161
+ }).optional(),
162
+ branches: z.record(z.string(), z.object({
163
+ targetBranch: z.string().optional(),
164
+ developmentBranch: z.boolean().optional(),
165
+ version: z.object({
166
+ type: z.enum([
167
+ 'release',
168
+ 'prerelease'
169
+ ]),
170
+ increment: z.boolean().optional(),
171
+ incrementLevel: z.enum([
172
+ 'patch',
173
+ 'minor',
174
+ 'major'
175
+ ]).optional(),
176
+ tag: z.string().optional()
177
+ }).optional()
178
+ })).optional(),
179
+ link: z.object({
180
+ scopeRoots: z.record(z.string(), z.string()).optional(),
181
+ dryRun: z.boolean().optional(),
182
+ packageArgument: z.string().optional(),
183
+ externals: z.array(z.string()).optional()
184
+ }).optional(),
185
+ unlink: z.object({
186
+ scopeRoots: z.record(z.string(), z.string()).optional(),
187
+ workspaceFile: z.string().optional(),
188
+ dryRun: z.boolean().optional(),
189
+ cleanNodeModules: z.boolean().optional(),
190
+ packageArgument: z.string().optional(),
191
+ externals: z.array(z.string()).optional()
192
+ }).optional(),
193
+ tree: z.object({
194
+ directories: z.array(z.string()).optional(),
195
+ exclude: z.array(z.string()).optional(),
196
+ startFrom: z.string().optional(),
197
+ stopAt: z.string().optional(),
198
+ cmd: z.string().optional(),
199
+ builtInCommand: z.string().optional(),
200
+ continue: z.boolean().optional(),
201
+ status: z.boolean().optional(),
202
+ promote: z.string().optional(),
203
+ packageArgument: z.string().optional(),
204
+ cleanNodeModules: z.boolean().optional(),
205
+ externals: z.array(z.string()).optional(),
206
+ // Parallel execution options
207
+ parallel: z.boolean().optional(),
208
+ maxConcurrency: z.number().optional(),
209
+ retry: z.object({
210
+ maxAttempts: z.number().optional(),
211
+ initialDelayMs: z.number().optional(),
212
+ maxDelayMs: z.number().optional(),
213
+ backoffMultiplier: z.number().optional(),
214
+ retriableErrors: z.array(z.string()).optional()
215
+ }).optional(),
216
+ recovery: z.object({
217
+ checkpointInterval: z.enum([
218
+ 'package',
219
+ 'batch'
220
+ ]).optional(),
221
+ autoRetry: z.boolean().optional(),
222
+ continueOnError: z.boolean().optional()
223
+ }).optional(),
224
+ monitoring: z.object({
225
+ showProgress: z.boolean().optional(),
226
+ showMetrics: z.boolean().optional(),
227
+ logLevel: z.enum([
228
+ 'minimal',
229
+ 'normal',
230
+ 'verbose'
231
+ ]).optional()
232
+ }).optional(),
233
+ // Recovery options
234
+ markCompleted: z.array(z.string()).optional(),
235
+ skipPackages: z.array(z.string()).optional(),
236
+ retryFailed: z.boolean().optional(),
237
+ skipFailed: z.boolean().optional(),
238
+ resetPackage: z.string().optional(),
239
+ statusParallel: z.boolean().optional(),
240
+ auditBranches: z.boolean().optional(),
241
+ validateState: z.boolean().optional()
242
+ }).optional(),
243
+ development: z.object({
244
+ targetVersion: z.string().optional(),
245
+ noMilestones: z.boolean().optional(),
246
+ tagWorkingBranch: z.boolean().optional(),
247
+ createRetroactiveTags: z.boolean().optional(),
248
+ workingTagPrefix: z.string().optional()
249
+ }).optional(),
250
+ versions: z.object({
251
+ subcommand: z.string().optional(),
252
+ directories: z.array(z.string()).optional()
253
+ }).optional(),
254
+ updates: z.object({
255
+ scope: z.string().optional(),
256
+ directories: z.array(z.string()).optional(),
257
+ interProject: z.boolean().optional()
258
+ }).optional(),
259
+ excludedPatterns: z.array(z.string()).optional(),
260
+ traits: z.any().optional(),
261
+ stopContext: z.object({
262
+ enabled: z.boolean().optional(),
263
+ strings: z.array(z.string()).optional(),
264
+ patterns: z.array(z.object({
265
+ regex: z.string(),
266
+ flags: z.string().optional(),
267
+ description: z.string().optional()
268
+ })).optional(),
269
+ caseSensitive: z.boolean().optional(),
270
+ replacement: z.string().optional(),
271
+ warnOnFilter: z.boolean().optional()
272
+ }).optional()
273
+ });
274
+ z.object({
275
+ openaiApiKey: z.string().optional()
276
+ });
277
+ z.object({
278
+ commandName: z.string().optional()
279
+ });
280
+
281
+ export { ConfigSchema };
282
+ //# sourceMappingURL=types.js.map
@@ -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 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 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","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
+