[INFO] fetching crate this-cli 0.0.4...
[INFO] testing this-cli-0.0.4 against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739-1
[INFO] extracting crate this-cli 0.0.4 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate this-cli 0.0.4
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate this-cli 0.0.4
[INFO] tweaked toml for crates.io crate this-cli 0.0.4 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate this-cli 0.0.4 on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate this-cli 0.0.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2f79ba81828a2a821d162d1abed53576be1a72324b05886abbdeaeeef0229669
[INFO] running `Command { std: "docker" "start" "-a" "2f79ba81828a2a821d162d1abed53576be1a72324b05886abbdeaeeef0229669", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2f79ba81828a2a821d162d1abed53576be1a72324b05886abbdeaeeef0229669", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2f79ba81828a2a821d162d1abed53576be1a72324b05886abbdeaeeef0229669", kill_on_drop: false }`
[INFO] [stdout] 2f79ba81828a2a821d162d1abed53576be1a72324b05886abbdeaeeef0229669
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d1fb20e23f314a9b2fabd07ce354a9469c5683f87b9f650aca4eb1c665b0c18a
[INFO] running `Command { std: "docker" "start" "-a" "d1fb20e23f314a9b2fabd07ce354a9469c5683f87b9f650aca4eb1c665b0c18a", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.180
[INFO] [stderr]    Compiling regex-syntax v0.8.9
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling zmij v1.0.19
[INFO] [stderr]    Compiling nix v0.31.1
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling clap_lex v0.7.7
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling anyhow v1.0.101
[INFO] [stderr]    Compiling humansize v2.1.3
[INFO] [stderr]    Compiling slug v0.1.6
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling pest v2.8.6
[INFO] [stderr]    Compiling winnow v0.7.14
[INFO] [stderr]    Compiling ryu v1.0.22
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling clap_builder v4.5.57
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling syn v2.0.114
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling pest_meta v2.8.6
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling ctrlc v3.5.2
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling pest_generator v2.8.6
[INFO] [stderr]    Compiling ignore v0.4.25
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.5.55
[INFO] [stderr]    Compiling pest_derive v2.8.6
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]    Compiling globwalk v0.9.1
[INFO] [stderr]    Compiling chrono-tz-build v0.3.0
[INFO] [stderr]    Compiling chrono-tz v0.9.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling clap v4.5.57
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling clap_complete v4.5.66
[INFO] [stderr]    Compiling tera v1.20.1
[INFO] [stderr]    Compiling this-cli v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 36.94s
[INFO] running `Command { std: "docker" "inspect" "d1fb20e23f314a9b2fabd07ce354a9469c5683f87b9f650aca4eb1c665b0c18a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d1fb20e23f314a9b2fabd07ce354a9469c5683f87b9f650aca4eb1c665b0c18a", kill_on_drop: false }`
[INFO] [stdout] d1fb20e23f314a9b2fabd07ce354a9469c5683f87b9f650aca4eb1c665b0c18a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 770402529f7623eddf7ce66b196332b7ef3635897634e78ea94072effa1d4728
[INFO] running `Command { std: "docker" "start" "-a" "770402529f7623eddf7ce66b196332b7ef3635897634e78ea94072effa1d4728", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling nix v0.31.1
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling globwalk v0.9.1
[INFO] [stderr]    Compiling linux-raw-sys v0.11.0
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling serial_test_derive v3.4.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tera v1.20.1
[INFO] [stderr]    Compiling serial_test v3.4.0
[INFO] [stderr]    Compiling ctrlc v3.5.2
[INFO] [stderr]    Compiling tempfile v3.24.0
[INFO] [stderr]    Compiling this-cli v0.0.4 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 17.46s
[INFO] running `Command { std: "docker" "inspect" "770402529f7623eddf7ce66b196332b7ef3635897634e78ea94072effa1d4728", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "770402529f7623eddf7ce66b196332b7ef3635897634e78ea94072effa1d4728", kill_on_drop: false }`
[INFO] [stdout] 770402529f7623eddf7ce66b196332b7ef3635897634e78ea94072effa1d4728
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] ce3758eda7e3ea3f51b7dcf9c18a60ec1c365f65d4a614d66173e0f125d91259
[INFO] running `Command { std: "docker" "start" "-a" "ce3758eda7e3ea3f51b7dcf9c18a60ec1c365f65d4a614d66173e0f125d91259", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/this-2dfec1cdde5ebf72)
[INFO] [stdout] 
[INFO] [stdout] running 520 tests
[INFO] [stdout] test codegen::introspect::tests::test_introspect_empty_project ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_links_yaml_multiple ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_links_yaml_with_links ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_crud_functions ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_full_file ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_interface_full ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_multiple_entities ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_no_links_section ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_datetime ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_interface_create_excludes_auto_fields ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_links_yaml_empty ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_string_list ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_interface_update_all_optional ... ok
[INFO] [stdout] test codegen::typescript::tests::test_generate_link_function ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_hashmap ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_primitives ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_unknown_passthrough ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_vec ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_option ... ok
[INFO] [stdout] test codegen::typescript::tests::test_rust_type_to_ts_json_value ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_fields ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_entity_model_no_macro ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_descriptor_no_plural ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_entity_model_no_indexed_fields ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_descriptor_basic ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_entity_model_validated ... ok
[INFO] [stdout] test codegen::introspect::tests::test_parse_entity_model_basic ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_outside_project_error ... ok
[INFO] [stdout] test codegen::introspect::tests::test_introspect_no_descriptor ... ok
[INFO] [stdout] test codegen::introspect::tests::test_introspect_full_project ... ok
[INFO] [stdout] test codegen::introspect::tests::test_introspect_multiple_entities_sorted ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_no_stores_rs ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_creates_files ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_in_workspace ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_mongodb_backend ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_duplicate_error ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_mod_rs_content ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_lmdb_backend ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_reserved_fields_skipped ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_postgres_backend ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_model_content ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_all_types ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_empty ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_invalid_format ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_optional ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_unsupported_type ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_valid ... ok
[INFO] [stdout] test commands::add_entity::tests::test_parse_fields_with_spaces ... ok
[INFO] [stdout] test commands::add_event_flow::tests::test_add_event_flow_basic ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_updates_existing_entities_mod ... ok
[INFO] [stdout] test commands::add_event_flow::tests::test_add_event_flow_duplicate_errors ... ok
[INFO] [stdout] test commands::add_event_flow::tests::test_add_event_flow_custom_trigger ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_mysql_backend ... ok
[INFO] [stdout] test commands::add_event_flow::tests::test_add_event_flow_missing_events_yaml_errors ... ok
[INFO] [stdout] test commands::add_event_flow::tests::test_add_event_flow_missing_sink_errors ... ok
[INFO] [stdout] test commands::add_link::tests::test_add_duplicate_link_errors ... ok
[INFO] [stdout] test commands::add_link::tests::test_add_link_with_description ... ok
[INFO] [stdout] test commands::add_link::tests::test_default_description_auto_generated ... ok
[INFO] [stdout] test commands::add_link::tests::test_add_basic_link ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_no_module_rs ... ok
[INFO] [stdout] test commands::add_link::tests::test_default_link_type_is_has_target ... ok
[INFO] [stdout] test commands::add_link::tests::test_default_forward_is_pluralized_target ... ok
[INFO] [stdout] test commands::add_link::tests::test_entities_auto_created ... ok
[INFO] [stdout] test commands::add_link::tests::test_links_config_serde_roundtrip ... ok
[INFO] [stdout] test commands::add_link::tests::test_default_reverse_is_source ... ok
[INFO] [stdout] test commands::add_link::tests::test_add_link_with_custom_names ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_pascal_case_naming ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_descriptor_content ... ok
[INFO] [stdout] test commands::add_link::tests::test_missing_links_yaml_errors ... ok
[INFO] [stdout] test commands::add_link::tests::test_source_target_normalized_to_snake_case ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_invalid_type_errors ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_missing_events_yaml_errors ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_webhook_with_url ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_webhook_without_url_errors ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_duplicate_errors ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_counter ... ok
[INFO] [stdout] test commands::add_link::tests::test_validation_rule_added_by_default ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_args_parsing ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_websocket ... ok
[INFO] [stdout] test commands::add_sink::tests::test_add_sink_in_app ... ok
[INFO] [stdout] test commands::add_link::tests::test_no_validation_rule_flag ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_with_custom_indexed_fields ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_no_links_yaml ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_updates_stores ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_updates_entities_mod ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_requires_webapp ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_with_optional_fields ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_with_validated_flag ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_stores_idempotent ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_ios_requires_webapp ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_updates_links_yaml ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_unsupported_type_error ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_updates_module_rs ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_android_creates_files ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_creates_files ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_webapp_outside_workspace_error ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_main_rs_content ... ok
[INFO] [stdout] test commands::build::tests::test_copy_dir_recursive ... ok
[INFO] [stdout] test commands::build::tests::test_copy_dir_recursive_empty_dir ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_duplicate_error ... ok
[INFO] [stdout] test commands::add_entity::tests::test_add_entity_with_fields ... ok
[INFO] [stdout] test commands::build::tests::test_copy_dir_recursive_overwrites_existing_dst ... ok
[INFO] [stdout] test commands::build::tests::test_copy_dir_recursive_nested_dirs ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_found ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_only_native_targets ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_not_found ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_returns_first_webapp ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_website_is_not_webapp ... ok
[INFO] [stdout] test commands::build::tests::test_require_webapp_error_includes_flag_name_docker ... ok
[INFO] [stdout] test commands::build::tests::test_require_webapp_error_includes_flag_name_front_only ... ok
[INFO] [stdout] test commands::build::tests::test_require_webapp_error_suggests_add_target ... ok
[INFO] [stdout] test commands::build::tests::test_require_webapp_with_target ... ok
[INFO] [stdout] test commands::build::tests::test_find_webapp_target_among_multiple_targets ... ok
[INFO] [stdout] test commands::build::tests::test_require_webapp_without_target ... ok
[INFO] [stdout] test commands::build::tests::test_run_api_build_non_existent_path ... ignored
[INFO] [stdout] test commands::build::tests::test_run_build_mobile_android_missing_scaffold ... ok
[INFO] [stdout] test commands::build::tests::test_run_build_desktop_missing_scaffold ... ok
[INFO] [stdout] test commands::build::tests::test_run_build_desktop_suggests_add_target_on_missing_scaffold ... ok
[INFO] [stdout] test commands::build::tests::test_run_build_mobile_ios_missing_front_dist ... ok
[INFO] [stdout] test commands::build::tests::test_run_build_mobile_missing_scaffold ... ok
[INFO] [stdout] test commands::build::tests::test_run_build_mobile_without_webapp_skips_dist_check ... ignored
[INFO] [stdout] test commands::add_target::tests::test_add_target_ios_capacitor_config_content ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_tauri_conf_content ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_custom_name ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_webapp_custom_name ... ok
[INFO] [stdout] test commands::build::tests::test_run_front_build_missing_front_dir ... ok
[INFO] [stdout] test commands::build::tests::test_run_front_build_missing_package_json ... ok
[INFO] [stdout] test commands::build::tests::test_run_target_build_all_no_native ... ok
[INFO] [stdout] test commands::build::tests::test_run_target_build_all_with_desktop_fails_at_scaffold ... ignored
[INFO] [stdout] test commands::build::tests::test_run_target_build_error_lists_configured_targets ... ok
[INFO] [stdout] test commands::build::tests::test_run_target_build_unknown_target ... ok
[INFO] [stdout] test commands::build::tests::test_run_target_build_webapp_rejected ... ok
[INFO] [stdout] test commands::build::tests::test_run_target_build_website_rejected ... ok
[INFO] [stdout] _this() {
[INFO] [stdout]     local i cur prev opts cmd
[INFO] [stdout]     COMPREPLY=()
[INFO] [stdout]     if [[ "${BASH_VERSINFO[0]}" -ge 4 ]]; then
[INFO] [stdout]         cur="$2"
[INFO] [stdout]     else
[INFO] [stdout]         cur="${COMP_WORDS[COMP_CWORD]}"
[INFO] [stdout]     fi
[INFO] [stdout]     prev="$3"
[INFO] [stdout]     cmd=""
[INFO] [stdout]     opts=""
[INFO] [stdout] 
[INFO] [stdout]     for i in "${COMP_WORDS[@]:0:COMP_CWORD}"
[INFO] [stdout]     do
[INFO] [stdout]         case "${cmd},${i}" in
[INFO] [stdout]             ",$1")
[INFO] [stdout]                 cmd="this"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,add)
[INFO] [stdout]                 cmd="this__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,build)
[INFO] [stdout]                 cmd="this__build"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,completions)
[INFO] [stdout]                 cmd="this__completions"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,dev)
[INFO] [stdout]                 cmd="this__dev"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,doctor)
[INFO] [stdout]                 cmd="this__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,generate)
[INFO] [stdout]                 cmd="this__generate"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,help)
[INFO] [stdout]                 cmd="this__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,info)
[INFO] [stdout]                 cmd="this__info"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,init)
[INFO] [stdout]                 cmd="this__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this,mcp)
[INFO] [stdout]                 cmd="this__mcp"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,entity)
[INFO] [stdout]                 cmd="this__add__entity"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,event-flow)
[INFO] [stdout]                 cmd="this__add__event__flow"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,help)
[INFO] [stdout]                 cmd="this__add__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,link)
[INFO] [stdout]                 cmd="this__add__link"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,sink)
[INFO] [stdout]                 cmd="this__add__sink"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add,target)
[INFO] [stdout]                 cmd="this__add__target"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,entity)
[INFO] [stdout]                 cmd="this__add__help__entity"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,event-flow)
[INFO] [stdout]                 cmd="this__add__help__event__flow"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,help)
[INFO] [stdout]                 cmd="this__add__help__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,link)
[INFO] [stdout]                 cmd="this__add__help__link"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,sink)
[INFO] [stdout]                 cmd="this__add__help__sink"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__add__help,target)
[INFO] [stdout]                 cmd="this__add__help__target"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__generate,client)
[INFO] [stdout]                 cmd="this__generate__client"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__generate,help)
[INFO] [stdout]                 cmd="this__generate__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__generate__help,client)
[INFO] [stdout]                 cmd="this__generate__help__client"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__generate__help,help)
[INFO] [stdout]                 cmd="this__generate__help__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,add)
[INFO] [stdout]                 cmd="this__help__add"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,build)
[INFO] [stdout]                 cmd="this__help__build"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,completions)
[INFO] [stdout]                 cmd="this__help__completions"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,dev)
[INFO] [stdout]                 cmd="this__help__dev"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,doctor)
[INFO] [stdout]                 cmd="this__help__doctor"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,generate)
[INFO] [stdout]                 cmd="this__help__generate"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,help)
[INFO] [stdout]                 cmd="this__help__help"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,info)
[INFO] [stdout]                 cmd="this__help__info"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,init)
[INFO] [stdout]                 cmd="this__help__init"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help,mcp)
[INFO] [stdout]                 cmd="this__help__mcp"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__add,entity)
[INFO] [stdout]                 cmd="this__help__add__entity"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__add,event-flow)
[INFO] [stdout]                 cmd="this__help__add__event__flow"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__add,link)
[INFO] [stdout]                 cmd="this__help__add__link"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__add,sink)
[INFO] [stdout]                 cmd="this__help__add__sink"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__add,target)
[INFO] [stdout]                 cmd="this__help__add__target"
[INFO] [stdout]                 ;;
[INFO] [stdout]             this__help__generate,client)
[INFO] [stdout]                 cmd="this__help__generate__client"
[INFO] [stdout]                 ;;
[INFO] [stdout]             *)
[INFO] [stdout]                 ;;
[INFO] [stdout]         esac
[INFO] [stdout]     done
[INFO] [stdout] 
[INFO] [stdout]     case "${cmd}" in
[INFO] [stdout]         this)
[INFO] [stdout]             opts="-h -V --dry-run --help --version init add info build dev generate doctor completions mcp help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add)
[INFO] [stdout]             opts="-h -V --dry-run --help --version entity link target event-flow sink help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__entity)
[INFO] [stdout]             opts="-h -V --fields --validated --indexed --backend --dry-run --help --version <NAME>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --fields)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --indexed)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --backend)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__event__flow)
[INFO] [stdout]             opts="-h -V --trigger --sink --dry-run --help --version <NAME>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --trigger)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --sink)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help)
[INFO] [stdout]             opts="entity link target event-flow sink help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__entity)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__event__flow)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__link)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__sink)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__help__target)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__link)
[INFO] [stdout]             opts="-h -V --link-type --forward --reverse --description --no-validation-rule --dry-run --help --version <SOURCE> <TARGET>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --link-type)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --forward)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --reverse)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --description)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__sink)
[INFO] [stdout]             opts="-h -V --sink-type --url --dry-run --help --version <NAME>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --sink-type)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --url)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__add__target)
[INFO] [stdout]             opts="-h -V --framework --name --dry-run --help --version webapp website desktop ios android"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --framework)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --name)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__build)
[INFO] [stdout]             opts="-h -V --embed --api-only --front-only --docker --release --target --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --target)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__completions)
[INFO] [stdout]             opts="-h -V --dry-run --help --version bash elvish fish powershell zsh"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__dev)
[INFO] [stdout]             opts="-h -V --api-only --no-watch --port --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --port)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__doctor)
[INFO] [stdout]             opts="-h -V --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__generate)
[INFO] [stdout]             opts="-h -V --dry-run --help --version client help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__generate__client)
[INFO] [stdout]             opts="-h -V --lang --output --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --lang)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --output)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__generate__help)
[INFO] [stdout]             opts="client help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__generate__help__client)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__generate__help__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help)
[INFO] [stdout]             opts="init add info build dev generate doctor completions mcp help"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add)
[INFO] [stdout]             opts="entity link target event-flow sink"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add__entity)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add__event__flow)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add__link)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add__sink)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__add__target)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__build)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__completions)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__dev)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__doctor)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__generate)
[INFO] [stdout]             opts="client"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__generate__client)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__help)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__info)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__init)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__help__mcp)
[INFO] [stdout]             opts=""
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__info)
[INFO] [stdout]             opts="-h -V --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__init)
[INFO] [stdout]             opts="-h -V --path --no-git --port --this-path --workspace --websocket --grpc --events --dry-run --help --version <NAME>"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 --path)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --port)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 --this-path)
[INFO] [stdout]                     COMPREPLY=($(compgen -f "${cur}"))
[INFO] [stdout]                     return 0
[INFO] [stdout]                     ;;
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]         this__mcp)
[INFO] [stdout]             opts="-h -V --dry-run --help --version"
[INFO] [stdout]             if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
[INFO] [stdout]                 COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]                 return 0
[INFO] [stdout]             fi
[INFO] [stdout]             case "${prev}" in
[INFO] [stdout]                 *)
[INFO] [stdout]                     COMPREPLY=()
[INFO] [stdout]                     ;;
[INFO] [stdout]             esac
[INFO] [stdout]             COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
[INFO] [stdout]             return 0
[INFO] [stdout]             ;;
[INFO] [stdout]     esac
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] if [[ "${BASH_VERSINFO[0]}" -eq 4 && "${BASH_VERSINFO[1]}" -ge 4 || "${BASH_VERSINFO[0]}" -gt 4 ]]; then
[INFO] [stdout]     complete -F _this -o nosort -o bashdefault -o default this
[INFO] [stdout] else
[INFO] [stdout]     complete -F _this -o bashdefault -o default this
[INFO] [stdout] fi
[INFO] [stdout] test commands::completions::tests::test_completions_bash ... ok
[INFO] [stdout] # Print an optspec for argparse to handle cmd's options that are independent of any subcommand.
[INFO] [stdout] function __fish_this_global_optspecs
[INFO] [stdout] 	string join \n dry-run h/help V/version
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] function __fish_this_needs_command
[INFO] [stdout] 	# Figure out if the current invocation already has a command.
[INFO] [stdout] 	set -l cmd (commandline -opc)
[INFO] [stdout] 	set -e cmd[1]
[INFO] [stdout] 	argparse -s (__fish_this_global_optspecs) -- $cmd 2>/dev/null
[INFO] [stdout] 	or return
[INFO] [stdout] 	if set -q argv[1]
[INFO] [stdout] 		# Also print the command, so this can be used to figure out what it is.
[INFO] [stdout] 		echo $argv[1]
[INFO] [stdout] 		return 1
[INFO] [stdout] 	end
[INFO] [stdout] 	return 0
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] function __fish_this_using_subcommand
[INFO] [stdout] 	set -l cmd (__fish_this_needs_command)
[INFO] [stdout] 	test -z "$cmd"
[INFO] [stdout] 	and return 1
[INFO] [stdout] 	contains -- $cmd[1] $argv
[INFO] [stdout] end
[INFO] [stdout] 
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "init" -d 'Create a new this-rs project'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "add" -d 'Add components to an existing this-rs project'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "info" -d 'Show project information and status'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "build" -d 'Build the project (API, frontend, or embedded single binary)'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "dev" -d 'Start development servers (API + frontend in parallel)'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "generate" -d 'Generate code from project introspection (TypeScript API client, etc.)'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "doctor" -d 'Check project health and consistency'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "completions" -d 'Generate shell completions'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "mcp" -d 'Start MCP server on stdio for AI agent integration'
[INFO] [stdout] complete -c this -n "__fish_this_needs_command" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l path -d 'Parent directory (default: current directory)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l port -d 'Default server port' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l this-path -d 'Path to this-rs crate for local development (uses path dependency instead of crates.io)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l no-git -d 'Do not initialize a git repository'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l workspace -d 'Create a workspace layout with this.yaml and api/ subdirectory'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l websocket -d 'Enable WebSocket support (adds websocket feature and WebSocketExposure in main.rs)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l grpc -d 'Enable gRPC support (adds grpc feature and GrpcExposure in main.rs)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l events -d 'Enable event system (EventBus, NotificationStore, SSE streaming, event flows)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand init" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "entity" -d 'Add a new entity to the project'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "link" -d 'Add a link between two entity types'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "target" -d 'Add a deployment target to the workspace (webapp, desktop, mobile)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "event-flow" -d 'Add an event flow pipeline to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "sink" -d 'Add an event sink (delivery target) to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and not __fish_seen_subcommand_from entity link target event-flow sink help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -l fields -d 'Entity fields as "field:Type" pairs, comma-separated Example: --fields "sku:String,price:f64,description:Option<String>"' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -l indexed -d 'Fields to index, comma-separated (default: "name")' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -l backend -d 'Storage backend for the entity store - in-memory: uses InMemoryDataService (default, no external deps) - postgres: uses PostgresDataService (requires --features postgres + PgPool)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -l validated -d 'Use impl_data_entity_validated! with basic validators'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from entity" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l link-type -d 'Custom link type (default: has_<target>)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l forward -d 'Forward route name (default: pluralized target)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l reverse -d 'Reverse route name (default: source)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l description -d 'Link description' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l no-validation-rule -d 'Do not add a validation rule'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from link" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from target" -l framework -d 'Frontend framework (for webapp targets)' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from target" -l name -d 'Custom name for the target directory' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from target" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from target" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from target" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from event-flow" -l trigger -d 'Trigger pattern (e.g. "entity.created.*", "entity.updated.order")' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from event-flow" -l sink -d 'Delivery sink name to use in the final deliver step' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from event-flow" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from event-flow" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from event-flow" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from sink" -l sink-type -d 'Sink type: in_app, webhook, push, websocket, counter' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from sink" -l url -d 'URL for webhook sinks' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from sink" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from sink" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from sink" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "entity" -d 'Add a new entity to the project'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "link" -d 'Add a link between two entity types'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "target" -d 'Add a deployment target to the workspace (webapp, desktop, mobile)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "event-flow" -d 'Add an event flow pipeline to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "sink" -d 'Add an event sink (delivery target) to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand add; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand info" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand info" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand info" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l target -d 'Build a specific native target (desktop, ios, android, or "all")' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l embed -d 'Build a single binary with frontend embedded (npm build → copy dist → cargo build --features embedded-frontend)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l api-only -d 'Only build the API (cargo build)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l front-only -d 'Only build the frontend (npm run build)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l docker -d 'Generate an optimized multi-stage Dockerfile'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l release -d 'Build in release mode'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand build" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -l port -d 'Override the API port from this.yaml' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -l api-only -d 'Only start the API server (skip frontend dev server)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -l no-watch -d 'Disable auto-detection of cargo-watch, force plain cargo run'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand dev" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and not __fish_seen_subcommand_from client help" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and not __fish_seen_subcommand_from client help" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and not __fish_seen_subcommand_from client help" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and not __fish_seen_subcommand_from client help" -f -a "client" -d 'Generate a typed API client from project entities'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and not __fish_seen_subcommand_from client help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from client" -l lang -d 'Target language for the generated client' -r
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from client" -l output -d 'Output file path (default: auto-detected from this.yaml webapp target)' -r -F
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from client" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from client" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from client" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from help" -f -a "client" -d 'Generate a typed API client from project entities'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand generate; and __fish_seen_subcommand_from help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand doctor" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand doctor" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand doctor" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand completions" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand completions" -s h -l help -d 'Print help (see more with \'--help\')'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand completions" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand mcp" -l dry-run -d 'Simulate operations without writing any files'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand mcp" -s h -l help -d 'Print help'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand mcp" -s V -l version -d 'Print version'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "init" -d 'Create a new this-rs project'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "add" -d 'Add components to an existing this-rs project'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "info" -d 'Show project information and status'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "build" -d 'Build the project (API, frontend, or embedded single binary)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "dev" -d 'Start development servers (API + frontend in parallel)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "generate" -d 'Generate code from project introspection (TypeScript API client, etc.)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "doctor" -d 'Check project health and consistency'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "completions" -d 'Generate shell completions'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "mcp" -d 'Start MCP server on stdio for AI agent integration'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and not __fish_seen_subcommand_from init add info build dev generate doctor completions mcp help" -f -a "help" -d 'Print this message or the help of the given subcommand(s)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from add" -f -a "entity" -d 'Add a new entity to the project'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from add" -f -a "link" -d 'Add a link between two entity types'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from add" -f -a "target" -d 'Add a deployment target to the workspace (webapp, desktop, mobile)'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from add" -f -a "event-flow" -d 'Add an event flow pipeline to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from add" -f -a "sink" -d 'Add an event sink (delivery target) to config/events.yaml'
[INFO] [stdout] complete -c this -n "__fish_this_using_subcommand help; and __fish_seen_subcommand_from generate" -f -a "client" -d 'Generate a typed API client from project entities'
[INFO] [stdout] test commands::completions::tests::test_completions_fish ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_ios_duplicate_error ... ok
[INFO] [stdout] #compdef this
[INFO] [stdout] 
[INFO] [stdout] autoload -U is-at-least
[INFO] [stdout] 
[INFO] [stdout] _this() {
[INFO] [stdout]     typeset -A opt_args
[INFO] [stdout]     typeset -a _arguments_options
[INFO] [stdout]     local ret=1
[INFO] [stdout] 
[INFO] [stdout]     if is-at-least 5.2; then
[INFO] [stdout]         _arguments_options=(-s -S -C)
[INFO] [stdout]     else
[INFO] [stdout]         _arguments_options=(-s -C)
[INFO] [stdout]     fi
[INFO] [stdout] 
[INFO] [stdout]     local context curcontext="$curcontext" state line
[INFO] [stdout]     _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_this_commands" \
[INFO] [stdout] "*::: :->this" \
[INFO] [stdout] && ret=0
[INFO] [stdout]     case $state in
[INFO] [stdout]     (this)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (init)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--path=[Parent directory (default\: current directory)]:PATH:_default' \
[INFO] [stdout] '--port=[Default server port]:PORT:_default' \
[INFO] [stdout] '--this-path=[Path to this-rs crate for local development (uses path dependency instead of crates.io)]:THIS_PATH:_default' \
[INFO] [stdout] '--no-git[Do not initialize a git repository]' \
[INFO] [stdout] '--workspace[Create a workspace layout with this.yaml and api/ subdirectory]' \
[INFO] [stdout] '--websocket[Enable WebSocket support (adds websocket feature and WebSocketExposure in main.rs)]' \
[INFO] [stdout] '--grpc[Enable gRPC support (adds grpc feature and GrpcExposure in main.rs)]' \
[INFO] [stdout] '--events[Enable event system (EventBus, NotificationStore, SSE streaming, event flows)]' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Name of the project to create:_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (add)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_this__add_commands" \
[INFO] [stdout] "*::: :->add" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (add)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-add-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (entity)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--fields=[Entity fields as "field\:Type" pairs, comma-separated Example\: --fields "sku\:String,price\:f64,description\:Option<String>"]:FIELDS:_default' \
[INFO] [stdout] '--indexed=[Fields to index, comma-separated (default\: "name")]:INDEXED:_default' \
[INFO] [stdout] '--backend=[Storage backend for the entity store - in-memory\: uses InMemoryDataService (default, no external deps) - postgres\: uses PostgresDataService (requires --features postgres + PgPool)]:BACKEND:_default' \
[INFO] [stdout] '--validated[Use impl_data_entity_validated! with basic validators]' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Entity name (singular, snake_case, e.g. "product"):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (link)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--link-type=[Custom link type (default\: has_<target>)]:LINK_TYPE:_default' \
[INFO] [stdout] '--forward=[Forward route name (default\: pluralized target)]:FORWARD:_default' \
[INFO] [stdout] '--reverse=[Reverse route name (default\: source)]:REVERSE:_default' \
[INFO] [stdout] '--description=[Link description]:DESCRIPTION:_default' \
[INFO] [stdout] '--no-validation-rule[Do not add a validation rule]' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':source -- Source entity type (e.g. "order"):_default' \
[INFO] [stdout] ':target -- Target entity type (e.g. "invoice"):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (target)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--framework=[Frontend framework (for webapp targets)]:FRAMEWORK:_default' \
[INFO] [stdout] '--name=[Custom name for the target directory]:NAME:_default' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':target_type -- Target type to add:(webapp website desktop ios android)' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (event-flow)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--trigger=[Trigger pattern (e.g. "entity.created.*", "entity.updated.order")]:TRIGGER:_default' \
[INFO] [stdout] '--sink=[Delivery sink name to use in the final deliver step]:SINK:_default' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Event flow name (e.g. "notify-on-create"):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (sink)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--sink-type=[Sink type\: in_app, webhook, push, websocket, counter]:TYPE:_default' \
[INFO] [stdout] '--url=[URL for webhook sinks]:URL:_default' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':name -- Sink name (e.g. "my-webhook"):_default' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_this__add__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-add-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (entity)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (link)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (target)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (event-flow)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (sink)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (info)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (build)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--target=[Build a specific native target (desktop, ios, android, or "all")]:TARGET:_default' \
[INFO] [stdout] '--embed[Build a single binary with frontend embedded (npm build → copy dist → cargo build --features embedded-frontend)]' \
[INFO] [stdout] '--api-only[Only build the API (cargo build)]' \
[INFO] [stdout] '--front-only[Only build the frontend (npm run build)]' \
[INFO] [stdout] '--docker[Generate an optimized multi-stage Dockerfile]' \
[INFO] [stdout] '--release[Build in release mode]' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (dev)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--port=[Override the API port from this.yaml]:PORT:_default' \
[INFO] [stdout] '--api-only[Only start the API server (skip frontend dev server)]' \
[INFO] [stdout] '--no-watch[Disable auto-detection of cargo-watch, force plain cargo run]' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (generate)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ":: :_this__generate_commands" \
[INFO] [stdout] "*::: :->generate" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (generate)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-generate-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (client)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--lang=[Target language for the generated client]:LANG:_default' \
[INFO] [stdout] '--output=[Output file path (default\: auto-detected from this.yaml webapp target)]:OUTPUT:_files' \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_this__generate__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-generate-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (client)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (doctor)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (completions)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '--help[Print help (see more with '\''--help'\'')]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] ':shell -- Shell to generate completions for:(bash elvish fish powershell zsh)' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (mcp)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] '--dry-run[Simulate operations without writing any files]' \
[INFO] [stdout] '-h[Print help]' \
[INFO] [stdout] '--help[Print help]' \
[INFO] [stdout] '-V[Print version]' \
[INFO] [stdout] '--version[Print version]' \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_this__help_commands" \
[INFO] [stdout] "*::: :->help" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (help)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-help-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (init)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (add)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_this__help__add_commands" \
[INFO] [stdout] "*::: :->add" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (add)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-help-add-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (entity)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (link)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (target)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (event-flow)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (sink)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (info)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (build)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (dev)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (generate)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] ":: :_this__help__generate_commands" \
[INFO] [stdout] "*::: :->generate" \
[INFO] [stdout] && ret=0
[INFO] [stdout] 
[INFO] [stdout]     case $state in
[INFO] [stdout]     (generate)
[INFO] [stdout]         words=($line[1] "${words[@]}")
[INFO] [stdout]         (( CURRENT += 1 ))
[INFO] [stdout]         curcontext="${curcontext%:*:*}:this-help-generate-command-$line[1]:"
[INFO] [stdout]         case $line[1] in
[INFO] [stdout]             (client)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout] (doctor)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (completions)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (mcp)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout] (help)
[INFO] [stdout] _arguments "${_arguments_options[@]}" : \
[INFO] [stdout] && ret=0
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] ;;
[INFO] [stdout]         esac
[INFO] [stdout]     ;;
[INFO] [stdout] esac
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] (( $+functions[_this_commands] )) ||
[INFO] [stdout] _this_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'init:Create a new this-rs project' \
[INFO] [stdout] 'add:Add components to an existing this-rs project' \
[INFO] [stdout] 'info:Show project information and status' \
[INFO] [stdout] 'build:Build the project (API, frontend, or embedded single binary)' \
[INFO] [stdout] 'dev:Start development servers (API + frontend in parallel)' \
[INFO] [stdout] 'generate:Generate code from project introspection (TypeScript API client, etc.)' \
[INFO] [stdout] 'doctor:Check project health and consistency' \
[INFO] [stdout] 'completions:Generate shell completions' \
[INFO] [stdout] 'mcp:Start MCP server on stdio for AI agent integration' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add_commands] )) ||
[INFO] [stdout] _this__add_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'entity:Add a new entity to the project' \
[INFO] [stdout] 'link:Add a link between two entity types' \
[INFO] [stdout] 'target:Add a deployment target to the workspace (webapp, desktop, mobile)' \
[INFO] [stdout] 'event-flow:Add an event flow pipeline to config/events.yaml' \
[INFO] [stdout] 'sink:Add an event sink (delivery target) to config/events.yaml' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this add commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__entity_commands] )) ||
[INFO] [stdout] _this__add__entity_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add entity commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__event-flow_commands] )) ||
[INFO] [stdout] _this__add__event-flow_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add event-flow commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help_commands] )) ||
[INFO] [stdout] _this__add__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'entity:Add a new entity to the project' \
[INFO] [stdout] 'link:Add a link between two entity types' \
[INFO] [stdout] 'target:Add a deployment target to the workspace (webapp, desktop, mobile)' \
[INFO] [stdout] 'event-flow:Add an event flow pipeline to config/events.yaml' \
[INFO] [stdout] 'sink:Add an event sink (delivery target) to config/events.yaml' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this add help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__entity_commands] )) ||
[INFO] [stdout] _this__add__help__entity_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help entity commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__event-flow_commands] )) ||
[INFO] [stdout] _this__add__help__event-flow_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help event-flow commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__help_commands] )) ||
[INFO] [stdout] _this__add__help__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__link_commands] )) ||
[INFO] [stdout] _this__add__help__link_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help link commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__sink_commands] )) ||
[INFO] [stdout] _this__add__help__sink_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help sink commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__help__target_commands] )) ||
[INFO] [stdout] _this__add__help__target_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add help target commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__link_commands] )) ||
[INFO] [stdout] _this__add__link_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add link commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__sink_commands] )) ||
[INFO] [stdout] _this__add__sink_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add sink commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__add__target_commands] )) ||
[INFO] [stdout] _this__add__target_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this add target commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__build_commands] )) ||
[INFO] [stdout] _this__build_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this build commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__completions_commands] )) ||
[INFO] [stdout] _this__completions_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this completions commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__dev_commands] )) ||
[INFO] [stdout] _this__dev_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this dev commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__doctor_commands] )) ||
[INFO] [stdout] _this__doctor_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this doctor commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__generate_commands] )) ||
[INFO] [stdout] _this__generate_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'client:Generate a typed API client from project entities' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this generate commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__generate__client_commands] )) ||
[INFO] [stdout] _this__generate__client_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this generate client commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__generate__help_commands] )) ||
[INFO] [stdout] _this__generate__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'client:Generate a typed API client from project entities' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this generate help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__generate__help__client_commands] )) ||
[INFO] [stdout] _this__generate__help__client_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this generate help client commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__generate__help__help_commands] )) ||
[INFO] [stdout] _this__generate__help__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this generate help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help_commands] )) ||
[INFO] [stdout] _this__help_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'init:Create a new this-rs project' \
[INFO] [stdout] 'add:Add components to an existing this-rs project' \
[INFO] [stdout] 'info:Show project information and status' \
[INFO] [stdout] 'build:Build the project (API, frontend, or embedded single binary)' \
[INFO] [stdout] 'dev:Start development servers (API + frontend in parallel)' \
[INFO] [stdout] 'generate:Generate code from project introspection (TypeScript API client, etc.)' \
[INFO] [stdout] 'doctor:Check project health and consistency' \
[INFO] [stdout] 'completions:Generate shell completions' \
[INFO] [stdout] 'mcp:Start MCP server on stdio for AI agent integration' \
[INFO] [stdout] 'help:Print this message or the help of the given subcommand(s)' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add_commands] )) ||
[INFO] [stdout] _this__help__add_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'entity:Add a new entity to the project' \
[INFO] [stdout] 'link:Add a link between two entity types' \
[INFO] [stdout] 'target:Add a deployment target to the workspace (webapp, desktop, mobile)' \
[INFO] [stdout] 'event-flow:Add an event flow pipeline to config/events.yaml' \
[INFO] [stdout] 'sink:Add an event sink (delivery target) to config/events.yaml' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this help add commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add__entity_commands] )) ||
[INFO] [stdout] _this__help__add__entity_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help add entity commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add__event-flow_commands] )) ||
[INFO] [stdout] _this__help__add__event-flow_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help add event-flow commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add__link_commands] )) ||
[INFO] [stdout] _this__help__add__link_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help add link commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add__sink_commands] )) ||
[INFO] [stdout] _this__help__add__sink_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help add sink commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__add__target_commands] )) ||
[INFO] [stdout] _this__help__add__target_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help add target commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__build_commands] )) ||
[INFO] [stdout] _this__help__build_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help build commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__completions_commands] )) ||
[INFO] [stdout] _this__help__completions_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help completions commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__dev_commands] )) ||
[INFO] [stdout] _this__help__dev_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help dev commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__doctor_commands] )) ||
[INFO] [stdout] _this__help__doctor_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help doctor commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__generate_commands] )) ||
[INFO] [stdout] _this__help__generate_commands() {
[INFO] [stdout]     local commands; commands=(
[INFO] [stdout] 'client:Generate a typed API client from project entities' \
[INFO] [stdout]     )
[INFO] [stdout]     _describe -t commands 'this help generate commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__generate__client_commands] )) ||
[INFO] [stdout] _this__help__generate__client_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help generate client commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__help_commands] )) ||
[INFO] [stdout] _this__help__help_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help help commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__info_commands] )) ||
[INFO] [stdout] _this__help__info_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help info commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__init_commands] )) ||
[INFO] [stdout] _this__help__init_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help init commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__help__mcp_commands] )) ||
[INFO] [stdout] _this__help__mcp_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this help mcp commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__info_commands] )) ||
[INFO] [stdout] _this__info_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this info commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__init_commands] )) ||
[INFO] [stdout] _this__init_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this init commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] (( $+functions[_this__mcp_commands] )) ||
[INFO] [stdout] _this__mcp_commands() {
[INFO] [stdout]     local commands; commands=()
[INFO] [stdout]     _describe -t commands 'this mcp commands' commands "$@"
[INFO] [stdout] }
[INFO] [stdout] 
[INFO] [stdout] if [ "$funcstack[1]" = "_this" ]; then
[INFO] [stdout]     _this "$@"
[INFO] [stdout] else
[INFO] [stdout]     compdef _this this
[INFO] [stdout] fi
[INFO] [stdout] test commands::completions::tests::test_completions_zsh ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_bacon ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_bacon_args ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_dockerfile_uses_correct_port ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_cargo_watch ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_cargo_watch_sets_current_dir ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_cargo_watch_sets_port_env ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_different_ports ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_no_watcher ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_no_watcher_sets_current_dir ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_no_watcher_sets_port_env ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_watchexec ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_watchexec_args ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_watchexec_sets_port_env ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_all_features ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_entity_pluralization ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_graphql_only_with_entity ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_grpc_only ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_ios_creates_files ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_no_entities_graphql_grpc_ws ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_no_entities_fallback ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_no_entities_no_features ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_order_is_rest_gql_grpc_ws ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_rest_always_first ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_rest_only ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_uses_correct_port ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_uses_first_entity_only ... ok
[INFO] [stdout] test commands::dev::tests::test_build_usage_examples_websocket_only ... ok
[INFO] [stdout] test commands::dev::tests::test_color_clone_copy ... ok
[INFO] [stdout] test commands::dev::tests::test_detect_rust_watcher_label_not_empty ... ok
[INFO] [stdout] test commands::dev::tests::test_detect_rust_watcher_returns_variant ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_desktop_updates_this_yaml ... ok
[INFO] [stdout] test commands::dev::tests::test_print_banner_all_watchers ... ok
[INFO] [stdout] test commands::dev::tests::test_print_banner_api_only_ignores_webapp ... ok
[INFO] [stdout] test commands::dev::tests::test_detect_rust_watcher_result_is_valid_variant ... ok
[INFO] [stdout] test commands::dev::tests::test_print_banner_with_watcher_and_webapp ... ok
[INFO] [stdout] test commands::dev::tests::test_build_api_command_bacon_sets_port_env ... ok
[INFO] [stdout] test commands::dev::tests::test_rust_watcher_labels ... ok
[INFO] [stdout] test commands::dev::tests::test_print_banner_no_watcher_no_webapp ... ok
[INFO] [stdout] test commands::dev::tests::test_rust_watcher_partial_eq ... ok
[INFO] [stdout] test commands::dev::tests::test_stream_prefixed_empty_input ... ok
[INFO] [stdout] test commands::dev::tests::test_stream_prefixed_reads_all_lines ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_missing_file ... ok
[INFO] [stdout] test commands::dev::tests::test_rust_watcher_debug ... ok
[INFO] [stdout] test commands::dev::tests::test_stream_prefixed_stops_on_flag ... ok
[INFO] [stdout] 
[INFO] [stdout] using namespace System.Management.Automation
[INFO] [stdout] using namespace System.Management.Automation.Language
[INFO] [stdout] 
[INFO] [stdout] Register-ArgumentCompleter -Native -CommandName 'this' -ScriptBlock {
[INFO] [stdout]     param($wordToComplete, $commandAst, $cursorPosition)
[INFO] [stdout] 
[INFO] [stdout]     $commandElements = $commandAst.CommandElements
[INFO] [stdout]     $command = @(
[INFO] [stdout]         'this'
[INFO] [stdout]         for ($i = 1; $i -lt $commandElements.Count; $i++) {
[INFO] [stdout]             $element = $commandElements[$i]
[INFO] [stdout]             if ($element -isnot [StringConstantExpressionAst] -or
[INFO] [stdout]                 $element.StringConstantType -ne [StringConstantType]::BareWord -or
[INFO] [stdout]                 $element.Value.StartsWith('-') -or
[INFO] [stdout]                 $element.Value -eq $wordToComplete) {
[INFO] [stdout]                 break
[INFO] [stdout]         }
[INFO] [stdout]         $element.Value
[INFO] [stdout]     }) -join ';'
[INFO] [stdout] 
[INFO] [stdout]     $completions = @(switch ($command) {
[INFO] [stdout]         'this' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Create a new this-rs project')
[INFO] [stdout]             [CompletionResult]::new('add', 'add', [CompletionResultType]::ParameterValue, 'Add components to an existing this-rs project')
[INFO] [stdout]             [CompletionResult]::new('info', 'info', [CompletionResultType]::ParameterValue, 'Show project information and status')
[INFO] [stdout]             [CompletionResult]::new('build', 'build', [CompletionResultType]::ParameterValue, 'Build the project (API, frontend, or embedded single binary)')
[INFO] [stdout]             [CompletionResult]::new('dev', 'dev', [CompletionResultType]::ParameterValue, 'Start development servers (API + frontend in parallel)')
[INFO] [stdout]             [CompletionResult]::new('generate', 'generate', [CompletionResultType]::ParameterValue, 'Generate code from project introspection (TypeScript API client, etc.)')
[INFO] [stdout]             [CompletionResult]::new('doctor', 'doctor', [CompletionResultType]::ParameterValue, 'Check project health and consistency')
[INFO] [stdout]             [CompletionResult]::new('completions', 'completions', [CompletionResultType]::ParameterValue, 'Generate shell completions')
[INFO] [stdout]             [CompletionResult]::new('mcp', 'mcp', [CompletionResultType]::ParameterValue, 'Start MCP server on stdio for AI agent integration')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;init' {
[INFO] [stdout]             [CompletionResult]::new('--path', '--path', [CompletionResultType]::ParameterName, 'Parent directory (default: current directory)')
[INFO] [stdout]             [CompletionResult]::new('--port', '--port', [CompletionResultType]::ParameterName, 'Default server port')
[INFO] [stdout]             [CompletionResult]::new('--this-path', '--this-path', [CompletionResultType]::ParameterName, 'Path to this-rs crate for local development (uses path dependency instead of crates.io)')
[INFO] [stdout]             [CompletionResult]::new('--no-git', '--no-git', [CompletionResultType]::ParameterName, 'Do not initialize a git repository')
[INFO] [stdout]             [CompletionResult]::new('--workspace', '--workspace', [CompletionResultType]::ParameterName, 'Create a workspace layout with this.yaml and api/ subdirectory')
[INFO] [stdout]             [CompletionResult]::new('--websocket', '--websocket', [CompletionResultType]::ParameterName, 'Enable WebSocket support (adds websocket feature and WebSocketExposure in main.rs)')
[INFO] [stdout]             [CompletionResult]::new('--grpc', '--grpc', [CompletionResultType]::ParameterName, 'Enable gRPC support (adds grpc feature and GrpcExposure in main.rs)')
[INFO] [stdout]             [CompletionResult]::new('--events', '--events', [CompletionResultType]::ParameterName, 'Enable event system (EventBus, NotificationStore, SSE streaming, event flows)')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('entity', 'entity', [CompletionResultType]::ParameterValue, 'Add a new entity to the project')
[INFO] [stdout]             [CompletionResult]::new('link', 'link', [CompletionResultType]::ParameterValue, 'Add a link between two entity types')
[INFO] [stdout]             [CompletionResult]::new('target', 'target', [CompletionResultType]::ParameterValue, 'Add a deployment target to the workspace (webapp, desktop, mobile)')
[INFO] [stdout]             [CompletionResult]::new('event-flow', 'event-flow', [CompletionResultType]::ParameterValue, 'Add an event flow pipeline to config/events.yaml')
[INFO] [stdout]             [CompletionResult]::new('sink', 'sink', [CompletionResultType]::ParameterValue, 'Add an event sink (delivery target) to config/events.yaml')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;entity' {
[INFO] [stdout]             [CompletionResult]::new('--fields', '--fields', [CompletionResultType]::ParameterName, 'Entity fields as "field:Type" pairs, comma-separated Example: --fields "sku:String,price:f64,description:Option<String>"')
[INFO] [stdout]             [CompletionResult]::new('--indexed', '--indexed', [CompletionResultType]::ParameterName, 'Fields to index, comma-separated (default: "name")')
[INFO] [stdout]             [CompletionResult]::new('--backend', '--backend', [CompletionResultType]::ParameterName, 'Storage backend for the entity store - in-memory: uses InMemoryDataService (default, no external deps) - postgres: uses PostgresDataService (requires --features postgres + PgPool)')
[INFO] [stdout]             [CompletionResult]::new('--validated', '--validated', [CompletionResultType]::ParameterName, 'Use impl_data_entity_validated! with basic validators')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;link' {
[INFO] [stdout]             [CompletionResult]::new('--link-type', '--link-type', [CompletionResultType]::ParameterName, 'Custom link type (default: has_<target>)')
[INFO] [stdout]             [CompletionResult]::new('--forward', '--forward', [CompletionResultType]::ParameterName, 'Forward route name (default: pluralized target)')
[INFO] [stdout]             [CompletionResult]::new('--reverse', '--reverse', [CompletionResultType]::ParameterName, 'Reverse route name (default: source)')
[INFO] [stdout]             [CompletionResult]::new('--description', '--description', [CompletionResultType]::ParameterName, 'Link description')
[INFO] [stdout]             [CompletionResult]::new('--no-validation-rule', '--no-validation-rule', [CompletionResultType]::ParameterName, 'Do not add a validation rule')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;target' {
[INFO] [stdout]             [CompletionResult]::new('--framework', '--framework', [CompletionResultType]::ParameterName, 'Frontend framework (for webapp targets)')
[INFO] [stdout]             [CompletionResult]::new('--name', '--name', [CompletionResultType]::ParameterName, 'Custom name for the target directory')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;event-flow' {
[INFO] [stdout]             [CompletionResult]::new('--trigger', '--trigger', [CompletionResultType]::ParameterName, 'Trigger pattern (e.g. "entity.created.*", "entity.updated.order")')
[INFO] [stdout]             [CompletionResult]::new('--sink', '--sink', [CompletionResultType]::ParameterName, 'Delivery sink name to use in the final deliver step')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;sink' {
[INFO] [stdout]             [CompletionResult]::new('--sink-type', '--sink-type', [CompletionResultType]::ParameterName, 'Sink type: in_app, webhook, push, websocket, counter')
[INFO] [stdout]             [CompletionResult]::new('--url', '--url', [CompletionResultType]::ParameterName, 'URL for webhook sinks')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help' {
[INFO] [stdout]             [CompletionResult]::new('entity', 'entity', [CompletionResultType]::ParameterValue, 'Add a new entity to the project')
[INFO] [stdout]             [CompletionResult]::new('link', 'link', [CompletionResultType]::ParameterValue, 'Add a link between two entity types')
[INFO] [stdout]             [CompletionResult]::new('target', 'target', [CompletionResultType]::ParameterValue, 'Add a deployment target to the workspace (webapp, desktop, mobile)')
[INFO] [stdout]             [CompletionResult]::new('event-flow', 'event-flow', [CompletionResultType]::ParameterValue, 'Add an event flow pipeline to config/events.yaml')
[INFO] [stdout]             [CompletionResult]::new('sink', 'sink', [CompletionResultType]::ParameterValue, 'Add an event sink (delivery target) to config/events.yaml')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;entity' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;link' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;target' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;event-flow' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;sink' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;add;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;info' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;build' {
[INFO] [stdout]             [CompletionResult]::new('--target', '--target', [CompletionResultType]::ParameterName, 'Build a specific native target (desktop, ios, android, or "all")')
[INFO] [stdout]             [CompletionResult]::new('--embed', '--embed', [CompletionResultType]::ParameterName, 'Build a single binary with frontend embedded (npm build → copy dist → cargo build --features embedded-frontend)')
[INFO] [stdout]             [CompletionResult]::new('--api-only', '--api-only', [CompletionResultType]::ParameterName, 'Only build the API (cargo build)')
[INFO] [stdout]             [CompletionResult]::new('--front-only', '--front-only', [CompletionResultType]::ParameterName, 'Only build the frontend (npm run build)')
[INFO] [stdout]             [CompletionResult]::new('--docker', '--docker', [CompletionResultType]::ParameterName, 'Generate an optimized multi-stage Dockerfile')
[INFO] [stdout]             [CompletionResult]::new('--release', '--release', [CompletionResultType]::ParameterName, 'Build in release mode')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;dev' {
[INFO] [stdout]             [CompletionResult]::new('--port', '--port', [CompletionResultType]::ParameterName, 'Override the API port from this.yaml')
[INFO] [stdout]             [CompletionResult]::new('--api-only', '--api-only', [CompletionResultType]::ParameterName, 'Only start the API server (skip frontend dev server)')
[INFO] [stdout]             [CompletionResult]::new('--no-watch', '--no-watch', [CompletionResultType]::ParameterName, 'Disable auto-detection of cargo-watch, force plain cargo run')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;generate' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('client', 'client', [CompletionResultType]::ParameterValue, 'Generate a typed API client from project entities')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;generate;client' {
[INFO] [stdout]             [CompletionResult]::new('--lang', '--lang', [CompletionResultType]::ParameterName, 'Target language for the generated client')
[INFO] [stdout]             [CompletionResult]::new('--output', '--output', [CompletionResultType]::ParameterName, 'Output file path (default: auto-detected from this.yaml webapp target)')
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;generate;help' {
[INFO] [stdout]             [CompletionResult]::new('client', 'client', [CompletionResultType]::ParameterValue, 'Generate a typed API client from project entities')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;generate;help;client' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;generate;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;doctor' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;completions' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help (see more with ''--help'')')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;mcp' {
[INFO] [stdout]             [CompletionResult]::new('--dry-run', '--dry-run', [CompletionResultType]::ParameterName, 'Simulate operations without writing any files')
[INFO] [stdout]             [CompletionResult]::new('-h', '-h', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('--help', '--help', [CompletionResultType]::ParameterName, 'Print help')
[INFO] [stdout]             [CompletionResult]::new('-V', '-V ', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             [CompletionResult]::new('--version', '--version', [CompletionResultType]::ParameterName, 'Print version')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help' {
[INFO] [stdout]             [CompletionResult]::new('init', 'init', [CompletionResultType]::ParameterValue, 'Create a new this-rs project')
[INFO] [stdout]             [CompletionResult]::new('add', 'add', [CompletionResultType]::ParameterValue, 'Add components to an existing this-rs project')
[INFO] [stdout]             [CompletionResult]::new('info', 'info', [CompletionResultType]::ParameterValue, 'Show project information and status')
[INFO] [stdout]             [CompletionResult]::new('build', 'build', [CompletionResultType]::ParameterValue, 'Build the project (API, frontend, or embedded single binary)')
[INFO] [stdout]             [CompletionResult]::new('dev', 'dev', [CompletionResultType]::ParameterValue, 'Start development servers (API + frontend in parallel)')
[INFO] [stdout]             [CompletionResult]::new('generate', 'generate', [CompletionResultType]::ParameterValue, 'Generate code from project introspection (TypeScript API client, etc.)')
[INFO] [stdout]             [CompletionResult]::new('doctor', 'doctor', [CompletionResultType]::ParameterValue, 'Check project health and consistency')
[INFO] [stdout]             [CompletionResult]::new('completions', 'completions', [CompletionResultType]::ParameterValue, 'Generate shell completions')
[INFO] [stdout]             [CompletionResult]::new('mcp', 'mcp', [CompletionResultType]::ParameterValue, 'Start MCP server on stdio for AI agent integration')
[INFO] [stdout]             [CompletionResult]::new('help', 'help', [CompletionResultType]::ParameterValue, 'Print this message or the help of the given subcommand(s)')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;init' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add' {
[INFO] [stdout]             [CompletionResult]::new('entity', 'entity', [CompletionResultType]::ParameterValue, 'Add a new entity to the project')
[INFO] [stdout]             [CompletionResult]::new('link', 'link', [CompletionResultType]::ParameterValue, 'Add a link between two entity types')
[INFO] [stdout]             [CompletionResult]::new('target', 'target', [CompletionResultType]::ParameterValue, 'Add a deployment target to the workspace (webapp, desktop, mobile)')
[INFO] [stdout]             [CompletionResult]::new('event-flow', 'event-flow', [CompletionResultType]::ParameterValue, 'Add an event flow pipeline to config/events.yaml')
[INFO] [stdout]             [CompletionResult]::new('sink', 'sink', [CompletionResultType]::ParameterValue, 'Add an event sink (delivery target) to config/events.yaml')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add;entity' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add;link' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add;target' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add;event-flow' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;add;sink' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;info' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;build' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;dev' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;generate' {
[INFO] [stdout]             [CompletionResult]::new('client', 'client', [CompletionResultType]::ParameterValue, 'Generate a typed API client from project entities')
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;generate;client' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;doctor' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;completions' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;mcp' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]         'this;help;help' {
[INFO] [stdout]             break
[INFO] [stdout]         }
[INFO] [stdout]     })
[INFO] [stdout] 
[INFO] [stdout]     $completions.Where{ $_.CompletionText -like "$wordToComplete*" } |
[INFO] [stdout]         Sort-Object -Property ListItemText
[INFO] [stdout] }
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_invalid_toml ... ok
[INFO] [stdout] test commands::completions::tests::test_completions_powershell ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_with_this ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_entities_missing_dir_in_mod_rs ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_with_path_dep ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_without_this ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_entities_all_declared ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_cargo_toml_no_deps_section ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_entities_no_dir ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_invalid_yaml ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_multiple_flows_mixed ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_entities_orphan ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_empty_sinks ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_unknown_sink_reference ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_valid_config ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_grpc_enabled_but_no_main_rs ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_no_config_with_event_bus ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_grpc_enabled_and_configured ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_entities_multiple_orphans ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_grpc_enabled_but_not_configured ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_empty_links ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_grpc_not_enabled ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_invalid_entity ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_events_no_config_no_event_bus ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_module_registration_all_registered_with_marker ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_no_file ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_android_package_json_content ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_valid_with_known_entities ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_module_registration_missing_entity ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_module_registration_no_entities ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_stores_all_configured_with_marker ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_stores_missing_entity_store ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_module_registration_without_marker ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_module_registration_no_module_rs ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_stores_no_entities ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_stores_without_marker ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_websocket_enabled_and_configured ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_websocket_enabled_but_not_configured ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_websocket_enabled_but_no_main_rs ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_websocket_not_enabled ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_stores_no_stores_rs ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_workspace_missing_api_dir ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_workspace_invalid_yaml ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_workspace_target_dir_missing ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_invalid_yaml_syntax ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_workspace_with_targets ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_workspace_valid ... ok
[INFO] [stdout] test commands::doctor::tests::test_detect_project_name_valid ... ok
[INFO] [stdout] test commands::doctor::tests::test_detect_project_name_invalid_toml ... ok
[INFO] [stdout] test commands::doctor::tests::test_detect_project_name_missing_cargo ... ok
[INFO] [stdout] test commands::doctor::tests::test_diagnostic_result_error ... ok
[INFO] [stdout] test commands::doctor::tests::test_diagnostic_result_to_serializable ... ok
[INFO] [stdout] test commands::doctor::tests::test_diagnostic_result_pass ... ok
[INFO] [stdout] test commands::doctor::tests::test_display_diagnostics_smoke_no_panic ... ok
[INFO] [stdout] test commands::doctor::tests::test_diagnostic_result_warn ... ok
[INFO] [stdout] test commands::generate::tests::test_auto_detect_output_no_webapp ... ok
[INFO] [stdout] test commands::generate::tests::test_auto_detect_output_with_webapp ... ok
[INFO] [stdout] test commands::doctor::tests::test_run_checks_project_with_features ... ok
[INFO] [stdout] test commands::doctor::tests::test_run_checks_healthy_project ... ok
[INFO] [stdout] test commands::doctor::tests::test_run_checks_broken_project ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_no_entities_error ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_not_in_workspace_error ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_unsupported_language ... ok
[INFO] [stdout] test commands::doctor::tests::test_check_links_valid_with_yaml_entities ... ok
[INFO] [stdout] test commands::info::tests::test_check_coherence_no_entities ... ok
[INFO] [stdout] test commands::info::tests::test_check_coherence_with_registered_entities ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_webapp_creates_files ... ok
[INFO] [stdout] test commands::info::tests::test_check_links_validity_invalid_yaml ... ok
[INFO] [stdout] test commands::info::tests::test_check_links_validity_no_links_file ... ok
[INFO] [stdout] test commands::info::tests::test_check_links_validity_unknown_source ... ok
[INFO] [stdout] test commands::info::tests::test_check_links_validity_unknown_target ... ok
[INFO] [stdout] test commands::info::tests::test_check_coherence_with_unregistered_entity ... ok
[INFO] [stdout] test commands::info::tests::test_check_links_validity_valid_links ... ok
[INFO] [stdout] test commands::info::tests::test_check_module_registration_no_module_rs ... ok
[INFO] [stdout] test commands::info::tests::test_check_module_registration_without_marker ... ok
[INFO] [stdout] test commands::info::tests::test_check_stores_configuration_no_stores_rs ... ok
[INFO] [stdout] test commands::info::tests::test_check_module_registration_with_marker ... ok
[INFO] [stdout] test commands::info::tests::test_check_stores_configuration_without_marker ... ok
[INFO] [stdout] test commands::info::tests::test_detect_events_info_empty_config ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_ios_updates_this_yaml ... ok
[INFO] [stdout] test commands::info::tests::test_detect_events_info_invalid_yaml ... ok
[INFO] [stdout] test commands::info::tests::test_check_stores_configuration_with_marker ... ok
[INFO] [stdout] test commands::info::tests::test_detect_events_info_with_sinks_and_flows ... ok
[INFO] [stdout] test commands::info::tests::test_detect_events_info_no_file ... ok
[INFO] [stdout] test commands::info::tests::test_detect_this_features_grpc ... ok
[INFO] [stdout] test commands::info::tests::test_detect_this_features_none ... ok
[INFO] [stdout] test commands::info::tests::test_detect_this_features_websocket ... ok
[INFO] [stdout] test commands::info::tests::test_detect_this_features_multiple ... ok
[INFO] [stdout] test commands::info::tests::test_detect_this_features_no_cargo_toml ... ok
[INFO] [stdout] test commands::info::tests::test_display_info_smoke_with_coherence_issues ... ok
[INFO] [stdout] test commands::info::tests::test_display_info_smoke_no_panic ... ok
[INFO] [stdout] test commands::info::tests::test_display_info_smoke_with_workspace ... ok
[INFO] [stdout] test commands::info::tests::test_extract_this_version_no_this_dep ... ok
[INFO] [stdout] test commands::info::tests::test_extract_this_version_no_deps ... ok
[INFO] [stdout] test commands::info::tests::test_extract_this_version_simple_string ... ok
[INFO] [stdout] test commands::info::tests::test_extract_this_version_table_form ... ok
[INFO] [stdout] test commands::info::tests::test_extract_this_version_path_dep ... ok
[INFO] [stdout] test commands::info::tests::test_full_info_collection_basic_project ... ok
[INFO] [stdout] test commands::info::tests::test_parse_cargo_toml_missing_file ... ok
[INFO] [stdout] test commands::info::tests::test_parse_cargo_toml_with_path_dep ... ok
[INFO] [stdout] test commands::info::tests::test_parse_cargo_toml_no_this_dep ... ok
[INFO] [stdout] test commands::info::tests::test_parse_cargo_toml_with_simple_version ... ok
[INFO] [stdout] test commands::info::tests::test_full_info_collection_with_entities_and_links ... ok
[INFO] [stdout] test commands::info::tests::test_parse_cargo_toml_with_this_version ... ok
[INFO] [stdout] test commands::info::tests::test_parse_links_yaml_empty ... ok
[INFO] [stdout] test commands::info::tests::test_parse_links_yaml_no_file ... ok
[INFO] [stdout] test commands::info::tests::test_parse_links_yaml_invalid_yaml ... ok
[INFO] [stdout] test commands::info::tests::test_parse_model_fields_basic ... ok
[INFO] [stdout] test commands::info::tests::test_parse_links_yaml_with_links ... ok
[INFO] [stdout] test commands::info::tests::test_parse_model_fields_empty ... ok
[INFO] [stdout] test commands::info::tests::test_parse_model_fields_validated ... ok
[INFO] [stdout] test commands::info::tests::test_project_info_with_events ... ok
[INFO] [stdout] test commands::info::tests::test_project_info_without_events_serialization ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_empty_dir ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_dir_without_model_skipped ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_no_entities_dir ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_one_entity ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_validated_entity ... ok
[INFO] [stdout] test commands::info::tests::test_scan_entities_multiple_sorted ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_webapp_updates_this_yaml ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_dry_run ... ok
[INFO] [stdout] test commands::init::tests::test_init_directory_already_exists_error ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_webapp_duplicate_error ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_dockerfile_has_cmd ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_dockerfile_content_has_stages ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_auto_detect_with_webapp ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_multiple_entities ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_auto_detect_no_webapp ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_dockerfile_uses_correct_paths ... ok
[INFO] [stdout] test commands::init::tests::test_init_no_git_flag ... ok
[INFO] [stdout] test commands::generate::tests::test_generate_client_with_entities ... ok
[INFO] [stdout] test commands::add_target::tests::test_add_target_both_mobile_coexist ... ok
[INFO] [stdout] test commands::init::tests::test_init_classic_main_rs_content ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_directory_already_exists_error ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_generates_dockerfile ... ok
[INFO] [stdout] test commands::init::tests::test_init_classic_creates_structure ... ok
[INFO] [stdout] test commands::init::tests::test_init_classic_dry_run_no_files_created ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_grpc ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_websocket ... ok
[INFO] [stdout] test commands::build::tests::test_run_docker_dockerfile_uses_project_name ... ok
[INFO] [stdout] test commands::init::tests::test_init_classic_cargo_toml_content ... ok
[INFO] [stdout] test commands::init::tests::test_resolve_project_dir_absolute_path ... ok
[INFO] [stdout] test commands::init::tests::test_resolve_project_dir_custom_relative ... ok
[INFO] [stdout] test commands::init::tests::test_resolve_project_dir_relative_path ... ok
[INFO] [stdout] test config::tests::test_deserialize_full_config ... ok
[INFO] [stdout] test config::tests::test_deserialize_minimal_config ... ok
[INFO] [stdout] test config::tests::test_deserialize_with_defaults ... ok
[INFO] [stdout] test config::tests::test_load_invalid_yaml_returns_error ... ok
[INFO] [stdout] test config::tests::test_load_missing_file_returns_error ... ok
[INFO] [stdout] test config::tests::test_load_save_roundtrip ... ok
[INFO] [stdout] test config::tests::test_serialize_deserialize_roundtrip ... ok
[INFO] [stdout] test config::tests::test_target_type_display ... ok
[INFO] [stdout] test mcp::handlers::tests::test_cwd_guard_changes_and_restores_directory ... ok
[INFO] [stdout] test mcp::handlers::tests::test_cwd_guard_invalid_directory ... ok
[INFO] [stdout] test mcp::handlers::tests::test_cwd_guard_no_cwd_field ... ok
[INFO] [stdout] test commands::init::tests::test_init_dry_run_allows_existing_directory ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_creates_structure ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_cargo_toml_has_workspace_features ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_websocket_and_grpc ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_with_websocket ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_event_flow_missing_name ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_dry_run_no_files_created ... ok
[INFO] [stdout] test commands::init::tests::test_init_without_events_no_events_yaml ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_link_missing_source ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_link_missing_target ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_events ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_sink_missing_name ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_sink_missing_sink_type ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_this_yaml_content ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_target_invalid_target_type ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_target_missing_target_type ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_custom_port ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_with_custom_port ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_generate_client_unsupported_language ... ok
[INFO] [stdout] test commands::init::tests::test_init_with_git_creates_gitignore ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_with_events ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_init_missing_name ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_with_git_creates_gitignore ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_entity ... ok
[INFO] [stdout] test commands::init::tests::test_init_workspace_with_grpc ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_init_project_with_custom_port ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_unknown_tool ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_with_none_args ... ok
[INFO] [stdout] test mcp::handlers::tests::test_mcp_file_writer_create_dir_all ... ok
[INFO] [stdout] test mcp::handlers::tests::test_mcp_file_writer_is_not_dry_run ... ok
[INFO] [stdout] test mcp::handlers::tests::test_mcp_file_writer_multiple_writes ... ok
[INFO] [stdout] test mcp::handlers::tests::test_mcp_file_writer_tracks_modified ... ok
[INFO] [stdout] test mcp::handlers::tests::test_mcp_file_writer_writes_and_tracks_created ... ok
[INFO] [stdout] test mcp::protocol::tests::test_parse_initialize_params ... ok
[INFO] [stdout] test mcp::protocol::tests::test_parse_json_rpc_request ... ok
[INFO] [stdout] test mcp::protocol::tests::test_parse_request_with_params ... ok
[INFO] [stdout] test mcp::protocol::tests::test_parse_tool_call_params ... ok
[INFO] [stdout] test mcp::protocol::tests::test_serialize_error_response ... ok
[INFO] [stdout] test mcp::protocol::tests::test_serialize_success_response ... ok
[INFO] [stdout] test mcp::protocol::tests::test_serialize_tool_definition ... ok
[INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_error ... ok
[INFO] [stdout] test mcp::protocol::tests::test_tool_call_result_success ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_cancelled_notification ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_empty_json_parse_error ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_initialize ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_initialize_minimal_params ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_initialize_no_params ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_message_method_not_found ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_message_parse_error ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_notification_no_response ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_ping ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_call_before_init ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_call_invalid_params ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_call_missing_params ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_call_unknown_tool ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_list ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_tools_list_before_init ... ok
[INFO] [stdout] test mcp::server::tests::test_handle_unknown_notification ... ok
[INFO] [stdout] test mcp::server::tests::test_parse_initialize_request ... ok
[INFO] [stdout] test mcp::server::tests::test_parse_tools_call_request ... ok
[INFO] [stdout] test mcp::server::tests::test_parse_tools_list_request ... ok
[INFO] [stdout] test mcp::server::tests::test_pipe_trait ... ok
[INFO] [stdout] test mcp::server::tests::test_response_has_correct_id ... ok
[INFO] [stdout] test mcp::server::tests::test_server_new_not_initialized ... ok
[INFO] [stdout] test mcp::tools::tests::test_add_link_required_fields ... ok
[INFO] [stdout] test mcp::tools::tests::test_all_tools_count ... ok
[INFO] [stdout] test mcp::tools::tests::test_all_tools_have_cwd_param ... ok
[INFO] [stdout] test mcp::tools::tests::test_all_tools_have_non_empty_description ... ok
[INFO] [stdout] test mcp::tools::tests::test_all_tools_have_valid_schema ... ok
[INFO] [stdout] test mcp::tools::tests::test_init_project_required_fields ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_entity_with_validation ... ok
[INFO] [stdout] test templates::tests::test_cargo_toml_classic_no_embed_feature ... ok
[INFO] [stdout] test templates::tests::test_cargo_toml_workspace_has_embed_feature ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_link ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_entity_outside_project ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_event_flow_default_trigger_and_sink ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_event_flow_success ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_sink_in_app_no_url ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_sink_success ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_check_project_health ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_check_project_health_outside_project ... ok
[INFO] [stdout] test templates::tests::test_desktop_all_templates_render ... ok
[INFO] [stdout] test templates::tests::test_desktop_capabilities_json ... ok
[INFO] [stdout] test templates::tests::test_desktop_tauri_build_rs ... ok
[INFO] [stdout] test templates::tests::test_entity_lmdb_store ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_get_project_info_outside_project ... ok
[INFO] [stdout] test templates::tests::test_engine_creation ... ok
[INFO] [stdout] test templates::tests::test_entity_descriptor ... ok
[INFO] [stdout] test templates::tests::test_desktop_tauri_cargo_toml ... ok
[INFO] [stdout] test templates::tests::test_entity_migration_sql ... ok
[INFO] [stdout] test templates::tests::test_desktop_tauri_conf_json ... ok
[INFO] [stdout] test templates::tests::test_desktop_tauri_main_rs ... ok
[INFO] [stdout] test templates::tests::test_entity_handlers ... ok
[INFO] [stdout] test templates::tests::test_embedded_frontend_renders ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_inmemory ... ok
[INFO] [stdout] test templates::tests::test_entity_mod ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_neo4j ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_init_project ... ok
[INFO] [stdout] test templates::tests::test_entity_mongodb_store ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_lmdb ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_mysql ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_mongodb ... ok
[INFO] [stdout] test templates::tests::test_entity_model ... ok
[INFO] [stdout] test templates::tests::test_entity_model_validated ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_scylladb ... ok
[INFO] [stdout] test templates::tests::test_entity_mod_postgres ... ok
[INFO] [stdout] test templates::tests::test_entity_mysql_store ... ok
[INFO] [stdout] test templates::tests::test_mobile_all_templates_render_ios ... ok
[INFO] [stdout] test templates::tests::test_entity_postgres_store ... ok
[INFO] [stdout] test templates::tests::test_entity_neo4j_store ... ok
[INFO] [stdout] test templates::tests::test_mobile_capacitor_package_json_android ... ok
[INFO] [stdout] test templates::tests::test_entity_store ... ok
[INFO] [stdout] test templates::tests::test_mobile_capacitor_gitignore ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_init_project_duplicate_name ... ok
[INFO] [stdout] test templates::tests::test_main_rs_classic_no_attach_frontend ... ok
[INFO] [stdout] test templates::tests::test_entity_scylladb_store ... ok
[INFO] [stdout] test templates::tests::test_main_rs_workspace_has_attach_frontend ... ok
[INFO] [stdout] test templates::tests::test_project_links_yaml ... ok
[INFO] [stdout] test templates::tests::test_mobile_all_templates_render_android ... ok
[INFO] [stdout] test templates::tests::test_mobile_capacitor_package_json_ios ... ok
[INFO] [stdout] test templates::tests::test_mobile_capacitor_config_ts ... ok
[INFO] [stdout] test test_helpers::tests::test_add_entity_to_project ... ok
[INFO] [stdout] test test_helpers::tests::test_assert_file_not_contains ... ok
[INFO] [stdout] test test_helpers::tests::test_assert_file_not_exists ... ok
[INFO] [stdout] test test_helpers::tests::test_setup_test_project_creates_structure ... ok
[INFO] [stdout] test test_helpers::tests::test_setup_test_workspace_creates_structure ... ok
[INFO] [stdout] test test_helpers::tests::test_setup_test_workspace_with_webapp ... ok
[INFO] [stdout] test utils::file_writer::tests::test_dry_run_writer_does_not_write_real_files ... ok
[INFO] [stdout] test utils::file_writer::tests::test_dry_run_writer_is_dry_run ... ok
[INFO] [stdout] test utils::file_writer::tests::test_dry_run_writer_tracks_dirs_created ... ok
[INFO] [stdout] test utils::file_writer::tests::test_dry_run_writer_tracks_files_created ... ok
[INFO] [stdout] test templates::tests::test_project_cargo_toml ... ok
[INFO] [stdout] test utils::file_writer::tests::test_dry_run_writer_tracks_files_updated ... ok
[INFO] [stdout] test utils::file_writer::tests::test_print_summary_no_changes ... ok
[INFO] [stdout] test utils::file_writer::tests::test_print_summary_with_changes ... ok
[INFO] [stdout] test utils::file_writer::tests::test_real_writer_create_dir_all ... ok
[INFO] [stdout] test utils::file_writer::tests::test_print_simple_diff ... ok
[INFO] [stdout] test utils::file_writer::tests::test_real_writer_is_not_dry_run ... ok
[INFO] [stdout] test utils::file_writer::tests::test_real_writer_write_file ... ok
[INFO] [stdout] test utils::file_writer::tests::test_real_writer_update_file ... ok
[INFO] [stdout] test utils::markers::tests::test_add_import_after_last_use ... ok
[INFO] [stdout] test utils::markers::tests::test_add_import_already_exists ... ok
[INFO] [stdout] test utils::markers::tests::test_add_import_basic ... ok
[INFO] [stdout] test utils::markers::tests::test_add_import_no_existing_imports ... ok
[INFO] [stdout] test utils::markers::tests::test_has_line_after_marker_found ... ok
[INFO] [stdout] test utils::markers::tests::test_has_line_after_marker_no_marker ... ok
[INFO] [stdout] test utils::markers::tests::test_idempotent_insert ... ok
[INFO] [stdout] test utils::markers::tests::test_has_line_after_marker_not_found ... ok
[INFO] [stdout] test utils::markers::tests::test_insert_after_marker_not_found ... ok
[INFO] [stdout] test utils::markers::tests::test_insert_after_marker_preserves_indent ... ok
[INFO] [stdout] test utils::naming::tests::test_pluralize ... ok
[INFO] [stdout] test utils::naming::tests::test_to_pascal_case ... ok
[INFO] [stdout] test utils::naming::tests::test_to_snake_case ... ok
[INFO] [stdout] test utils::output::tests::test_print_banner ... ok
[INFO] [stdout] test utils::output::tests::test_print_error ... ok
[INFO] [stdout] test utils::output::tests::test_print_file_created ... ok
[INFO] [stdout] test utils::output::tests::test_print_info ... ok
[INFO] [stdout] test utils::output::tests::test_print_next_steps ... ok
[INFO] [stdout] test utils::output::tests::test_print_step ... ok
[INFO] [stdout] test utils::output::tests::test_print_success ... ok
[INFO] [stdout] test utils::output::tests::test_print_warn ... ok
[INFO] [stdout] test utils::project::tests::test_detect_project_root_finds_cargo_with_this_dep ... ok
[INFO] [stdout] test utils::project::tests::test_detect_project_root_from_nested_subdir ... ok
[INFO] [stdout] test utils::markers::tests::test_insert_after_marker_basic ... ok
[INFO] [stdout] test utils::project::tests::test_detect_project_root_ignores_cargo_without_this_dep ... ok
[INFO] [stdout] test utils::project::tests::test_find_workspace_root_deeply_nested ... ok
[INFO] [stdout] test utils::project::tests::test_find_workspace_root_from_root ... ok
[INFO] [stdout] test utils::project::tests::test_find_workspace_root_from_subdirectory ... ok
[INFO] [stdout] test utils::project::tests::test_detect_project_root_returns_none_in_empty_dir ... ok
[INFO] [stdout] test utils::project::tests::test_find_workspace_root_returns_none_outside_workspace ... ok
[INFO] [stdout] test templates::tests::test_project_main_rs ... ok
[INFO] [stdout] test templates::tests::test_project_module_rs ... ok
[INFO] [stdout] test templates::tests::test_project_stores_rs ... ok
[INFO] [stdout] test templates::tests::test_stores_rs_has_all_backend_constructors ... ok
[INFO] [stdout] test templates::tests::test_webapp_app_tsx ... ok
[INFO] [stdout] test templates::tests::test_webapp_index_html ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_add_entity_duplicate ... ok
[INFO] [stdout] test templates::tests::test_webapp_all_templates_render ... ok
[INFO] [stdout] test templates::tests::test_stores_rs_has_postgres_constructor ... ok
[INFO] [stdout] test templates::tests::test_webapp_package_json ... ok
[INFO] [stdout] test templates::tests::test_workspace_this_yaml ... ok
[INFO] [stdout] test templates::tests::test_webapp_vite_config ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_init_project_workspace_mode ... ok
[INFO] [stdout] test mcp::handlers::tests::test_handle_get_project_info ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 517 passed; 0 failed; 3 ignored; 0 measured; 0 filtered out; finished in 11.18s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-8609d76034d484b2)
[INFO] [stdout] 
[INFO] [stdout] running 73 tests
[INFO] [stdout] test test_add_entity_outside_project_error ... ok
[INFO] [stdout] test test_add_link_basic ... ok
[INFO] [stdout] test test_add_link_adds_entity_configs ... ok
[INFO] [stdout] test test_add_link_duplicate_error ... ok
[INFO] [stdout] test test_add_link_custom_options ... ok
[INFO] [stdout] test test_add_entity_updates_mod_rs ... ok
[INFO] [stdout] test test_add_entity_updates_stores_rs ... ok
[INFO] [stdout] test test_add_entity_validated_flag ... ok
[INFO] [stdout] test test_build_embed_without_webapp_fails ... ok
[INFO] [stdout] test test_add_entity_updates_links_yaml ... ok
[INFO] [stdout] test test_build_outside_workspace_fails ... ok
[INFO] [stdout] test test_build_front_only_without_webapp_fails ... ok
[INFO] [stdout] test test_completions_bash ... ok
[INFO] [stdout] test test_completions_fish ... ok
[INFO] [stdout] test test_add_entity_idempotent_module ... ok
[INFO] [stdout] test test_completions_zsh ... ok
[INFO] [stdout] test test_dev_outside_workspace_fails ... ok
[INFO] [stdout] test test_add_entity_reserved_field_name_filtered ... ok
[INFO] [stdout] test test_completions_powershell ... ok
[INFO] [stdout] test test_add_entity_without_validated ... ok
[INFO] [stdout] test test_add_entity_duplicate_error ... ok
[INFO] [stdout] test test_add_entity_creates_files ... ok
[INFO] [stdout] test test_add_entity_updates_module_rs ... ok
[INFO] [stdout] test test_build_in_classic_project_fails ... ok
[INFO] [stdout] test test_add_link_no_validation_rule ... ok
[INFO] [stdout] test test_doctor_workspace_healthy ... ok
[INFO] [stdout] test test_add_entity_idempotent_stores ... ok
[INFO] [stdout] test test_doctor_workspace_missing_target_dir ... ok
[INFO] [stdout] test test_add_entity_multi_updates_stores_and_module ... ok
[INFO] [stdout] test test_generated_code_compiles ... ignored
[INFO] [stdout] test test_doctor_websocket_healthy ... ok
[INFO] [stdout] test test_doctor_detects_invalid_link_entity ... ok
[INFO] [stdout] test test_build_docker_without_webapp_fails ... ok
[INFO] [stdout] test test_info_outside_project_fails ... ok
[INFO] [stdout] test test_doctor_websocket_incoherent ... ok
[INFO] [stdout] test test_dev_in_classic_project_fails ... ok
[INFO] [stdout] test test_dry_run_add_link_no_files_modified ... ok
[INFO] [stdout] test test_doctor_grpc_incoherent ... ok
[INFO] [stdout] test test_info_workspace_displays_workspace_section ... ok
[INFO] [stdout] test test_build_docker_dry_run ... ok
[INFO] [stdout] test test_dry_run_init_no_files_created ... ok
[INFO] [stdout] test test_init_directory_exists_error ... ok
[INFO] [stdout] test test_info_websocket_enabled ... ok
[INFO] [stdout] test test_doctor_grpc_healthy ... ok
[INFO] [stdout] test test_doctor_detects_orphan_entity ... ok
[INFO] [stdout] test test_info_grpc_enabled ... ok
[INFO] [stdout] test test_info_classic_no_workspace_section ... ok
[INFO] [stdout] test test_info_websocket_disabled ... ok
[INFO] [stdout] test test_init_no_git ... ok
[INFO] [stdout] test test_init_grpc_cargo_toml ... ok
[INFO] [stdout] test test_init_custom_port ... ok
[INFO] [stdout] test test_init_classic_unchanged ... ok
[INFO] [stdout] test test_init_creates_project_structure ... ok
[INFO] [stdout] test test_full_pipeline ... ok
[INFO] [stdout] test test_init_workspace_directory_exists_error ... ok
[INFO] [stdout] test test_build_docker_generates_dockerfile ... ok
[INFO] [stdout] test test_init_websocket_main_rs ... ok
[INFO] [stdout] test test_dry_run_add_entity_no_files_created ... ok
[INFO] [stdout] test test_info_in_project ... ok
[INFO] [stdout] test test_init_websocket_cargo_toml ... ok
[INFO] [stdout] test test_init_grpc_websocket_workspace_combined ... ok
[INFO] [stdout] test test_init_workspace_dry_run ... ok
[INFO] [stdout] test test_init_generated_cargo_toml_valid ... ok
[INFO] [stdout] test test_init_grpc_main_rs ... ok
[INFO] [stdout] test test_init_workspace_websocket_combined ... ok
[INFO] [stdout] test test_init_grpc_websocket_combined ... ok
[INFO] [stdout] test test_doctor_healthy_project ... ok
[INFO] [stdout] test test_init_workspace_custom_port ... ok
[INFO] [stdout] test test_init_workspace_creates_structure ... ok
[INFO] [stdout] test test_workspace_add_entity_from_root ... ok
[INFO] [stdout] test test_init_without_websocket_unchanged ... ok
[INFO] [stdout] test test_workspace_info_from_root ... ok
[INFO] [stdout] test test_info_with_links ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 72 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 5.84s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mcp_integration.rs (/opt/rustwide/target/debug/deps/mcp_integration-4d0b4bf0aad7f6c2)
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test test_mcp_build_project_outside_workspace_error ... ok
[INFO] [stdout] test test_mcp_ping ... ok
[INFO] [stdout] test test_mcp_start_dev_outside_workspace_error ... ok
[INFO] [stdout] test test_mcp_initialize ... ok
[INFO] [stdout] test test_mcp_invalid_json_error ... ok
[INFO] [stdout] test test_mcp_method_not_found ... ok
[INFO] [stdout] test test_mcp_tools_list_before_init_error ... ok
[INFO] [stdout] test test_mcp_tools_list ... ok
[INFO] [stdout] test test_mcp_unknown_tool_error ... ok
[INFO] [stdout] test test_mcp_init_project ... ok
[INFO] [stdout] test test_mcp_check_project_health ... ok
[INFO] [stdout] test test_mcp_init_project_grpc_websocket ... ok
[INFO] [stdout] test test_mcp_init_project_workspace ... ok
[INFO] [stdout] test test_mcp_init_project_websocket ... ok
[INFO] [stdout] test test_mcp_init_project_grpc ... ok
[INFO] [stdout] test test_mcp_get_project_info_workspace ... ok
[INFO] [stdout] test test_mcp_build_project_docker_generates_dockerfile ... ok
[INFO] [stdout] test test_mcp_add_entity ... ok
[INFO] [stdout] test test_mcp_get_project_info ... ok
[INFO] [stdout] test test_mcp_add_link ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.42s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ce3758eda7e3ea3f51b7dcf9c18a60ec1c365f65d4a614d66173e0f125d91259", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce3758eda7e3ea3f51b7dcf9c18a60ec1c365f65d4a614d66173e0f125d91259", kill_on_drop: false }`
[INFO] [stdout] ce3758eda7e3ea3f51b7dcf9c18a60ec1c365f65d4a614d66173e0f125d91259
