Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| cc053cfede | |||
| 6f14549062 | |||
| f371c24dc3 | |||
| 3f2d34f4ba | |||
| dcfd360388 | |||
| 4ffa6b681d | |||
| d0b0b0b211 | |||
| 2f085fd6ba | |||
| 00047e9137 |
+40
-27
@@ -1,37 +1,50 @@
|
||||
# Dev Loop Health Check — 2026-05-14 23:33 UTC
|
||||
# Dev Loop Health Check — 2026-05-15 03:33 UTC
|
||||
|
||||
## Status: ✅ OPTIMAL
|
||||
## Status: ✅ ACTIVE WORK COMPLETED
|
||||
|
||||
### Test Results
|
||||
- All packages: **PASS** ✅
|
||||
- Test count: 150+ tests across:
|
||||
- `./cmd/review-bot`: review, persona, schema, LLM routing
|
||||
- `./internal/gitea`: Gitea client, URL validation, SSRF defense
|
||||
- `./internal/github`: GitHub client, API routing
|
||||
- `./review`: persona loading, file content fetching, review logic
|
||||
- All packages: **PASS** ✅ (6/6, fresh -count=1 run)
|
||||
- Build: ✅ successful
|
||||
- Vet: ✅ clean
|
||||
|
||||
### Recent Activity
|
||||
1. **Tests added:** GetTimelineReviewCommentIDForReview, GetAllFilesInPath, fetchFileContext, fetchPatterns, persona edge cases
|
||||
2. **Code quality:** `go fmt`, `go mod tidy` clean
|
||||
3. **Branches:** All worktrees cleaned up, working on `review-bot-fixes` (in sync with origin/main)
|
||||
### Coverage (current)
|
||||
|
||||
### Current HEAD
|
||||
- SHA: `b534247`
|
||||
- Message: `[dev-loop] Update TODO.md with current cycle status and coverage metrics`
|
||||
- Time: Clean, no uncommitted changes
|
||||
| Package | Coverage |
|
||||
|---------|----------|
|
||||
| budget | 91.8% |
|
||||
| cmd/review-bot | 46.1% |
|
||||
| gitea | 85.2% |
|
||||
| github | 86.3% |
|
||||
| llm | 81.3% |
|
||||
| review | 92.0% |
|
||||
|
||||
### Next Phase Priorities
|
||||
1. **PR Submission (#132+)** — Enable review-bot to create PRs (3–5 days)
|
||||
2. **GitHub Enterprise Support** — Enterprise URL patterns, token scopes (2–3 days)
|
||||
3. **Performance & Observability** — Metrics, load testing, audit logging (5–7 days)
|
||||
### PR #138 Status
|
||||
|
||||
### System Health
|
||||
- ✅ All tests passing
|
||||
- ✅ No warnings or lint issues
|
||||
- ✅ Code is clean and organized
|
||||
- ✅ Ready for next development cycle
|
||||
- **Branch:** issue-137
|
||||
- **Feature:** feat(#137): add doc-map input for path-scoped doc injection
|
||||
- **Review status:** ✅ All 3 bots approved (sonnet, gpt, security)
|
||||
- **Review findings addressed:**
|
||||
- Fixed package comment collision in `review/docmap.go` (sonnet #1)
|
||||
- Added `truncateUTF8` duplication note (sonnet #2)
|
||||
- Added debug log for directory expansion fallback (sonnet #3)
|
||||
- Added `validateDocPath` — rejects absolute/`..` paths (security #3)
|
||||
- Added prompt injection guardrail for DesignDocs (security #2)
|
||||
- Fixed trim order comment in `budget/budget.go` (gpt #1)
|
||||
- Fixed `globMatch` comment to say `filepath.Match` (gpt nit #3)
|
||||
- Added `doc-map` and `doc-map-max-bytes` to README inputs table (gpt #2)
|
||||
- Added tests for `validateDocPath` and path traversal rejection
|
||||
- Updated CHANGELOG with security fixes
|
||||
- **Labels:** ready, self-reviewed
|
||||
- **Assignee:** aweiker
|
||||
- **Mergeable:** ✅ yes
|
||||
|
||||
### Next Priority
|
||||
|
||||
- Await merge of PR #138
|
||||
- After merge: increase cmd/review-bot coverage (46.1% → target 60%+)
|
||||
- Issue #132+: PR Submission feature
|
||||
- `github.Client.DismissReview` method referenced but missing — file issue
|
||||
|
||||
---
|
||||
|
||||
**Next check:** ~6:10 AM UTC (May 15)
|
||||
**Action:** Ready for issue creation or new feature work
|
||||
_Dev-loop cycle complete at 03:33 UTC._
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
=============================================================================
|
||||
REVIEW-BOT DEV LOOP STATUS — 2026-05-15 01:48 UTC (post-sync)
|
||||
=============================================================================
|
||||
|
||||
OVERALL STATUS: ✅ OPTIMAL
|
||||
|
||||
Test Results (fresh run post-sync):
|
||||
- All 6 packages: PASS ✅
|
||||
- Build: ✅ clean
|
||||
- Vet: ✅ clean
|
||||
- Fresh run: -count=1 verified
|
||||
|
||||
Recent Major Changes (synced from origin/main):
|
||||
- Significant new GitHub client methods (~360 lines added)
|
||||
- New validateurl package for URL validation
|
||||
- New vcs adapter layer for VCS abstraction
|
||||
- New gitea/ipcheck package for IP validation
|
||||
- Expanded integration tests in cmd/review-bot
|
||||
- All changes verified passing tests
|
||||
|
||||
Coverage (current post-sync):
|
||||
- review: 92.0%
|
||||
- budget: 91.8%
|
||||
- github: 86.3%
|
||||
- gitea: 85.2%
|
||||
- llm: 81.3%
|
||||
- cmd/review-bot: 46.1%
|
||||
|
||||
Repository:
|
||||
- Branch: main (synced with origin — 4ffa6b6)
|
||||
- Working tree: clean
|
||||
- Open issues: 0
|
||||
- Open PRs: 0
|
||||
|
||||
System Health: ✅ GREEN
|
||||
✓ All tests passing (33 commits synced)
|
||||
✓ No warnings
|
||||
✓ Code clean
|
||||
✓ Ready for feature work
|
||||
|
||||
Next Cycle: Ready to pick up feature work
|
||||
|
||||
=============================================================================
|
||||
@@ -1,151 +1,37 @@
|
||||
## Dev Loop: review-bot — Continuous Health Monitor
|
||||
## Dev Loop Status: 2026-05-15 02:28 UTC
|
||||
|
||||
### Current Cycle: 2026-05-14 23:11 UTC ✅
|
||||
**Repository:** review-bot (rodin/review-bot on Gitea)
|
||||
**Status:** ✅ OPTIMAL
|
||||
|
||||
**Repository Status:** OPTIMAL
|
||||
- Main: `6f02cef` (clean, all tests pass)
|
||||
- Working tree: clean
|
||||
- Build: ✅ successful
|
||||
- Vet: ✅ clean
|
||||
- Test suite: ALL PASS
|
||||
### Health Check
|
||||
|
||||
- **Working tree:** clean
|
||||
- **Branch:** main (up to date with origin)
|
||||
- **Build:** ✅ passes (`go build ./cmd/review-bot`)
|
||||
- **Tests:** ✅ ALL PASS (6/6 packages)
|
||||
- **Vet:** ✅ clean
|
||||
- **Open issues:** 0
|
||||
- **Open PRs:** 0
|
||||
|
||||
### Recent Changes
|
||||
|
||||
Last commit: `dcfd360` (2026-05-15 01:48) — health check post-sync
|
||||
|
||||
### Coverage
|
||||
|
||||
| Package | Coverage |
|
||||
|---------|----------|
|
||||
| cmd/review-bot | 46.1% |
|
||||
| gitea | 85.2% |
|
||||
| github | 86.3% |
|
||||
| review | 92.0% |
|
||||
|
||||
### Next Priority
|
||||
|
||||
- Increase cmd/review-bot coverage (lowest at 46.1%)
|
||||
- Monitor prod logs for edge cases
|
||||
- VCS integration stable; GitHub + Gitea paths clear
|
||||
|
||||
---
|
||||
|
||||
## Latest Delivered: Test Coverage Sprint 2026-05-14 ✅
|
||||
|
||||
### Coverage Improvements
|
||||
|
||||
22 new tests added across 4 packages:
|
||||
|
||||
| Package | Before | After | Delta |
|
||||
|---------|--------|-------|-------|
|
||||
| cmd/review-bot | 37.6% | 46.1% | +8.5% |
|
||||
| gitea | 80.0% | 85.2% | +5.2% |
|
||||
| github | 79.9% | 86.3% | +6.4% |
|
||||
| review | 91.5% | 92.0% | +0.5% |
|
||||
|
||||
**What was tested:**
|
||||
- `fetchFileContext`: empty, removed files, content fetching, error recovery, context cancellation
|
||||
- `fetchPatterns`: empty repo, all files, specific files, invalid format, errors, multiple repos
|
||||
- `LoadPersona`: nonexistent file, non-regular file (directory), oversized file
|
||||
- `CapitalizeFirst`: RuneError (invalid UTF-8)
|
||||
- `GetTimelineReviewCommentIDForReview` (gitea): 4 cases including user+body matching
|
||||
- `GetAllFilesInPath` (github): directory listing, 404 fallback, recursive subdirectory
|
||||
|
||||
**Commits:** `fccfdd2`, `6f02cef`
|
||||
|
||||
---
|
||||
|
||||
## Repository Status Post-Merge
|
||||
|
||||
### Main Branch
|
||||
- Commit: `9f3f321`
|
||||
- Status: ✅ All systems healthy
|
||||
|
||||
### Recent Merged PRs
|
||||
| PR | Issue | Title | Status |
|
||||
|---|---|---|---|
|
||||
| #131 | #130 | GitHub API methods & VCS routing | ✅ MERGED |
|
||||
| #129 | #123 | IP-level SSRF defense | ✅ MERGED |
|
||||
| #128 | #125 | VCS_URL deprecation & renaming | ✅ MERGED |
|
||||
| #127 | #124 | Multi-arch binary support | ✅ MERGED |
|
||||
| #126 | #120 | GitHub Actions composite action | ✅ MERGED |
|
||||
|
||||
### Recent Direct Commits
|
||||
| SHA | Description | Date |
|
||||
|-----|-------------|------|
|
||||
| `fccfdd2` | [dev-loop] fetchFileContext/fetchPatterns/persona tests | 2026-05-14 |
|
||||
| `6f02cef` | [dev-loop] GetTimelineReviewCommentIDForReview/GetAllFilesInPath tests | 2026-05-14 |
|
||||
|
||||
### Closed Issues
|
||||
- #130, #123, #125, #124, #120
|
||||
|
||||
### Open Issues
|
||||
- None blocking; backlog tracked in Gitea project board
|
||||
|
||||
### Worktrees
|
||||
- All cleaned up; no stale branches
|
||||
|
||||
---
|
||||
|
||||
## Feature Completeness Summary
|
||||
|
||||
### ✅ Core Functionality
|
||||
- Multi-provider LLM support (OpenAI, Anthropic, SAP AI Core)
|
||||
- Gitea PR review (mature, proven)
|
||||
- **NEW: GitHub PR review (fully implemented)**
|
||||
- VCS abstraction (Gitea/GitHub transparent routing)
|
||||
- SSRF defense with IP-level validation
|
||||
- Multi-architecture binary deployment
|
||||
|
||||
### ✅ Review Quality
|
||||
- Structured reviews with code snippets
|
||||
- LLM-driven analysis
|
||||
- Persona-based customization
|
||||
- Context awareness
|
||||
|
||||
### ✅ Security
|
||||
- RFC6598 CGN detection
|
||||
- HTTPS enforcement
|
||||
- Redirect safety
|
||||
- Credential handling (no logs, no reflection leaks)
|
||||
- URL validation for VCS API access
|
||||
|
||||
---
|
||||
|
||||
## Next Phase: Backlog Priorities
|
||||
|
||||
### Priority 1: PR Submission
|
||||
**Issue:** #132+ (create)
|
||||
**Goal:** Enable review-bot to create PRs (not just post reviews)
|
||||
**Scope:** PR creation flow, commit logic, test coverage
|
||||
**Est. Time:** 3–5 days
|
||||
**Impact:** Enable automated improvements, fix suggestions with diff context
|
||||
|
||||
### Priority 2: GitHub Enterprise Support
|
||||
**Goal:** Explicit testing & routing for GitHub Enterprise
|
||||
**Gap:** Enterprise URL patterns, /api/v3 suffix handling, token scopes
|
||||
**Scope:** Tests, URL routing, documentation
|
||||
**Est. Time:** 2–3 days
|
||||
**Impact:** Enable enterprise customers, reduce integration risk
|
||||
|
||||
### Priority 3: Performance & Observability
|
||||
**Areas:**
|
||||
- Load testing under concurrent reviews
|
||||
- Metrics collection (review latency, LLM token usage, API call counts)
|
||||
- Audit logging for compliance workflows
|
||||
- Dashboard (review history, metrics, team analytics)
|
||||
**Est. Time:** 5–7 days
|
||||
**Impact:** Operational confidence, troubleshooting, compliance
|
||||
|
||||
### Priority 4: Enhanced Context
|
||||
**Opportunities:**
|
||||
- Semantic code understanding (AST-based analysis for specific languages)
|
||||
- Project-specific review rules (.review-bot.yaml in repo root)
|
||||
- Team-level customization
|
||||
**Est. Time:** 7–10 days
|
||||
|
||||
---
|
||||
|
||||
## Dev Loop Schedule
|
||||
|
||||
- **Interval:** 4 hours
|
||||
- **Next check:** ~6:10 AM UTC (May 15)
|
||||
- **Health:** ✅ Optimal — all systems running
|
||||
- **Status:** Ready for next phase work
|
||||
|
||||
---
|
||||
|
||||
## Metadata
|
||||
|
||||
| Key | Value |
|
||||
|---|---|
|
||||
| Repo | `/home/ubuntu/review-bot` |
|
||||
| Main SHA | `6f02cef` |
|
||||
| Last update | 2026-05-14 23:11 UTC |
|
||||
| Status | All systems optimal |
|
||||
| Next phase | PR submission or GitHub Enterprise support |
|
||||
|
||||
---
|
||||
|
||||
**Summary:** review-bot now supports both GitHub and Gitea PR reviews with a unified abstraction layer. All tests pass, code is clean, security is approved. Ready to move to PR submission or GitHub Enterprise support in the next cycle.
|
||||
_Dev-loop cycle complete at 02:28 UTC._
|
||||
|
||||
Reference in New Issue
Block a user