Ús de la IA en la programació i comentaris al codi. Documentació del repositori actualitzada (README, CHANGELOG, CONTRIBUTING).

Mantenir al dia la documentació d’un projecte de codi obert sol fer força mandra, però és fonamental perquè els companys i professors entengui què està passant. Per sort, les eines d’intel·ligència artificial ens faciliten molt aquesta tasca.

Aquest fitxer serveix per registrar de forma ordenada totes les modificacions, millores i correccions que es van fent al programari. Mantenir-lo al dia ajuda que els companys sàpiguen exactament què canvia a cada versió.

  • Afegit: Per a les funcions noves.
  • Canviat: Quan es modifica un comportament que ja existia.
  • Depreciat: Per avisar sobre característiques que s’eliminaran aviat.
  • Eliminat: Quan es treu una funció del tot.
  • Corregit: Per a arranjaments d’errors o errors.
  • Seguretat: En cas que se solucionin vulnerabilitats.
# 📌Registre de Canvis
- Repte: 1.3
- Grup: Equip 7
  
# 📋 Registre de Canvis - Xatbot LAN Party

Tots els canvis notables en aquest projecte es documentaran en aquest fitxer.

## [0.1.0] - 2026-03-16
### Afegit
- Creat el repositori a GitHub Classroom.
- Configuració inicial de l'entorn a Google Colab.
- Connexió amb Google AI Studio mitjançant API Key.
- Creació dels fitxers de documentació base (README, CHANGELOG, CONTRIBUTING).

### Seguretat
- Implementació de `google.colab.userdata` per gestionar la clau API de forma segura (Secret 🔑).

## [1.0.0] - 2026-03-16
### ⚠️ Canvi Major (Pivot de Projecte)
- **Reorientació total del bot:** S'ha eliminat la funcionalitat d'entrenador físic i s'ha transformat en l'**Assistent Oficial de la LAN Party EcoTech 2026**.
- **Nova Identitat:** Configuració de les "System Instructions" per dotar el bot d'un perfil tècnic de SMX i coneixement profund de l'esdeveniment.

### 📍 Actualització de Dades Crítiques
- **Ubicació:** S'ha fixat la localització oficial a **Els Costals (Castellbisbal)**.
- **Horaris oficials:** S'han programat les dates reals: Inici el **10 d'abril a les 18:00h** i tancament el **12 d'abril a les 18:00h**.

