Run type: scheduled (unsupervised). Importance: Medium. Tasks: sync DONE; 4 policy items PENDING Sam.
Daily sync of canonical Skills/* into the Claude/Scheduled/_* paths scheduled tasks load. Of 5 mirror-map entries, 4 already matched (sail-kb-daily-pulse SKILL.md + build_report.py, _skill-preload.md, Codex/_fallback preload spec). 1 drifted — and in the reverse direction.
The live-loaded partial Claude/Scheduled/_post-run-qa-reflection.md was newer (v1.7.0, 2026-05-03) than the canonical Skills/post-run-qa-reflection/SKILL.md and the Skills_Library mirror (both v1.5.1, 2026-04-24). The diff confirms 1.7.0 is a strict superset (continuous changelog 1.5.1→1.6.0→1.6.1→1.7.0; adds the Teams+iMessage fallback ladder, the mandatory AskUserQuestion availability precheck, and the "never use Slack" rule). Someone edited the loaded partial directly and the canonical never caught up.
Following the task's documented canonical→dest flow literally would have overwritten the newer live partial with the stale canonical = content loss. That direction was correctly skipped.
Reconciled the two stale copies UP to 1.7.0 by copying from the live partial. Backed both up first to Codex/skills-scheduled-mirror-sync/_backups/2026-06-04/*.pre-1.7.0.bak. All three now SHA ecf9a738 (v1.7.0). Committed d398e305 in Projects (2 files, +38/-10), pushed clean.
Heads-up: the Projects working tree was on branch codex/footer-watchdog-2026-06-01 (another agent's branch), so the commit landed there, not main. Surgical, no conflict, revertable.
discover_unmapped_partials.sh is MISSING from the skill folder; ran a manual substitute — no new partials qualify for the map.skill_surface_check.py): clean, zero flags.All mirror-map checks complete; the single drift reconciled. Ending normally. Context was not a constraint.
d398e305 onto main so the canonical fix is on trunk, not a feature branch. (Recommended)