Skip to content

Cross References

Saros Industries edited this page Jun 28, 2025 · 1 revision

πŸ”— Cross-Reference System

The Cross-Reference System creates intelligent links between different parts of your project, maintaining traceability and relationships across requirements, code, documentation, and issues.

🎯 What are Cross-References?

Cross-references are smart links that connect related elements:

  • Requirements to implementation
  • Issues to fixes
  • Documentation to code
  • Patterns to usage

Without cross-references:

  • 🚫 Lost traceability
  • 🚫 Orphaned documentation
  • 🚫 Unclear relationships
  • 🚫 Difficult navigation

πŸ“ Cross-Reference Notation

Basic Syntax

[↗️σₙ:Xα΅’]

Components:

  • ↗️ = Cross-reference indicator
  • Οƒβ‚™ = Memory file (σ₁-σ₆)
  • Xα΅’ = Item index (R₁, Fβ‚‚, etc.)

Examples

[↗️σ₁:R₃]    // Requirement 3 in projectbrief.md
[↗️σ₂:P₁]    // Pattern 1 in systemPatterns.md
[↗️σ₅:I₇]    // Issue 7 in progress.md

🎨 Cross-Reference Types

1. Simple References

Link to a specific item:

This feature implements [↗️σ₁:R₃] which requires user authentication.

2. Context-Enhanced References

Include context information:

[↗️σ₁:R₃|Γ₃:validateUser()]

Links requirement R₃ specifically to the validateUser() function.

3. Multi-References

Reference multiple related items:

This addresses [↗️σ₅:Iβ‚‚], [↗️σ₅:Iβ‚…], and [↗️σ₅:I₇].

4. Protection References

Combine with protection markers:

[↗️σ₆:P₃|Ψ₁] - Protected region 3, PROTECTED level

5. Contextual References

Direct context without memory file:

[Γ₃:AuthService] - Reference to AuthService code
[Γ₁:config.json] - Reference to config file

πŸ“‹ Index Naming Convention

Standard Prefixes

Prefix Meaning Example
R Requirement R₁, Rβ‚‚, R₃
F Feature F₁, Fβ‚‚, F₃
P Pattern/Protected P₁, Pβ‚‚, P₃
I Issue I₁, Iβ‚‚, I₃
M Milestone M₁, Mβ‚‚, M₃
D Decision D₁, Dβ‚‚, D₃
T Task T₁, Tβ‚‚, T₃
C Criteria C₁, Cβ‚‚, C₃

Memory File Mapping

σ₁ (projectbrief.md): R, C, constraints
Οƒβ‚‚ (systemPatterns.md): P, D, components  
σ₃ (techContext.md): stack, env, deps
Οƒβ‚„ (activeContext.md): current, next, context
Οƒβ‚… (progress.md): F, I, M, metrics
σ₆ (protection.md): P, history, violations

πŸ”„ Cross-Reference Patterns

Requirement Traceability

## Feature: User Authentication

Implements [↗️σ₁:R₃] (User must authenticate before accessing protected resources)

### Implementation Details
- Login endpoint: [↗️σ₁:R₃|Γ₃:loginUser()]
- Session management: [↗️σ₁:R₃|Γ₃:SessionManager]
- Security: [↗️σ₂:Pβ‚…] (JWT pattern)

Issue Resolution

## Bug Fix: Login Timeout

Fixes [↗️σ₅:I₁₂] (Users randomly logged out)

### Root Cause
Session timeout was hardcoded [↗️σ₃:config] instead of using environment variable.

### Solution
Implemented configurable timeout following [↗️σ₂:D₃] (configuration pattern).

Pattern Implementation

## Repository Pattern Implementation

Following [↗️σ₂:Pβ‚‚] (Repository Pattern):

```javascript
// Implementation of [↗️σ₂:Pβ‚‚]
class UserRepository {
    // Methods as specified in [↗️σ₂:Pβ‚‚|components]
}

### Decision Documentation
```markdown
## Architecture Decision

Per [↗️σ₂:D₁] (Microservices over Monolith):

### Rationale
- Scalability requirements [↗️σ₁:Rβ‚ˆ]
- Team structure [↗️σ₁:constraints]
- Performance goals [↗️σ₁:Cβ‚‚]

🎯 Advanced Cross-References

Bidirectional References

Create two-way links:

// In implementation file
// Implements [↗️σ₁:R₃]

// In requirements file  
[R₃] User authentication - Implemented in [↗️σ₄:auth.service.js]

