Level 7 / Project 15 - Level 7 Mini Capstone¶
Home: README
Learn Your Way¶
| Read | Build | Watch | Test | Review | Visualize | Try |
|---|---|---|---|---|---|---|
| — | This project | — | — | Flashcards | — | — |
Focus¶
- multi-source telemetry ingest package
Why this project exists¶
This project gives you level-appropriate practice in a realistic operations context. Goal: run the baseline, alter behavior, break one assumption, recover safely, and explain the fix.
Run (copy/paste)¶
Use <repo-root> as the folder containing this repository's README.md.
cd <repo-root>/projects/level-7/15-level7-mini-capstone
python project.py --input data/sample_input.txt --output data/output_summary.json
pytest -q
Expected terminal output¶
Expected artifacts¶
data/output_summary.json- Passing tests
- Updated
notes.md
Alter it (required)¶
- Add a
"gamma"source adapter that maps{"ref": ..., "content": ...}to the unified schema. - Add a
dry_runflag that runs the full pipeline but skips writing the output file. - Re-run script and tests — verify the new adapter and dry-run mode work end-to-end.
Break it (required)¶
- Disable the
adaptflag while keeping other stages enabled — observe what happens with no records. - Provide a payload where
idis None and watch contract validation behave unexpectedly. - Add a source with records that conflict with another source on the same key.
Fix it (required)¶
- Have downstream stages check for empty input and short-circuit gracefully.
- Treat
Noneid values as missing in contract validation. - Add a test confirming each stage handles empty input without crashing.
Explain it (teach-back)¶
- How does this capstone combine all Level 7 concepts into one pipeline?
- What happened when the adapt stage was disabled but downstream stages ran?
- How did the empty-input guard prevent cascading failures?
- How would you decompose this monolithic pipeline into microservices in production?
Mastery check¶
You can move on when you can: - run baseline without docs, - explain one core function line-by-line, - break and recover in one session, - keep tests passing after your change.
Related Concepts¶
| ← Prev | Home | Next → |
|---|---|---|