{
    "project_id": "21",
    "sprints": [
        {
            "id": 83,
            "name": "Sprint 8",
            "estimated_start": "2026-06-04",
            "estimated_finish": "2026-06-10",
            "closed": true
        },
        {
            "id": 82,
            "name": "Sprint 7",
            "estimated_start": "2026-05-28",
            "estimated_finish": "2026-06-03",
            "closed": true
        },
        {
            "id": 73,
            "name": "Sprint 6",
            "estimated_start": "2026-05-21",
            "estimated_finish": "2026-05-28",
            "closed": true
        },
        {
            "id": 89,
            "name": "Sprint 7: Production Hardening & Handover",
            "estimated_start": "2026-05-18",
            "estimated_finish": "2026-05-20",
            "closed": true
        },
        {
            "id": 72,
            "name": "Sprint 5",
            "estimated_start": "2026-05-14",
            "estimated_finish": "2026-05-21",
            "closed": true
        },
        {
            "id": 88,
            "name": "Sprint 13",
            "estimated_start": "2026-05-12",
            "estimated_finish": "2026-05-19",
            "closed": true
        },
        {
            "id": 87,
            "name": "Sprint 12",
            "estimated_start": "2026-05-11",
            "estimated_finish": "2026-05-18",
            "closed": true
        },
        {
            "id": 86,
            "name": "Sprint 11",
            "estimated_start": "2026-05-08",
            "estimated_finish": "2026-05-15",
            "closed": true
        },
        {
            "id": 71,
            "name": "Sprint 4",
            "estimated_start": "2026-05-07",
            "estimated_finish": "2026-05-14",
            "closed": true
        },
        {
            "id": 85,
            "name": "Sprint 10",
            "estimated_start": "2026-05-06",
            "estimated_finish": "2026-05-13",
            "closed": true
        },
        {
            "id": 84,
            "name": "Sprint 9",
            "estimated_start": "2026-05-04",
            "estimated_finish": "2026-05-04",
            "closed": true
        },
        {
            "id": 70,
            "name": "Sprint 3",
            "estimated_start": "2026-04-30",
            "estimated_finish": "2026-05-07",
            "closed": true
        },
        {
            "id": 69,
            "name": "Sprint 2",
            "estimated_start": "2026-04-23",
            "estimated_finish": "2026-04-30",
            "closed": true
        },
        {
            "id": 68,
            "name": "Sprint 1",
            "estimated_start": "2026-04-16",
            "estimated_finish": "2026-04-23",
            "closed": true
        }
    ],
    "user_stories": [
        {
            "id": 204,
            "subject": "US-10: Public Git repository with easy cloning support (LocalFoodAI_lanfr144)",
            "status_id": 125,
            "is_closed": false,
            "milestone": 73
        },
        {
            "id": 207,
            "subject": "US-9: 100% local data privacy (no user data leaves the server)",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 206,
            "subject": "US-1: Create an account and log in securely",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 208,
            "subject": "US-2: Get complete nutritional value information on any food",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 209,
            "subject": "US-4: Search for specific nutrient content and get a sortable list of all foods",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 211,
            "subject": "US-5: Store food combinations in named and editable lists",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 212,
            "subject": "US-11: Local hardware boundary containment on Ubuntu 24.04 VM",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 210,
            "subject": "US-3: Get the full nutritional value overview for a given food combination",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 213,
            "subject": "US-7: Freely chat about anything related to nutrition and get competent answers",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 214,
            "subject": "US-6: Get menu proposals based on nutritional value and health constraints",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        },
        {
            "id": 215,
            "subject": "US-8: Anonymous private web search tool (SearXNG) integration",
            "status_id": 125,
            "is_closed": true,
            "milestone": 71
        }
    ],
    "tasks": [
        {
            "id": 435,
            "subject": "Rebuild setup_db.py to allow dynamic Pandas table generation.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 436,
            "subject": "Update ingest_csv.py with to_sql and post-load index generating.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 437,
            "subject": "Create start_batch_ingest.sh wrapper for disconnected execution.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 438,
            "subject": "Configure server .forward mail protocols for centralized admin support.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 439,
            "subject": "Create setup_searxng.sh to install Docker and bind anonymous SearXNG to localhost:8080.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 215
        },
        {
            "id": 440,
            "subject": "Update deploy.sh to include requests connectivity dependency.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 215
        },
        {
            "id": 441,
            "subject": "Rework app.py LLM inference loop to support native Mistral Tool/Function calling integrations.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 215
        },
        {
            "id": 442,
            "subject": "Why: Applying the global CSS architecture is the direct prerequisite to making the visual information actually look premium and readable when the user views the data.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 443,
            "subject": "Why: Building the numerical filtering sliders logically completes the \"Advanced Search\" capabilities explicitly defined by this story.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 209
        },
        {
            "id": 445,
            "subject": "Why: Generating the Pandas calculation logic that mathematically adds up the macros is what delivers the final \"Combined Value Overview\" to the user!",
            "status_id": 104,
            "is_closed": true,
            "user_story": 210
        },
        {
            "id": 446,
            "subject": "Why: The core of this story is storing data, which is entirely solved by creating the explicit relational plates and plate_items MySQL database tables.",
            "status_id": 104,
            "is_closed": true,
            "user_story": 211
        },
        {
            "id": 447,
            "subject": "Implement EAV Mapping Database Architecture",
            "status_id": 104,
            "is_closed": true,
            "user_story": 214
        },
        {
            "id": 448,
            "subject": "Fix Windows Encodings in Pandas Ingestion Engine",
            "status_id": 104,
            "is_closed": true,
            "user_story": 208
        },
        {
            "id": 449,
            "subject": "Build Dynamic 'Medical Profile' CRUD Interface",
            "status_id": 104,
            "is_closed": true,
            "user_story": 214
        },
        {
            "id": 450,
            "subject": "Deploy Clinical Health-Warning Alert Engine",
            "status_id": 104,
            "is_closed": true,
            "user_story": 214
        },
        {
            "id": 451,
            "subject": "Deploy Email Resets and Persistent Query Limits",
            "status_id": 104,
            "is_closed": true,
            "user_story": 214
        },
        {
            "id": 452,
            "subject": "Create unified PDF presentation for review",
            "status_id": 104,
            "is_closed": true,
            "user_story": 214
        },
        {
            "id": 453,
            "subject": "Execute Alembic Database Migration scripting",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 454,
            "subject": "Sanitize Ollama Mistral LLM endpoints on .170",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 455,
            "subject": "Perform Green Recommendation Engine Demo",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 546,
            "subject": "Auto‑generated task (define details)",
            "status_id": 104,
            "is_closed": true,
            "user_story": 204
        },
        {
            "id": 547,
            "subject": "Auto‑generated task (define details)",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 548,
            "subject": "Execute: Zabbix Server Docker Setup",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 549,
            "subject": "Execute: SNMPv3 Integration",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 550,
            "subject": "Execute: Application Component Traps",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 551,
            "subject": "Execute: Clinical Explorer Verification Testing",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 552,
            "subject": "Execute: Zabbix Application Monitoring Checks",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 553,
            "subject": "Execute: Zabbix Email Integration",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 554,
            "subject": "Execute: Zabbix Live Alert Testing",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        },
        {
            "id": 555,
            "subject": "Execute: Server Backup Procedures",
            "status_id": 104,
            "is_closed": true,
            "user_story": 212
        }
    ]
}