diff --git a/.claude/skills/openstack-cloud-ops-consolidated-20260725.md b/.claude/skills/openstack-cloud-ops-consolidated-20260725.md index aa896bd..fdc64f7 100644 --- a/.claude/skills/openstack-cloud-ops-consolidated-20260725.md +++ b/.claude/skills/openstack-cloud-ops-consolidated-20260725.md @@ -1,9 +1,8 @@ # openstack-cloud-ops -- consolidated skill (Chat upload snapshot, 2026-07-25) @@ -200,7 +199,14 @@ branch to `main` (merge commit, NOT squash; operator-gated), then RETIRE the branch (local + remote). **ALSO sweep THIS skill in the same close:** fold in any new INVARIANT the stage established and reconcile any divergence from repo HEAD (facts -delegate to the repo and go stale; invariants live here and must be kept current). The next stage branches off post-merge `main`. `main` is +delegate to the repo and go stale; invariants live here and must be kept current). The +AUTHORITATIVE, versioned skill is THIS dir (`.claude/skills/openstack-cloud-ops/` -- SKILL.md ++ references); keep it current here. THEN REGENERATE the dated single-file Chat-upload +snapshot from it (concatenate SKILL.md + references -> `.claude/skills/openstack-cloud-ops-consolidated-.md`, +ASCII/LF byte-verified) so the Chat/project skill surface can be refreshed -- the snapshot +is a DERIVED artifact, never the source, and the Chat mount going stale is a known failure +mode (it caused a failed clone + a mis-shaped handoff, 2026-07-25; docs/audit/skill-divergence-20260725.md). +The next stage branches off post-merge `main`. `main` is trunk-of-record only for stages that have merged (precedents: Stage 2 -> PR #1 `e468d2e` 2026-07-15; Stage 3 -> merge commit 2026-07-21, vr1-dc0 scope, dc1 HELD under G12). See `docs/dc-dc-deployment-workflow.md` "Cross-cutting discipline". diff --git a/.claude/skills/openstack-cloud-ops/SKILL.md b/.claude/skills/openstack-cloud-ops/SKILL.md index 711453d..4468553 100644 --- a/.claude/skills/openstack-cloud-ops/SKILL.md +++ b/.claude/skills/openstack-cloud-ops/SKILL.md @@ -186,7 +186,14 @@ branch to `main` (merge commit, NOT squash; operator-gated), then RETIRE the branch (local + remote). **ALSO sweep THIS skill in the same close:** fold in any new INVARIANT the stage established and reconcile any divergence from repo HEAD (facts -delegate to the repo and go stale; invariants live here and must be kept current). The next stage branches off post-merge `main`. `main` is +delegate to the repo and go stale; invariants live here and must be kept current). The +AUTHORITATIVE, versioned skill is THIS dir (`.claude/skills/openstack-cloud-ops/` -- SKILL.md ++ references); keep it current here. THEN REGENERATE the dated single-file Chat-upload +snapshot from it (concatenate SKILL.md + references -> `.claude/skills/openstack-cloud-ops-consolidated-.md`, +ASCII/LF byte-verified) so the Chat/project skill surface can be refreshed -- the snapshot +is a DERIVED artifact, never the source, and the Chat mount going stale is a known failure +mode (it caused a failed clone + a mis-shaped handoff, 2026-07-25; docs/audit/skill-divergence-20260725.md). +The next stage branches off post-merge `main`. `main` is trunk-of-record only for stages that have merged (precedents: Stage 2 -> PR #1 `e468d2e` 2026-07-15; Stage 3 -> merge commit 2026-07-21, vr1-dc0 scope, dc1 HELD under G12). See `docs/dc-dc-deployment-workflow.md` "Cross-cutting discipline".