lionagi 0.1.1__py3-none-any.whl → 0.1.2__py3-none-any.whl

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 (44) hide show
  1. lionagi/core/execute/structure_executor.py +21 -1
  2. lionagi/core/flow/monoflow/ReAct.py +3 -1
  3. lionagi/core/flow/monoflow/followup.py +3 -1
  4. lionagi/core/generic/component.py +197 -120
  5. lionagi/core/generic/condition.py +2 -0
  6. lionagi/core/generic/edge.py +33 -33
  7. lionagi/core/graph/graph.py +1 -1
  8. lionagi/core/tool/tool_manager.py +10 -9
  9. lionagi/experimental/report/form.py +64 -0
  10. lionagi/experimental/report/report.py +138 -0
  11. lionagi/experimental/report/util.py +47 -0
  12. lionagi/experimental/tool/schema.py +3 -3
  13. lionagi/experimental/tool/tool_manager.py +1 -1
  14. lionagi/experimental/validator/rule.py +139 -0
  15. lionagi/experimental/validator/validator.py +56 -0
  16. lionagi/experimental/work/__init__.py +10 -0
  17. lionagi/experimental/work/async_queue.py +54 -0
  18. lionagi/experimental/work/schema.py +60 -17
  19. lionagi/experimental/work/work_function.py +55 -77
  20. lionagi/experimental/work/worker.py +56 -12
  21. lionagi/experimental/work2/__init__.py +0 -0
  22. lionagi/experimental/work2/form.py +371 -0
  23. lionagi/experimental/work2/report.py +289 -0
  24. lionagi/experimental/work2/schema.py +30 -0
  25. lionagi/experimental/{work → work2}/tests.py +1 -1
  26. lionagi/experimental/work2/util.py +0 -0
  27. lionagi/experimental/work2/work.py +0 -0
  28. lionagi/experimental/work2/work_function.py +89 -0
  29. lionagi/experimental/work2/worker.py +12 -0
  30. lionagi/integrations/storage/storage_util.py +4 -4
  31. lionagi/integrations/storage/structure_excel.py +268 -0
  32. lionagi/integrations/storage/to_excel.py +18 -9
  33. lionagi/libs/__init__.py +4 -0
  34. lionagi/tests/test_core/generic/__init__.py +0 -0
  35. lionagi/tests/test_core/generic/test_component.py +89 -0
  36. lionagi/version.py +1 -1
  37. {lionagi-0.1.1.dist-info → lionagi-0.1.2.dist-info}/METADATA +1 -1
  38. {lionagi-0.1.1.dist-info → lionagi-0.1.2.dist-info}/RECORD +43 -27
  39. lionagi/experimental/work/_logger.py +0 -25
  40. /lionagi/experimental/{work/exchange.py → report/__init__.py} +0 -0
  41. /lionagi/experimental/{work/util.py → validator/__init__.py} +0 -0
  42. {lionagi-0.1.1.dist-info → lionagi-0.1.2.dist-info}/LICENSE +0 -0
  43. {lionagi-0.1.1.dist-info → lionagi-0.1.2.dist-info}/WHEEL +0 -0
  44. {lionagi-0.1.1.dist-info → lionagi-0.1.2.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,5 @@
1
1
  lionagi/__init__.py,sha256=i6Ci7FebU2s4EVVnBFj1Dsi5RvP80JqeSqW-iripRPg,418
2
- lionagi/version.py,sha256=rnObPjuBcEStqSO0S6gsdS_ot8ITOQjVj_-P1LUUYpg,22
2
+ lionagi/version.py,sha256=YvuYzWnKtqBb-IqG8HAu-nhIYAsgj9Vmc_b9o7vO-js,22
3
3
  lionagi/core/__init__.py,sha256=IC9rZ8-9LuOPmJL9k6K6Geqi9jdURDUTsgC_h58O_MY,484
4
4
  lionagi/core/agent/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  lionagi/core/agent/base_agent.py,sha256=DFi7PWqfwiUiuZXzBIiy949l-LK3z0GaW_y7j-V_a7c,2881
@@ -24,15 +24,15 @@ lionagi/core/execute/base_executor.py,sha256=yMdyCT3l3XZFnXnTFJ2fxid4m4uMGBXlQdj
24
24
  lionagi/core/execute/branch_executor.py,sha256=TjY6B9dCwrxHSvutt2CIhtMgCQ2f3HV3thYpNzgRqYA,11141
25
25
  lionagi/core/execute/instruction_map_executor.py,sha256=5OxWiiAn7WDh9KS3Geu6I4EKAEiclx2J0kCMDPeJRqA,7694
26
26
  lionagi/core/execute/neo4j_executor.py,sha256=IB7aYMUGNUuqD24pksQVdQSpezLw7xujTceLMaW8ijo,15254
27
- lionagi/core/execute/structure_executor.py,sha256=EuF6rT4_fKJoGq8AIv9trqsdnlZR71b6asCUI1AcPcY,12151
27
+ lionagi/core/execute/structure_executor.py,sha256=Jmys71AF6tNW3wZ0lUjARM08DUGwuy6YRskS9np3jWY,13281
28
28
  lionagi/core/flow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  lionagi/core/flow/baseflow.py,sha256=rbxDYfBCUt0ctja4zN85Y6sAh7BznR3MxteP4xa9izw,396
30
30
  lionagi/core/flow/mono_chat_mixin.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
31
- lionagi/core/flow/monoflow/ReAct.py,sha256=ULzIJmYVvRwOgqINeCM2tzfOvbnelgyKeAIlBrcfzNg,9585
31
+ lionagi/core/flow/monoflow/ReAct.py,sha256=JwdoJjR8S5Vw6YaiEgRAIpmUxYIMVaBVTG-Mg6TtoJ0,9637
32
32
  lionagi/core/flow/monoflow/__init__.py,sha256=naNpq-RWnNfVytUgn61xbRYe8Pt0qz8jYy_CRrpUojw,159
33
33
  lionagi/core/flow/monoflow/chat.py,sha256=J2TgZT7FEYf_bHjJk6gNeZAN2tNg1CG8WVwoUDSFV6M,3239
34
34
  lionagi/core/flow/monoflow/chat_mixin.py,sha256=cifIlJvAOYR9021EMc1aDZ5KlrtfOZuXGOs9LZ0Hf-0,8393
35
- lionagi/core/flow/monoflow/followup.py,sha256=NMecy2b5443lIAqH4qfxnJDwVjF4ZqvmqQWjcdCgvts,8886
35
+ lionagi/core/flow/monoflow/followup.py,sha256=YXTs2ct6jgWUOlVwu57TsO7OkY0hcesJSuDyJ0x71Gg,8938
36
36
  lionagi/core/flow/polyflow/__init__.py,sha256=Ti4HTyIagaZa-Mu7DBnid246BuvXtTuGhBdlVfDaBnM,27
37
37
  lionagi/core/flow/polyflow/chat.py,sha256=RWDD_1ox1MzV65SWFrfY23Cx-kOenUX5y5vPveyjGQU,10466
38
38
  lionagi/core/form/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -43,10 +43,10 @@ lionagi/core/form/mixin.py,sha256=naCJDJ-u4F7RndLcHlBbOo0cecr31SiR-Qe9mFZ4l1U,69
43
43
  lionagi/core/form/scored_form.py,sha256=96EOKXrHB9MVEhvEY4DPEjC57T1_dTqQ4tZjc8xTk-c,392
44
44
  lionagi/core/generic/__init__.py,sha256=ynRqaY9kId2Z7g77FLU-OjEdwieTbRhEjp9bcBfq7Zk,772
45
45
  lionagi/core/generic/action.py,sha256=a9nToGSkHhOqlBxrN_xD9PSTrhCdXde3TKYL7MKAj8k,712
46
- lionagi/core/generic/component.py,sha256=Ct-OCkOQ94l8LxPeMTezUXcoVP3gjp99DkqdwRP0AJ8,14011
47
- lionagi/core/generic/condition.py,sha256=yDJfQ65gcblw7V7XDYAwLBVT7U7_tiwU1z2GD_rNa84,1169
46
+ lionagi/core/generic/component.py,sha256=ZEOc3nQbjrdSU3LgOMik_1Tj_OvUrOtV1dzFN488gow,17247
47
+ lionagi/core/generic/condition.py,sha256=dB0Ws_4Pe-f8ZRiu0_iJIVWmy5jpSDOlLQSW9sclzeQ,1215
48
48
  lionagi/core/generic/data_logger.py,sha256=1OLTS9CLpXPtxgINEXaZwJB3MSyUmmNFhljhg93BxIQ,11236
49
- lionagi/core/generic/edge.py,sha256=_FB8A50ckrPdDBGyOUmxbOcWU90zPIPFwthzfSO3F7A,5850
49
+ lionagi/core/generic/edge.py,sha256=dMdj_PsZFP4CDEFHCg8OAp10vXyMMO8KhyI-jUGRPhQ,5521
50
50
  lionagi/core/generic/mail.py,sha256=KR8IA2ryYpvK0C-GY25xfMboqjKl4Bks4rumuV42SvE,2532
51
51
  lionagi/core/generic/mailbox.py,sha256=wgvAEOLMQXIaYCly8HI7KcF9MdQIl3JKNgwsC-TS4-s,1034
52
52
  lionagi/core/generic/node.py,sha256=8aymSTHKLzXD1veO-bKyUsav9Jv69Z6JBayTrqkeUjQ,9880
@@ -56,7 +56,7 @@ lionagi/core/generic/structure.py,sha256=SSUhEBHxKEKLvKxRdO2UQpdcA5F1qjqK0GwYSwh
56
56
  lionagi/core/generic/transfer.py,sha256=YxULB_Rh1GVTNqkgp7ovq2wF7MHh3kWU8bJGQUWVrZc,564
57
57
  lionagi/core/generic/work.py,sha256=0oaokRHB0CYpxOJKf5n8OKxiF7x5rvssTXl6a2g51rY,825
58
58
  lionagi/core/graph/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
59
- lionagi/core/graph/graph.py,sha256=nsRcxPMIicDR8V9JYbf7Lpc8bPjopnJbx7e0hSpxTcs,3739
59
+ lionagi/core/graph/graph.py,sha256=8XEyHXwgmgWB84B7qarV_-PE4Re2Tr4UAEZCDnynFVg,3737
60
60
  lionagi/core/graph/tree.py,sha256=nqOauYI_l4rjzQYrCoVqzV_tW2K6OadHwnKdhlPGC8U,5869
61
61
  lionagi/core/mail/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
62
  lionagi/core/mail/mail_manager.py,sha256=lcMZq3rJbGf4eTa6v3TG9pqDcomDGBdT9KA-ADhKB64,4045
@@ -67,7 +67,7 @@ lionagi/core/session/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
67
67
  lionagi/core/session/session.py,sha256=-E_QO3U87JPlgV09Z_TLN_vA9cnH2uTOrvLQHGCW_C0,38111
68
68
  lionagi/core/tool/__init__.py,sha256=zU3nSR6BVvwhNMtijwlH0b_09o_QvKB1I_MmLlu_77c,151
69
69
  lionagi/core/tool/tool.py,sha256=KoQEH8QF6YPRuF_ymwshh45xrEV86s13TyCSY9kA53E,844
70
- lionagi/core/tool/tool_manager.py,sha256=v72VJR2a7fysq9zTMzU4Z4PTclasvrCRRPy8_WyCTCM,10667
70
+ lionagi/core/tool/tool_manager.py,sha256=dSJrHRfmc-En1GZgXbPwBUwuevwp3MIZEoWQxKFUqng,10717
71
71
  lionagi/experimental/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
72
72
  lionagi/experimental/directive/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
73
73
  lionagi/experimental/directive/schema.py,sha256=vGHQqn_ZAMkIfUqqdnPCHN8p-wommVyMBkanWHPuCSI,861
@@ -80,20 +80,33 @@ lionagi/experimental/directive/parser/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCe
80
80
  lionagi/experimental/directive/parser/base_parser.py,sha256=IcAEJa0kO5Usheb9sa8wfwFFDUw3yGrVFYNx_Fjs9dk,8623
81
81
  lionagi/experimental/directive/template_/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
82
82
  lionagi/experimental/directive/template_/base_template.py,sha256=G5OX6A2Vq4KPTIslp4qb88ySvhZ-C6l2cuGufappaVE,2613
83
+ lionagi/experimental/report/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
+ lionagi/experimental/report/form.py,sha256=PCuJ6YMakcLwb8YuVAtDy0tafsSgi6nQaPSSPis5MIg,2034
85
+ lionagi/experimental/report/report.py,sha256=QsCPnd1ZymPbcvdEGazjUv1VBJ7TpcNvszmWxYMhhFU,4905
86
+ lionagi/experimental/report/util.py,sha256=4fsh-KS2EWCpNPa3xKQekJop1WuIVKr08ZSUTDJMqGM,1018
83
87
  lionagi/experimental/tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
88
  lionagi/experimental/tool/function_calling.py,sha256=dV01uSOr1zAya7H4PE3SjnY-RH3KD4Ht_4AzSj8DqBs,1232
85
89
  lionagi/experimental/tool/manual.py,sha256=vNGgQm6XA_o5jK6QLbXpdaa1Et71X6ozDJRdd-BlfKQ,2569
86
- lionagi/experimental/tool/schema.py,sha256=2GMuoQoR1yfqlRM7rqZbR1Bj02HXLvOxl_XrzfbgaBc,1642
87
- lionagi/experimental/tool/tool_manager.py,sha256=Kzr4hR7Tif1pLPOq7nNFWPTuCcvhNk52EAcMSOcaadg,4552
90
+ lionagi/experimental/tool/schema.py,sha256=Yk5yZUl3WMTWtdc2vJsuA27_mEPTe2GK4qTBCIooqxE,1642
91
+ lionagi/experimental/tool/tool_manager.py,sha256=vxRtEp58VahGyZng61uDQEKynI7WsuWIxOWzcEWnv8E,4552
88
92
  lionagi/experimental/tool/util.py,sha256=DnlFVtwyGdHyIeKqjiT_U6nUnJOzyrdtY89HIM06tL4,502
89
- lionagi/experimental/work/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
90
- lionagi/experimental/work/_logger.py,sha256=CnDNApMsBoXBg-OcBRIES9HmelVd4sQlcQzZ9wHP_1E,900
91
- lionagi/experimental/work/exchange.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
92
- lionagi/experimental/work/schema.py,sha256=xl6FKRz_-OjUZHTQHJQ16EKZvHUbkNKHqOgk1zgzjJw,962
93
- lionagi/experimental/work/tests.py,sha256=xY6VYCFzkHcH8S-b20U8PjvVf_gkEKINZWTvAm_CVAY,2623
94
- lionagi/experimental/work/util.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
95
- lionagi/experimental/work/work_function.py,sha256=VsfD1z34Z8YCi4Zkgw3IMRujja16CleVSGbrgmQev9Q,3145
96
- lionagi/experimental/work/worker.py,sha256=MbYXpZzctWyHYqKrek1jJgEr24JgY7pFZVQsCJqyoU8,344
93
+ lionagi/experimental/validator/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
94
+ lionagi/experimental/validator/rule.py,sha256=6vSP68RBRsOJ5VwEDLu4YmzKuRbL5TB-txCLqigzCaY,4210
95
+ lionagi/experimental/validator/validator.py,sha256=xTf5PGkq_mR2Ia3QAkYSi8W4Vdkuz-KevxPlvkvoWPg,1518
96
+ lionagi/experimental/work/__init__.py,sha256=iYKkANFu8rd58xoQ4oQSiHgdxNEHYShy4qHQCF8TnyY,176
97
+ lionagi/experimental/work/async_queue.py,sha256=k8vxa__hWpJn07y7zd1ONzgF0-6xtDWO1eGtnO37YaE,1428
98
+ lionagi/experimental/work/schema.py,sha256=p82MpVAnHUFn6pKS5yMrZ6hnZxFAJtH7R_Lhng_mK4E,2116
99
+ lionagi/experimental/work/work_function.py,sha256=Run6b1u9IgDkelZ7fvAhamX2umdWZLZ-7ky7Y5ILRLY,2125
100
+ lionagi/experimental/work/worker.py,sha256=HXkOjQlTl3OrbegEgxryJbLYYO3qZp0QkKotE7F3IfQ,1714
101
+ lionagi/experimental/work2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
102
+ lionagi/experimental/work2/form.py,sha256=dpOBNlhnVxdO56UHqT14RylsIJHWcCIKDCMZDNK-cW8,13320
103
+ lionagi/experimental/work2/report.py,sha256=7_Br7FD_BgnIXZsUDS5gA7UugTdXyTnVe89M6OSAHKY,10208
104
+ lionagi/experimental/work2/schema.py,sha256=xl6FKRz_-OjUZHTQHJQ16EKZvHUbkNKHqOgk1zgzjJw,962
105
+ lionagi/experimental/work2/tests.py,sha256=dIjdf28CGqlixurEp_pBN4QjISKqnbtox6cY7pQMuwU,2629
106
+ lionagi/experimental/work2/util.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
107
+ lionagi/experimental/work2/work.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
108
+ lionagi/experimental/work2/work_function.py,sha256=5VwrIIBqzK73msktwxTTbye9EJ_NLHbXc3XTovgaxuc,3151
109
+ lionagi/experimental/work2/worker.py,sha256=MbYXpZzctWyHYqKrek1jJgEr24JgY7pFZVQsCJqyoU8,344
97
110
  lionagi/integrations/__init__.py,sha256=Il5Q9ATdX8yXqVxtP_nYqUhExzxPC_qk_WXQ_4h0exg,16
98
111
  lionagi/integrations/bridge/__init__.py,sha256=ee5IeCkDOD2uhbzqxg_xDxaG-Q3BPPZCYltBjzg2gSs,169
99
112
  lionagi/integrations/bridge/autogen_/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -134,10 +147,11 @@ lionagi/integrations/provider/services.py,sha256=zLX_C0p1eI5cfxkxlxIVEsU0k_fknhV
134
147
  lionagi/integrations/provider/transformers.py,sha256=E6CTtm7pa3aa0IqYklWvhXz9YWlh3p_lgKaJXYfXeyA,3397
135
148
  lionagi/integrations/storage/__init__.py,sha256=tutRSV4gxeS342sNi4CeEEIkYHVaQUeO8vilPpxMi-g,74
136
149
  lionagi/integrations/storage/neo4j.py,sha256=ajXmLtqDuWhBa1WTwvvlvKgZoiIO00wFbPVdEowTCIE,25785
137
- lionagi/integrations/storage/storage_util.py,sha256=zTV5EW2rFGC6sgQHRPrgnpfzP9XAgVr5-5AjDvhabyY,10593
150
+ lionagi/integrations/storage/storage_util.py,sha256=u8N3DSQ4lR7LCQRoPYMSk3np9XsFCJhaOY37HZ51DLM,10600
151
+ lionagi/integrations/storage/structure_excel.py,sha256=N4gHaT2QBE3P0GdJVSKvzUDnzbfoflfmBwzLoiQbotw,12145
138
152
  lionagi/integrations/storage/to_csv.py,sha256=BS1upr2Qy0Se5JG8nYQHHxmi0OUpKJ1nACbYL5ynNCY,2881
139
- lionagi/integrations/storage/to_excel.py,sha256=3BlRyESKca7KghH1Ib6QFnedlc_Fvf9jn2bo6D-jOtI,3095
140
- lionagi/libs/__init__.py,sha256=OF_HuVdyTiTx5hkiMqe8oce1J2u7GOKxiVFqCbZW3_I,768
153
+ lionagi/integrations/storage/to_excel.py,sha256=9hnAgYoHUDmnQadaPH-TTEbStKU6Zc_UXzZLn-4PFtc,3452
154
+ lionagi/libs/__init__.py,sha256=Nj7IMCmA6WYw5M3uYXAftp7YxTzEjsBspIKGYuSNN6M,848
141
155
  lionagi/libs/ln_api.py,sha256=M6VZz2pVySSwknY15kNrgL92u5-RkkbBvQ1msyfYYZ4,34577
142
156
  lionagi/libs/ln_async.py,sha256=fOlFmg2nTYHzFKwJNIPQNJRr_hB7HXRKEhsN7j-XPLg,6074
143
157
  lionagi/libs/ln_convert.py,sha256=_Qfi2hBC9VFRVtxcaIDY_zmMzqXsYGMiKk4bEgj46Gk,23535
@@ -183,8 +197,10 @@ lionagi/tests/test_core/test_prompts.py,sha256=TusAnaw1HGzDe6z26YZDKmMbDpoHK7NDv
183
197
  lionagi/tests/test_core/test_session.py,sha256=ErAkQe4ZK2yy6nouc0G6srhj8-1Gw8PAEF3SJ-KY0kc,9335
184
198
  lionagi/tests/test_core/test_session_base_util.py,sha256=S40di_G_XLkOWK_451o4NJ_h543bKur9sajPP_vx8q4,10619
185
199
  lionagi/tests/test_core/test_tool_manager.py,sha256=WwQ2M900f3a76LQQVX7I-wgREj_rwARBnsIIZGqbeW0,3431
186
- lionagi-0.1.1.dist-info/LICENSE,sha256=vfczrx-xFNkybZ7Ef-lGUnA1Vorky6wL4kwb1Fd5o3I,1089
187
- lionagi-0.1.1.dist-info/METADATA,sha256=2R0U1TwSEPxxYmYUGwXAKbwO5px9F0KYfP_96Gsz7cg,7932
188
- lionagi-0.1.1.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
189
- lionagi-0.1.1.dist-info/top_level.txt,sha256=szvch_d2jE1Lu9ZIKsl26Ll6BGfYfbOgt5lm-UpFSo4,8
190
- lionagi-0.1.1.dist-info/RECORD,,
200
+ lionagi/tests/test_core/generic/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
201
+ lionagi/tests/test_core/generic/test_component.py,sha256=QykKp4Hg5aeyolFWN4p0HPixKW3qvs8d34r6Mb8_mTc,3239
202
+ lionagi-0.1.2.dist-info/LICENSE,sha256=vfczrx-xFNkybZ7Ef-lGUnA1Vorky6wL4kwb1Fd5o3I,1089
203
+ lionagi-0.1.2.dist-info/METADATA,sha256=ckrC6q9MS-mkNGRY8r51LMe5LCbXqEqcQhGY8koU4Ts,7932
204
+ lionagi-0.1.2.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
205
+ lionagi-0.1.2.dist-info/top_level.txt,sha256=szvch_d2jE1Lu9ZIKsl26Ll6BGfYfbOgt5lm-UpFSo4,8
206
+ lionagi-0.1.2.dist-info/RECORD,,
@@ -1,25 +0,0 @@
1
- from collections import deque
2
- from typing import Dict
3
- from pydantic import BaseModel, Field
4
- from .schema import Work, WorkStatus
5
-
6
-
7
- class WorkLog(BaseModel):
8
- """Model to store and manage work logs."""
9
-
10
- logs: Dict[str, Work] = Field(default={}, description="Logs of work items")
11
- pending: deque = Field(
12
- default_factory=deque, description="Priority queue of pending work items"
13
- )
14
- errored: deque = Field(
15
- default_factory=deque, description="Queue of errored work items"
16
- )
17
-
18
- def append(self, work: Work):
19
- """Append a work item to the logs and pending queue."""
20
- self.logs[str(work.form_id)] = work
21
- self.pending.append(str(work.form_id))
22
-
23
- def get_by_status(self, status: WorkStatus) -> Dict[str, Work]:
24
- """Get work items by their status."""
25
- return {wid: work for wid, work in self.logs.items() if work.status == status}