This checklist should be updated from actual verification, not assumptions.
- README completed and accurate. Note: rewritten for RAG education, demo flow, setup, limitations, and documentation links.
- Docs reviewed and consistent with implementation. Note: audit report, workshop guide, lab guide, troubleshooting guide, and interview demo guide added.
-
.env.examplefiles present. Note: backend and frontend examples exist; examples contain placeholders only. - No secrets committed in tracked files. Note: inspected tracked files only; local ignored env files may contain real keys.
-
.gitignorepresent and effective for common secrets/artifacts. Note: excludes.env,.env.*,node_modules,.next, caches, build outputs, and virtualenvs. - No generated artifacts intentionally added in this phase. Note: local
node_modulesand.nextare ignored.
- Frontend install works. Note:
npm installcompleted. - Frontend lint works. Note:
npm run lint:webpassed. - Frontend type check works. Note:
npm run typecheck:webpassed. - Frontend build works. Note:
npm run build:webpassed. - Backend dependency install works locally. Note: local
pip install -r apps/api/requirements.txtwas blocked by Python SSL certificate verification against PyPI on this machine. - Backend dependency install works in Docker. Note:
docker compose buildinstalled API dependencies in the Python 3.12 image. - Backend lint works in Docker. Note:
docker run ... python -m ruff check app testspassed. - Backend tests work in Docker. Note:
docker run ... python -m pytestpassed.
-
docker compose configvalidates. Note: command passed; do not share output publicly when local env files contain real keys because Compose expands them. -
docker compose buildworks. -
docker compose up -dstarts services. - Postgres starts and healthcheck passes.
- API health works at
http://localhost:8000/health. - Web app responds at
http://localhost:3000/dashboard. Note: verified withcurl.exe; one PowerShellInvoke-WebRequestrun timed out against the Next dev server, but curl and in-container fetch passed. - Root route redirects to
/dashboard. - pgvector extension verified manually in database. Note:
SELECT extname FROM pg_extension WHERE extname = 'vector';returnedvector. - Indexing works with live OpenAI API key. Note: verified with public-safe final demo documents.
- Retrieval works with live OpenAI API key. Note: verified through
/askretrieval-only mode. - Source-filtered retrieval works with expected top-K behavior. Note: verified source-filtered support query returned only the selected source, and top-K 3 versus 5 returned different counts.
- Ask works in both retrieval-only and grounded-answer modes with live OpenAI calls. Note: verified with final demo data.
- Ask sessions show saved mode, source filter, top-K, and retrieved chunks from a live run. Note: latest live runs were saved and retrievable.
-
OPENAI_API_KEYsetup documented. -
EMBEDDING_MODELdocumented. Default:text-embedding-3-small. -
CHAT_MODELdocumented. Default:gpt-4o-mini. - Missing key behavior documented. Note: app starts, but indexing/retrieval/answer generation fail with explicit messages.
- Invalid key behavior manually verified. Note: requires intentionally invalid key and was not exercised during final verification.
- No logs leak secrets during normal app requests. Note: tracked code does not log keys; avoid sharing
docker compose configoutput.
- Demo content option documented. Note:
SEED_DEMO_DATA=truecreates draftRemote Work PolicyandProduct Support Guidesources/documents. - Seed behavior documented accurately. Note: seeded documents must still be indexed.
- Empty states reviewed in UI code and documented.
- Loading states reviewed in UI code and documented.
- Failed indexing does not appear successful. Note: backend marks document
failed; UI displays error message. - Retrieval-only mode clearly differs from grounded-answer mode.
- Retrieved chunks show source/document/chunk metadata and scores.
- Grounded-answer fallback improved for insufficient context. Note: unsupported answers return
Sources: None; retrieved candidates remain visible for inspection. - Three-minute walkthrough rehearsed. Manual action required.
- Failure scenario prepared. Manual action required.
-
docs/screenshots/exists. -
docs/screenshots/README.mdlists exact filenames, states, demo data, proof points, and captions. - Dashboard screenshot captured. Manual action required.
- Sources list screenshot captured. Manual action required.
- Source detail screenshot captured. Manual action required.
- Document detail with chunks screenshot captured. Manual action requires indexed document and API key.
- Ask controls screenshot captured. Manual action required.
- Retrieval-only results screenshot captured. Manual action requires indexed document and API key.
- Grounded answer with sources screenshot captured. Manual action requires OpenAI key/quota.
- Ask session detail screenshot captured. Manual action required after an ask run.
- Architecture screenshot captured. Manual action required.
- README screenshot links added. Do this only after image files exist.
- Docker demo verified. Note: containers start; health and dashboard verified.
- Backup screenshots available. Manual capture required.
- Demo data prepared. Note: public-safe
Remote Work PolicyandProduct Support Guidesources and indexed documents were created locally. - Three-minute walkthrough rehearsed. Manual action required.
- Retrieval-only example prepared. Note: remote-work temporary-location question returns retrieved chunks without an answer.
- Grounded-answer example prepared. Note: same remote-work question generates a grounded answer with source references.
- Failure scenario prepared. Note: holiday schedule question is unsupported by the prepared source and returns an insufficient-context response with
Sources: None. - Architecture explanation prepared. Note: README, architecture doc, workshop guide, and interview guide updated.
- Repository links verified for newly added docs. Note: README links point to existing files.
- No sensitive data present in tracked files. Note: ignored local env files were not committed.
Suggested description:
ContextFlow is a public RAG knowledge assistant built with Next.js, FastAPI, PostgreSQL, pgvector, and OpenAI APIs.
Suggested topics:
- rag
- fastapi
- nextjs
- pgvector
- postgres
- openai
- embeddings
- vector-search
- ai-engineering
- fullstack
- Capture screenshots after creating and indexing demo data.
- Review
npm auditfindings before public launch. Note: npm currently reports 1 low and 5 high dependency vulnerabilities. - Confirm the final public repository does not include local env files, API keys, screenshots with secrets, or build artifacts.