data-architecture
Installation
SKILL.md
Data Architecture & Persistence Layer
Analyze the project to document database configuration, entity models, data ownership boundaries, repository interfaces, and caching strategies. Generate a Mermaid ER diagram showing entity relationships. Save to .github/modernize/assessment/engines/facts/data-architecture.md.
Input Parameters
workspace-path(optional): Path to the project to analyze (defaults to current directory)
Scope Boundaries — Avoid Redundancy with Other Skills
This skill is part of a set of four complementary assessment skills. To avoid content duplication across their output documents, observe these scope rules:
- Introduction: Write a 1-2 sentence intro focused on the data layer (number of entities, database types, ORM). Do NOT restate the application's overall architecture type, web framework, or API surface — those are covered by other skills.
- Configuration property keys/values (e.g.,
spring.jpa.hibernate.ddl-auto,spring.sql.init.*) are owned by theconfiguration-inventoryskill. In the Database Configuration table, describe the behavior (e.g., "Hibernate does not manage schema; SQL scripts are authoritative") but do NOT list raw property key-value pairs. Referenceconfiguration-inventory.mdfor the full property inventory. - API endpoints and HTTP methods are owned by the
api-service-contractsskill. Do NOT list controller endpoints or HTTP paths. Repository methods are in scope for this skill; controller routes are not. - Business workflow steps and validation rules are owned by the
business-workflowsskill. Do NOT describe multi-step business processes or enumerate validation constraints. When documenting entity relationships (cascade, fetch), focus on the persistence/ORM implications, not the business process flow. - Deployment configurations (Docker Compose, K8s, profiles) are owned by the
configuration-inventoryskill. Mention database profiles only in the Database Configuration table to identify which DB is used per profile — do NOT describe Docker Compose services, K8s manifests, or deployment targets in detail.