Skip to content

Architectural: shared-FS gripspace root vs worktree-local clones causes copy-step friction #717

@laynepenney

Description

@laynepenney

Friction surfaced 2026-05-07

Current gripspace layout: config/ lives at the gripspace root as a shared filesystem directory. But each agent's worktree (synapt-dev/, synapt-global/, synapt-codex/) is a separate clone of the recall repo, NOT a worktree of the config repo. Files written by one agent into ~/Development/synapt/config/ are visible to all agents via shared FS but commits happen only in agent-worktree-local config clones (e.g., synapt-global/config/).

Reproduction

Sentinel hit this on 2026-05-07 when shipping B2:

  1. He wrote design/ask-conversa-eval-reviewer-verdicts-2026-05-07.md to the shared ~/Development/synapt/config/ (via his Codex tool)
  2. To commit + push it, he had to copy the file from shared FS into his worktree-local clone (synapt-global/config/design/) before git add
  3. Without the copy step, git add saw the file as untracked but in a path not under his clone's git index

Expected

Either:

  • Option A: All agents share ONE config clone at gripspace root. Edits in any agent are reflected in the same git tree; commits are coordinated via branch discipline, not separate clones.
  • Option B: Each agent has their own config clone (no shared FS at root). Cross-worktree coordination happens via push + fetch, not filesystem.
  • Option C: Document the current pattern explicitly + add a gr workspace-sync <file> helper that copies shared-FS edits into worktree-local clone before commit.

Current state is an unnamed hybrid that works but causes friction.

Empirical source

Sentinel bubble m_45f5311e: "Shipping worktree was synapt-global/config; artifact had to be copied over from sibling synapt checkout before commit."

Friction cost

  • Every cross-worktree config edit requires a copy step
  • Agents new to the pattern discover it the hard way (Sentinel's case)
  • Deferred design discussion — likely Sprint 33+ to redesign

Owner

gitgrip (architectural redesign discussion); Apollo to drive

Related

  • friction-elimination log entry G + new entry from this bubble (config repo)
  • Likely conversation needed before code: which option do we want? Option A/B/C tradeoffs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions