|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to the **Repo Doctor** project are documented here. Repo Doctor adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## [1.0.0] - 2026-06-08 |
| 8 | + |
| 9 | +### 🚀 Public Release & Deployment Ready |
| 10 | + |
| 11 | +Repo Doctor is now feature-complete, hardened, and ready for public v1.0 release on GitHub! This version transforms unfamiliar monorepos into actionable developer onboarding playbooks in minutes. |
| 12 | + |
| 13 | +#### 🩺 Problem Statement Solved |
| 14 | +* Resolves developer cognitive overload when entering new repositories. |
| 15 | +* Answers **"Where do I start reading?"**, **"What will break if I edit this file?"**, and **"How does the request flow work?"** without requiring heavy force-directed graph diagrams. |
| 16 | + |
| 17 | +--- |
| 18 | + |
| 19 | +### ✨ Feature Set |
| 20 | + |
| 21 | +#### 1. Action-First Onboarding Dashboard |
| 22 | +* **Metrics panel**: Instantly monitors computed **Technical Debt Score**, number of **Fragile Modules**, and codebase **Stack Confidence**. |
| 23 | +* **Read-First Actions**: A sequenced reading checklist telling new developers exactly *why* each file is critical. |
| 24 | +* **Fix-First Actions**: Highlight checklist mapping highest-debt, volatile modules that require immediate refactoring. |
| 25 | + |
| 26 | +#### 2. Interactive Codebase Maps (`WorkspaceTrees`) |
| 27 | +* Located prominently below URL ingestion, presenting three navigable views: |
| 28 | + * **Repository Directory**: Recursive directory folder tree highlighting entry points (star icon) and package manifests (pkg tag). |
| 29 | + * **Domain Modules**: Interactive cards grouping files by domain responsibility and outlining their structural purpose. |
| 30 | + * **Dependency Paths**: Inbound imports and outbound dependents lists calculated heuristically. |
| 31 | +* **Click-to-Audit link**: Click any node to focus-glow highlight that file and slide open the Impact Analysis panel. |
| 32 | + |
| 33 | +#### 3. Transitive Impact Analysis |
| 34 | +* Calculates direct caller networks, transitive impact radius, and breakage risk score (0-100). |
| 35 | +* Maps nearby unit tests and generates a plain-English summary explaining what changes when a file is modified. |
| 36 | + |
| 37 | +#### 4. Senior Engineer Explanation Mode |
| 38 | +* Synthesizes repository summary and request-data flow steps from endpoints to storage. |
| 39 | +* Identifies complex configuration, tooling, and boilerplate directories that new contributors can safely ignore at first. |
| 40 | + |
| 41 | +#### 5. Guided Onboarding Tour & Guide Panels |
| 42 | +* **5-step Guided Stepper**: Modal overlay tour for new users explaining dashboard inputs, trees, actions list, and architecture views. State is saved to `localStorage` to avoid disrupting returning users. |
| 43 | +* **"How to Read" Guide Banner**: Dismissible grid panel summarizing metrics scan steps. |
| 44 | + |
| 45 | +--- |
| 46 | + |
| 47 | +### 🛡️ Reliability & Resilience |
| 48 | + |
| 49 | +* **Multi-Provider AI Client**: Resolves API requests by checking for `GEMINI_API_KEY` (Gemini 2.5 Flash), falling back to `OPENAI_API_KEY` (GPT-4o-Mini), and falling back to a deterministic markdown report template if offline. |
| 50 | +* **Octokit Rate-Limit Resilience**: Ingestion scanner tracks GitHub API rate-limit headers and triggers automatic backoffs before retrying large codebases. |
| 51 | +* **Redis Cache Fallback**: If Redis cache is offline, indexers gracefully fall back to in-memory maps, avoiding application crashes. |
| 52 | +* **Database optional Demo Mode**: Web dashboard boots instantly into Demo Mode utilizing 3 built-in indexed workspaces (TypeScript Payments, Rust Ledger, Python FastAPI) without local PostgreSQL or Redis database setup. |
| 53 | + |
| 54 | +--- |
| 55 | + |
| 56 | +### 📦 Production Deployment Packaging |
| 57 | + |
| 58 | +* **Backend Dockerfile** (`apps/api/Dockerfile`): Multi-stage node Alpine builder compiling TypeScript, running migrations, and caching Prisma client binaries. |
| 59 | +* **Frontend Dockerfile** (`apps/web/Dockerfile`): Builds Vite static production bundles and mounts them into a lightweight Alpine Nginx server. |
| 60 | +* **Nginx Configuration** (`apps/web/nginx.conf`): SPA routing rules and optimized cache-control headers. |
| 61 | +* **Production Orchestration** (`docker-compose.prod.yml`): Spin up Postgres database, Redis cache, API container, and Web Nginx server in a single launch command. |
0 commit comments