| 66 | } |
| 67 | |
| 68 | function shouldSyncScripts() { |
| 69 | try { |
| 70 | const pkgPath = path.join(PLUGIN_ROOT, 'package.json'); |
| 71 | if (!fs.existsSync(pkgPath)) return true; // can't determine — sync to be safe |
| 72 | const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8')); |
| 73 | const pluginVersion = pkg.version || '0.0.0'; |
| 74 | |
| 75 | const versionFile = path.join(PROJECT_ROOT, '.citadel', 'version.txt'); |
| 76 | if (!fs.existsSync(versionFile)) return true; |
| 77 | |
| 78 | const installedVersion = fs.readFileSync(versionFile, 'utf8').trim(); |
| 79 | if (installedVersion !== pluginVersion) return true; |
| 80 | |
| 81 | const pluginScripts = path.join(PLUGIN_ROOT, 'scripts'); |
| 82 | const projectScripts = path.join(PROJECT_ROOT, '.citadel', 'scripts'); |