Skip to content

Instantly share code, notes, and snippets.

@LarryEitel
Last active December 16, 2024 16:55
Show Gist options
  • Select an option

  • Save LarryEitel/c12530cb2b573ece913264420508d462 to your computer and use it in GitHub Desktop.

Select an option

Save LarryEitel/c12530cb2b573ece913264420508d462 to your computer and use it in GitHub Desktop.
.cursorrules for a svelte mapbase project that heavily uses plantuml
# .cursorrules for a svelte mapbase project that heavily uses plantuml
# Inspired by: https://www.youtube.com/watch?v=aG-utUqVrb0
context:
paths:
- prompts/_uml/**/*.puml
- prompts/_uml/**/*.md
priorities:
- prompts/_uml/common/stereotypes.puml
- prompts/_uml/common/actors.puml
- prompts/_uml/README.md
- prompts/_uml/v2/docs/**/*.md
- prompts/_uml/v3/docs/**/*.md
validation:
diagrams:
- prompts/_uml/v2/docs/architecture/*.puml
- prompts/_uml/v2/docs/api/*.puml
rules:
- paths_must_exist
- relationships_must_be_valid
- versions_must_match
- components_must_not_conflict_with_actors
- migrations_must_be_documented
- new_features_must_have_uml
- changes_must_update_uml
- uml_must_match_implementation
- actors_must_be_consistent
- stereotypes_must_be_valid
change_impact_analysis:
required_checks:
- existing_behavior_preserved
- minimal_changes_only
- breaking_changes_documented
- diagram_impacts_listed
- migration_steps_required
impact_documentation:
changes_must_document:
- affected_components
- behavior_changes
- breaking_changes
- required_migrations
- rollback_steps
behavioral_preservation:
verify:
- existing_tests_pass
- existing_flows_maintained
- existing_apis_compatible
- existing_state_preserved
- existing_events_maintained
change_constraints:
prevent:
- unnecessary_refactoring
- scope_creep
- undocumented_side_effects
- implicit_api_changes
- silent_behavior_changes
require_approval:
- breaking_changes
- api_modifications
- schema_changes
- event_changes
- state_changes
documentation_updates:
on_change_request:
analyze:
- affected_diagrams
- impacted_components
- relationship_changes
- behavior_modifications
- affected_user_stories
- impacted_flows
generate:
- change_impact_report
- required_updates_list
- breaking_changes_alert
- migration_requirements
- documentation_update_checklist
- diagram_update_requirements
block_if:
- undocumented_impacts
- unreviewed_breaking_changes
- missing_migration_docs
- incomplete_impact_analysis
- diagrams_not_updated
- docs_not_synced
- stories_not_updated
required_updates:
diagrams:
- update_affected_components
- sync_relationships
- maintain_consistency
- version_control
documentation:
- update_user_stories
- revise_flows
- sync_glossary
- maintain_api_docs
validation:
- verify_diagram_updates
- check_doc_consistency
- test_story_coverage
- confirm_completeness
change_workflow:
pre_change:
- identify_affected_docs
- list_required_updates
- create_update_checklist
during_change:
- update_diagrams_in_parallel
- maintain_doc_consistency
- track_changes
post_change:
- verify_all_docs_updated
- validate_consistency
- confirm_completeness
enforcement:
prevent_if:
- documentation_outdated
- diagrams_inconsistent
- stories_incomplete
- flows_not_updated
require:
- documentation_review
- diagram_validation
- story_updates
- flow_verification
reporting:
change_analysis:
- list_affected_components
- show_behavior_changes
- highlight_breaking_changes
- display_required_updates
- suggest_minimal_changes
warnings:
- potential_behavior_changes
- implicit_dependencies
- ripple_effects
- compatibility_issues
- migration_needs
documentation_checks:
architecture:
required_diagrams:
- system_overview.puml
- auth_flow.puml
- error_handling.puml
- caching_strategy.puml
- user_interactions.puml
- realtime_updates.puml
- background_tasks.puml
- offline_support.puml
- database_schema.puml
- api_contracts.puml
- state_management.puml
- external_services.puml
validation_points:
- component_names: "Check component naming against actors.puml"
- relationships: "Verify all component relationships are documented"
- stereotypes: "Ensure correct stereotype usage"
- versions: "Track version changes"
- migrations: "Document migration paths"
user_interactions:
required_stories:
- primary_flows
- system_responses
- state_transitions
- data_persistence
- realtime_patterns
- error_scenarios
- edge_cases
- multi_user_flows
story_validation:
format:
- title_exists
- actor_identified
- actions_detailed
- responses_documented
- edge_cases_listed
components:
- preconditions_defined
- user_actions_listed
- system_responses_detailed
- state_changes_tracked
- data_persistence_explained
- realtime_updates_documented
- error_handling_specified
- success_criteria_defined
interaction_analysis:
required_documentation:
- user_triggers
- system_responses
- state_changes
- data_flows
- feedback_points
state_management:
track:
- data_state_changes
- sync_flows
- online_offline_transitions
- conflict_resolution
error_handling:
document:
- error_states
- recovery_paths
- user_notifications
- fallback_behaviors
multi_user:
detail:
- realtime_scenarios
- concurrent_interactions
- conflict_resolution
- sync_patterns
validation_rules:
story_requirements:
- user_perspective_first
- clear_system_responses
- online_offline_coverage
- realtime_patterns_documented
- multi_user_scenarios_included
- error_cases_mapped
format_requirements:
- markdown_format
- consistent_structure
- clear_action_response
- documented_state_flows
reporting:
interaction_coverage:
- missing_flows
- incomplete_scenarios
- undocumented_states
- missing_error_cases
quality_checks:
- story_completeness
- interaction_clarity
- state_coverage
- error_handling_coverage
change_management:
on_feature_add:
- update_relevant_diagrams
- validate_actor_conflicts
- check_relationship_consistency
on_feature_modify:
- update_affected_diagrams
- validate_changes
- document_migration_steps
on_feature_remove:
- update_diagrams
- document_deprecation
- validate_dependencies
enforcement:
block_on:
- missing_required_diagrams
- invalid_component_names
- undocumented_features
- inconsistent_relationships
expertise:
reverse_engineering:
- analyze_existing_codebase
- document_current_architecture
- identify_component_relationships
- map_data_flows
- capture_business_logic
documentation:
components:
- structure_diagrams
- package_diagrams
- component_diagrams
- class_diagrams
behavior:
- sequence_diagrams
- activity_diagrams
- state_diagrams
data:
- entity_relationships
- data_flow_diagrams
- storage_patterns
migration:
analysis:
- version_comparison
- breaking_changes
- dependency_updates
- api_changes
planning:
- migration_sequence
- rollback_strategy
- feature_parity
- data_migration
execution:
- step_by_step_guide
- validation_checkpoints
- rollout_phases
- monitoring_points
v2:
api:
- prompts/_uml/v2/docs/api/**/*
- prompts/_uml/v2/features/**/sequence.puml
architecture:
- prompts/_uml/v2/docs/architecture/**/*
- prompts/_uml/v2/components/**/*
features:
- prompts/_uml/v2/features/**/*
v3:
api:
- prompts/_uml/v3/docs/api/**/*
- prompts/_uml/v3/features/**/sequence.puml
architecture:
- prompts/_uml/v3/docs/architecture/**/*
- prompts/_uml/v3/components/**/*
features:
- prompts/_uml/v3/features/**/*
migration:
steps:
- analysis: prompts/_uml/migration/analysis/**/*
- planning: prompts/_uml/migration/planning/**/*
- execution: prompts/_uml/migration/execution/**/*
validation:
- checkpoints: prompts/_uml/migration/validation/**/*
- tests: prompts/_uml/migration/tests/**/*
rollback:
- strategies: prompts/_uml/migration/rollback/**/*
- procedures: prompts/_uml/migration/procedures/**/*
test_coverage_management:
required_documentation:
diagrams:
- test_coverage.puml
- test_flows.puml
- test_hierarchy.puml
test_types:
unit:
- component_tests
- store_tests
- utility_tests
- hook_tests
integration:
- api_tests
- flow_tests
- sync_tests
e2e:
- user_flows
- offline_scenarios
- realtime_interactions
coverage_requirements:
thresholds:
unit: 85
integration: 80
e2e: 70
overall: 80
critical_paths:
- pin_creation_flow
- group_management
- realtime_sync
- offline_operations
- data_persistence
- state_transitions
change_validation:
on_code_change:
- verify_test_coverage
- update_test_diagrams
- document_test_changes
- validate_critical_paths
prevent_merge_if:
- coverage_decreased
- critical_tests_failing
- test_docs_outdated
- flows_untested
test_documentation:
track:
- test_objectives
- coverage_metrics
- uncovered_areas
- risk_assessment
- test_dependencies
maintain:
- test_strategy_docs
- coverage_reports
- test_flow_diagrams
- gap_analysis
ignore:
- prompts/_uml/**/*.ignore
- prompts/_uml/**/temp/*
relationships:
- type: "implements"
from: "v2/features/*/add/components.puml"
to: "v2/components/app.puml"
validation: "documentation_validation.puml"
- type: "documents"
from: "v2/features/*/add/sequence.puml"
to: "v2/docs/api/README.md"
validation: "documentation_validation.puml"
- type: "migrates"
from: "v2/**/*"
to: "v3/**/*"
validation: "documentation_tracking.puml"
- type: "validates"
from: "migration/validation/**/*"
to: "v3/**/*"
validation: "documentation_validation.puml"
- type: "rollback"
from: "migration/rollback/**/*"
to: "v2/**/*"
validation: "documentation_tracking.puml"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment