/** * Cloud-authoritative vault paths — files the SERVER regenerates and owns, so * on a sync conflict the cloud version always wins (pull-wins) and NO * `.conflict-` mirror is minted. * * Why this exists * --------------- * Some vault files are written/regenerated server-side on a schedule, not by * the client: * - `company-brief.md` — rewritten by the ontology gardener's brief-generator * on every run. * - `board.json` — rewritten by board automation. * - `ontology/**`, `signals/**`, `sources/**` — the gardener / sources+signals * pipeline are the sole authors; clients only consume. * * A client that also holds these locally diverges from the server copy on * essentially every sync. Under `--on-conflict keep` (what outposts run) that * produced two compounding bugs: * 1. CONFLICT LOOP — each sync minted a fresh `.conflict--` * mirror that was never cleaned up (e.g. ~50 `company-brief.md.conflict-*` * piled up on an outpost over a few days). * 2. SILENT DRIFT — the keep path stamped the journal with the REMOTE etag * while leaving the divergent LOCAL content in place, so the journal * reported "in sync" forever and the file never reconciled. * * Treating these paths as cloud-authoritative resolves both: the conflict path * short-circuits to a normal overwrite-from-cloud (correct journal stamp, no * mirror), because for a server-owned file the cloud copy is the truth. * * Extending * --------- * Add a pattern to {@link CLOUD_AUTHORITATIVE_PATTERNS}. Patterns are matched * against the VAULT-RELATIVE path (a leading `companies//` is stripped * first), so both call sites — the pull leg (hqRoot-relative * `companies//…`) and the push leg (company-relative `…`) — work. */ /** Vault-relative patterns for server-owned, cloud-wins files. */ export declare const CLOUD_AUTHORITATIVE_PATTERNS: readonly RegExp[]; /** * True iff `relPath` is a server-regenerated, cloud-authoritative vault file. * Accepts either an hqRoot-relative path (`companies//…`) or a * vault-relative path (`…`); Windows separators are normalized. */ export declare function isCloudAuthoritative(relPath: string): boolean; //# sourceMappingURL=cloud-authoritative.d.ts.map