{ "schema": "guanghu.ops-experience-receipt/v1", "receipt_id": "EXP-20260726-006-LEGACY-STATE-ROOT-COLLISION", "intent": "Install the enterprise code-channel candidate without damaging existing Guanghu state.", "scope": "legacy-state-root-protection", "input": "The planned path /var/lib/guanghu already existed and was owned by the historical guanghunad identity.", "evidence": [ "stat showed /var/lib/guanghu was not owned by the new service user.", "Existing shell-profile files under the root were owned by guanghunad." ], "decision": "Do not recursively chown, reuse, or overwrite a legacy state root whose ownership and role are not yet mapped.", "action": "Moved the isolated enterprise candidate to /var/lib/guanghu-enterprise-code-channel.", "observed_result": "The old state root remained unchanged and the isolated candidate ran under its own service identity.", "correction": "Discover ownership, contents, producer, consumer, and backup status before assigning any historical data root to a new component.", "invariant_id": "INV-LEGACY-STATE-ROOT-NO-TAKEOVER", "invariant": "An existing Guanghu data root is protected until its old language-system role and ownership are restored.", "verification": [ "Record stat and bounded tree evidence for the proposed root.", "Use a distinct staging root when the legacy role is unresolved.", "Require an explicit migration and rollback receipt before changing ownership." ], "receipt_path": "deployment/AW-HLCC-DEPLOYMENT-CHECKPOINT-20260726.hdlp", "promotion_state": "CANDIDATE_ONLY", "recorded_at": "2026-07-26T22:10:00+08:00" }