## Summary Implements forge cleanup tools and documentation as requested in issue #1128. ## Changes - scripts/cleanup-duplicate-prs.sh: Automated duplicate PR detection - docs/forge-cleanup-analysis.md: Analysis of duplicate PRs - docs/forge-cleanup-report.md: Cleanup report with metrics - .github/workflows/pr-duplicate-check.yml: Weekly automated checks Issue: #1128
105 lines
3.7 KiB
Markdown
105 lines
3.7 KiB
Markdown
# Forge Cleanup Analysis — Issue #1128
|
|
|
|
## Summary
|
|
|
|
This document analyzes the current state of open PRs in the-nexus repository and identifies cleanup actions needed.
|
|
|
|
## Current State
|
|
|
|
- **Total Open PRs**: 14
|
|
- **Duplicate PR Groups**: 4 groups with 2 PRs each (8 PRs total)
|
|
- **PRs with Review Issues**: 4 PRs with REQUEST_CHANGES
|
|
- **Approved PRs**: 1 PR approved but not merged
|
|
|
|
## Duplicate PR Analysis
|
|
|
|
### Group 1: Issue #1338 (Remove duplicate content blocks)
|
|
- **PR #1392**: `fix: remove duplicate content blocks from README.md`
|
|
- Branch: `burn/1338-1776125702`
|
|
- Created: 2026-04-14T00:19:24Z
|
|
- Status: REQUEST_REVIEW by perplexity
|
|
- **PR #1388**: `fix: remove duplicate content blocks from page`
|
|
- Branch: `burn/1338-1776120221`
|
|
- Created: 2026-04-13T22:55:30Z
|
|
- Status: No reviews
|
|
|
|
**Recommendation**: Close PR #1388 (older), keep PR #1392 (newer).
|
|
|
|
### Group 2: Issue #1354 (Sovereign Sound Playground)
|
|
- **PR #1391**: `fix: Add Sovereign Sound Playground and fix portals.json (#1354)`
|
|
- Branch: `burn/1354-1776125702`
|
|
- Created: 2026-04-14T00:19:22Z
|
|
- Status: REQUEST_REVIEW by perplexity
|
|
- Note: Also fixes portals.json syntax error
|
|
- **PR #1384**: `feat: Add Sovereign Sound Playground (#1354)`
|
|
- Branch: `burn/1354-1776120221`
|
|
- Created: 2026-04-13T22:51:04Z
|
|
- Status: No reviews
|
|
- Note: Does NOT fix portals.json syntax error
|
|
|
|
**Recommendation**: Close PR #1384 (older, incomplete), keep PR #1391 (newer, complete).
|
|
|
|
### Group 3: Issue #1349 (ChatLog.log() crash)
|
|
- **PR #1390**: `fix: ChatLog.log() crash — CHATLOG_FILE defined after use (#1349)`
|
|
- Branch: `burn/1349-1776125702`
|
|
- Created: 2026-04-14T00:17:34Z
|
|
- Status: REQUEST_REVIEW by perplexity
|
|
- **PR #1382**: `fix: ChatLog.log() crash on message persistence (#1349)`
|
|
- Branch: `burn/1349-1776120221`
|
|
- Created: 2026-04-13T22:50:07Z
|
|
- Status: No reviews
|
|
|
|
**Recommendation**: Close PR #1382 (older), keep PR #1390 (newer).
|
|
|
|
### Group 4: Issue #1356 (ThreadingHTTPServer concurrency)
|
|
- **PR #1389**: `fix(#1356): ThreadingHTTPServer concurrency fix`
|
|
- Branch: `burn/1356-1776125702`
|
|
- Created: 2026-04-14T00:16:23Z
|
|
- Status: REQUEST_REVIEW by perplexity
|
|
- **PR #1381**: `fix(#1356): ThreadingHTTPServer concurrency fix for multi-user bridge`
|
|
- Branch: `burn/1356-1776120221`
|
|
- Created: 2026-04-13T22:47:45Z
|
|
- Status: No reviews
|
|
|
|
**Recommendation**: Close PR #1381 (older), keep PR #1389 (newer).
|
|
|
|
## Additional Cleanup Candidates
|
|
|
|
### PR #1387: MemPalace INIT display
|
|
- **Title**: `fix: MEMPALACE INIT shows real stats from fleet API (#1340)`
|
|
- **Status**: REQUEST_CHANGES by Timmy
|
|
- **Action**: Needs changes before merge
|
|
|
|
### PR #1386: Fleet audit tool
|
|
- **Title**: `feat: fleet audit tool — deduplicate agents, one identity per machine`
|
|
- **Status**: APPROVED by Timmy
|
|
- **Action**: Ready for merge
|
|
|
|
## Policy Recommendations
|
|
|
|
### 1. Prevent Duplicate PRs
|
|
- Implement check to detect if an open PR already exists for the same issue
|
|
- Add bot comment when duplicate PR is detected
|
|
|
|
### 2. PR Review Workflow
|
|
- Require at least one approval before merge
|
|
- Auto-close PRs with REQUEST_CHANGES after 7 days of inactivity
|
|
|
|
### 3. Stale PR Management
|
|
- Auto-close PRs older than 30 days with no activity
|
|
- Weekly cleanup of duplicate PRs
|
|
|
|
## Files to Create
|
|
|
|
1. `docs/pr-duplicate-detection.md` - Policy for detecting duplicate PRs
|
|
2. `scripts/cleanup-duplicate-prs.sh` - Script to identify and close duplicate PRs
|
|
3. `.github/workflows/pr-duplicate-check.yml` - GitHub Action for duplicate detection
|
|
|
|
## Next Steps
|
|
|
|
1. Close identified duplicate PRs
|
|
2. Address review comments on PRs with REQUEST_CHANGES
|
|
3. Merge approved PRs
|
|
4. Implement duplicate prevention policies
|
|
5. Update issue #1128 with cleanup results
|