| 204 | // record" notices so a user can always see why a session did or did not |
| 205 | // produce an entry. |
| 206 | function appendEvolutionLog(line) { |
| 207 | try { |
| 208 | const logDir = process.env.EVOLVER_HOOK_LOG_DIR |
| 209 | || path.join(os.homedir(), '.evolver', 'logs'); |
| 210 | fs.mkdirSync(logDir, { recursive: true }); |
| 211 | fs.appendFileSync( |
| 212 | path.join(logDir, 'evolution.log'), |
| 213 | `${new Date().toISOString()} ${line}\n`, |
| 214 | 'utf8' |
| 215 | ); |
| 216 | } catch { /* best-effort, never break the hook on log write */ } |
| 217 | } |
| 218 | |
| 219 | function main() { |
| 220 | let inputData = ''; |