check-cross-layer

📁 mindfold-ai/trellis 📅 3 days ago
1
总安装量
1
周安装量
#44557
全站排名
安装命令
npx skills add https://github.com/mindfold-ai/trellis --skill check-cross-layer

Agent 安装分布

mcpjam 1
claude-code 1
replit 1
junie 1
windsurf 1
zencoder 1

Skill 文档

Cross-Layer Check

Check if your changes considered all dimensions. Most bugs come from “didn’t think of it”, not lack of technical skill.

Note: This is a post-implementation safety net. Ideally, read the Pre-Implementation Checklist before writing code.


Related Documents

Document Purpose Timing
Pre-Implementation Checklist Questions before coding Before writing code
Code Reuse Thinking Guide Pattern recognition During implementation
/trellis:check-cross-layer (this) Verification check After implementation

Execution Steps

1. Identify Change Scope

git status
git diff --name-only

2. Select Applicable Check Dimensions

Based on your change type, execute relevant checks below:


Dimension A: Cross-Layer Data Flow (Required when 3+ layers)

Trigger: Changes involve 3 or more layers

Layer Common Locations
API/Routes routes/, api/, handlers/, controllers/
Service/Business Logic services/, lib/, core/, domain/
Database/Storage db/, models/, repositories/, schema/
UI/Presentation components/, views/, templates/, pages/
Utility utils/, helpers/, common/

Checklist:

  • Read flow: Database -> Service -> API -> UI
  • Write flow: UI -> API -> Service -> Database
  • Types/schemas correctly passed between layers?
  • Errors properly propagated to caller?
  • Loading/pending states handled at each layer?

Detailed Guide: .trellis/spec/guides/cross-layer-thinking-guide.md


Dimension B: Code Reuse (Required when modifying constants/config)

Trigger:

  • Modifying UI constants (label, icon, color)
  • Modifying any hardcoded value
  • Seeing similar code in multiple places
  • Creating a new utility/helper function
  • Just finished batch modifications across files

Checklist:

  • Search first: How many places define this value?
    # Search in source files (adjust extensions for your project)
    grep -r "value-to-change" src/
    
  • If 2+ places define same value -> Should extract to shared constant
  • After modification, all usage sites updated?
  • If creating utility: Does similar utility already exist?

Detailed Guide: .trellis/spec/guides/code-reuse-thinking-guide.md


Dimension B2: New Utility Functions

Trigger: About to create a new utility/helper function

Checklist:

  • Search for existing similar utilities first
    grep -r "functionNamePattern" src/
    
  • If similar exists, can you extend it instead?
  • If creating new, is it in the right location (shared vs domain-specific)?

Dimension B3: After Batch Modifications

Trigger: Just modified similar patterns in multiple files

Checklist:

  • Did you check ALL files with similar patterns?
    grep -r "patternYouChanged" src/
    
  • Any files missed that should also be updated?
  • Should this pattern be abstracted to prevent future duplication?

Dimension C: Import/Dependency Paths (Required when creating new files)

Trigger: Creating new source files

Checklist:

  • Using correct import paths (relative vs absolute)?
  • No circular dependencies?
  • Consistent with project’s module organization?

Dimension D: Same-Layer Consistency

Trigger:

  • Modifying display logic or formatting
  • Same domain concept used in multiple places

Checklist:

  • Search for other places using same concept
    grep -r "ConceptName" src/
    
  • Are these usages consistent?
  • Should they share configuration/constants?

Common Issues Quick Reference

Issue Root Cause Prevention
Changed one place, missed others Didn’t search impact scope grep before changing
Data lost at some layer Didn’t check data flow Trace data source to destination
Type/schema mismatch Cross-layer types inconsistent Use shared type definitions
UI/output inconsistent Same concept in multiple places Extract shared constants
Similar utility exists Didn’t search first Search before creating
Batch fix incomplete Didn’t verify all occurrences grep after fixing

Output

Report:

  1. Which dimensions your changes involve
  2. Check results for each dimension
  3. Issues found and fix suggestions