config/memory/repo-analysis-2026-02-02.md
2026-02-02 21:50:19 +00:00

175 lines
6.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Forgejo Repository Analysis
**Date:** 2026-02-02
## Summary
Analyzed **42 repositories** across 4 organizations: Cloonar, Paraclub, infrastructure, renovate, and dominik.polakovics.
### Repository Type Breakdown
| Type | Count | Examples |
|------|-------|----------|
| TYPO3 Projects | 7 | ai-image-alt, diabetes-austria, dialog-relations-website, gbv-aktuell, lena-schilling-website, wohnservice-wien-typo3 (×2) |
| Laravel (PHP) | 1 | amz-api |
| Go Projects | 7 | code, eidas.monitor, fit, phishguard, support-invoiced, updns, soundscape-sync |
| Node/Frontend | 3 | amz-frontend, phishguard-frontend, korean-skin.care |
| Hugo Sites | 4 | cloonar-technologies-website, mehr-leistbaren-wohnraum-schaffen, korean-skin.care, website |
| Nix/Config | 2 | nixos, cloonar-assistant |
| Empty/Archived | 9 | bookmap, ghetto-nixos, gitapi, rantem-api, etc. |
---
## Configuration Status Matrix
### Active Repositories (with content)
| Repository | CI | Claude/Agents | Renovate | Tests | Docs |
|------------|:--:|:-------------:|:--------:|:-----:|:----:|
| **TYPO3 Projects** |
| ai-image-alt | ❌ | CLAUDE ✅ | ❌ | ✅ phpunit, Tests/ | ✅ |
| diabetes-austria | drone (loose) | ❌ | ❌ | tests/ | ❌ |
| dialog-relations-website | .gitea | ❌ | ✅ | ❌ | ❌ |
| gbv-aktuell | drone + .gitea | CLAUDE ✅ | ✅ | tests/ | ❌ |
| lena-schilling-website | .gitea | ❌ | ✅ | ❌ | ❌ |
| wohnservice-wien-typo3 | drone + .gitea | CLAUDE + AGENTS ✅ | ✅ | ❌ | ❌ |
| wohnservice-wien-typo3-old | drone | ❌ | ✅ | Tests/ | ❌ |
| **Laravel/PHP** |
| amz-api | drone + .gitea | CLAUDE ✅ | ✅ | ✅ phpunit, tests/ | ❌ |
| ldap2vcard | .gitea | ❌ | ❌ | ❌ | ❌ |
| **Go Projects** |
| code | ❌ | CLAUDE ✅ | ❌ | ❌ | ✅ |
| eidas.monitor | ❌ | AGENTS ✅ | ❌ | ❌ | ✅ |
| fit | .gitea | CLAUDE + AGENTS ✅ | ❌ | ❌ | ✅ |
| phishguard | ❌ | ❌ | ❌ | ❌ | ✅ |
| soundscape-sync | .gitea | ❌ | ❌ | ❌ | ❌ |
| support-invoiced | ❌ | ❌ | ❌ | ❌ | ❌ |
| updns | .github | ❌ | ❌ | ❌ | ❌ |
| ai-mailer | ❌ | CLAUDE ✅ | ❌ | ❌ | ❌ |
| **Frontend/Node** |
| amz-frontend | drone + .gitea | CLAUDE ✅ | ❌ | ❌ | ✅ |
| phishguard-frontend | ❌ | ❌ | ❌ | ❌ | ✅ |
| **Hugo/Static Sites** |
| cloonar-technologies-website | drone + .gitea | ❌ | ❌ | ❌ | ❌ |
| korean-skin.care | .github | ❌ | ❌ | ❌ | ❌ |
| mehr-leistbaren-wohnraum-schaffen | drone | ❌ | ❌ | ❌ | ❌ |
| website | .gitea + .github | CLAUDE + AGENTS ✅ | ❌ | ❌ | ❌ |
| **Infrastructure** |
| nixos | ❌ | CLAUDE + AGENTS ✅ | ❌ | ❌ | ❌ |
| cloonar-assistant | ❌ | ❌ | ❌ | ❌ | ❌ |
| renovate-config | drone + .gitea | ❌ | N/A | ❌ | ❌ |
---
## Key Findings
### 🔴 Critical Issues
1. **TYPO3 Projects Inconsistent CI Setup**
- gbv-aktuell, wohnservice-wien-typo3: Both drone AND .gitea workflows (redundant?)
- ai-image-alt: No CI at all despite being a production extension with tests
- diabetes-austria: Has `drone.yml` in root (should be `.drone.yml`)
2. **Missing Tests in Key Projects**
- wohnservice-wien-typo3: Main production system has NO tests
- dialog-relations-website: No tests
- lena-schilling-website: No tests
- All Go projects except none have test coverage configured
3. **Renovate Adoption Partial**
- Only 6/27 active repos have renovate.json
- Missing on: ai-image-alt, amz-frontend, all Go projects, Hugo sites
### 🟡 Inconsistencies
1. **CI Strategy Mixed**
- Some repos: Drone only
- Some repos: Gitea Actions only
- Some repos: GitHub Actions (for upstream forks?)
- Some repos: Both Drone + Gitea (why?)
2. **CLAUDE.md vs AGENTS.md**
- 11 repos have CLAUDE.md
- 5 repos have AGENTS.md
- 3 repos have both (fit, nixos, website, wohnservice-wien-typo3)
- No standard template observed
3. **Documentation Gaps**
- Many repos have README.md but no docs/ folder
- TYPO3 projects especially lack developer documentation
---
## Top 5 Actionable Recommendations
### 1. **Standardize CI for TYPO3 Projects** (High Impact)
Create a shared `.gitea/workflows/typo3-ci.yml` template with:
- PHP linting
- PHPStan static analysis
- PHPUnit tests (if exist)
- TYPO3 extension validation
**Quick win:** Fix diabetes-austria's `drone.yml``.drone.yml`
### 2. **Add Renovate to All Active Repos** (Medium Effort, High Value)
Create organization-wide renovate preset in `renovate/renovate-config`:
```json
{
"extends": ["local>renovate/renovate-config"]
}
```
Then add minimal `renovate.json` to:
- ai-image-alt, amz-frontend, code, eidas.monitor, fit, phishguard, all Hugo sites
### 3. **Add Tests to wohnservice-wien-typo3** (High Priority)
This is a production multi-site system with no tests. Start with:
- Functional tests for critical form handlers
- Unit tests for any custom service classes
- At minimum, smoke tests that pages render
### 4. **Consolidate CI Strategy** (Cleanup)
Pick ONE CI system and standardize:
- **Recommendation:** Gitea Actions (native, no external dependency)
- Migrate all Drone configs to `.gitea/workflows/`
- Remove dual-CI setups
### 5. **Create CLAUDE.md Template** (Developer Experience)
Standardize AI-assisted development across repos:
```markdown
# Project: {name}
## Tech Stack
## Key Files
## Testing
## Common Tasks
```
Prioritize for: eidas.monitor, phishguard, soundscape-sync
---
## Quick Wins (< 30 min each)
| Task | Repo | Effort |
|------|------|--------|
| Rename `drone.yml``.drone.yml` | diabetes-austria | 2 min |
| Add `renovate.json` with org preset | ai-image-alt | 5 min |
| Add basic `CLAUDE.md` | eidas.monitor (has AGENTS.md) | 15 min |
| Enable Gitea Actions | ai-image-alt | 10 min |
| Add `renovate.json` | amz-frontend | 5 min |
---
## Empty/Archived Repos (consider cleanup)
These repos have no content or appear abandoned:
- ai.nvim, bookmap, cloonar-assistant-customers, ghetto-nixos
- gitapi, gitea-runner, imperfect-perfect.com, lego-hetzner-bridge
- mail-autoconfig, rantem-api
**Recommendation:** Archive or delete to reduce clutter.
---
## Next Steps
1. Create `.gitea/workflows/` templates in a shared repo
2. Draft organization-wide renovate config
3. Prioritize wohnservice-wien-typo3 test coverage
4. Schedule cleanup of empty repos