import type { GitHost } from '../service-worker/git-host'; export interface VaultProbe { exists: boolean; lastCommit?: { sha: string; author: string; date: string }; } /// Detect whether the configured remote already contains a relicario vault. /// Considered present if any of: .relicario/salt, .relicario/params.json, /// manifest.enc exists. Best-effort metadata fetch via lastCommit(). export async function probeVault(host: GitHost): Promise { const [relicarioFiles, rootFiles] = await Promise.all([ host.listDir('.relicario'), host.listDir(''), ]); const exists = relicarioFiles.includes('salt') || relicarioFiles.includes('params.json') || rootFiles.includes('manifest.enc'); if (!exists) return { exists: false }; const lastCommit = await host.lastCommit('manifest.enc'); return lastCommit ? { exists, lastCommit } : { exists }; }