# Final Capstone Workflow
The capstone is the final proof that the course is practical rather than just well-noted. A good project should make one quantum information idea measurable, reproducible, and honest about its limits.
Use the companion repo for the runnable surface:
> [!info] Course code
> - [capstone/README.md](https://github.com/montekkundan/quantum-code/blob/main/capstone/README.md)
> - [capstone/final_report_template.md](https://github.com/montekkundan/quantum-code/blob/main/capstone/final_report_template.md)
> - [notebooks/07_advanced_projects/final_capstone_workflow.ipynb](https://github.com/montekkundan/quantum-code/blob/main/notebooks/07_advanced_projects/final_capstone_workflow.ipynb)
> - [scripts/run_capstone_checks.py](https://github.com/montekkundan/quantum-code/blob/main/scripts/run_capstone_checks.py)
## Required Shape
Each capstone must include these parts:
1. a source-backed question from [[Source Reading Guide]]
2. one mathematical claim or invariant
3. one tested helper or circuit implementation
4. one notebook that produces the main evidence
5. one simulator baseline
6. one noise, hardware, resource-estimation, or scaling comparison
7. one written limitation section
## Project Lanes
### Bell, Randomness, And Nonlocal Games
Build on [[concepts/Bell's Inequality and CHSH]], [[concepts/Nonlocal Games]], and [[concepts/Einstein-Certified Randomness]].
Minimum evidence:
- classical CHSH baseline
- quantum strategy estimate
- no-signalling check on marginal distributions
- randomness-certification discussion that states assumptions explicitly
### Hamiltonians And Noise
Build on [[concepts/Hamiltonians]] and [[concepts/The Adiabatic Algorithm]].
Minimum evidence:
- Hamiltonian definition and spectral check
- ideal evolution result
- noisy or open-system comparison
- conserved quantity or norm/unitarity check where applicable
### Algorithms And Resource Limits
Build on [[concepts/Quantum Query Complexity and Deutsch-Jozsa]], [[concepts/Bernstein-Vazirani and Simon's Algorithm]], [[concepts/Grover's Algorithm]], [[concepts/Quantum Fourier Transform]], or [[concepts/RSA, Period Finding, and Shor's Algorithm]].
Minimum evidence:
- classical baseline
- oracle or circuit definition
- small-scale quantum result
- scaling, query-count, or resource-estimation discussion
### Error Correction And Stabilizers
Build on [[concepts/Quantum Error Correction]] and [[concepts/Stabilizer Formalism]].
Minimum evidence:
- encoded logical state
- syndrome table
- simulated error and recovery
- explanation of what the syndrome reveals and what it deliberately hides
## Grading Rubric
| Criterion | Strong submission |
| --- | --- |
| Source alignment | Names the specific Aaronson lecture/chapter or other reference that motivated the question. |
| Mathematical clarity | States the invariant, bound, or recovery rule before showing code. |
| Implementation | Uses `qcourse/` helpers or adds a tested helper instead of hiding logic only in the notebook. |
| Evidence | Includes simulator output and one comparison against noise, hardware, resources, or scaling. |
| Interpretation | Explains what the result means and what it does not prove. |
| Reproducibility | Passes tests and notebook smoke checks from the repo root. |
## Final Checklist
Before calling a capstone finished:
- run `uv run --extra dev pytest`
- run the project notebook top-to-bottom
- include a short source-reading paragraph
- include a table of assumptions
- include one failure mode or limitation
- state whether hardware was used or whether the result is simulator-only
The best capstones do not overclaim. They make a small quantum information claim precise enough that another student can rerun it, critique it, and extend it.