option('build-cli', type: 'boolean', value: true, description: 'Build CLI tools') option('build-mcp-server', type: 'boolean', value: true, description: 'Build MCP server') option('enable-tui', type: 'boolean', value: true, description: 'Enable TUI features in CLI') option('use-lld', type: 'feature', value: 'auto', description: 'Use LLD linker (auto: enabled with Clang, disabled otherwise; enabled: force LLD; disabled: never use LLD)') option('enable-lzma', type: 'feature', value: 'auto', description: 'Enable LZMA via liblzma (xz)') option('enable-onnx', type: 'feature', value: 'auto', description: 'ONNX Runtime integration in vector library (auto-detect)') option('require-fts5', type: 'boolean', value: true, description: 'Fail configure if sqlite3 lacks FTS5') option('sqlite-vec-source-dir', type: 'string', value: '', description: 'Path to sqlite-vec source directory (with sqlite-vec.c)') option('require-sqlite-vec', type: 'boolean', value: true, description: 'Require vendored sqlite-vec.c to build vector DB statically; when true and sources are missing, Meson will error out (recommended for clean, consistent builds). Set to false only if providing a runtime module via YAMS_SQLITE_VEC_MODULE or intentionally disabling vectors for dev/test.') option('conan-generators-dir', type: 'string', value: '', description: 'Optional path (relative to source root) to Conan generator outputs; when empty Meson searches under the build directory (e.g. build/debug/conan).') option('cli11-cmake-path', type: 'string', value: '', description: 'Optional path to CLI11 CMake package directory (e.g., /opt/homebrew/Cellar/cli11/2.4.1/lib/cmake/CLI11). When set, Meson will add this to cmake_module_path for CLI11 discovery.') option('onnxruntime-cmake-path', type: 'string', value: '', description: 'Optional path to onnxruntime CMake package dir (e.g., /opt/homebrew/opt/onnxruntime/lib/cmake/onnxruntime). Used to augment cmake_module_path for ORT discovery in Meson.') option('build-plugins', type: 'boolean', value: true, description: 'Build plugins under plugins/') option('plugin-s3', type: 'boolean', value: true, description: 'Build object_storage_s3 plugin') option('plugin-pdf', type: 'boolean', value: true, description: 'Build PDF extractor plugin (requires pdfium and app/services)') option('plugin-onnx', type: 'boolean', value: true, description: 'Build ONNX plugin (requires onnxruntime and vector lib)') option('build-tests', type: 'boolean', value: false, description: 'Build unit/integration tests under tests/') option('yams-version', type: 'string', value: '', description: 'Override runtime/display version (falls back to project version when empty). A generated header will expose this.') option('unit-timeout', type: 'integer', value: 1200, description: 'Total time budget (seconds) for unit tests; per-shard timeout is derived automatically when sharding is enabled') option('unit-shards', type: 'integer', value: 6, description: 'Number of shards to split the unit test binary into via GTest sharding (set to 1 to disable)') option('bench-timeout', type: 'integer', value: 1800, description: 'Timeout (seconds) for benchmark/stress-oriented test suite') option('integration-timeout', type: 'integer', value: 900, description: 'Timeout (seconds) for integration_services suite') option('integration-ui-timeout', type: 'integer', value: 600, description: 'Timeout (seconds) for integration_ui suite') option('integration-smoke-timeout', type: 'integer', value: 300, description: 'Timeout (seconds) for integration_smoke suite') option('integration-daemon-timeout', type: 'integer', value: 600, description: 'Timeout (seconds) for integration_daemon suite') option('stress-iters', type: 'integer', value: 100, description: 'Default iteration count for StressTail tests (propagated via YAMS_STRESS_ITERS env)') # Test registration toggles (CI-friendly defaults) option('enable-integration-tests', type: 'boolean', value: false, description: 'Register integration smoke/services tests') option('enable-integration-services', type: 'boolean', value: false, description: 'Register integration services test binary') option('enable-integration-smoke', type: 'boolean', value: false, description: 'Register integration smoke test binary') option('enable-daemon-integration', type: 'boolean', value: false, description: 'Register daemon integration test binary (e2e with running daemon)') option('enable-mobile-tests', type: 'boolean', value: false, description: 'Register mobile ABI tests') option('enable-full-unit', type: 'boolean', value: true, description: 'Register full unit shards (instead of only unit_safe/targeted)') option('enable-vector-tests', type: 'boolean', value: false, description: 'Include vector/embedding tests (requires ONNX runtime and model downloads)') option('enable-bench-tests', type: 'boolean', value: false, description: 'Register bench/isolated performance-heavy unit tests') option('enable-daemon-long-tests', type: 'boolean', value: false, description: 'Register long-running daemon lifecycle tests') option('enable-stress-tests', type: 'boolean', value: false, description: 'Register stress test binary') option('enable-reliability-tests', type: 'boolean', value: false, description: 'Register reliability gate (retries/latency sensitive)')