| 107 | const queuePath = path.join(TELEMETRY_DIR, 'doc-sync-queue.jsonl'); |
| 108 | const entry = JSON.stringify({ |
| 109 | event: 'file-changed', |
| 110 | file: relative, |
| 111 | trigger, |
| 112 | timestamp: new Date().toISOString(), |
| 113 | status: 'needs-review', |
| 114 | }); |
| 115 | fs.appendFileSync(queuePath, entry + '\n'); |
| 116 | } catch { /* fail-safe */ } |
| 117 | } |
| 118 | |
| 119 | function queueSkillLint(relative) { |
| 120 | try { |
| 121 | if (!fs.existsSync(TELEMETRY_DIR)) return; |
| 122 | const queuePath = path.join(TELEMETRY_DIR, 'skill-lint-queue.jsonl'); |
| 123 | const entry = JSON.stringify({ |
| 124 | event: 'skill-changed', |