kell_creations/kell_creations_apps/apps/kell_mobile
Mike Kell 197cc66169 feat(stage-11c): custom order tracking and fulfillment
Adds the workshop-side counterpart to Stage 11B's intake form: a tracking workspace filtered by fulfillment stage, an auditable timeline of stage changes, and inventory deduction on completion. Closes audit finding P2.2; Stage 11 is complete.

Domain: FulfillmentEvent (append-only transition record with operator notes and a malformed-line-tolerant wire format), MaterialUsage, MaterialConsumptionPort + MaterialDeductionResult. Order gains fulfillmentHistory, materialUsage, derived stage accessors, and withFulfillmentEvent(). All existing fields, defaults, and copyWith semantics preserved.

Data: advanceFulfillmentStatus() records an event with an optional note and injectable clock; recordMaterialUsage() added. WooCommerce round-trips both through _kc_ meta keys, skipping malformed lines and never blanking remote values.

Application/presentation: AdvanceFulfillment, CompleteCustomOrder, CustomOrderTrackingController, CustomOrderTrackingPage, FulfillmentTimeline, showAdvanceStageDialog. Illegal transitions surface the domain rejection reason verbatim.

Architecture: inventory deduction crosses the feature boundary through an outbound port, not a package dependency. feature_orders still has no dependency on feature_inventory; each app supplies InventoryMaterialConsumptionAdapter. Completion advances first and deducts second, so a rejected transition can never decrement stock, and a deduction failure warns rather than failing the commission.

Tests: 329 new (293 feature_orders, 22 kell_mobile, 14 kell_web). 1085/1085 feature_orders, 109/109 kell_mobile, 81/81 kell_web. dart analyze --fatal-infos clean.
2026-09-25 16:54:51 -04:00
..
android fix(mobile): resolve 8 Android debug errors and Kotlin migration 2026-07-11 16:48:31 -04:00
lib feat(stage-11c): custom order tracking and fulfillment 2026-09-25 16:54:51 -04:00
test feat(stage-11c): custom order tracking and fulfillment 2026-09-25 16:54:51 -04:00
.gitignore Add Flutter app and package monorepo scaffold 2026-04-04 09:19:46 -04:00
.metadata chore(mobile): update .metadata to Flutter 3.44.4 stable 2026-07-11 16:49:57 -04:00
README.md Add Flutter app and package monorepo scaffold 2026-04-04 09:19:46 -04:00
analysis_options.yaml chore: reconcile working tree with main and re-baseline master documents 2026-09-25 14:19:36 -04:00
pubspec.lock chore: reconcile working tree with main and re-baseline master documents 2026-09-25 14:19:36 -04:00
pubspec.yaml feat(auth): Stage 8C - authentication foundation 2026-07-11 08:48:18 -04:00

README.md

kell_mobile

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.