MANIFEST.in
README.md
pyproject.toml
src/persona_dsl/__init__.py
src/persona_dsl/cli.py
src/persona_dsl/contracts.py
src/persona_dsl/json_types.py
src/persona_dsl/persona.py
src/persona_dsl/py.typed
src/persona_dsl/release_workflow.py
src/persona_dsl.egg-info/PKG-INFO
src/persona_dsl.egg-info/SOURCES.txt
src/persona_dsl.egg-info/dependency_links.txt
src/persona_dsl.egg-info/entry_points.txt
src/persona_dsl.egg-info/requires.txt
src/persona_dsl.egg-info/top_level.txt
src/persona_dsl/components/action.py
src/persona_dsl/components/base_step.py
src/persona_dsl/components/combined_step.py
src/persona_dsl/components/expectation.py
src/persona_dsl/components/fact.py
src/persona_dsl/components/goal.py
src/persona_dsl/components/ops.py
src/persona_dsl/components/step.py
src/persona_dsl/control_plane/__init__.py
src/persona_dsl/control_plane/cli.py
src/persona_dsl/control_plane/cli_actions.py
src/persona_dsl/control_plane/cli_runtime.py
src/persona_dsl/control_plane/cli_support.py
src/persona_dsl/control_plane/filesystem.py
src/persona_dsl/control_plane/launcher.py
src/persona_dsl/control_plane/models.py
src/persona_dsl/control_plane/report_cli.py
src/persona_dsl/control_plane/reports.py
src/persona_dsl/control_plane/status_snapshot.py
src/persona_dsl/discovery/__init__.py
src/persona_dsl/discovery/annotations.py
src/persona_dsl/discovery/components.py
src/persona_dsl/discovery/configs.py
src/persona_dsl/discovery/declared_bindings.py
src/persona_dsl/discovery/docs.py
src/persona_dsl/discovery/lifecycle.py
src/persona_dsl/discovery/models.py
src/persona_dsl/discovery/native_scenarios.py
src/persona_dsl/discovery/native_suite_metadata.py
src/persona_dsl/discovery/native_tests.py
src/persona_dsl/discovery/pages.py
src/persona_dsl/discovery/project.py
src/persona_dsl/discovery/scenario_id.py
src/persona_dsl/discovery/skills.py
src/persona_dsl/editors/__init__.py
src/persona_dsl/editors/base.py
src/persona_dsl/editors/page.py
src/persona_dsl/editors/test.py
src/persona_dsl/expectations/generic/__init__.py
src/persona_dsl/expectations/generic/contains_item.py
src/persona_dsl/expectations/generic/contains_the_text.py
src/persona_dsl/expectations/generic/ends_with.py
src/persona_dsl/expectations/generic/has_entries.py
src/persona_dsl/expectations/generic/is_equal.py
src/persona_dsl/expectations/generic/is_greater_than.py
src/persona_dsl/expectations/generic/is_instance_of.py
src/persona_dsl/expectations/generic/is_not_none.py
src/persona_dsl/expectations/generic/is_same_as.py
src/persona_dsl/expectations/generic/is_truthy.py
src/persona_dsl/expectations/generic/path_equal.py
src/persona_dsl/expectations/generic/path_exists.py
src/persona_dsl/expectations/web/__init__.py
src/persona_dsl/expectations/web/be_detached.py
src/persona_dsl/expectations/web/be_visible.py
src/persona_dsl/expectations/web/contain_text.py
src/persona_dsl/expectations/web/data_snapshot.py
src/persona_dsl/expectations/web/have_attribute.py
src/persona_dsl/expectations/web/have_count.py
src/persona_dsl/expectations/web/have_text.py
src/persona_dsl/expectations/web/have_value.py
src/persona_dsl/expectations/web/is_displayed.py
src/persona_dsl/expectations/web/matches_aria_snapshot.py
src/persona_dsl/expectations/web/matches_screenshot.py
src/persona_dsl/expectations/web/to_be_enabled.py
src/persona_dsl/fabric/__init__.py
src/persona_dsl/fabric/models.py
src/persona_dsl/generators/__init__.py
src/persona_dsl/generators/api_generator.py
src/persona_dsl/generators/cli.py
src/persona_dsl/generators/page/__init__.py
src/persona_dsl/generators/page/codegen.py
src/persona_dsl/generators/page/contracts.py
src/persona_dsl/generators/page/declarative_codegen.py
src/persona_dsl/generators/page/enum_extractor.py
src/persona_dsl/generators/page/enum_storage.py
src/persona_dsl/generators/page/generator.py
src/persona_dsl/generators/page/structure.py
src/persona_dsl/generators/page/table_analysis.py
src/persona_dsl/generators/page/table_dsl_codegen.py
src/persona_dsl/generators/page/utils.py
src/persona_dsl/generators/schema/__init__.py
src/persona_dsl/generators/schema/xsd_generator.py
src/persona_dsl/lifecycle/__init__.py
src/persona_dsl/lifecycle/decorators.py
src/persona_dsl/lifecycle/discovery.py
src/persona_dsl/lifecycle/models.py
src/persona_dsl/lifecycle/runtime.py
src/persona_dsl/mcp/__init__.py
src/persona_dsl/mcp/cli.py
src/persona_dsl/mcp/server.py
src/persona_dsl/native_scenario/__init__.py
src/persona_dsl/native_scenario/context.py
src/persona_dsl/native_scenario/decorators.py
src/persona_dsl/native_scenario/models.py
src/persona_dsl/native_scenario/variant_loader.py
src/persona_dsl/observability/__init__.py
src/persona_dsl/observability/journal.py
src/persona_dsl/observability/models.py
src/persona_dsl/observability/projections.py
src/persona_dsl/ops/api/__init__.py
src/persona_dsl/ops/api/json_as.py
src/persona_dsl/ops/api/json_response.py
src/persona_dsl/ops/api/send_request.py
src/persona_dsl/ops/db/__init__.py
src/persona_dsl/ops/db/_shared.py
src/persona_dsl/ops/db/execute_sql.py
src/persona_dsl/ops/db/fetch_all.py
src/persona_dsl/ops/db/fetch_all_as.py
src/persona_dsl/ops/db/fetch_one.py
src/persona_dsl/ops/db/fetch_one_as.py
src/persona_dsl/ops/db/fetch_scalar.py
src/persona_dsl/ops/db/require_one.py
src/persona_dsl/ops/db/require_one_as.py
src/persona_dsl/ops/db/require_scalar.py
src/persona_dsl/ops/kafka/__init__.py
src/persona_dsl/ops/kafka/contracts.py
src/persona_dsl/ops/kafka/message_in_topic.py
src/persona_dsl/ops/kafka/send_message.py
src/persona_dsl/ops/soap/__init__.py
src/persona_dsl/ops/soap/call_operation.py
src/persona_dsl/ops/soap/operation_result.py
src/persona_dsl/ops/web/__init__.py
src/persona_dsl/ops/web/aria_snapshot.py
src/persona_dsl/ops/web/browser_context.py
src/persona_dsl/ops/web/click.py
src/persona_dsl/ops/web/current_path.py
src/persona_dsl/ops/web/double_click.py
src/persona_dsl/ops/web/drag_and_drop.py
src/persona_dsl/ops/web/element_attribute.py
src/persona_dsl/ops/web/element_is_visible.py
src/persona_dsl/ops/web/element_text.py
src/persona_dsl/ops/web/elements_count.py
src/persona_dsl/ops/web/expand_table_row.py
src/persona_dsl/ops/web/expect_row_selected.py
src/persona_dsl/ops/web/expect_table_headers.py
src/persona_dsl/ops/web/expect_table_row_expanded.py
src/persona_dsl/ops/web/expect_table_selection_state.py
src/persona_dsl/ops/web/fill.py
src/persona_dsl/ops/web/generate_page_object.py
src/persona_dsl/ops/web/handle_dialog.py
src/persona_dsl/ops/web/hover.py
src/persona_dsl/ops/web/input_value.py
src/persona_dsl/ops/web/navigate.py
src/persona_dsl/ops/web/press_key.py
src/persona_dsl/ops/web/rich_aria_snapshot.py
src/persona_dsl/ops/web/screenshot.py
src/persona_dsl/ops/web/scroll_table.py
src/persona_dsl/ops/web/scroll_to.py
src/persona_dsl/ops/web/select_option.py
src/persona_dsl/ops/web/switch_tab.py
src/persona_dsl/ops/web/table_cell.py
src/persona_dsl/ops/web/table_column_data.py
src/persona_dsl/ops/web/table_column_is_sorted.py
src/persona_dsl/ops/web/table_data.py
src/persona_dsl/ops/web/table_expectations.py
src/persona_dsl/ops/web/table_has_no_data.py
src/persona_dsl/ops/web/table_row.py
src/persona_dsl/ops/web/table_row_data.py
src/persona_dsl/ops/web/toggle_all_rows_selection.py
src/persona_dsl/ops/web/toggle_row_selection.py
src/persona_dsl/ops/web/upload_file.py
src/persona_dsl/ops/web/wait_for_element_state.py
src/persona_dsl/ops/web/wait_for_navigation.py
src/persona_dsl/pages/__init__.py
src/persona_dsl/pages/elements.py
src/persona_dsl/pages/page.py
src/persona_dsl/pages/registry.py
src/persona_dsl/pages/virtual_page.py
src/persona_dsl/project/__init__.py
src/persona_dsl/project/loader.py
src/persona_dsl/project/models.py
src/persona_dsl/references/__init__.py
src/persona_dsl/references/engine.py
src/persona_dsl/references/models.py
src/persona_dsl/reporting/__init__.py
src/persona_dsl/reporting/allure.py
src/persona_dsl/reporting/allure_common.py
src/persona_dsl/reporting/allure_result.py
src/persona_dsl/reporting/allure_writer.py
src/persona_dsl/reporting/canonical.py
src/persona_dsl/reporting/runtime.py
src/persona_dsl/resources/__init__.py
src/persona_dsl/resources/decorators.py
src/persona_dsl/resources/models.py
src/persona_dsl/resources/registry.py
src/persona_dsl/resources/runtime.py
src/persona_dsl/runner/__init__.py
src/persona_dsl/runner/cli.py
src/persona_dsl/runner/console_failures.py
src/persona_dsl/runner/console_plain.py
src/persona_dsl/runner/console_reporting.py
src/persona_dsl/runner/console_rich.py
src/persona_dsl/runner/console_rich_layout.py
src/persona_dsl/runner/console_state.py
src/persona_dsl/runner/console_tui.py
src/persona_dsl/runner/discovery.py
src/persona_dsl/runner/events.py
src/persona_dsl/runner/execution_arguments.py
src/persona_dsl/runner/execution_item.py
src/persona_dsl/runner/execution_models.py
src/persona_dsl/runner/launch_lifecycle.py
src/persona_dsl/runner/local.py
src/persona_dsl/runner/local_dispatch.py
src/persona_dsl/runner/local_execution.py
src/persona_dsl/runner/local_execution_attempts.py
src/persona_dsl/runner/local_execution_streams.py
src/persona_dsl/runner/local_execution_support.py
src/persona_dsl/runner/local_scheduler.py
src/persona_dsl/runner/local_scheduler_control.py
src/persona_dsl/runner/local_state.py
src/persona_dsl/runner/local_worker_executor_pool.py
src/persona_dsl/runner/local_workers.py
src/persona_dsl/runner/models.py
src/persona_dsl/runner/options.py
src/persona_dsl/runner/reporting.py
src/persona_dsl/runner/scheduler_events.py
src/persona_dsl/runner/taas_bridge.py
src/persona_dsl/runtime/__init__.py
src/persona_dsl/runtime/generation.py
src/persona_dsl/runtime/logging.py
src/persona_dsl/runtime/models.py
src/persona_dsl/runtime/runtime_config.py
src/persona_dsl/runtime/session.py
src/persona_dsl/runtime/test_runner.py
src/persona_dsl/runtime/dist/persona_bundle.js
src/persona_dsl/scenario/__init__.py
src/persona_dsl/scenario/codegen.py
src/persona_dsl/scenario/data_driven_index.py
src/persona_dsl/scenario/diff.py
src/persona_dsl/scenario/engine.py
src/persona_dsl/scenario/ir_parser.py
src/persona_dsl/scenario/models.py
src/persona_dsl/scenario/plan.py
src/persona_dsl/scenario/templates.py
src/persona_dsl/scenario/validator.py
src/persona_dsl/schema_runtime/__init__.py
src/persona_dsl/schema_runtime/builder.py
src/persona_dsl/schema_runtime/registry.py
src/persona_dsl/schema_runtime/xml.py
src/persona_dsl/skills/__init__.py
src/persona_dsl/skills/use_api.py
src/persona_dsl/skills/use_browser.py
src/persona_dsl/skills/use_database.py
src/persona_dsl/skills/use_kafka.py
src/persona_dsl/skills/use_soap.py
src/persona_dsl/skills/core/base.py
src/persona_dsl/skills/core/skill_definition.py
src/persona_dsl/utils/__init__.py
src/persona_dsl/utils/artifacts.py
src/persona_dsl/utils/code_editor.py
src/persona_dsl/utils/config.py
src/persona_dsl/utils/config_models.py
src/persona_dsl/utils/data_providers.py
src/persona_dsl/utils/decorators.py
src/persona_dsl/utils/metrics.py
src/persona_dsl/utils/modeling.py
src/persona_dsl/utils/naming.py
src/persona_dsl/utils/path.py
src/persona_dsl/utils/project_imports.py
src/persona_dsl/utils/retry.py
src/persona_dsl/utils/runtime_env.py
src/persona_dsl/utils/selenoid.py
src/persona_dsl/utils/snapshots.py
src/persona_dsl/utils/taas_integration.py
src/persona_dsl/utils/tags.py
src/persona_dsl/utils/waits.py