Chain References

Link through multiple documents:

[↗️σ₁:R₃] β†’ [↗️σ₂:Pβ‚…] β†’ [↗️σ₅:F₇]
(Requirement β†’ Pattern β†’ Feature)

Conditional References

Context-dependent links:

If using SQL: See [↗️σ₂:P₃|SQL]
If using NoSQL: See [↗️σ₂:P₃|NoSQL]

Version References

Track changes over time:

Original: [↗️σ₂:D₁|v1.0]
Updated: [↗️σ₂:D₁|v2.0] per [↗️σ₅:I₂₃]

πŸ’‘ Cross-Reference Best Practices

1. Reference at Creation

Add cross-references when creating items:

## [R₁₀] New Requirement
Related to [↗️σ₁:R₃] and [↗️σ₁:R₇]
Addresses [↗️σ₅:I₁₅]

2. Maintain Bidirectionality

Always create reverse references:

// In source
Implements [↗️σ₁:Rβ‚…]

// In target
[Rβ‚…] Implemented by [↗️σ₄:feature.js]

3. Use Descriptive Context

Add context to clarify references:

// Less clear
See [↗️σ₂:P₃]

// More clear
Following [↗️σ₂:P₃] (Repository Pattern) for data access

4. Group Related References

Organize multiple references:

### Related Items
- Requirements: [↗️σ₁:R₃], [↗️σ₁:Rβ‚…], [↗️σ₁:Rβ‚ˆ]
- Patterns: [↗️σ₂:P₁], [↗️σ₂:Pβ‚„]
- Issues: [↗️σ₅:Iβ‚‚], [↗️σ₅:I₇]

5. Verify References

Regularly check reference validity:

## Reference Audit
- [↗️σ₁:R₃] βœ“ Valid
- [↗️σ₁:Rβ‚„] ⚠️ Deprecated, see [↗️σ₁:R₁₂]
- [↗️σ₂:P₇] ❌ Not found

πŸ” Cross-Reference Usage

In Code Comments

/**
 * User Authentication Service
 * Implements [↗️σ₁:R₃] (User Authentication)
 * Follows [↗️σ₂:Pβ‚…] (JWT Pattern)
 * Addresses [↗️σ₅:I₁₂] (Session timeout issue)
 */
class AuthService {
    // Implementation per [↗️σ₁:R₃|specifications]
}

In Documentation

# API Documentation

## POST /api/auth/login
Implements [↗️σ₁:R₃] with security measures from [↗️σ₂:Dβ‚ˆ].

### Request
Per [↗️σ₁:R₃|interface], accepts:
- email: string
- password: string

In Test Files

describe('Authentication Tests [↗️σ₁:R₃]', () => {
    it('should validate credentials per [↗️σ₁:R₃|validation]', () => {
        // Test implementation
    });
    
    it('should handle edge case [↗️σ₅:I₁₅]', () => {
        // Regression test for issue
    });
});

In Commit Messages

git commit -m "feat: implement user auth [↗️σ₁:R₃]

- Add JWT authentication per [↗️σ₂:Pβ‚…]
- Fix session timeout [↗️σ₅:I₁₂]
- Update tests for [↗️σ₁:C₃]"

πŸ“Š Cross-Reference Management

Reference Tracking

Maintain reference index:

## Cross-Reference Index

### Requirements β†’ Implementation
- [R₁] β†’ auth.service.js, login.component.ts
- [Rβ‚‚] β†’ user.model.js, validation.js
- [R₃] β†’ jwt.utils.js, middleware/auth.js

### Issues β†’ Fixes  
- [I₁] β†’ commit:abc123, PR#42
- [Iβ‚‚] β†’ commit:def456, PR#45

Reference Validation

Check reference integrity:

// Reference validator
function validateReferences() {
    const references = findAllReferences();
    references.forEach(ref => {
        if (!targetExists(ref)) {
            console.warn(`Broken reference: ${ref}`);
        }
    });
}

Reference Refactoring

Update references when restructuring:

## Reference Migration

### Old Structure
[↗️σ₂:P₃] β†’ Repository Pattern

### New Structure  
[↗️σ₂:P₃] β†’ DEPRECATED, see [↗️σ₂:P₁₂]
[↗️σ₂:P₁₂] β†’ Updated Repository Pattern (v2)

🚨 Common Cross-Reference Issues

Broken References

Problem: Target doesn't exist Solution: Regular validation, update or remove

Circular References

