@deepintel-ltd/farmpro-contracts 1.19.1 → 1.20.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/routes/agent-workflows.routes.d.ts +228 -48
  2. package/dist/routes/agent-workflows.routes.d.ts.map +1 -1
  3. package/dist/routes/commodity-deals.routes.d.ts +307 -0
  4. package/dist/routes/commodity-deals.routes.d.ts.map +1 -1
  5. package/dist/routes/commodity-deals.routes.js +16 -1
  6. package/dist/routes/fertigation.routes.d.ts +80 -80
  7. package/dist/routes/field-monitoring.routes.d.ts +174 -30
  8. package/dist/routes/field-monitoring.routes.d.ts.map +1 -1
  9. package/dist/routes/field-observations.routes.d.ts +1690 -156
  10. package/dist/routes/field-observations.routes.d.ts.map +1 -1
  11. package/dist/routes/field-observations.routes.js +13 -1
  12. package/dist/routes/weather.routes.d.ts +49 -10
  13. package/dist/routes/weather.routes.d.ts.map +1 -1
  14. package/dist/schemas/agent-workflows.schemas.d.ts +262 -52
  15. package/dist/schemas/agent-workflows.schemas.d.ts.map +1 -1
  16. package/dist/schemas/commodity-deals.schemas.d.ts +34 -0
  17. package/dist/schemas/commodity-deals.schemas.d.ts.map +1 -1
  18. package/dist/schemas/commodity-deals.schemas.js +8 -0
  19. package/dist/schemas/fertigation.schemas.d.ts +36 -36
  20. package/dist/schemas/field-monitoring.schemas.d.ts +91 -16
  21. package/dist/schemas/field-monitoring.schemas.d.ts.map +1 -1
  22. package/dist/schemas/field-observations.schemas.d.ts +623 -132
  23. package/dist/schemas/field-observations.schemas.d.ts.map +1 -1
  24. package/dist/schemas/field-observations.schemas.js +32 -4
  25. package/dist/schemas/recommendations.schemas.d.ts +26 -2
  26. package/dist/schemas/recommendations.schemas.d.ts.map +1 -1
  27. package/dist/schemas/recommendations.schemas.js +3 -0
  28. package/dist/schemas/weather.schemas.d.ts +148 -28
  29. package/dist/schemas/weather.schemas.d.ts.map +1 -1
  30. package/package.json +1 -1
@@ -392,36 +392,36 @@ export declare const fieldObservationsRouter: {
392
392
  scientificName: z.ZodString;
393
393
  commonNames: z.ZodArray<z.ZodString, "many">;
394
394
  confidence: z.ZodNumber;
395
- provider: z.ZodString;
395
+ provider: z.ZodOptional<z.ZodString>;
396
396
  }, "strip", z.ZodTypeAny, {
397
397
  confidence: number;
398
- provider: string;
399
398
  scientificName: string;
400
399
  commonNames: string[];
400
+ provider?: string | undefined;
401
401
  }, {
402
402
  confidence: number;
403
- provider: string;
404
403
  scientificName: string;
405
404
  commonNames: string[];
405
+ provider?: string | undefined;
406
406
  }>>;
407
407
  primaryIssue: z.ZodOptional<z.ZodObject<{
408
408
  name: z.ZodString;
409
409
  category: z.ZodString;
410
410
  confidence: z.ZodNumber;
411
- provider: z.ZodString;
411
+ provider: z.ZodOptional<z.ZodString>;
412
412
  visualIndicators: z.ZodArray<z.ZodString, "many">;
413
413
  }, "strip", z.ZodTypeAny, {
414
414
  name: string;
415
415
  category: string;
416
416
  confidence: number;
417
- provider: string;
418
417
  visualIndicators: string[];
418
+ provider?: string | undefined;
419
419
  }, {
420
420
  name: string;
421
421
  category: string;
422
422
  confidence: number;
423
- provider: string;
424
423
  visualIndicators: string[];
424
+ provider?: string | undefined;
425
425
  }>>;
426
426
  secondaryIssues: z.ZodOptional<z.ZodArray<z.ZodObject<{
427
427
  name: z.ZodString;
@@ -436,53 +436,84 @@ export declare const fieldObservationsRouter: {
436
436
  confidence: number;
437
437
  reasoning: string;
438
438
  }>, "many">>;
439
- environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
439
+ environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
440
440
  satelliteCorrelation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
441
441
  historicalMatches: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
442
+ cropConflict: z.ZodOptional<z.ZodObject<{
443
+ expectedCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
444
+ photoCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
445
+ conflict: z.ZodBoolean;
446
+ reasoning: z.ZodOptional<z.ZodString>;
447
+ }, "strip", z.ZodTypeAny, {
448
+ conflict: boolean;
449
+ reasoning?: string | undefined;
450
+ expectedCrop?: string | null | undefined;
451
+ photoCrop?: string | null | undefined;
452
+ }, {
453
+ conflict: boolean;
454
+ reasoning?: string | undefined;
455
+ expectedCrop?: string | null | undefined;
456
+ photoCrop?: string | null | undefined;
457
+ }>>;
458
+ contextSignalsUsed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
442
459
  }, "strip", z.ZodTypeAny, {
443
460
  plantIdentification?: {
444
461
  confidence: number;
445
- provider: string;
446
462
  scientificName: string;
447
463
  commonNames: string[];
464
+ provider?: string | undefined;
448
465
  } | undefined;
449
466
  primaryIssue?: {
450
467
  name: string;
451
468
  category: string;
452
469
  confidence: number;
453
- provider: string;
454
470
  visualIndicators: string[];
471
+ provider?: string | undefined;
455
472
  } | undefined;
456
473
  secondaryIssues?: {
457
474
  name: string;
458
475
  confidence: number;
459
476
  reasoning: string;
460
477
  }[] | undefined;
461
- environmentalFactors?: Record<string, string> | undefined;
478
+ environmentalFactors?: Record<string, string | number> | undefined;
462
479
  satelliteCorrelation?: Record<string, any> | undefined;
463
480
  historicalMatches?: any[] | undefined;
481
+ cropConflict?: {
482
+ conflict: boolean;
483
+ reasoning?: string | undefined;
484
+ expectedCrop?: string | null | undefined;
485
+ photoCrop?: string | null | undefined;
486
+ } | undefined;
487
+ contextSignalsUsed?: string[] | undefined;
464
488
  }, {
465
489
  plantIdentification?: {
466
490
  confidence: number;
467
- provider: string;
468
491
  scientificName: string;
469
492
  commonNames: string[];
493
+ provider?: string | undefined;
470
494
  } | undefined;
471
495
  primaryIssue?: {
472
496
  name: string;
473
497
  category: string;
474
498
  confidence: number;
475
- provider: string;
476
499
  visualIndicators: string[];
500
+ provider?: string | undefined;
477
501
  } | undefined;
478
502
  secondaryIssues?: {
479
503
  name: string;
480
504
  confidence: number;
481
505
  reasoning: string;
482
506
  }[] | undefined;
483
- environmentalFactors?: Record<string, string> | undefined;
507
+ environmentalFactors?: Record<string, string | number> | undefined;
484
508
  satelliteCorrelation?: Record<string, any> | undefined;
485
509
  historicalMatches?: any[] | undefined;
510
+ cropConflict?: {
511
+ conflict: boolean;
512
+ reasoning?: string | undefined;
513
+ expectedCrop?: string | null | undefined;
514
+ photoCrop?: string | null | undefined;
515
+ } | undefined;
516
+ contextSignalsUsed?: string[] | undefined;
486
517
  }>>;
