1+ .env.example | 8 [32m+[m
2+ .github/workflows/tests.yml | 18 [32m+[m
3+ .gitignore | 66 [32m+[m
4+ PORTFOLIO_UPGRADE_REPORT.md | 211 [32m+[m
5+ README.md | 189 [32m+[m
6+ app.py | 11 [32m+[m
7+ assets/architecture_comparison.png | Bin [31m0[m -> [32m95426[m bytes
8+ assets/classifier_confusion_matrix.png | Bin [31m0[m -> [32m107504[m bytes
9+ assets/classifier_historical_confusion_matrix.png | Bin [31m0[m -> [32m107504[m bytes
10+ .../classifier_reproducible_confusion_matrix.png | Bin [31m0[m -> [32m107662[m bytes
11+ assets/demo/qualitative-demo-input.png | Bin [31m0[m -> [32m1829233[m bytes
12+ assets/demo/qualitative-demo-result.jpg | Bin [31m0[m -> [32m380467[m bytes
13+ assets/demo/validated-demo-input.jpg | Bin [31m0[m -> [32m17805[m bytes
14+ assets/demo/validated-demo-result.jpg | Bin [31m0[m -> [32m43405[m bytes
15+ assets/failure_cases/billing_error.jpg | Bin [31m0[m -> [32m32630[m bytes
16+ assets/failure_cases/detector_false_negative.jpg | Bin [31m0[m -> [32m32630[m bytes
17+ assets/failure_cases/detector_false_positive.jpg | Bin [31m0[m -> [32m32630[m bytes
18+ assets/failure_cases/low_confidence_review.jpg | Bin [31m0[m -> [32m32630[m bytes
19+ .../failure_cases/overlap_or_occlusion_error.jpg | Bin [31m0[m -> [32m38724[m bytes
20+ assets/failure_cases/quantity_error.jpg | Bin [31m0[m -> [32m32630[m bytes
21+ assets/failure_cases/resnet_breaks_yolo.jpg | Bin [31m0[m -> [32m40843[m bytes
22+ assets/failure_cases/resnet_corrects_yolo.jpg | Bin [31m0[m -> [32m32635[m bytes
23+ assets/failure_cases/small_object_error.jpg | Bin [31m0[m -> [32m35325[m bytes
24+ assets/failure_cases/yolo_misclassification.jpg | Bin [31m0[m -> [32m32630[m bytes
25+ assets/ui/visioncart-checkout-complete.png | Bin [31m0[m -> [32m36725[m bytes
26+ assets/ui/visioncart-detected-basket.png | Bin [31m0[m -> [32m498339[m bytes
27+ assets/ui/visioncart-ready.png | Bin [31m0[m -> [32m198547[m bytes
28+ assets/yolo_confusion_matrix.png | Bin [31m0[m -> [32m286247[m bytes
29+ assets/yolo_confusion_matrix_normalized.png | Bin [31m0[m -> [32m414350[m bytes
30+ assets/yolo_f1_curve.png | Bin [31m0[m -> [32m356698[m bytes
31+ assets/yolo_pr_curve.png | Bin [31m0[m -> [32m140919[m bytes
32+ assets/yolo_validation/BoxF1_curve.png | Bin [31m0[m -> [32m356698[m bytes
33+ assets/yolo_validation/BoxPR_curve.png | Bin [31m0[m -> [32m140919[m bytes
34+ assets/yolo_validation/BoxP_curve.png | Bin [31m0[m -> [32m286162[m bytes
35+ assets/yolo_validation/BoxR_curve.png | Bin [31m0[m -> [32m311582[m bytes
36+ assets/yolo_validation/confusion_matrix.png | Bin [31m0[m -> [32m286247[m bytes
37+ .../confusion_matrix_normalized.png | Bin [31m0[m -> [32m414350[m bytes
38+ assets/yolo_validation/val_batch0_labels.jpg | Bin [31m0[m -> [32m506793[m bytes
39+ assets/yolo_validation/val_batch0_pred.jpg | Bin [31m0[m -> [32m515791[m bytes
40+ assets/yolo_validation/val_batch1_labels.jpg | Bin [31m0[m -> [32m541170[m bytes
41+ assets/yolo_validation/val_batch1_pred.jpg | Bin [31m0[m -> [32m539540[m bytes
42+ assets/yolo_validation/val_batch2_labels.jpg | Bin [31m0[m -> [32m540920[m bytes
43+ assets/yolo_validation/val_batch2_pred.jpg | Bin [31m0[m -> [32m541618[m bytes
44+ configs/default.yaml | 33 [32m+[m
45+ data/README.md | 14 [32m+[m
46+ data/sample_prices.csv | 27 [32m+[m
47+ frontend/eslint.config.js | 28 [32m+[m
48+ frontend/index.html | 14 [32m+[m
49+ frontend/package-lock.json | 4743 [32m+[m
50+ frontend/package.json | 37 [32m+[m
51+ frontend/postcss.config.js | 3 [32m+[m
52+ frontend/src/App.tsx | 119 [32m+[m
53+ frontend/src/App.voice.test.tsx | 182 [32m+[m
54+ frontend/src/components/Basket.test.tsx | 42 [32m+[m
55+ frontend/src/components/Basket.tsx | 43 [32m+[m
56+ frontend/src/components/BasketItem.tsx | 18 [32m+[m
57+ frontend/src/components/Brand.tsx | 11 [32m+[m
58+ frontend/src/components/CameraView.tsx | 104 [32m+[m
59+ frontend/src/components/CheckoutComplete.test.tsx | 12 [32m+[m
60+ frontend/src/components/CheckoutComplete.tsx | 34 [32m+[m
61+ frontend/src/components/Icons.tsx | 13 [32m+[m
62+ frontend/src/components/ReviewItem.tsx | 15 [32m+[m
63+ frontend/src/components/StatusBar.tsx | 32 [32m+[m
64+ frontend/src/components/VoiceToggle.tsx | 29 [32m+[m
65+ frontend/src/hooks/useCamera.ts | 57 [32m+[m
66+ frontend/src/hooks/useReceiptSpeech.ts | 57 [32m+[m
67+ frontend/src/lib/api.ts | 59 [32m+[m
68+ frontend/src/main.tsx | 6 [32m+[m
69+ frontend/src/styles.css | 255 [32m+[m
70+ frontend/src/test/fixtures.ts | 21 [32m+[m
71+ frontend/src/test/setup.ts | 1 [32m+[m
72+ frontend/src/types/index.ts | 65 [32m+[m
73+ frontend/src/vite-env.d.ts | 3 [32m+[m
74+ frontend/tailwind.config.js | 24 [32m+[m
75+ frontend/tsconfig.app.json | 22 [32m+[m
76+ frontend/tsconfig.json | 7 [32m+[m
77+ frontend/tsconfig.node.json | 12 [32m+[m
78+ frontend/vite.config.ts | 16 [32m+[m
79+ notebooks/legacy_autonomous_checkout.ipynb | 1449 [32m+[m
80+ notebooks/training_and_evaluation.ipynb | 106 [32m+[m
81+ publish.cmd | 339 [32m+[m
82+ pyproject.toml | 50 [32m+[m
83+ reports/architecture_comparison.json | 88 [32m+[m
84+ reports/checkpoint_inventory.json | 94 [32m+[m
85+ reports/classifier_comparison.json | 151 [32m+[m
86+ reports/classifier_crop_manifest.json | 104474 [32m++++++++++++++++++[m
87+ reports/classifier_dataset_statistics.json | 133 [32m+[m
88+ reports/classifier_historical_metrics.json | 853 [32m+[m
89+ reports/classifier_metrics.json | 853 [32m+[m
90+ reports/classifier_reproducible_metrics.json | 853 [32m+[m
91+ reports/dataset_statistics.json | 228 [32m+[m
92+ reports/demo_qualitative_source.json | 64 [32m+[m
93+ reports/demo_selection.json | 56 [32m+[m
94+ reports/end_to_end_metrics.json | 19 [32m+[m
95+ reports/end_to_end_predictions.csv | 495 [32m+[m
96+ reports/end_to_end_two_stage.json | 19 [32m+[m
97+ reports/end_to_end_two_stage_predictions.csv | 495 [32m+[m
98+ reports/end_to_end_yolo_only.json | 19 [32m+[m
99+ reports/end_to_end_yolo_only_predictions.csv | 495 [32m+[m
100+ reports/environment.json | 17 [32m+[m
101+ reports/failure_analysis.json | 168 [32m+[m
102+ reports/performance_metrics.json | 110 [32m+[m
103+ reports/performance_two_stage.json | 1
0 commit comments