{
  "report_id": "theme_robotics_node_sensing_vision_perception_stack",
  "report_type": "theme_value_chain_node",
  "site_path": "themes/robotics/nodes/sensing-vision-and-perception-stack/index.html",
  "title": "Sensing, Vision, And Perception Stack",
  "as_of": "2026-06-13",
  "generated_at": "2026-06-13T00:00:00-07:00",
  "freshness": {
    "price_data_as_of": "2026-06-12",
    "daily_ohlc_latest": "2026-06-12",
    "static_setup_package_as_of": "2026-06-05",
    "static_setup_levels_stale": true,
    "chart_interval": "weekly",
    "knowledge_reviewed_as_of": "2026-06-13",
    "official_release_reviewed_as_of": "2026-06-13",
    "local_discovery_reviewed_as_of": "2026-06-13",
    "maintained_knowledge_lane_count": 14,
    "thin_conversion_names": [
      "AEVA",
      "INVZ",
      "LINK",
      "ARBE",
      "MSAI",
      "ODYS",
      "MVIS",
      "LIDR"
    ],
    "limitations": [
      "AMBA is retained as a perception-compute overlap row; broad semiconductor, security-camera, IoT, and automotive demand can dominate robotics attribution.",
      "HSAI has strong lidar scale but carries China, ADR, receivable, ASP, and procurement-policy caveats.",
      "ODYS, MSAI, and HSAI have shorter local public histories than the longest-running U.S. rows.",
      "Live discovery daily_ohlc rows are present through 2026-06-12, while static chart_artifacts and setup thresholds still carry the 2026-06-05 package and must be refreshed before being used as current trading evidence.",
      "AEVA and ODYS next earnings dates were not confirmed in bounded MarketBeat/Fiscal.ai checks on 2026-06-13; other displayed next earnings dates are estimates, not company-confirmed event dates.",
      "Robotics-specific revenue is not isolated for diversified rows such as CGNX, TDY, AMBA, and LINK, so latest-quarter revenue is total company revenue unless segment detail is explicitly named.",
      "Review validation on 2026-06-13 started the local report API process, but separate loopback curl requests to 127.0.0.1:8765 returned connection refused in the sandbox; static API attributes, chart route metadata, API service tests, and absence of embedded OHLC payloads were verified instead."
    ]
  },
  "revision": {
    "version": 3,
    "updated_label": "Reformatted sensing, vision, and perception node to visual setup, ranked basket cards, and evidence board",
    "metadata_path": "themes/robotics/nodes/sensing-vision-and-perception-stack/report.json",
    "curation_source": "reports-value-chain-node-pages reformat pass, maintained local security lanes, bounded MarketBeat/Fiscal.ai earnings-date checks, company quarterly releases, and read-only discovery daily_ohlc/instruments queries."
  },
  "node": {
    "slug": "sensing-vision-and-perception-stack",
    "order": 5,
    "level": "L3 product-revenue node",
    "role": "Tracks whether machine vision, lidar, radar, sonar, tactile sensors, environmental sensors, edge perception chips, visual predictive maintenance, and inspection systems convert into shipped units, repeat orders, backlog conversion, gross margin, cash flow, and lower reliance on equity financing.",
    "description": "The node ranks CGNX, HSAI, OUST, TDY, CODA, AMBA, AEVA, INVZ, LINK, ARBE, MSAI, ODYS, MVIS, and LIDR. All ranked rows now have maintained local security lanes; lower-ranked rows are treated as thin-conversion or funding-risk monitors rather than source gaps."
  },
  "ticker_baskets": {
    "core": [
      "CGNX",
      "HSAI",
      "OUST",
      "TDY"
    ],
    "option": [
      "CODA",
      "AMBA",
      "AEVA"
    ],
    "watch": [
      "INVZ",
      "LINK",
      "ARBE",
      "MSAI",
      "ODYS",
      "MVIS",
      "LIDR"
    ],
    "ranked": [
      "CGNX",
      "HSAI",
      "OUST",
      "TDY",
      "CODA",
      "AMBA",
      "AEVA",
      "INVZ",
      "LINK",
      "ARBE",
      "MSAI",
      "ODYS",
      "MVIS",
      "LIDR"
    ]
  },
  "inherited_parent_basket": [
    "CGNX",
    "HSAI",
    "OUST",
    "TDY",
    "CODA",
    "AMBA",
    "AEVA",
    "INVZ",
    "LINK",
    "ARBE",
    "MSAI",
    "ODYS",
    "MVIS",
    "LIDR"
  ],
  "chart_artifacts": [
    {
      "chart_id": "chart-cgnx",
      "ticker": "CGNX",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "indicator_method": "20-week and 100-week exponential moving averages computed from weekly closes using full available weekly history before visible-window clipping; weekly volume bars shown with a 20-week average volume line",
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 60.82,
      "latest_20w_ema": 54.88,
      "latest_100w_ema": 44.56,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-hsai",
      "ticker": "HSAI",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 174,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 18.49,
      "latest_20w_ema": 22.0,
      "latest_100w_ema": 19.06,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-oust",
      "ticker": "OUST",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 39.68,
      "latest_20w_ema": 28.5,
      "latest_100w_ema": 20.97,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-tdy",
      "ticker": "TDY",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 602.27,
      "latest_20w_ema": 614.67,
      "latest_100w_ema": 535.8,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-coda",
      "ticker": "CODA",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 11.8,
      "latest_20w_ema": 11.79,
      "latest_100w_ema": 9.34,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-amba",
      "ticker": "AMBA",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 63.52,
      "latest_20w_ema": 67.94,
      "latest_100w_ema": 67.08,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-aeva",
      "ticker": "AEVA",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 23.01,
      "latest_20w_ema": 17.78,
      "latest_100w_ema": 13.41,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-invz",
      "ticker": "INVZ",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 0.6961,
      "latest_20w_ema": 0.82,
      "latest_100w_ema": 1.31,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-link",
      "ticker": "LINK",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 4.91,
      "latest_20w_ema": 3.88,
      "latest_100w_ema": 4.17,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-arbe",
      "ticker": "ARBE",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 244,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 0.91,
      "latest_20w_ema": 0.98,
      "latest_100w_ema": 1.61,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-msai",
      "ticker": "MSAI",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 129,
      "visible_weekly_bar_count": 129,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 4.71,
      "latest_20w_ema": 9.75,
      "latest_100w_ema": 43.73,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-odys",
      "ticker": "ODYS",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 114,
      "visible_weekly_bar_count": 114,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 3.99,
      "latest_20w_ema": 4.98,
      "latest_100w_ema": 4.92,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-mvis",
      "ticker": "MVIS",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 265,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 0.3905,
      "latest_20w_ema": 0.67,
      "latest_100w_ema": 1.25,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    },
    {
      "chart_id": "chart-lidr",
      "ticker": "LIDR",
      "source_table": "daily_ohlc",
      "chart_interval": "weekly",
      "weekly_bar_count": 251,
      "visible_weekly_bar_count": 157,
      "aggregation": "weekly bars grouped from daily rows by calendar week; open is first row, high is weekly max, low is weekly min, close is final row, volume is summed",
      "indicators": [
        "20w_ema",
        "100w_ema",
        "weekly_volume",
        "20w_average_volume"
      ],
      "price_data_as_of": "2026-06-05",
      "visible_years": 3,
      "latest_close": 1.8,
      "latest_20w_ema": 1.93,
      "latest_100w_ema": 5.62,
      "rendering": "report_api",
      "api_route_template": "/api/securities/{ticker}/chart?frequency=weekly&window=3y&as_of=latest",
      "static_setup_levels_stale": true,
      "stale_data_caveat": "Static chart artifact levels remain from the 2026-06-05 package; selected-security right-rail charts should be refreshed from the report API before using levels as current trading evidence."
    }
  ],
  "links_out": [
    "theme_robotics",
    "theme_physical_ai_defense_autonomy",
    "theme_trade_tariff_sourcing_geography",
    "risk_market_fragility_amplification",
    "sector_information_technology",
    "sector_industrials",
    "security_cgnx",
    "security_hsai",
    "security_oust",
    "security_tdy",
    "security_coda",
    "security_amba",
    "security_aeva",
    "security_invz",
    "security_link",
    "security_arbe",
    "security_msai",
    "security_odys",
    "security_mvis",
    "security_lidr"
  ],
  "knowledge_sources": [
    "../../../../../knowledge/wiki/concepts/themes/physical-ai-defense-autonomy.md",
    "../../../../../knowledge/wiki/lanes/security/cgnx.md",
    "../../../../../knowledge/wiki/lanes/security/hsai.md",
    "../../../../../knowledge/wiki/lanes/security/oust.md",
    "../../../../../knowledge/wiki/lanes/security/tdy.md",
    "../../../../../knowledge/wiki/lanes/security/coda.md",
    "../../../../../knowledge/wiki/lanes/security/amba.md",
    "../../../../../knowledge/wiki/lanes/security/aeva.md",
    "../../../../../knowledge/wiki/lanes/security/invz.md",
    "../../../../../knowledge/wiki/lanes/security/link.md",
    "../../../../../knowledge/wiki/lanes/security/arbe.md",
    "../../../../../knowledge/wiki/lanes/security/msai.md",
    "../../../../../knowledge/wiki/lanes/security/odys.md",
    "../../../../../knowledge/wiki/lanes/security/mvis.md",
    "../../../../../knowledge/wiki/lanes/security/lidr.md",
    "../../../../../knowledge/wiki/lanes/sector/information-technology.md",
    "../../../../../knowledge/wiki/lanes/sector/industrials.md",
    "../../../../../knowledge/wiki/concepts/themes/funding-dependency-and-duration-tolerance.md",
    "../../../../../knowledge/wiki/concepts/themes/trade-tariff-sourcing-geography.md",
    "../../../../../knowledge/wiki/concepts/risks/market-fragility-amplification.md"
  ],
  "external_sources": [
    "https://www.sec.gov/Archives/edgar/data/851205/000085120526000037/a04052026-xex991xq12026ear.htm",
    "https://investor.hesaitech.com/zh-hans/news-releases/news-release-details/hesai-group-reports-first-quarter-2026-unaudited-financial/",
    "https://investors.ouster.com/news-releases/news-release-details/ouster-announces-results-first-quarter-2026",
    "https://www.teledyne.com/en-us/news/Pages/teledyne-technologies-reports-first-quarter-results-20260422.aspx",
    "https://www.codaoctopusgroup.com/news/detail/219/coda-octopus-group-reports-fiscal-first-quarter-2026-financial-results",
    "https://investor.ambarella.com/news-releases/news-release-details/ambarella-inc-announces-first-quarter-fiscal-year-2027-financial",
    "https://investors.aeva.com/news-releases/news-release-details/aeva-reports-first-quarter-2026-results",
    "https://ir.innoviz.tech/news-events/press-releases/detail/184/innoviz-reports-first-quarter-2026-results",
    "https://www.globenewswire.com/news-release/2026/05/14/3294989/0/en/interlink-electronics-reports-first-quarter-2026-results.html",
    "https://ir.arberobotics.com/news/press-releases/detail/176/arbe-announces-q1-2026-financial-results",
    "https://investors.multisensorai.com/news-events/press-releases/detail/127/multisensor-ai-announces-first-quarter-2026-results",
    "https://www.odysight.ai/press/odysight-ai-reports-financial-results-for-the-three-months-ended-march-31-2026-and-provides-business-update/",
    "https://ir.microvision.com/news/press-releases/detail/448/microvision-announces-first-quarter-2026-results",
    "https://investors.aeye.ai/news-releases/news-release-details/aeye-reports-first-quarter-2026-results-commercial-pipeline/",
    "https://www.marketbeat.com/stocks/NASDAQ/CGNX/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/HSAI/earnings/",
    "https://www.marketbeat.com/stocks/NYSE/OUST/earnings/",
    "https://www.marketbeat.com/stocks/NYSE/TDY/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/CODA/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/AMBA/earnings/",
    "https://www.marketbeat.com/stocks/NYSE/AEVA/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/INVZ/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/LINK/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/ARBE/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/MSAI/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/ODYS/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/MVIS/earnings/",
    "https://www.marketbeat.com/stocks/NASDAQ/LIDR/earnings/"
  ],
  "earnings_date_sources": [
    {
      "ticker": "CGNX",
      "next_earnings": "2026-07-29",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "HSAI",
      "next_earnings": "2026-08-13",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "OUST",
      "next_earnings": "2026-08-06",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "TDY",
      "next_earnings": "2026-07-22",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "CODA",
      "next_earnings": "2026-06-15",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "AMBA",
      "next_earnings": "2026-08-27",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "AEVA",
      "next_earnings": null,
      "status": "not_confirmed",
      "source": "MarketBeat/Fiscal.ai bounded check did not provide a credible current date",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "INVZ",
      "next_earnings": "2026-08-12",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "LINK",
      "next_earnings": "2026-08-06",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "ARBE",
      "next_earnings": "2026-08-12",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "MSAI",
      "next_earnings": "2026-08-12",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "ODYS",
      "next_earnings": null,
      "status": "not_confirmed",
      "source": "MarketBeat/Fiscal.ai bounded check did not provide a credible current date",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "MVIS",
      "next_earnings": "2026-08-12",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    },
    {
      "ticker": "LIDR",
      "next_earnings": "2026-07-30",
      "status": "estimated",
      "source": "MarketBeat/Fiscal.ai earnings page",
      "accessed": "2026-06-13"
    }
  ],
  "latest_quarter_revenue_sources": [
    {
      "ticker": "CGNX",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$268.4M",
      "source": "Cognex Q1 2026 release and MarketBeat/Fiscal.ai earnings page"
    },
    {
      "ticker": "HSAI",
      "period": "Q1 2026",
      "latest_quarter_revenue": "RMB680.6M",
      "source": "Hesai Q1 2026 release and local HSAI knowledge lane"
    },
    {
      "ticker": "OUST",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$48.6M",
      "source": "Ouster Q1 2026 release and local OUST knowledge lane"
    },
    {
      "ticker": "TDY",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$1.560B",
      "source": "Teledyne Q1 2026 release and local TDY knowledge lane"
    },
    {
      "ticker": "CODA",
      "period": "Fiscal Q1 2026",
      "latest_quarter_revenue": "$6.71M",
      "source": "Coda Octopus fiscal Q1 2026 release and local CODA knowledge lane"
    },
    {
      "ticker": "AMBA",
      "period": "Q1 FY2027",
      "latest_quarter_revenue": "$100.4M",
      "source": "Ambarella Q1 FY2027 release and local AMBA knowledge lane"
    },
    {
      "ticker": "AEVA",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$6.262M",
      "source": "Aeva Q1 2026 release and local AEVA knowledge lane"
    },
    {
      "ticker": "INVZ",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$7.13M",
      "source": "Innoviz Q1 2026 release and local INVZ knowledge lane"
    },
    {
      "ticker": "LINK",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$3.074M",
      "source": "Interlink Q1 2026 release and local LINK knowledge lane"
    },
    {
      "ticker": "ARBE",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$0.461M",
      "source": "Arbe Q1 2026 release and local ARBE knowledge lane"
    },
    {
      "ticker": "MSAI",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$1.614M",
      "source": "MultiSensor AI Q1 2026 release and local MSAI knowledge lane"
    },
    {
      "ticker": "ODYS",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$82 thousand",
      "source": "Odysight.ai Q1 2026 filing and local ODYS knowledge lane"
    },
    {
      "ticker": "MVIS",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$0.94M",
      "source": "MicroVision Q1 2026 release and local MVIS knowledge lane"
    },
    {
      "ticker": "LIDR",
      "period": "Q1 2026",
      "latest_quarter_revenue": "$101 thousand",
      "source": "AEye Q1 2026 release and local LIDR knowledge lane"
    }
  ],
  "discovery_sources": [
    {
      "kind": "status",
      "label": "Sensing, Vision, And Perception Stack local coverage checks",
      "query_ref": "discovery:status:CGNX|HSAI|OUST|TDY|CODA|AMBA|AEVA|INVZ|LINK|ARBE|MSAI|ODYS|MVIS|LIDR"
    },
    {
      "kind": "duckdb_readonly_query",
      "label": "Sensing, Vision, And Perception Stack daily_ohlc coverage",
      "query_ref": "discovery:duckdb:daily_ohlc:theme_robotics_sensing_vision_perception_expanded_basket:2026-06-05"
    },
    {
      "kind": "duckdb_readonly_query",
      "label": "Sensing, Vision, And Perception Stack live daily_ohlc coverage",
      "query_ref": "discovery:duckdb:daily_ohlc:max_date_and_row_count:CGNX|HSAI|OUST|TDY|CODA|AMBA|AEVA|INVZ|LINK|ARBE|MSAI|ODYS|MVIS|LIDR:2026-06-12"
    },
    {
      "kind": "duckdb_readonly_query",
      "label": "Sensing, Vision, And Perception Stack market cap snapshot",
      "query_ref": "discovery:duckdb:instruments.market_cap:CGNX|HSAI|OUST|TDY|CODA|AMBA|AEVA|INVZ|LINK|ARBE|MSAI|ODYS|MVIS|LIDR:2026-06-13"
    },
    {
      "kind": "duckdb_readonly_query",
      "label": "Sensing, Vision, And Perception Stack weekly OHLC and EMA chart inputs",
      "query_ref": "discovery:duckdb:daily_ohlc_weekly_aggregation_20w_100w_ema:sensing-vision-and-perception-stack:2026-06-05"
    }
  ]
}
