gabriel / muse public
refactor BREAKING bridge task/bridge-phase7-status #1 / 1
AI Agent gabriel · 114 days ago · May 22, 2026 · Diff

refactor(bridge): Phase 7 — extract status functions to muse.core.bridge.status

Moves run_git_status, _compute_drift, _count_muse_commits_since, and _print_bridge_status_text from the god-object bridge.py into the new muse.core.bridge.status submodule (issue #14).

bridge.py re-exports all four symbols to preserve the public API surface. test_bridge_watch.py mock paths updated to target muse.core.bridge.exporter (where _watch_loop and GitExporter actually live).

277/277 tests pass. bridge.py: 641 → 443 lines.

sha256:879ff31062fd826f43ced1ac695d28a4505773b4c22f59668e3981415e0b19e8 sha
+22 ~5 −4 symbols
sha256:f4bbb9ffc3ff0c0c4c78a8ad494014cc46be12da0fcde122ad7eb7ee773dacdf snapshot
+22
symbols added
~5
symbols modified
−4
symbols removed
0
dead code introduced
Semantic Changes 31 symbols
~ muse/core/bridge/status.py .py 18 symbols added
+ _compute_drift function function _compute_drift L74–127 ← moved from muse/cli/commands/bridge.py
+ _count_muse_commits_since function function _count_muse_commits_since L130–181 ← moved from muse/cli/commands/bridge.py
+ _print_bridge_status_text function function _print_bridge_status_text L184–233 ← moved from muse/cli/commands/bridge.py
+ Any import import Any L19–19
+ BridgeState import import BridgeState L22–22
+ DriftInfo import import DriftInfo L22–22
+ ExitCode import import ExitCode L23–23
+ _git import import _git L21–21
+ _validate_git_sha import import _validate_git_sha L21–21
+ annotations import import annotations L13–13
+ argparse import import argparse L15–15
+ head_path import import head_path L24–24
+ json import import json L16–16
+ pathlib import import pathlib L17–17
+ read_bridge_state import import read_bridge_state L22–22
+ ref_path import import ref_path L24–24
+ sys import import sys L18–18
+ run_git_status function function run_git_status L27–71 ← moved from muse/cli/commands/bridge.py
~ muse/cli/commands/bridge.py .py 4 symbols added, 4 symbols removed
_compute_drift function function _compute_drift L170–223 → moved to muse/core/bridge/status.py
_count_muse_commits_since function function _count_muse_commits_since L225–276 → moved to muse/core/bridge/status.py
_print_bridge_status_text function function _print_bridge_status_text L278–327 → moved to muse/core/bridge/status.py
run_git_status function function run_git_status L124–168 → moved to muse/core/bridge/status.py
+ _compute_drift import import _compute_drift L57–57
+ _count_muse_commits_since import import _count_muse_commits_since L57–57
+ _print_bridge_status_text import import _print_bridge_status_text L57–57
+ run_git_status import import run_git_status L57–57
← Older Oldest on task/bridge-phase7-status
All commits
Newer → Latest on task/bridge-phase7-status

0 comments

No comments yet. Be the first to start the discussion.

To add a comment, use the Muse CLI: muse hub commit comment sha256:879ff31062fd826f43ced1ac695d28a4505773b4c22f59668e3981415e0b19e8 --body "your comment"