ryer.io

AI Catalog List Wrapper: Centralized vs Duplicated Solution

TL;DR

  • Compared two implementation approaches via git diff –stat HEAD
  • Centralized solution: introduces a shared ai_catalog_list_wrapper.vue component, touches 8 files with 195 insertions and 104 deletions
  • Duplicated solution: repeats logic across ai_catalog_nav_tabs.vue, ai_catalog_agents.vue, ai_catalog_flows.vue and duo_agents_platform pages, touches 8 files with 134 insertions and 13 deletions
  • Centralized approach makes larger changes to shared components while duplicated approach spreads smaller changes across more individual files

Comparing diff stats for two solutions

I ran git diff –stat HEAD to compare a centralized solution against a duplicated solution for the AI catalog components. The centralized solution adds a new ai_catalog_list_wrapper.vue and modifies ai_catalog_nav_tabs.vue, ai_catalog_agents.vue, and ai_catalog_flows.vue along with their specs, for a total of 8 files changed, 195 insertions, and 104 deletions. The duplicated solution instead makes changes directly in ai_catalog_nav_tabs.vue, ai_catalog_agents.vue, and ai_catalog_flows.vue, and also touches ai_agents_index.vue and ai_flows_index.vue under duo_agents_platform, along with their specs, for a total of 8 files changed, 134 insertions, and 13 deletions.