### 🛠️ Millores Tècniques
- **Implementació de l'API de Gemini:** Migració del codi base a la llibreria `google-genai` per a una gestió de xat més robusta.
- **Seguretat:** Integració de `userdata.get` per a la gestió de la clau API a Google Colab (evitant l'exposició de claus privades al codi).
- **Iteració amb IA:** S'ha utilitzat una "Gem" personalitzada per refinar la lògica de respostes i assegurar un to professional.

## [1.1.0] - 2026-03-16

### 📝 Afegit (Documentació i Flux de Treball)
- **Creació del fitxer `CONTRIBUTING.md`:** S'ha establert la guia oficial de col·laboració per a l'equip de desenvolupament (Ali, Jan i Edgar.B).
- **Regles d'Or Tècniques:** S'han documentat les normatives crítiques per als col·laboradors: obligatorietat de protegir la API Key (ús de secrets de Colab), respecte absolut al context de la LAN Party (per evitar al·lucinacions de la IA) i l'estàndard professional de *commits*.
- **Workflow d'Equip:** S'ha definit el procés obligatori de revisió de codi a Google Colab i la centralització d'evidències al portafolis d'equip abans de donar qualsevol tasca per tancada.

Idea per treballar amb la IA: Pots passar-li l’historial dels teus últims commits o un llistat de canvis en brut i demanar-li que te’ls organitzi i redacti seguint aquest format net.

És la carta de presentació del teu repositori. És el primer que veu qualsevol que entra al projecte, així que ha d’explicar de manera molt clara què fa el codi, com s’instal·la i com es fa servir.

  • Títol i descripció curta: Què és el projecte i per a què serveix.
  • Instal·lació: Les ordres o passos necessaris per posar-lo en marxa.
  • Exemples dús: Codi ràpid o captures que mostrin com funciona.
  • Tecnologies: Un llistat de les eines o llenguatges utilitzats.
# 🤖 Projecte Xatbot - LAN Party EcoTech

Aquest repositori conté el desenvolupament del xatbot d'intel·ligència artificial per a la **LAN Party EcoTech**, creat dins del Repte 1.3 del cicle SMX. L'objectiu d'aquest xatbot és resoldre dubtes dels participants sobre l'esdeveniment, la normativa i el suport tècnic.

## 🛠️ Entorn de Treball
Per a la realització d'aquest projecte, hem configurat un entorn basat en:
* **Google Colab:** Per a l'execució i desenvolupament del codi Python.
* **Google AI Studio (Gemini API):** Com a motor d'intel·ligència artificial.
* **GitHub:** Per al control de versions i el treball col·laboratiu en equip.

## 👥 Membres de l'Equip
* **[Ali Hassan]** 
* **[Jan López Jiménez]** 
* **[Edgar Bonet Pardo]** 

## 🚀 Com funciona
El xatbot utilitza un model de llenguatge gran (LLM) configurat amb instruccions de sistema específiques per a la nostra LAN Party. Hem implementat mesures de seguretat mitjançant l'ús de `userdata` de Colab per protegir les claus d'API, seguint les bones pràctiques de programació.

## 📂 Estructura del Repositori
* `notebooks/`: Conté els fitxers .ipynb de Google Colab.
* `docs/`: Documentació addicional i FAQs en format JSON.
* `README.md`: Informació general del projecte (aquest fitxer).
* `CHANGELOG.md`: Registre de canvis i evolució del projecte.

## 🤖 Ús de la IA en el Projecte
Aquest repositori s'ha gestionat utilitzant **Gemini Pro** com a copilot de programació i documentació:
- **Codi:** Generació d'instruccions de sistema i depuració d'errors de l'API.
- **Documentació:** Organització del CHANGELOG i el README seguint estàndards professionals de versionat.
- **Iteració:** S'han realitzat múltiples consultes per ajustar el to de l'assistent a la ubicació real (Castellbisbal).

Idea per treballar amb l’IA: Si passeu el vostre fitxer principal de codi o l’estructura de carpetes a l’IA, podeu redactar un esborrany del README amb les instruccions d’instal·lació i els exemples d’ús ja estructurats.

Si vols que altres persones col·laborin al teu codi, necessites unes regles del joc clares. Aquest fitxer explica els passos que ha de seguir qualsevol que vulgui enviar una millora, reportar una fallada o proposar una idea.

  • Com reportar errors: Quina informació aportar (passos per reproduir-ho, sistema operatiu, etc.).
  • Estil de codi: Quines normes estètiques o de format segueix el projecte perquè tot el codi es vegi uniforme.
  • Procés de lliurament: Com obrir una Pull Request, com anomenar les branques i què revisar abans d’enviar la feina.
# 🤝 Guia de Contribució i Col·laboració de l'Equip

Aquest document descriu com ens organitzem, quins rols tenim en el desenvolupament del xatbot i quines són les regles tècniques per afegir-hi codi nou.

## 👥 Membres de l'Equip
- **[Ali Hassan]**
- **[Edgar Bonet Pardo]**
- **[Jan López Jiménez]**

## 🛠️ Flux de treball de l'Equip
1. Tota la feina es guarda al repositori compartit de GitHub.
2. Abans de donar una tasca per acabada, un altre membre de l'equip ha de revisar que el codi al Google Colab funcioni correctament.
3. Les imatges i evidències es pugen de forma centralitzada al portafolis d'equip.

---

## ⚠️ Regles d'Or per Modificar el Codi (Important)
Per garantir que l'Assistent de la LAN Party EcoTech funcioni sense problemes i mantenir la ciberseguretat del projecte, tots els membres han de complir això:

1. **🔒 Seguretat (Cap API Key al codi):** Està totalment prohibit escriure la clau de Gemini directament al codi font (*hardcoding*). Si fas proves, assegura't d'utilitzar sempre els secrets de Colab: `userdata.get("GOOGLE_API_KEY")`.
2. **📍 Respectar el Context Oficial:** Si modifiques les `system_instructions`, no alteris les dades crítiques de l'esdeveniment (Ubicació: Els Costals, Horaris: 10-12 d'abril) ni la normativa de "residu zero". Això evita que la IA pateixi al·lucinacions i doni informació falsa als assistents.
3. **🤖 Ús de la IA Documentat:** Si utilitzeu Gemini com a copilot per afegir noves funcions al xatbot, deixeu un comentari al codi (`#`) explicant què fa aquella línia. El codi generat per IA sempre ha de ser revisat manualment abans de pujar-lo a GitHub.
4. **📝 Estàndard de Commits:** Quan pugeu canvis a GitHub, utilitzeu missatges descriptius per mantenir la traçabilitat:
   - `feat:` per a noves funcions (ex: `feat: afegit suport per a preguntes de DHCP`)
   - `fix:` per a solucionar errors (ex: `fix: resolt error amb les majúscules`)
   - `docs:` per a documentació (ex: `docs: actualitzat el README`)

Idea per treballar amb la IA: Pots explicar-li a la IA a grans trets com t’agrada treballar al teu projecte perquè ella redacti una guia de contribució clara, amable i fàcil de seguir per als nouvinguts.

La documentació és la columna vertebral de qualsevol projecte col·laboratiu, però sovint es deixa en segon pla perquè consumeix molt de temps i esforç. Aquest exercici pràctic neix per demostrar com la intel·ligència artificial es pot convertir en un assistent eficient el dia a dia d’un programador. En delegar la redacció i l’estructuració d’arxius com README, CHANGELOG i CONTRIBUTING en eines d’IA, reduïm dràsticament la càrrega de treball repetitiu. Això no només optimitza el temps de desenvolupament, sinó que assegura que el repositori es mantingui accessible, ordenat i atractiu per a la comunitat des del primer moment, permetent als desenvolupadors concentrar-se en allò que millor saben fer: escriure codi.


Chatbot iFruit Style