Skip to content

Submodule pins drift to orphaned commits — re-pin done; harden against recurrence #14

Description

@hyperpolymath

Context

membership-integrity (in .github/workflows/anchor-drift.yml) was failing on main because member submodule gitlinks pointed at commits that no longer exist on the member remotes — orphaned when those member repos' histories were rewritten (squash-merged PRs produce new SHAs). The job aborted with fatal: remote error: upload-pack: not our ref <sha>.

What was fixed

PR #13 (merged) re-pinned the 2 dangling in-scope members to each member's current origin/main HEAD so the recorded pins are reachable again:

k9-validate-action, pandoc-k9

The same PR also switched the submodule-resolution step to a full (non-shallow) fetch so non-tip pins resolve. membership-integrity is now green.

Residual risk / why this recurs

Static gitlink pins re-orphan every time a member repo squash-merges or force-pushes, so the gate will silently go red again on the next member history rewrite. members/tooling/k9iser is outside the current automation scope (it couldn't be re-pinned in the session that fixed the others) but resolved cleanly in CI.

Proposed (ties into #7 — member rollout)

  • Decide a drift-resistant pin policy — e.g. pin members to tags/releases instead of branch-tip commits, or add a scheduled job that re-pins members/* to current main and opens a PR, or treat membership-integrity as the early-warning gate (it now catches this on every PR/push).
  • Track the k9iser pin under whoever owns that repo.

Refs #7.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    governancePolicy, rulesets, standards, compliance, and their enforcementmeta:campaignCoordinated multi-repo push with a defined end statepriority:p1High - schedule nextscope:repoConfined to this repository

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions