Inspiration
Overnight 3D prints fail at 3AM and weld filament into a birdnest by morning. Webcams nobody watches and paid cloud detectors felt wrong, so I built a tap-on-shoulder watcher.
What it does
It analyzes print video with OpenCV 5, fuses a spaghetti-risk score, and triggers capture-evidence or pause-approval actions. Evidence goes to S3 with human approval required.
How we built it
FastAPI agent loop with deterministic policy over VisionScores JSON, OpenCV 5 pipeline, React UI with SSE stream, Docker arm64 image on AWS Graviton t4g/c7g plus S3 and Bedrock rationale.
Challenges we ran into
Distinguishing real spaghetti from lighting shifts and stringing with fixed heuristics, keeping same vision JSON to same action, and making SSE reconnect plus fallback snapshot reliable on EC2.
Accomplishments that we're proud of
9/9 eval cases pass, 0.6s failure detection latency, threshold-flip 0.02 delta proven, live EC2 demo with S3 evidence, and an LLM that can only explain — never overrule the action.
What we learned
Deterministic vision-plus-policy beats black-box AI for trust: pure functions, schema-validated envelopes, and human-in-the-loop approvals make an agent legible and testable end to end.
What's next for Spaghetti Sentinel
Add real-printer footage calibration, learn thresholds from labeled data, one-ask latch per failure, RTSP and printer-plugin pause hooks, plus authoritative COOL-vs-baseline bench on Graviton.
Built With
- amazon-bedrock
- amazon-web-services
- aws-ec2
- aws-graviton
- docker
- fastapi
- opencv
- pydantic
- pytest
- python
- react
- sse
- typescript
- vite
Log in or sign up for Devpost to join the conversation.