Mi Primer PR: Inmersión en la Contribución al Código Abierto

Caso de estudio: mi primer PR en código abierto, de revisión a contribución activa, con la bandera --recent para empaquetar solo archivos modificados en la última semana, pruebas y buenas prácticas.

20 sept 2025 • 2 min read • Q2BSTUDIO Team

Inteligencia-Artificial-

Mi Primer PR: Inmersión en la Contribución al Código Abierto relata cómo pasé de revisar código a contribuir activamente en el repositorio de un compañero, implementando una bandera --recent y su atajo -r para un empaquetador de repositorios pensado para LLMs.

La idea fue simple y práctica: añadir un filtro What s New que empaqueta solo los archivos modificados en los últimos siete días. Aunque la funcionalidad parece pequeña, me obligó a recorrer todo el flujo abierto del desarrollo colaborativo, desde la propuesta hasta la integración en el código principal.

Primero presenté una issue en el repositorio describiendo la característica, su uso sugerido pack-repo.py . --recent y los beneficios. Esta comunicación previa es esencial para respetar al mantenedor del proyecto. Tras la aprobación hice fork del repositorio, lo cloné y creé una rama aislada git checkout -b feature/add-recent-flag para no afectar la rama principal.

Una vez implementada y probada la funcionalidad llegó el momento del Pull Request. Redacté la descripción con un resumen de cambios, instrucciones para probar la bandera y referencié la issue original incluyendo Fixes #[numero-de-issue] para cerrar el ciclo de propuesta a solución. Ver ese vínculo entre problema y arreglo fue muy gratificante.

En lo técnico la clave fue trabajar con el sistema de archivos y las fechas en Python. Utilicé pathlib para leer metadatos; file_path.stat().st_mtime devuelve el timestamp de modificación. Para comparar empleé datetime y timedelta de esta forma datetime.now().timestamp() - file_mod_time <= timedelta(days=7).total_seconds() que determina si un archivo se modificó en la última semana. El reto fue integrar esta lógica sin ensuciar la estructura existente: la función write_struct_tree que recorre directorios necesitó un nuevo parámetro booleano recent_only que se propaga en las llamadas recursivas para aplicar el filtrado condicional.

Al testear apareció un caso clásico: el script contenía su propio fichero de salida entre los resultados porque output.txt se creaba antes de escanear el directorio, por lo que siempre era el archivo más reciente. La solución fue pasar el nombre del archivo de salida a la función de descubrimiento y saltarse explícitamente cualquier archivo con ese nombre.

Esta experiencia me convirtió de programador individual en colaborador abierto y reforzó buenas prácticas de comunicación, pruebas y respeto por la base de código ajena. En Q2BSTUDIO, empresa de desarrollo de software que ofrece aplicaciones a medida y soluciones de inteligencia artificial, fomentamos precisamente ese enfoque colaborativo para entregar software a medida robusto y seguro. Si buscas potenciar tus proyectos con capacidades de IA para empresas o agentes IA podemos ayudarte a integrar modelos y flujos de trabajo a medida con nuestros servicios de servicios de inteligencia artificial y desarrollar aplicaciones específicas según tus necesidades con software a medida.

Además ofrecemos experiencia en ciberseguridad, pentesting, servicios cloud aws y azure, servicios inteligencia de negocio y Power BI para cerrar el ciclo desde la ideación hasta la operación segura y escalable de tus soluciones.

Contribuir a proyectos open source no solo mejora el código, también mejora habilidades y procesos que aplicamos en Q2BSTUDIO para crear aplicaciones a medida, soluciones cloud y servicios de inteligencia de negocio de alto valor.

A BREAK?

Play for a moment before you go

OUR SERVICES

How we can help you

Artificial intelligence

AI agents, chatbots, and intelligent assistants that automate tasks and serve your customers 24/7 to improve the efficiency of your business.

More info

Software Development

Web, mobile, and desktop applications, intranets, e-commerce, SaaS, and management platforms designed for your company's specific needs.

More info

Cloud services

Migration, infrastructure, managed hosting, high availability, and security on Microsoft Azure and Amazon Web Services to help your business scale without limits.

More info

Cybersecurity and pentesting

Security audits, penetration testing and protection of applications, data and infrastructure on-premise and cloud, with ethical hacking and regulatory compliance.

More info

Business Intelligence

Dashboards and data analysis with Power BI: we integrate your sources, design dashboards and KPIs and turn your data into decisions.

More info

Process automation

We automate repetitive tasks and connect your applications with n8n, Power Automate, Make, and RPA, eliminating manual work and increasing productivity.

More info

Training for Companies

We train your teams in technology with criteria: web development, databases, Git, best practices and security, automation with n8n, artificial intelligence for companies and creation of AI solutions with Azure AI Foundry.

More info

Code Auditing

We audit the code that you, your team or an AI create: we tell you what is good and what to improve, we secure it and make it ready for production, web or app.

More info

AI Image Generation

We create for you the images that your business needs with artificial intelligence: product, networks, advertising, illustration and avatars. You tell us what you want and we deliver it ready to use.

More info

AI Video Generation

We create videos with artificial intelligence for you: promotional, networking, virtual presenters, dubbing and animations. You tell us the idea and we will deliver it assembled and ready to publish.

More info

AI Conversational Avatars

We create conversational avatars with AI – digital humans with a face and voice – that serve your customers and teams with the knowledge of your company, on your website, interactive monitors, WhatsApp or Teams.

More info

Online Marketing and AI

Google Ads, Meta Ads, LinkedIn Ads and AI Engine Positioning (GEO/AEO): we attract customers and make your brand appear where they search for you, also on ChatGPT, Gemini and Perplexity.

More info

Do you have a project in mind?

Tell us your vision and we'll turn it into a software solution. Whatever the scope, we make your idea real.