~/wiki

Technical Debt Audit Patterns

Confiance : medium
technical-debtcode-reviewarchitecture-auditsenior-reviewmethodologysystematic-analysiscursor-idecodebase-healthengineering-practicesstructured-assessmentexpert-evaluation

Structured methodology for conducting comprehensive technical debt audits of codebases, particularly effective for TypeScript/Next.js applications. Based on senior engineering practices demonstrated in cursor-ide architecture reviews.

Audit Framework Structure

Pre-Audit Context Gathering

  1. Documentation Review - README.md, contributing guides, architecture docs
  2. Configuration Analysis - package.json, tsconfig, framework configs
  3. Schema Understanding - Database models, API contracts, data flows
  4. Dependency Assessment - External integrations and library usage

Systematic Analysis Dimensions

Architecture Assessment

  • Code Organization - Separation of concerns, module boundaries
  • Pattern Consistency - Standardized approaches across the codebase
  • Dependency Management - Import strategies and coupling analysis
  • Performance Patterns - Server/client optimization strategies

Technical Debt Identification

Systematic searching for common debt markers:

TODO|FIXME|XXX|HACK|@ts-expect-error|@ts-ignore|eslint-disable|as any|: any\b

Specific Technology Patterns

For Next.js applications:

  • Rendering Strategy - "use client" usage appropriateness
  • Dynamic Configuration - export const dynamic = "force-dynamic" consistency
  • API Route Patterns - Error handling and authentication consistency
  • Component Architecture - Server/client component separation

Report Structure Template

Positive Elements Section

  • 3-6 concrete architectural strengths
  • Specific file references with line numbers
  • Explanation of why each element represents good practice

Architecture Frictions Section

  • 5-10 prioritized improvement areas
  • Each item includes:
    • Clear description of the issue
    • Affected files and locations
    • Estimated impact (high/medium/low)
    • Estimated effort (high/medium/low)

Technical Debt Section

  • Prioritized list of debt items
  • Search pattern results with counts
  • Classification by severity and urgency

Implementation Best Practices

Review Scope Management

  • Medium Thoroughness - Targeted audit focusing on critical areas
  • Comprehensive Review - Full codebase line-by-line examination
  • Focused Assessment - Specific technology or pattern analysis

File-Level Analysis

  • Large File Detection - Files >500 lines requiring complexity analysis
  • Import Pattern Verification - Consistency across module boundaries
  • Dead Code Identification - Unused exports and imports
  • Cyclomatic Complexity - Function and component complexity metrics

Technology-Specific Patterns

Next.js Applications

  1. Server-First Principle - Minimize client-side JavaScript
  2. Route Organization - App Router patterns and file structure
  3. Data Fetching - Query centralization and caching strategies
  4. Authentication Integration - Consistent auth patterns across routes

Database Integration

  1. Query Organization - Centralized vs distributed query patterns
  2. Schema Consistency - Model relationships and indexing
  3. Error Handling - Database connection and query error management
  4. Performance Patterns - N+1 query detection and optimization

Professional Application

Audit Execution

  1. Readonly Exploration - Non-intrusive codebase examination
  2. Pattern Recognition - Systematic identification of anti-patterns
  3. Context-Aware Analysis - Business requirements influence on architecture
  4. Stakeholder Communication - Clear, actionable feedback for development teams

Quality Metrics

  • Code Consistency - Pattern adherence across modules
  • Maintainability - Ease of future modifications
  • Performance - Runtime and development efficiency
  • Security - Vulnerability identification and mitigation
  • Documentation - Code clarity and external documentation quality

Common Anti-Patterns Detected

Architecture Issues

  • Inconsistent rendering strategies across pages
  • Mixed import patterns for same dependencies
  • Scattered query logic instead of centralized patterns
  • Missing error boundaries and exception handling

Technical Debt Accumulation

  • Temporary fixes marked with TODO comments
  • Type safety bypass through any types
  • ESLint rule disabling without justification
  • Unused code and dependencies

Performance Concerns

  • Unnecessary client-side rendering
  • Heavy database queries in UI components
  • Missing caching strategies
  • Inefficient data fetching patterns

Success Metrics

Immediate Value

  • Clear identification of high-priority technical debt
  • Actionable improvement recommendations
  • Risk assessment for production deployment
  • Development velocity impact analysis

Long-term Benefits

  • Reduced maintenance burden
  • Improved code consistency
  • Enhanced developer experience
  • Better system reliability and performance

This methodology provides a structured approach to technical debt assessment, enabling development teams to make informed decisions about codebase improvements and maintenance priorities.

See also

  • cursor-ide - AI-powered audit tool implementation
  • archipel-kombucha-project - Real-world audit example
  • nextjs-force-dynamic - Specific performance pattern analysis
  • code-review - General review practices and standards