generate_taiga_wiki.py 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import os
  2. from datetime import datetime, timedelta
  3. os.makedirs('taiga_wiki', exist_ok=True)
  4. start_date = datetime(2026, 4, 16)
  5. sprints = 8
  6. points_per_sprint = 1000
  7. # 00_Epics.md
  8. with open('taiga_wiki/00_Epics.md', 'w') as f:
  9. f.write("# Project Epics\n\n1. Environment & Infrastructure Setup\n2. Database Schema & User Security\n3. Data Ingestion Pipeline\n4. Advanced Text & Context Search\n5. Local LLM Integration (Ollama)\n6. Streamlit Chat Interface Development\n7. Testing & Refinement\n8. Production Deployment\n")
  10. for i in range(1, sprints + 1):
  11. sprint_start = start_date + timedelta(weeks=i-1)
  12. sprint_end = sprint_start + timedelta(days=6)
  13. sprint_str = f"Sprint_{i}"
  14. file_path = f"taiga_wiki/Sprint_{i}.md"
  15. with open(file_path, 'w') as f:
  16. f.write(f"# Sprint {i}\n\n")
  17. f.write(f"**Sprint Tag**: {sprint_str}\n")
  18. f.write(f"**Story Points**: {points_per_sprint}\n")
  19. f.write(f"**Members**: francois, evegi144\n\n")
  20. # Sprint Planning
  21. f.write(f"## {sprint_start.strftime('%Y/%m/%d')} Planning\n")
  22. if i == 1:
  23. f.write("- [x] Initialize Git Repo and configure AI History context.\n")
  24. f.write("- [x] Setup Taiga Wiki and Backlog generation.\n")
  25. f.write("- [x] Finalize `deploy.sh` and Database Setup (`init.sql`, `setup_db.py`).\n")
  26. f.write("- [x] Data Ingestion Pipeline (`ingest_csv.py`, `convert_datatypes.py`).\n")
  27. f.write("- [x] Build basic Streamlit Base App (`app.py`).\n\n")
  28. else:
  29. f.write("- Planning notes...\n\n")
  30. # Daily Scrums
  31. for d in range(5):
  32. day_date = sprint_start + timedelta(days=d)
  33. f.write(f"### {day_date.strftime('%Y/%m/%d')} Daily Scrum\n")
  34. f.write("- **evegi144**: \n")
  35. if i == 1 and d == 0:
  36. f.write("- **francois**: Set up git, database, and ingestion scripts.\n\n")
  37. else:
  38. f.write("- **francois**: \n\n")
  39. # Sprint Review
  40. f.write(f"## {sprint_end.strftime('%Y/%m/%d')} Review\n")
  41. if i == 1:
  42. f.write("- **Review**: Successfully pushed all foundational files to Git and configured DB schemas.\n\n")
  43. else:
  44. f.write("- Review notes...\n\n")
  45. # Sprint Retrospective
  46. f.write(f"## {sprint_end.strftime('%Y/%m/%d')} Retrospective\n")
  47. if i == 1:
  48. f.write("- **Retrospective**: Good velocity. Environment setup went smoothly.\n\n")
  49. else:
  50. f.write("- Retrospective notes...\n\n")
  51. print("Files generated successfully in taiga_wiki/")