Backend Release To-Do (Backend Only)
Scope locked to backend (
app/,db/,tests/,docs/).admin/is out of scope for this cycle.
Execution Mode
- Branch baseline:
main - SDLC enforced: Plan → Code → Review → Verify
- Team routing:
- Mido: architecture + planning + reasoning-stage design
- Abdou: review gate for all backend PRs
- Naser: backend pipeline/retrieval implementation
- Hadarat: multilingual I/O handling support
- Mailo: end-to-end verification + release checks
Active Backend Issues
Plan
- [ ] #23 — [Backend][Plan] Release blueprint for robust scrape→ingest→chat pipeline
Scraping + Ingestion Pipeline
- [ ] #24 — [Backend][Pipeline] Robust curriculum scraper with full metadata + checkpoints
- [ ] #25 — [Backend][Data] Persist scraped curriculum metadata to Supabase (idempotent)
- [ ] #26 — [Backend][Ingestion] Orchestrate reference_id handoff from scrape storage
- [ ] #27 — [Backend][Ingestion] Hybrid index + English canonicalization in ingest endpoint
Chat + Retrieval
- [ ] #28 — [Backend][Chat] Language detect/translate in + translate out
- [ ] #29 — [Backend][Retrieval] 75/25 hybrid search with RRF + BM25 fusion
- [ ] #30 — [Backend][Retrieval] User-profile-aware reranking (grade/subject/tier)
- [ ] #31 — [Backend][LLM] Reasoning-model grounded synthesis + safe multilingual output
Verify / Release Readiness
- [ ] #32 — [Backend][Verify] Observability + end-to-end release verification
Delivery Order
-
23 (spec + ADRs)
-
24 + #25 + #26 (scrape-to-ingest chain)
-
27 (hybrid ingestion + English canonicalization)
-
28 + #29 + #30 + #31 (chat quality pipeline)
-
32 (release verification gate)
Definition of Done for This Cycle
- Scraper reliably captures complete curriculum metadata and persists it in Supabase.
- Every scrape record can be ingested through
reference_idhandoff. - Ingestion produces both semantic and full-text artifacts with canonical English content.
- Chat supports multilingual in/out with weighted hybrid retrieval and reranking.
- End-to-end observability + verification checks are green before release.