Update olddocs to reflect current implementation state

- REGISTRY.md: Mark phases 1-4, 6-8 complete; phase 5 partial
- WEB_UI.md: Update Phase 7 checklist with completion status
- DESIGN.md: Note TUI replaced by PySide6 GUI, update structure
- PROJECT.md: Update source structure and database schema
- PROVIDERS.md, META_TOOLS.md, COLLECTIONS.md: Add status notes
- Add "Features Implemented Beyond Original Design" sections

Co-Authored-By: Claude Opus 4.5 <[email protected]>
This commit is contained in:
rob
2026-01-17 03:35:42 -04:00
co-authored by Claude Opus 4.5
parent a46add05b7
commit 0d91eb7fa0
7 changed files with 396 additions and 182 deletions
+112 -45
View File
@@ -1,5 +1,11 @@
# CmdForge Registry Design
> **Document Status (January 2026)**: This is the original design document used to build the registry.
> Phases 1-4 and 6-8 are complete. Phase 5 (Project Dependencies) is partially implemented.
> Many features beyond this spec have been added (reviews, issues, fork tracking, scrutiny, admin
> moderation). See the Implementation Phases section for current status. For the latest
> documentation, see the project-docs system.
## Purpose
Build a centralized registry for CmdForge to enable discovery, publishing, dependency management, and future curation at scale.
@@ -1969,55 +1975,116 @@ def render_readme_safe(readme_raw: str) -> str:
## Implementation Phases
### Phase 1: Foundation
- Define `cmdforge.yaml` manifest format
- Implement tool resolution order (local → global → registry)
- Create CmdForge-Registry repo on Gitea (bootstrap)
- Add 3-5 example tools to seed the registry
> **Status as of January 2026**: Phases 1-4 and 6-8 are complete. Phase 5 is partially complete.
### Phase 2: Core Backend
- Set up Flask/FastAPI project structure
- Implement SQLite database schema
- Build core API endpoints (list, search, get, download)
- Implement webhook receiver for Gitea sync
- Set up HMAC verification
### Phase 1: Foundation ✅ Complete
- [x] Define `cmdforge.yaml` manifest format
- [x] Implement tool resolution order (local → global → registry)
- [x] Create CmdForge-Registry repo on Gitea (bootstrap)
- [x] Add 3-5 example tools to seed the registry (233+ Fabric patterns imported)
### Phase 3: CLI Commands
- `cmdforge registry search`
- `cmdforge registry install`
- `cmdforge registry info`
- `cmdforge registry browse` (TUI)
- Local index caching
### Phase 2: Core Backend ✅ Complete
- [x] Set up Flask/FastAPI project structure
- [x] Implement SQLite database schema (25+ tables including FTS5, reviews, issues, audit)
- [x] Build core API endpoints (list, search, get, download)
- [x] Implement webhook receiver for Gitea sync
- [x] Set up HMAC verification
### Phase 4: Publishing
- Publisher registration (web UI)
- Token management
- `cmdforge registry publish` command
- PR creation via Gitea API
- CI validation workflows
### Phase 3: CLI Commands ✅ Complete
- [x] `cmdforge registry search` (with faceted search, tags, categories, owner, date range)
- [x] `cmdforge registry install`
- [x] `cmdforge registry info`
- [x] `cmdforge registry browse` (opens PySide6 GUI)
- [x] Local index caching
- [x] `cmdforge registry tags` (list available tags)
- [x] `cmdforge registry uninstall`
- [x] `cmdforge registry my-tools`
- [x] `cmdforge registry status`
- [x] `cmdforge registry config` (admin settings)
### Phase 5: Project Dependencies
- `cmdforge install` (from manifest)
- `cmdforge add` command
- Runtime override application
- Dependency resolution
### Phase 4: Publishing ✅ Complete
- [x] Publisher registration (web UI)
- [x] Token management
- [x] `cmdforge registry publish` command (with dry-run, version bump, similarity warnings)
- [x] PR creation via Gitea API
- [x] CI validation workflows
- [x] App pairing/connection flow (polling-based, replaces manual token entry)
- [x] Connected apps management
### Phase 6: Smart Features
- SQLite FTS5 search index
- AI-powered auto-categorization
- Duplicate/similarity detection
- Security scanning
### Phase 5: Project Dependencies ⚠️ Partial
- [ ] `cmdforge install` (from manifest) - Not implemented
- [ ] `cmdforge add` command - Not implemented
- [ ] Runtime override application - Not implemented
- [ ] Dependency resolution - Not implemented
- [x] Individual tool install via `cmdforge registry install`
### Phase 7: Full Web UI
- Landing page
- Tool browsing/search pages
- Tool detail pages with README rendering
- Publisher dashboard
- Documentation/tutorials section
### Phase 6: Smart Features ✅ Complete
- [x] SQLite FTS5 search index (with prefix matching)
- [x] AI-powered auto-categorization
- [x] Duplicate/similarity detection
- [x] Security scanning (scrutiny system)
- [x] AI-powered secondary review (scrutiny-ai-review integration)
- [x] Auto-approve/review/reject decision logic
- [x] Confidence-based moderation
### Phase 8: Polish & Scale
- Rate limiting
- Abuse reporting
- Analytics integration
- Performance optimization
- Monitoring/alerting
### Phase 7: Full Web UI ✅ Complete
- [x] Landing page (with featured tools, tutorials, contributor spotlight)
- [x] Tool browsing/search pages (with faceted filters)
- [x] Tool detail pages with README rendering (plus reviews, issues, versions, forks)
- [x] Publisher dashboard (tools, tokens, settings)
- [x] Documentation/tutorials section
- [x] Admin dashboard (pending queue, publishers, reports, scrutiny, settings)
- [x] Forum (categories, topics, replies)
- [x] Collections pages
- [x] Publisher profiles with trust scores and badges
### Phase 8: Polish & Scale ✅ Complete
- [x] Rate limiting
- [x] Abuse reporting
- [x] Analytics integration (pageviews, consent management)
- [x] Performance optimization
- [x] Monitoring/alerting (Sentry integration)
- [x] Audit logging
- [x] Role-based access control (user, moderator, admin)
- [x] Publisher banning/unbanning
- [x] Review voting and flagging
- [x] Issue tracking (bug, security, compatibility)
## Features Implemented Beyond Original Design
The following features were added during development but not in the original design:
### Reviews & Ratings System
- 1-5 star ratings with text reviews
- Helpful/unhelpful voting on reviews
- Review flagging for moderation
- Rating aggregates and statistics
- Publisher reputation scores
### Issue Tracking
- Bug, security, and compatibility issue types
- Severity levels (low, medium, high, critical)
- Issue status workflow (open, confirmed, fixed, wontfix, duplicate)
- Issue resolution with notes
### Fork Tracking
- Track original tool when forking (`forked_from` field)
- Store `forked_version` for version tracking
- Display fork information in GUI and web
### Scrutiny System (Automated Vetting)
- Automated security/compatibility analysis on publish
- AI-powered secondary review
- Confidence-based approval decisions
- Admin scrutiny dashboard with statistics
### Trust & Badges
- Publisher trust scores
- Achievement badges
- Download milestones
### PySide6 Desktop GUI
- Modern desktop GUI replacing urwid TUI
- Tool Builder with visual form editor
- AI-assisted code generation for code steps
- AI persona profiles system