Effortlessly compose, extend, and observe every service in real-time for the first time ever.
This report presents the forensic synthetic code analysis of iii-hq/iii, a Rust project with 18,449 GitHub stars. SynthScan v2.0 examined 449,738 lines of code across 1835 source files, recording 1947 pattern matches distributed across 19 syntactic categories. The overall adjusted score of 6.8 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1947 distinct pattern matches across 19 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 20 | //! ┌──────────┬──────────┬───────┬──────────────────┐ | COMMENT |
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 23 | //! └──────────┴──────────┴───────┴──────────────────┘ | COMMENT |
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 920 | // ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 923 | // ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 967 | // ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-shell-proto/src/lib.rs | 971 | // ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-shell-client/tests/fake_relay.rs | 17 | //! ┌──────────┬──────────┬───────┬──────────────────┐ | COMMENT |
| MEDIUM | crates/iii-shell-client/tests/fake_relay.rs | 20 | //! └──────────┴──────────┴───────┴──────────────────┘ | COMMENT |
| MEDIUM⚡ | crates/iii-shell-client/src/lib.rs | 11 | //! ────── ──────────────── ──────────── | COMMENT |
| MEDIUM⚡ | crates/iii-shell-client/src/lib.rs | 12 | //! Session::connect(path) ──────▶ open UnixStream | COMMENT |
| MEDIUM⚡ | crates/iii-shell-client/src/lib.rs | 14 | //! read 4-byte id_offset ◀────────── write handshake | COMMENT |
| MEDIUM⚡ | crates/iii-shell-client/src/lib.rs | 15 | //! Session::run(req, sink, ─────▶ encode Request frame | COMMENT |
| MEDIUM | crates/iii-init/src/shell_dispatcher.rs | 318 | // ── Filesystem ops ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/shell_dispatcher.rs | 324 | // ── WriteStart: streaming upload ───────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/shell_dispatcher.rs | 377 | // ── ReadStart: streaming download ───────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/shell_dispatcher.rs | 404 | // ── One-shot ops ────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/shell_dispatcher.rs | 438 | // ── FsChunk / FsEnd: forward to active write session ────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 53 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 55 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 200 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 202 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 300 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/streaming.rs | 302 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 32 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 34 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 70 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 72 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 113 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 115 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 161 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 163 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 204 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 206 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 250 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 252 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 305 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 307 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 472 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 474 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 566 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 568 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 708 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 715 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 831 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 833 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 1006 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/tests.rs | 1008 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/ops.rs | 22 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/ops.rs | 24 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/ops.rs | 243 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-init/src/fs_handler/ops.rs | 245 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 72 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 74 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 229 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 231 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 366 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 368 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 773 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | crates/iii-worker/tests/local_worker_integration.rs | 775 | // ────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | crates/iii-worker/tests/worker_trigger_integration.rs | 981 | // ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| 364 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | crates/iii-supervisor/tests/socketpair_integration.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/control.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/control.rs | 21 | /// Walk `/sys/class/virtio-ports/*/name` and return the `/dev/<dev>` | COMMENT |
| LOW | crates/iii-supervisor/src/control.rs | 81 | // VM's poweroff path. | COMMENT |
| LOW | crates/iii-supervisor/src/protocol.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/protocol.rs | 21 | /// Commands the host can send to the in-VM supervisor. | COMMENT |
| LOW | crates/iii-supervisor/src/protocol.rs | 41 | /// Command applied successfully. | COMMENT |
| LOW | crates/iii-supervisor/src/shell_protocol.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/lib.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 41 | /// Node, Python with uvicorn/fastapi lifecycle hooks, Go's signal.Notify) | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 61 | /// `supervisor_ctl` 500ms read timeout does not fire while a single | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 101 | } | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 121 | let pid = child.id(); | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 141 | let mut guard = lock_or_recover(&self.inner); | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 221 | if let Some(mut old) = guard.child.take() { | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 281 | // propagate SIGTERM (npm is famous for this) or that sit | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 301 | } | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 541 | /// Give the child `sh` a moment to parse its script and install its | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 581 | state.kill_for_shutdown().unwrap(); | COMMENT |
| LOW | crates/iii-supervisor/src/child.rs | 641 | // Regression guard for the "reload leaves two worker trees | COMMENT |
| LOW | crates/iii-network/src/device.rs | 1 | //! Slot-based [`smoltcp::phy::Device`] implementation. | COMMENT |
| LOW | crates/iii-network/src/device.rs | 21 | /// # Slot-based design | COMMENT |
| LOW | crates/iii-network/src/backend.rs | 1 | //! `SmoltcpBackend` — libkrun [`NetBackend`] implementation that bridges the | COMMENT |
| LOW | crates/iii-network/src/stack.rs | 21 | use crate::dns::DnsInterceptor; | COMMENT |
| LOW | crates/iii-network/src/shared.rs | 1 | //! Shared state between the NetWorker thread, smoltcp poll thread, and tokio | COMMENT |
| LOW | crates/iii-network/src/shared.rs | 21 | /// - **tokio proxy tasks** — relay data between smoltcp sockets and real | COMMENT |
| LOW | crates/iii-network/src/udp_relay.rs | 21 | COMMENT | |
| LOW | crates/iii-shell-proto/src/lib.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 21 | //! │ frame_len│ corr_id │ flags │ JSON payload │ | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 41 | COMMENT | |
| LOW | crates/iii-shell-proto/src/lib.rs | 161 | ignore_case: bool, | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 261 | /// raw bytes, which we accept for MVP to keep the codec dependency- | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 281 | /// the dispatcher's cwd (typically `/workspace`). | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 341 | /// Human-readable failure description. The host surfaces this | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 361 | FsChunk { | COMMENT |
| LOW | crates/iii-shell-proto/src/lib.rs | 381 | pub enum ShellCodecError { | COMMENT |
| LOW | crates/iii-shell-client/tests/fake_relay.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-shell-client/tests/fake_fs_relay.rs | 381 | assert_eq!(received, payload, "received bytes must match sent payload"); | COMMENT |
| LOW | crates/iii-shell-client/tests/fake_fs_relay.rs | 501 | COMMENT | |
| LOW | crates/iii-shell-client/src/lib.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 21 | //! Exited → return ExitStatus | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 61 | /// POSIX signal numbers. Hard-coded because the values are stable | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 81 | COMMENT | |
| LOW | crates/iii-shell-client/src/lib.rs | 101 | /// hundreds of ms. The supervisor's 30s `recv_timeout` is the | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 141 | /// Flow control returned from an `OutputSink` callback. | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 181 | /// Typed failure modes. Every variant is either a client-observable | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 221 | /// env/cwd/args. | COMMENT |
| LOW | crates/iii-shell-client/src/lib.rs | 241 | COMMENT | |
| LOW | crates/iii-shell-client/src/lib.rs | 741 | /// Constructed by `Session::fs_read_stream` after the `FsMeta` frame has | COMMENT |
| LOW | crates/iii-clap-docs/src/lib.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/scaffolder-core/src/lib.rs | 1 | //! Scaffolder Core - Shared library for project scaffolding CLIs | COMMENT |
| LOW | crates/scaffolder-core/src/iii.rs | 1 | //! iii-specific [`ProductConfig`] implementation. | COMMENT |
| LOW | crates/scaffolder-core/src/product.rs | 1 | //! Product configuration trait for CLI binaries | COMMENT |
| LOW | crates/scaffolder-core/src/cli.rs | 1 | // Copyright Motia LLC and/or licensed to Motia LLC under one or more | COMMENT |
| LOW | crates/scaffolder-core/src/cli.rs | 21 | match dir { | COMMENT |
| LOW | crates/scaffolder-core/src/templates/manifest.rs | 161 | /// When true, "required" languages become "included": always selected (not deselectable), | COMMENT |
| LOW | crates/iii-filesystem/build.rs | 21 | let binary_path = workspace_root | COMMENT |
| LOW | crates/iii-filesystem/src/init.rs | 1 | //! Embedded init binary bytes. | COMMENT |
| LOW | …/iii-filesystem/src/backends/shared/name_validation.rs | 1 | //! Name validation for filesystem operations. | COMMENT |
| 634 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | website/scripts/generate-llms-agents.ts | 66 | export function buildHomepageExtractFromHtml(html: string): string { | CODE |
| LOW | blog/tests/build.test.ts | 49 | async function assertAnalyticsAndConsent(html: string, where: string) { | CODE |
| LOW | sdk/packages/python/iii-example/src/trigger_types.py | 171 | def print_trigger_type_catalog(iii: IIIClient) -> None: | CODE |
| LOW⚡ | …s/python/helpers/tests/test_observability_telemetry.py | 5 | def test_otel_config_defaults_disabled(): | CODE |
| LOW⚡ | …s/python/helpers/tests/test_observability_telemetry.py | 10 | def test_reconnection_config_has_initial_delay(): | CODE |
| LOW⚡ | …s/python/helpers/tests/test_observability_telemetry.py | 15 | def test_current_ids_none_outside_span(): | CODE |
| LOW | …lpers/tests/test_observability_http_instrumentation.py | 7 | async def test_execute_traced_request_returns_response(httpx_mock): | CODE |
| LOW | …lpers/tests/test_observability_http_instrumentation.py | 17 | async def test_execute_traced_request_records_error_status(httpx_mock): | CODE |
| LOW⚡ | …thon/helpers/src/iii_helpers/observability/span_ops.py | 11 | def current_span_is_recording() -> bool: | CODE |
| LOW⚡ | …thon/helpers/src/iii_helpers/observability/span_ops.py | 17 | def set_current_span_attribute(key: str, value: Any) -> None: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 151 | def _configure_meter_provider( | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 245 | def _enable_fetch_instrumentation() -> None: | CODE |
| LOW | …ython/helpers/src/iii_helpers/observability/payload.py | 13 | def resolve_max_bytes_from_env() -> Optional[int]: | CODE |
| LOW | …/src/iii_helpers/observability/http_instrumentation.py | 25 | def _fetch_ignore_url_patterns() -> list[str]: | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 63 | async def test_stream_set_overwrite(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 83 | async def test_stream_get_existing_item(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 101 | async def test_stream_get_non_existent_item(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 112 | async def test_stream_delete_existing_item(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 131 | async def test_stream_delete_non_existent_item(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 140 | async def test_stream_list_items_in_group(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 168 | async def test_stream_list_groups_returns_available_groups(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 209 | async def test_stream_update_applies_partial_updates_via_ops(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 267 | async def test_stream_update_appends_array_elements_and_strings(iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_streams.py | 328 | async def test_stream_custom_operations(iii_client: III): | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_logger_otel.py | 38 | def _setup_in_memory_log_provider(): | CODE |
| LOW | sdk/packages/python/iii/tests/test_logger_otel.py | 50 | def test_logger_emits_otel_record_when_initialized(): | CODE |
| LOW | sdk/packages/python/iii/tests/test_logger_otel.py | 66 | def test_logger_emits_warn_severity(): | CODE |
| LOW | sdk/packages/python/iii/tests/test_logger_otel.py | 82 | def test_logger_attaches_trace_context_from_active_span(): | CODE |
| LOW | sdk/packages/python/iii/tests/test_logger_otel.py | 109 | def test_logger_no_trace_context_outside_span(): | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 63 | def _shutdown_created_clients() -> None: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_register_function_args.py | 94 | def test_register_function_str_with_request_format(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 127 | def test_register_function_str_with_both_formats(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 172 | def test_register_function_str_minimal(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 190 | def test_register_function_str_with_http_invocation_and_format(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_register_function_args.py | 220 | def test_register_function_format_importable_from_protocol() -> None: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_register_function_args.py | 228 | def test_register_function_input_not_exported() -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 251 | def test_register_function_str_id_auto_extracts_formats(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 294 | def test_register_function_str_id_explicit_formats_override(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 325 | def test_register_function_str_id_no_annotations(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 343 | def test_register_function_str_id_with_metadata(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 366 | def test_register_function_str_id_with_http_invocation(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 390 | def test_register_function_dict_raises(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW | …ckages/python/iii/tests/test_register_function_args.py | 404 | def test_register_function_input_model_raises(monkeypatch: pytest.MonkeyPatch) -> None: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_utils.py | 20 | def test_safe_stringify_uses_default_str_for_non_serializable() -> None: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_utils.py | 28 | def test_safe_stringify_circular_reference() -> None: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_utils.py | 35 | def test_safe_stringify_type_error_returns_unserializable() -> None: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_utils.py | 44 | def test_safe_stringify_value_error_returns_unserializable() -> None: | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 52 | async def test_post_endpoint_with_body(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 91 | async def test_raw_json_request_body(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 140 | async def test_conflicting_route_structure_is_rejected(engine_http_url, iii_client: III, caplog): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 305 | async def test_content_type_on_api_response_return(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 341 | async def test_download_pdf_streaming(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 382 | async def test_upload_pdf_streaming(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 520 | async def test_urlencoded_form_data(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_middleware.py | 12 | async def test_middleware_continue_to_handler(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_middleware.py | 53 | async def test_middleware_short_circuit(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_middleware.py | 100 | async def test_multiple_middleware_ordering(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_middleware.py | 149 | async def test_middleware_receives_request_metadata(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_middleware.py | 193 | async def test_no_middleware_regression(engine_http_url, iii_client: III): | CODE |
| LOW | sdk/packages/python/iii/tests/test_pubsub.py | 17 | async def test_subscribe_and_receive_published_messages(iii_client: III): | CODE |
| 377 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 47 | // Step 1: Check tool installation (skip if --skip-tool-check or product doesn't require it) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 54 | // Step 2: Setup template fetcher | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 57 | // Step 3: Select template (also returns merged language_files) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 89 | // Step 4: Select directory | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 92 | // Step 5: Select languages | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 95 | // Step 6: Check runtimes (advisory = included languages that don't cause hard fail) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 98 | // Step 7: Create project | COMMENT |
| LOW | crates/scaffolder-core/src/tui/prompts.rs | 112 | // Step 8: Show next steps (unless the caller renders its own). | COMMENT |
| LOW⚡ | crates/iii-init/src/shell_dispatcher.rs | 797 | // Step 1: setsid() — detach from the parent's session so the | COMMENT |
| LOW⚡ | crates/iii-init/src/shell_dispatcher.rs | 800 | // Step 2: TIOCSCTTY on fd 0 — which is already the slave thanks | COMMENT |
| LOW | crates/iii-worker/src/cli/sandbox.rs | 157 | // Step 3: always attempt stop, even if exec failed. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 186 | // Step 1: create sandbox. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 232 | // Step 2: write sibling files. Cleanup on any failure. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 251 | // Step 3: write the main run script. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 269 | // Step 4: invoke the interpreter. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 292 | // Step 5: cleanup the sandbox unless asked to keep. | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 23 | ## Step 1: Add the new packages | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 47 | ## Step 2: Rename the client handle | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 77 | ## Step 3: Update HTTP request/response types | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 113 | ## Step 4: Move shared types into @iii-dev/helpers | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 167 | ## Step 5: Update observability imports | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 205 | ## Step 6: Update error types and handling | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 250 | ## Step 7: Adopt submodule paths (engine / protocol / internal / utils) | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 290 | ## Step 8: Adopt the errors / channel / trigger / runtime submodules | COMMENT |
| LOW | docs/0-20-0/upgrading/from-0-19-x.mdx.skill.md | 324 | ## Step 9: Replace removed APIs | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 23 | ## Step 1: Add the new packages | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 47 | ## Step 2: Rename the client handle | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 77 | ## Step 3: Update HTTP request/response types | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 113 | ## Step 4: Move shared types into @iii-dev/helpers | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 167 | ## Step 5: Update observability imports | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 205 | ## Step 6: Update error types and handling | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 250 | ## Step 7: Adopt submodule paths (engine / protocol / internal / utils) | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 290 | ## Step 8: Adopt the errors / channel / trigger / runtime submodules | COMMENT |
| LOW | docs/next/upgrading/from-0-19-x.mdx.skill.md | 324 | ## Step 9: Replace removed APIs | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 23 | ## Step 1: Add the new packages | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 47 | ## Step 2: Rename the client handle | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 77 | ## Step 3: Update HTTP request/response types | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 113 | ## Step 4: Move shared types into @iii-dev/helpers | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 167 | ## Step 5: Update observability imports | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 205 | ## Step 6: Update error types and handling | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 250 | ## Step 7: Adopt submodule paths (engine / protocol / internal / utils) | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 290 | ## Step 8: Adopt the errors / channel / trigger / runtime submodules | COMMENT |
| LOW | docs/upgrading/from-0-19-x.mdx.skill.md | 324 | ## Step 9: Replace removed APIs | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 10 | # Step 1: Node SDK (TypeDoc) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 15 | # Step 2: Python SDK (griffe) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 27 | # Step 3: Rust SDK (nightly rustdoc JSON) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 36 | # Step 4: Generate MDX (writes to docs/0-11-0/api-reference/, frozen 0.11 archive) | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 61 | # Step 1: Extract TypeDoc JSON (Node SDK, Browser SDK, Helpers) | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 69 | # Step 2: Extract Python docs (griffe) for iii and iii_helpers | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 83 | # Step 3: Extract Rust docs (nightly rustdoc JSON) for both crates | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 91 | # Step 4: Generate MDX from the extracted JSON | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 95 | # Step 5: Commit if changed (skip ci so the push-back doesn't loop) | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 14 | ## Step 1: Install the Engine | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 26 | ## Step 2: Create a Project | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 41 | ## Step 3: Start the Engine | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 50 | ## Step 4: Install the SDK | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 65 | ## Step 5: Write Your First Worker | COMMENT |
| LOW | skills/iii-getting-started/SKILL.md | 138 | ## Step 6: Test It | COMMENT |
| LOW | engine/local-worker-dev.md | 23 | ## Step 1: Build the Engine Binary (`iii`) | COMMENT |
| LOW | engine/local-worker-dev.md | 31 | ## Step 2: Build the Worker Binary (`iii-worker`) | COMMENT |
| 9 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sdk/packages/python/iii-example/src/stream.py | 1 | CODE | |
| LOW | …s/python/helpers/tests/test_observability_telemetry.py | 1 | CODE | |
| LOW | …ages/python/helpers/src/iii_helpers/stream/__init__.py | 3 | CODE | |
| LOW | …/helpers/src/iii_helpers/observability/reconnection.py | 3 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/span_ops.py | 3 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 3 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 4 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 5 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 6 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 6 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 6 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 6 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 12 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 13 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 13 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 13 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 13 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 19 | CODE | |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 31 | CODE | |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 8 | CODE | |
| LOW | …rc/iii_helpers/observability/baggage_span_processor.py | 14 | CODE | |
| LOW | …python/helpers/src/iii_helpers/observability/logger.py | 3 | CODE | |
| LOW | …ython/helpers/src/iii_helpers/observability/payload.py | 3 | CODE | |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 8 | CODE | |
| LOW | …lpers/src/iii_helpers/observability/telemetry_types.py | 3 | CODE | |
| LOW | …/src/iii_helpers/observability/http_instrumentation.py | 8 | CODE | |
| LOW | …ckages/python/helpers/src/iii_helpers/http/__init__.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_utils.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_worker_metadata.py | 1 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_worker_metadata.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_worker_metadata.py | 4 | CODE | |
| LOW | …/packages/python/iii/tests/test_channel_close_delay.py | 4 | CODE | |
| LOW | …/packages/python/iii/tests/test_channel_close_delay.py | 4 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_errors.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_span_ops.py | 2 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_data_channels.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_worker_metrics.py | 1 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_helpers.py | 3 | CODE | |
| LOW | …ckages/python/iii/tests/test_baggage_span_processor.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_format_utils.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_init_api.py | 9 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/format_utils.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/otel_worker_gauges.py | 17 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/internal.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/triggers.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/triggers.py | 11 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 3 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 3 | CODE | |
| 61 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | README.md | 119 | iii project init myapp # scaffold a project | CODE |
| MEDIUM | …rraform/website/cloudfront_functions/redirects.test.js | 355 | assert.equal(locationOf(result), 'https://iii.dev/roadmap/2026-06-08-agentic/') | CODE |
| MEDIUM | …rraform/website/cloudfront_functions/redirects.test.js | 409 | assert.equal(locationOf(result), 'https://iii.dev/roadmap/2026-06-08-agentic/') | CODE |
| MEDIUM | crates/motia-tools/src/main.rs | 52 | #[command(about = "CLI for scaffolding Motia projects with iii integration")] | COMMENT |
| MEDIUM | crates/scaffolder-core/src/cli.rs | 15 | /// Resolve the scaffold target directory. | COMMENT |
| MEDIUM | crates/scaffolder-core/src/cli.rs | 34 | /// scaffold (an existing `data/` belongs to some engine and clobbering its | COMMENT |
| MEDIUM | crates/scaffolder-core/src/cli.rs | 114 | // behavior, scaffold into a tempdir first, then walk it and copy each | COMMENT |
| MEDIUM | crates/scaffolder-core/src/tui/prompts.rs | 29 | /// Skip the post-scaffold dependency install step (`npm install` / | COMMENT |
| MEDIUM | crates/scaffolder-core/src/tui/prompts.rs | 30 | /// `uv sync`). Worker init sets this to true: the scaffold ships | COMMENT |
| MEDIUM | crates/scaffolder-core/src/templates/copier.rs | 44 | // sources sharing a destination can't occur within one scaffold. | COMMENT |
| MEDIUM | crates/iii-worker/tests/worker_init_e2e.rs | 44 | /// Shared assertions for a successful language-specific scaffold. | COMMENT |
| MEDIUM | crates/iii-worker/tests/worker_init_e2e.rs | 164 | // TS scaffold carries the TypeScript toolchain. | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 7 | //! `iii worker init` -- scaffold a standalone worker repo. Picks one language | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 18 | //! when interactive, or a non-interactive single-language scaffold | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 344 | /// originals after a clobber-prone scaffold pass. Skips `.iii/` (we own | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 360 | // Skip iii-managed state; we rewrite it post-scaffold. | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 387 | /// Effectively makes the scaffold write-if-absent at the worker-init level | COMMENT |
| MEDIUM | crates/iii-worker/src/cli/init.rs | 446 | // No tsconfig.json -> JS scaffold. | COMMENT |
| MEDIUM | website/sitemap.xml | 100 | <loc>https://iii.dev/roadmap/2026-06-08-agentic/</loc> | CODE |
| MEDIUM | …ntations/2026-06-08-agentic/src/pages/UseCaseShell.tsx | 14 | { id: 'loops', href: '#/loops', label: 'agentic loops' }, | CODE |
| MEDIUM | website/scripts/tech-specs.test.ts | 36 | '2026-06-08-agentic': '# agentic\n\nprose.\n', | CODE |
| MEDIUM | website/scripts/agents-appendix.md | 29 | iii project init quickstart --template quickstart # scaffold the Quickstart | CODE |
| MEDIUM | website/scripts/generate-llms-agents.ts | 128 | - [AGENTS.md](https://iii.dev/AGENTS.md) — build path: install, wire-level notes, and guardrails for coding agents | CODE |
| MEDIUM | docs/0-20-0/creating-workers/http.mdx.skill.md | 30 | [`iii worker init`](./workers#scaffold-a-new-worker), then edit its source. The | CODE |
| MEDIUM | docs/0-20-0/creating-workers/queues.mdx.skill.md | 25 | [`iii worker init`](./workers#scaffold-a-new-worker), then edit its source: | CODE |
| MEDIUM | docs/0-20-0/using-iii/workers.mdx.skill.md | 61 | [Creating Workers / Scaffold a new Worker](../creating-workers/workers#scaffold-a-new-worker). | CODE |
| MEDIUM | docs/next/creating-workers/http.mdx.skill.md | 32 | [`iii worker init`](./workers#scaffold-a-new-worker), then edit its source. The | CODE |
| MEDIUM | docs/next/creating-workers/queues.mdx.skill.md | 112 | worker yet, scaffold one with [`iii worker init`](./workers#scaffold-a-new-worker), then edit its | CODE |
| MEDIUM | docs/next/using-iii/workers.mdx.skill.md | 61 | [Creating Workers / Scaffold a new Worker](../creating-workers/workers#scaffold-a-new-worker). | CODE |
| MEDIUM | docs/creating-workers/http.mdx.skill.md | 32 | [`iii worker init`](./workers#scaffold-a-new-worker), then edit its source. The | CODE |
| MEDIUM | docs/creating-workers/queues.mdx.skill.md | 112 | worker yet, scaffold one with [`iii worker init`](./workers#scaffold-a-new-worker), then edit its | CODE |
| MEDIUM | docs/0-19-0/using-iii/workers.mdx.skill.md | 44 | [Creating Workers / Scaffold a new Worker](../creating-workers/workers#scaffold-a-new-worker). | CODE |
| MEDIUM | docs/using-iii/workers.mdx.skill.md | 61 | [Creating Workers / Scaffold a new Worker](../creating-workers/workers#scaffold-a-new-worker). | CODE |
| MEDIUM | blog/src/content/blog/the-harness-is-the-backend.md | 121 | const iii = registerWorker('ws://localhost:49134', { workerName: 'agentic-backend' }) | CODE |
| MEDIUM | skills/presentation/reference/design-system.md | 106 | ## Anti-slop guardrails | COMMENT |
| MEDIUM | engine/tests/project_init_e2e.rs | 255 | // refuse to scaffold (we'd otherwise silently overwrite it via | COMMENT |
| MEDIUM | engine/src/cli/project/mod.rs | 9 | //! All template content (the bare scaffold's `config.yaml`/`.gitignore` plus | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 47 | // Step 1: Check tool installation (skip if --skip-tool-check or product doesn't require it) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 54 | // Step 2: Setup template fetcher | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 57 | // Step 3: Select template (also returns merged language_files) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 89 | // Step 4: Select directory | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 92 | // Step 5: Select languages | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 95 | // Step 6: Check runtimes (advisory = included languages that don't cause hard fail) | COMMENT |
| LOW⚡ | crates/scaffolder-core/src/tui/prompts.rs | 98 | // Step 7: Create project | COMMENT |
| LOW | crates/scaffolder-core/src/tui/prompts.rs | 112 | // Step 8: Show next steps (unless the caller renders its own). | COMMENT |
| LOW⚡ | crates/iii-init/src/shell_dispatcher.rs | 797 | // Step 1: setsid() — detach from the parent's session so the | COMMENT |
| LOW⚡ | crates/iii-init/src/shell_dispatcher.rs | 800 | // Step 2: TIOCSCTTY on fd 0 — which is already the slave thanks | COMMENT |
| LOW | crates/iii-worker/src/cli/sandbox.rs | 157 | // Step 3: always attempt stop, even if exec failed. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 186 | // Step 1: create sandbox. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 232 | // Step 2: write sibling files. Cleanup on any failure. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 251 | // Step 3: write the main run script. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 269 | // Step 4: invoke the interpreter. | COMMENT |
| LOW | crates/iii-worker/src/sandbox_daemon/run.rs | 292 | // Step 5: cleanup the sandbox unless asked to keep. | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 10 | # Step 1: Node SDK (TypeDoc) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 15 | # Step 2: Python SDK (griffe) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 27 | # Step 3: Rust SDK (nightly rustdoc JSON) | COMMENT |
| LOW⚡ | scripts/generate-api-docs.sh | 36 | # Step 4: Generate MDX (writes to docs/0-11-0/api-reference/, frozen 0.11 archive) | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 61 | # Step 1: Extract TypeDoc JSON (Node SDK, Browser SDK, Helpers) | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 69 | # Step 2: Extract Python docs (griffe) for iii and iii_helpers | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 83 | # Step 3: Extract Rust docs (nightly rustdoc JSON) for both crates | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 91 | # Step 4: Generate MDX from the extracted JSON | COMMENT |
| LOW⚡ | .github/workflows/generate-api-docs.yml | 95 | # Step 5: Commit if changed (skip ci so the push-back doesn't loop) | COMMENT |
| LOW | engine/tests/otel_ws_no_worker_registration_test.rs | 74 | // Step 1: connect a normal worker socket to `/`. This should register | COMMENT |
| LOW | engine/tests/otel_ws_no_worker_registration_test.rs | 102 | // Step 2: connect an OTEL-only socket to `/otel`. This must NOT add | COMMENT |
| LOW⚡ | engine/benches/worker_cleanup_bench.rs | 61 | // Step 1: Read function_ids, remove each function and service | COMMENT |
| LOW⚡ | engine/benches/worker_cleanup_bench.rs | 68 | // Step 2: Read invocations, halt each. | COMMENT |
| LOW⚡ | engine/benches/worker_cleanup_bench.rs | 76 | // Step 3: Unregister triggers belonging to this worker | COMMENT |
| LOW⚡ | engine/benches/worker_cleanup_bench.rs | 79 | // Step 4: Unregister the worker itself | COMMENT |
| LOW | engine/src/update_ops.rs | 527 | // Step 2: non-empty path requires object root. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 293 | except Exception: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 336 | except Exception as exc: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 383 | except Exception: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 396 | except Exception: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 405 | except Exception: | CODE |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 527 | except Exception as exc: | CODE |
| LOW | …python/helpers/src/iii_helpers/observability/logger.py | 106 | except Exception: | CODE |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 91 | except Exception as exc: | CODE |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 285 | except Exception: | CODE |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 309 | except Exception: | CODE |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 449 | except Exception: | CODE |
| MEDIUM | …s/src/iii_helpers/observability/telemetry_exporters.py | 67 | def _try_put() -> None: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_logger_otel.py | 20 | except Exception: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_logger_otel.py | 27 | except Exception: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_logger_otel.py | 34 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/tests/test_healthcheck.py | 16 | except Exception: | CODE |
| LOW⚡ | sdk/packages/python/iii/tests/test_errors.py | 84 | except Exception as got: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_invocation_metadata.py | 45 | except Exception: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_invocation_metadata.py | 52 | except Exception: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_invocation_metadata.py | 59 | except Exception: | CODE |
| LOW | …/iii/tests/test_http_external_functions_integration.py | 83 | except Exception: | CODE |
| LOW | …/iii/tests/test_http_external_functions_integration.py | 183 | except Exception: | CODE |
| LOW | …/iii/tests/test_http_external_functions_integration.py | 512 | except Exception: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_context_propagation.py | 30 | except Exception: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_context_propagation.py | 37 | except Exception: | CODE |
| LOW⚡ | …/packages/python/iii/tests/test_context_propagation.py | 44 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/tests/test_telemetry.py | 22 | except Exception: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_iii_registration_dedup.py | 23 | except Exception: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_iii_registration_dedup.py | 30 | except Exception: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_iii_registration_dedup.py | 37 | except Exception: | CODE |
| LOW⚡ | …ckages/python/iii/tests/test_iii_registration_dedup.py | 44 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/format_utils.py | 122 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/format_utils.py | 152 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/otel_worker_gauges.py | 149 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/types.py | 221 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/worker_metrics.py | 146 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/channels.py | 222 | except Exception: | CODE |
| MEDIUM | sdk/packages/python/iii/src/iii/iii.py | 331 | def _do_connect(self) -> None: | CODE |
| MEDIUM | sdk/packages/python/iii/src/iii/iii.py | 1280 | def _get_worker_metadata(self) -> dict[str, Any]: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 145 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 590 | except Exception as e: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 654 | except Exception as e: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 711 | except Exception as e: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 751 | except Exception as e: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 798 | except Exception: | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 1283 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …0-20-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | the analytics worker owns its own table, in its own database. | STRING |
| HIGH | …s/next/tutorials/linkly/durable-execution.mdx.skill.md | 0 | the analytics worker owns its own table, in its own database. | STRING |
| HIGH | …0-18-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | the analytics worker owns its own table, in its own database. | STRING |
| HIGH | …0-19-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | the analytics worker owns its own table, in its own database. | STRING |
| HIGH | docs/tutorials/linkly/durable-execution.mdx.skill.md | 0 | the analytics worker owns its own table, in its own database. | STRING |
| HIGH | …0-20-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | runs whenever link publishes `link.created`. counts links per day. | STRING |
| HIGH | …s/next/tutorials/linkly/durable-execution.mdx.skill.md | 0 | runs whenever link publishes `link.created`. counts links per day. | STRING |
| HIGH | …0-18-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | runs whenever link publishes `link.created`. counts links per day. | STRING |
| HIGH | …0-19-0/tutorials/linkly/durable-execution.mdx.skill.md | 0 | runs whenever link publishes `link.created`. counts links per day. | STRING |
| HIGH | docs/tutorials/linkly/durable-execution.mdx.skill.md | 0 | runs whenever link publishes `link.created`. counts links per day. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 831 | Register a custom trigger type with the engine. Returns a :class:`TriggerTypeRef` handle with ``register_trigge | STRING |
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 913 | Bind a trigger configuration to a registered function. Args: trigger: A ``RegisterTriggerInput`` or | STRING |
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 967 | Register a function with the engine. Pass a handler for local execution, or an ``HttpInvocationConfig`` | STRING |
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 1128 | Invoke a remote function. The routing behavior and return type depend on the ``action`` field: - No ac | STRING |
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 1158 | Invoke a remote function. The routing behavior and return type depend on the ``action`` field: - No ac | STRING |
| HIGH | sdk/packages/python/iii/src/iii/iii.py | 1400 | Create an III client and connect to the engine. Blocks until the WebSocket connection is established and ready. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/0-20-0/api-reference/sdk-node.mdx.skill.md | 150 | payload: { to: 'user@example.com' }, | CODE |
| LOW | docs/0-20-0/api-reference/sdk-browser.mdx.skill.md | 136 | payload: { to: 'user@example.com' }, | CODE |
| LOW | docs/next/api-reference/sdk-node.mdx.skill.md | 150 | payload: { to: 'user@example.com' }, | CODE |
| LOW | docs/next/api-reference/sdk-browser.mdx.skill.md | 136 | payload: { to: 'user@example.com' }, | CODE |
| LOW | docs/api-reference/sdk-node.mdx.skill.md | 150 | payload: { to: 'user@example.com' }, | CODE |
| LOW | docs/api-reference/sdk-browser.mdx.skill.md | 136 | payload: { to: 'user@example.com' }, | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 558 | form_body = urlencode({"name": "John Doe", "email": "john@example.com", "age": "30"}) | CODE |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 568 | assert data["name"] == "John Doe" | CODE |
| LOW | sdk/packages/rust/iii/tests/api_triggers.rs | 880 | assert_eq!(data["name"], "John Doe"); | CODE |
| LOW | sdk/packages/node/iii-browser/src/types.ts | 125 | * payload: { to: 'user@example.com' }, | COMMENT |
| LOW | sdk/packages/node/iii/tests/api-triggers.test.ts | 458 | name: 'John Doe', | CODE |
| LOW | sdk/packages/node/iii/tests/api-triggers.test.ts | 472 | expect(data.name).toBe('John Doe') | CODE |
| LOW | sdk/packages/node/iii/src/types.ts | 162 | * payload: { to: 'user@example.com' }, | COMMENT |
| LOW | engine/tests/observability_configuration_e2e.rs | 318 | set_value_expect_rejection(&harness, json!({ "fake_key": true })).await; | CODE |
| LOW | engine/src/config/mod.rs | 141 | let json = r#"{"url_allowlist": [], "fake_key": true}"#; | CODE |
| LOW | engine/src/workers/stream/README.md | 180 | context: { name: 'John Doe' }, | CODE |
| LOW | engine/src/workers/stream/README.md | 187 | return {'context': {'name': 'John Doe'}} | CODE |
| LOW | engine/src/workers/observability/config.rs | 513 | let json = r#"{"enabled": true, "fake_key": "value"}"#; | CODE |
| LOW⚡ | engine/src/workers/observability/config.rs | 527 | "fake_key": true | CODE |
| LOW⚡ | engine/src/workers/observability/config.rs | 535 | let json = r#"{"default": 0.5, "fake_key": true}"#; | CODE |
| LOW⚡ | engine/src/workers/observability/config.rs | 545 | let json = r#"{"max_traces_per_second": 100, "fake_key": true}"#; | CODE |
| LOW | engine/src/workers/queue/config.rs | 471 | let json = r#"{"fake_key": true}"#; | CODE |
| LOW | engine/src/workers/queue/config.rs | 481 | let json = r#"{"max_retries": 3, "fake_key": true}"#; | CODE |
| LOW | engine/src/workers/pubsub/README.md | 116 | data: { orderId: 'abc-123', address: '123 Main St' }, | CODE |
| LOW | engine/src/workers/http_functions/config.rs | 73 | let json = r#"{"fake_key": true}"#; | CODE |
| LOW | engine/src/workers/rest_api/config.rs | 280 | let json = r#"{"allowed_origins": [], "fake_key": true}"#; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | crates/iii-supervisor/src/child.rs | 546 | /// any sane system) but keeps the tests robust under CI load. | COMMENT |
| MEDIUM⚡ | crates/iii-worker/tests/worker_trigger_integration.rs | 982 | // 12. err_payload is robust to weird inputs | COMMENT |
| MEDIUM | …/iii-worker/tests/worker_list_discovery_integration.rs | 336 | // fixed sleep so the test is robust without slowing the happy path. | COMMENT |
| MEDIUM | crates/iii-worker/src/sandbox_daemon/errors.rs | 490 | // The highest-leverage S211 case: an agent wrote to /workspace/x.js | COMMENT |
| MEDIUM | …ons/2026-06-29-codegen/src/sections/HarnessSection.tsx | 32 | href="#/harness-consumer" | CODE |
| MEDIUM | …s/2026-06-29-codegen/src/pages/HarnessConsumerPage.tsx | 8 | const CODEGEN_YML = `# generate a typed harness client | CODE |
| MEDIUM | .github/scripts/test_calculate_release_version.py | 897 | # robust regardless of upstream filtering. | COMMENT |
| MEDIUM | console/packages/console-rust/src/proxy/ws.rs | 51 | // in 0.28+. Use .into() for seamless conversion between the two. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sdk/packages/python/iii-example/src/main.py | 22 | def _setup(iii) -> None: | CODE |
| LOW | …ages/python/helpers/src/iii_helpers/stream/__init__.py | 9 | __all__ = [ | CODE |
| LOW⚡ | …thon/helpers/src/iii_helpers/observability/span_ops.py | 17 | def set_current_span_attribute(key: str, value: Any) -> None: | CODE |
| LOW⚡ | …thon/helpers/src/iii_helpers/observability/span_ops.py | 25 | def set_current_span_error(message: str) -> None: | CODE |
| LOW | …thon/helpers/src/iii_helpers/observability/__init__.py | 33 | __all__ = [ | CODE |
| LOW⚡ | …hon/helpers/src/iii_helpers/observability/telemetry.py | 498 | def set_attribute(self, *a: Any, **kw: Any) -> None: ... | CODE |
| LOW⚡ | …hon/helpers/src/iii_helpers/observability/telemetry.py | 499 | def set_attributes(self, *a: Any, **kw: Any) -> None: ... | CODE |
| LOW⚡ | …hon/helpers/src/iii_helpers/observability/telemetry.py | 501 | def set_status(self, *a: Any, **kw: Any) -> None: ... | CODE |
| LOW | …/src/iii_helpers/worker_connection_manager/__init__.py | 7 | __all__ = [ | CODE |
| LOW | …ckages/python/helpers/src/iii_helpers/http/__init__.py | 132 | __all__ = [ | CODE |
| LOW | …kages/python/helpers/src/iii_helpers/queue/__init__.py | 16 | __all__ = [ | CODE |
| LOW | sdk/packages/python/iii/src/iii/internal.py | 5 | __all__ = ["InternalHttpRequest"] | CODE |
| LOW | sdk/packages/python/iii/src/iii/protocol.py | 15 | __all__ = [ | CODE |
| LOW | sdk/packages/python/iii/src/iii/channel.py | 7 | __all__ = ["Channel", "ChannelReader", "ChannelWriter", "StreamChannelRef"] | CODE |
| LOW | sdk/packages/python/iii/src/iii/__init__.py | 23 | __all__ = [ | CODE |
| LOW | sdk/packages/python/iii/src/iii/runtime.py | 6 | __all__ = ["FunctionRef", "IIIConnectionState", "TriggerTypeRef"] | CODE |
| LOW | sdk/packages/python/iii/src/iii/engine.py | 6 | __all__ = ["EngineFunctions", "EngineTriggers", "RemoteFunctionHandler"] | CODE |
| LOW | sdk/packages/python/iii/src/iii/utils.py | 11 | __all__ = [ | CODE |
| LOW | sdk/packages/python/iii/src/iii/helpers.py | 21 | __all__ = [ | CODE |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 803 | def _set_connection_state(self, state: IIIConnectionState) -> None: | CODE |
| LOW | sdk/packages/python/iii/src/iii/trigger.py | 6 | __all__ = ["Trigger", "TriggerActionVoid", "TriggerConfig", "TriggerHandler"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 245 | CODE | |
| LOW | …hon/helpers/src/iii_helpers/observability/telemetry.py | 265 | CODE | |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 134 | CODE | |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 208 | CODE | |
| LOW | …s/src/iii_helpers/observability/telemetry_exporters.py | 323 | CODE | |
| LOW | sdk/packages/python/iii/tests/test_api_triggers.py | 436 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/worker_metrics.py | 32 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/channels.py | 211 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 118 | CODE | |
| LOW | sdk/packages/python/iii/src/iii/iii.py | 458 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | infra/terraform/website/.terraform.lock.hcl | 1 | # This file is maintained automatically by "terraform init". | COMMENT |
| MEDIUM | infra/terraform/_bootstrap/.terraform.lock.hcl | 1 | # This file is maintained automatically by "terraform init". | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …/packages/python/iii/tests/test_telemetry_exporters.py | 184 | the Python OTel SDK. The serializer must emit "" (not JSON null) so the Rust | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | console/install.sh | 9 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | console/install.sh | 634 | # Check if already present | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sdk/packages/python/iii/tests/test_data_channels.py | 55 | CODE |