Phase 1: REST bridge - New ResticRestBridge (NanoHTTPD) implementing restic REST protocol - New RestBridgeRunner lifecycle manager (withBridge pattern) - ResticEnvResolver: buildLocalEnv/buildBridgeEnv split - ResticWrapper: syncManager → bridgeRunner, propagate cacheDir - 5 sub-modules (Backup/Restore/SnapshotOps/Maintenance/RepoInit): unified local/bridge branching - Delete RemoteSyncManager.kt (231 lines removed) - Clean RemoteTransport companion (only create() remains) - Remove getTempRepoDir, cleanup(), onSyncProgress/ByteSyncProgress Phase 2: Streaming backup - New StreamingBackup with FIFO orchestration - ResticBackup.backupStdin() with --stdin mode - ResticCommandRunner.runResticWithStdin() (API 24 compat) - BackupFragment: space detection + auto-switch to streaming Code quality fixes: - OOM protection: stream blob bodies to temp files - API compat: manual stdin piping (no redirectInput API 26) - Build: 0 errors, 0 warnings, lint 0 errors, all 53 tests pass
2.6 KiB
2.6 KiB
GitNexus — Code Intelligence
This project is indexed by GitNexus as android-backup-gui (1295 symbols, 3535 relationships, 112 execution flows). Use the GitNexus MCP tools to understand code, assess impact, and navigate safely.
If any GitNexus tool warns the index is stale, run
npx gitnexus analyzein terminal first.
Always Do
- MUST run impact analysis before editing any symbol. Before modifying a function, class, or method, run
gitnexus_impact({target: "symbolName", direction: "upstream"})and report the blast radius (direct callers, affected processes, risk level) to the user. - MUST run
gitnexus_detect_changes()before committing to verify your changes only affect expected symbols and execution flows. - MUST warn the user if impact analysis returns HIGH or CRITICAL risk before proceeding with edits.
- When exploring unfamiliar code, use
gitnexus_query({query: "concept"})to find execution flows instead of grepping. It returns process-grouped results ranked by relevance. - When you need full context on a specific symbol — callers, callees, which execution flows it participates in — use
gitnexus_context({name: "symbolName"}).
Never Do
- NEVER edit a function, class, or method without first running
gitnexus_impacton it. - NEVER ignore HIGH or CRITICAL risk warnings from impact analysis.
- NEVER rename symbols with find-and-replace — use
gitnexus_renamewhich understands the call graph. - NEVER commit changes without running
gitnexus_detect_changes()to check affected scope.
Resources
| Resource | Use for |
|---|---|
gitnexus://repo/android-backup-gui/context |
Codebase overview, check index freshness |
gitnexus://repo/android-backup-gui/clusters |
All functional areas |
gitnexus://repo/android-backup-gui/processes |
All execution flows |
gitnexus://repo/android-backup-gui/process/{name} |
Step-by-step execution trace |
CLI
| Task | Read this skill file |
|---|---|
| Understand architecture / "How does X work?" | .claude/skills/gitnexus/gitnexus-exploring/SKILL.md |
| Blast radius / "What breaks if I change X?" | .claude/skills/gitnexus/gitnexus-impact-analysis/SKILL.md |
| Trace bugs / "Why is X failing?" | .claude/skills/gitnexus/gitnexus-debugging/SKILL.md |
| Rename / extract / split / refactor | .claude/skills/gitnexus/gitnexus-refactoring/SKILL.md |
| Tools, resources, schema reference | .claude/skills/gitnexus/gitnexus-guide/SKILL.md |
| Index, status, clean, wiki CLI commands | .claude/skills/gitnexus/gitnexus-cli/SKILL.md |