tactus 0.31.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 (160) hide show
  1. tactus/__init__.py +49 -0
  2. tactus/adapters/__init__.py +9 -0
  3. tactus/adapters/broker_log.py +76 -0
  4. tactus/adapters/cli_hitl.py +189 -0
  5. tactus/adapters/cli_log.py +223 -0
  6. tactus/adapters/cost_collector_log.py +56 -0
  7. tactus/adapters/file_storage.py +367 -0
  8. tactus/adapters/http_callback_log.py +109 -0
  9. tactus/adapters/ide_log.py +71 -0
  10. tactus/adapters/lua_tools.py +336 -0
  11. tactus/adapters/mcp.py +289 -0
  12. tactus/adapters/mcp_manager.py +196 -0
  13. tactus/adapters/memory.py +53 -0
  14. tactus/adapters/plugins.py +419 -0
  15. tactus/backends/http_backend.py +58 -0
  16. tactus/backends/model_backend.py +35 -0
  17. tactus/backends/pytorch_backend.py +110 -0
  18. tactus/broker/__init__.py +12 -0
  19. tactus/broker/client.py +247 -0
  20. tactus/broker/protocol.py +183 -0
  21. tactus/broker/server.py +1123 -0
  22. tactus/broker/stdio.py +12 -0
  23. tactus/cli/__init__.py +7 -0
  24. tactus/cli/app.py +2245 -0
  25. tactus/cli/commands/__init__.py +0 -0
  26. tactus/core/__init__.py +32 -0
  27. tactus/core/config_manager.py +790 -0
  28. tactus/core/dependencies/__init__.py +14 -0
  29. tactus/core/dependencies/registry.py +180 -0
  30. tactus/core/dsl_stubs.py +2117 -0
  31. tactus/core/exceptions.py +66 -0
  32. tactus/core/execution_context.py +480 -0
  33. tactus/core/lua_sandbox.py +508 -0
  34. tactus/core/message_history_manager.py +236 -0
  35. tactus/core/mocking.py +286 -0
  36. tactus/core/output_validator.py +291 -0
  37. tactus/core/registry.py +499 -0
  38. tactus/core/runtime.py +2907 -0
  39. tactus/core/template_resolver.py +142 -0
  40. tactus/core/yaml_parser.py +301 -0
  41. tactus/docker/Dockerfile +61 -0
  42. tactus/docker/entrypoint.sh +69 -0
  43. tactus/dspy/__init__.py +39 -0
  44. tactus/dspy/agent.py +1144 -0
  45. tactus/dspy/broker_lm.py +181 -0
  46. tactus/dspy/config.py +212 -0
  47. tactus/dspy/history.py +196 -0
  48. tactus/dspy/module.py +405 -0
  49. tactus/dspy/prediction.py +318 -0
  50. tactus/dspy/signature.py +185 -0
  51. tactus/formatting/__init__.py +7 -0
  52. tactus/formatting/formatter.py +437 -0
  53. tactus/ide/__init__.py +9 -0
  54. tactus/ide/coding_assistant.py +343 -0
  55. tactus/ide/server.py +2223 -0
  56. tactus/primitives/__init__.py +49 -0
  57. tactus/primitives/control.py +168 -0
  58. tactus/primitives/file.py +229 -0
  59. tactus/primitives/handles.py +378 -0
  60. tactus/primitives/host.py +94 -0
  61. tactus/primitives/human.py +342 -0
  62. tactus/primitives/json.py +189 -0
  63. tactus/primitives/log.py +187 -0
  64. tactus/primitives/message_history.py +157 -0
  65. tactus/primitives/model.py +163 -0
  66. tactus/primitives/procedure.py +564 -0
  67. tactus/primitives/procedure_callable.py +318 -0
  68. tactus/primitives/retry.py +155 -0
  69. tactus/primitives/session.py +152 -0
  70. tactus/primitives/state.py +182 -0
  71. tactus/primitives/step.py +209 -0
  72. tactus/primitives/system.py +93 -0
  73. tactus/primitives/tool.py +375 -0
  74. tactus/primitives/tool_handle.py +279 -0
  75. tactus/primitives/toolset.py +229 -0
  76. tactus/protocols/__init__.py +38 -0
  77. tactus/protocols/chat_recorder.py +81 -0
  78. tactus/protocols/config.py +97 -0
  79. tactus/protocols/cost.py +31 -0
  80. tactus/protocols/hitl.py +71 -0
  81. tactus/protocols/log_handler.py +27 -0
  82. tactus/protocols/models.py +355 -0
  83. tactus/protocols/result.py +33 -0
  84. tactus/protocols/storage.py +90 -0
  85. tactus/providers/__init__.py +13 -0
  86. tactus/providers/base.py +92 -0
  87. tactus/providers/bedrock.py +117 -0
  88. tactus/providers/google.py +105 -0
  89. tactus/providers/openai.py +98 -0
  90. tactus/sandbox/__init__.py +63 -0
  91. tactus/sandbox/config.py +171 -0
  92. tactus/sandbox/container_runner.py +1099 -0
  93. tactus/sandbox/docker_manager.py +433 -0
  94. tactus/sandbox/entrypoint.py +227 -0
  95. tactus/sandbox/protocol.py +213 -0
  96. tactus/stdlib/__init__.py +10 -0
  97. tactus/stdlib/io/__init__.py +13 -0
  98. tactus/stdlib/io/csv.py +88 -0
  99. tactus/stdlib/io/excel.py +136 -0
  100. tactus/stdlib/io/file.py +90 -0
  101. tactus/stdlib/io/fs.py +154 -0
  102. tactus/stdlib/io/hdf5.py +121 -0
  103. tactus/stdlib/io/json.py +109 -0
  104. tactus/stdlib/io/parquet.py +83 -0
  105. tactus/stdlib/io/tsv.py +88 -0
  106. tactus/stdlib/loader.py +274 -0
  107. tactus/stdlib/tac/tactus/tools/done.tac +33 -0
  108. tactus/stdlib/tac/tactus/tools/log.tac +50 -0
  109. tactus/testing/README.md +273 -0
  110. tactus/testing/__init__.py +61 -0
  111. tactus/testing/behave_integration.py +380 -0
  112. tactus/testing/context.py +486 -0
  113. tactus/testing/eval_models.py +114 -0
  114. tactus/testing/evaluation_runner.py +222 -0
  115. tactus/testing/evaluators.py +634 -0
  116. tactus/testing/events.py +94 -0
  117. tactus/testing/gherkin_parser.py +134 -0
  118. tactus/testing/mock_agent.py +315 -0
  119. tactus/testing/mock_dependencies.py +234 -0
  120. tactus/testing/mock_hitl.py +171 -0
  121. tactus/testing/mock_registry.py +168 -0
  122. tactus/testing/mock_tools.py +133 -0
  123. tactus/testing/models.py +115 -0
  124. tactus/testing/pydantic_eval_runner.py +508 -0
  125. tactus/testing/steps/__init__.py +13 -0
  126. tactus/testing/steps/builtin.py +902 -0
  127. tactus/testing/steps/custom.py +69 -0
  128. tactus/testing/steps/registry.py +68 -0
  129. tactus/testing/test_runner.py +489 -0
  130. tactus/tracing/__init__.py +5 -0
  131. tactus/tracing/trace_manager.py +417 -0
  132. tactus/utils/__init__.py +1 -0
  133. tactus/utils/cost_calculator.py +72 -0
  134. tactus/utils/model_pricing.py +132 -0
  135. tactus/utils/safe_file_library.py +502 -0
  136. tactus/utils/safe_libraries.py +234 -0
  137. tactus/validation/LuaLexerBase.py +66 -0
  138. tactus/validation/LuaParserBase.py +23 -0
  139. tactus/validation/README.md +224 -0
  140. tactus/validation/__init__.py +7 -0
  141. tactus/validation/error_listener.py +21 -0
  142. tactus/validation/generated/LuaLexer.interp +231 -0
  143. tactus/validation/generated/LuaLexer.py +5548 -0
  144. tactus/validation/generated/LuaLexer.tokens +124 -0
  145. tactus/validation/generated/LuaLexerBase.py +66 -0
  146. tactus/validation/generated/LuaParser.interp +173 -0
  147. tactus/validation/generated/LuaParser.py +6439 -0
  148. tactus/validation/generated/LuaParser.tokens +124 -0
  149. tactus/validation/generated/LuaParserBase.py +23 -0
  150. tactus/validation/generated/LuaParserVisitor.py +118 -0
  151. tactus/validation/generated/__init__.py +7 -0
  152. tactus/validation/grammar/LuaLexer.g4 +123 -0
  153. tactus/validation/grammar/LuaParser.g4 +178 -0
  154. tactus/validation/semantic_visitor.py +817 -0
  155. tactus/validation/validator.py +157 -0
  156. tactus-0.31.2.dist-info/METADATA +1809 -0
  157. tactus-0.31.2.dist-info/RECORD +160 -0
  158. tactus-0.31.2.dist-info/WHEEL +4 -0
  159. tactus-0.31.2.dist-info/entry_points.txt +2 -0
  160. tactus-0.31.2.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,160 @@
1
+ tactus/__init__.py,sha256=aY7prmK7P-JprUqRmDbYTkjK6tbPfkPxeS4idxTsnCE,1245
2
+ tactus/adapters/__init__.py,sha256=lU8uUxuryFRIpVrn_KeVK7aUhsvOT1tYsuE3FOOIFpI,289
3
+ tactus/adapters/broker_log.py,sha256=mIjARt1Q6ouWVbVri6zep1e8tzm9y28l4WOEdqiK39Q,2849
4
+ tactus/adapters/cli_hitl.py,sha256=3dH58du0lN4k-OvQrAHrAqHFqBjolqNKFb94JaNHtn8,6964
5
+ tactus/adapters/cli_log.py,sha256=uyTOLY9y26foAr-8COEYP6dejdO_Huur4i0DLaowfAY,8894
6
+ tactus/adapters/cost_collector_log.py,sha256=Ha3pFMdC0HJ8eBnZpM1VRLm-94RKelu5PEPDgFgNKow,1701
7
+ tactus/adapters/file_storage.py,sha256=c4prD6-NSEMixrpQsWsdr3xuKzxptoEaLjUkZl9SnKk,12759
8
+ tactus/adapters/http_callback_log.py,sha256=likXNiLGiHXNHAeWGzUPhbd4Di94PJVjXz5ABNRfZig,3687
9
+ tactus/adapters/ide_log.py,sha256=JfJE5rGM_bPfBImod-2_QDhyyk2ObVEmkvhsWSzaBKU,2026
10
+ tactus/adapters/lua_tools.py,sha256=xXWDtcsovGG9yH40pdhRPRbZcql9npw1J9dlwzd8Xb0,13026
11
+ tactus/adapters/mcp.py,sha256=x_K1cIxdhI_yyZB5jt6xh2T4SuZvnE1CEngTcbWvElE,10837
12
+ tactus/adapters/mcp_manager.py,sha256=IwyRR6cYtxo6ZX6lBWqCMBE38rnHeMQJ6RdAAfkNq5w,7425
13
+ tactus/adapters/memory.py,sha256=ZUeDyK8dYChJEE5edKOaBsgDivm1Bdn2sKPlqFKM8ps,1970
14
+ tactus/adapters/plugins.py,sha256=HBHoVCk9fYqQxi-6vD_bt5FczMOEAy4v8mKFdOuI_1U,14225
15
+ tactus/backends/http_backend.py,sha256=D2N91I5bnjhHMLG84-U-BRS-mIuwoQq72Feffi7Atxo,1653
16
+ tactus/backends/model_backend.py,sha256=P8dCUpDxJmA8_EO1snZuXyIyUZ_BlqReeC6zenO7Kv0,763
17
+ tactus/backends/pytorch_backend.py,sha256=I7H7UTa_Scx9_FtmPWn-G4noadaNVEQj-9Kjtjpgl6E,3305
18
+ tactus/broker/__init__.py,sha256=UTvqLofrgE3c4m6u2iNOg5R7BrS4dmfzMRO4Oq_0A9U,396
19
+ tactus/broker/client.py,sha256=sDi1Cimuv0zH5S4n597nnUy_qis7pLBZf5IkwF81oDc,8618
20
+ tactus/broker/protocol.py,sha256=fnVgMKU_R7oK2xBATnrYSH_r2R-yOmV2o_pJYw1JvVk,5238
21
+ tactus/broker/server.py,sha256=N2o0xFdTSRByjQUHjBSvxn1wA_tpR4FXnb-AAbdCoc8,37566
22
+ tactus/broker/stdio.py,sha256=JXkEz-PCU3IQXNkt16YJtYmwkR43eS6CfjxAHc-YCfQ,439
23
+ tactus/cli/__init__.py,sha256=kVhdCkwWEPdt3vn9si-iKvh6M9817aOH6rLSsNzRuyg,80
24
+ tactus/cli/app.py,sha256=2jKrM0GsG8cUL131EMdydnzYMLfhP-Ixvs7rOnI9t24,85556
25
+ tactus/cli/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
26
+ tactus/core/__init__.py,sha256=TK5rWr3HmOO_igFa5ESGp6teWwS58vnvQhIWqkcgqwk,880
27
+ tactus/core/config_manager.py,sha256=u90XChTeb2reZ3I6c3o_zI2UlzlFCNtL9-NhE1Vm6L0,31577
28
+ tactus/core/dsl_stubs.py,sha256=Et1VEhrUWaeVYDnqTwJJG7WxfMl18vXOqG8jYRhXvrY,80710
29
+ tactus/core/exceptions.py,sha256=HruvJQ4yIi78hOvvHviNZolcraMwXrlGQzxHqYFQapA,1468
30
+ tactus/core/execution_context.py,sha256=WNd55_JhmkDifA9Td3xIs8to5bwGDlCgPcbvkvLYAv0,16658
31
+ tactus/core/lua_sandbox.py,sha256=WuXRuXSl9ylU0y3ZMvyDWjWiG6GdLVn2csMY-2Zmrbg,18262
32
+ tactus/core/message_history_manager.py,sha256=e3_seV6bWSJVicrZYf2LmaQBvroDXDRc5Tho49fZ_ns,7596
33
+ tactus/core/mocking.py,sha256=1MKtg8FHCYj-Goihi5b8xNNYo-MDuzSpsHEX_e7bnfg,9217
34
+ tactus/core/output_validator.py,sha256=VEJUztQaTH3Zvp2-tkKDAU96Oo2MXVlpI0bceaMBKz8,10152
35
+ tactus/core/registry.py,sha256=2tKIli2z1fwbov7KvvvWFIo_tUdIbeWYo1DuzoNPO_g,19630
36
+ tactus/core/runtime.py,sha256=3dfs_Jzri9_B9PB2VT2KcbQK3gfZbn5dcnw1LRepHlg,129206
37
+ tactus/core/template_resolver.py,sha256=6zRq4zT1lRHdLoa7M-yoLx4hFZ9RcjH9Y0EdaAtW9FU,4033
38
+ tactus/core/yaml_parser.py,sha256=s7VB5Nijy6ReQE7ixlmvZArqupXs_sWP4EY4pCLv25k,13400
39
+ tactus/core/dependencies/__init__.py,sha256=28-TM7_i-JqTD3hvkq1kMzr__A8VjfIKXymdW9mn5NM,362
40
+ tactus/core/dependencies/registry.py,sha256=bgRdqJJTUrnQlu0wvjv2In1EPq7prZq-b9eBDhE3rmE,6114
41
+ tactus/docker/Dockerfile,sha256=fnK5kZlgM-L7vboiwfTqcs70OsZsvh1ba4YzRxie138,1887
42
+ tactus/docker/entrypoint.sh,sha256=pL-1MwMdjD1fGgRZYkBeXmJZg57Knmub9ETLYAANvOg,1985
43
+ tactus/dspy/__init__.py,sha256=beUkvMUFdPvZE9-bEOfRo2TH-FoCvPT_L9_dpJPW324,1226
44
+ tactus/dspy/agent.py,sha256=d1Zpg7OUZcRIkHmlbtlgB5N81z0vLhadNloFL73yEpg,45625
45
+ tactus/dspy/broker_lm.py,sha256=EaXlJcUhfM0NV0fD1rASYKSO5gm846KRS5BoT0iO4zs,6239
46
+ tactus/dspy/config.py,sha256=B22ON9Zp-dabI4NYeMbZ5lUL4kqihR7FQ8Z8xKT_eL8,6567
47
+ tactus/dspy/history.py,sha256=0yGi3P5ruRUPoRyaCWsUDeuEYYsfproc_7pMVZuhmUo,5980
48
+ tactus/dspy/module.py,sha256=sJdFS-5A4SpuiMLjbwiZJCvg3pTtEx8x8MRVaqjCQ2I,15423
49
+ tactus/dspy/prediction.py,sha256=nnofvBPGFX7bvYdTVcEMVcIXC5EVrRQ21QsnC1PRHeU,9758
50
+ tactus/dspy/signature.py,sha256=jdLHBa5BOEBwXTfmLui6fjViEDQDhdUzQm2__STHquU,6053
51
+ tactus/formatting/__init__.py,sha256=pkwfAJwMxdRha2oahXoUrVjk6if7QH5d1U5t5dF2fXc,162
52
+ tactus/formatting/formatter.py,sha256=DfHp977t5reMPIWZwRChRE5Yflw7xGgTNUM0AOcS8LQ,14510
53
+ tactus/ide/__init__.py,sha256=1fSC0xWP-Lq5wl4FgDq7SMnkvZ0DxXupreTl3ZRX1zw,143
54
+ tactus/ide/coding_assistant.py,sha256=GgmspWIn9IPgBK0ZYapeISIOrcDfRyK7yyPDPV85r8g,12184
55
+ tactus/ide/server.py,sha256=4E5Sc3Qf0WYbWjxwNUIK4somjp4a7i_CNpBsj3Bi8GM,94089
56
+ tactus/primitives/__init__.py,sha256=x6bGwoa9DizKUwqsg7SqURfJxisEdctTCv1XnSAZxIk,1709
57
+ tactus/primitives/control.py,sha256=PjRt_Pegcj2L1Uy-IUBQKTYFRMXy7b9q1z2kzJNH8qw,4683
58
+ tactus/primitives/file.py,sha256=-kz0RCst_i_3V860-LtGntYpE0Mm371U_KGHqELbMx0,7186
59
+ tactus/primitives/handles.py,sha256=_9PbulcvRVUgPCnjKzRW7a_I9O2M13t6WdNjx1vYuwI,13013
60
+ tactus/primitives/host.py,sha256=a3THKAWqH2amNHlbk5-rvaumKBLPnEWw-Ipdp8e_tCk,3302
61
+ tactus/primitives/human.py,sha256=yjh5LF4PNeKaFgMWMVJd-qkp9XSfNqQM4n4X-Qg60Ow,12397
62
+ tactus/primitives/json.py,sha256=XQQQEwUvix_Djscq_thBTHeCf5VCex48rj4m6yp4f7Y,5722
63
+ tactus/primitives/log.py,sha256=8fNGZnvJi3R0BKacs9kMzhJKCkgQKKdQ_jQmF6XwqIY,6429
64
+ tactus/primitives/message_history.py,sha256=JF0pGK1j6HBcMcY05l47-gnNOTmwHLetFuOaWls7mvc,4765
65
+ tactus/primitives/model.py,sha256=NmMk0YdlWd_qTOqwy0WeY0sLXWVbab1w0HvIsY3bBvY,5088
66
+ tactus/primitives/procedure.py,sha256=AnZGRKWijMqTwH3zS-nYLJ3XuRpJNHVQlIC2v3tyweg,19294
67
+ tactus/primitives/procedure_callable.py,sha256=Nl0F0dYxqycatpDIBbcmqJKeMQVbulu-ZpsjcEqtYsc,13825
68
+ tactus/primitives/retry.py,sha256=xBtCQkxep0t8xRBaFxJ_xPTj0Cz71YIUPNwBzYrlPmE,5194
69
+ tactus/primitives/session.py,sha256=MbleCJ8pAeA5LAC0UrohJ4NmceR1_3lw0dQNcHH46VU,4441
70
+ tactus/primitives/state.py,sha256=o3rsz-P8R2O66nsYmXOjn54342NIn6ldqTqp9XvgPLI,5618
71
+ tactus/primitives/step.py,sha256=2STt1M_9R0Ga5YHScA5i1eXqqIDI_S_q9E4GSyWhM2Y,7175
72
+ tactus/primitives/system.py,sha256=jIzDLuL8a6owTPokAb7giwKYOxEtxmacntkNzzu8BWU,3350
73
+ tactus/primitives/tool.py,sha256=KppWrbVxPwZ6aRk2Lw5ki1ACwV_65yK2wSFWaH3da88,12643
74
+ tactus/primitives/tool_handle.py,sha256=x6D4Zi-x-werFVBgB-F3mTtIMRbkYjPq3IBjjs8VSTc,9085
75
+ tactus/primitives/toolset.py,sha256=T9DtULPgDX7CGBnfOtEx6SsKEtJPWrKXMOnHJer_spY,7779
76
+ tactus/protocols/__init__.py,sha256=w5PFgHq8ov7BbNKcgCmbPSQ_E9l6F8xwrtxEQ2YSWO4,783
77
+ tactus/protocols/chat_recorder.py,sha256=dswAHpwlxq30GTGKT-ktCIKCaixn5izEMSb7sbiZARE,2074
78
+ tactus/protocols/config.py,sha256=VozGLUQPujGdS1pXhDaYhVOyxClOiNti4gDXdMy8beY,3345
79
+ tactus/protocols/cost.py,sha256=yAGVQiLBJDtu0p9UFRJz1a0QTGpdBOJMnKO8GF5yFAM,988
80
+ tactus/protocols/hitl.py,sha256=uzlZXKBYyzuOBRb2dYDPlICjmobwIAzNSaTuhQ0M1mc,2209
81
+ tactus/protocols/log_handler.py,sha256=Ps5wnYRrPjapPA91MJF_G4nOUy8ESKNCSi4od_W0Deg,755
82
+ tactus/protocols/models.py,sha256=GModDKf3jakGAYK89W5umSGt1rXWi_b79CFuNPziNLQ,15930
83
+ tactus/protocols/result.py,sha256=mXFH6M_084O39pTI5QNH5PtYq6Tan252ANuwVXK8QOk,1014
84
+ tactus/protocols/storage.py,sha256=LxPs41cW-8NLAckgxfkP2IBKYuwXJQeIwDqotcZcjys,2607
85
+ tactus/providers/__init__.py,sha256=TxrWR1IXi7iUTA1I8YgXQs32oYrl_O8dX-SLKV08uSQ,483
86
+ tactus/providers/base.py,sha256=apa8j5aOHl5ekBmyCBvUzs8nVeFwLdTcBEpLCaYbUDU,2343
87
+ tactus/providers/bedrock.py,sha256=cVNDV7uHhCnnL6BNl7DFF8OwkD9ZYqa9CP2wXMcCJGY,3822
88
+ tactus/providers/google.py,sha256=wgZ3eiQif1rq1T8BK5V2kL_QVCmqBQZuWLz37y9cxOQ,3123
89
+ tactus/providers/openai.py,sha256=3qSXfdELTHdU7vuRSxQrtnfNctt0HhrePOLFj3YlViA,2692
90
+ tactus/sandbox/__init__.py,sha256=UCBvPD63szvSdwSzpznLW-cnJOgGkVHiKcmJtsAmnuA,1424
91
+ tactus/sandbox/config.py,sha256=iu0XRWg6I39vstxFoL7F_Q_Ati6Ps6FkVqKlXaAECdE,5806
92
+ tactus/sandbox/container_runner.py,sha256=ui-15W30pxDaKmXZNgz3pE5yej7YV-cEXCtPrjkSNWs,41428
93
+ tactus/sandbox/docker_manager.py,sha256=SGv0IEN9usgyQRvbonrgOLm6GICel8ifzBAopAwOyt0,13949
94
+ tactus/sandbox/entrypoint.py,sha256=Jbw7ZIOhBygiZa-LHoQAbQg4VJBzK_XrN8wnf1xD5xg,6803
95
+ tactus/sandbox/protocol.py,sha256=1h36423pOFAwwZBgzMkeAIIjan1asgmBiIjN234YlpQ,6060
96
+ tactus/stdlib/__init__.py,sha256=26AUJ2IGp6OuhWaUeGSRwTa1r7W4e6-fhoLa4u7RjLQ,288
97
+ tactus/stdlib/loader.py,sha256=qjVnz5mn3Uu7g1O4vjSREHkR-YdRoON1vqJQq-oiFIE,8679
98
+ tactus/stdlib/io/__init__.py,sha256=lOUgkUsV6x1ZdGKnFjh-v8wBJwn2UEM28h-mEal8aMw,379
99
+ tactus/stdlib/io/csv.py,sha256=KsqlgO8gxJ01c9g50Zsc3U3I7aCeAohy9opy2qSWCVU,2295
100
+ tactus/stdlib/io/excel.py,sha256=-6oxY-Rj__OV2YSt9K2YJ6-g--BFCV55Wt9KJ8cwSmI,3494
101
+ tactus/stdlib/io/file.py,sha256=1_lvpn1oCTHZnZToNQEUNfC62Qa0f_Mp9yJVlnI-IGY,1977
102
+ tactus/stdlib/io/fs.py,sha256=Bx6Jxc3VBTWqabwq109ok-BMvL25k51ozGy8watiTj8,4802
103
+ tactus/stdlib/io/hdf5.py,sha256=7ELLaQZI1GOsycU1a60J6RTPNLH7EMdaPAYlNx0dQLA,3025
104
+ tactus/stdlib/io/json.py,sha256=P6C6rIwAxY97MivCanxKF8TmRotIUxBlHcuv8etmLu8,2641
105
+ tactus/stdlib/io/parquet.py,sha256=hycr0pjqysjhggHx7_UZJL_jkeP1wz8BCozL39EWk-0,2045
106
+ tactus/stdlib/io/tsv.py,sha256=456V2g-dp0mOTxo0ojM-rQl-LlmeV6WAVh0HmEDd_kQ,2350
107
+ tactus/stdlib/tac/tactus/tools/done.tac,sha256=_PobbaUQY2PUZg-qy2eJ2jhdx2-UllePnvW_tFdGFao,729
108
+ tactus/stdlib/tac/tactus/tools/log.tac,sha256=sNGYUSkehvKmrgag1b8rHpDME09MQbL4qkt9Kfd0jgg,1389
109
+ tactus/testing/README.md,sha256=fUumwbVC56d7ZB2srAKSb7XxQ0vHFKPbZz70Zv59KRY,6840
110
+ tactus/testing/__init__.py,sha256=M5b3r9E0vkltfhqfIOSASk-qp6fDnm3FBxc9dDBPUhU,1540
111
+ tactus/testing/behave_integration.py,sha256=mU54gUDIPggxIlBc5vSKm3xL7C5n-Ih8zi-BbspnTzo,15544
112
+ tactus/testing/context.py,sha256=liNZ4VKD2Dq5NgsKXHBI15H7NJ3gA3a0nyWgz1a3i5Q,18553
113
+ tactus/testing/eval_models.py,sha256=UI3geZp4vilbn3Jt4Mjy95luRVON3T4sGnAwlpb7jLo,3540
114
+ tactus/testing/evaluation_runner.py,sha256=_wemv2yf-N6wjIyhwxVJyoH4FABlKoBv-OKTcgwNm0Q,6908
115
+ tactus/testing/evaluators.py,sha256=NW_LHhssdMRYCCoYmtJIsst-DEsk8iBVebsxRyHx7I0,20751
116
+ tactus/testing/events.py,sha256=7YNLoOKF1QT_0ZWVC0H7yjS-yIIkUdqDj54JjP8Ldy4,2694
117
+ tactus/testing/gherkin_parser.py,sha256=xcu4FjtKk5Vfn_qdcCIZryIKFsENs63Iz-hCiitsmJI,4094
118
+ tactus/testing/mock_agent.py,sha256=z8AAZkD_lj59fBW7wRD0ahmw7aHytH43nqxH-9DGwcs,10801
119
+ tactus/testing/mock_dependencies.py,sha256=saGukLaq46uzz995TYcNDgz7LONxUgMJNkd8DXGUNP0,6970
120
+ tactus/testing/mock_hitl.py,sha256=kJUjJarHyPCxsZq7llO4zFNMuktB6tKLuCRNweFlgKY,5586
121
+ tactus/testing/mock_registry.py,sha256=9PFlUuUxjCgZUR1a7wnxqwLiC_gpyO0vuUl1H5dDieI,5699
122
+ tactus/testing/mock_tools.py,sha256=i0rBoSZ6Y0YG9vQo9ZzKmcEOau-VJ6T4HzOm8hg1Y2A,4009
123
+ tactus/testing/models.py,sha256=67cuTRokX6hfLqo6H4lZ49K0V1u9xM5pFQTzpPtZqmQ,3258
124
+ tactus/testing/pydantic_eval_runner.py,sha256=IBSQD_UQ9YTX4Q3BdmtcLtWxF1EeC70LfsTC-2dY1lg,17822
125
+ tactus/testing/test_runner.py,sha256=cnMv9bnKiWhBqYTG6lhMLhrnYJL3uOAJDmkLbPAkiFM,18812
126
+ tactus/testing/steps/__init__.py,sha256=oitGDW-M3uckHk8ySLnjCHi6VjCr6L4MDT2_uPYgR-8,257
127
+ tactus/testing/steps/builtin.py,sha256=sntZutWoTEF7hkeZHbfM7_iIQEzk_IbyM9svJrsL9JE,31663
128
+ tactus/testing/steps/custom.py,sha256=d1xOWuim-Yoecq2b8cjWpDjkVZ-Gi6emURdstj9nLnA,2053
129
+ tactus/testing/steps/registry.py,sha256=o5DIYas4zRdedX9hLYIHfJcufMbtOGNp2U9Kn9sfB9M,2103
130
+ tactus/tracing/__init__.py,sha256=32Uc7ACuxBfstNh7t2A4q2mub-PGR_zB-02mNH5f_0s,142
131
+ tactus/tracing/trace_manager.py,sha256=PNCEztpza-P6-L2a4gWZS_0Z7yOvaV9V2BEsK9csZWk,12922
132
+ tactus/utils/__init__.py,sha256=8TN2bqJybOVlf1Wx5fsV0cLjue5UC4EhL0K1TVzBzIQ,34
133
+ tactus/utils/cost_calculator.py,sha256=Dgdj7ScWYSxMkizx5q6AKYmkV0sEL4ZecTPoqbTbWp8,2490
134
+ tactus/utils/model_pricing.py,sha256=ZwnFSP8T-LxOBY1uyPkzj_FWt1swnfzAQoh26UUq4Cs,5025
135
+ tactus/utils/safe_file_library.py,sha256=8iYfYs424qPk3qHgFD4wgHMEp_c0jb6_bAWWISjm39I,16249
136
+ tactus/utils/safe_libraries.py,sha256=0djqpMAzmrGNerSXNGcSB-D73lqqQuDomudo7m5jgww,7776
137
+ tactus/validation/LuaLexerBase.py,sha256=b2Q3kiWFAle-MY4GaUCsewJh6L9oGKYcjGkNCbkRPmk,1683
138
+ tactus/validation/LuaParserBase.py,sha256=o3klCIY0ANkVCU0VHml0IOYE4CdEledeoyoIAPxV58k,528
139
+ tactus/validation/README.md,sha256=AS6vr4blY7IKWRsj4wuvWBHVMTc5fto7IgNmv-Rjkdo,5366
140
+ tactus/validation/__init__.py,sha256=rnap-YvNievWigYYUewuXBcLtAdjZ8YpeJDYS1T7XZM,153
141
+ tactus/validation/error_listener.py,sha256=ANaQHPzRSGQMgreYqZ4ZvIKGENj55FnrEQYUmqFvGaY,619
142
+ tactus/validation/semantic_visitor.py,sha256=ts24kyfD3zhrsU0TBbQRZdBgQFaYbc5QV7MaiIKnpYQ,37446
143
+ tactus/validation/validator.py,sha256=Vut4nWoNVbm1n_RRbdLVLJyBb6S29KjnxXi-SrRQd3Y,4842
144
+ tactus/validation/generated/LuaLexer.interp,sha256=B-Xb6HNXS7YYYQB_cvsWzf8OQLFnEhZHDN5vCOyP3yw,20444
145
+ tactus/validation/generated/LuaLexer.py,sha256=6B-HNB_vAp3bA5iACLvMWw0R4KFENsuiG7bccysxbRQ,67252
146
+ tactus/validation/generated/LuaLexer.tokens,sha256=uo4NdATiGedhiDccWz1jXH5tYJWyT3OZ0216z1Zif7E,1005
147
+ tactus/validation/generated/LuaLexerBase.py,sha256=b2Q3kiWFAle-MY4GaUCsewJh6L9oGKYcjGkNCbkRPmk,1683
148
+ tactus/validation/generated/LuaParser.interp,sha256=sSPF5Qf2vJaPoSu44mdnvSnb-YPMt-0HUZE7R4vkk8c,14898
149
+ tactus/validation/generated/LuaParser.py,sha256=L9ouq5vQZvr4Nk_YWw65VDIpzzibSjL5dH2ZFbEpaCQ,130547
150
+ tactus/validation/generated/LuaParser.tokens,sha256=uo4NdATiGedhiDccWz1jXH5tYJWyT3OZ0216z1Zif7E,1005
151
+ tactus/validation/generated/LuaParserBase.py,sha256=o3klCIY0ANkVCU0VHml0IOYE4CdEledeoyoIAPxV58k,528
152
+ tactus/validation/generated/LuaParserVisitor.py,sha256=ageKSmHPxnO3jBS2fBtkmYBOdMj98nJvEzHb6px5T5w,4389
153
+ tactus/validation/generated/__init__.py,sha256=5gWlwRI0UvmHw2fnBpj_IG6N8oZeabr5tbj1AODDvjc,196
154
+ tactus/validation/grammar/LuaLexer.g4,sha256=t2MXiTCr127RWAyQGvamkcU_m4veqPzSuHUtAKwalw4,2771
155
+ tactus/validation/grammar/LuaParser.g4,sha256=ceZenb90BdiZmVdOxMGj9qJk3QbbWVZe5HUqPgoePfY,3202
156
+ tactus-0.31.2.dist-info/METADATA,sha256=vmY6PdYqwyMox66Vg4M6yAQ5HJx9_Ac2rrf86iOL_h8,58693
157
+ tactus-0.31.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
158
+ tactus-0.31.2.dist-info/entry_points.txt,sha256=vWseqty8m3z-Worje0IYxlioMjPDCoSsm0AtY4GghBY,47
159
+ tactus-0.31.2.dist-info/licenses/LICENSE,sha256=ivohBcAIYnaLPQ-lKEeCXSMvQUVISpQfKyxHBHoa4GA,1066
160
+ tactus-0.31.2.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.28.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ tactus = tactus.cli.app:main
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2024 Anthus AI
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.