UNPKG

mlld

Version:

mlld: a modular prompt scripting language

1 lines 48.5 kB
{"version":3,"sources":["../core/resolvers/builtin/NowResolver.ts","../core/resolvers/builtin/DebugResolver.ts","../core/resolvers/builtin/InputResolver.ts"],"names":["NowResolver","constructor","name","description","type","capabilities","io","read","write","list","contexts","import","path","output","supportedContentTypes","defaultContentType","priority","cache","strategy","canResolve","ref","cleanRef","replace","resolve","config","currentTime","getMockedTime","Date","context","content","toISOString","contentType","metadata","source","timestamp","exports","requestedImports","length","iso","unix","Math","floor","getTime","toString","date","split","time","toTimeString","importName","JSON","stringify","ResolverError","ResolverErrorCode","UNSUPPORTED_CONTEXT","resolverName","operation","process","env","MLLD_MOCK_TIME","test","parseInt","getDefaultValue","DebugResolver","startsWith","info","collectDebugInfo","imports","environment","system","mlld","full","json","reduced","version","summary","formatSummary","markdown","formatMarkdown","value","getNestedValue","undefined","generateDebugInfo","format","toLowerCase","formatFull","cwd","projectPath","findProjectRoot","getMlldVersion","configFile","findConfigFile","project","basePath","nodeVersion","platform","arch","user","userInfo","username","hostname","cpus","memory","total","totalmem","free","freemem","used","uptime","loadAvg","loadavg","pid","ppid","argv","execPath","memoryUsage","getFilteredEnv","formatBytes","join","formatDuration","heapUsed","heapTotal","rss","external","sections","push","map","n","toFixed","Object","entries","key","startPath","configFiles","filtered","includePatterns","some","pattern","bytes","units","size","unitIndex","seconds","days","hours","minutes","secs","parts","obj","current","part","InputResolver","stdinContent","ttl","duration","inputData","initializeInputData","exportData","_meta","fieldName","getFieldValue","stdin","readStdin","envVars","getEnvironmentVariables","data","hasStdin","keys","envVarCount","parsed","parse","trim","error","includeVars","varName","field","stdinData","setStdinContent"],"mappings":"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","file":"builtin-PUSUPKEM.mjs","sourcesContent":["import { \n Resolver, \n ResolverContent, \n ResolverCapabilities,\n ResolverType\n} from '@core/resolvers/types';\nimport { ResolverError, ResolverErrorCode } from '@core/errors';\n\n/**\n * Built-in resolver for current timestamp\n */\nexport class NowResolver implements Resolver {\n name = 'now';\n description = 'Provides current timestamp';\n type = 'input' as const;\n \n capabilities: ResolverCapabilities = {\n io: { read: true, write: false, list: false },\n contexts: { import: true, path: true, output: false },\n supportedContentTypes: ['text', 'data'],\n defaultContentType: 'text',\n priority: 1,\n cache: { strategy: 'none' } // now is always computed fresh\n };\n\n constructor() {\n // No caching needed - NOW is always computed fresh\n }\n\n canResolve(ref: string): boolean {\n // Match @now\n const cleanRef = ref.replace(/^@/, '');\n return cleanRef === 'now';\n }\n\n async resolve(ref: string, config?: any): Promise<ResolverContent> {\n // Get mocked time if available\n const currentTime = this.getMockedTime() || new Date();\n \n // Variable or path context - return ISO timestamp as text\n if (!config?.context || config.context === 'variable' || config.context === 'path') {\n return {\n content: currentTime.toISOString(),\n contentType: 'text',\n metadata: {\n source: 'now',\n timestamp: currentTime\n }\n };\n }\n \n // Import context - return structured data with common formats\n if (config.context === 'import') {\n const exports: Record<string, string> = {};\n const requestedImports = config.requestedImports || [];\n \n // If no specific imports requested, provide default exports\n if (requestedImports.length === 0) {\n exports.iso = currentTime.toISOString();\n exports.unix = Math.floor(currentTime.getTime() / 1000).toString();\n exports.date = currentTime.toISOString().split('T')[0];\n exports.time = currentTime.toTimeString().split(' ')[0];\n } else {\n // Process specific imports\n for (const importName of requestedImports) {\n if (importName === 'iso') {\n exports[importName] = currentTime.toISOString();\n } else if (importName === 'unix') {\n exports[importName] = Math.floor(currentTime.getTime() / 1000).toString();\n } else if (importName === 'date') {\n exports[importName] = currentTime.toISOString().split('T')[0];\n } else if (importName === 'time') {\n exports[importName] = currentTime.toTimeString().split(' ')[0];\n } else {\n // For custom format strings, just return ISO for now\n exports[importName] = currentTime.toISOString();\n }\n }\n }\n \n return {\n content: JSON.stringify(exports),\n contentType: 'data',\n metadata: {\n source: 'now',\n timestamp: currentTime\n }\n };\n }\n \n throw new ResolverError(\n 'NOW resolver only supports variable and import contexts',\n ResolverErrorCode.UNSUPPORTED_CONTEXT,\n {\n resolverName: this.name,\n context: config?.context,\n operation: 'resolve'\n }\n );\n }\n\n\n /**\n * Get mocked time for testing\n */\n private getMockedTime(): Date | null {\n if (process.env.MLLD_MOCK_TIME) {\n // If it's a number, treat as Unix timestamp\n if (/^\\d+$/.test(process.env.MLLD_MOCK_TIME)) {\n return new Date(parseInt(process.env.MLLD_MOCK_TIME) * 1000);\n }\n // Otherwise parse as ISO string\n return new Date(process.env.MLLD_MOCK_TIME);\n }\n return null;\n }\n\n /**\n * Get default value for when NOW is used as a variable\n * This handles the mock time logic for tests\n */\n getDefaultValue(): string {\n const currentTime = this.getMockedTime() || new Date();\n return currentTime.toISOString();\n }\n}","import { \n Resolver, \n ResolverContent, \n ResolverCapabilities,\n ResolverType\n} from '@core/resolvers/types';\nimport { ResolverError, ResolverErrorCode } from '@core/errors';\nimport * as os from 'os';\nimport * as path from 'path';\n\n/**\n * Built-in resolver for debug/environment information\n */\nexport class DebugResolver implements Resolver {\n name = 'debug';\n description = 'Provides environment and debug information';\n type = 'input' as const;\n \n capabilities: ResolverCapabilities = {\n io: { read: true, write: false, list: false },\n contexts: { import: true, path: false, output: false },\n supportedContentTypes: ['data', 'text'],\n defaultContentType: 'data', // Returns object by default\n priority: 1,\n cache: { strategy: 'none' } // debug info should be fresh\n };\n\n constructor() {\n // No caching - debug info should always be current\n }\n\n canResolve(ref: string): boolean {\n const cleanRef = ref.replace(/^@/, '');\n return cleanRef === 'debug' || cleanRef.startsWith('debug/');\n }\n\n async resolve(ref: string, config?: any): Promise<ResolverContent> {\n // Variable context - return debug object as data\n if (!config?.context || config.context === 'variable') {\n const info = await this.collectDebugInfo();\n return {\n content: JSON.stringify(info),\n contentType: 'data',\n metadata: {\n source: 'debug',\n timestamp: new Date()\n }\n };\n }\n \n // Import context - return structured data based on requested imports\n if (config.context === 'import') {\n const info = await this.collectDebugInfo();\n const exports: Record<string, any> = {};\n const imports = config.requestedImports || ['json', 'reduced', 'markdown'];\n \n for (const importName of imports) {\n switch (importName) {\n case 'environment':\n exports.environment = info.environment;\n break;\n case 'system':\n exports.system = info.system;\n break;\n case 'process':\n exports.process = info.process;\n break;\n case 'mlld':\n exports.mlld = info.mlld;\n break;\n case 'full':\n exports.full = info;\n break;\n case 'json':\n exports.json = JSON.stringify(info, null, 2);\n break;\n case 'reduced':\n exports.reduced = JSON.stringify({\n environment: info.environment,\n version: info.mlld.version\n });\n break;\n case 'summary':\n exports.summary = this.formatSummary(info);\n break;\n case 'markdown':\n exports.markdown = this.formatMarkdown(info);\n break;\n default:\n // Try to find nested field\n const value = this.getNestedValue(info, importName);\n if (value !== undefined) {\n exports[importName] = value;\n }\n }\n }\n \n return {\n content: JSON.stringify(exports),\n contentType: 'data',\n metadata: {\n source: 'debug',\n timestamp: new Date()\n }\n };\n }\n \n throw new ResolverError(\n 'DEBUG resolver only supports variable and import contexts',\n ResolverErrorCode.UNSUPPORTED_CONTEXT,\n {\n resolverName: this.name,\n context: config?.context,\n operation: 'resolve'\n }\n );\n }\n\n /**\n * Generate debug information in requested format\n */\n private async generateDebugInfo(format: string): Promise<string> {\n const info = await this.collectDebugInfo();\n \n switch (format.toLowerCase()) {\n case 'summary':\n return this.formatSummary(info);\n \n case 'markdown':\n return this.formatMarkdown(info);\n \n case 'json':\n return JSON.stringify(info, null, 2);\n \n case 'full':\n default:\n return this.formatFull(info);\n }\n }\n\n /**\n * Collect all debug information\n */\n private async collectDebugInfo(): Promise<Record<string, any>> {\n const cwd = (process as any).cwd?.() || '/';\n const projectPath = await this.findProjectRoot(cwd);\n const time = this.getMockedTime() || new Date();\n \n // Debug logging\n // console.log('DebugResolver collectDebugInfo:', { cwd, projectPath });\n\n const version = await this.getMlldVersion();\n \n return {\n timestamp: time.toISOString(),\n version, // Top-level for backward compatibility\n mlld: {\n version,\n configFile: await this.findConfigFile(projectPath || cwd)\n },\n project: {\n basePath: projectPath || cwd,\n configFile: await this.findConfigFile(projectPath || cwd)\n },\n environment: {\n cwd,\n projectPath,\n nodeVersion: (process as any).version || 'unknown',\n platform: (process as any).platform || 'unknown',\n arch: (process as any).arch || 'unknown',\n user: os.userInfo().username,\n hostname: os.hostname()\n },\n system: {\n cpus: os.cpus().length,\n memory: {\n total: os.totalmem(),\n free: os.freemem(),\n used: os.totalmem() - os.freemem()\n },\n uptime: os.uptime(),\n loadAvg: os.loadavg()\n },\n process: {\n pid: (process as any).pid || 0,\n ppid: (process as any).ppid || 0,\n argv: (process as any).argv || [],\n execPath: (process as any).execPath || '',\n memoryUsage: (process as any).memoryUsage?.() || {}\n },\n env: this.getFilteredEnv()\n };\n }\n\n /**\n * Format as summary (key info only)\n */\n private formatSummary(info: Record<string, any>): string {\n return [\n `MLLD Debug Summary`,\n `==================`,\n `Time: ${info.timestamp}`,\n `Version: ${info.mlld.version}`,\n `Platform: ${info.environment.platform} (${info.environment.arch})`,\n `Node: ${info.environment.nodeVersion}`,\n `CWD: ${info.environment.cwd}`,\n `Project: ${info.environment.projectPath || 'Not found'}`,\n `Memory: ${this.formatBytes(info.system.memory.used)} / ${this.formatBytes(info.system.memory.total)}`\n ].join('\\n');\n }\n\n /**\n * Format as markdown\n */\n private formatMarkdown(info: Record<string, any>): string {\n return [\n `# MLLD Debug Information`,\n ``,\n `## Environment`,\n `- **Time**: ${info.timestamp}`,\n `- **MLLD Version**: ${info.mlld.version}`,\n `- **Platform**: ${info.environment.platform} (${info.environment.arch})`,\n `- **Node Version**: ${info.environment.nodeVersion}`,\n `- **Current Directory**: \\`${info.environment.cwd}\\``,\n `- **Project Root**: \\`${info.environment.projectPath || 'Not found'}\\``,\n ``,\n `## System`,\n `- **CPUs**: ${info.system.cpus}`,\n `- **Memory**: ${this.formatBytes(info.system.memory.used)} / ${this.formatBytes(info.system.memory.total)}`,\n `- **System Uptime**: ${this.formatDuration(info.system.uptime)}`,\n ``,\n `## Process`,\n `- **PID**: ${info.process.pid}`,\n `- **Memory Usage**:`,\n ` - Heap: ${this.formatBytes(info.process.memoryUsage.heapUsed)} / ${this.formatBytes(info.process.memoryUsage.heapTotal)}`,\n ` - RSS: ${this.formatBytes(info.process.memoryUsage.rss)}`,\n ` - External: ${this.formatBytes(info.process.memoryUsage.external)}`\n ].join('\\n');\n }\n\n /**\n * Format as full text output\n */\n private formatFull(info: Record<string, any>): string {\n const sections: string[] = [];\n \n // Header\n sections.push([\n `MLLD Debug Information`,\n `======================`,\n `Generated: ${info.timestamp}`,\n ``\n ].join('\\n'));\n\n // MLLD section\n sections.push([\n `MLLD:`,\n ` Version: ${info.mlld.version}`,\n ` Config: ${info.mlld.configFile || 'Not found'}`,\n ``\n ].join('\\n'));\n\n // Environment section\n sections.push([\n `Environment:`,\n ` Current Directory: ${info.environment.cwd}`,\n ` Project Root: ${info.environment.projectPath || 'Not found'}`,\n ` Node Version: ${info.environment.nodeVersion}`,\n ` Platform: ${info.environment.platform} (${info.environment.arch})`,\n ` User: ${info.environment.user}`,\n ` Hostname: ${info.environment.hostname}`,\n ``\n ].join('\\n'));\n\n // System section\n sections.push([\n `System:`,\n ` CPUs: ${info.system.cpus}`,\n ` Memory:`,\n ` Total: ${this.formatBytes(info.system.memory.total)}`,\n ` Free: ${this.formatBytes(info.system.memory.free)}`,\n ` Used: ${this.formatBytes(info.system.memory.used)}`,\n ` Uptime: ${this.formatDuration(info.system.uptime)}`,\n ` Load Average: ${info.system.loadAvg.map((n: number) => n.toFixed(2)).join(', ')}`,\n ``\n ].join('\\n'));\n\n // Process section\n sections.push([\n `Process:`,\n ` PID: ${info.process.pid}`,\n ` Parent PID: ${info.process.ppid}`,\n ` Executable: ${info.process.execPath}`,\n ` Memory Usage:`,\n ` RSS: ${this.formatBytes(info.process.memoryUsage.rss)}`,\n ` Heap Total: ${this.formatBytes(info.process.memoryUsage.heapTotal)}`,\n ` Heap Used: ${this.formatBytes(info.process.memoryUsage.heapUsed)}`,\n ` External: ${this.formatBytes(info.process.memoryUsage.external)}`,\n ``\n ].join('\\n'));\n\n // Environment variables (filtered)\n sections.push([\n `Environment Variables (filtered):`,\n ...Object.entries(info.env).map(([key, value]) => ` ${key}=${value}`),\n ``\n ].join('\\n'));\n\n return sections.join('\\n');\n }\n\n /**\n * Find project root by looking for package.json\n */\n private async findProjectRoot(startPath: string): Promise<string | null> {\n // For now, just return the start path as the project root\n // In a real implementation, this would look for package.json, .git, etc.\n return startPath;\n }\n\n /**\n * Find mlld config file\n */\n private async findConfigFile(projectPath: string): Promise<string | null> {\n const configFiles = ['mlld.config.json', '.mlldrc', '.mlldrc.json'];\n \n for (const configFile of configFiles) {\n const configPath = path.join(projectPath, configFile);\n // Would need to check if file exists\n // For now, return null\n }\n \n return null;\n }\n\n /**\n * Get mlld version\n */\n private async getMlldVersion(): Promise<string> {\n try {\n // Would need to read from package.json\n return '1.0.0';\n } catch {\n return 'unknown';\n }\n }\n\n /**\n * Get filtered environment variables\n */\n private getFilteredEnv(): Record<string, string> {\n const filtered: Record<string, string> = {};\n const includePatterns = [\n /^MLLD_/,\n /^NODE_/,\n /^npm_/,\n /^PATH$/,\n /^HOME$/,\n /^USER$/,\n /^SHELL$/,\n /^LANG$/,\n /^LC_/,\n /^TERM/\n ];\n \n for (const [key, value] of Object.entries(process.env)) {\n if (includePatterns.some(pattern => pattern.test(key))) {\n filtered[key] = value || '';\n }\n }\n \n return filtered;\n }\n\n /**\n * Format bytes as human-readable\n */\n private formatBytes(bytes: number): string {\n const units = ['B', 'KB', 'MB', 'GB', 'TB'];\n let size = bytes;\n let unitIndex = 0;\n \n while (size >= 1024 && unitIndex < units.length - 1) {\n size /= 1024;\n unitIndex++;\n }\n \n return `${size.toFixed(2)} ${units[unitIndex]}`;\n }\n\n /**\n * Format duration in seconds as human-readable\n */\n private formatDuration(seconds: number): string {\n const days = Math.floor(seconds / 86400);\n const hours = Math.floor((seconds % 86400) / 3600);\n const minutes = Math.floor((seconds % 3600) / 60);\n const secs = Math.floor(seconds % 60);\n \n const parts: string[] = [];\n if (days > 0) parts.push(`${days}d`);\n if (hours > 0) parts.push(`${hours}h`);\n if (minutes > 0) parts.push(`${minutes}m`);\n if (secs > 0 || parts.length === 0) parts.push(`${secs}s`);\n \n return parts.join(' ');\n }\n\n /**\n * Get mocked time for testing\n */\n private getMockedTime(): Date | null {\n if (process.env.MLLD_MOCK_TIME) {\n if (/^\\d+$/.test(process.env.MLLD_MOCK_TIME)) {\n return new Date(parseInt(process.env.MLLD_MOCK_TIME) * 1000);\n }\n return new Date(process.env.MLLD_MOCK_TIME);\n }\n return null;\n }\n\n /**\n * Get nested value from object using dot notation\n */\n private getNestedValue(obj: any, path: string): any {\n const parts = path.split('.');\n let current = obj;\n \n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part];\n } else {\n return undefined;\n }\n }\n \n return current;\n }\n}","import { \n Resolver, \n ResolverContent, \n ResolverCapabilities,\n ResolverType\n} from '@core/resolvers/types';\nimport { ResolverError, ResolverErrorCode } from '@core/errors';\n\n/**\n * Built-in resolver for input data (stdin + environment variables)\n */\nexport class InputResolver implements Resolver {\n name = 'input';\n description = 'Provides merged stdin and environment variable data';\n type = 'input' as const;\n \n capabilities: ResolverCapabilities = {\n io: { read: true, write: false, list: false },\n contexts: { import: true, path: false, output: false },\n supportedContentTypes: ['data', 'text'],\n defaultContentType: 'data', // Usually JSON from stdin\n priority: 1,\n cache: { \n strategy: 'memory', // Memory cache for session duration\n ttl: { duration: -1 } // Never expire during session\n }\n };\n\n private inputData: Record<string, any> | null = null;\n private stdinContent: string | undefined;\n\n constructor(stdinContent?: string) {\n this.stdinContent = stdinContent;\n }\n\n canResolve(ref: string): boolean {\n const cleanRef = ref.replace(/^@/, '');\n return cleanRef === 'input' || cleanRef.startsWith('input/');\n }\n\n async resolve(ref: string, config?: any): Promise<ResolverContent> {\n // Initialize input data if not already done\n if (!this.inputData) {\n await this.initializeInputData();\n }\n\n // Variable context - return all input data as JSON\n if (!config?.context || config.context === 'variable') {\n return {\n content: JSON.stringify(this.inputData, null, 2),\n contentType: 'data',\n metadata: {\n source: 'input',\n timestamp: new Date()\n }\n };\n }\n \n // Import context - return requested fields\n if (config.context === 'import') {\n const exports: Record<string, any> = {};\n const imports = config.requestedImports || [];\n \n if (imports.length === 0) {\n // Import all\n const exportData = { ...this.inputData };\n delete exportData._meta;\n return {\n content: JSON.stringify(exportData),\n contentType: 'data',\n metadata: {\n source: 'input',\n timestamp: new Date()\n }\n };\n }\n \n // Import specific fields\n for (const fieldName of imports) {\n const value = this.getFieldValue(fieldName);\n if (value !== null) {\n exports[fieldName] = value;\n }\n }\n \n return {\n content: JSON.stringify(exports),\n contentType: 'data',\n metadata: {\n source: 'input',\n timestamp: new Date()\n }\n };\n }\n \n throw new ResolverError(\n 'input resolver only supports variable and import contexts',\n ResolverErrorCode.UNSUPPORTED_CONTEXT,\n {\n resolverName: this.name,\n context: config?.context,\n operation: 'resolve'\n }\n );\n }\n\n /**\n * Initialize input data from stdin and environment\n */\n private async initializeInputData(): Promise<void> {\n const stdin = await this.readStdin();\n const envVars = this.getEnvironmentVariables();\n\n // Merge stdin and environment data\n this.inputData = {\n ...envVars,\n ...stdin\n };\n\n // Special handling for common patterns\n if (stdin.config || stdin.data) {\n // If stdin has config/data structure, preserve it at top level\n this.inputData.config = stdin.config;\n this.inputData.data = stdin.data;\n }\n\n // Add metadata\n this.inputData._meta = {\n source: 'INPUT',\n timestamp: new Date().toISOString(),\n hasStdin: Object.keys(stdin).length > 0,\n envVarCount: Object.keys(envVars).length\n };\n }\n\n /**\n * Read and parse stdin content\n */\n private async readStdin(): Promise<Record<string, any>> {\n try {\n // Use provided stdin content or try to read from process.stdin\n const content = this.stdinContent || '';\n \n if (!content) {\n return {};\n }\n\n // Try to parse as JSON first\n try {\n const parsed = JSON.parse(content);\n return typeof parsed === 'object' && parsed !== null ? parsed : { value: parsed };\n } catch {\n // If not JSON, treat as plain text\n return { stdin: content.trim() };\n }\n } catch (error) {\n // No stdin available\n return {};\n }\n }\n\n /**\n * Get filtered environment variables\n */\n private getEnvironmentVariables(): Record<string, string> {\n const filtered: Record<string, string> = {};\n \n // Include all MLLD_ prefixed variables\n for (const [key, value] of Object.entries(process.env)) {\n if (key.startsWith('MLLD_') && value !== undefined) {\n // Keep the full variable name including MLLD_ prefix\n filtered[key] = value;\n }\n }\n\n // Include specific common variables\n const includeVars = ['NODE_ENV', 'DEBUG', 'CI', 'HOME', 'USER', 'PATH'];\n for (const varName of includeVars) {\n if (process.env[varName] !== undefined) {\n filtered[varName] = process.env[varName]!;\n }\n }\n\n return filtered;\n }\n\n /**\n * Get field value from input data\n */\n private getFieldValue(field: string): any {\n if (!this.inputData) {\n return null;\n }\n\n // Handle special format requests\n switch (field.toLowerCase()) {\n case 'content':\n // Return stdin content directly (same as 'text')\n return this.inputData.stdin || '';\n \n case 'json':\n return this.inputData;\n \n case 'text':\n return this.inputData.stdin || '';\n \n case 'env':\n // Return only environment variables\n const env: Record<string, string> = {};\n for (const [key, value] of Object.entries(this.inputData)) {\n if (typeof value === 'string' && key !== 'stdin' && key !== '_meta') {\n env[key] = value;\n }\n }\n return env;\n \n case 'stdin':\n // Return only stdin data\n const stdinData = { ...this.inputData };\n delete stdinData._meta;\n // Remove env vars\n for (const key of Object.keys(stdinData)) {\n if (typeof stdinData[key] === 'string' && key !== 'stdin') {\n delete stdinData[key];\n }\n }\n return stdinData;\n }\n\n // Handle nested field access (e.g., config.database.host)\n const parts = field.split('.');\n let current: any = this.inputData;\n \n for (const part of parts) {\n if (current && typeof current === 'object' && part in current) {\n current = current[part];\n } else {\n return null;\n }\n }\n \n return current;\n }\n\n\n /**\n * Update stdin content (for testing or dynamic updates)\n */\n setStdinContent(content: string): void {\n this.stdinContent = content;\n this.inputData = null; // Reset to force re-initialization\n }\n}"]}