Problem: A→B→C→A loops Solution: Identify hierarchy, break cycles

Ambiguous References

Problem: Unclear what reference points to Solution: Add context information

Outdated References

Problem: Points to old version Solution: Version tracking, migration notes

πŸŽ“ Cross-Reference Examples

Example 1: Feature Development

## Feature: Payment Processing

### Requirements
Implements [↗️σ₁:R₁₅] (Process payments)
Related to [↗️σ₁:R₁₆] (Payment history)

### Design
Following patterns:
- [↗️σ₂:Pβ‚ˆ] (Strategy pattern for payment methods)
- [↗️σ₂:P₉] (Observer pattern for notifications)

### Implementation
- Service: [Γ₃:PaymentService]
- Controller: [Γ₃:PaymentController]
- Tests: [Γ₁:tests/payment.test.js]

### Issues Addressed
- [↗️σ₅:I₂₃] (Timeout on large payments)
- [↗️σ₅:Iβ‚‚β‚…] (Currency conversion errors)

Example 2: Bug Report

## [Iβ‚„β‚…] Login fails with special characters

### Description
Users with @ in password cannot login

### Related
- Requirement: [↗️σ₁:R₃|validation]
- Pattern deviation: [↗️σ₂:Pβ‚…|security]
- Similar issues: [↗️σ₅:I₁₂], [↗️σ₅:I₂₃]

### Fix
See PR#123 implementing [↗️σ₂:D₁₅] (input sanitization)

Example 3: Architecture Decision

## [Dβ‚‚β‚€] Switch to Event-Driven Architecture

### Rationale
- Performance requirement [↗️σ₁:Cβ‚‚] not met
- Scalability needs [↗️σ₁:Rβ‚‚β‚‚] increasing
- Current architecture [↗️σ₂:D₁] limitations

### Impact
- Deprecates [↗️σ₂:P₁-Pβ‚…]
- Introduces [↗️σ₂:Pβ‚‚β‚€-Pβ‚‚β‚…]
- Addresses [↗️σ₅:I₃₀], [↗️σ₅:I₃₁], [↗️σ₅:I₃₅]

πŸ“š Related Topics


← Permission System | Home | Backup System β†’

πŸš€ Getting Started


🧠 Core Concepts


⚑ Features


πŸ“– Guides


πŸ“‹ Reference


πŸ”Œ Advanced

MCP Integration

BMAD Enterprise


πŸ”§ Troubleshooting

Quick Navigation

🚨 Emergency Procedures

πŸ“‹ Common Issues

Installation & Setup

  • Installation Issues
    • Node.js Version Compatibility
    • Package Installation Failures
    • Framework Dependencies Missing
    • Database Connection Issues
    • Port Conflicts
    • Environment Setup Issues
    • Build and Development Issues
    • Framework CLI Issues

Configuration & Runtime

  • Configuration & Runtime Issues
    • Framework Configuration Problems
    • Runtime Performance Issues
    • Module Loading and Plugin Issues
    • Database and Storage Issues
    • Memory Leaks and High Memory Usage
    • High CPU Usage

BMAD Module

  • BMAD Module Issues
    • BMAD Module Initialization Problems
    • Business Model Canvas Issues
    • Stakeholder Management Issues
    • Analytics and Reporting Issues
    • Performance Optimization

Database & API

  • Database & API Issues
    • Database Connection Problems
    • Database Migration Issues
    • API Performance and Reliability Issues
    • Data Consistency Issues
    • Transaction Problems

Performance & Memory

Security & Authentication

  • Security & Authentication Issues
    • Authentication Failures
    • Authorization Problems
    • JWT Token Issues
    • Session Management
    • CORS and Security Headers
    • SSL/TLS Configuration

Deployment & Production

  • Deployment & Production Issues
    • Production Deployment Failures
    • Environment Configuration
    • Load Balancing Issues
    • Monitoring and Logging
    • Backup and Recovery

Information to Gather

When reporting issues, please include:

  • Framework version (npm list @cursoriper/core)
  • Node.js version (node --version)
  • Operating system and version
  • Error messages and stack traces
  • Steps to reproduce the issue
  • Configuration files (sanitized)
  • Recent changes or deployments

Tech Docs & Suport


πŸ“ž Support & Community


πŸ“‹ Release Notes

Last Updated: June 28, 2025
Framework Version: CursorRIPER.sigma v1.0+

For the original verbose framework, see CursorRIPER

← Back to Home

Clone this wiki locally