Skip to content

fix(labs): replace lab7 workrepo gitlink with tracked scaffold#385

Draft
kaizencycle wants to merge 1 commit into
mainfrom
cursor/fix-lab7-workrepo-gitlink-0e02
Draft

fix(labs): replace lab7 workrepo gitlink with tracked scaffold#385
kaizencycle wants to merge 1 commit into
mainfrom
cursor/fix-lab7-workrepo-gitlink-0e02

Conversation

@kaizencycle

Copy link
Copy Markdown
Owner

Mobius PR — Cycle

  • Cycle: C-372
  • Type: Fix
  • Primary Area: labs

1. Summary

What changed?

Replaced labs/lab7-proof/workrepo (gitlink mode 160000 with no .gitmodules entry) with a normal tracked directory containing .gitkeep.

Why?

reserve-block-canonization.yml checkout cleanup on main emitted:

fatal: No url found for submodule path 'labs/lab7-proof/workrepo' in .gitmodules

The path is only a scaffold for labs/lab7-proof/tools/quorum_orchestrator.py --workdir workrepo; it was never meant to be a submodule.


2. Risk Tier

  • Tier 0 — Docs/comments/formatting (1 reviewer, fast merge)

3. EPICON Intent

epicon_id: EPICON_C-372_LABS_lab7-workrepo-gitlink_v1
ledger_id: cursor-cloud-agent
scope: labs
mode: normal
issued_at: 2026-07-14T17:55:00Z
expires_at: 2026-07-21T17:55:00Z
justification:
  VALUES INVOKED: integrity, transparency, safety
  REASONING: A gitlink without submodule metadata breaks checkout cleanup and misrepresents lab7's ephemeral work directory as an external repo dependency. Converting to a tracked scaffold preserves orchestrator behavior without false submodule semantics.
  ANCHORS:
    - labs/lab7-proof/tools/quorum_orchestrator.py (--workdir workrepo default)
    - labs/lab7-proof/.github/workflows/dva-quorum.yml
    - reserve-block-canonization.yml benign checkout warning on main
  BOUNDARIES: Does not change quorum orchestrator logic, canon paths, or journal parcel flush behavior.
  COUNTERFACTUAL: If workrepo must reference an external repository, add a proper .gitmodules entry and documented submodule URL instead of this scaffold.
counterfactuals:
  - If lab7 quorum workflow fails due to missing workdir permissions, revert and reassess directory layout.
  - If EPICON Guard rejects labs-only scope, split docs vs labs labels per repo policy.

4. Integrity Impact

What could go wrong?

Minimal. Removes a phantom submodule reference; no runtime services affected.

Assessment

  • Estimated MII for this PR: 0.99
  • Risk level: Low
  • Systems affected: labs/lab7-proof scaffold only

Checklist

  • Aligns with Mobius Integrity Index (MII ≥ 0.95)
  • Does not weaken Anti-Nuke / Guardian guarantees
  • Maintains SML safety and HIL loops
  • No unauthorized permission escalation

5. Rollback Plan

git revert ee843856

6. Testing

  • git submodule foreach echo ok — no error (no registered submodules)
  • labs/lab7-proof/workrepo/.gitkeep present on branch

Evidence:

$ git ls-files -s labs/lab7-proof/workrepo
100644 ... labs/lab7-proof/workrepo/.gitkeep

$ git submodule foreach echo ok
(no output, exit 0)

7. Sentinel Review Requested

Tier 0 labs scaffold fix — fast merge acceptable.


"We heal as we walk." — Mobius Systems

Open in Web Open in Cursor 

labs/lab7-proof/workrepo was mode 160000 without a .gitmodules entry,
causing reserve-block checkout cleanup to warn:
  fatal: No url found for submodule path 'labs/lab7-proof/workrepo'

Convert to a normal directory with .gitkeep so quorum_orchestrator
--workdir workrepo has a stable scaffold and git submodule foreach is clean.

EPICON-INTENT: lab7 workrepo scaffold only; no submodule URL; labs scope.

Co-authored-by: michaeljjudan <[email protected]>
@github-actions

Copy link
Copy Markdown
Contributor

Drift Compliance: All test vectors passed GI threshold validation

@github-actions

Copy link
Copy Markdown
Contributor

🌀 Mobius PR Bot — EPICON-02 Check: ❌ FAIL

Intent Publication

Field Value
ledger_id ``
scope ``
mode normal
emergency_scope ``
issued_at ``
expires_at ``
justification_hash (sha256) ``
previous_hash (none)

Divergence Severity

🔴 HIGH

Changed Files

  • labs/lab7-proof/workrepo
  • labs/lab7-proof/workrepo/.gitkeep

Labels Applied

  • (none)

Notes

  • ⚠️ counterfactuals missing (recommended): add at least 1

Failures

  • ❌ Missing required header: 'EPICON-02 INTENT PUBLICATION'
  • ❌ Missing required field: ledger_id
  • ❌ Missing required field: scope
  • ❌ Missing required field: issued_at
  • ❌ Missing required field: expires_at
  • ❌ Missing required field: justification
  • ❌ Scope violation: PR changes files outside declared scope
  • ❌ Out-of-scope files:
  • labs/lab7-proof/workrepo
  • labs/lab7-proof/workrepo/.gitkeep

📝 Auto-Generated Template

Paste this template into your PR description and fill it out:

EPICON-02 INTENT PUBLICATION

ledger_id: mobius:<your-ledger-id>
scope: labs
mode: normal
issued_at: 2026-07-14T17:53:08Z
expires_at: 2026-10-12T17:53:08Z
justification: |
  Explain WHY this change is needed and what it accomplishes.
counterfactuals:
  - If this change breaks existing functionality, it should be reverted.

How to Fix

  1. Ensure the PR body includes the EPICON-02 INTENT PUBLICATION block
  2. Fill all required fields: ledger_id, scope, issued_at, expires_at, justification
  3. Keep scope aligned with changed files (or reduce PR surface)
  4. Use ISO-8601 timestamps with Z suffix
  5. If justification changes, set intent_evolution: true with supersedes_hash and evolution_reason
  6. For emergency mode: set mode: emergency AND emergency_scope (≤72h window)

🔎 Why This Failed

  • Authority was exercised without a published intent.
  • Changed files affect governance control-plane.
  • EPICON-02 requires time-bounded, auditable justification.

👉 Learn more: docs/epicon/EXPLAIN_FAILURE.md


EPICON-02 Reference · Formal Invariants

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants