tactus 0.18.0__tar.gz → 0.20.0__tar.gz
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.
- {tactus-0.18.0 → tactus-0.20.0}/AGENTS.md +12 -1
- {tactus-0.18.0 → tactus-0.20.0}/CHANGELOG.md +6 -0
- {tactus-0.18.0 → tactus-0.20.0}/PKG-INFO +1 -1
- tactus-0.20.0/SPECIFICATION.md +3263 -0
- tactus-0.18.0/SPECIFICATION.md → tactus-0.20.0/SPECIFICATION.md.bak +4 -5
- tactus-0.20.0/TECHNICAL_DEBT.md +267 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/02-basics-simple-logic.tac +6 -6
- {tactus-0.18.0 → tactus-0.20.0}/examples/03-basics-parameters.tac +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/examples/05-basics-multi-model.tac +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/examples/07-basics-bedrock.tac +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/examples/08-basics-models.tac +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/examples/09-basics-google-gemini.tac +4 -4
- {tactus-0.18.0 → tactus-0.20.0}/examples/10-feature-state.tac +4 -4
- {tactus-0.18.0 → tactus-0.20.0}/examples/15-feature-local-tools.tac +5 -4
- {tactus-0.18.0 → tactus-0.20.0}/examples/16-feature-toolsets-advanced.tac +13 -12
- {tactus-0.18.0 → tactus-0.20.0}/examples/17-feature-toolsets-dsl.tac +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/examples/18-feature-lua-tools-individual.tac +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/examples/18-feature-lua-tools-inline.tac +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/examples/18-feature-lua-tools-toolset.tac +1 -1
- tactus-0.20.0/examples/20-bdd-complete.tac +122 -0
- tactus-0.20.0/examples/20-bdd-complete.tac.bak2 +122 -0
- tactus-0.20.0/examples/21-bdd-passing.tac +92 -0
- tactus-0.20.0/examples/21-bdd-passing.tac.bak2 +92 -0
- tactus-0.20.0/examples/35-eval-trace.tac +132 -0
- tactus-0.20.0/examples/35-eval-trace.tac.bak2 +132 -0
- tactus-0.20.0/examples/37-eval-comprehensive.tac +129 -0
- tactus-0.20.0/examples/37-eval-comprehensive.tac.bak2 +129 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/52-file-io-basics.tac +22 -19
- {tactus-0.18.0 → tactus-0.20.0}/examples/53-tsv-file-io.tac +10 -8
- {tactus-0.18.0 → tactus-0.20.0}/examples/54-json-file-io.tac +17 -14
- {tactus-0.18.0 → tactus-0.20.0}/examples/55-parquet-file-io.tac +11 -9
- {tactus-0.18.0 → tactus-0.20.0}/examples/56-hdf5-file-io.tac +11 -9
- {tactus-0.18.0 → tactus-0.20.0}/examples/57-excel-file-io.tac +10 -8
- {tactus-0.18.0 → tactus-0.20.0}/examples/58-text-file-io.tac +12 -10
- {tactus-0.18.0 → tactus-0.20.0}/examples/61-inline-toolset-lua.tac +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/examples/62-mcp-toolset-by-server.tac +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/examples/63-toolset-import-from-file.tac +2 -2
- tactus-0.20.0/examples/app_config.ini +26 -0
- tactus-0.20.0/examples/app_config.json +1 -0
- tactus-0.20.0/examples/app_summary.json +1 -0
- tactus-0.20.0/examples/data_export.csv +11 -0
- tactus-0.20.0/examples/demo_output.json +11 -0
- tactus-0.20.0/examples/executive_summary.xlsx +0 -0
- tactus-0.20.0/examples/inventory.tsv +6 -0
- tactus-0.20.0/examples/output_high_performers.csv +5 -0
- tactus-0.20.0/examples/output_summary.json +5 -0
- tactus-0.20.0/examples/output_summary.txt +1 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/product_analysis.xlsx +0 -0
- tactus-0.20.0/examples/sales_analysis.xlsx +0 -0
- tactus-0.20.0/examples/sales_report.xlsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/scientific_data.h5 +0 -0
- tactus-0.20.0/examples/sensor_data.parquet +0 -0
- tactus-0.20.0/examples/sensor_report.parquet +0 -0
- tactus-0.20.0/examples/sensor_summary.parquet +0 -0
- tactus-0.20.0/examples/status_report.md +31 -0
- tactus-0.20.0/examples/summary.json +6 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/tools/data_analysis.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/examples/tools/search.py +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_history_steps.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/pyproject.toml +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/__init__.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/cli/app.py +1 -2
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/dependencies/registry.py +2 -3
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/dsl_stubs.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/lua_sandbox.py +40 -40
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/runtime.py +36 -4
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/module.py +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/prediction.py +4 -4
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/handles.py +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/model.py +1 -3
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/procedure_callable.py +46 -54
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/tool.py +2 -2
- tactus-0.20.0/tactus/stdlib/io/__init__.py +13 -0
- tactus-0.20.0/tactus/stdlib/io/csv.py +88 -0
- tactus-0.20.0/tactus/stdlib/io/excel.py +136 -0
- tactus-0.20.0/tactus/stdlib/io/file.py +90 -0
- tactus-0.20.0/tactus/stdlib/io/hdf5.py +121 -0
- tactus-0.20.0/tactus/stdlib/io/json.py +109 -0
- tactus-0.20.0/tactus/stdlib/io/parquet.py +83 -0
- tactus-0.20.0/tactus/stdlib/io/tsv.py +88 -0
- tactus-0.20.0/tactus/stdlib/loader.py +274 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/behave_integration.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/evaluation_runner.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/gherkin_parser.py +2 -3
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/mock_hitl.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/models.py +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/test_runner.py +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/tactus/tracing/trace_manager.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/LuaLexerBase.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/LuaParserBase.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaLexer.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaLexerBase.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaParser.py +6 -32
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaParserBase.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaParserVisitor.py +0 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/__init__.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/ARCHITECTURE.md +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/README.md +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/README.md +2 -2
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/demo.ts +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/test_lua_sandbox_security.py +23 -6
- tactus-0.20.0/tests/stdlib/__init__.py +1 -0
- tactus-0.20.0/tests/stdlib/test_loader.py +180 -0
- tactus-0.20.0/tests/stdlib/test_require_python.py +228 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_gherkin_parser.py +3 -3
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_models.py +9 -9
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_runtime_integration.py +1 -1
- {tactus-0.18.0 → tactus-0.20.0}/tests/utils/test_safe_file_library.py +12 -8
- tactus-0.18.0/examples/15-feature-local-tools.tac.yml +0 -11
- tactus-0.18.0/examples/16-feature-toolsets-advanced.tac.yml +0 -33
- tactus-0.18.0/examples/17-feature-toolsets-dsl.tac.yml +0 -6
- tactus-0.18.0/examples/executive_summary.xlsx +0 -0
- tactus-0.18.0/examples/inventory.tsv +0 -6
- tactus-0.18.0/examples/output_high_performers.csv +0 -5
- tactus-0.18.0/examples/sales_analysis.xlsx +0 -0
- tactus-0.18.0/examples/sales_report.xlsx +0 -0
- tactus-0.18.0/examples/sensor_data.parquet +0 -0
- tactus-0.18.0/examples/sensor_report.parquet +0 -0
- tactus-0.18.0/examples/sensor_summary.parquet +0 -0
- tactus-0.18.0/features/documentation/Lua DSL/PLAN.md +0 -243
- tactus-0.18.0/features/steps/_dspy_integration_steps_old.py.bak +0 -479
- tactus-0.18.0/features/steps/storage_backend_steps.py.bak +0 -343
- tactus-0.18.0/tactus/validation/grammar/Lua.g4 +0 -1439
- {tactus-0.18.0 → tactus-0.20.0}/.claude/agents.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/.github/workflows/desktop-release.yml +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/.github/workflows/release.yml +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/.gitignore +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/.tactus/config.yml.example +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/IMPLEMENTATION.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/LICENSE +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/Makefile +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/behave.ini +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/AGENTS.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/BDD_TESTING.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/CONFIGURATION.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/DURABILITY.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/FILE_IO.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/STREAMING.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/TOOLS.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/docs/TOOL_ROADMAP.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/.tactus/config.yml +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/01-basics-hello-world.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/04-basics-simple-agent.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/06-basics-streaming.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/11-feature-message-history.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/12-feature-structured-output.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/13-feature-session.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/14-feature-per-turn-tools-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/14-feature-per-turn-tools.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/19-feature-direct-tool-calls.tac +0 -0
- /tactus-0.18.0/examples/20-bdd-complete.tac → /tactus-0.20.0/examples/20-bdd-complete.tac.bak +0 -0
- /tactus-0.18.0/examples/21-bdd-passing.tac → /tactus-0.20.0/examples/21-bdd-passing.tac.bak +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/30-eval-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/31-eval-demo.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/32-eval-success-rate.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/33-eval-thresholds.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/34-eval-dataset.jsonl +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/34-eval-dataset.tac +0 -0
- /tactus-0.18.0/examples/35-eval-trace.tac → /tactus-0.20.0/examples/35-eval-trace.tac.bak +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/36-eval-advanced.tac +0 -0
- /tactus-0.18.0/examples/37-eval-comprehensive.tac → /tactus-0.20.0/examples/37-eval-comprehensive.tac.bak +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/39-model-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/40-mcp-test.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/40-model-text-classifier.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/41-mcp-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/41-model-pytorch.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/43-sub-procedure-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/44-sub-procedure-composition.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/45-sub-procedure-recursive.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/46-checkpoint-explicit.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/47-checkpoint-expensive-ops.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/48-script-mode-simple.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/50-inputs-showcase.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/51-inputs-calculator.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/60-tool-sources.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/64-require-modules.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/65-optional-state-demo.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/70-mocking-static.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/71-mocking-temporal.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/72-mocking-conditional.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/99-misc-test-loading.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/data/sample.csv +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/helpers/math_module.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/helpers/product.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/helpers/string_module.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/helpers/sum.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/helpers/text_tools.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/inventory_summary.tsv +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/mock-config.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/models/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/models/create_sentiment_model.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/tools/calculations.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/with_dependencies/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/with_dependencies/simple_http_test.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/examples/with_dependencies/time_lookup.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/01_state_management.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/02_checkpointing.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/03_human_in_the_loop.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/04_control_flow.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/05_tool_integration.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/06_retry_logic.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/07_file_operations.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/08_agent_primitives.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/09_workflow_execution.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/10_lua_integration.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/11_storage_backends.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/12_json_operations.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/13_logging.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/14_stage_and_step_tracking.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/15_procedure_calls.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/16_session_management.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/17_lua_dsl_validation.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/18_example_procedures.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/19_ide_server.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/20_parameters.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/21_outputs.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/23_prompts.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/24_bdd_specifications.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/25_bdd_custom_steps.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/26_bdd_evaluation.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/27_default_settings.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/28_custom_prompts.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/29_execution_settings.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/30_session_filters.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/31_matchers.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/32_result_object.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/33_output_type.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/42_model_primitive.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/43_sub_procedure_checkpointing.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/46_explicit_checkpoint.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/48_script_mode.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/51_dspy_lm_config.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/52_dspy_signature.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/53_dspy_module.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/54_dspy_history.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/55_dspy_prediction.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/56_dspy_agent.feature +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/documentation/IDE_SERVER_BEHAVIOR.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/documentation/Lua DSL/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/environment.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/agent_primitives_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/checkpointing_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/control_flow_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_agent_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_lm_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_module_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_prediction_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/dspy_signature_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/example_procedures_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/file_operations_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/human_in_the_loop_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/ide_server_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/json_operations_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/logging_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/lua_dsl_validation_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/lua_integration_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/mocking_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/procedure_calls_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/result_and_output_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/retry_logic_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/session_management_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/stage_tracking_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/state_management_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/storage_backend_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/support/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/support/harnesses.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/tool_integration_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/features/steps/workflow_execution_steps.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/scripts/audit_examples_mocking.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/scripts/convert_examples.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/start-web-ide.sh +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/cli_hitl.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/cli_log.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/file_storage.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/ide_log.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/lua_tools.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/mcp.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/mcp_manager.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/memory.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/adapters/plugins.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/backends/http_backend.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/backends/model_backend.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/backends/pytorch_backend.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/cli/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/cli/commands/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/config_manager.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/dependencies/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/exceptions.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/execution_context.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/message_history_manager.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/mocking.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/output_validator.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/registry.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/template_resolver.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/core/yaml_parser.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/agent.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/config.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/history.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/dspy/signature.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/ide/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/ide/server.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/control.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/file.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/human.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/json.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/log.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/message_history.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/procedure.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/retry.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/session.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/stage.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/state.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/step.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/tool_handle.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/primitives/toolset.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/chat_recorder.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/config.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/hitl.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/log_handler.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/models.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/protocols/storage.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/providers/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/providers/base.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/providers/bedrock.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/providers/google.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/providers/openai.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/stdlib/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/stdlib/tac/tactus/tools/done.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/stdlib/tac/tactus/tools/log.tac +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/context.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/eval_models.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/evaluators.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/events.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/mock_agent.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/mock_dependencies.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/mock_registry.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/mock_tools.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/pydantic_eval_runner.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/steps/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/steps/builtin.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/steps/custom.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/testing/steps/registry.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/tracing/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/utils/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/utils/cost_calculator.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/utils/model_pricing.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/utils/safe_file_library.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/utils/safe_libraries.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/error_listener.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaLexer.interp +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaLexer.tokens +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaParser.interp +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/generated/LuaParser.tokens +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/grammar/LuaLexer.g4 +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/grammar/LuaParser.g4 +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/semantic_visitor.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus/validation/validator.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/.gitignore +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/RUN_ELECTRON.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/SETUP_COMPLETE.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/backend/hook-lupa.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/backend/tactus_backend.spec +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/package-lock.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/package.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/preload/preload.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/preload/tsconfig.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/rebuild-and-test.sh +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/scripts/build-backend.js +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/scripts/build-frontend.js +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/src/backend-manager.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/src/main.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/src/menu.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-desktop/tsconfig.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/CHANGELOG.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/DEV_MODE.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/QUICK_START.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/RESTART_INSTRUCTIONS.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/TROUBLESHOOTING.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/README.md +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/events.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/logging_capture.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/lsp_server.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/requirements.txt +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/tactus_lsp_handler.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/backend/test_lsp_server.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/dev.sh +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/.storybook/main.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/.storybook/preview.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/.storybook/vitest.setup.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/index.html +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/jest.config.js +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/package-lock.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/package.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/postcss.config.js +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/App.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/Editor.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/LSPClient.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/LSPClientHTTP.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/TactusLanguage.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/commands/registry.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/CheckpointSummary.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/CollapsibleRun.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/Duration.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/Duration.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/FileTree.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/FileTree.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/MessageFeed.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureInputsDisplay.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureInputsDisplay.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureInputsModal.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureInputsModal.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureTab.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ProcedureTab.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ResizeHandle.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ResultsSidebar.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ResultsSidebar.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/Timestamp.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/Timestamp.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/TopMenuBar.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/CheckpointDetails.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/CheckpointDetails.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/CheckpointList.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/CheckpointList.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/DebuggerPanel.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/DebuggerPanel.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/RunSelector.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/RunSelector.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/StatisticsPanel.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/debugger/StatisticsPanel.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/AgentStreamingComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/BaseEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/CheckpointEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/CostEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/CostEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/EvaluationEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/EvaluationEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/EventRenderer.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ExecutionEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ExecutionEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ExecutionSummaryEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ExecutionSummaryEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/LoadingEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/LoadingEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/LogCluster.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/LogEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/LogEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/OutputEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/OutputEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/TestEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/TestEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ToolCallEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ValidationEventComponent.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/events/ValidationEventComponent.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/AgentsSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/EvaluationsSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/MetadataSections.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/OutputsSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/ParametersSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/SpecificationsSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/StagesSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/metadata/ToolsSection.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/scenarios/EvaluateScenarios.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/scenarios/RunScenarios.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/scenarios/TestScenarios.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/scenarios/ValidationScenarios.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/theme-provider.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/ai/conversation.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/ai/message.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/ai/prompt-input.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/button.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/dialog.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/input.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/logo.stories.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/logo.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/menubar.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/scroll-area.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/separator.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/components/ui/tabs.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/hooks/useEventStream.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/hooks/useTracing.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/index.css +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/lib/utils.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/main.tsx +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/types/events.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/types/metadata.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/types/results.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/types/tracing.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/validation/TactusValidator.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/validation/generated/LuaParser.interp +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/validation/generated/LuaParser.tokens +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/validation/types.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/src/vite-env.d.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/tailwind.config.js +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/tsconfig.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/tsconfig.node.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/vite.config.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/frontend/vitest.shims.d.ts +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/package.json +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tactus-ide/start-dev.sh +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/adapters/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/adapters/test_lua_tools_adapter.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/adapters/test_plugins.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/cli/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/cli/test_cli.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/cli/test_cli_inputs.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/conftest.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/test_config_manager.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/test_determinism_safety.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/test_runtime_inputs.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/core/test_script_mode.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/dspy/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/dspy/test_streaming.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/fixtures/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/fixtures/test_mcp_server.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/integration/test_named_procedures.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/mocks/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/mocks/llm_mocks.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/primitives/test_retry_primitive.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/primitives/test_state_primitive.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/primitives/test_tool_primitive.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/primitives/test_toolset_dsl.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0/tests}/test_checkpoints_integration.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/test_mcp_integration.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/test_tracing.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/conftest.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_all_examples.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_e2e.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_integration.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/testing/test_step_registry.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/utils/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tests/validation/__init__.py +0 -0
- {tactus-0.18.0 → tactus-0.20.0}/tmp/langchain.db/topics_llm_cache.db +0 -0
|
@@ -98,6 +98,17 @@ Agent "bedrock_agent" {
|
|
|
98
98
|
- **Do NOT delete or truncate `CHANGELOG.md`**.
|
|
99
99
|
- Ensure your commit messages follow the [Angular Commit Message Convention](https://github.com/angular/angular/blob/master/CONTRIBUTING.md#commit) (e.g., `feat: ...`, `fix: ...`, `docs: ...`) so that Semantic Release can correctly generate the changelog.
|
|
100
100
|
|
|
101
|
+
## Commit Message Guidelines
|
|
102
|
+
|
|
103
|
+
When writing commit messages:
|
|
104
|
+
|
|
105
|
+
- **Do NOT use code blocks** (backticks or triple backticks) in commit messages
|
|
106
|
+
- Use plain text with proper formatting (bullet points, indentation)
|
|
107
|
+
- Keep commit subject lines concise (50-72 characters)
|
|
108
|
+
- Use the imperative mood ("fix bug" not "fixed bug")
|
|
109
|
+
- Include detailed explanations in the commit body when necessary
|
|
110
|
+
- Follow the Angular Commit Message Convention for the subject line
|
|
111
|
+
|
|
101
112
|
## Parser Generation Requirements
|
|
102
113
|
|
|
103
114
|
**IMPORTANT**: Tactus uses ANTLR4 to generate parsers from the Lua grammar for both Python and TypeScript.
|
|
@@ -138,7 +149,7 @@ The IDE uses a two-layer validation approach for optimal performance and user ex
|
|
|
138
149
|
|
|
139
150
|
**Layer 1: TypeScript Parser (Client-Side)**
|
|
140
151
|
- Location: `tactus-ide/frontend/src/validation/`
|
|
141
|
-
- ANTLR-generated from same `
|
|
152
|
+
- ANTLR-generated from same `LuaLexer.g4` and `LuaParser.g4` grammars as Python parser
|
|
142
153
|
- Purpose: Instant syntax validation (< 10ms)
|
|
143
154
|
- Runs in browser, no backend needed
|
|
144
155
|
- Provides immediate feedback as user types
|