| 1110 | } |
| 1111 | |
| 1112 | function reuseReasonMessage(reason) { |
| 1113 | const map = { |
| 1114 | missing_id: 'reuse requires --id <asset_id>', |
| 1115 | cli_unavailable: 'evolver CLI unavailable', |
| 1116 | auth_required: 'Hub authentication required', |
| 1117 | not_found: 'asset not found', |
| 1118 | network_error: 'Hub fetch failed', |
| 1119 | unsupported: 'reuse unsupported', |
| 1120 | internal_error: 'evolver reuse failed', |
| 1121 | }; |
| 1122 | return map[reason] || map.internal_error; |
| 1123 | } |
| 1124 | |
| 1125 | function getHubUrl(deps) { |
| 1126 | if (deps.hubUrl) return deps.hubUrl; |