487
518
  recommendations: z.ZodNullable<z.ZodArray<z.ZodObject<{
488
519
  priority: z.ZodNumber;
@@ -499,6 +530,9 @@ export declare const fieldObservationsRouter: {
499
530
  costPerUnit: z.ZodOptional<z.ZodNumber>;
500
531
  totalCost: z.ZodOptional<z.ZodNumber>;
501
532
  availability: z.ZodOptional<z.ZodString>;
533
+ inStock: z.ZodOptional<z.ZodBoolean>;
534
+ stockQuantity: z.ZodOptional<z.ZodNumber>;
535
+ applicationMethod: z.ZodOptional<z.ZodString>;
502
536
  }, "strip", z.ZodTypeAny, {
503
537
  name: string;
504
538
  quantity: number;
@@ -507,6 +541,9 @@ export declare const fieldObservationsRouter: {
507
541
  totalCost?: number | undefined;
508
542
  costPerUnit?: number | undefined;
509
543
  availability?: string | undefined;
544
+ inStock?: boolean | undefined;
545
+ stockQuantity?: number | undefined;
546
+ applicationMethod?: string | undefined;
510
547
  }, {
511
548
  name: string;
512
549
  quantity: number;
@@ -515,6 +552,9 @@ export declare const fieldObservationsRouter: {
515
552
  totalCost?: number | undefined;
516
553
  costPerUnit?: number | undefined;
517
554
  availability?: string | undefined;
555
+ inStock?: boolean | undefined;
556
+ stockQuantity?: number | undefined;
557
+ applicationMethod?: string | undefined;
518
558
  }>, "many">>;
519
559
  applicationMethod: z.ZodOptional<z.ZodString>;
520
560
  expectedOutcome: z.ZodOptional<z.ZodString>;
@@ -527,6 +567,7 @@ export declare const fieldObservationsRouter: {
527
567
  details: string;
528
568
  timing: string;
529
569
  confidence?: number | undefined;
570
+ applicationMethod?: string | undefined;
530
571
  severity?: "critical" | "low" | "medium" | "high" | undefined;
531
572
  materials?: {
532
573
  name: string;
@@ -536,8 +577,10 @@ export declare const fieldObservationsRouter: {
536
577
  totalCost?: number | undefined;
537
578
  costPerUnit?: number | undefined;
538
579
  availability?: string | undefined;
580
+ inStock?: boolean | undefined;
581
+ stockQuantity?: number | undefined;
582
+ applicationMethod?: string | undefined;
539
583
  }[] | undefined;
540
- applicationMethod?: string | undefined;
541
584
  expectedOutcome?: string | undefined;
542
585
  preventiveMeasures?: string[] | undefined;
543
586
  estimatedTime?: string | undefined;
@@ -548,6 +591,7 @@ export declare const fieldObservationsRouter: {
548
591
  details: string;
549
592
  timing: string;
550
593
  confidence?: number | undefined;
594
+ applicationMethod?: string | undefined;
551
595
  severity?: "critical" | "low" | "medium" | "high" | undefined;
552
596
  materials?: {
553
597
  name: string;
@@ -557,8 +601,10 @@ export declare const fieldObservationsRouter: {
557
601
  totalCost?: number | undefined;
558
602
  costPerUnit?: number | undefined;
559
603
  availability?: string | undefined;
604
+ inStock?: boolean | undefined;
605
+ stockQuantity?: number | undefined;
606
+ applicationMethod?: string | undefined;
560
607
  }[] | undefined;
561
- applicationMethod?: string | undefined;
562
608
  expectedOutcome?: string | undefined;
563
609
  preventiveMeasures?: string[] | undefined;
564
610
  estimatedTime?: string | undefined;
@@ -570,6 +616,9 @@ export declare const fieldObservationsRouter: {
570
616
  actionStatus: z.ZodEnum<["pending", "in_progress", "completed", "dismissed"]>;
571
617
  actionTakenAt: z.ZodNullable<z.ZodDate>;
572
618
  actionNotes: z.ZodNullable<z.ZodString>;
619
+ diagnosisFeedback: z.ZodNullable<z.ZodEnum<["confirmed", "incorrect"]>>;
620
+ correctedDiagnosisType: z.ZodNullable<z.ZodString>;
621
+ feedbackAt: z.ZodNullable<z.ZodDate>;
573
622
  generatedAlertId: z.ZodNullable<z.ZodString>;
574
623
  relatedTaskId: z.ZodNullable<z.ZodString>;
575
624
  analysisProvider: z.ZodNullable<z.ZodString>;
@@ -588,6 +637,7 @@ export declare const fieldObservationsRouter: {
588
637
  details: string;
589
638
  timing: string;
590
639
  confidence?: number | undefined;
640
+ applicationMethod?: string | undefined;
591
641
  severity?: "critical" | "low" | "medium" | "high" | undefined;
592
642
  materials?: {
593
643
  name: string;
@@ -597,8 +647,10 @@ export declare const fieldObservationsRouter: {
597
647
  totalCost?: number | undefined;
598
648
  costPerUnit?: number | undefined;
599
649
  availability?: string | undefined;
650
+ inStock?: boolean | undefined;
651
+ stockQuantity?: number | undefined;
652
+ applicationMethod?: string | undefined;
600
653
  }[] | undefined;
601
- applicationMethod?: string | undefined;
602
654
  expectedOutcome?: string | undefined;
603
655
  preventiveMeasures?: string[] | undefined;
604
656
  estimatedTime?: string | undefined;
@@ -631,31 +683,41 @@ export declare const fieldObservationsRouter: {
631
683
  analysisDetails: {
632
684
  plantIdentification?: {
633
685
  confidence: number;
634
- provider: string;
635
686
  scientificName: string;
636
687
  commonNames: string[];
688
+ provider?: string | undefined;
637
689
  } | undefined;
638
690
  primaryIssue?: {
639
691
  name: string;
640
692
  category: string;
641
693
  confidence: number;
642
- provider: string;
643
694
  visualIndicators: string[];
695
+ provider?: string | undefined;
644
696
  } | undefined;
645
697
  secondaryIssues?: {
646
698
  name: string;
647
699
  confidence: number;
648
700
  reasoning: string;
649
701
  }[] | undefined;
650
- environmentalFactors?: Record<string, string> | undefined;
702
+ environmentalFactors?: Record<string, string | number> | undefined;
651
703
  satelliteCorrelation?: Record<string, any> | undefined;
652
704
  historicalMatches?: any[] | undefined;
705
+ cropConflict?: {
706
+ conflict: boolean;
707
+ reasoning?: string | undefined;
708
+ expectedCrop?: string | null | undefined;
709
+ photoCrop?: string | null | undefined;
710
+ } | undefined;
711
+ contextSignalsUsed?: string[] | undefined;
653
712
  } | null;
654
713
  urgencyScore: number | null;
655
714
  similarCasesCount: number | null;
656
715
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
657
716
  actionTakenAt: Date | null;
658
717
  actionNotes: string | null;
718
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
719
+ correctedDiagnosisType: string | null;
720
+ feedbackAt: Date | null;
659
721
  generatedAlertId: string | null;
660
722
  relatedTaskId: string | null;
661
723
  analysisProvider: string | null;
@@ -671,6 +733,7 @@ export declare const fieldObservationsRouter: {
671
733
  details: string;
672
734
  timing: string;
673
735
  confidence?: number | undefined;
736
+ applicationMethod?: string | undefined;
674
737
  severity?: "critical" | "low" | "medium" | "high" | undefined;
675
738
  materials?: {
676
739
  name: string;
@@ -680,8 +743,10 @@ export declare const fieldObservationsRouter: {
680
743
  totalCost?: number | undefined;
681
744
  costPerUnit?: number | undefined;
682
745
  availability?: string | undefined;
746
+ inStock?: boolean | undefined;
747
+ stockQuantity?: number | undefined;
748
+ applicationMethod?: string | undefined;
683
749
  }[] | undefined;
684
- applicationMethod?: string | undefined;
685
750
  expectedOutcome?: string | undefined;
686
751
  preventiveMeasures?: string[] | undefined;
687
752
  estimatedTime?: string | undefined;
@@ -714,31 +779,41 @@ export declare const fieldObservationsRouter: {
714
779
  analysisDetails: {
715
780
  plantIdentification?: {
716
781
  confidence: number;
717
- provider: string;
718
782
  scientificName: string;
719
783
  commonNames: string[];
784
+ provider?: string | undefined;
720
785
  } | undefined;
721
786
  primaryIssue?: {
722
787
  name: string;
723
788
  category: string;
724
789
  confidence: number;
725
- provider: string;
726
790
  visualIndicators: string[];
791
+ provider?: string | undefined;
727
792
  } | undefined;
728
793
  secondaryIssues?: {
729
794
  name: string;
730
795
  confidence: number;
731
796
  reasoning: string;
732
797
  }[] | undefined;
733
- environmentalFactors?: Record<string, string> | undefined;
798
+ environmentalFactors?: Record<string, string | number> | undefined;
734
799
  satelliteCorrelation?: Record<string, any> | undefined;
735
800
  historicalMatches?: any[] | undefined;
801
+ cropConflict?: {
802
+ conflict: boolean;
803
+ reasoning?: string | undefined;
804
+ expectedCrop?: string | null | undefined;
805
+ photoCrop?: string | null | undefined;
806
+ } | undefined;
807
+ contextSignalsUsed?: string[] | undefined;
736
808
  } | null;
737
809
  urgencyScore: number | null;
738
810
  similarCasesCount: number | null;
739
811
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
740
812
  actionTakenAt: Date | null;
741
813
  actionNotes: string | null;
814
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
815
+ correctedDiagnosisType: string | null;
816
+ feedbackAt: Date | null;
742
817
  generatedAlertId: string | null;
743
818
  relatedTaskId: string | null;
744
819
  analysisProvider: string | null;
@@ -761,6 +836,7 @@ export declare const fieldObservationsRouter: {
761
836
  details: string;
762
837
  timing: string;
763
838
  confidence?: number | undefined;
839
+ applicationMethod?: string | undefined;
764
840
  severity?: "critical" | "low" | "medium" | "high" | undefined;
765
841
  materials?: {
766
842
  name: string;
@@ -770,8 +846,10 @@ export declare const fieldObservationsRouter: {
770
846
  totalCost?: number | undefined;
771
847
  costPerUnit?: number | undefined;
772
848
  availability?: string | undefined;
849
+ inStock?: boolean | undefined;
850
+ stockQuantity?: number | undefined;
851
+ applicationMethod?: string | undefined;
773
852
  }[] | undefined;
774
- applicationMethod?: string | undefined;
775
853
  expectedOutcome?: string | undefined;
776
854
  preventiveMeasures?: string[] | undefined;
777
855
  estimatedTime?: string | undefined;
@@ -804,31 +882,41 @@ export declare const fieldObservationsRouter: {
804
882
  analysisDetails: {
805
883
  plantIdentification?: {
806
884
  confidence: number;
807
- provider: string;
808
885
  scientificName: string;
809
886
  commonNames: string[];
887
+ provider?: string | undefined;
810
888
  } | undefined;
811
889
  primaryIssue?: {
812
890
  name: string;
813
891
  category: string;
814
892
  confidence: number;
815
- provider: string;
816
893
  visualIndicators: string[];
894
+ provider?: string | undefined;
817
895
  } | undefined;
818
896
  secondaryIssues?: {
819
897
  name: string;
820
898
  confidence: number;
821
899
  reasoning: string;
822
900
  }[] | undefined;
823
- environmentalFactors?: Record<string, string> | undefined;
901
+ environmentalFactors?: Record<string, string | number> | undefined;
824
902
  satelliteCorrelation?: Record<string, any> | undefined;
825
903
  historicalMatches?: any[] | undefined;
904
+ cropConflict?: {
905
+ conflict: boolean;
906
+ reasoning?: string | undefined;
907
+ expectedCrop?: string | null | undefined;
908
+ photoCrop?: string | null | undefined;
909
+ } | undefined;
910
+ contextSignalsUsed?: string[] | undefined;
826
911
  } | null;
827
912
  urgencyScore: number | null;
828
913
  similarCasesCount: number | null;
829
914
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
830
915
  actionTakenAt: Date | null;
831
916
  actionNotes: string | null;
917
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
918
+ correctedDiagnosisType: string | null;
919
+ feedbackAt: Date | null;
832
920
  generatedAlertId: string | null;
833
921
  relatedTaskId: string | null;
834
922
  analysisProvider: string | null;
@@ -851,6 +939,7 @@ export declare const fieldObservationsRouter: {
851
939
  details: string;
852
940
  timing: string;
853
941
  confidence?: number | undefined;
942
+ applicationMethod?: string | undefined;
854
943
  severity?: "critical" | "low" | "medium" | "high" | undefined;
855
944
  materials?: {
856
945
  name: string;
@@ -860,8 +949,10 @@ export declare const fieldObservationsRouter: {
860
949
  totalCost?: number | undefined;
861
950
  costPerUnit?: number | undefined;
862
951
  availability?: string | undefined;
952
+ inStock?: boolean | undefined;
953
+ stockQuantity?: number | undefined;
954
+ applicationMethod?: string | undefined;
863
955
  }[] | undefined;
864
- applicationMethod?: string | undefined;
865
956
  expectedOutcome?: string | undefined;
866
957
  preventiveMeasures?: string[] | undefined;
867
958
  estimatedTime?: string | undefined;
@@ -894,31 +985,41 @@ export declare const fieldObservationsRouter: {
894
985
  analysisDetails: {
895
986
  plantIdentification?: {
896
987
  confidence: number;
897
- provider: string;
898
988
  scientificName: string;
899
989
  commonNames: string[];
990
+ provider?: string | undefined;
900
991
  } | undefined;
901
992
  primaryIssue?: {
902
993
  name: string;
903
994
  category: string;
904
995
  confidence: number;
905
- provider: string;
906
996
  visualIndicators: string[];
997
+ provider?: string | undefined;
907
998
  } | undefined;
908
999
  secondaryIssues?: {
909
1000
  name: string;
910
1001
  confidence: number;
911
1002
  reasoning: string;
912
1003
  }[] | undefined;
913
- environmentalFactors?: Record<string, string> | undefined;
1004
+ environmentalFactors?: Record<string, string | number> | undefined;
914
1005
  satelliteCorrelation?: Record<string, any> | undefined;
915
1006
  historicalMatches?: any[] | undefined;
1007
+ cropConflict?: {
1008
+ conflict: boolean;
1009
+ reasoning?: string | undefined;
1010
+ expectedCrop?: string | null | undefined;
1011
+ photoCrop?: string | null | undefined;
1012
+ } | undefined;
1013
+ contextSignalsUsed?: string[] | undefined;
916
1014
  } | null;
917
1015
  urgencyScore: number | null;
918
1016
  similarCasesCount: number | null;
919
1017
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
920
1018
  actionTakenAt: Date | null;
921
1019
  actionNotes: string | null;
1020
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1021
+ correctedDiagnosisType: string | null;
1022
+ feedbackAt: Date | null;
922
1023
  generatedAlertId: string | null;
923
1024
  relatedTaskId: string | null;
924
1025
  analysisProvider: string | null;
@@ -967,6 +1068,7 @@ export declare const fieldObservationsRouter: {
967
1068
  details: string;
968
1069
  timing: string;
969
1070
  confidence?: number | undefined;
1071
+ applicationMethod?: string | undefined;
970
1072
  severity?: "critical" | "low" | "medium" | "high" | undefined;
971
1073
  materials?: {
972
1074
  name: string;
@@ -976,8 +1078,10 @@ export declare const fieldObservationsRouter: {
976
1078
  totalCost?: number | undefined;
977
1079
  costPerUnit?: number | undefined;
978
1080
  availability?: string | undefined;
1081
+ inStock?: boolean | undefined;
1082
+ stockQuantity?: number | undefined;
1083
+ applicationMethod?: string | undefined;
979
1084
  }[] | undefined;
980
- applicationMethod?: string | undefined;
981
1085
  expectedOutcome?: string | undefined;
982
1086
  preventiveMeasures?: string[] | undefined;
983
1087
  estimatedTime?: string | undefined;
@@ -1010,31 +1114,41 @@ export declare const fieldObservationsRouter: {
1010
1114
  analysisDetails: {
1011
1115
  plantIdentification?: {
1012
1116
  confidence: number;
1013
- provider: string;
1014
1117
  scientificName: string;
1015
1118
  commonNames: string[];
1119
+ provider?: string | undefined;
1016
1120
  } | undefined;
1017
1121
  primaryIssue?: {
1018
1122
  name: string;
1019
1123
  category: string;
1020
1124
  confidence: number;
1021
- provider: string;
1022
1125
  visualIndicators: string[];
1126
+ provider?: string | undefined;
1023
1127
  } | undefined;
1024
1128
  secondaryIssues?: {
1025
1129
  name: string;
1026
1130
  confidence: number;
1027
1131
  reasoning: string;
1028
1132
  }[] | undefined;
1029
- environmentalFactors?: Record<string, string> | undefined;
1133
+ environmentalFactors?: Record<string, string | number> | undefined;
1030
1134
  satelliteCorrelation?: Record<string, any> | undefined;
1031
1135
  historicalMatches?: any[] | undefined;
1136
+ cropConflict?: {
1137
+ conflict: boolean;
1138
+ reasoning?: string | undefined;
1139
+ expectedCrop?: string | null | undefined;
1140
+ photoCrop?: string | null | undefined;
1141
+ } | undefined;
1142
+ contextSignalsUsed?: string[] | undefined;
1032
1143
  } | null;
1033
1144
  urgencyScore: number | null;
1034
1145
  similarCasesCount: number | null;
1035
1146
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1036
1147
  actionTakenAt: Date | null;
1037
1148
  actionNotes: string | null;
1149
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1150
+ correctedDiagnosisType: string | null;
1151
+ feedbackAt: Date | null;
1038
1152
  generatedAlertId: string | null;
1039
1153
  relatedTaskId: string | null;
1040
1154
  analysisProvider: string | null;
@@ -1069,6 +1183,7 @@ export declare const fieldObservationsRouter: {
1069
1183
  details: string;
1070
1184
  timing: string;
1071
1185
  confidence?: number | undefined;
1186
+ applicationMethod?: string | undefined;
1072
1187
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1073
1188
  materials?: {
1074
1189
  name: string;
@@ -1078,8 +1193,10 @@ export declare const fieldObservationsRouter: {
1078
1193
  totalCost?: number | undefined;
1079
1194
  costPerUnit?: number | undefined;
1080
1195
  availability?: string | undefined;
1196
+ inStock?: boolean | undefined;
1197
+ stockQuantity?: number | undefined;
1198
+ applicationMethod?: string | undefined;
1081
1199
  }[] | undefined;
1082
- applicationMethod?: string | undefined;
1083
1200
  expectedOutcome?: string | undefined;
1084
1201
  preventiveMeasures?: string[] | undefined;
1085
1202
  estimatedTime?: string | undefined;
@@ -1112,31 +1229,41 @@ export declare const fieldObservationsRouter: {
1112
1229
  analysisDetails: {
1113
1230
  plantIdentification?: {
1114
1231
  confidence: number;
1115
- provider: string;
1116
1232
  scientificName: string;
1117
1233
  commonNames: string[];
1234
+ provider?: string | undefined;
1118
1235
  } | undefined;
1119
1236
  primaryIssue?: {
1120
1237
  name: string;
1121
1238
  category: string;
1122
1239
  confidence: number;
1123
- provider: string;
1124
1240
  visualIndicators: string[];
1241
+ provider?: string | undefined;
1125
1242
  } | undefined;
1126
1243
  secondaryIssues?: {
1127
1244
  name: string;
1128
1245
  confidence: number;
1129
1246
  reasoning: string;
1130
1247
  }[] | undefined;
1131
- environmentalFactors?: Record<string, string> | undefined;
1248
+ environmentalFactors?: Record<string, string | number> | undefined;
1132
1249
  satelliteCorrelation?: Record<string, any> | undefined;
1133
1250
  historicalMatches?: any[] | undefined;
1251
+ cropConflict?: {
1252
+ conflict: boolean;
1253
+ reasoning?: string | undefined;
1254
+ expectedCrop?: string | null | undefined;
1255
+ photoCrop?: string | null | undefined;
1256
+ } | undefined;
1257
+ contextSignalsUsed?: string[] | undefined;
1134
1258
  } | null;
1135
1259
  urgencyScore: number | null;
1136
1260
  similarCasesCount: number | null;
1137
1261
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1138
1262
  actionTakenAt: Date | null;
1139
1263
  actionNotes: string | null;
1264
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1265
+ correctedDiagnosisType: string | null;
1266
+ feedbackAt: Date | null;
1140
1267
  generatedAlertId: string | null;
1141
1268
  relatedTaskId: string | null;
1142
1269
  analysisProvider: string | null;
@@ -1249,36 +1376,36 @@ export declare const fieldObservationsRouter: {
1249
1376
  scientificName: z.ZodString;
1250
1377
  commonNames: z.ZodArray<z.ZodString, "many">;
1251
1378
  confidence: z.ZodNumber;
1252
- provider: z.ZodString;
1379
+ provider: z.ZodOptional<z.ZodString>;
1253
1380
  }, "strip", z.ZodTypeAny, {
1254
1381
  confidence: number;
1255
- provider: string;
1256
1382
  scientificName: string;
1257
1383
  commonNames: string[];
1384
+ provider?: string | undefined;
1258
1385
  }, {
1259
1386
  confidence: number;
1260
- provider: string;
1261
1387
  scientificName: string;
1262
1388
  commonNames: string[];
1389
+ provider?: string | undefined;
1263
1390
  }>>;
1264
1391
  primaryIssue: z.ZodOptional<z.ZodObject<{
1265
1392
  name: z.ZodString;
1266
1393
  category: z.ZodString;
1267
1394
  confidence: z.ZodNumber;
1268
- provider: z.ZodString;
1395
+ provider: z.ZodOptional<z.ZodString>;
1269
1396
  visualIndicators: z.ZodArray<z.ZodString, "many">;
1270
1397
  }, "strip", z.ZodTypeAny, {
1271
1398
  name: string;
1272
1399
  category: string;
1273
1400
  confidence: number;
1274
- provider: string;
1275
1401
  visualIndicators: string[];
1402
+ provider?: string | undefined;
1276
1403
  }, {
1277
1404
  name: string;
1278
1405
  category: string;
1279
1406
  confidence: number;
1280
- provider: string;
1281
1407
  visualIndicators: string[];
1408
+ provider?: string | undefined;
1282
1409
  }>>;
1283
1410
  secondaryIssues: z.ZodOptional<z.ZodArray<z.ZodObject<{
1284
1411
  name: z.ZodString;
@@ -1293,53 +1420,84 @@ export declare const fieldObservationsRouter: {
1293
1420
  confidence: number;
1294
1421
  reasoning: string;
1295
1422
  }>, "many">>;
1296
- environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
1423
+ environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
1297
1424
  satelliteCorrelation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
1298
1425
  historicalMatches: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
1426
+ cropConflict: z.ZodOptional<z.ZodObject<{
1427
+ expectedCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1428
+ photoCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
1429
+ conflict: z.ZodBoolean;
1430
+ reasoning: z.ZodOptional<z.ZodString>;
1431
+ }, "strip", z.ZodTypeAny, {
1432
+ conflict: boolean;
1433
+ reasoning?: string | undefined;
1434
+ expectedCrop?: string | null | undefined;
1435
+ photoCrop?: string | null | undefined;
1436
+ }, {
1437
+ conflict: boolean;
1438
+ reasoning?: string | undefined;
1439
+ expectedCrop?: string | null | undefined;
1440
+ photoCrop?: string | null | undefined;
1441
+ }>>;
1442
+ contextSignalsUsed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
1299
1443
  }, "strip", z.ZodTypeAny, {
1300
1444
  plantIdentification?: {
1301
1445
  confidence: number;
1302
- provider: string;
1303
1446
  scientificName: string;
1304
1447
  commonNames: string[];
1448
+ provider?: string | undefined;
1305
1449
  } | undefined;
1306
1450
  primaryIssue?: {
1307
1451
  name: string;
1308
1452
  category: string;
1309
1453
  confidence: number;
1310
- provider: string;
1311
1454
  visualIndicators: string[];
1455
+ provider?: string | undefined;
1312
1456
  } | undefined;
1313
1457
  secondaryIssues?: {
1314
1458
  name: string;
1315
1459
  confidence: number;
1316
1460
  reasoning: string;
1317
1461
  }[] | undefined;
1318
- environmentalFactors?: Record<string, string> | undefined;
1462
+ environmentalFactors?: Record<string, string | number> | undefined;
1319
1463
  satelliteCorrelation?: Record<string, any> | undefined;
1320
1464
  historicalMatches?: any[] | undefined;
1465
+ cropConflict?: {
1466
+ conflict: boolean;
1467
+ reasoning?: string | undefined;
1468
+ expectedCrop?: string | null | undefined;
1469
+ photoCrop?: string | null | undefined;
1470
+ } | undefined;
1471
+ contextSignalsUsed?: string[] | undefined;
1321
1472
  }, {
1322
1473
  plantIdentification?: {
1323
1474
  confidence: number;
1324
- provider: string;
1325
1475
  scientificName: string;
1326
1476
  commonNames: string[];
1477
+ provider?: string | undefined;
1327
1478
  } | undefined;
1328
1479
  primaryIssue?: {
1329
1480
  name: string;
1330
1481
  category: string;
1331
1482
  confidence: number;
1332
- provider: string;
1333
1483
  visualIndicators: string[];
1484
+ provider?: string | undefined;
1334
1485
  } | undefined;
1335
1486
  secondaryIssues?: {
1336
1487
  name: string;
1337
1488
  confidence: number;
1338
1489
  reasoning: string;
1339
1490
  }[] | undefined;
1340
- environmentalFactors?: Record<string, string> | undefined;
1491
+ environmentalFactors?: Record<string, string | number> | undefined;
1341
1492
  satelliteCorrelation?: Record<string, any> | undefined;
1342
1493
  historicalMatches?: any[] | undefined;
1494
+ cropConflict?: {
1495
+ conflict: boolean;
1496
+ reasoning?: string | undefined;
1497
+ expectedCrop?: string | null | undefined;
1498
+ photoCrop?: string | null | undefined;
1499
+ } | undefined;
1500
+ contextSignalsUsed?: string[] | undefined;
1343
1501
  }>>;
1344
1502
  recommendations: z.ZodNullable<z.ZodArray<z.ZodObject<{
1345
1503
  priority: z.ZodNumber;
@@ -1356,6 +1514,9 @@ export declare const fieldObservationsRouter: {
1356
1514
  costPerUnit: z.ZodOptional<z.ZodNumber>;
1357
1515
  totalCost: z.ZodOptional<z.ZodNumber>;
1358
1516
  availability: z.ZodOptional<z.ZodString>;
1517
+ inStock: z.ZodOptional<z.ZodBoolean>;
1518
+ stockQuantity: z.ZodOptional<z.ZodNumber>;
1519
+ applicationMethod: z.ZodOptional<z.ZodString>;
1359
1520
  }, "strip", z.ZodTypeAny, {
1360
1521
  name: string;
1361
1522
  quantity: number;
@@ -1364,6 +1525,9 @@ export declare const fieldObservationsRouter: {
1364
1525
  totalCost?: number | undefined;
1365
1526
  costPerUnit?: number | undefined;
1366
1527
  availability?: string | undefined;
1528
+ inStock?: boolean | undefined;
1529
+ stockQuantity?: number | undefined;
1530
+ applicationMethod?: string | undefined;
1367
1531
  }, {
1368
1532
  name: string;
1369
1533
  quantity: number;
@@ -1372,6 +1536,9 @@ export declare const fieldObservationsRouter: {
1372
1536
  totalCost?: number | undefined;
1373
1537
  costPerUnit?: number | undefined;
1374
1538
  availability?: string | undefined;
1539
+ inStock?: boolean | undefined;
1540
+ stockQuantity?: number | undefined;
1541
+ applicationMethod?: string | undefined;
1375
1542
  }>, "many">>;
1376
1543
  applicationMethod: z.ZodOptional<z.ZodString>;
1377
1544
  expectedOutcome: z.ZodOptional<z.ZodString>;
@@ -1384,6 +1551,7 @@ export declare const fieldObservationsRouter: {
1384
1551
  details: string;
1385
1552
  timing: string;
1386
1553
  confidence?: number | undefined;
1554
+ applicationMethod?: string | undefined;
1387
1555
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1388
1556
  materials?: {
1389
1557
  name: string;
@@ -1393,8 +1561,10 @@ export declare const fieldObservationsRouter: {
1393
1561
  totalCost?: number | undefined;
1394
1562
  costPerUnit?: number | undefined;
1395
1563
  availability?: string | undefined;
1564
+ inStock?: boolean | undefined;
1565
+ stockQuantity?: number | undefined;
1566
+ applicationMethod?: string | undefined;
1396
1567
  }[] | undefined;
1397
- applicationMethod?: string | undefined;
1398
1568
  expectedOutcome?: string | undefined;
1399
1569
  preventiveMeasures?: string[] | undefined;
1400
1570
  estimatedTime?: string | undefined;
@@ -1405,6 +1575,7 @@ export declare const fieldObservationsRouter: {
1405
1575
  details: string;
1406
1576
  timing: string;
1407
1577
  confidence?: number | undefined;
1578
+ applicationMethod?: string | undefined;
1408
1579
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1409
1580
  materials?: {
1410
1581
  name: string;
@@ -1414,8 +1585,10 @@ export declare const fieldObservationsRouter: {
1414
1585
  totalCost?: number | undefined;
1415
1586
  costPerUnit?: number | undefined;
1416
1587
  availability?: string | undefined;
1588
+ inStock?: boolean | undefined;
1589
+ stockQuantity?: number | undefined;
1590
+ applicationMethod?: string | undefined;
1417
1591
  }[] | undefined;
1418
- applicationMethod?: string | undefined;
1419
1592
  expectedOutcome?: string | undefined;
1420
1593
  preventiveMeasures?: string[] | undefined;
1421
1594
  estimatedTime?: string | undefined;
@@ -1427,6 +1600,9 @@ export declare const fieldObservationsRouter: {
1427
1600
  actionStatus: z.ZodEnum<["pending", "in_progress", "completed", "dismissed"]>;
1428
1601
  actionTakenAt: z.ZodNullable<z.ZodDate>;
1429
1602
  actionNotes: z.ZodNullable<z.ZodString>;
1603
+ diagnosisFeedback: z.ZodNullable<z.ZodEnum<["confirmed", "incorrect"]>>;
1604
+ correctedDiagnosisType: z.ZodNullable<z.ZodString>;
1605
+ feedbackAt: z.ZodNullable<z.ZodDate>;
1430
1606
  generatedAlertId: z.ZodNullable<z.ZodString>;
1431
1607
  relatedTaskId: z.ZodNullable<z.ZodString>;
1432
1608
  analysisProvider: z.ZodNullable<z.ZodString>;
@@ -1445,6 +1621,7 @@ export declare const fieldObservationsRouter: {
1445
1621
  details: string;
1446
1622
  timing: string;
1447
1623
  confidence?: number | undefined;
1624
+ applicationMethod?: string | undefined;
1448
1625
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1449
1626
  materials?: {
1450
1627
  name: string;
@@ -1454,8 +1631,10 @@ export declare const fieldObservationsRouter: {
1454
1631
  totalCost?: number | undefined;
1455
1632
  costPerUnit?: number | undefined;
1456
1633
  availability?: string | undefined;
1634
+ inStock?: boolean | undefined;
1635
+ stockQuantity?: number | undefined;
1636
+ applicationMethod?: string | undefined;
1457
1637
  }[] | undefined;
1458
- applicationMethod?: string | undefined;
1459
1638
  expectedOutcome?: string | undefined;
1460
1639
  preventiveMeasures?: string[] | undefined;
1461
1640
  estimatedTime?: string | undefined;
@@ -1488,31 +1667,41 @@ export declare const fieldObservationsRouter: {
1488
1667
  analysisDetails: {
1489
1668
  plantIdentification?: {
1490
1669
  confidence: number;
1491
- provider: string;
1492
1670
  scientificName: string;
1493
1671
  commonNames: string[];
1672
+ provider?: string | undefined;
1494
1673
  } | undefined;
1495
1674
  primaryIssue?: {
1496
1675
  name: string;
1497
1676
  category: string;
1498
1677
  confidence: number;
1499
- provider: string;
1500
1678
  visualIndicators: string[];
1679
+ provider?: string | undefined;
1501
1680
  } | undefined;
1502
1681
  secondaryIssues?: {
1503
1682
  name: string;
1504
1683
  confidence: number;
1505
1684
  reasoning: string;
1506
1685
  }[] | undefined;
1507
- environmentalFactors?: Record<string, string> | undefined;
1686
+ environmentalFactors?: Record<string, string | number> | undefined;
1508
1687
  satelliteCorrelation?: Record<string, any> | undefined;
1509
1688
  historicalMatches?: any[] | undefined;
1689
+ cropConflict?: {
1690
+ conflict: boolean;
1691
+ reasoning?: string | undefined;
1692
+ expectedCrop?: string | null | undefined;
1693
+ photoCrop?: string | null | undefined;
1694
+ } | undefined;
1695
+ contextSignalsUsed?: string[] | undefined;
1510
1696
  } | null;
1511
1697
  urgencyScore: number | null;
1512
1698
  similarCasesCount: number | null;
1513
1699
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1514
1700
  actionTakenAt: Date | null;
1515
1701
  actionNotes: string | null;
1702
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1703
+ correctedDiagnosisType: string | null;
1704
+ feedbackAt: Date | null;
1516
1705
  generatedAlertId: string | null;
1517
1706
  relatedTaskId: string | null;
1518
1707
  analysisProvider: string | null;
@@ -1528,6 +1717,7 @@ export declare const fieldObservationsRouter: {
1528
1717
  details: string;
1529
1718
  timing: string;
1530
1719
  confidence?: number | undefined;
1720
+ applicationMethod?: string | undefined;
1531
1721
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1532
1722
  materials?: {
1533
1723
  name: string;
@@ -1537,8 +1727,10 @@ export declare const fieldObservationsRouter: {
1537
1727
  totalCost?: number | undefined;
1538
1728
  costPerUnit?: number | undefined;
1539
1729
  availability?: string | undefined;
1730
+ inStock?: boolean | undefined;
1731
+ stockQuantity?: number | undefined;
1732
+ applicationMethod?: string | undefined;
1540
1733
  }[] | undefined;
1541
- applicationMethod?: string | undefined;
1542
1734
  expectedOutcome?: string | undefined;
1543
1735
  preventiveMeasures?: string[] | undefined;
1544
1736
  estimatedTime?: string | undefined;
@@ -1571,31 +1763,41 @@ export declare const fieldObservationsRouter: {
1571
1763
  analysisDetails: {
1572
1764
  plantIdentification?: {
1573
1765
  confidence: number;
1574
- provider: string;
1575
1766
  scientificName: string;
1576
1767
  commonNames: string[];
1768
+ provider?: string | undefined;
1577
1769
  } | undefined;
1578
1770
  primaryIssue?: {
1579
1771
  name: string;
1580
1772
  category: string;
1581
1773
  confidence: number;
1582
- provider: string;
1583
1774
  visualIndicators: string[];
1775
+ provider?: string | undefined;
1584
1776
  } | undefined;
1585
1777
  secondaryIssues?: {
1586
1778
  name: string;
1587
1779
  confidence: number;
1588
1780
  reasoning: string;
1589
1781
  }[] | undefined;
1590
- environmentalFactors?: Record<string, string> | undefined;
1782
+ environmentalFactors?: Record<string, string | number> | undefined;
1591
1783
  satelliteCorrelation?: Record<string, any> | undefined;
1592
1784
  historicalMatches?: any[] | undefined;
1785
+ cropConflict?: {
1786
+ conflict: boolean;
1787
+ reasoning?: string | undefined;
1788
+ expectedCrop?: string | null | undefined;
1789
+ photoCrop?: string | null | undefined;
1790
+ } | undefined;
1791
+ contextSignalsUsed?: string[] | undefined;
1593
1792
  } | null;
1594
1793
  urgencyScore: number | null;
1595
1794
  similarCasesCount: number | null;
1596
1795
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1597
1796
  actionTakenAt: Date | null;
1598
1797
  actionNotes: string | null;
1798
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1799
+ correctedDiagnosisType: string | null;
1800
+ feedbackAt: Date | null;
1599
1801
  generatedAlertId: string | null;
1600
1802
  relatedTaskId: string | null;
1601
1803
  analysisProvider: string | null;
@@ -1618,6 +1820,7 @@ export declare const fieldObservationsRouter: {
1618
1820
  details: string;
1619
1821
  timing: string;
1620
1822
  confidence?: number | undefined;
1823
+ applicationMethod?: string | undefined;
1621
1824
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1622
1825
  materials?: {
1623
1826
  name: string;
@@ -1627,8 +1830,10 @@ export declare const fieldObservationsRouter: {
1627
1830
  totalCost?: number | undefined;
1628
1831
  costPerUnit?: number | undefined;
1629
1832
  availability?: string | undefined;
1833
+ inStock?: boolean | undefined;
1834
+ stockQuantity?: number | undefined;
1835
+ applicationMethod?: string | undefined;
1630
1836
  }[] | undefined;
1631
- applicationMethod?: string | undefined;
1632
1837
  expectedOutcome?: string | undefined;
1633
1838
  preventiveMeasures?: string[] | undefined;
1634
1839
  estimatedTime?: string | undefined;
@@ -1661,31 +1866,41 @@ export declare const fieldObservationsRouter: {
1661
1866
  analysisDetails: {
1662
1867
  plantIdentification?: {
1663
1868
  confidence: number;
1664
- provider: string;
1665
1869
  scientificName: string;
1666
1870
  commonNames: string[];
1871
+ provider?: string | undefined;
1667
1872
  } | undefined;
1668
1873
  primaryIssue?: {
1669
1874
  name: string;
1670
1875
  category: string;
1671
1876
  confidence: number;
1672
- provider: string;
1673
1877
  visualIndicators: string[];
1878
+ provider?: string | undefined;
1674
1879
  } | undefined;
1675
1880
  secondaryIssues?: {
1676
1881
  name: string;
1677
1882
  confidence: number;
1678
1883
  reasoning: string;
1679
1884
  }[] | undefined;
1680
- environmentalFactors?: Record<string, string> | undefined;
1885
+ environmentalFactors?: Record<string, string | number> | undefined;
1681
1886
  satelliteCorrelation?: Record<string, any> | undefined;
1682
1887
  historicalMatches?: any[] | undefined;
1888
+ cropConflict?: {
1889
+ conflict: boolean;
1890
+ reasoning?: string | undefined;
1891
+ expectedCrop?: string | null | undefined;
1892
+ photoCrop?: string | null | undefined;
1893
+ } | undefined;
1894
+ contextSignalsUsed?: string[] | undefined;
1683
1895
  } | null;
1684
1896
  urgencyScore: number | null;
1685
1897
  similarCasesCount: number | null;
1686
1898
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1687
1899
  actionTakenAt: Date | null;
1688
1900
  actionNotes: string | null;
1901
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
1902
+ correctedDiagnosisType: string | null;
1903
+ feedbackAt: Date | null;
1689
1904
  generatedAlertId: string | null;
1690
1905
  relatedTaskId: string | null;
1691
1906
  analysisProvider: string | null;
@@ -1708,6 +1923,7 @@ export declare const fieldObservationsRouter: {
1708
1923
  details: string;
1709
1924
  timing: string;
1710
1925
  confidence?: number | undefined;
1926
+ applicationMethod?: string | undefined;
1711
1927
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1712
1928
  materials?: {
1713
1929
  name: string;
@@ -1717,8 +1933,10 @@ export declare const fieldObservationsRouter: {
1717
1933
  totalCost?: number | undefined;
1718
1934
  costPerUnit?: number | undefined;
1719
1935
  availability?: string | undefined;
1936
+ inStock?: boolean | undefined;
1937
+ stockQuantity?: number | undefined;
1938
+ applicationMethod?: string | undefined;
1720
1939
  }[] | undefined;
1721
- applicationMethod?: string | undefined;
1722
1940
  expectedOutcome?: string | undefined;
1723
1941
  preventiveMeasures?: string[] | undefined;
1724
1942
  estimatedTime?: string | undefined;
@@ -1751,31 +1969,41 @@ export declare const fieldObservationsRouter: {
1751
1969
  analysisDetails: {
1752
1970
  plantIdentification?: {
1753
1971
  confidence: number;
1754
- provider: string;
1755
1972
  scientificName: string;
1756
1973
  commonNames: string[];
1974
+ provider?: string | undefined;
1757
1975
  } | undefined;
1758
1976
  primaryIssue?: {
1759
1977
  name: string;
1760
1978
  category: string;
1761
1979
  confidence: number;
1762
- provider: string;
1763
1980
  visualIndicators: string[];
1981
+ provider?: string | undefined;
1764
1982
  } | undefined;
1765
1983
  secondaryIssues?: {
1766
1984
  name: string;
1767
1985
  confidence: number;
1768
1986
  reasoning: string;
1769
1987
  }[] | undefined;
1770
- environmentalFactors?: Record<string, string> | undefined;
1988
+ environmentalFactors?: Record<string, string | number> | undefined;
1771
1989
  satelliteCorrelation?: Record<string, any> | undefined;
1772
1990
  historicalMatches?: any[] | undefined;
1991
+ cropConflict?: {
1992
+ conflict: boolean;
1993
+ reasoning?: string | undefined;
1994
+ expectedCrop?: string | null | undefined;
1995
+ photoCrop?: string | null | undefined;
1996
+ } | undefined;
1997
+ contextSignalsUsed?: string[] | undefined;
1773
1998
  } | null;
1774
1999
  urgencyScore: number | null;
1775
2000
  similarCasesCount: number | null;
1776
2001
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1777
2002
  actionTakenAt: Date | null;
1778
2003
  actionNotes: string | null;
2004
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2005
+ correctedDiagnosisType: string | null;
2006
+ feedbackAt: Date | null;
1779
2007
  generatedAlertId: string | null;
1780
2008
  relatedTaskId: string | null;
1781
2009
  analysisProvider: string | null;
@@ -1824,6 +2052,7 @@ export declare const fieldObservationsRouter: {
1824
2052
  details: string;
1825
2053
  timing: string;
1826
2054
  confidence?: number | undefined;
2055
+ applicationMethod?: string | undefined;
1827
2056
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1828
2057
  materials?: {
1829
2058
  name: string;
@@ -1833,8 +2062,10 @@ export declare const fieldObservationsRouter: {
1833
2062
  totalCost?: number | undefined;
1834
2063
  costPerUnit?: number | undefined;
1835
2064
  availability?: string | undefined;
2065
+ inStock?: boolean | undefined;
2066
+ stockQuantity?: number | undefined;
2067
+ applicationMethod?: string | undefined;
1836
2068
  }[] | undefined;
1837
- applicationMethod?: string | undefined;
1838
2069
  expectedOutcome?: string | undefined;
1839
2070
  preventiveMeasures?: string[] | undefined;
1840
2071
  estimatedTime?: string | undefined;
@@ -1867,31 +2098,41 @@ export declare const fieldObservationsRouter: {
1867
2098
  analysisDetails: {
1868
2099
  plantIdentification?: {
1869
2100
  confidence: number;
1870
- provider: string;
1871
2101
  scientificName: string;
1872
2102
  commonNames: string[];
2103
+ provider?: string | undefined;
1873
2104
  } | undefined;
1874
2105
  primaryIssue?: {
1875
2106
  name: string;
1876
2107
  category: string;
1877
2108
  confidence: number;
1878
- provider: string;
1879
2109
  visualIndicators: string[];
2110
+ provider?: string | undefined;
1880
2111
  } | undefined;
1881
2112
  secondaryIssues?: {
1882
2113
  name: string;
1883
2114
  confidence: number;
1884
2115
  reasoning: string;
1885
2116
  }[] | undefined;
1886
- environmentalFactors?: Record<string, string> | undefined;
2117
+ environmentalFactors?: Record<string, string | number> | undefined;
1887
2118
  satelliteCorrelation?: Record<string, any> | undefined;
1888
2119
  historicalMatches?: any[] | undefined;
2120
+ cropConflict?: {
2121
+ conflict: boolean;
2122
+ reasoning?: string | undefined;
2123
+ expectedCrop?: string | null | undefined;
2124
+ photoCrop?: string | null | undefined;
2125
+ } | undefined;
2126
+ contextSignalsUsed?: string[] | undefined;
1889
2127
  } | null;
1890
2128
  urgencyScore: number | null;
1891
2129
  similarCasesCount: number | null;
1892
2130
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1893
2131
  actionTakenAt: Date | null;
1894
2132
  actionNotes: string | null;
2133
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2134
+ correctedDiagnosisType: string | null;
2135
+ feedbackAt: Date | null;
1895
2136
  generatedAlertId: string | null;
1896
2137
  relatedTaskId: string | null;
1897
2138
  analysisProvider: string | null;
@@ -1926,6 +2167,7 @@ export declare const fieldObservationsRouter: {
1926
2167
  details: string;
1927
2168
  timing: string;
1928
2169
  confidence?: number | undefined;
2170
+ applicationMethod?: string | undefined;
1929
2171
  severity?: "critical" | "low" | "medium" | "high" | undefined;
1930
2172
  materials?: {
1931
2173
  name: string;
@@ -1935,8 +2177,10 @@ export declare const fieldObservationsRouter: {
1935
2177
  totalCost?: number | undefined;
1936
2178
  costPerUnit?: number | undefined;
1937
2179
  availability?: string | undefined;
2180
+ inStock?: boolean | undefined;
2181
+ stockQuantity?: number | undefined;
2182
+ applicationMethod?: string | undefined;
1938
2183
  }[] | undefined;
1939
- applicationMethod?: string | undefined;
1940
2184
  expectedOutcome?: string | undefined;
1941
2185
  preventiveMeasures?: string[] | undefined;
1942
2186
  estimatedTime?: string | undefined;
@@ -1969,31 +2213,41 @@ export declare const fieldObservationsRouter: {
1969
2213
  analysisDetails: {
1970
2214
  plantIdentification?: {
1971
2215
  confidence: number;
1972
- provider: string;
1973
2216
  scientificName: string;
1974
2217
  commonNames: string[];
2218
+ provider?: string | undefined;
1975
2219
  } | undefined;
1976
2220
  primaryIssue?: {
1977
2221
  name: string;
1978
2222
  category: string;
1979
2223
  confidence: number;
1980
- provider: string;
1981
2224
  visualIndicators: string[];
2225
+ provider?: string | undefined;
1982
2226
  } | undefined;
1983
2227
  secondaryIssues?: {
1984
2228
  name: string;
1985
2229
  confidence: number;
1986
2230
  reasoning: string;
1987
2231
  }[] | undefined;
1988
- environmentalFactors?: Record<string, string> | undefined;
2232
+ environmentalFactors?: Record<string, string | number> | undefined;
1989
2233
  satelliteCorrelation?: Record<string, any> | undefined;
1990
2234
  historicalMatches?: any[] | undefined;
2235
+ cropConflict?: {
2236
+ conflict: boolean;
2237
+ reasoning?: string | undefined;
2238
+ expectedCrop?: string | null | undefined;
2239
+ photoCrop?: string | null | undefined;
2240
+ } | undefined;
2241
+ contextSignalsUsed?: string[] | undefined;
1991
2242
  } | null;
1992
2243
  urgencyScore: number | null;
1993
2244
  similarCasesCount: number | null;
1994
2245
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
1995
2246
  actionTakenAt: Date | null;
1996
2247
  actionNotes: string | null;
2248
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2249
+ correctedDiagnosisType: string | null;
2250
+ feedbackAt: Date | null;
1997
2251
  generatedAlertId: string | null;
1998
2252
  relatedTaskId: string | null;
1999
2253
  analysisProvider: string | null;
@@ -2106,36 +2360,36 @@ export declare const fieldObservationsRouter: {
2106
2360
  scientificName: z.ZodString;
2107
2361
  commonNames: z.ZodArray<z.ZodString, "many">;
2108
2362
  confidence: z.ZodNumber;
2109
- provider: z.ZodString;
2363
+ provider: z.ZodOptional<z.ZodString>;
2110
2364
  }, "strip", z.ZodTypeAny, {
2111
2365
  confidence: number;
2112
- provider: string;
2113
2366
  scientificName: string;
2114
2367
  commonNames: string[];
2368
+ provider?: string | undefined;
2115
2369
  }, {
2116
2370
  confidence: number;
2117
- provider: string;
2118
2371
  scientificName: string;
2119
2372
  commonNames: string[];
2373
+ provider?: string | undefined;
2120
2374
  }>>;
2121
2375
  primaryIssue: z.ZodOptional<z.ZodObject<{
2122
2376
  name: z.ZodString;
2123
2377
  category: z.ZodString;
2124
2378
  confidence: z.ZodNumber;
2125
- provider: z.ZodString;
2379
+ provider: z.ZodOptional<z.ZodString>;
2126
2380
  visualIndicators: z.ZodArray<z.ZodString, "many">;
2127
2381
  }, "strip", z.ZodTypeAny, {
2128
2382
  name: string;
2129
2383
  category: string;
2130
2384
  confidence: number;
2131
- provider: string;
2132
2385
  visualIndicators: string[];
2386
+ provider?: string | undefined;
2133
2387
  }, {
2134
2388
  name: string;
2135
2389
  category: string;
2136
2390
  confidence: number;
2137
- provider: string;
2138
2391
  visualIndicators: string[];
2392
+ provider?: string | undefined;
2139
2393
  }>>;
2140
2394
  secondaryIssues: z.ZodOptional<z.ZodArray<z.ZodObject<{
2141
2395
  name: z.ZodString;
@@ -2150,53 +2404,84 @@ export declare const fieldObservationsRouter: {
2150
2404
  confidence: number;
2151
2405
  reasoning: string;
2152
2406
  }>, "many">>;
2153
- environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
2407
+ environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
2154
2408
  satelliteCorrelation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
2155
2409
  historicalMatches: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
2410
+ cropConflict: z.ZodOptional<z.ZodObject<{
2411
+ expectedCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2412
+ photoCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2413
+ conflict: z.ZodBoolean;
2414
+ reasoning: z.ZodOptional<z.ZodString>;
2415
+ }, "strip", z.ZodTypeAny, {
2416
+ conflict: boolean;
2417
+ reasoning?: string | undefined;
2418
+ expectedCrop?: string | null | undefined;
2419
+ photoCrop?: string | null | undefined;
2420
+ }, {
2421
+ conflict: boolean;
2422
+ reasoning?: string | undefined;
2423
+ expectedCrop?: string | null | undefined;
2424
+ photoCrop?: string | null | undefined;
2425
+ }>>;
2426
+ contextSignalsUsed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
2156
2427
  }, "strip", z.ZodTypeAny, {
2157
2428
  plantIdentification?: {
2158
2429
  confidence: number;
2159
- provider: string;
2160
2430
  scientificName: string;
2161
2431
  commonNames: string[];
2432
+ provider?: string | undefined;
2162
2433
  } | undefined;
2163
2434
  primaryIssue?: {
2164
2435
  name: string;
2165
2436
  category: string;
2166
2437
  confidence: number;
2167
- provider: string;
2168
2438
  visualIndicators: string[];
2439
+ provider?: string | undefined;
2169
2440
  } | undefined;
2170
2441
  secondaryIssues?: {
2171
2442
  name: string;
2172
2443
  confidence: number;
2173
2444
  reasoning: string;
2174
2445
  }[] | undefined;
2175
- environmentalFactors?: Record<string, string> | undefined;
2446
+ environmentalFactors?: Record<string, string | number> | undefined;
2176
2447
  satelliteCorrelation?: Record<string, any> | undefined;
2177
2448
  historicalMatches?: any[] | undefined;
2449
+ cropConflict?: {
2450
+ conflict: boolean;
2451
+ reasoning?: string | undefined;
2452
+ expectedCrop?: string | null | undefined;
2453
+ photoCrop?: string | null | undefined;
2454
+ } | undefined;
2455
+ contextSignalsUsed?: string[] | undefined;
2178
2456
  }, {
2179
2457
  plantIdentification?: {
2180
2458
  confidence: number;
2181
- provider: string;
2182
2459
  scientificName: string;
2183
2460
  commonNames: string[];
2461
+ provider?: string | undefined;
2184
2462
  } | undefined;
2185
2463
  primaryIssue?: {
2186
2464
  name: string;
2187
2465
  category: string;
2188
2466
  confidence: number;
2189
- provider: string;
2190
2467
  visualIndicators: string[];
2468
+ provider?: string | undefined;
2191
2469
  } | undefined;
2192
2470
  secondaryIssues?: {
2193
2471
  name: string;
2194
2472
  confidence: number;
2195
2473
  reasoning: string;
2196
2474
  }[] | undefined;
2197
- environmentalFactors?: Record<string, string> | undefined;
2475
+ environmentalFactors?: Record<string, string | number> | undefined;
2198
2476
  satelliteCorrelation?: Record<string, any> | undefined;
2199
2477
  historicalMatches?: any[] | undefined;
2478
+ cropConflict?: {
2479
+ conflict: boolean;
2480
+ reasoning?: string | undefined;
2481
+ expectedCrop?: string | null | undefined;
2482
+ photoCrop?: string | null | undefined;
2483
+ } | undefined;
2484
+ contextSignalsUsed?: string[] | undefined;
2200
2485
  }>>;
2201
2486
  recommendations: z.ZodNullable<z.ZodArray<z.ZodObject<{
2202
2487
  priority: z.ZodNumber;
@@ -2213,6 +2498,9 @@ export declare const fieldObservationsRouter: {
2213
2498
  costPerUnit: z.ZodOptional<z.ZodNumber>;
2214
2499
  totalCost: z.ZodOptional<z.ZodNumber>;
2215
2500
  availability: z.ZodOptional<z.ZodString>;
2501
+ inStock: z.ZodOptional<z.ZodBoolean>;
2502
+ stockQuantity: z.ZodOptional<z.ZodNumber>;
2503
+ applicationMethod: z.ZodOptional<z.ZodString>;
2216
2504
  }, "strip", z.ZodTypeAny, {
2217
2505
  name: string;
2218
2506
  quantity: number;
@@ -2221,6 +2509,9 @@ export declare const fieldObservationsRouter: {
2221
2509
  totalCost?: number | undefined;
2222
2510
  costPerUnit?: number | undefined;
2223
2511
  availability?: string | undefined;
2512
+ inStock?: boolean | undefined;
2513
+ stockQuantity?: number | undefined;
2514
+ applicationMethod?: string | undefined;
2224
2515
  }, {
2225
2516
  name: string;
2226
2517
  quantity: number;
@@ -2229,6 +2520,9 @@ export declare const fieldObservationsRouter: {
2229
2520
  totalCost?: number | undefined;
2230
2521
  costPerUnit?: number | undefined;
2231
2522
  availability?: string | undefined;
2523
+ inStock?: boolean | undefined;
2524
+ stockQuantity?: number | undefined;
2525
+ applicationMethod?: string | undefined;
2232
2526
  }>, "many">>;
2233
2527
  applicationMethod: z.ZodOptional<z.ZodString>;
2234
2528
  expectedOutcome: z.ZodOptional<z.ZodString>;
@@ -2241,6 +2535,7 @@ export declare const fieldObservationsRouter: {
2241
2535
  details: string;
2242
2536
  timing: string;
2243
2537
  confidence?: number | undefined;
2538
+ applicationMethod?: string | undefined;
2244
2539
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2245
2540
  materials?: {
2246
2541
  name: string;
@@ -2250,8 +2545,10 @@ export declare const fieldObservationsRouter: {
2250
2545
  totalCost?: number | undefined;
2251
2546
  costPerUnit?: number | undefined;
2252
2547
  availability?: string | undefined;
2548
+ inStock?: boolean | undefined;
2549
+ stockQuantity?: number | undefined;
2550
+ applicationMethod?: string | undefined;
2253
2551
  }[] | undefined;
2254
- applicationMethod?: string | undefined;
2255
2552
  expectedOutcome?: string | undefined;
2256
2553
  preventiveMeasures?: string[] | undefined;
2257
2554
  estimatedTime?: string | undefined;
@@ -2262,6 +2559,7 @@ export declare const fieldObservationsRouter: {
2262
2559
  details: string;
2263
2560
  timing: string;
2264
2561
  confidence?: number | undefined;
2562
+ applicationMethod?: string | undefined;
2265
2563
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2266
2564
  materials?: {
2267
2565
  name: string;
@@ -2271,8 +2569,10 @@ export declare const fieldObservationsRouter: {
2271
2569
  totalCost?: number | undefined;
2272
2570
  costPerUnit?: number | undefined;
2273
2571
  availability?: string | undefined;
2572
+ inStock?: boolean | undefined;
2573
+ stockQuantity?: number | undefined;
2574
+ applicationMethod?: string | undefined;
2274
2575
  }[] | undefined;
2275
- applicationMethod?: string | undefined;
2276
2576
  expectedOutcome?: string | undefined;
2277
2577
  preventiveMeasures?: string[] | undefined;
2278
2578
  estimatedTime?: string | undefined;
@@ -2284,6 +2584,9 @@ export declare const fieldObservationsRouter: {
2284
2584
  actionStatus: z.ZodEnum<["pending", "in_progress", "completed", "dismissed"]>;
2285
2585
  actionTakenAt: z.ZodNullable<z.ZodDate>;
2286
2586
  actionNotes: z.ZodNullable<z.ZodString>;
2587
+ diagnosisFeedback: z.ZodNullable<z.ZodEnum<["confirmed", "incorrect"]>>;
2588
+ correctedDiagnosisType: z.ZodNullable<z.ZodString>;
2589
+ feedbackAt: z.ZodNullable<z.ZodDate>;
2287
2590
  generatedAlertId: z.ZodNullable<z.ZodString>;
2288
2591
  relatedTaskId: z.ZodNullable<z.ZodString>;
2289
2592
  analysisProvider: z.ZodNullable<z.ZodString>;
@@ -2302,6 +2605,7 @@ export declare const fieldObservationsRouter: {
2302
2605
  details: string;
2303
2606
  timing: string;
2304
2607
  confidence?: number | undefined;
2608
+ applicationMethod?: string | undefined;
2305
2609
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2306
2610
  materials?: {
2307
2611
  name: string;
@@ -2311,8 +2615,10 @@ export declare const fieldObservationsRouter: {
2311
2615
  totalCost?: number | undefined;
2312
2616
  costPerUnit?: number | undefined;
2313
2617
  availability?: string | undefined;
2618
+ inStock?: boolean | undefined;
2619
+ stockQuantity?: number | undefined;
2620
+ applicationMethod?: string | undefined;
2314
2621
  }[] | undefined;
2315
- applicationMethod?: string | undefined;
2316
2622
  expectedOutcome?: string | undefined;
2317
2623
  preventiveMeasures?: string[] | undefined;
2318
2624
  estimatedTime?: string | undefined;
@@ -2345,31 +2651,41 @@ export declare const fieldObservationsRouter: {
2345
2651
  analysisDetails: {
2346
2652
  plantIdentification?: {
2347
2653
  confidence: number;
2348
- provider: string;
2349
2654
  scientificName: string;
2350
2655
  commonNames: string[];
2656
+ provider?: string | undefined;
2351
2657
  } | undefined;
2352
2658
  primaryIssue?: {
2353
2659
  name: string;
2354
2660
  category: string;
2355
2661
  confidence: number;
2356
- provider: string;
2357
2662
  visualIndicators: string[];
2663
+ provider?: string | undefined;
2358
2664
  } | undefined;
2359
2665
  secondaryIssues?: {
2360
2666
  name: string;
2361
2667
  confidence: number;
2362
2668
  reasoning: string;
2363
2669
  }[] | undefined;
2364
- environmentalFactors?: Record<string, string> | undefined;
2670
+ environmentalFactors?: Record<string, string | number> | undefined;
2365
2671
  satelliteCorrelation?: Record<string, any> | undefined;
2366
2672
  historicalMatches?: any[] | undefined;
2673
+ cropConflict?: {
2674
+ conflict: boolean;
2675
+ reasoning?: string | undefined;
2676
+ expectedCrop?: string | null | undefined;
2677
+ photoCrop?: string | null | undefined;
2678
+ } | undefined;
2679
+ contextSignalsUsed?: string[] | undefined;
2367
2680
  } | null;
2368
2681
  urgencyScore: number | null;
2369
2682
  similarCasesCount: number | null;
2370
2683
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2371
2684
  actionTakenAt: Date | null;
2372
2685
  actionNotes: string | null;
2686
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2687
+ correctedDiagnosisType: string | null;
2688
+ feedbackAt: Date | null;
2373
2689
  generatedAlertId: string | null;
2374
2690
  relatedTaskId: string | null;
2375
2691
  analysisProvider: string | null;
@@ -2385,6 +2701,7 @@ export declare const fieldObservationsRouter: {
2385
2701
  details: string;
2386
2702
  timing: string;
2387
2703
  confidence?: number | undefined;
2704
+ applicationMethod?: string | undefined;
2388
2705
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2389
2706
  materials?: {
2390
2707
  name: string;
@@ -2394,8 +2711,10 @@ export declare const fieldObservationsRouter: {
2394
2711
  totalCost?: number | undefined;
2395
2712
  costPerUnit?: number | undefined;
2396
2713
  availability?: string | undefined;
2714
+ inStock?: boolean | undefined;
2715
+ stockQuantity?: number | undefined;
2716
+ applicationMethod?: string | undefined;
2397
2717
  }[] | undefined;
2398
- applicationMethod?: string | undefined;
2399
2718
  expectedOutcome?: string | undefined;
2400
2719
  preventiveMeasures?: string[] | undefined;
2401
2720
  estimatedTime?: string | undefined;
@@ -2428,31 +2747,41 @@ export declare const fieldObservationsRouter: {
2428
2747
  analysisDetails: {
2429
2748
  plantIdentification?: {
2430
2749
  confidence: number;
2431
- provider: string;
2432
2750
  scientificName: string;
2433
2751
  commonNames: string[];
2752
+ provider?: string | undefined;
2434
2753
  } | undefined;
2435
2754
  primaryIssue?: {
2436
2755
  name: string;
2437
2756
  category: string;
2438
2757
  confidence: number;
2439
- provider: string;
2440
2758
  visualIndicators: string[];
2759
+ provider?: string | undefined;
2441
2760
  } | undefined;
2442
2761
  secondaryIssues?: {
2443
2762
  name: string;
2444
2763
  confidence: number;
2445
2764
  reasoning: string;
2446
2765
  }[] | undefined;
2447
- environmentalFactors?: Record<string, string> | undefined;
2766
+ environmentalFactors?: Record<string, string | number> | undefined;
2448
2767
  satelliteCorrelation?: Record<string, any> | undefined;
2449
2768
  historicalMatches?: any[] | undefined;
2769
+ cropConflict?: {
2770
+ conflict: boolean;
2771
+ reasoning?: string | undefined;
2772
+ expectedCrop?: string | null | undefined;
2773
+ photoCrop?: string | null | undefined;
2774
+ } | undefined;
2775
+ contextSignalsUsed?: string[] | undefined;
2450
2776
  } | null;
2451
2777
  urgencyScore: number | null;
2452
2778
  similarCasesCount: number | null;
2453
2779
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2454
2780
  actionTakenAt: Date | null;
2455
2781
  actionNotes: string | null;
2782
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2783
+ correctedDiagnosisType: string | null;
2784
+ feedbackAt: Date | null;
2456
2785
  generatedAlertId: string | null;
2457
2786
  relatedTaskId: string | null;
2458
2787
  analysisProvider: string | null;
@@ -2475,6 +2804,7 @@ export declare const fieldObservationsRouter: {
2475
2804
  details: string;
2476
2805
  timing: string;
2477
2806
  confidence?: number | undefined;
2807
+ applicationMethod?: string | undefined;
2478
2808
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2479
2809
  materials?: {
2480
2810
  name: string;
@@ -2484,8 +2814,10 @@ export declare const fieldObservationsRouter: {
2484
2814
  totalCost?: number | undefined;
2485
2815
  costPerUnit?: number | undefined;
2486
2816
  availability?: string | undefined;
2817
+ inStock?: boolean | undefined;
2818
+ stockQuantity?: number | undefined;
2819
+ applicationMethod?: string | undefined;
2487
2820
  }[] | undefined;
2488
- applicationMethod?: string | undefined;
2489
2821
  expectedOutcome?: string | undefined;
2490
2822
  preventiveMeasures?: string[] | undefined;
2491
2823
  estimatedTime?: string | undefined;
@@ -2518,31 +2850,41 @@ export declare const fieldObservationsRouter: {
2518
2850
  analysisDetails: {
2519
2851
  plantIdentification?: {
2520
2852
  confidence: number;
2521
- provider: string;
2522
2853
  scientificName: string;
2523
2854
  commonNames: string[];
2855
+ provider?: string | undefined;
2524
2856
  } | undefined;
2525
2857
  primaryIssue?: {
2526
2858
  name: string;
2527
2859
  category: string;
2528
2860
  confidence: number;
2529
- provider: string;
2530
2861
  visualIndicators: string[];
2862
+ provider?: string | undefined;
2531
2863
  } | undefined;
2532
2864
  secondaryIssues?: {
2533
2865
  name: string;
2534
2866
  confidence: number;
2535
2867
  reasoning: string;
2536
2868
  }[] | undefined;
2537
- environmentalFactors?: Record<string, string> | undefined;
2869
+ environmentalFactors?: Record<string, string | number> | undefined;
2538
2870
  satelliteCorrelation?: Record<string, any> | undefined;
2539
2871
  historicalMatches?: any[] | undefined;
2872
+ cropConflict?: {
2873
+ conflict: boolean;
2874
+ reasoning?: string | undefined;
2875
+ expectedCrop?: string | null | undefined;
2876
+ photoCrop?: string | null | undefined;
2877
+ } | undefined;
2878
+ contextSignalsUsed?: string[] | undefined;
2540
2879
  } | null;
2541
2880
  urgencyScore: number | null;
2542
2881
  similarCasesCount: number | null;
2543
2882
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2544
2883
  actionTakenAt: Date | null;
2545
2884
  actionNotes: string | null;
2885
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2886
+ correctedDiagnosisType: string | null;
2887
+ feedbackAt: Date | null;
2546
2888
  generatedAlertId: string | null;
2547
2889
  relatedTaskId: string | null;
2548
2890
  analysisProvider: string | null;
@@ -2565,6 +2907,7 @@ export declare const fieldObservationsRouter: {
2565
2907
  details: string;
2566
2908
  timing: string;
2567
2909
  confidence?: number | undefined;
2910
+ applicationMethod?: string | undefined;
2568
2911
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2569
2912
  materials?: {
2570
2913
  name: string;
@@ -2574,8 +2917,10 @@ export declare const fieldObservationsRouter: {
2574
2917
  totalCost?: number | undefined;
2575
2918
  costPerUnit?: number | undefined;
2576
2919
  availability?: string | undefined;
2920
+ inStock?: boolean | undefined;
2921
+ stockQuantity?: number | undefined;
2922
+ applicationMethod?: string | undefined;
2577
2923
  }[] | undefined;
2578
- applicationMethod?: string | undefined;
2579
2924
  expectedOutcome?: string | undefined;
2580
2925
  preventiveMeasures?: string[] | undefined;
2581
2926
  estimatedTime?: string | undefined;
@@ -2608,31 +2953,41 @@ export declare const fieldObservationsRouter: {
2608
2953
  analysisDetails: {
2609
2954
  plantIdentification?: {
2610
2955
  confidence: number;
2611
- provider: string;
2612
2956
  scientificName: string;
2613
2957
  commonNames: string[];
2958
+ provider?: string | undefined;
2614
2959
  } | undefined;
2615
2960
  primaryIssue?: {
2616
2961
  name: string;
2617
2962
  category: string;
2618
2963
  confidence: number;
2619
- provider: string;
2620
2964
  visualIndicators: string[];
2965
+ provider?: string | undefined;
2621
2966
  } | undefined;
2622
2967
  secondaryIssues?: {
2623
2968
  name: string;
2624
2969
  confidence: number;
2625
2970
  reasoning: string;
2626
2971
  }[] | undefined;
2627
- environmentalFactors?: Record<string, string> | undefined;
2972
+ environmentalFactors?: Record<string, string | number> | undefined;
2628
2973
  satelliteCorrelation?: Record<string, any> | undefined;
2629
2974
  historicalMatches?: any[] | undefined;
2975
+ cropConflict?: {
2976
+ conflict: boolean;
2977
+ reasoning?: string | undefined;
2978
+ expectedCrop?: string | null | undefined;
2979
+ photoCrop?: string | null | undefined;
2980
+ } | undefined;
2981
+ contextSignalsUsed?: string[] | undefined;
2630
2982
  } | null;
2631
2983
  urgencyScore: number | null;
2632
2984
  similarCasesCount: number | null;
2633
2985
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2634
2986
  actionTakenAt: Date | null;
2635
2987
  actionNotes: string | null;
2988
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
2989
+ correctedDiagnosisType: string | null;
2990
+ feedbackAt: Date | null;
2636
2991
  generatedAlertId: string | null;
2637
2992
  relatedTaskId: string | null;
2638
2993
  analysisProvider: string | null;
@@ -2681,6 +3036,7 @@ export declare const fieldObservationsRouter: {
2681
3036
  details: string;
2682
3037
  timing: string;
2683
3038
  confidence?: number | undefined;
3039
+ applicationMethod?: string | undefined;
2684
3040
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2685
3041
  materials?: {
2686
3042
  name: string;
@@ -2690,8 +3046,10 @@ export declare const fieldObservationsRouter: {
2690
3046
  totalCost?: number | undefined;
2691
3047
  costPerUnit?: number | undefined;
2692
3048
  availability?: string | undefined;
3049
+ inStock?: boolean | undefined;
3050
+ stockQuantity?: number | undefined;
3051
+ applicationMethod?: string | undefined;
2693
3052
  }[] | undefined;
2694
- applicationMethod?: string | undefined;
2695
3053
  expectedOutcome?: string | undefined;
2696
3054
  preventiveMeasures?: string[] | undefined;
2697
3055
  estimatedTime?: string | undefined;
@@ -2724,31 +3082,41 @@ export declare const fieldObservationsRouter: {
2724
3082
  analysisDetails: {
2725
3083
  plantIdentification?: {
2726
3084
  confidence: number;
2727
- provider: string;
2728
3085
  scientificName: string;
2729
3086
  commonNames: string[];
3087
+ provider?: string | undefined;
2730
3088
  } | undefined;
2731
3089
  primaryIssue?: {
2732
3090
  name: string;
2733
3091
  category: string;
2734
3092
  confidence: number;
2735
- provider: string;
2736
3093
  visualIndicators: string[];
3094
+ provider?: string | undefined;
2737
3095
  } | undefined;
2738
3096
  secondaryIssues?: {
2739
3097
  name: string;
2740
3098
  confidence: number;
2741
3099
  reasoning: string;
2742
3100
  }[] | undefined;
2743
- environmentalFactors?: Record<string, string> | undefined;
3101
+ environmentalFactors?: Record<string, string | number> | undefined;
2744
3102
  satelliteCorrelation?: Record<string, any> | undefined;
2745
3103
  historicalMatches?: any[] | undefined;
3104
+ cropConflict?: {
3105
+ conflict: boolean;
3106
+ reasoning?: string | undefined;
3107
+ expectedCrop?: string | null | undefined;
3108
+ photoCrop?: string | null | undefined;
3109
+ } | undefined;
3110
+ contextSignalsUsed?: string[] | undefined;
2746
3111
  } | null;
2747
3112
  urgencyScore: number | null;
2748
3113
  similarCasesCount: number | null;
2749
3114
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2750
3115
  actionTakenAt: Date | null;
2751
3116
  actionNotes: string | null;
3117
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3118
+ correctedDiagnosisType: string | null;
3119
+ feedbackAt: Date | null;
2752
3120
  generatedAlertId: string | null;
2753
3121
  relatedTaskId: string | null;
2754
3122
  analysisProvider: string | null;
@@ -2783,6 +3151,7 @@ export declare const fieldObservationsRouter: {
2783
3151
  details: string;
2784
3152
  timing: string;
2785
3153
  confidence?: number | undefined;
3154
+ applicationMethod?: string | undefined;
2786
3155
  severity?: "critical" | "low" | "medium" | "high" | undefined;
2787
3156
  materials?: {
2788
3157
  name: string;
@@ -2792,8 +3161,10 @@ export declare const fieldObservationsRouter: {
2792
3161
  totalCost?: number | undefined;
2793
3162
  costPerUnit?: number | undefined;
2794
3163
  availability?: string | undefined;
3164
+ inStock?: boolean | undefined;
3165
+ stockQuantity?: number | undefined;
3166
+ applicationMethod?: string | undefined;
2795
3167
  }[] | undefined;
2796
- applicationMethod?: string | undefined;
2797
3168
  expectedOutcome?: string | undefined;
2798
3169
  preventiveMeasures?: string[] | undefined;
2799
3170
  estimatedTime?: string | undefined;
@@ -2826,31 +3197,41 @@ export declare const fieldObservationsRouter: {
2826
3197
  analysisDetails: {
2827
3198
  plantIdentification?: {
2828
3199
  confidence: number;
2829
- provider: string;
2830
3200
  scientificName: string;
2831
3201
  commonNames: string[];
3202
+ provider?: string | undefined;
2832
3203
  } | undefined;
2833
3204
  primaryIssue?: {
2834
3205
  name: string;
2835
3206
  category: string;
2836
3207
  confidence: number;
2837
- provider: string;
2838
3208
  visualIndicators: string[];
3209
+ provider?: string | undefined;
2839
3210
  } | undefined;
2840
3211
  secondaryIssues?: {
2841
3212
  name: string;
2842
3213
  confidence: number;
2843
3214
  reasoning: string;
2844
3215
  }[] | undefined;
2845
- environmentalFactors?: Record<string, string> | undefined;
3216
+ environmentalFactors?: Record<string, string | number> | undefined;
2846
3217
  satelliteCorrelation?: Record<string, any> | undefined;
2847
3218
  historicalMatches?: any[] | undefined;
3219
+ cropConflict?: {
3220
+ conflict: boolean;
3221
+ reasoning?: string | undefined;
3222
+ expectedCrop?: string | null | undefined;
3223
+ photoCrop?: string | null | undefined;
3224
+ } | undefined;
3225
+ contextSignalsUsed?: string[] | undefined;
2848
3226
  } | null;
2849
3227
  urgencyScore: number | null;
2850
3228
  similarCasesCount: number | null;
2851
3229
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
2852
3230
  actionTakenAt: Date | null;
2853
3231
  actionNotes: string | null;
3232
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3233
+ correctedDiagnosisType: string | null;
3234
+ feedbackAt: Date | null;
2854
3235
  generatedAlertId: string | null;
2855
3236
  relatedTaskId: string | null;
2856
3237
  analysisProvider: string | null;
@@ -2963,36 +3344,36 @@ export declare const fieldObservationsRouter: {
2963
3344
  scientificName: z.ZodString;
2964
3345
  commonNames: z.ZodArray<z.ZodString, "many">;
2965
3346
  confidence: z.ZodNumber;
2966
- provider: z.ZodString;
3347
+ provider: z.ZodOptional<z.ZodString>;
2967
3348
  }, "strip", z.ZodTypeAny, {
2968
3349
  confidence: number;
2969
- provider: string;
2970
3350
  scientificName: string;
2971
3351
  commonNames: string[];
3352
+ provider?: string | undefined;
2972
3353
  }, {
2973
3354
  confidence: number;
2974
- provider: string;
2975
3355
  scientificName: string;
2976
3356
  commonNames: string[];
3357
+ provider?: string | undefined;
2977
3358
  }>>;
2978
3359
  primaryIssue: z.ZodOptional<z.ZodObject<{
2979
3360
  name: z.ZodString;
2980
3361
  category: z.ZodString;
2981
3362
  confidence: z.ZodNumber;
2982
- provider: z.ZodString;
3363
+ provider: z.ZodOptional<z.ZodString>;
2983
3364
  visualIndicators: z.ZodArray<z.ZodString, "many">;
2984
3365
  }, "strip", z.ZodTypeAny, {
2985
3366
  name: string;
2986
3367
  category: string;
2987
3368
  confidence: number;
2988
- provider: string;
2989
3369
  visualIndicators: string[];
3370
+ provider?: string | undefined;
2990
3371
  }, {
2991
3372
  name: string;
2992
3373
  category: string;
2993
3374
  confidence: number;
2994
- provider: string;
2995
3375
  visualIndicators: string[];
3376
+ provider?: string | undefined;
2996
3377
  }>>;
2997
3378
  secondaryIssues: z.ZodOptional<z.ZodArray<z.ZodObject<{
2998
3379
  name: z.ZodString;
@@ -3007,53 +3388,84 @@ export declare const fieldObservationsRouter: {
3007
3388
  confidence: number;
3008
3389
  reasoning: string;
3009
3390
  }>, "many">>;
3010
- environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
3391
+ environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
3011
3392
  satelliteCorrelation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
3012
3393
  historicalMatches: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
3394
+ cropConflict: z.ZodOptional<z.ZodObject<{
3395
+ expectedCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3396
+ photoCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
3397
+ conflict: z.ZodBoolean;
3398
+ reasoning: z.ZodOptional<z.ZodString>;
3399
+ }, "strip", z.ZodTypeAny, {
3400
+ conflict: boolean;
3401
+ reasoning?: string | undefined;
3402
+ expectedCrop?: string | null | undefined;
3403
+ photoCrop?: string | null | undefined;
3404
+ }, {
3405
+ conflict: boolean;
3406
+ reasoning?: string | undefined;
3407
+ expectedCrop?: string | null | undefined;
3408
+ photoCrop?: string | null | undefined;
3409
+ }>>;
3410
+ contextSignalsUsed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
3013
3411
  }, "strip", z.ZodTypeAny, {
3014
3412
  plantIdentification?: {
3015
3413
  confidence: number;
3016
- provider: string;
3017
3414
  scientificName: string;
3018
3415
  commonNames: string[];
3416
+ provider?: string | undefined;
3019
3417
  } | undefined;
3020
3418
  primaryIssue?: {
3021
3419
  name: string;
3022
3420
  category: string;
3023
3421
  confidence: number;
3024
- provider: string;
3025
3422
  visualIndicators: string[];
3423
+ provider?: string | undefined;
3026
3424
  } | undefined;
3027
3425
  secondaryIssues?: {
3028
3426
  name: string;
3029
3427
  confidence: number;
3030
3428
  reasoning: string;
3031
3429
  }[] | undefined;
3032
- environmentalFactors?: Record<string, string> | undefined;
3430
+ environmentalFactors?: Record<string, string | number> | undefined;
3033
3431
  satelliteCorrelation?: Record<string, any> | undefined;
3034
3432
  historicalMatches?: any[] | undefined;
3433
+ cropConflict?: {
3434
+ conflict: boolean;
3435
+ reasoning?: string | undefined;
3436
+ expectedCrop?: string | null | undefined;
3437
+ photoCrop?: string | null | undefined;
3438
+ } | undefined;
3439
+ contextSignalsUsed?: string[] | undefined;
3035
3440
  }, {
3036
3441
  plantIdentification?: {
3037
3442
  confidence: number;
3038
- provider: string;
3039
3443
  scientificName: string;
3040
3444
  commonNames: string[];
3445
+ provider?: string | undefined;
3041
3446
  } | undefined;
3042
3447
  primaryIssue?: {
3043
3448
  name: string;
3044
3449
  category: string;
3045
3450
  confidence: number;
3046
- provider: string;
3047
3451
  visualIndicators: string[];
3452
+ provider?: string | undefined;
3048
3453
  } | undefined;
3049
3454
  secondaryIssues?: {
3050
3455
  name: string;
3051
3456
  confidence: number;
3052
3457
  reasoning: string;
3053
3458
  }[] | undefined;
3054
- environmentalFactors?: Record<string, string> | undefined;
3459
+ environmentalFactors?: Record<string, string | number> | undefined;
3055
3460
  satelliteCorrelation?: Record<string, any> | undefined;
3056
3461
  historicalMatches?: any[] | undefined;
3462
+ cropConflict?: {
3463
+ conflict: boolean;
3464
+ reasoning?: string | undefined;
3465
+ expectedCrop?: string | null | undefined;
3466
+ photoCrop?: string | null | undefined;
3467
+ } | undefined;
3468
+ contextSignalsUsed?: string[] | undefined;
3057
3469
  }>>;
3058
3470
  recommendations: z.ZodNullable<z.ZodArray<z.ZodObject<{
3059
3471
  priority: z.ZodNumber;
@@ -3070,6 +3482,9 @@ export declare const fieldObservationsRouter: {
3070
3482
  costPerUnit: z.ZodOptional<z.ZodNumber>;
3071
3483
  totalCost: z.ZodOptional<z.ZodNumber>;
3072
3484
  availability: z.ZodOptional<z.ZodString>;
3485
+ inStock: z.ZodOptional<z.ZodBoolean>;
3486
+ stockQuantity: z.ZodOptional<z.ZodNumber>;
3487
+ applicationMethod: z.ZodOptional<z.ZodString>;
3073
3488
  }, "strip", z.ZodTypeAny, {
3074
3489
  name: string;
3075
3490
  quantity: number;
@@ -3078,6 +3493,9 @@ export declare const fieldObservationsRouter: {
3078
3493
  totalCost?: number | undefined;
3079
3494
  costPerUnit?: number | undefined;
3080
3495
  availability?: string | undefined;
3496
+ inStock?: boolean | undefined;
3497
+ stockQuantity?: number | undefined;
3498
+ applicationMethod?: string | undefined;
3081
3499
  }, {
3082
3500
  name: string;
3083
3501
  quantity: number;
@@ -3086,6 +3504,9 @@ export declare const fieldObservationsRouter: {
3086
3504
  totalCost?: number | undefined;
3087
3505
  costPerUnit?: number | undefined;
3088
3506
  availability?: string | undefined;
3507
+ inStock?: boolean | undefined;
3508
+ stockQuantity?: number | undefined;
3509
+ applicationMethod?: string | undefined;
3089
3510
  }>, "many">>;
3090
3511
  applicationMethod: z.ZodOptional<z.ZodString>;
3091
3512
  expectedOutcome: z.ZodOptional<z.ZodString>;
@@ -3098,6 +3519,7 @@ export declare const fieldObservationsRouter: {
3098
3519
  details: string;
3099
3520
  timing: string;
3100
3521
  confidence?: number | undefined;
3522
+ applicationMethod?: string | undefined;
3101
3523
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3102
3524
  materials?: {
3103
3525
  name: string;
@@ -3107,8 +3529,10 @@ export declare const fieldObservationsRouter: {
3107
3529
  totalCost?: number | undefined;
3108
3530
  costPerUnit?: number | undefined;
3109
3531
  availability?: string | undefined;
3532
+ inStock?: boolean | undefined;
3533
+ stockQuantity?: number | undefined;
3534
+ applicationMethod?: string | undefined;
3110
3535
  }[] | undefined;
3111
- applicationMethod?: string | undefined;
3112
3536
  expectedOutcome?: string | undefined;
3113
3537
  preventiveMeasures?: string[] | undefined;
3114
3538
  estimatedTime?: string | undefined;
@@ -3119,6 +3543,7 @@ export declare const fieldObservationsRouter: {
3119
3543
  details: string;
3120
3544
  timing: string;
3121
3545
  confidence?: number | undefined;
3546
+ applicationMethod?: string | undefined;
3122
3547
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3123
3548
  materials?: {
3124
3549
  name: string;
@@ -3128,8 +3553,10 @@ export declare const fieldObservationsRouter: {
3128
3553
  totalCost?: number | undefined;
3129
3554
  costPerUnit?: number | undefined;
3130
3555
  availability?: string | undefined;
3556
+ inStock?: boolean | undefined;
3557
+ stockQuantity?: number | undefined;
3558
+ applicationMethod?: string | undefined;
3131
3559
  }[] | undefined;
3132
- applicationMethod?: string | undefined;
3133
3560
  expectedOutcome?: string | undefined;
3134
3561
  preventiveMeasures?: string[] | undefined;
3135
3562
  estimatedTime?: string | undefined;
@@ -3141,6 +3568,9 @@ export declare const fieldObservationsRouter: {
3141
3568
  actionStatus: z.ZodEnum<["pending", "in_progress", "completed", "dismissed"]>;
3142
3569
  actionTakenAt: z.ZodNullable<z.ZodDate>;
3143
3570
  actionNotes: z.ZodNullable<z.ZodString>;
3571
+ diagnosisFeedback: z.ZodNullable<z.ZodEnum<["confirmed", "incorrect"]>>;
3572
+ correctedDiagnosisType: z.ZodNullable<z.ZodString>;
3573
+ feedbackAt: z.ZodNullable<z.ZodDate>;
3144
3574
  generatedAlertId: z.ZodNullable<z.ZodString>;
3145
3575
  relatedTaskId: z.ZodNullable<z.ZodString>;
3146
3576
  analysisProvider: z.ZodNullable<z.ZodString>;
@@ -3159,6 +3589,7 @@ export declare const fieldObservationsRouter: {
3159
3589
  details: string;
3160
3590
  timing: string;
3161
3591
  confidence?: number | undefined;
3592
+ applicationMethod?: string | undefined;
3162
3593
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3163
3594
  materials?: {
3164
3595
  name: string;
@@ -3168,8 +3599,10 @@ export declare const fieldObservationsRouter: {
3168
3599
  totalCost?: number | undefined;
3169
3600
  costPerUnit?: number | undefined;
3170
3601
  availability?: string | undefined;
3602
+ inStock?: boolean | undefined;
3603
+ stockQuantity?: number | undefined;
3604
+ applicationMethod?: string | undefined;
3171
3605
  }[] | undefined;
3172
- applicationMethod?: string | undefined;
3173
3606
  expectedOutcome?: string | undefined;
3174
3607
  preventiveMeasures?: string[] | undefined;
3175
3608
  estimatedTime?: string | undefined;
@@ -3202,31 +3635,41 @@ export declare const fieldObservationsRouter: {
3202
3635
  analysisDetails: {
3203
3636
  plantIdentification?: {
3204
3637
  confidence: number;
3205
- provider: string;
3206
3638
  scientificName: string;
3207
3639
  commonNames: string[];
3640
+ provider?: string | undefined;
3208
3641
  } | undefined;
3209
3642
  primaryIssue?: {
3210
3643
  name: string;
3211
3644
  category: string;
3212
3645
  confidence: number;
3213
- provider: string;
3214
3646
  visualIndicators: string[];
3647
+ provider?: string | undefined;
3215
3648
  } | undefined;
3216
3649
  secondaryIssues?: {
3217
3650
  name: string;
3218
3651
  confidence: number;
3219
3652
  reasoning: string;
3220
3653
  }[] | undefined;
3221
- environmentalFactors?: Record<string, string> | undefined;
3654
+ environmentalFactors?: Record<string, string | number> | undefined;
3222
3655
  satelliteCorrelation?: Record<string, any> | undefined;
3223
3656
  historicalMatches?: any[] | undefined;
3657
+ cropConflict?: {
3658
+ conflict: boolean;
3659
+ reasoning?: string | undefined;
3660
+ expectedCrop?: string | null | undefined;
3661
+ photoCrop?: string | null | undefined;
3662
+ } | undefined;
3663
+ contextSignalsUsed?: string[] | undefined;
3224
3664
  } | null;
3225
3665
  urgencyScore: number | null;
3226
3666
  similarCasesCount: number | null;
3227
3667
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3228
3668
  actionTakenAt: Date | null;
3229
3669
  actionNotes: string | null;
3670
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3671
+ correctedDiagnosisType: string | null;
3672
+ feedbackAt: Date | null;
3230
3673
  generatedAlertId: string | null;
3231
3674
  relatedTaskId: string | null;
3232
3675
  analysisProvider: string | null;
@@ -3242,6 +3685,7 @@ export declare const fieldObservationsRouter: {
3242
3685
  details: string;
3243
3686
  timing: string;
3244
3687
  confidence?: number | undefined;
3688
+ applicationMethod?: string | undefined;
3245
3689
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3246
3690
  materials?: {
3247
3691
  name: string;
@@ -3251,8 +3695,10 @@ export declare const fieldObservationsRouter: {
3251
3695
  totalCost?: number | undefined;
3252
3696
  costPerUnit?: number | undefined;
3253
3697
  availability?: string | undefined;
3698
+ inStock?: boolean | undefined;
3699
+ stockQuantity?: number | undefined;
3700
+ applicationMethod?: string | undefined;
3254
3701
  }[] | undefined;
3255
- applicationMethod?: string | undefined;
3256
3702
  expectedOutcome?: string | undefined;
3257
3703
  preventiveMeasures?: string[] | undefined;
3258
3704
  estimatedTime?: string | undefined;
@@ -3285,31 +3731,41 @@ export declare const fieldObservationsRouter: {
3285
3731
  analysisDetails: {
3286
3732
  plantIdentification?: {
3287
3733
  confidence: number;
3288
- provider: string;
3289
3734
  scientificName: string;
3290
3735
  commonNames: string[];
3736
+ provider?: string | undefined;
3291
3737
  } | undefined;
3292
3738
  primaryIssue?: {
3293
3739
  name: string;
3294
3740
  category: string;
3295
3741
  confidence: number;
3296
- provider: string;
3297
3742
  visualIndicators: string[];
3743
+ provider?: string | undefined;
3298
3744
  } | undefined;
3299
3745
  secondaryIssues?: {
3300
3746
  name: string;
3301
3747
  confidence: number;
3302
3748
  reasoning: string;
3303
3749
  }[] | undefined;
3304
- environmentalFactors?: Record<string, string> | undefined;
3750
+ environmentalFactors?: Record<string, string | number> | undefined;
3305
3751
  satelliteCorrelation?: Record<string, any> | undefined;
3306
3752
  historicalMatches?: any[] | undefined;
3753
+ cropConflict?: {
3754
+ conflict: boolean;
3755
+ reasoning?: string | undefined;
3756
+ expectedCrop?: string | null | undefined;
3757
+ photoCrop?: string | null | undefined;
3758
+ } | undefined;
3759
+ contextSignalsUsed?: string[] | undefined;
3307
3760
  } | null;
3308
3761
  urgencyScore: number | null;
3309
3762
  similarCasesCount: number | null;
3310
3763
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3311
3764
  actionTakenAt: Date | null;
3312
3765
  actionNotes: string | null;
3766
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3767
+ correctedDiagnosisType: string | null;
3768
+ feedbackAt: Date | null;
3313
3769
  generatedAlertId: string | null;
3314
3770
  relatedTaskId: string | null;
3315
3771
  analysisProvider: string | null;
@@ -3332,6 +3788,7 @@ export declare const fieldObservationsRouter: {
3332
3788
  details: string;
3333
3789
  timing: string;
3334
3790
  confidence?: number | undefined;
3791
+ applicationMethod?: string | undefined;
3335
3792
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3336
3793
  materials?: {
3337
3794
  name: string;
@@ -3341,8 +3798,10 @@ export declare const fieldObservationsRouter: {
3341
3798
  totalCost?: number | undefined;
3342
3799
  costPerUnit?: number | undefined;
3343
3800
  availability?: string | undefined;
3801
+ inStock?: boolean | undefined;
3802
+ stockQuantity?: number | undefined;
3803
+ applicationMethod?: string | undefined;
3344
3804
  }[] | undefined;
3345
- applicationMethod?: string | undefined;
3346
3805
  expectedOutcome?: string | undefined;
3347
3806
  preventiveMeasures?: string[] | undefined;
3348
3807
  estimatedTime?: string | undefined;
@@ -3375,31 +3834,41 @@ export declare const fieldObservationsRouter: {
3375
3834
  analysisDetails: {
3376
3835
  plantIdentification?: {
3377
3836
  confidence: number;
3378
- provider: string;
3379
3837
  scientificName: string;
3380
3838
  commonNames: string[];
3839
+ provider?: string | undefined;
3381
3840
  } | undefined;
3382
3841
  primaryIssue?: {
3383
3842
  name: string;
3384
3843
  category: string;
3385
3844
  confidence: number;
3386
- provider: string;
3387
3845
  visualIndicators: string[];
3846
+ provider?: string | undefined;
3388
3847
  } | undefined;
3389
3848
  secondaryIssues?: {
3390
3849
  name: string;
3391
3850
  confidence: number;
3392
3851
  reasoning: string;
3393
3852
  }[] | undefined;
3394
- environmentalFactors?: Record<string, string> | undefined;
3853
+ environmentalFactors?: Record<string, string | number> | undefined;
3395
3854
  satelliteCorrelation?: Record<string, any> | undefined;
3396
3855
  historicalMatches?: any[] | undefined;
3856
+ cropConflict?: {
3857
+ conflict: boolean;
3858
+ reasoning?: string | undefined;
3859
+ expectedCrop?: string | null | undefined;
3860
+ photoCrop?: string | null | undefined;
3861
+ } | undefined;
3862
+ contextSignalsUsed?: string[] | undefined;
3397
3863
  } | null;
3398
3864
  urgencyScore: number | null;
3399
3865
  similarCasesCount: number | null;
3400
3866
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3401
3867
  actionTakenAt: Date | null;
3402
3868
  actionNotes: string | null;
3869
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3870
+ correctedDiagnosisType: string | null;
3871
+ feedbackAt: Date | null;
3403
3872
  generatedAlertId: string | null;
3404
3873
  relatedTaskId: string | null;
3405
3874
  analysisProvider: string | null;
@@ -3422,6 +3891,7 @@ export declare const fieldObservationsRouter: {
3422
3891
  details: string;
3423
3892
  timing: string;
3424
3893
  confidence?: number | undefined;
3894
+ applicationMethod?: string | undefined;
3425
3895
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3426
3896
  materials?: {
3427
3897
  name: string;
@@ -3431,8 +3901,10 @@ export declare const fieldObservationsRouter: {
3431
3901
  totalCost?: number | undefined;
3432
3902
  costPerUnit?: number | undefined;
3433
3903
  availability?: string | undefined;
3904
+ inStock?: boolean | undefined;
3905
+ stockQuantity?: number | undefined;
3906
+ applicationMethod?: string | undefined;
3434
3907
  }[] | undefined;
3435
- applicationMethod?: string | undefined;
3436
3908
  expectedOutcome?: string | undefined;
3437
3909
  preventiveMeasures?: string[] | undefined;
3438
3910
  estimatedTime?: string | undefined;
@@ -3465,31 +3937,41 @@ export declare const fieldObservationsRouter: {
3465
3937
  analysisDetails: {
3466
3938
  plantIdentification?: {
3467
3939
  confidence: number;
3468
- provider: string;
3469
3940
  scientificName: string;
3470
3941
  commonNames: string[];
3942
+ provider?: string | undefined;
3471
3943
  } | undefined;
3472
3944
  primaryIssue?: {
3473
3945
  name: string;
3474
3946
  category: string;
3475
3947
  confidence: number;
3476
- provider: string;
3477
3948
  visualIndicators: string[];
3949
+ provider?: string | undefined;
3478
3950
  } | undefined;
3479
3951
  secondaryIssues?: {
3480
3952
  name: string;
3481
3953
  confidence: number;
3482
3954
  reasoning: string;
3483
3955
  }[] | undefined;
3484
- environmentalFactors?: Record<string, string> | undefined;
3956
+ environmentalFactors?: Record<string, string | number> | undefined;
3485
3957
  satelliteCorrelation?: Record<string, any> | undefined;
3486
3958
  historicalMatches?: any[] | undefined;
3959
+ cropConflict?: {
3960
+ conflict: boolean;
3961
+ reasoning?: string | undefined;
3962
+ expectedCrop?: string | null | undefined;
3963
+ photoCrop?: string | null | undefined;
3964
+ } | undefined;
3965
+ contextSignalsUsed?: string[] | undefined;
3487
3966
  } | null;
3488
3967
  urgencyScore: number | null;
3489
3968
  similarCasesCount: number | null;
3490
3969
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3491
3970
  actionTakenAt: Date | null;
3492
3971
  actionNotes: string | null;
3972
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
3973
+ correctedDiagnosisType: string | null;
3974
+ feedbackAt: Date | null;
3493
3975
  generatedAlertId: string | null;
3494
3976
  relatedTaskId: string | null;
3495
3977
  analysisProvider: string | null;
@@ -3538,6 +4020,7 @@ export declare const fieldObservationsRouter: {
3538
4020
  details: string;
3539
4021
  timing: string;
3540
4022
  confidence?: number | undefined;
4023
+ applicationMethod?: string | undefined;
3541
4024
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3542
4025
  materials?: {
3543
4026
  name: string;
@@ -3547,8 +4030,10 @@ export declare const fieldObservationsRouter: {
3547
4030
  totalCost?: number | undefined;
3548
4031
  costPerUnit?: number | undefined;
3549
4032
  availability?: string | undefined;
4033
+ inStock?: boolean | undefined;
4034
+ stockQuantity?: number | undefined;
4035
+ applicationMethod?: string | undefined;
3550
4036
  }[] | undefined;
3551
- applicationMethod?: string | undefined;
3552
4037
  expectedOutcome?: string | undefined;
3553
4038
  preventiveMeasures?: string[] | undefined;
3554
4039
  estimatedTime?: string | undefined;
@@ -3581,31 +4066,41 @@ export declare const fieldObservationsRouter: {
3581
4066
  analysisDetails: {
3582
4067
  plantIdentification?: {
3583
4068
  confidence: number;
3584
- provider: string;
3585
4069
  scientificName: string;
3586
4070
  commonNames: string[];
4071
+ provider?: string | undefined;
3587
4072
  } | undefined;
3588
4073
  primaryIssue?: {
3589
4074
  name: string;
3590
4075
  category: string;
3591
4076
  confidence: number;
3592
- provider: string;
3593
4077
  visualIndicators: string[];
4078
+ provider?: string | undefined;
3594
4079
  } | undefined;
3595
4080
  secondaryIssues?: {
3596
4081
  name: string;
3597
4082
  confidence: number;
3598
4083
  reasoning: string;
3599
4084
  }[] | undefined;
3600
- environmentalFactors?: Record<string, string> | undefined;
4085
+ environmentalFactors?: Record<string, string | number> | undefined;
3601
4086
  satelliteCorrelation?: Record<string, any> | undefined;
3602
4087
  historicalMatches?: any[] | undefined;
4088
+ cropConflict?: {
4089
+ conflict: boolean;
4090
+ reasoning?: string | undefined;
4091
+ expectedCrop?: string | null | undefined;
4092
+ photoCrop?: string | null | undefined;
4093
+ } | undefined;
4094
+ contextSignalsUsed?: string[] | undefined;
3603
4095
  } | null;
3604
4096
  urgencyScore: number | null;
3605
4097
  similarCasesCount: number | null;
3606
4098
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3607
4099
  actionTakenAt: Date | null;
3608
4100
  actionNotes: string | null;
4101
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4102
+ correctedDiagnosisType: string | null;
4103
+ feedbackAt: Date | null;
3609
4104
  generatedAlertId: string | null;
3610
4105
  relatedTaskId: string | null;
3611
4106
  analysisProvider: string | null;
@@ -3640,6 +4135,7 @@ export declare const fieldObservationsRouter: {
3640
4135
  details: string;
3641
4136
  timing: string;
3642
4137
  confidence?: number | undefined;
4138
+ applicationMethod?: string | undefined;
3643
4139
  severity?: "critical" | "low" | "medium" | "high" | undefined;
3644
4140
  materials?: {
3645
4141
  name: string;
@@ -3649,8 +4145,10 @@ export declare const fieldObservationsRouter: {
3649
4145
  totalCost?: number | undefined;
3650
4146
  costPerUnit?: number | undefined;
3651
4147
  availability?: string | undefined;
4148
+ inStock?: boolean | undefined;
4149
+ stockQuantity?: number | undefined;
4150
+ applicationMethod?: string | undefined;
3652
4151
  }[] | undefined;
3653
- applicationMethod?: string | undefined;
3654
4152
  expectedOutcome?: string | undefined;
3655
4153
  preventiveMeasures?: string[] | undefined;
3656
4154
  estimatedTime?: string | undefined;
@@ -3683,31 +4181,41 @@ export declare const fieldObservationsRouter: {
3683
4181
  analysisDetails: {
3684
4182
  plantIdentification?: {
3685
4183
  confidence: number;
3686
- provider: string;
3687
4184
  scientificName: string;
3688
4185
  commonNames: string[];
4186
+ provider?: string | undefined;
3689
4187
  } | undefined;
3690
4188
  primaryIssue?: {
3691
4189
  name: string;
3692
4190
  category: string;
3693
4191
  confidence: number;
3694
- provider: string;
3695
4192
  visualIndicators: string[];
4193
+ provider?: string | undefined;
3696
4194
  } | undefined;
3697
4195
  secondaryIssues?: {
3698
4196
  name: string;
3699
4197
  confidence: number;
3700
4198
  reasoning: string;
3701
4199
  }[] | undefined;
3702
- environmentalFactors?: Record<string, string> | undefined;
4200
+ environmentalFactors?: Record<string, string | number> | undefined;
3703
4201
  satelliteCorrelation?: Record<string, any> | undefined;
3704
4202
  historicalMatches?: any[] | undefined;
4203
+ cropConflict?: {
4204
+ conflict: boolean;
4205
+ reasoning?: string | undefined;
4206
+ expectedCrop?: string | null | undefined;
4207
+ photoCrop?: string | null | undefined;
4208
+ } | undefined;
4209
+ contextSignalsUsed?: string[] | undefined;
3705
4210
  } | null;
3706
4211
  urgencyScore: number | null;
3707
4212
  similarCasesCount: number | null;
3708
4213
  actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
3709
4214
  actionTakenAt: Date | null;
3710
4215
  actionNotes: string | null;
4216
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4217
+ correctedDiagnosisType: string | null;
4218
+ feedbackAt: Date | null;
3711
4219
  generatedAlertId: string | null;
3712
4220
  relatedTaskId: string | null;
3713
4221
  analysisProvider: string | null;
@@ -3742,6 +4250,1032 @@ export declare const fieldObservationsRouter: {
3742
4250
  }>;
3743
4251
  };
3744
4252
  };
4253
+ updateObservationFeedback: {
4254
+ summary: "Confirm or correct AI diagnosis for an observation";
4255
+ method: "PATCH";
4256
+ body: z.ZodObject<{
4257
+ type: z.ZodLiteral<string>;
4258
+ id: z.ZodString;
4259
+ attributes: z.ZodEffects<z.ZodObject<{
4260
+ diagnosisFeedback: z.ZodEnum<["confirmed", "incorrect"]>;
4261
+ correctedDiagnosisType: z.ZodOptional<z.ZodString>;
4262
+ }, "strip", z.ZodTypeAny, {
4263
+ diagnosisFeedback: "confirmed" | "incorrect";
4264
+ correctedDiagnosisType?: string | undefined;
4265
+ }, {
4266
+ diagnosisFeedback: "confirmed" | "incorrect";
4267
+ correctedDiagnosisType?: string | undefined;
4268
+ }>, {
4269
+ diagnosisFeedback: "confirmed" | "incorrect";
4270
+ correctedDiagnosisType?: string | undefined;
4271
+ }, {
4272
+ diagnosisFeedback: "confirmed" | "incorrect";
4273
+ correctedDiagnosisType?: string | undefined;
4274
+ }>;
4275
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4276
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
4277
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4278
+ }, "strip", z.ZodTypeAny, {
4279
+ type: string;
4280
+ id: string;
4281
+ attributes: {
4282
+ diagnosisFeedback: "confirmed" | "incorrect";
4283
+ correctedDiagnosisType?: string | undefined;
4284
+ };
4285
+ relationships?: Record<string, unknown> | undefined;
4286
+ links?: Record<string, string> | undefined;
4287
+ meta?: Record<string, unknown> | undefined;
4288
+ }, {
4289
+ type: string;
4290
+ id: string;
4291
+ attributes: {
4292
+ diagnosisFeedback: "confirmed" | "incorrect";
4293
+ correctedDiagnosisType?: string | undefined;
4294
+ };
4295
+ relationships?: Record<string, unknown> | undefined;
4296
+ links?: Record<string, string> | undefined;
4297
+ meta?: Record<string, unknown> | undefined;
4298
+ }>;
4299
+ path: "/observations/:id/feedback";
4300
+ responses: {
4301
+ 200: z.ZodObject<{
4302
+ data: z.ZodObject<{
4303
+ type: z.ZodLiteral<string>;
4304
+ id: z.ZodString;
4305
+ attributes: z.ZodObject<{
4306
+ fieldId: z.ZodNullable<z.ZodString>;
4307
+ farmId: z.ZodString;
4308
+ uploadedBy: z.ZodString;
4309
+ photoUrl: z.ZodString;
4310
+ photoThumbnail: z.ZodNullable<z.ZodString>;
4311
+ location: z.ZodNullable<z.ZodObject<{
4312
+ lat: z.ZodNumber;
4313
+ lng: z.ZodNumber;
4314
+ accuracy: z.ZodOptional<z.ZodNumber>;
4315
+ }, "strip", z.ZodTypeAny, {
4316
+ lat: number;
4317
+ lng: number;
4318
+ accuracy?: number | undefined;
4319
+ }, {
4320
+ lat: number;
4321
+ lng: number;
4322
+ accuracy?: number | undefined;
4323
+ }>>;
4324
+ capturedAt: z.ZodDate;
4325
+ observationType: z.ZodEnum<["disease", "pest", "nutrient", "weed", "general", "health_check"]>;
4326
+ userNotes: z.ZodNullable<z.ZodString>;
4327
+ cropStageAtTime: z.ZodNullable<z.ZodEnum<["planted", "germination", "vegetative", "flowering", "fruiting", "mature", "harvested"]>>;
4328
+ analysisStatus: z.ZodEnum<["pending", "processing", "completed", "failed"]>;
4329
+ analysisCompletedAt: z.ZodNullable<z.ZodDate>;
4330
+ identifiedCrop: z.ZodNullable<z.ZodString>;
4331
+ identifiedCropConfidence: z.ZodNullable<z.ZodNumber>;
4332
+ diagnosisType: z.ZodNullable<z.ZodString>;
4333
+ diagnosisConfidence: z.ZodNullable<z.ZodNumber>;
4334
+ severity: z.ZodNullable<z.ZodEnum<["low", "medium", "high", "critical"]>>;
4335
+ affectedArea: z.ZodNullable<z.ZodEnum<["localized", "widespread", "entire_field"]>>;
4336
+ healthScore: z.ZodNullable<z.ZodNumber>;
4337
+ analysisDetails: z.ZodNullable<z.ZodObject<{
4338
+ plantIdentification: z.ZodOptional<z.ZodObject<{
4339
+ scientificName: z.ZodString;
4340
+ commonNames: z.ZodArray<z.ZodString, "many">;
4341
+ confidence: z.ZodNumber;
4342
+ provider: z.ZodOptional<z.ZodString>;
4343
+ }, "strip", z.ZodTypeAny, {
4344
+ confidence: number;
4345
+ scientificName: string;
4346
+ commonNames: string[];
4347
+ provider?: string | undefined;
4348
+ }, {
4349
+ confidence: number;
4350
+ scientificName: string;
4351
+ commonNames: string[];
4352
+ provider?: string | undefined;
4353
+ }>>;
4354
+ primaryIssue: z.ZodOptional<z.ZodObject<{
4355
+ name: z.ZodString;
4356
+ category: z.ZodString;
4357
+ confidence: z.ZodNumber;
4358
+ provider: z.ZodOptional<z.ZodString>;
4359
+ visualIndicators: z.ZodArray<z.ZodString, "many">;
4360
+ }, "strip", z.ZodTypeAny, {
4361
+ name: string;
4362
+ category: string;
4363
+ confidence: number;
4364
+ visualIndicators: string[];
4365
+ provider?: string | undefined;
4366
+ }, {
4367
+ name: string;
4368
+ category: string;
4369
+ confidence: number;
4370
+ visualIndicators: string[];
4371
+ provider?: string | undefined;
4372
+ }>>;
4373
+ secondaryIssues: z.ZodOptional<z.ZodArray<z.ZodObject<{
4374
+ name: z.ZodString;
4375
+ confidence: z.ZodNumber;
4376
+ reasoning: z.ZodString;
4377
+ }, "strip", z.ZodTypeAny, {
4378
+ name: string;
4379
+ confidence: number;
4380
+ reasoning: string;
4381
+ }, {
4382
+ name: string;
4383
+ confidence: number;
4384
+ reasoning: string;
4385
+ }>, "many">>;
4386
+ environmentalFactors: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber]>>>;
4387
+ satelliteCorrelation: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
4388
+ historicalMatches: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
4389
+ cropConflict: z.ZodOptional<z.ZodObject<{
4390
+ expectedCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4391
+ photoCrop: z.ZodOptional<z.ZodNullable<z.ZodString>>;
4392
+ conflict: z.ZodBoolean;
4393
+ reasoning: z.ZodOptional<z.ZodString>;
4394
+ }, "strip", z.ZodTypeAny, {
4395
+ conflict: boolean;
4396
+ reasoning?: string | undefined;
4397
+ expectedCrop?: string | null | undefined;
4398
+ photoCrop?: string | null | undefined;
4399
+ }, {
4400
+ conflict: boolean;
4401
+ reasoning?: string | undefined;
4402
+ expectedCrop?: string | null | undefined;
4403
+ photoCrop?: string | null | undefined;
4404
+ }>>;
4405
+ contextSignalsUsed: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
4406
+ }, "strip", z.ZodTypeAny, {
4407
+ plantIdentification?: {
4408
+ confidence: number;
4409
+ scientificName: string;
4410
+ commonNames: string[];
4411
+ provider?: string | undefined;
4412
+ } | undefined;
4413
+ primaryIssue?: {
4414
+ name: string;
4415
+ category: string;
4416
+ confidence: number;
4417
+ visualIndicators: string[];
4418
+ provider?: string | undefined;
4419
+ } | undefined;
4420
+ secondaryIssues?: {
4421
+ name: string;
4422
+ confidence: number;
4423
+ reasoning: string;
4424
+ }[] | undefined;
4425
+ environmentalFactors?: Record<string, string | number> | undefined;
4426
+ satelliteCorrelation?: Record<string, any> | undefined;
4427
+ historicalMatches?: any[] | undefined;
4428
+ cropConflict?: {
4429
+ conflict: boolean;
4430
+ reasoning?: string | undefined;
4431
+ expectedCrop?: string | null | undefined;
4432
+ photoCrop?: string | null | undefined;
4433
+ } | undefined;
4434
+ contextSignalsUsed?: string[] | undefined;
4435
+ }, {
4436
+ plantIdentification?: {
4437
+ confidence: number;
4438
+ scientificName: string;
4439
+ commonNames: string[];
4440
+ provider?: string | undefined;
4441
+ } | undefined;
4442
+ primaryIssue?: {
4443
+ name: string;
4444
+ category: string;
4445
+ confidence: number;
4446
+ visualIndicators: string[];
4447
+ provider?: string | undefined;
4448
+ } | undefined;
4449
+ secondaryIssues?: {
4450
+ name: string;
4451
+ confidence: number;
4452
+ reasoning: string;
4453
+ }[] | undefined;
4454
+ environmentalFactors?: Record<string, string | number> | undefined;
4455
+ satelliteCorrelation?: Record<string, any> | undefined;
4456
+ historicalMatches?: any[] | undefined;
4457
+ cropConflict?: {
4458
+ conflict: boolean;
4459
+ reasoning?: string | undefined;
4460
+ expectedCrop?: string | null | undefined;
4461
+ photoCrop?: string | null | undefined;
4462
+ } | undefined;
4463
+ contextSignalsUsed?: string[] | undefined;
4464
+ }>>;
4465
+ recommendations: z.ZodNullable<z.ZodArray<z.ZodObject<{
4466
+ priority: z.ZodNumber;
4467
+ action: z.ZodString;
4468
+ details: z.ZodString;
4469
+ timing: z.ZodString;
4470
+ severity: z.ZodOptional<z.ZodEnum<["low", "medium", "high", "critical"]>>;
4471
+ confidence: z.ZodOptional<z.ZodNumber>;
4472
+ materials: z.ZodOptional<z.ZodArray<z.ZodObject<{
4473
+ inventoryItemId: z.ZodOptional<z.ZodString>;
4474
+ name: z.ZodString;
4475
+ quantity: z.ZodNumber;
4476
+ unit: z.ZodString;
4477
+ costPerUnit: z.ZodOptional<z.ZodNumber>;
4478
+ totalCost: z.ZodOptional<z.ZodNumber>;
4479
+ availability: z.ZodOptional<z.ZodString>;
4480
+ inStock: z.ZodOptional<z.ZodBoolean>;
4481
+ stockQuantity: z.ZodOptional<z.ZodNumber>;
4482
+ applicationMethod: z.ZodOptional<z.ZodString>;
4483
+ }, "strip", z.ZodTypeAny, {
4484
+ name: string;
4485
+ quantity: number;
4486
+ unit: string;
4487
+ inventoryItemId?: string | undefined;
4488
+ totalCost?: number | undefined;
4489
+ costPerUnit?: number | undefined;
4490
+ availability?: string | undefined;
4491
+ inStock?: boolean | undefined;
4492
+ stockQuantity?: number | undefined;
4493
+ applicationMethod?: string | undefined;
4494
+ }, {
4495
+ name: string;
4496
+ quantity: number;
4497
+ unit: string;
4498
+ inventoryItemId?: string | undefined;
4499
+ totalCost?: number | undefined;
4500
+ costPerUnit?: number | undefined;
4501
+ availability?: string | undefined;
4502
+ inStock?: boolean | undefined;
4503
+ stockQuantity?: number | undefined;
4504
+ applicationMethod?: string | undefined;
4505
+ }>, "many">>;
4506
+ applicationMethod: z.ZodOptional<z.ZodString>;
4507
+ expectedOutcome: z.ZodOptional<z.ZodString>;
4508
+ preventiveMeasures: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
4509
+ estimatedTime: z.ZodOptional<z.ZodString>;
4510
+ riskLevel: z.ZodOptional<z.ZodString>;
4511
+ }, "strip", z.ZodTypeAny, {
4512
+ priority: number;
4513
+ action: string;
4514
+ details: string;
4515
+ timing: string;
4516
+ confidence?: number | undefined;
4517
+ applicationMethod?: string | undefined;
4518
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4519
+ materials?: {
4520
+ name: string;
4521
+ quantity: number;
4522
+ unit: string;
4523
+ inventoryItemId?: string | undefined;
4524
+ totalCost?: number | undefined;
4525
+ costPerUnit?: number | undefined;
4526
+ availability?: string | undefined;
4527
+ inStock?: boolean | undefined;
4528
+ stockQuantity?: number | undefined;
4529
+ applicationMethod?: string | undefined;
4530
+ }[] | undefined;
4531
+ expectedOutcome?: string | undefined;
4532
+ preventiveMeasures?: string[] | undefined;
4533
+ estimatedTime?: string | undefined;
4534
+ riskLevel?: string | undefined;
4535
+ }, {
4536
+ priority: number;
4537
+ action: string;
4538
+ details: string;
4539
+ timing: string;
4540
+ confidence?: number | undefined;
4541
+ applicationMethod?: string | undefined;
4542
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4543
+ materials?: {
4544
+ name: string;
4545
+ quantity: number;
4546
+ unit: string;
4547
+ inventoryItemId?: string | undefined;
4548
+ totalCost?: number | undefined;
4549
+ costPerUnit?: number | undefined;
4550
+ availability?: string | undefined;
4551
+ inStock?: boolean | undefined;
4552
+ stockQuantity?: number | undefined;
4553
+ applicationMethod?: string | undefined;
4554
+ }[] | undefined;
4555
+ expectedOutcome?: string | undefined;
4556
+ preventiveMeasures?: string[] | undefined;
4557
+ estimatedTime?: string | undefined;
4558
+ riskLevel?: string | undefined;
4559
+ }>, "many">>;
4560
+ estimatedCost: z.ZodNullable<z.ZodNumber>;
4561
+ urgencyScore: z.ZodNullable<z.ZodNumber>;
4562
+ similarCasesCount: z.ZodNullable<z.ZodNumber>;
4563
+ actionStatus: z.ZodEnum<["pending", "in_progress", "completed", "dismissed"]>;
4564
+ actionTakenAt: z.ZodNullable<z.ZodDate>;
4565
+ actionNotes: z.ZodNullable<z.ZodString>;
4566
+ diagnosisFeedback: z.ZodNullable<z.ZodEnum<["confirmed", "incorrect"]>>;
4567
+ correctedDiagnosisType: z.ZodNullable<z.ZodString>;
4568
+ feedbackAt: z.ZodNullable<z.ZodDate>;
4569
+ generatedAlertId: z.ZodNullable<z.ZodString>;
4570
+ relatedTaskId: z.ZodNullable<z.ZodString>;
4571
+ analysisProvider: z.ZodNullable<z.ZodString>;
4572
+ processingTime: z.ZodNullable<z.ZodNumber>;
4573
+ modelVersion: z.ZodNullable<z.ZodString>;
4574
+ phase: z.ZodNullable<z.ZodString>;
4575
+ } & {
4576
+ createdAt: z.ZodString;
4577
+ updatedAt: z.ZodString;
4578
+ }, "strip", z.ZodTypeAny, {
4579
+ createdAt: string;
4580
+ updatedAt: string;
4581
+ recommendations: {
4582
+ priority: number;
4583
+ action: string;
4584
+ details: string;
4585
+ timing: string;
4586
+ confidence?: number | undefined;
4587
+ applicationMethod?: string | undefined;
4588
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4589
+ materials?: {
4590
+ name: string;
4591
+ quantity: number;
4592
+ unit: string;
4593
+ inventoryItemId?: string | undefined;
4594
+ totalCost?: number | undefined;
4595
+ costPerUnit?: number | undefined;
4596
+ availability?: string | undefined;
4597
+ inStock?: boolean | undefined;
4598
+ stockQuantity?: number | undefined;
4599
+ applicationMethod?: string | undefined;
4600
+ }[] | undefined;
4601
+ expectedOutcome?: string | undefined;
4602
+ preventiveMeasures?: string[] | undefined;
4603
+ estimatedTime?: string | undefined;
4604
+ riskLevel?: string | undefined;
4605
+ }[] | null;
4606
+ farmId: string;
4607
+ location: {
4608
+ lat: number;
4609
+ lng: number;
4610
+ accuracy?: number | undefined;
4611
+ } | null;
4612
+ fieldId: string | null;
4613
+ estimatedCost: number | null;
4614
+ severity: "critical" | "low" | "medium" | "high" | null;
4615
+ uploadedBy: string;
4616
+ photoUrl: string;
4617
+ photoThumbnail: string | null;
4618
+ capturedAt: Date;
4619
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
4620
+ userNotes: string | null;
4621
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
4622
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
4623
+ analysisCompletedAt: Date | null;
4624
+ identifiedCrop: string | null;
4625
+ identifiedCropConfidence: number | null;
4626
+ diagnosisType: string | null;
4627
+ diagnosisConfidence: number | null;
4628
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
4629
+ healthScore: number | null;
4630
+ analysisDetails: {
4631
+ plantIdentification?: {
4632
+ confidence: number;
4633
+ scientificName: string;
4634
+ commonNames: string[];
4635
+ provider?: string | undefined;
4636
+ } | undefined;
4637
+ primaryIssue?: {
4638
+ name: string;
4639
+ category: string;
4640
+ confidence: number;
4641
+ visualIndicators: string[];
4642
+ provider?: string | undefined;
4643
+ } | undefined;
4644
+ secondaryIssues?: {
4645
+ name: string;
4646
+ confidence: number;
4647
+ reasoning: string;
4648
+ }[] | undefined;
4649
+ environmentalFactors?: Record<string, string | number> | undefined;
4650
+ satelliteCorrelation?: Record<string, any> | undefined;
4651
+ historicalMatches?: any[] | undefined;
4652
+ cropConflict?: {
4653
+ conflict: boolean;
4654
+ reasoning?: string | undefined;
4655
+ expectedCrop?: string | null | undefined;
4656
+ photoCrop?: string | null | undefined;
4657
+ } | undefined;
4658
+ contextSignalsUsed?: string[] | undefined;
4659
+ } | null;
4660
+ urgencyScore: number | null;
4661
+ similarCasesCount: number | null;
4662
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
4663
+ actionTakenAt: Date | null;
4664
+ actionNotes: string | null;
4665
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4666
+ correctedDiagnosisType: string | null;
4667
+ feedbackAt: Date | null;
4668
+ generatedAlertId: string | null;
4669
+ relatedTaskId: string | null;
4670
+ analysisProvider: string | null;
4671
+ processingTime: number | null;
4672
+ modelVersion: string | null;
4673
+ phase: string | null;
4674
+ }, {
4675
+ createdAt: string;
4676
+ updatedAt: string;
4677
+ recommendations: {
4678
+ priority: number;
4679
+ action: string;
4680
+ details: string;
4681
+ timing: string;
4682
+ confidence?: number | undefined;
4683
+ applicationMethod?: string | undefined;
4684
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4685
+ materials?: {
4686
+ name: string;
4687
+ quantity: number;
4688
+ unit: string;
4689
+ inventoryItemId?: string | undefined;
4690
+ totalCost?: number | undefined;
4691
+ costPerUnit?: number | undefined;
4692
+ availability?: string | undefined;
4693
+ inStock?: boolean | undefined;
4694
+ stockQuantity?: number | undefined;
4695
+ applicationMethod?: string | undefined;
4696
+ }[] | undefined;
4697
+ expectedOutcome?: string | undefined;
4698
+ preventiveMeasures?: string[] | undefined;
4699
+ estimatedTime?: string | undefined;
4700
+ riskLevel?: string | undefined;
4701
+ }[] | null;
4702
+ farmId: string;
4703
+ location: {
4704
+ lat: number;
4705
+ lng: number;
4706
+ accuracy?: number | undefined;
4707
+ } | null;
4708
+ fieldId: string | null;
4709
+ estimatedCost: number | null;
4710
+ severity: "critical" | "low" | "medium" | "high" | null;
4711
+ uploadedBy: string;
4712
+ photoUrl: string;
4713
+ photoThumbnail: string | null;
4714
+ capturedAt: Date;
4715
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
4716
+ userNotes: string | null;
4717
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
4718
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
4719
+ analysisCompletedAt: Date | null;
4720
+ identifiedCrop: string | null;
4721
+ identifiedCropConfidence: number | null;
4722
+ diagnosisType: string | null;
4723
+ diagnosisConfidence: number | null;
4724
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
4725
+ healthScore: number | null;
4726
+ analysisDetails: {
4727
+ plantIdentification?: {
4728
+ confidence: number;
4729
+ scientificName: string;
4730
+ commonNames: string[];
4731
+ provider?: string | undefined;
4732
+ } | undefined;
4733
+ primaryIssue?: {
4734
+ name: string;
4735
+ category: string;
4736
+ confidence: number;
4737
+ visualIndicators: string[];
4738
+ provider?: string | undefined;
4739
+ } | undefined;
4740
+ secondaryIssues?: {
4741
+ name: string;
4742
+ confidence: number;
4743
+ reasoning: string;
4744
+ }[] | undefined;
4745
+ environmentalFactors?: Record<string, string | number> | undefined;
4746
+ satelliteCorrelation?: Record<string, any> | undefined;
4747
+ historicalMatches?: any[] | undefined;
4748
+ cropConflict?: {
4749
+ conflict: boolean;
4750
+ reasoning?: string | undefined;
4751
+ expectedCrop?: string | null | undefined;
4752
+ photoCrop?: string | null | undefined;
4753
+ } | undefined;
4754
+ contextSignalsUsed?: string[] | undefined;
4755
+ } | null;
4756
+ urgencyScore: number | null;
4757
+ similarCasesCount: number | null;
4758
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
4759
+ actionTakenAt: Date | null;
4760
+ actionNotes: string | null;
4761
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4762
+ correctedDiagnosisType: string | null;
4763
+ feedbackAt: Date | null;
4764
+ generatedAlertId: string | null;
4765
+ relatedTaskId: string | null;
4766
+ analysisProvider: string | null;
4767
+ processingTime: number | null;
4768
+ modelVersion: string | null;
4769
+ phase: string | null;
4770
+ }>;
4771
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4772
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
4773
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4774
+ }, "strip", z.ZodTypeAny, {
4775
+ type: string;
4776
+ id: string;
4777
+ attributes: {
4778
+ createdAt: string;
4779
+ updatedAt: string;
4780
+ recommendations: {
4781
+ priority: number;
4782
+ action: string;
4783
+ details: string;
4784
+ timing: string;
4785
+ confidence?: number | undefined;
4786
+ applicationMethod?: string | undefined;
4787
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4788
+ materials?: {
4789
+ name: string;
4790
+ quantity: number;
4791
+ unit: string;
4792
+ inventoryItemId?: string | undefined;
4793
+ totalCost?: number | undefined;
4794
+ costPerUnit?: number | undefined;
4795
+ availability?: string | undefined;
4796
+ inStock?: boolean | undefined;
4797
+ stockQuantity?: number | undefined;
4798
+ applicationMethod?: string | undefined;
4799
+ }[] | undefined;
4800
+ expectedOutcome?: string | undefined;
4801
+ preventiveMeasures?: string[] | undefined;
4802
+ estimatedTime?: string | undefined;
4803
+ riskLevel?: string | undefined;
4804
+ }[] | null;
4805
+ farmId: string;
4806
+ location: {
4807
+ lat: number;
4808
+ lng: number;
4809
+ accuracy?: number | undefined;
4810
+ } | null;
4811
+ fieldId: string | null;
4812
+ estimatedCost: number | null;
4813
+ severity: "critical" | "low" | "medium" | "high" | null;
4814
+ uploadedBy: string;
4815
+ photoUrl: string;
4816
+ photoThumbnail: string | null;
4817
+ capturedAt: Date;
4818
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
4819
+ userNotes: string | null;
4820
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
4821
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
4822
+ analysisCompletedAt: Date | null;
4823
+ identifiedCrop: string | null;
4824
+ identifiedCropConfidence: number | null;
4825
+ diagnosisType: string | null;
4826
+ diagnosisConfidence: number | null;
4827
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
4828
+ healthScore: number | null;
4829
+ analysisDetails: {
4830
+ plantIdentification?: {
4831
+ confidence: number;
4832
+ scientificName: string;
4833
+ commonNames: string[];
4834
+ provider?: string | undefined;
4835
+ } | undefined;
4836
+ primaryIssue?: {
4837
+ name: string;
4838
+ category: string;
4839
+ confidence: number;
4840
+ visualIndicators: string[];
4841
+ provider?: string | undefined;
4842
+ } | undefined;
4843
+ secondaryIssues?: {
4844
+ name: string;
4845
+ confidence: number;
4846
+ reasoning: string;
4847
+ }[] | undefined;
4848
+ environmentalFactors?: Record<string, string | number> | undefined;
4849
+ satelliteCorrelation?: Record<string, any> | undefined;
4850
+ historicalMatches?: any[] | undefined;
4851
+ cropConflict?: {
4852
+ conflict: boolean;
4853
+ reasoning?: string | undefined;
4854
+ expectedCrop?: string | null | undefined;
4855
+ photoCrop?: string | null | undefined;
4856
+ } | undefined;
4857
+ contextSignalsUsed?: string[] | undefined;
4858
+ } | null;
4859
+ urgencyScore: number | null;
4860
+ similarCasesCount: number | null;
4861
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
4862
+ actionTakenAt: Date | null;
4863
+ actionNotes: string | null;
4864
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4865
+ correctedDiagnosisType: string | null;
4866
+ feedbackAt: Date | null;
4867
+ generatedAlertId: string | null;
4868
+ relatedTaskId: string | null;
4869
+ analysisProvider: string | null;
4870
+ processingTime: number | null;
4871
+ modelVersion: string | null;
4872
+ phase: string | null;
4873
+ };
4874
+ relationships?: Record<string, unknown> | undefined;
4875
+ links?: Record<string, string> | undefined;
4876
+ meta?: Record<string, unknown> | undefined;
4877
+ }, {
4878
+ type: string;
4879
+ id: string;
4880
+ attributes: {
4881
+ createdAt: string;
4882
+ updatedAt: string;
4883
+ recommendations: {
4884
+ priority: number;
4885
+ action: string;
4886
+ details: string;
4887
+ timing: string;
4888
+ confidence?: number | undefined;
4889
+ applicationMethod?: string | undefined;
4890
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
4891
+ materials?: {
4892
+ name: string;
4893
+ quantity: number;
4894
+ unit: string;
4895
+ inventoryItemId?: string | undefined;
4896
+ totalCost?: number | undefined;
4897
+ costPerUnit?: number | undefined;
4898
+ availability?: string | undefined;
4899
+ inStock?: boolean | undefined;
4900
+ stockQuantity?: number | undefined;
4901
+ applicationMethod?: string | undefined;
4902
+ }[] | undefined;
4903
+ expectedOutcome?: string | undefined;
4904
+ preventiveMeasures?: string[] | undefined;
4905
+ estimatedTime?: string | undefined;
4906
+ riskLevel?: string | undefined;
4907
+ }[] | null;
4908
+ farmId: string;
4909
+ location: {
4910
+ lat: number;
4911
+ lng: number;
4912
+ accuracy?: number | undefined;
4913
+ } | null;
4914
+ fieldId: string | null;
4915
+ estimatedCost: number | null;
4916
+ severity: "critical" | "low" | "medium" | "high" | null;
4917
+ uploadedBy: string;
4918
+ photoUrl: string;
4919
+ photoThumbnail: string | null;
4920
+ capturedAt: Date;
4921
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
4922
+ userNotes: string | null;
4923
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
4924
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
4925
+ analysisCompletedAt: Date | null;
4926
+ identifiedCrop: string | null;
4927
+ identifiedCropConfidence: number | null;
4928
+ diagnosisType: string | null;
4929
+ diagnosisConfidence: number | null;
4930
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
4931
+ healthScore: number | null;
4932
+ analysisDetails: {
4933
+ plantIdentification?: {
4934
+ confidence: number;
4935
+ scientificName: string;
4936
+ commonNames: string[];
4937
+ provider?: string | undefined;
4938
+ } | undefined;
4939
+ primaryIssue?: {
4940
+ name: string;
4941
+ category: string;
4942
+ confidence: number;
4943
+ visualIndicators: string[];
4944
+ provider?: string | undefined;
4945
+ } | undefined;
4946
+ secondaryIssues?: {
4947
+ name: string;
4948
+ confidence: number;
4949
+ reasoning: string;
4950
+ }[] | undefined;
4951
+ environmentalFactors?: Record<string, string | number> | undefined;
4952
+ satelliteCorrelation?: Record<string, any> | undefined;
4953
+ historicalMatches?: any[] | undefined;
4954
+ cropConflict?: {
4955
+ conflict: boolean;
4956
+ reasoning?: string | undefined;
4957
+ expectedCrop?: string | null | undefined;
4958
+ photoCrop?: string | null | undefined;
4959
+ } | undefined;
4960
+ contextSignalsUsed?: string[] | undefined;
4961
+ } | null;
4962
+ urgencyScore: number | null;
4963
+ similarCasesCount: number | null;
4964
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
4965
+ actionTakenAt: Date | null;
4966
+ actionNotes: string | null;
4967
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
4968
+ correctedDiagnosisType: string | null;
4969
+ feedbackAt: Date | null;
4970
+ generatedAlertId: string | null;
4971
+ relatedTaskId: string | null;
4972
+ analysisProvider: string | null;
4973
+ processingTime: number | null;
4974
+ modelVersion: string | null;
4975
+ phase: string | null;
4976
+ };
4977
+ relationships?: Record<string, unknown> | undefined;
4978
+ links?: Record<string, string> | undefined;
4979
+ meta?: Record<string, unknown> | undefined;
4980
+ }>;
4981
+ included: z.ZodOptional<z.ZodArray<z.ZodObject<{
4982
+ type: z.ZodString;
4983
+ id: z.ZodString;
4984
+ attributes: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4985
+ relationships: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4986
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
4987
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
4988
+ }, "strip", z.ZodTypeAny, {
4989
+ type: string;
4990
+ id: string;
4991
+ attributes?: Record<string, unknown> | undefined;
4992
+ relationships?: Record<string, unknown> | undefined;
4993
+ links?: Record<string, string> | undefined;
4994
+ meta?: Record<string, unknown> | undefined;
4995
+ }, {
4996
+ type: string;
4997
+ id: string;
4998
+ attributes?: Record<string, unknown> | undefined;
4999
+ relationships?: Record<string, unknown> | undefined;
5000
+ links?: Record<string, string> | undefined;
5001
+ meta?: Record<string, unknown> | undefined;
5002
+ }>, "many">>;
5003
+ meta: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
5004
+ links: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
5005
+ }, "strip", z.ZodTypeAny, {
5006
+ data: {
5007
+ type: string;
5008
+ id: string;
5009
+ attributes: {
5010
+ createdAt: string;
5011
+ updatedAt: string;
5012
+ recommendations: {
5013
+ priority: number;
5014
+ action: string;
5015
+ details: string;
5016
+ timing: string;
5017
+ confidence?: number | undefined;
5018
+ applicationMethod?: string | undefined;
5019
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
5020
+ materials?: {
5021
+ name: string;
5022
+ quantity: number;
5023
+ unit: string;
5024
+ inventoryItemId?: string | undefined;
5025
+ totalCost?: number | undefined;
5026
+ costPerUnit?: number | undefined;
5027
+ availability?: string | undefined;
5028
+ inStock?: boolean | undefined;
5029
+ stockQuantity?: number | undefined;
5030
+ applicationMethod?: string | undefined;
5031
+ }[] | undefined;
5032
+ expectedOutcome?: string | undefined;
5033
+ preventiveMeasures?: string[] | undefined;
5034
+ estimatedTime?: string | undefined;
5035
+ riskLevel?: string | undefined;
5036
+ }[] | null;
5037
+ farmId: string;
5038
+ location: {
5039
+ lat: number;
5040
+ lng: number;
5041
+ accuracy?: number | undefined;
5042
+ } | null;
5043
+ fieldId: string | null;
5044
+ estimatedCost: number | null;
5045
+ severity: "critical" | "low" | "medium" | "high" | null;
5046
+ uploadedBy: string;
5047
+ photoUrl: string;
5048
+ photoThumbnail: string | null;
5049
+ capturedAt: Date;
5050
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
5051
+ userNotes: string | null;
5052
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
5053
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
5054
+ analysisCompletedAt: Date | null;
5055
+ identifiedCrop: string | null;
5056
+ identifiedCropConfidence: number | null;
5057
+ diagnosisType: string | null;
5058
+ diagnosisConfidence: number | null;
5059
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
5060
+ healthScore: number | null;
5061
+ analysisDetails: {
5062
+ plantIdentification?: {
5063
+ confidence: number;
5064
+ scientificName: string;
5065
+ commonNames: string[];
5066
+ provider?: string | undefined;
5067
+ } | undefined;
5068
+ primaryIssue?: {
5069
+ name: string;
5070
+ category: string;
5071
+ confidence: number;
5072
+ visualIndicators: string[];
5073
+ provider?: string | undefined;
5074
+ } | undefined;
5075
+ secondaryIssues?: {
5076
+ name: string;
5077
+ confidence: number;
5078
+ reasoning: string;
5079
+ }[] | undefined;
5080
+ environmentalFactors?: Record<string, string | number> | undefined;
5081
+ satelliteCorrelation?: Record<string, any> | undefined;
5082
+ historicalMatches?: any[] | undefined;
5083
+ cropConflict?: {
5084
+ conflict: boolean;
5085
+ reasoning?: string | undefined;
5086
+ expectedCrop?: string | null | undefined;
5087
+ photoCrop?: string | null | undefined;
5088
+ } | undefined;
5089
+ contextSignalsUsed?: string[] | undefined;
5090
+ } | null;
5091
+ urgencyScore: number | null;
5092
+ similarCasesCount: number | null;
5093
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
5094
+ actionTakenAt: Date | null;
5095
+ actionNotes: string | null;
5096
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
5097
+ correctedDiagnosisType: string | null;
5098
+ feedbackAt: Date | null;
5099
+ generatedAlertId: string | null;
5100
+ relatedTaskId: string | null;
5101
+ analysisProvider: string | null;
5102
+ processingTime: number | null;
5103
+ modelVersion: string | null;
5104
+ phase: string | null;
5105
+ };
5106
+ relationships?: Record<string, unknown> | undefined;
5107
+ links?: Record<string, string> | undefined;
5108
+ meta?: Record<string, unknown> | undefined;
5109
+ };
5110
+ links?: Record<string, string> | undefined;
5111
+ meta?: Record<string, unknown> | undefined;
5112
+ included?: {
5113
+ type: string;
5114
+ id: string;
5115
+ attributes?: Record<string, unknown> | undefined;
5116
+ relationships?: Record<string, unknown> | undefined;
5117
+ links?: Record<string, string> | undefined;
5118
+ meta?: Record<string, unknown> | undefined;
5119
+ }[] | undefined;
5120
+ }, {
5121
+ data: {
5122
+ type: string;
5123
+ id: string;
5124
+ attributes: {
5125
+ createdAt: string;
5126
+ updatedAt: string;
5127
+ recommendations: {
5128
+ priority: number;
5129
+ action: string;
5130
+ details: string;
5131
+ timing: string;
5132
+ confidence?: number | undefined;
5133
+ applicationMethod?: string | undefined;
5134
+ severity?: "critical" | "low" | "medium" | "high" | undefined;
5135
+ materials?: {
5136
+ name: string;
5137
+ quantity: number;
5138
+ unit: string;
5139
+ inventoryItemId?: string | undefined;
5140
+ totalCost?: number | undefined;
5141
+ costPerUnit?: number | undefined;
5142
+ availability?: string | undefined;
5143
+ inStock?: boolean | undefined;
5144
+ stockQuantity?: number | undefined;
5145
+ applicationMethod?: string | undefined;
5146
+ }[] | undefined;
5147
+ expectedOutcome?: string | undefined;
5148
+ preventiveMeasures?: string[] | undefined;
5149
+ estimatedTime?: string | undefined;
5150
+ riskLevel?: string | undefined;
5151
+ }[] | null;
5152
+ farmId: string;
5153
+ location: {
5154
+ lat: number;
5155
+ lng: number;
5156
+ accuracy?: number | undefined;
5157
+ } | null;
5158
+ fieldId: string | null;
5159
+ estimatedCost: number | null;
5160
+ severity: "critical" | "low" | "medium" | "high" | null;
5161
+ uploadedBy: string;
5162
+ photoUrl: string;
5163
+ photoThumbnail: string | null;
5164
+ capturedAt: Date;
5165
+ observationType: "general" | "disease" | "pest" | "nutrient" | "weed" | "health_check";
5166
+ userNotes: string | null;
5167
+ cropStageAtTime: "planted" | "flowering" | "fruiting" | "mature" | "harvested" | "germination" | "vegetative" | null;
5168
+ analysisStatus: "pending" | "failed" | "processing" | "completed";
5169
+ analysisCompletedAt: Date | null;
5170
+ identifiedCrop: string | null;
5171
+ identifiedCropConfidence: number | null;
5172
+ diagnosisType: string | null;
5173
+ diagnosisConfidence: number | null;
5174
+ affectedArea: "localized" | "widespread" | "entire_field" | null;
5175
+ healthScore: number | null;
5176
+ analysisDetails: {
5177
+ plantIdentification?: {
5178
+ confidence: number;
5179
+ scientificName: string;
5180
+ commonNames: string[];
5181
+ provider?: string | undefined;
5182
+ } | undefined;
5183
+ primaryIssue?: {
5184
+ name: string;
5185
+ category: string;
5186
+ confidence: number;
5187
+ visualIndicators: string[];
5188
+ provider?: string | undefined;
5189
+ } | undefined;
5190
+ secondaryIssues?: {
5191
+ name: string;
5192
+ confidence: number;
5193
+ reasoning: string;
5194
+ }[] | undefined;
5195
+ environmentalFactors?: Record<string, string | number> | undefined;
5196
+ satelliteCorrelation?: Record<string, any> | undefined;
5197
+ historicalMatches?: any[] | undefined;
5198
+ cropConflict?: {
5199
+ conflict: boolean;
5200
+ reasoning?: string | undefined;
5201
+ expectedCrop?: string | null | undefined;
5202
+ photoCrop?: string | null | undefined;
5203
+ } | undefined;
5204
+ contextSignalsUsed?: string[] | undefined;
5205
+ } | null;
5206
+ urgencyScore: number | null;
5207
+ similarCasesCount: number | null;
5208
+ actionStatus: "pending" | "completed" | "in_progress" | "dismissed";
5209
+ actionTakenAt: Date | null;
5210
+ actionNotes: string | null;
5211
+ diagnosisFeedback: "confirmed" | "incorrect" | null;
5212
+ correctedDiagnosisType: string | null;
5213
+ feedbackAt: Date | null;
5214
+ generatedAlertId: string | null;
5215
+ relatedTaskId: string | null;
5216
+ analysisProvider: string | null;
5217
+ processingTime: number | null;
5218
+ modelVersion: string | null;
5219
+ phase: string | null;
5220
+ };
5221
+ relationships?: Record<string, unknown> | undefined;
5222
+ links?: Record<string, string> | undefined;
5223
+ meta?: Record<string, unknown> | undefined;
5224
+ };
5225
+ links?: Record<string, string> | undefined;
5226
+ meta?: Record<string, unknown> | undefined;
5227
+ included?: {
5228
+ type: string;
5229
+ id: string;
5230
+ attributes?: Record<string, unknown> | undefined;
5231
+ relationships?: Record<string, unknown> | undefined;
5232
+ links?: Record<string, string> | undefined;
5233
+ meta?: Record<string, unknown> | undefined;
5234
+ }[] | undefined;
5235
+ }>;
5236
+ 400: z.ZodObject<{
5237
+ message: z.ZodString;
5238
+ code: z.ZodString;
5239
+ upgradeUrl: z.ZodOptional<z.ZodString>;
5240
+ currentLimit: z.ZodOptional<z.ZodNumber>;
5241
+ currentUsage: z.ZodOptional<z.ZodNumber>;
5242
+ limit: z.ZodOptional<z.ZodNumber>;
5243
+ resetDate: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
5244
+ resetTime: z.ZodOptional<z.ZodString>;
5245
+ current: z.ZodOptional<z.ZodNumber>;
5246
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
5247
+ message: z.ZodString;
5248
+ code: z.ZodString;
5249
+ upgradeUrl: z.ZodOptional<z.ZodString>;
5250
+ currentLimit: z.ZodOptional<z.ZodNumber>;
5251
+ currentUsage: z.ZodOptional<z.ZodNumber>;
5252
+ limit: z.ZodOptional<z.ZodNumber>;
5253
+ resetDate: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
5254
+ resetTime: z.ZodOptional<z.ZodString>;
5255
+ current: z.ZodOptional<z.ZodNumber>;
5256
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
5257
+ message: z.ZodString;
5258
+ code: z.ZodString;
5259
+ upgradeUrl: z.ZodOptional<z.ZodString>;
5260
+ currentLimit: z.ZodOptional<z.ZodNumber>;
5261
+ currentUsage: z.ZodOptional<z.ZodNumber>;
5262
+ limit: z.ZodOptional<z.ZodNumber>;
5263
+ resetDate: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodDate]>>;
5264
+ resetTime: z.ZodOptional<z.ZodString>;
5265
+ current: z.ZodOptional<z.ZodNumber>;
5266
+ }, z.ZodTypeAny, "passthrough">>;
5267
+ 404: z.ZodObject<{
5268
+ message: z.ZodString;
5269
+ code: z.ZodString;
5270
+ }, "strip", z.ZodTypeAny, {
5271
+ code: string;
5272
+ message: string;
5273
+ }, {
5274
+ code: string;
5275
+ message: string;
5276
+ }>;
5277
+ };
5278
+ };
3745
5279
  deleteObservation: {
3746
5280
  summary: "Delete observation and associated photo";
3747
5281
  method: "DELETE";