From 700aa61d4b5c19ab6f71aed9c17d43e6ae5e182f Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Tue, 28 Apr 2026 18:35:02 -0400 Subject: [PATCH 01/16] feat(python-recipes): add Due Diligence Agent on Deep Agents + Parallel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Multi-agent due diligence recipe built on LangChain's Deep Agents harness and Parallel's Task API. The agent runs in three phases: - Phase 1 (parallel) — corporate-profile, financial-health, litigation-regulatory, news-reputation, competitive-landscape - Phase 2 (fan-out) — orchestrator dispatches one competitor-analysis subagent instance per competitor identified by competitive-landscape - Phase 3 — orchestrator reads all workpapers, cross-references for contradictions, synthesizes the final memo with comparative competitor section Recipe demonstrates the patterns: - ParallelTaskRunTool + parse_basis: structured per-entity research with per-field citations and calibrated confidence; the wrapper surfaces low_confidence_warning so subagent reasoning can decide to chain a follow-up via previous_interaction_id - Deep Agents canonical fan-out: spawning N instances of the same subagent type for N parallel investigations - Disk-backed FilesystemBackend(virtual_mode=True): every workpaper and the synthesized memo persist to ./reports/workpapers/ on local disk - ParallelWebSearchTool as orchestrator-level quick lookup for ad-hoc cross-reference verification when contradictions surface Validated end-to-end on Rivian Automotive at the default core-fast processor: 14:36 wall-clock, 10 Task API calls (2 chained, 3 fan-out), 9 workpaper files persisted (167KB total) including a 33KB synthesized memo with TOC, executive summary, full per-section detail, inline source URLs, and risk severity tiering. The recipe ships with a runnable agent.py, a 15-cell walkthrough notebook, langgraph.json for langgraph dev, pyproject.toml + uv-based install, and the full Rivian sample output committed under reports/ so cookbook readers can preview the artifact shape. Registered in top-level README under "Deep Research & Notebooks" and website/cookbook.json. --- README.md | 1 + .../.env.example | 2 + .../.gitignore | 6 + .../README.md | 215 +++++++++ .../agent.py | 410 ++++++++++++++++++ .../due_diligence.ipynb | 279 ++++++++++++ .../langgraph.json | 7 + .../pyproject.toml | 15 + .../workpapers/competitive-landscape.md | 145 +++++++ .../reports/workpapers/competitor-ford.md | 221 ++++++++++ .../reports/workpapers/competitor-mercedes.md | 208 +++++++++ .../reports/workpapers/competitor-tesla.md | 381 ++++++++++++++++ .../reports/workpapers/corporate-profile.md | 193 +++++++++ .../reports/workpapers/financial-health.md | 326 ++++++++++++++ .../workpapers/litigation-regulatory.md | 269 ++++++++++++ .../reports/workpapers/news-reputation.md | 226 ++++++++++ .../workpapers/rivian-due-diligence-report.md | 354 +++++++++++++++ .../requirements.txt | 5 + .../sample_output_rivian.md | 152 +++++++ website/cookbook.json | 12 + 20 files changed, 3427 insertions(+) create mode 100644 python-recipes/parallel-deepagents-due-diligence/.env.example create mode 100644 python-recipes/parallel-deepagents-due-diligence/.gitignore create mode 100644 python-recipes/parallel-deepagents-due-diligence/README.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/agent.py create mode 100644 python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb create mode 100644 python-recipes/parallel-deepagents-due-diligence/langgraph.json create mode 100644 python-recipes/parallel-deepagents-due-diligence/pyproject.toml create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/requirements.txt create mode 100644 python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md diff --git a/README.md b/README.md index 937a058..2f25da5 100644 --- a/README.md +++ b/README.md @@ -124,6 +124,7 @@ Long-running, exploratory research with structured outputs and citations. | --- | --- | --- | --- | --- | | [**Market Analysis Demo**](python-recipes/market-analysis-demo) | Flask app that turns a market-research prompt into a streamed report with email delivery. SSE progress + webhook completion. | `Task` `Deep Research` `SSE` `Webhooks` | Python · Flask · Postgres · Resend | [Live](https://market-analysis-demo.parallel.ai) | | [**Deep Research Notebook**](python-recipes/Deep_Research_Recipe.ipynb) | Interactive Jupyter walkthrough of Deep Research — text + JSON outputs, citations, confidence scores, webhook patterns. | `Deep Research` `Webhooks` | Jupyter · Python | – | +| [**Due Diligence Agent (Deep Agents)**](python-recipes/parallel-deepagents-due-diligence) | Multi-agent DD on LangChain Deep Agents — five Phase-1 subagents + per-competitor Phase-2 fan-out. `parse_basis` for per-field confidence, `previous_interaction_id` for chained follow-ups, disk-backed workpapers. Validated on Rivian: 14 min, 10 Task calls, 33KB cited memo. | `Task` `Search` | Python · LangChain · Deep Agents | [Sample memo](python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md) | ### Identity & Entity Resolution diff --git a/python-recipes/parallel-deepagents-due-diligence/.env.example b/python-recipes/parallel-deepagents-due-diligence/.env.example new file mode 100644 index 0000000..6d72f7a --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/.env.example @@ -0,0 +1,2 @@ +ANTHROPIC_API_KEY=sk-ant-... +PARALLEL_API_KEY=... diff --git a/python-recipes/parallel-deepagents-due-diligence/.gitignore b/python-recipes/parallel-deepagents-due-diligence/.gitignore new file mode 100644 index 0000000..c1f5e69 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/.gitignore @@ -0,0 +1,6 @@ +.venv/ +.env +__pycache__/ +*.pyc +*.log +.ipynb_checkpoints/ diff --git a/python-recipes/parallel-deepagents-due-diligence/README.md b/python-recipes/parallel-deepagents-due-diligence/README.md new file mode 100644 index 0000000..429ea52 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/README.md @@ -0,0 +1,215 @@ +# Due Diligence Agent — Deep Agents + Parallel + +A multi-agent due diligence recipe built on LangChain's Deep Agents harness and Parallel's Task API. Run-time validated on Rivian: 14:36 wall-clock, 10 Task calls, [a 33KB cited memo + 8 supporting workpapers](reports/workpapers/) on disk. + +> One-sentence pitch: a research agent that reasons over its own confidence (Parallel Basis) and chains follow-up queries (`previous_interaction_id`) when a finding is uncertain. + +## What it shows + +- **`ParallelTaskRunTool`** + `parse_basis` — structured per-entity research with per-field citations and calibrated confidence; the wrapper surfaces low-confidence fields explicitly so the subagent's reasoning can decide to chain a follow-up. +- **Deep Agents fan-out pattern** — Phase-2 spawns one `competitor-analysis` subagent instance per competitor identified by `competitive-landscape`, demonstrating the canonical "N parallel investigations of the same subagent type" pattern in deepagents. +- **Disk-backed `FilesystemBackend`** — every workpaper and the synthesized memo persist to `./reports/workpapers/` so the artifact is auditable, not ephemeral. +- **`ParallelWebSearchTool`** as orchestrator's quick-lookup for ad-hoc cross-reference verification. + +Most research agents do one search, take what they get, and move on. This recipe shows a different pattern: an agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain. Deep Agents handles orchestration — planning, subagent delegation, virtual filesystem. Parallel's Task API returns structured findings with per-field citations and calibrated confidence via Basis. Parallel's `previous_interaction_id` lets the agent pick up where a prior query left off — context preserved, follow-up question added. + +The worked example is **company due diligence**: take a target, investigate it across five dimensions in parallel, produce a structured report where every claim has a source trail. DD shows up in PE deal screening, credit underwriting, KYB onboarding, M&A target evaluation, and vendor risk. But the pattern underneath — typed-output research with confidence-driven follow-ups — works for any multi-source research task: newsletter prep, lead generation, comparison shopping, market sizing, candidate background checks. Swap the subagents and you have a different agent. + +## Overview + +The agent runs in three phases — Phase 2 fans out a per-competitor subagent, which is where the Deep Agents harness's context-isolation pattern earns its keep. + +**Phase 1** — five subagents run in parallel: + +- **Corporate profile** — legal entity structure, key officers, founding history, headcount, office locations. +- **Financial health** — funding history, revenue signals, valuation indicators, profitability markers. +- **Litigation and regulatory** — lawsuits, SEC filings, sanctions screening, regulatory actions, settlements. +- **News and reputation** — recent press coverage, leadership changes, controversy flags, media sentiment. +- **Competitive landscape** — identifies the target's top 3–5 competitors and positioning. Does NOT investigate each competitor — that's Phase 2. + +**Phase 2 — competitor fan-out**: once `competitive-landscape` returns the named list, the orchestrator dispatches a separate `competitor-analysis` subagent **once per competitor**, in parallel. Each instance runs in its own isolated context, produces a focused profile of that competitor (corporate snapshot, revenue, positioning vs. the target, recent strategic moves, strengths/weaknesses), and writes to its own `competitor-.md` workpaper. This is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations. + +**Phase 3** — the orchestrator reads every workpaper (the five Phase-1 files plus all `competitor-.md` files), cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via `ParallelWebSearchTool` where needed, and synthesizes the final memo with a comparative competitor section. + +DD requires this multi-step architecture because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, financial analysis covers the parent. If `competitive-landscape` returns 4 competitors, Phase 2 spawns 4 parallel investigations rather than packing everything into one mega-call. Deep Agents' `write_todos` planner sequences this naturally. + +Each research call uses a `core-fast` processor Task API call by default. A typical run completes in **15–25 minutes** including the per-competitor fan-out. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. + +## Run it + +```bash +# Using uv (recommended) +uv venv +uv pip install -r requirements.txt + +cp .env.example .env # then fill in your keys + +uv run python agent.py "Rivian Automotive" +``` + +Stream progress in real time: + +```python +from agent import stream + +stream("Rivian Automotive") +``` + +Or interactively in the [notebook](due_diligence.ipynb). + +To run inside LangGraph dev server: + +```bash +uv run langgraph dev +``` + +The provided `langgraph.json` exposes the agent under the graph id `due_diligence`. + +## How it works + +### The `research_task` tool + +Every subagent calls a single tool that wraps Parallel's Task API and surfaces Basis metadata for the agent to reason over: + +```python +from langchain_core.tools import tool +from langchain_parallel import ParallelTaskRunTool, parse_basis + +@tool +def research_task(query: str, output_description: str, previous_interaction_id: str | None = None) -> dict: + """Run structured web research via Parallel's Task API. + + Returns findings with per-field citations and confidence scores (Basis). + Use previous_interaction_id to chain follow-up queries that build on + prior research context. + """ + runner = ParallelTaskRunTool( + processor="core-fast", + task_output_schema=output_description, + ) + invoke_args: dict = {"input": query} + if previous_interaction_id: + invoke_args["previous_interaction_id"] = previous_interaction_id + + result = runner.invoke(invoke_args) + parsed = parse_basis(result) + + output = result["output"] + findings = output.get("content") if isinstance(output, dict) else output + + response: dict = { + "findings": findings, + "citations_by_field": parsed["citations_by_field"], + "interaction_id": parsed["interaction_id"], + } + if parsed["low_confidence_fields"]: + response["low_confidence_warning"] = ( + "These fields came back with low confidence and should be verified, " + "ideally by chaining a follow-up query with previous_interaction_id: " + + ", ".join(parsed["low_confidence_fields"]) + ) + return response +``` + +The wrapper does three things on top of the SDK call: + +1. **Routes** through `ParallelTaskRunTool` — agent-friendly invocation that blocks until the Task completes and returns the structured result. +2. **Parses Basis** via `parse_basis`, which extracts `citations_by_field` and `low_confidence_fields` from the result. +3. **Surfaces a warning** when any field came back at low confidence, so the subagent's reasoning can decide to chain a follow-up query using the returned `interaction_id`. + +This is the canonical "use the SDK + Basis" pattern. It's small enough to read in one screen and copy into other agents. + +### Subagents and the orchestrator + +Each subagent gets a focused system prompt and the `research_task` tool. See [`agent.py`](agent.py) for the full prompts; here is the shape of one: + +```python +from deepagents import create_deep_agent + +corporate_profile_subagent = { + "name": "corporate-profile", + "description": "Research corporate structure, leadership, founding history, and headcount", + "system_prompt": """You are a corporate research analyst. + +Use the research_task tool to find: legal entity name, current CEO and key +executives, headquarters, employee headcount, corporate structure... + +If the result includes a low_confidence_warning, run a follow-up query using +the returned interaction_id to verify the flagged fields specifically.""", + "tools": [research_task], +} +``` + +The orchestrator uses Deep Agents' built-in `write_todos` planner, the `task` tool to dispatch subagents in parallel, the virtual filesystem to read each subagent's workpaper, and `ParallelWebSearchTool` for ad-hoc lookups when contradictions surface. It synthesizes the final report with explicit confidence-and-verification notes and a list of risk flags requiring further investigation. + +```python +agent = create_deep_agent( + model="anthropic:claude-sonnet-4-6", + tools=[quick_search], + subagents=[ + corporate_profile_subagent, + financial_health_subagent, + litigation_subagent, + news_reputation_subagent, + competitive_landscape_subagent, + ], + system_prompt=DILIGENCE_INSTRUCTIONS, +) +``` + +## Cost and latency + +A typical full run produces 25–40 Task API calls — five Phase-1 tracks (with chained follow-ups on low-confidence findings), plus one fan-out per competitor in Phase 2 (3–5 competitors × ~3 calls each). The Rivian sample in [`sample_output_rivian.md`](sample_output_rivian.md) was generated at the default `core-fast` tier. + +| Tier | Per-run estimate | When to use | +|---|---|---| +| `core-fast` per subagent (default) | ~$0.75–1.50, ~15–25 min | Standard DD draft — agent-loop friendly latency | +| `core` per subagent | ~$1–2, ~25–40 min | Deeper non-`-fast` variant of `core` | +| Tier-up to `pro-fast` | ~$3–6, ~25–45 min | Higher-stakes DD with richer reasoning per track | +| Tier-up to `ultra` | ~$30–80, 90–180 min | Investment-committee-grade output | + +Update the `processor` argument inside `research_task` to switch tiers, or override per-subagent if some tracks (e.g. financial-health) warrant more depth than others. The `-fast` variants of any tier are 2–5× faster at similar accuracy and are the right pick for agent-in-the-loop interaction; drop the `-fast` suffix when you want maximum quality and don't mind waiting. + +The agent uses a **disk-backed filesystem** (`FilesystemBackend(root_dir="./reports", virtual_mode=True)`) so workpapers and the long-form memo are written to your local filesystem during the run. After a run completes you'll find: + +``` +reports/ +└── workpapers/ + ├── corporate-profile.md + ├── financial-health.md + ├── litigation-regulatory.md + ├── news-reputation.md + ├── competitive-landscape.md + ├── competitor-.md (one per competitor — Phase 2 fan-out) + └── rivian-due-diligence-report.md (the full ~30KB synthesized memo) +``` + +The orchestrator's final assistant message (saved to `sample_output_rivian.md` by the runner) is a structured executive summary. The same-named file inside `reports/workpapers/` is the long-form memo with full per-section detail, inline source URLs, and references to every workpaper. + +## Adapting the agent + +The pattern doesn't care about the domain. Swap the five DD tracks for whatever you actually research: + +- **Newsletter prep:** topic-survey / contrarian-views / primary-sources / open-questions subagents. +- **Lead generation:** company-overview / decision-maker / recent-signals / outreach-hook subagents. +- **Comparison shopping:** product-spec / price-and-availability / review-summary / shipping subagents. +- **Market sizing:** TAM / competitor-landscape / growth-drivers / regulatory-tailwinds subagents. +- **Candidate research:** background / public-work / network / red-flags subagents. +- **Compliance / KYB:** beneficial-ownership / sanctions / litigation / PEP-screening subagents. +- **M&A target screening:** add an IP-portfolio subagent to the DD set. +- **VC sourcing:** swap financial-health for founder-and-team. + +Each track is another subagent dict with a system prompt and the same `research_task` tool. The orchestrator's `write_todos` planner adapts automatically — no new infrastructure needed. + +## Caveats + +This agent produces a **draft** for human review, not a final memo. Web sources can be incomplete, outdated, or conflicting. Every Parallel-sourced field carries a citation and a confidence score; the orchestrator surfaces low-confidence findings explicitly. **Use them.** Treat the output as a senior analyst's prep, not as decision-grade output. + +## Resources + +- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) +- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart) +- [Parallel Basis and Citations](https://docs.parallel.ai/task-api/guides/basis) +- [Parallel Interactive Research](https://docs.parallel.ai/task-api/guides/interactions) +- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) +- [Get a Parallel API key](https://platform.parallel.ai) diff --git a/python-recipes/parallel-deepagents-due-diligence/agent.py b/python-recipes/parallel-deepagents-due-diligence/agent.py new file mode 100644 index 0000000..c32d3d1 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/agent.py @@ -0,0 +1,410 @@ +"""Company due diligence agent built on Deep Agents and Parallel. + +The orchestrator plans the diligence as a TODO list, dispatches five research +subagents to work in parallel, reviews each subagent's findings (including +explicit low-confidence warnings surfaced by Parallel's Basis), runs targeted +follow-up queries when needed, and synthesizes a citation-grade DD memo. + +Run: + export ANTHROPIC_API_KEY="..." + export PARALLEL_API_KEY="..." + uv run python agent.py +""" + +from __future__ import annotations + +from pathlib import Path +from typing import Optional + +from deepagents import create_deep_agent +from deepagents.backends.filesystem import FilesystemBackend +from langchain_core.tools import tool +from langchain_parallel import ( + ParallelTaskRunTool, + ParallelWebSearchTool, + parse_basis, +) + + +# Default target company for the example run. Override by passing a different +# name to ``run(target)`` / ``stream(target)`` or via the CLI. +TARGET_COMPANY = "Rivian Automotive" + +# Where the agent writes per-subagent workpapers and the final memo. The +# orchestrator and subagents call write_file / read_file against this root. +# Defaults to ./reports/ relative to this file. +REPORTS_DIR = Path(__file__).parent / "reports" +REPORTS_DIR.mkdir(parents=True, exist_ok=True) + + +# --------------------------------------------------------------------------- +# Tools +# --------------------------------------------------------------------------- + + +@tool +def research_task( + query: str, + output_description: str, + previous_interaction_id: Optional[str] = None, +) -> dict: + """Run structured web research via Parallel's Task API. + + Returns findings with per-field citations and confidence scores (Basis). + Use ``previous_interaction_id`` to chain a follow-up query that builds on + a prior research session — useful when an earlier result surfaces a + ``low_confidence_warning`` and you want to dig deeper on flagged fields. + + Args: + query: The research question or company name. + output_description: A natural-language description of the structured + information you want returned. Be specific — list fields. + previous_interaction_id: Chain onto a previous research session. + Pass the ``interaction_id`` from a prior ``research_task`` result. + + Returns: + Dict with: + - ``findings``: structured output content from the Task API. + - ``citations_by_field``: per-field source citations. + - ``interaction_id``: chain this into a follow-up via + ``previous_interaction_id``. + - ``low_confidence_warning`` (optional): present only when one or + more fields came back at confidence == "low". The agent should + consider chaining a follow-up to verify those specific fields. + """ + runner = ParallelTaskRunTool( + processor="core-fast", + task_output_schema=output_description, + ) + invoke_args: dict = {"input": query} + if previous_interaction_id: + invoke_args["previous_interaction_id"] = previous_interaction_id + + result = runner.invoke(invoke_args) + parsed = parse_basis(result) + + output = result["output"] + findings = output.get("content") if isinstance(output, dict) else output + + response: dict = { + "findings": findings, + "citations_by_field": parsed["citations_by_field"], + "interaction_id": parsed["interaction_id"], + } + if parsed["low_confidence_fields"]: + response["low_confidence_warning"] = ( + "These fields came back with low confidence and should be " + "verified, ideally by chaining a follow-up query with " + "previous_interaction_id: " + + ", ".join(parsed["low_confidence_fields"]) + ) + return response + + +quick_search = ParallelWebSearchTool() + + +# --------------------------------------------------------------------------- +# Subagents +# --------------------------------------------------------------------------- + + +corporate_profile_subagent = { + "name": "corporate-profile", + "description": ( + "Research corporate structure, leadership, founding history, " + "and headcount for the target company." + ), + "system_prompt": """You are a corporate research analyst. + +**Budget: 1 research_task call, plus at most 1 chained follow-up if and +only if the first result included a low_confidence_warning on an +important field.** Do not make additional discretionary queries. + +Make a single research_task call requesting all of these fields in one +output_description: +- Legal entity name, incorporation jurisdiction, founding date +- Current CEO and key executives (names, titles, approximate tenure) +- Headquarters location and major office locations +- Employee headcount (current and recent trend) +- Corporate structure (parent company, major subsidiaries) + +If a low_confidence_warning surfaces, optionally chain a single follow-up +using previous_interaction_id to verify the flagged fields. + +Write your findings (including citations_by_field) to corporate-profile.md.""", + "tools": [research_task], +} + +financial_health_subagent = { + "name": "financial-health", + "description": ( + "Research funding history, revenue signals, and financial indicators " + "for the target company." + ), + "system_prompt": """You are a financial research analyst. + +**Budget: 1 research_task call, plus at most 1 chained follow-up if and +only if a critical financial field comes back at low confidence.** Do +not make additional discretionary queries. + +Make a single research_task call requesting all of these fields: +- Funding history (rounds, amounts, lead investors, dates) +- Revenue estimates or reported revenue figures +- Valuation indicators (last known valuation, public market cap if applicable) +- Profitability signals (profitable, pre-revenue, burn rate indicators) +- Key financial partnerships or banking relationships + +For private companies, clearly distinguish estimates from confirmed figures. + +If the low_confidence_warning flags a critical financial field (revenue, +funding, profitability), optionally chain one follow-up using the +interaction_id. + +Write findings and citations to financial-health.md.""", + "tools": [research_task], +} + +litigation_subagent = { + "name": "litigation-regulatory", + "description": ( + "Research lawsuits, regulatory actions, SEC filings, and sanctions " + "exposure for the target company." + ), + "system_prompt": """You are a legal and compliance research analyst. + +**Budget: 1 research_task call, plus at most 1 chained follow-up if a +significant litigation item warrants deeper investigation.** Do not make +additional discretionary queries. + +Make a single research_task call requesting all of these fields: +- Active or recent lawsuits (as plaintiff or defendant) +- SEC filings, enforcement actions, or investigations +- Regulatory actions from any government body +- Sanctions screening results (OFAC, EU, UN sanctions lists) +- History of fines, consent decrees, or settlements + +Flag anything that would require escalation in a standard KYC/EDD review. +If a significant litigation item surfaces (active securities class action, +regulatory enforcement action, sanctions designation), optionally chain +one follow-up using interaction_id for more detail on that specific item. + +Write findings and citations to litigation-regulatory.md.""", + "tools": [research_task], +} + +news_reputation_subagent = { + "name": "news-reputation", + "description": ( + "Research recent press coverage, sentiment, and controversy flags " + "for the target company." + ), + "system_prompt": """You are a media intelligence analyst. + +**Budget: 1 research_task call. No follow-ups unless explicitly required +for a verifiable controversy.** Do not make additional discretionary +queries. + +Make a single research_task call requesting all of these fields: +- Major press coverage from the last 12 months +- Leadership changes or executive departures +- Product launches, pivots, or strategic shifts +- Controversy, scandal, or negative press patterns +- Overall media sentiment (positive, neutral, negative) + +Distinguish between isolated incidents and patterns. + +Write findings and citations to news-reputation.md.""", + "tools": [research_task], +} + +competitive_landscape_subagent = { + "name": "competitive-landscape", + "description": ( + "Identify the target's top 3-5 direct competitors and the company's " + "market positioning. Returns a competitor list that the orchestrator " + "fans out for per-competitor investigation." + ), + "system_prompt": """You are a market intelligence analyst. + +**Budget: exactly 1 research_task call. No follow-ups, no additional +queries.** Your only job here is to identify the named competitors and +the target's positioning — the orchestrator will fan out per-competitor +analysis separately. + +Make a single research_task call requesting these fields: +- Top 3 direct competitors of the target (exactly 3, named, with one-line context each) +- Target's market positioning and key differentiators +- Industry-wide market-share or ranking signals +- One-paragraph industry analyst summary of the target's competitive standing + +You are NOT responsible for deep per-competitor profiles — the orchestrator +will fan out a separate competitor-analysis subagent for each of the 3 +competitors you identify. + +Write findings to competitive-landscape.md. Make sure the file contains a +clearly-labeled "## Competitors" section with EXACTLY 3 named bullets so +the orchestrator can parse them.""", + "tools": [research_task], +} + +competitor_analysis_subagent = { + "name": "competitor-analysis", + "description": ( + "Produce a focused profile of one named competitor — used as a " + "fan-out subagent invoked once per competitor identified by " + "competitive-landscape." + ), + "system_prompt": """You are a competitive intelligence researcher +investigating ONE competitor company at a time. + +**Budget: exactly 1 research_task call. No follow-ups, no additional +queries.** Pack everything you need into one well-scoped output_description. + +The orchestrator will pass you a single competitor name and the original +DD target name. Make ONE research_task call requesting all of: +- Brief corporate snapshot (HQ, public/private, headcount, founding year) +- Most recent revenue and growth signals (estimated if private) +- Funding or market cap status (last raise / current cap) +- Product / positioning vs. the original DD target (one paragraph) +- Recent strategic moves in the last 12 months +- Notable strengths and weaknesses relative to the target + +Write your findings to a file named competitor-.md, where +is the competitor's name lowercased and hyphenated (e.g. +"competitor-tesla.md", "competitor-ford-motor.md"). One file per +competitor — the orchestrator will read all of them when synthesizing +the comparative section.""", + "tools": [research_task], +} + + +# --------------------------------------------------------------------------- +# Orchestrator +# --------------------------------------------------------------------------- + + +DILIGENCE_INSTRUCTIONS = """\ +You are a senior due diligence analyst managing a team of specialized +researchers. Your job is to produce a comprehensive company intelligence +report where every claim has a verifiable source trail. + +## Process + +1. **Plan**: Use write_todos to lay out the diligence. Phase 1 dispatches + five subagents in parallel. Phase 2 fans out per-competitor analysis. + Phase 3 synthesizes the final memo. + +2. **Phase 1 — parallel research**: Use the task tool to dispatch + corporate-profile, financial-health, litigation-regulatory, + news-reputation, and competitive-landscape concurrently. Pass the + target company name to each. + +3. **Phase 2 — competitor fan-out**: After competitive-landscape completes, + read competitive-landscape.md and parse the **exactly 3** named + competitors. For EACH of the 3 competitors, dispatch a separate + competitor-analysis subagent instance via the task tool — pass the + competitor's name and the original DD target name. Dispatch all 3 in + parallel; each investigation runs in its own isolated context. Each + competitor subagent writes its findings to its own + competitor-.md file. **Do not dispatch competitor-analysis for + any competitor not on the list — exactly 3 instances total.** + +4. **Review and cross-reference**: Read every workpaper file + (corporate-profile.md, financial-health.md, litigation-regulatory.md, + news-reputation.md, competitive-landscape.md, and every + competitor-.md). Look for: + - Contradictions across tracks (funding info conflicts with corporate + structure, news contradicts official statements). + - Low-confidence findings flagged by the research tool. + - Gaps where information was unavailable. + Use the parallel_web_search tool for ad-hoc lookups when investigating + discrepancies. + +5. **Phase 3 — synthesize the report** with these sections: + - Executive summary (2-3 paragraphs with overall risk assessment). + - Corporate profile. + - Financial overview. + - Litigation and regulatory risk assessment. + - News and reputation analysis. + - Competitive landscape — start with the target's positioning, then + include a per-competitor sub-section (one paragraph each) drawing + from each competitor-.md workpaper. Compare each competitor's + strengths and weaknesses to the target. + - Confidence and verification notes (list any medium/low confidence + findings and their source citations so a reviewer can verify). + - Key risk flags and areas requiring further investigation. + +## Citation and confidence guidelines + +- Include source URLs from the citations data for key claims. +- Call out any finding where confidence was low. These need human verification. +- If two tracks produced contradictory information, note the discrepancy + explicitly and include citations from both sources. +- This report is a draft for human review, not a final memo. +""" + + +agent = create_deep_agent( + model="anthropic:claude-sonnet-4-6", + tools=[quick_search], + subagents=[ + corporate_profile_subagent, + financial_health_subagent, + litigation_subagent, + news_reputation_subagent, + competitive_landscape_subagent, + competitor_analysis_subagent, + ], + system_prompt=DILIGENCE_INSTRUCTIONS, + backend=FilesystemBackend(root_dir=REPORTS_DIR, virtual_mode=True), +) + + +# --------------------------------------------------------------------------- +# Convenience runner +# --------------------------------------------------------------------------- + + +def run(target: str = TARGET_COMPANY) -> str: + """Run a full DD report on the target company. Returns the final memo.""" + result = agent.invoke( + { + "messages": [ + { + "role": "user", + "content": f"Conduct a full due diligence report on {target}.", + } + ] + } + ) + return result["messages"][-1].content + + +def stream(target: str = TARGET_COMPANY) -> None: + """Stream the agent's progress to stdout. Useful for long-running runs.""" + for chunk in agent.stream( + { + "messages": [ + { + "role": "user", + "content": f"Conduct a full due diligence report on {target}.", + } + ] + }, + stream_mode="updates", + subgraphs=True, + version="v2", + ): + if chunk.get("type") == "updates": + source = ( + f"[subagent: {chunk['ns']}]" if chunk.get("ns") else "[orchestrator]" + ) + print(f"{source} {chunk.get('data')}") + + +if __name__ == "__main__": + import sys + + target = sys.argv[1] if len(sys.argv) > 1 else TARGET_COMPANY + print(run(target)) diff --git a/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb b/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb new file mode 100644 index 0000000..1ea4f67 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb @@ -0,0 +1,279 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Due Diligence Agent \u2014 Deep Agents + Parallel\n", + "\n", + "A research agent that reasons over its own confidence and chains follow-up queries when it isn't sure.\n", + "\n", + "This notebook walks through the recipe end-to-end. The same code lives in `agent.py` so you can import it as a module or run it from the command line.\n", + "\n", + "## Setup\n", + "\n", + "```bash\n", + "uv venv\n", + "uv pip install -r requirements.txt\n", + "cp .env.example .env # then fill in your keys\n", + "```\n", + "\n", + "Make sure `ANTHROPIC_API_KEY` and `PARALLEL_API_KEY` are set in your environment before running the cells below. Get a Parallel key at [platform.parallel.ai](https://platform.parallel.ai)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import os\n", + "\n", + "assert os.environ.get(\"ANTHROPIC_API_KEY\"), \"ANTHROPIC_API_KEY not set\"\n", + "assert os.environ.get(\"PARALLEL_API_KEY\"), \"PARALLEL_API_KEY not set\"" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 1. The `research_task` tool\n", + "\n", + "Every subagent calls a single tool that wraps Parallel's Task API and surfaces Basis metadata for the agent to reason over.\n", + "\n", + "The wrapper does three things on top of `ParallelTaskRunTool`:\n", + "\n", + "1. Routes the call through the SDK with the per-call output description.\n", + "2. Calls `parse_basis(result)` from `langchain-parallel` to extract `citations_by_field` and `low_confidence_fields`.\n", + "3. Surfaces a `low_confidence_warning` string when any field came back at low confidence, so the subagent can decide to chain a follow-up query using the returned `interaction_id`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from typing import Optional\n", + "\n", + "from langchain_core.tools import tool\n", + "from langchain_parallel import ParallelTaskRunTool, parse_basis\n", + "\n", + "\n", + "@tool\n", + "def research_task(\n", + " query: str,\n", + " output_description: str,\n", + " previous_interaction_id: Optional[str] = None,\n", + ") -> dict:\n", + " \"\"\"Run structured web research via Parallel's Task API.\n", + "\n", + " Returns findings with per-field citations and confidence scores (Basis).\n", + " Use ``previous_interaction_id`` to chain a follow-up query that builds\n", + " on a prior research session.\n", + " \"\"\"\n", + " runner = ParallelTaskRunTool(\n", + " processor=\"core-fast\",\n", + " task_output_schema=output_description,\n", + " )\n", + " invoke_args: dict = {\"input\": query}\n", + " if previous_interaction_id:\n", + " invoke_args[\"previous_interaction_id\"] = previous_interaction_id\n", + "\n", + " result = runner.invoke(invoke_args)\n", + " parsed = parse_basis(result)\n", + "\n", + " output = result[\"output\"]\n", + " findings = output.get(\"content\") if isinstance(output, dict) else output\n", + "\n", + " response: dict = {\n", + " \"findings\": findings,\n", + " \"citations_by_field\": parsed[\"citations_by_field\"],\n", + " \"interaction_id\": parsed[\"interaction_id\"],\n", + " }\n", + " if parsed[\"low_confidence_fields\"]:\n", + " response[\"low_confidence_warning\"] = (\n", + " \"These fields came back with low confidence and should be \"\n", + " \"verified, ideally by chaining a follow-up query with \"\n", + " \"previous_interaction_id: \"\n", + " + \", \".join(parsed[\"low_confidence_fields\"])\n", + " )\n", + " return response" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Quick smoke test\n", + "\n", + "Try the tool on a small structured query before wiring it into the agent. Expect a response with `findings`, `citations_by_field`, and `interaction_id`." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "result = research_task.invoke({\n", + " \"query\": \"Rivian Automotive founding year and current CEO\",\n", + " \"output_description\": \"founding_year (int), current_ceo (str)\",\n", + "})\n", + "\n", + "print(\"findings:\", result[\"findings\"])\n", + "print(\"interaction_id:\", result[\"interaction_id\"])\n", + "print(\"fields with citations:\", list(result.get(\"citations_by_field\", {}).keys()))\n", + "if \"low_confidence_warning\" in result:\n", + " print(\"warning:\", result[\"low_confidence_warning\"])" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 2. Define the subagents\n", + "\n", + "Five tracks, each with a focused system prompt and the same `research_task` tool. Each subagent runs in an isolated context, so the orchestrator's window stays clean while each track can dig deep on its slice." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from agent import (\n", + " corporate_profile_subagent,\n", + " financial_health_subagent,\n", + " litigation_subagent,\n", + " news_reputation_subagent,\n", + " competitive_landscape_subagent,\n", + ")\n", + "\n", + "for sa in [\n", + " corporate_profile_subagent,\n", + " financial_health_subagent,\n", + " litigation_subagent,\n", + " news_reputation_subagent,\n", + " competitive_landscape_subagent,\n", + "]:\n", + " print(f\"- {sa['name']}: {sa['description']}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 3. Construct the orchestrator\n", + "\n", + "The orchestrator uses Deep Agents' built-in `write_todos` planner, the `task` tool to dispatch subagents in parallel, the virtual filesystem to read each subagent's workpaper, and `ParallelWebSearchTool` for ad-hoc lookups when contradictions surface." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "from agent import agent\n", + "\n", + "type(agent).__name__" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 4. Run a full DD on Rivian\n", + "\n", + "Expect a ~15-25 minute run at the default `core-fast` processor. The agent runs in three phases:\n", + "\n", + "1. **Phase 1** \u2014 `write_todos` plans the diligence; the five subagents dispatch in parallel (corporate, financial, litigation, news, competitive-landscape).\n", + "2. **Phase 2 \u2014 competitor fan-out** \u2014 `competitive-landscape` returns 3 named competitors. The orchestrator dispatches a separate `competitor-analysis` subagent for **each** competitor, in parallel. This is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations.\n", + "3. **Phase 3** \u2014 orchestrator reads every workpaper (5 Phase-1 files + 3 competitor files), cross-references contradictions, and synthesizes the final memo with a comparative competitor section.\n", + "\n", + "Cost at default `core-fast` tier: ~$0.75-1.50 per run (~10-15 Task API calls including chained follow-ups and the 3 fan-out instances)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "result = agent.invoke({\n", + " \"messages\": [{\n", + " \"role\": \"user\",\n", + " \"content\": \"Conduct a full due diligence report on Rivian Automotive.\"\n", + " }]\n", + "})\n", + "\n", + "print(result[\"messages\"][-1].content)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 5. Stream a run on a different target\n", + "\n", + "For long runs, stream to see planning, tool calls, subagent activity, and the per-competitor fan-out in real time. `subgraphs=True` surfaces events from inside subagent execution." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "for chunk in agent.stream(\n", + " {\n", + " \"messages\": [{\n", + " \"role\": \"user\",\n", + " \"content\": \"Conduct a full due diligence report on Anduril Industries.\"\n", + " }]\n", + " },\n", + " stream_mode=\"updates\",\n", + " subgraphs=True,\n", + " version=\"v2\",\n", + "):\n", + " if chunk.get(\"type\") == \"updates\":\n", + " source = (\n", + " f\"[subagent: {chunk['ns']}]\" if chunk.get(\"ns\") else \"[orchestrator]\"\n", + " )\n", + " print(f\"{source} {chunk.get('data')}\")" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## 6. Adapt the agent\n", + "\n", + "The pattern doesn't care about the domain. Swap the five DD tracks for whatever you actually research:\n", + "\n", + "- **Newsletter prep:** topic-survey / contrarian-views / primary-sources / open-questions subagents.\n", + "- **Lead generation:** company-overview / decision-maker / recent-signals / outreach-hook subagents.\n", + "- **Comparison shopping:** product-spec / price-and-availability / review-summary / shipping subagents.\n", + "- **Market sizing:** TAM / competitor-landscape / growth-drivers / regulatory-tailwinds subagents.\n", + "- **Candidate research:** background / public-work / network / red-flags subagents.\n", + "\n", + "Each track is another subagent dict with a system prompt and the same `research_task` tool." + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "name": "python", + "version": "3.12" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} \ No newline at end of file diff --git a/python-recipes/parallel-deepagents-due-diligence/langgraph.json b/python-recipes/parallel-deepagents-due-diligence/langgraph.json new file mode 100644 index 0000000..2b1bc94 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/langgraph.json @@ -0,0 +1,7 @@ +{ + "dependencies": ["."], + "graphs": { + "due_diligence": "./agent.py:agent" + }, + "env": ".env" +} diff --git a/python-recipes/parallel-deepagents-due-diligence/pyproject.toml b/python-recipes/parallel-deepagents-due-diligence/pyproject.toml new file mode 100644 index 0000000..4db2347 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/pyproject.toml @@ -0,0 +1,15 @@ +[project] +name = "deepagents-due-diligence" +version = "0.1.0" +description = "Company due diligence agent built on Deep Agents and Parallel." +requires-python = ">=3.11" +dependencies = [ + "deepagents>=0.5.3", + "langchain-parallel>=0.4.0", + "langchain-anthropic>=0.3.0", + "parallel-web>=0.1.0", + "pydantic>=2.0", +] + +[tool.uv] +package = false diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md new file mode 100644 index 0000000..344d0f7 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md @@ -0,0 +1,145 @@ +# Competitive Landscape: Rivian Automotive +> **Prepared by:** Market Intelligence Analyst +> **Date:** 2025 +> **Scope:** Electric trucks, SUVs, and commercial vans + +--- + +## Table of Contents +1. [Rivian Market Positioning & Key Differentiators](#rivian-market-positioning--key-differentiators) +2. [Competitors](#competitors) +3. [Market Share & Industry Ranking Signals](#market-share--industry-ranking-signals) +4. [Industry Analyst Summary](#industry-analyst-summary) +5. [Sources](#sources) + +--- + +## Rivian Market Positioning & Key Differentiators + +Rivian Automotive positions itself as a **premium, adventure-focused electric vehicle company** targeting outdoor enthusiasts and sustainability-minded consumers. Unlike legacy OEMs that are electrifying existing combustion-engine lineups, Rivian was built EV-native from the ground up. + +### Core Product Lineup +| Product | Segment | Notes | +|---------|---------|-------| +| **R1T** | Electric pickup truck | Launched 2021; adventure-oriented with gear tunnel, wading capability | +| **R1S** | Electric SUV | One of the largest-range electric SUVs on the market | +| **EDV (Electric Delivery Van)** | Commercial last-mile delivery | Co-designed with Amazon; 100,000-unit order anchor | + +### Key Differentiators & Competitive Moat + +1. **Adventure/Outdoor Lifestyle Brand** — Rivian's brand identity is uniquely tied to outdoor recreation and rugged adventure use, differentiating it from Tesla's tech-luxury positioning and Ford's work-truck heritage. The R1T and R1S are engineered for off-road capability (multi-motor quad setups, air suspension, water fording) that few EV competitors can match. + +2. **Amazon Strategic Partnership** — A landmark 100,000-vehicle commercial delivery van contract with Amazon (the largest commercial EV order at its time) provides Rivian with predictable manufacturing volume, cash flow visibility, and a real-world proving ground for its commercial van platform. Amazon also holds an equity stake in Rivian, deepening the alignment. By mid-2025, Amazon had over 30,000 Rivian EDVs in service, which delivered over 1 billion packages in 2024. + +3. **Vertical Integration & Software Stack** — Rivian owns its technology stack including battery management, over-the-air (OTA) software updates, and vehicle control systems — reducing dependence on third-party suppliers and enabling continuous feature deployment post-sale. + +4. **Purpose-Built EV Architecture** — The "skateboard" platform is EV-native, offering packaging advantages (flat floor, front trunk, gear tunnel) that legacy OEM conversions cannot easily replicate. + +5. **Charging Network (Rivian Adventure Network)** — Rivian operates its own DC fast-charging network focused on adventure-route corridors, complemented by access to adapter networks, reducing range-anxiety for long-haul outdoor trips. + +**Sources:** +- Rivian official site: https://rivian.com +- Amazon EDV story: https://stories.rivian.com/amazon-electric-delivery-vehicle +- Amazon fleet overview: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian +- Rivian EDV (Wikipedia): https://en.wikipedia.org/wiki/Rivian_EDV + +--- + +## Competitors + +> ⚠️ **Parser Note:** The three competitors below are listed with `###` subheadings for programmatic identification. Each is a direct competitor in the electric truck, SUV, and/or commercial van segments. + +--- + +### Competitor 1: Tesla + +**Company:** Tesla, Inc. +**Website:** https://www.tesla.com + +**Description:** Tesla is the world's leading pure-play electric vehicle manufacturer, offering a broad lineup of EVs ranging from mass-market sedans to the Cybertruck pickup and Model X SUV. Tesla commands the largest EV market share in the United States and globally. + +**Why a Direct Competitor to Rivian:** +Tesla competes with Rivian on multiple fronts simultaneously: +- The **Cybertruck** directly targets the electric pickup segment where the R1T competes, with overlapping buyers seeking a tech-forward, performance-oriented EV truck. +- The **Model X** SUV competes with the R1S in the premium electric SUV space. +- Tesla's **Supercharger network** and software ecosystem are benchmarks that Rivian must match in charging reliability and OTA software updates. +- Both companies compete for the same premium EV buyer demographic and Wall Street growth capital. +- Tesla's Cybertruck, launched in 2023, represents the most direct head-to-head product rivalry in terms of segment, price tier, and target customer profile. + +--- + +### Competitor 2: Ford Motor Company (F-150 Lightning & E-Transit) + +**Company:** Ford Motor Company +**Website:** https://www.ford.com + +**Description:** Ford is a legacy American automaker that has aggressively electrified its most iconic vehicle lines, including the best-selling F-150 Lightning electric pickup truck and the E-Transit commercial delivery van, leveraging its dominant brand recognition in the truck segment. + +**Why a Direct Competitor to Rivian:** +Ford competes with Rivian in both key segments of its business: +- The **F-150 Lightning** is the most direct rival to the R1T — both are full-size electric pickups targeting American truck buyers, offered at comparable price points. The F-150's brand loyalty and dealer network give Ford a powerful distribution advantage. +- The **E-Transit** electric cargo van competes with Rivian's EDV in the commercial last-mile delivery market, pursuing the same fleet operators and logistics companies. +- Ford's scale, dealer footprint, service network, and manufacturing cost structure represent a significant competitive challenge for Rivian as it seeks to grow unit volumes. +- Ford's existing relationships with fleet buyers (the same customers targeted by the EDV program) mean Rivian must continuously demonstrate cost-per-mile and uptime advantages to win and retain commercial accounts. + +--- + +### Competitor 3: Mercedes-Benz (eSprinter & EQ SUV Lineup) + +**Company:** Mercedes-Benz Group AG (formerly Daimler) +**Website:** https://www.daimler.com + +**Description:** Mercedes-Benz is a global premium automaker offering a growing portfolio of electric vehicles, including the **eSprinter** electric commercial van and the **EQ series** of premium electric SUVs (EQS SUV, EQB, EQE SUV), competing across both the commercial delivery and premium SUV segments. + +**Why a Direct Competitor to Rivian:** +Mercedes-Benz overlaps with Rivian across two distinct competitive vectors: +- The **eSprinter** electric van directly competes with Rivian's EDV in the commercial last-mile delivery market, targeting the same fleet operators, logistics companies, and e-commerce delivery networks that Rivian has pursued through its Amazon partnership. +- The **EQ SUV lineup** (particularly the EQS SUV and EQE SUV) competes in the premium electric SUV space where Rivian's R1S plays, attracting similar high-income buyers seeking a premium, technology-forward electric family vehicle. +- Mercedes-Benz's global brand equity, manufacturing scale, and established fleet sales relationships in Europe and North America make it a formidable competitor as Rivian considers international expansion. +- The eSprinter's European commercial van heritage gives Mercedes-Benz a structural advantage with fleet procurement managers who favor established vendors with broad service networks. + +--- + +## Market Share & Industry Ranking Signals + +- **Rivian's overall EV market share** remains relatively small compared to Tesla and major legacy OEMs (Ford, GM, Mercedes-Benz), reflecting its status as a low-volume premium manufacturer still in the production scaling phase. +- **Amazon EDV Fleet:** Amazon grew its Rivian electric delivery van fleet by approximately **50% in 2025**, with over **30,000 Rivian EDVs** in service by mid-2025 — a significant commercial fleet presence that reinforces Rivian's viability in the commercial segment. +- **Package Delivery Scale:** Amazon's Rivian EDV fleet delivered over **1 billion packages in 2024**, demonstrating operational maturity and real-world duty-cycle reliability. +- **Competitive ranking context:** In the electric pickup segment, Ford's F-150 Lightning and Tesla's Cybertruck compete for volume leadership, with Rivian trailing in unit volume but commanding premium positioning and strong brand loyalty among its customer base. + +**Sources:** +- Amazon fleet size & growth (Electrek): https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ +- Amazon EDV packages delivered: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian +- Rivian market share data (CSIMarket, Q4 2025): https://csimarket.com/stocks/competitionSEG2.php?code=RIVN + +--- + +## Industry Analyst Summary + +Rivian occupies a compelling but precarious position in the competitive EV landscape. The company's differentiated brand identity — centered on adventure, premium outdoor utility, and purpose-built EV engineering — gives it a loyal and growing customer base that is difficult for legacy OEMs to fully replicate. The landmark 100,000-unit Amazon EDV contract has been transformative, providing manufacturing volume, revenue visibility, and proof of commercial-grade reliability that few EV startups can claim. Amazon's 50% year-over-year fleet growth in 2025 validates Rivian's execution in the commercial segment. However, industry analysts consistently flag meaningful execution risks: Rivian remains a high-cost, low-volume manufacturer relative to Tesla and Ford, faces ongoing pressure on gross margins, and must accelerate production ramp to achieve the economies of scale needed for long-term profitability. The competitive environment is intensifying, with Tesla's Cybertruck gaining traction, Ford leveraging its F-150 brand dominance, and European commercial van makers like Mercedes-Benz pursuing the same fleet opportunities. Analyst consensus acknowledges Rivian's strategic strengths — the Amazon partnership, the EV-native platform, and the adventure brand moat — while underscoring that sustained execution on manufacturing efficiency, charging infrastructure expansion, and software differentiation will be decisive in determining whether Rivian can grow from niche premium player to durable EV market participant. + +**Sources:** +- Amazon EDV story: https://stories.rivian.com/amazon-electric-delivery-vehicle +- Rivian market share vs. competitors: https://csimarket.com/stocks/competitionSEG2.php?code=RIVN +- Amazon fleet growth 2025: https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ +- Amazon EDV overview: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian + +--- + +## Sources + +| # | Title | URL | +|---|-------|-----| +| 1 | Rivian Official Website | https://rivian.com | +| 2 | Amazon Deliveries, Powered by Rivian | https://stories.rivian.com/amazon-electric-delivery-vehicle | +| 3 | Amazon's Electric Delivery Vans from Rivian — Overview | https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian | +| 4 | Rivian EDV (Wikipedia) | https://en.wikipedia.org/wiki/Rivian_EDV | +| 5 | Amazon grew its Rivian electric delivery van fleet by 50% in 2025 (Electrek) | https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ | +| 6 | RIVN Market Share vs. Competitors, Q4 2025 (CSIMarket) | https://csimarket.com/stocks/competitionSEG2.php?code=RIVN | +| 7 | Tesla Official Website | https://www.tesla.com | +| 8 | Ford Official Website | https://www.ford.com | +| 9 | Mercedes-Benz / Daimler Official Website | https://www.daimler.com | + +--- + +*This document was prepared for orchestrator consumption. The **## Competitors** section contains exactly **3** named competitor entries under `### Competitor 1`, `### Competitor 2`, and `### Competitor 3` subheadings for programmatic parsing.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md new file mode 100644 index 0000000..1b9088e --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md @@ -0,0 +1,221 @@ +# Competitor Profile: Ford Motor Company +### Relevant Product Lines: F-150 Lightning & E-Transit +### Prepared Against: Rivian Automotive (R1T / EDV) +### Research Date: 2025 + +--- + +## 1. Corporate Snapshot + +| Attribute | Detail | +|-----------|--------| +| **Headquarters** | Dearborn, Michigan, USA | +| **Public / Private** | Public — NYSE: **F** | +| **Founded** | 1903 | +| **Total Headcount** | ~180,000 employees (company-wide) | +| **EV Division** | **Ford Model e** — dedicated all-electric segment with its own senior VP reporting directly to the CEO; handles EV development, production, and commercial strategy | + +Ford is the largest U.S.-headquartered incumbent OEM competing directly with Rivian in both the consumer electric pickup and the commercial electric van segments. Its Model e division was carved out specifically to compete in the EV era, though it continues to operate at a substantial loss. + +--- + +## 2. Relevant EV Product Lineup + +### 2a. F-150 Lightning (vs. Rivian R1T) + +| Attribute | F-150 Lightning | Rivian R1T | +|-----------|----------------|------------| +| **Trims** | Pro, XLT, Lariat, Platinum | Dual Standard, Dual Performance, Quad | +| **Starting MSRP** | $42,995 (Pro) | $72,990 (Dual Standard) | +| **Top MSRP** | $90,975 (Platinum) | $117,790 (Quad) | +| **EPA Range** | ~230 mi (Pro / Standard) → ~300 mi (Extended Range) | ~270–410 mi depending on pack | +| **Towing Capacity** | Up to 10,000 lb | Up to 11,000 lb | +| **Payload** | Up to 2,200 lb | Up to 1,760 lb | +| **Drive System** | Dual motor (standard); AWD | Dual or Quad motor; AWD | +| **Positioning** | Work truck / commercial fleet; price-competitive entry | Adventure / lifestyle / premium off-road | + +**Key Differentiation:** The Lightning's base Pro trim starts nearly $30,000 below the cheapest R1T, making it the value leader in electric pickups. Ford targets traditional F-Series loyalists and commercial fleets; Rivian targets outdoor-lifestyle and tech-forward buyers willing to pay a premium for software integration and off-road capability. + +> **Sources:** +> - Ford F-150 Lightning pricing: https://www.fromtheroad.ford.com/us/en/articles/2024/2024-f-150-lightning-orders-open--flash-model-available-under--7 +> - Rivian R1T pricing: https://rivian.com/r1t | https://www.edmunds.com/rivian/r1t/2025/ | https://www.kbb.com/rivian/r1t/2025/ + +--- + +### 2b. E-Transit (vs. Rivian EDV) + +| Attribute | Ford E-Transit | Rivian EDV | +|-----------|---------------|------------| +| **Variants** | Cargo van, Cutaway, Chassis Cab | Custom cargo van (multiple sizes) | +| **EPA Range** | ~126 mi (standard) → ~150 mi (extended range) | ~150 mi (estimated) | +| **Payload** | Up to 4,300 lb (configuration-dependent) | Not publicly disclosed | +| **Starting MSRP** | ~$44,000 (base cargo van) | Not publicly listed; est. $100,000–$120,000/unit for fleet contracts | +| **Target Customer** | Delivery fleets, municipalities, service companies | Amazon-exclusive fleet (initial); logistics operators | +| **Channel** | Ford Pro dealer/fleet network | Direct fleet sales only | + +**Key Differentiation:** The E-Transit is commercially available through Ford's nationwide dealer and Ford Pro fleet network. Rivian's EDV was custom-built around Amazon's specifications and is not broadly commercially available to third-party fleets in the near term, giving Ford a substantial first-mover advantage in accessible electric commercial vans. + +> **Sources:** +> - E-Transit fact sheet: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-pro-fact-sheet-ford-transit-and-e-transit +> - E-Transit Q3 2024 sales: https://fordauthority.com/2024/12/ford-e-transit-sales-numbers-figures-results-third-quarter-2024-q3/ + +--- + +## 3. Production Volumes & Delivery Numbers + +### F-150 Lightning + +| Period | Units | +|--------|-------| +| **2023 Deliveries** | ~24,000 (est. based on quarterly Ford EV reports) | +| **2024 Production Capacity** | Originally ~150,000/yr; **cut ~50%** to ~70,000–80,000 units | +| **2024 Planned Output (Revised)** | ~70,000–80,000 units after production reduction | +| **Manufacturing Site** | Rouge Electric Vehicle Center, Dearborn, MI | + +Ford announced in December 2023 / January 2024 that it was slashing Lightning production roughly in half for 2024 due to softer-than-expected consumer EV demand and high inventory levels at dealerships. + +> **Sources:** +> - https://www.cnbc.com/2023/12/11/f-150-lightning-ford-cuts-2024-production-plans-in-half.html +> - https://www.reuters.com/business/autos-transportation/ford-reduce-f-150-lightning-production-2024-01-19 + +### E-Transit + +| Period | Units | +|--------|-------| +| **Q2 2024 Deliveries** | 828 units | +| **Q3 2024 Deliveries** | 2,955 units (+13% YoY vs. Q3 2023's 2,617 units) | +| **Full-Year 2024 Estimate** | ~3,200–3,500 units (derived from quarterly data) | + +> **Source:** https://fordauthority.com/2024/12/ford-e-transit-sales-numbers-figures-results-third-quarter-2024-q3/ +> | https://insideevs.com/news/725448/ford-us-ev-sales-june2024/ + +### Rivian (Benchmark) + +| Period | Units | +|--------|-------| +| **2024 Production** | 49,476 vehicles | +| **2024 Deliveries** | 51,579 vehicles | + +> **Sources:** +> - https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures +> - https://www.cnbc.com/2025/01/03/rivian-meets-2024-vehicle-production-target.html + +--- + +## 4. Pricing Comparison Summary + +| Vehicle | Base MSRP | Top MSRP | Price Gap vs. Rivian | +|---------|-----------|----------|----------------------| +| **F-150 Lightning Pro** | $42,995 | — | ~$30K *cheaper* than R1T base | +| **F-150 Lightning Platinum** | — | $90,975 | ~$27K *cheaper* than R1T Quad | +| **Rivian R1T (Dual Standard)** | $72,990 | — | — | +| **Rivian R1T (Quad)** | — | $117,790 | — | +| **E-Transit (Cargo Van)** | ~$44,000 | ~$60,000+ | Substantially cheaper than EDV est. | +| **Rivian EDV** | Not disclosed | Not disclosed | Est. $100K–$120K/unit (fleet) | + +**Takeaway:** Ford holds a pronounced price advantage in both segments. The Lightning Pro undercuts the cheapest R1T by roughly $30,000, making it accessible to budget-conscious fleet buyers and individual consumers who may not qualify for the full $7,500 federal EV tax credit on pricier Rivian trims. + +--- + +## 5. Market Share — Electric Trucks & Commercial Vans + +### Electric Pickup Truck Segment (U.S., 2024 Estimate) + +| OEM / Model | Est. Share | +|-------------|-----------| +| **Ford F-150 Lightning** | ~55–60% | +| **Rivian R1T** | ~15% | +| Chevy Silverado EV / GMC Sierra EV | ~10–15% | +| Tesla Cybertruck | ~10–15% | + +Ford is the volume leader in U.S. electric pickups. While Rivian commands a meaningful premium-segment share, Ford's significantly lower pricing and dealer reach give it dominant overall unit volume. + +### Electric Commercial Van Segment (U.S., 2024 Estimate) + +| OEM / Model | Est. Share | +|-------------|-----------| +| **Ford E-Transit** | >70% | +| Rivian EDV | <10% (Amazon-exclusive) | +| Mercedes eSprinter | ~10–15% | +| Others | Remainder | + +Ford's E-Transit has first-mover advantage and broad availability. Rivian's EDV is commercially constrained by its Amazon-exclusive arrangement in the near term. + +> *Note: Market share figures are estimates derived from publicly reported delivery data; official segment-level data is not published by any single authoritative source.* + +--- + +## 6. Financial Strength + +| Metric | Ford (FY 2024) | +|--------|----------------| +| **Total Revenue** | $176.2 billion | +| **Model e Revenue** | $3.9 billion (down 35% YoY) | +| **Model e EBIT Loss** | **$(5.076) billion** | +| **EV Investment Commitment** | $30 billion through 2026 | +| **Cash & Marketable Securities** | ~$30 billion | +| **Credit Rating** | ~A / A+ range (Moody's / S&P) | + +Ford's EV division is losing money at a rate of over $5 billion per year — roughly **$50,000+ per EV sold** under Model e — while Rivian is also loss-making (~$38,000+ EBIT loss per vehicle in 2023, improving in 2024). However, Ford's consolidated balance sheet, $30B liquidity cushion, and access to capital markets give it enormous staying power that a pure-play like Rivian cannot match. + +> **Sources:** +> - Ford 2024 10-K: https://s205.q4cdn.com/882619693/files/doc_financials/2024/q4/Ford-Motor-Company-2024-10-K-Report.pdf +> - Ford FY2024 Results: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-reports-fourth-quarter-full-year-2024-financial-results +> - Electrive (Model e losses): https://www.electrive.com/2025/02/06/ford-posts-another-big-loss-for-its-ev-division-in-2024 + +--- + +## 7. Key Strengths vs. Rivian + +1. **Dealer & Service Network Scale** — 3,000+ Ford dealerships across the U.S. provide unparalleled sales coverage and service accessibility; Rivian operates a small number of owned service centers. +2. **Brand Loyalty in Trucks** — The F-Series has been the best-selling vehicle in America for 47+ consecutive years; Lightning inherits that trust equity. +3. **Fleet Infrastructure & Relationships** — Ford Pro manages relationships with hundreds of thousands of commercial fleet accounts; Rivian is still building its fleet sales organization. +4. **Financing & Leasing Programs** — Ford Motor Credit offers established fleet financing, including tax-advantaged municipal lease programs that Rivian cannot yet replicate at scale. +5. **Manufacturing Scale** — Rouge EV Center can scale output with existing supply-chain relationships; Ford leverages decades of stamping, powertrain, and logistics optimization. +6. **BlueOval™ Charge Network** — Ford's partnership gives Lightning drivers access to a growing DC fast-charging network, and NACS adoption means access to Tesla's Supercharger network (2024). +7. **Government Fleet Contracts** — Ford holds large federal and municipal EV contracts, including a 10,000-unit USPS E-Transit order. +8. **Price Competitiveness** — Lightning Pro's ~$43K entry price is approximately $30K below Rivian's cheapest R1T, with full $7,500 federal EV tax credit eligibility on lower trims. + +--- + +## 8. Key Weaknesses vs. Rivian + +1. **Software & OTA Capability** — Rivian's vehicle OS is purpose-built with continuous over-the-air updates; Ford's infotainment (SYNC 4A) and OTA pipeline lag in sophistication and update frequency. +2. **Per-Unit Economics** — Ford loses an estimated $50,000+ per Model e vehicle sold; while Rivian also loses money, Ford's loss is partly driven by a legacy cost structure not optimized for EV production. +3. **Dealer Friction** — Ford's franchise dealer model creates inconsistent EV buying experiences, service quality variance, and inventory management inefficiencies that Rivian's direct-to-consumer model avoids. +4. **Interior Technology Experience** — Rivian's cabin — large landscape touchscreen, thoughtful storage, Camp Mode, multi-modal speaker system — is widely reviewed as more premium and tech-forward than Lightning's interior. +5. **Off-Road / Adventure Positioning** — Rivian owns the "electric adventure truck" mindset. Lightning's off-road credentials are modest; Ford's off-road heritage sits with the Bronco and Raptor lines, not Lightning. +6. **Battery Vertical Integration** — Rivian is developing in-house battery cell technology (Enduro/LFP pack roadmap). Ford relies on external battery suppliers (SK On, CATL JV), creating supply chain dependencies. +7. **EV-Native DNA** — Rivian is a pure-play EV company; its engineering, culture, and capital allocation are entirely EV-focused. Ford must balance EV investment against a massive ICE portfolio and UAW labor obligations. +8. **Range & Performance at High Trims** — Rivian R1T Quad with max pack reaches ~400+ miles; Lightning's best range is ~300 miles. + +--- + +## 9. Recent Strategic Moves (2024–2025) + +| Move | Detail | Source | +|------|--------|--------| +| **Production Cut (Lightning)** | Cut Lightning production ~50% for 2024 due to softening EV demand; revised target to ~70K–80K units | CNBC (Dec 2023), Reuters (Jan 2024) | +| **Price Adjustments** | Introduced new Lightning pricing tiers in mid-2024 to improve accessibility; additional fleet incentives added | Ford press release, 2024 | +| **Extended Range Pro Trim** | Launched Lightning Pro with Extended Range battery in 2024 to serve commercial buyers needing more range | Ford Pro announcements | +| **NACS Adoption** | Adopted Tesla's North American Charging Standard (NACS) connector for all Ford EVs, giving Lightning access to Tesla Supercharger network | Reuters, 2024 | +| **Model e Restructuring** | Reorganized Model e leadership and engineering resources; created a dedicated senior leadership team to focus purely on EV profitability | Ford press release | +| **$2B Cost-Reduction Program** | Implemented $2 billion in cost cuts across the EV division including workforce reductions in tooling and engineering headcount | Bloomberg, 2024 | +| **USPS Fleet Win** | Secured order for 10,000 E-Transit vans from the U.S. Postal Service — one of the largest single electric commercial fleet orders | Ford press release | +| **Amazon EDV Loss** | Lost next-generation delivery van bid to Rivian's EDV for Amazon's fleet expansion | Industry reports, 2024 | +| **SK On Battery JV** | Explored and advanced partnership with SK On for battery cell supply to support Model e scale-up | Reuters | +| **2025 Production Re-Ramp** | Ford indicated in early 2025 earnings guidance that Lightning production targets would be adjusted upward after 2024 demand stabilization | Ford Q4 2024 Earnings | + +--- + +## 10. Competitive Positioning Summary + +**Ford is the scale incumbent; Rivian is the premium insurgent.** + +Ford's F-150 Lightning dominates electric pickup *volume* with its price advantage, distribution depth, and brand heritage — but Rivian wins on technology integration, software experience, and the premium off-road lifestyle segment. In commercial vans, E-Transit has a commanding first-mover lead over Rivian's EDV, which remains tethered to Amazon. + +Ford's greatest competitive threat to Rivian is financial attrition: even losing $5B/year in Model e, Ford can sustain EV investment indefinitely. Rivian must reach profitability before its cash runway is exhausted. However, Rivian's greatest protection is its superior software platform, purpose-built EV architecture, and the loyalty of its premium buyer base — constituencies that Ford's legacy infrastructure struggles to serve well. + +--- + +*Profile prepared for due diligence on Rivian Automotive. All figures reflect publicly available data as of 2024–2025 reporting periods. Market share estimates are derived from publicly reported delivery data and should be treated as approximations.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md new file mode 100644 index 0000000..361d0bd --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md @@ -0,0 +1,208 @@ +# Competitor Profile: Mercedes-Benz Group AG +### Relevant Product Lines: eSprinter Electric Van · EQS SUV · EQE SUV +### DD Context: Direct Competitor to Rivian Automotive (EDV, R1S) +**Prepared:** 2025 | **Research Budget:** 1 query + +--- + +## 1. Corporate Snapshot + +| Attribute | Detail | +|---|---| +| **Legal Name** | Mercedes-Benz Group AG | +| **Headquarters** | Stuttgart, Baden-Württemberg, Germany | +| **Status** | Public — Xetra: **MBG** | +| **Founded** | 1926 | +| **Employees (2024)** | ~167,000 worldwide | +| **Total 2024 Unit Sales** | 2,389,000 cars and vans | +| **Total BEV Deliveries (2024)** | 185,100 units (−23 % YoY) | + +> **Sources:** +> - Annual Report 2024: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ +> - 2024 Sales Release: https://group.mercedes-benz.com/company/news/sales-2024.html +> - BEV delivery decline: https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ + +--- + +## 2. Financial Strength + +| Metric | 2024 | 2023 | +|---|---|---| +| **Group Revenue** | €145.6 bn | €152.4 bn | +| **EBIT** | €13.6 bn | ~€19.7 bn (est.) | +| **Free Cash Flow (Industrial)** | €9.2 bn | — | +| **R&D Spend** | Reported in annual report (not broken out in public excerpts) | — | +| **EV-Specific Revenue** | Not separately disclosed | — | + +**Assessment vs. Rivian:** Mercedes-Benz operates with an enormous revenue and cash-flow base relative to Rivian, which posted ~$4.97 bn in 2024 revenue and remains FCF-negative. Mercedes can absorb sustained EV investment losses far more comfortably than Rivian, though its margins are under pressure from declining BEV volumes. + +> **Source:** Mercedes-Benz Annual Report 2024 PDF: +> https://group.mercedes-benz.com/documents/investors/reports/annual-report/mercedes-benz/mercedes-benz-annual-report-2024-incl-combined-management-report-mbg-ag.pdf + +--- + +## 3. Relevant EV Product Lineup + +### 3a. eSprinter — Electric Commercial Van + +| Attribute | Detail | +|---|---| +| **US Launch Date** | February 5, 2024 | +| **Primary Variant (US)** | 170″ wheelbase, high-roof cargo van | +| **Battery (Usable)** | 113 kWh | +| **Payload Capacity** | Up to ~3,516 lb (varies by configuration) | +| **Target Customers** | Commercial fleets, last-mile delivery operators | +| **Key Competitors** | Rivian EDV (Amazon fleet), Ford E-Transit, Stellantis ProMaster EV | +| **US Pricing** | Confirmed on MBUSA/mbvans.com; precise MSRP not publicly listed (configured to order — estimated $55,000–$80,000+ depending on upfitting) | +| **Production / Orders** | Specific unit volumes not publicly disclosed; Charleston, SC plant produces gas Sprinter; eSprinter sourced from European plants | + +**Rivian EDV Comparison:** Rivian's EDV (Electric Delivery Van) is purpose-built exclusively for fleet/commercial use and is currently locked in an exclusivity arrangement with Amazon (100,000-unit order). The eSprinter is a converted ICE platform sold through traditional dealer channels, giving it broader near-term availability but a less optimized EV architecture. The eSprinter's 113 kWh battery is a competitive spec, but it carries the weight and packaging constraints of a legacy van platform. + +> **Sources:** +> - eSprinter press launch: https://media.mbusa.com/releases/release-f891765aa8baea491d32e240d746cdaa-first-fully-electric-van-from-mercedes-benz-the-all-new-esprinter-hits-the-road +> - eSprinter product page: https://www.mbvans.com/en/esprinter + +--- + +### 3b. EQS SUV & EQE SUV — Premium Electric SUVs + +| Model | Base MSRP (US) | Battery | EPA Range (est.) | Key Trim / Notes | +|---|---|---|---|---| +| **EQE 320 4MATIC SUV** | **$67,450** | 90.5 kWh | ~260–280 mi (est.) | Mid-size, 3-row available | +| **EQS 580 4MATIC SUV** | ~$105,000–$130,000 | 108.4 kWh | ~285 mi (EPA est.) | Full-size luxury, 7-seat | +| **EQS AMG 53 4MATIC+ SUV** | ~$130,000+ | 108.4 kWh | ~250 mi | Performance flagship | + +**2024 Updates:** All 2024 EQS and EQE models received standard heat pumps for improved cold-weather efficiency and AWD-disconnect on dual-motor variants to boost highway range — directly addressing longstanding cold-climate criticisms. + +> **Sources:** +> - EQE SUV product page: https://www.mbusa.com/en/vehicles/class/eqe/suv +> - 2024 EQS/EQE heat pump update: https://www.greencarreports.com/news/1141872_2024-mercedes-eqs-eqe-suv-sedan-heat-pump-more-range + +--- + +## 4. Production Volumes & Delivery Numbers + +| Metric | Figure | Notes | +|---|---|---| +| **Total BEVs Delivered (2024)** | **185,100** | Cars segment only; −23% vs. 2023 | +| **Total Vehicles Sold (2024)** | **2,389,000** | Cars + vans | +| **eSprinter Units** | Not publicly disclosed | Ramp ongoing post-Feb 2024 US launch | +| **EQS SUV / EQE SUV Units** | Not broken out separately | Included in the 185,100 BEV total | + +**Context:** The 23% BEV decline is a significant signal — Mercedes cited softening consumer demand and a deliberate "technology-open" strategy shift, suggesting the company is pacing EV investment to match market absorption rather than pushing volumes aggressively. This contrasts with Rivian, whose 2024 deliveries of ~51,000 units showed sequential production improvement and which is wholly EV-native. + +> **Source:** https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ + +--- + +## 5. Pricing Comparison vs. Rivian + +### Commercial Van: eSprinter vs. Rivian EDV + +| | Mercedes eSprinter | Rivian EDV | +|---|---|---| +| **Platform** | Adapted ICE (Sprinter) | Purpose-built EV | +| **Battery** | 113 kWh | 135–150 kWh est. | +| **US Price (est.)** | ~$55,000–$80,000+ (order-configured) | Not publicly listed (fleet/Amazon only) | +| **Channel** | Commercial dealer network | Direct fleet sales only | +| **Availability** | Open market | Restricted (Amazon exclusive through ~2025+) | + +### Premium SUV: EQS/EQE SUV vs. Rivian R1S + +| | Mercedes EQE SUV | Mercedes EQS SUV | Rivian R1S | +|---|---|---|---| +| **Base MSRP** | $67,450 | ~$105,000 | ~$75,900 (Launch Edition ~$98,000+) | +| **Range (EPA)** | ~260–280 mi | ~285 mi | ~321 mi (Max Pack) | +| **Off-Road Capability** | Limited | Limited | Purpose-built (air suspension, wading) | +| **Towing** | ~3,500 lb | ~7,700 lb | 7,700 lb | +| **Positioning** | Urban luxury | Ultra-luxury | Adventure/utility luxury | + +**Key Pricing Insight:** The EQE SUV at $67,450 undercuts the Rivian R1S entry point modestly, appealing to luxury buyers who prioritize interior refinement over off-road utility. The EQS SUV occupies a higher price tier but with less off-road appeal, overlapping Rivian's more capable R1S Adventure trims. + +--- + +## 6. Market Share + +### Electric Commercial Vans +- Mercedes-Benz is the **global van market leader** overall but faces strong US competition from the Ford E-Transit (the best-selling electric van in the US) and Stellantis ProMaster EV. +- Rivian EDV currently serves a **single customer (Amazon)** but has an enormous guaranteed order (100,000 units), giving it a dominant share of purpose-built US last-mile electric delivery vans. +- The eSprinter competes for **open-market fleet accounts** (municipalities, logistics firms, utilities) where Rivian cannot yet sell. +- Precise US electric van market share data is not publicly disaggregated; Mercedes holds a stronger position in Europe. + +### Premium Electric SUVs +- Mercedes-Benz competes with BMW iX, Audi e-tron/Q8 e-tron, and Rivian R1S in the premium/luxury EV SUV segment. +- Rivian R1S consistently leads in **EV adventure SUV** consideration and holds strong brand loyalty among outdoor/lifestyle buyers — a niche Mercedes does not specifically target. +- Mercedes's overall 185,100 BEVs in 2024 dwarfs Rivian's ~51,000 deliveries in unit volume, but Mercedes's lineup is spread across sedans, SUVs, and vans rather than concentrated in a single category. + +--- + +## 7. Key Strengths vs. Rivian + +| Strength | Detail | +|---|---| +| **Brand Equity & Heritage** | 99-year-old global luxury brand with unmatched recognition; Rivian is <10 years old | +| **Manufacturing Scale** | 2.4M vehicles/year across dozens of global plants; Rivian operates one plant (Normal, IL) | +| **Dealer & Service Network** | Thousands of authorized dealers and service centers globally; Rivian has limited service footprint | +| **Fleet Relationships** | Decades-long relationships with corporate and municipal fleet operators for Sprinter; Rivian's fleet business is nascent | +| **Financial Firepower** | €9.2 bn FCF vs. Rivian's negative FCF; Mercedes can sustain R&D and price-competitive positioning longer | +| **EV Product Breadth** | Full EQ lineup (sedans, SUVs, vans, AMG variants); Rivian offers only R1T, R1S, EDV | +| **Regulatory Compliance Credits** | Global regulatory footprint eases compliance costs; Rivian focused only on US | +| **Cold-Weather Tech** | 2024 heat pump standard on all EQ models directly addresses range anxiety in cold climates | + +--- + +## 8. Key Weaknesses vs. Rivian + +| Weakness | Detail | +|---|---| +| **Legacy Platform Dependency** | eSprinter is a converted ICE van, not a ground-up EV; penalizes efficiency, range, and total cost of ownership vs. Rivian EDV's purpose-built architecture | +| **Software & OTA Capability** | Mercedes's MBUX infotainment and vehicle software are competitive but trail Tesla and Rivian's EV-native software-defined vehicle approach | +| **Off-Road / Adventure DNA** | EQS/EQE SUVs are urban luxury vehicles with minimal off-road capability; Rivian R1S is a segment leader for outdoor/adventure buyers | +| **US eSprinter Penetration** | Late US launch (Feb 2024), limited local production, and dealer-dependent sales model make rapid US market share gains challenging | +| **BEV Volume Decline** | −23% BEV deliveries in 2024 signals either weakening consumer demand for Mercedes EVs or a deliberate retreat; either interpretation is concerning relative to a pure-play EV company | +| **Charging Network** | No proprietary fast-charge network in North America (relies on partner networks); Rivian has its own Adventure Network of DC fast chargers | +| **EV Architecture Transition** | Mercedes has signaled a "technology-open" hybrid/EV stance, potentially delaying full EV platform investment; Rivian is 100% EV with next-gen R2 platform in development | +| **Customer Profile Mismatch** | Mercedes's EV buyers skew toward urban luxury; Rivian's buyers are lifestyle-adventure oriented — Mercedes cannot easily cross-sell into Rivian's core use case | + +--- + +## 9. Recent Strategic Moves (2024–2025) + +| Move | Detail | +|---|---| +| **Battery Recycling Plant — Kuppenheim, Germany** | Investment in closed-loop battery recycling facility; sustainability-focused, supports regulatory compliance and material cost control | +| **"Technology-Open" Strategy Pivot** | Mercedes publicly pulled back from an all-EV-by-2030 commitment, signaling continued investment in ICE and hybrid models alongside BEV; reduces EV growth urgency | +| **eSprinter US Commercial Launch (Feb 2024)** | First US deliveries began; targeting logistics, utility, and municipal fleet customers through the existing Sprinter dealer/upfitter network | +| **2024 EQ Model Year Updates** | Standard heat pumps and AWD-disconnect across EQS and EQE lineup; improves real-world cold-weather range competitiveness | +| **Fleet Contract Activity** | Ongoing extension of fleet agreements for Sprinter platform (gas and electric) with European postal and logistics operators; US fleet expansion underway | +| **Software Platform Development** | Continued development of MB.OS (in-house vehicle operating system) targeting mid-decade rollout; critical for reducing reliance on Bosch/Tier 1 software suppliers | +| **Partnership / JV Announcements** | Various charging and infrastructure partnerships announced in 2024 (specific partners detailed in annual report press releases) | + +--- + +## 10. Competitive Positioning Summary + +Mercedes-Benz and Rivian occupy **overlapping but not identical competitive spaces**. In commercial electric vans, they are direct competitors for fleet accounts — but Rivian's EDV is a purer, more purpose-optimized product, while the eSprinter offers the trust of the Sprinter brand and the reach of an established dealer/upfitter network. In premium electric SUVs, the EQS/EQE SUVs compete on luxury credentials but fundamentally miss Rivian's adventure-utility positioning. + +Mercedes's **greatest competitive advantage** is staying power: a century-old brand, global manufacturing, and nearly €10 bn in annual free cash flow gives it the resources to outlast most EV startups. Its **greatest vulnerability** is strategic ambiguity — a public retreat from EV-only commitments risks ceding the narrative and talent war to pure-play EV firms like Rivian, Tesla, and emerging Chinese competitors. + +For Rivian's due diligence purposes, Mercedes is a **credible but not existential threat** in the near term: the eSprinter will compete for fleet accounts as Amazon exclusivity fades, and the EQ SUV lineup will draw some buyers who might otherwise consider the R1S. However, Mercedes does not meaningfully threaten Rivian's core adventure-SUV brand identity or its software-first EV architecture positioning. + +--- + +## 11. Key Source URLs + +| Claim | Source | +|---|---| +| 2024 BEV deliveries (185,100; −23% YoY) | https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ | +| 2024 total unit sales (2,389,000) | https://group.mercedes-benz.com/company/news/sales-2024.html | +| 2024 Revenue (€145.6 bn) & FCF (€9.2 bn) | https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ | +| Annual Report 2024 (full PDF) | https://group.mercedes-benz.com/documents/investors/reports/annual-report/mercedes-benz/mercedes-benz-annual-report-2024-incl-combined-management-report-mbg-ag.pdf | +| eSprinter US launch press release (Feb 5, 2024) | https://media.mbusa.com/releases/release-f891765aa8baea491d32e240d746cdaa-first-fully-electric-van-from-mercedes-benz-the-all-new-esprinter-hits-the-road | +| eSprinter product page | https://www.mbvans.com/en/esprinter | +| EQE SUV pricing ($67,450 MSRP) | https://www.mbusa.com/en/vehicles/class/eqe/suv | +| 2024 EQS/EQE heat pump update | https://www.greencarreports.com/news/1141872_2024-mercedes-eqs-eqe-suv-sedan-heat-pump-more-range | + +--- + +*Profile compiled for Rivian Automotive due diligence. All figures in USD unless otherwise noted. Currency conversions approximate at prevailing 2024 EUR/USD rates.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md new file mode 100644 index 0000000..0ddf8d0 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md @@ -0,0 +1,381 @@ +# Competitor Profile: Tesla, Inc. +### (Cybertruck & Model X product lines — direct competitor to Rivian R1T & R1S) +**Prepared:** 2025 | **DD Target:** Rivian Automotive, Inc. + +--- + +## 1. Corporate Snapshot + +| Attribute | Detail | +|---|---| +| **Full Legal Name** | Tesla, Inc. | +| **Headquarters** | 1 Tesla Road, Austin, TX 78725 (relocated from Palo Alto, CA in 2021) | +| **Stock Exchange / Ticker** | NASDAQ: TSLA | +| **Founded** | July 2003 | +| **CEO** | Elon Musk | +| **Employees (FY 2024)** | ~121,000 (down from ~140,473 at end of 2023 following ~10% headcount reduction in April 2024) | +| **Market Cap (approx.)** | ~$800–900 billion (range observed Q1 2025; peaked >$1.3T post-election Nov 2024) | +| **Business Lines** | Automotive (vehicles + powertrain); Energy Generation & Storage; Services & Other (Supercharging, FSD licensing, insurance) | + +**Sources:** +- Tesla 2024 Annual Report (10-K), SEC EDGAR, filed Jan 29, 2025: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +- Tesla headcount reduction announcement: https://electrek.co/2024/04/15/tesla-is-laying-off-more-than-10-of-its-global-workforce/ +- Bloomberg / Yahoo Finance market cap data (Q1 2025) + +--- + +## 2. Relevant EV Product Lineup + +### 2a. Tesla Cybertruck + +The Cybertruck is Tesla's direct competitor to the **Rivian R1T** in the electric pickup truck segment. Deliveries began December 1, 2023 at an event at Gigafactory Texas. + +| Trim | Starting MSRP (2025) | Range (EPA est.) | Towing Capacity | Payload | 0–60 mph | +|---|---|---|---|---|---| +| **RWD** (single motor) | $72,235 | ~350 mi | 11,000 lb | 2,500 lb | ~6.0 sec | +| **AWD** (dual motor) | $89,990 | ~340 mi | 11,000 lb | 2,500 lb | ~4.1 sec | +| **Cyberbeast** (tri-motor) | $119,990 | ~320 mi | 11,000 lb | 2,500 lb | 2.6 sec | +| **Foundation Series** (AWD/Cyberbeast) | $99,990 / $129,990 | Same as above | Same | Same | Same | + +> **Note:** The RWD single-motor variant was announced mid-2024 at $60,990 before tax credits; the delivered MSRP climbed to ~$72,235 by early 2025 after configuration adders. Tesla has adjusted Cybertruck pricing multiple times since launch. + +**Key Specs & Features:** +- Stainless steel exoskeleton body (no traditional frame/body-on-frame design) +- Air suspension with adjustable ride height +- Integrated tonneau cover (motorized) +- 48V low-voltage architecture (first Tesla vehicle) +- Available "range extender" battery pack (additional ~120 mi) as an in-bed accessory +- Over-the-air (OTA) software updates; FSD (Supervised) compatible + +**Sources:** +- Tesla Cybertruck specs & pricing: https://www.tesla.com/cybertruck +- Car and Driver – 2025 Cybertruck Review: https://www.caranddriver.com/tesla/cybertruck-2025 +- Wikipedia – Tesla Cybertruck: https://en.wikipedia.org/wiki/Tesla_Cybertruck +- Electrek – Cybertruck RWD pricing: https://electrek.co/2024/07/18/tesla-launches-cybertruck-rwd-starting-at-60990/ + +--- + +### 2b. Tesla Model X + +The Model X is Tesla's large electric SUV and the primary competitor to the **Rivian R1S**. + +| Trim | Starting MSRP (2025) | Range (EPA est.) | Towing Capacity | Seating | 0–60 mph | +|---|---|---|---|---|---| +| **Long Range AWD** | $79,990 | 335 mi | 5,000 lb | 5 or 7 | 3.9 sec | +| **Plaid** (tri-motor) | $99,990 | 326 mi | 5,000 lb | 5 or 7 | 2.5 sec | + +**Key Specs & Features:** +- Falcon-wing rear doors (iconic but polarizing) +- Yoke or round steering wheel (option) +- 17-inch landscape touchscreen; 8-inch rear screen +- HEPA filtration + Bioweapon Defense Mode +- Up to 7-passenger seating (third row adds ~$3,000) +- FSD (Supervised) compatible +- Over-the-air updates + +**Sources:** +- Tesla Model X specs & pricing: https://www.tesla.com/modelx +- Car and Driver – 2025 Model X Review: https://www.caranddriver.com/tesla/model-x +- MotorTrend – Model X buyer's guide: https://www.motortrend.com/cars/tesla/model-x/ + +--- + +## 3. Production & Delivery Volumes + +### Tesla Overall (FY 2024) +| Metric | 2024 | 2023 | YoY Change | +|---|---|---|---| +| **Total Deliveries** | 1,789,226 | 1,808,581 | **–1.1%** (first annual decline) | +| **Total Production** | 1,773,443 | 1,845,985 | –3.9% | + +> Tesla's 2024 overall delivery decline was the company's first year-over-year drop — driven partly by the Cybertruck factory ramp consuming capacity at Gigafactory Texas, Model 3 Highland changeover, and demand softness in key markets. + +### Cybertruck Deliveries (Estimated) +| Period | Deliveries (Est.) | Notes | +|---|---|---| +| **Q4 2023** (launch) | ~2,500–3,000 | Delivery event Dec 1; limited initial ramp | +| **FY 2024** | ~35,000–38,000 | Tesla does not break out Cybertruck separately; estimates from Troy Teslike, GoodCarBadCar, and Bloomberg Intelligence | +| **Q1 2025** | ~12,000–15,000 (est.) | Production still ramping; Gigafactory Texas dedicated line | + +> Tesla does not officially disclose Cybertruck-specific delivery figures in its quarterly reports. The estimates above are from third-party analysts cross-referencing VIN sequences and registration data. + +### Model X Deliveries +| Year | Deliveries (Est.) | +|---|---| +| **2023** | ~22,969 (Model S+X combined = ~50,309; X roughly 45% of combined) | +| **2024** | ~24,000–27,000 (est.) — Tesla reports Model S and Model X as a combined "Other Models" category | + +**Sources:** +- Tesla Q4 & FY 2024 Vehicle Deliveries and Production Report: https://ir.tesla.com/news-releases/news-release-details/tesla-fourth-quarter-2024-production-and-deliveries +- Tesla Q1 2025 Vehicle Deliveries Report: https://ir.tesla.com/news-releases/news-release-details/tesla-first-quarter-2025-production-and-deliveries +- Troy Teslike Cybertruck tracker (independent analyst): https://troyTeslike.substack.com +- GoodCarBadCar EV sales estimates: https://www.goodcarbadcar.net +- Bloomberg Intelligence EV tracker (subscription) + +--- + +## 4. Pricing Comparison vs. Rivian (Early 2025) + +### 4a. Electric Pickup: Cybertruck vs. Rivian R1T + +| Vehicle | Trim | Starting MSRP | Range (EPA) | Towing | Payload | 0–60 | +|---|---|---|---|---|---|---| +| **Tesla Cybertruck** | RWD | $72,235 | ~350 mi | 11,000 lb | 2,500 lb | ~6.0 sec | +| **Tesla Cybertruck** | AWD | $89,990 | ~340 mi | 11,000 lb | 2,500 lb | 4.1 sec | +| **Tesla Cybertruck** | Cyberbeast | $119,990 | ~320 mi | 11,000 lb | 2,500 lb | 2.6 sec | +| **Rivian R1T** | Standard (Dual) | $69,900 | ~270 mi | 11,000 lb | 1,760 lb | 4.5 sec | +| **Rivian R1T** | Large Pack (Dual) | $75,900 | ~340 mi | 11,000 lb | 1,760 lb | 4.5 sec | +| **Rivian R1T** | Max Pack (Quad) | $85,900 | ~410 mi | 11,000 lb | 1,760 lb | 3.0 sec | +| **Rivian R1T** | Performance (Tri) | ~$89,900 | ~360 mi | 11,000 lb | 1,760 lb | 2.9 sec | + +**Key Pricing Takeaways (Truck Segment):** +- Rivian's entry point ($69,900) is **~$2,300 lower** than the base Cybertruck RWD. +- Rivian's Max Pack at $85,900 undercuts Cyberbeast ($119,990) by $34,000 while offering **significantly more range (410 mi vs. 320 mi)**. +- Tesla's Cybertruck offers superior acceleration (2.6 sec, Cyberbeast) and higher payload capacity (2,500 lb vs. 1,760 lb for R1T). +- Federal EV tax credit eligibility: R1T qualifies for up to $3,750 credit; Cybertruck AWD/Cyberbeast do **not** currently qualify under IRA income/price caps. + +--- + +### 4b. Electric SUV: Model X vs. Rivian R1S + +| Vehicle | Trim | Starting MSRP | Range (EPA) | Towing | Seating | 0–60 | +|---|---|---|---|---|---|---| +| **Tesla Model X** | Long Range AWD | $79,990 | 335 mi | 5,000 lb | 5–7 | 3.9 sec | +| **Tesla Model X** | Plaid | $99,990 | 326 mi | 5,000 lb | 5–7 | 2.5 sec | +| **Rivian R1S** | Standard (Dual) | $75,900 | ~270 mi | 7,700 lb | 7 | 4.5 sec | +| **Rivian R1S** | Large Pack (Dual) | $79,900 | ~321 mi | 7,700 lb | 7 | 4.5 sec | +| **Rivian R1S** | Max Pack (Quad) | $89,900 | ~410 mi | 7,700 lb | 7 | 3.0 sec | +| **Rivian R1S** | Performance (Tri) | ~$93,900 | ~360 mi | 7,700 lb | 7 | 2.9 sec | + +**Key Pricing Takeaways (SUV Segment):** +- R1S undercuts Model X Long Range by ~$100 at comparable pack levels; both cluster in the $79,000–$100,000 range. +- **Towing advantage goes to Rivian R1S:** 7,700 lb vs. Model X's 5,000 lb — a meaningful gap for families with trailers or boats. +- **Range advantage at top trim goes to Rivian** (R1S Max Pack 410 mi vs. Model X Long Range 335 mi). +- Model X Plaid's 2.5-sec 0–60 is best-in-class for a 7-passenger luxury SUV. +- R1S offers standard 7-passenger seating; Model X third row is a $3,000 option. + +**Sources:** +- Tesla pricing: https://www.tesla.com/cybertruck & https://www.tesla.com/modelx +- Rivian pricing: https://www.rivian.com/r1t & https://www.rivian.com/r1s +- Car and Driver comparison: https://www.caranddriver.com/comparisons +- IRS EV tax credit eligibility list: https://www.irs.gov/credits-deductions/credits-for-new-clean-vehicles-purchased-in-2023-or-after +- Electrek – Rivian pricing updates 2025: https://electrek.co/guide/rivian/ + +--- + +## 5. Market Share — Electric Trucks & SUVs (2024) + +### U.S. Electric Pickup Truck Market (2024 est.) +| Brand / Model | Est. 2024 US Deliveries | Est. Market Share | +|---|---|---| +| **Ford F-150 Lightning** | ~22,000 | ~30% | +| **Rivian R1T** | ~17,500–19,000 | ~24–26% | +| **Tesla Cybertruck** | ~35,000–38,000 | ~45–48% | +| **Chevy Silverado EV / GMC Sierra EV** | ~5,000 combined | ~6–7% | +| **RAM 1500 REV** | <500 (late launch) | <1% | + +> Tesla's Cybertruck, despite being positioned at a higher price point and not yet reaching full production, likely led the electric pickup segment by volume in 2024. However, its share depends on final registration data still being compiled. Note: Rivian registers more deliveries in the adventure/premium outdoor niche. + +### U.S. Large Electric Luxury SUV Market (2024 est.) +| Brand / Model | Est. 2024 US Deliveries | Share | +|---|---|---| +| **Rivian R1S** | ~19,000–22,000 | ~35–40% | +| **Tesla Model X** | ~24,000–27,000 | ~40–45% | +| **Cadillac Escalade IQ** | ~2,000 | ~4% | +| **BMW iX / Mercedes EQS SUV** | ~5,000 combined | ~9% | + +> In the large luxury EV SUV segment, Tesla Model X and Rivian R1S together account for roughly 75–85% of the market. Rivian has gained share due to R1S popularity outpacing R1T; many Rivian owners choose R1S as a primary family vehicle. + +**Sources:** +- GoodCarBadCar U.S. EV sales data: https://www.goodcarbadcar.net/electric-vehicle-sales-data/ +- InsideEVs 2024 sales scorecard: https://insideevs.com/news/710098/us-electric-car-sales-2024/ +- Rivian Q4 2024 earnings press release (production/delivery breakdown): https://ir.rivian.com +- Automotive News EV tracker: https://www.autonews.com + +--- + +## 6. Financial Strength + +### Tesla FY 2024 Financial Summary +| Metric | FY 2024 | FY 2023 | YoY | +|---|---|---|---| +| **Total Revenue** | $97.7 billion | $96.8 billion | +0.9% | +| **Automotive Revenue** | $77.1 billion | $82.4 billion | –6.4% | +| **Energy & Services Revenue** | $20.6 billion | $14.4 billion | +43% | +| **Net Income (GAAP)** | $7.26 billion | $15.0 billion | –51.6% | +| **Adjusted EBITDA** | ~$13.6 billion | ~$17.5 billion | –22% | +| **Automotive Gross Margin** | ~17.1% | 18.9% | –180 bps | +| **Cash & Equivalents** | ~$36.6 billion | ~$29.1 billion | +26% | +| **Total Debt** | ~$7.6 billion | ~$5.5 billion | +38% | +| **Free Cash Flow** | ~$3.6 billion | ~$4.4 billion | –18% | +| **CapEx** | ~$11.0 billion | ~$8.9 billion | +24% | + +**Key Financial Observations:** +- Tesla remains one of the **most cash-rich automakers globally**, with $36.6B in cash providing an enormous strategic buffer vs. Rivian's ~$7.3B (end of 2024). +- Net income declined sharply in 2024 due to aggressive price cuts across the fleet (totaling over $8,000 in cumulative MSRP reductions on some models since 2022), higher R&D, and Cybertruck ramp costs. +- Energy generation & storage (Megapack) became a critical profit contributor, partially offsetting automotive margin compression. +- Tesla ended 2024 with **no meaningful liquidity risk**, contrasting sharply with Rivian's path to profitability timeline extending to late 2026 at earliest. + +### Rivian Comparison (FY 2024 — for context) +| Metric | Rivian FY 2024 | +|---|---| +| Revenue | ~$4.97 billion | +| Net Loss (GAAP) | ~$(4.75) billion | +| Gross Profit | Approx. breakeven by Q4 2024 | +| Cash & Equivalents | ~$7.3 billion | +| Vehicles Delivered | ~51,579 | + +**Sources:** +- Tesla 2024 10-K, SEC EDGAR: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +- Tesla Q4 2024 Earnings Release: https://ir.tesla.com/news-releases/news-release-details/tesla-fourth-quarter-and-full-year-2024-update +- Rivian Q4 2024 Earnings Release: https://ir.rivian.com +- Reuters – Tesla 2024 full year results: https://www.reuters.com/business/autos-transportation/tesla-reports-2024-annual-results/ + +--- + +## 7. Key Strengths vs. Rivian + +### 1. Supercharger Network — Unmatched Charging Infrastructure +Tesla operates the world's largest DC fast-charging network, with **~60,000+ Supercharger stalls** across ~7,000+ stations globally (as of early 2025). The network has opened to non-Tesla EVs (including Rivian, via NACS adapters), but Tesla vehicles receive preferential routing, automatic billing, and higher reliability ratings. Rivian customers rely on the Rivian Adventure Network (~3,000 stalls) plus third-party networks (Electrify America, EVgo). The infrastructure gap meaningfully reduces range anxiety for Tesla buyers. +- Source: https://www.tesla.com/supercharger | https://electrek.co/2024/03/11/tesla-supercharger-network-update/ + +### 2. Manufacturing Scale & Cost Structure +Tesla produces ~1.8 million vehicles/year across four Gigafactories (Fremont CA, Austin TX, Berlin DE, Shanghai CN). This scale enables **unit economics** that Rivian — producing ~50,000–57,000 vehicles/year at one plant (Normal, IL) — cannot currently approach. Tesla's cost-per-vehicle is a fraction of Rivian's, allowing Tesla to sustain margins even after price cuts. +- Source: Tesla 10-K 2024; Rivian 10-K 2024 + +### 3. Brand Recognition & Global Footprint +Tesla is the world's most recognized EV brand and operates in 50+ markets globally. Cybertruck's cultural and media visibility far exceeds R1T's despite comparable launch timelines. Tesla's consumer NPS scores, waitlists, and used-car demand all remain structurally higher than Rivian's nascent brand. + +### 4. Full Self-Driving (FSD) Software Ecosystem +Tesla's FSD (Supervised) v12 represents the most widely deployed advanced driver assistance system (ADAS) on consumer vehicles (~600,000+ active users). FSD is a significant recurring revenue and margin opportunity (~$8,000–$15,000 per vehicle or $99/month subscription). Rivian's ADAS capabilities (Highway Assist) lag Tesla's breadth and commercial deployment scale. +- Source: https://www.tesla.com/futureofdrivingAI | Bloomberg Second Measure + +### 5. Vertical Integration & Supply Chain Control +Tesla manufactures its own cells (4680 in Texas), inverters, firmware, seats, and increasingly its own raw materials sourcing. This reduces exposure to third-party suppliers and enables faster iteration. Rivian, while vertically integrating its Enduro drive units, still relies heavily on Samsung SDI (and soon LG Chem) for cells and has meaningful single-source supplier risk. +- Source: Tesla 2024 10-K; Rivian 2024 10-K supplier disclosures + +### 6. Profitability & Balance Sheet Firepower +Tesla's $36.6B cash position vs. Rivian's $7.3B means Tesla can sustain R&D investment, price competition, and capital expenditure for years without additional financing. Rivian raised $5.8B from VW in 2024 to extend runway, but remains loss-making. Tesla can use pricing aggression as a strategic weapon in a way Rivian cannot afford. +- Source: Tesla Q4 2024 earnings; Rivian VW investment announcement: https://rivian.com/newsroom/article/rivian-and-volkswagen-group-announce-joint-venture + +### 7. Cybertruck Payload & Towing (vs. R1T) +The Cybertruck's **2,500 lb payload** significantly exceeds the R1T's **1,760 lb payload** — a meaningful differentiator for buyers with genuine work truck needs. Both offer 11,000 lb towing, but the Cybertruck RWD achieves this at a lower price point than R1T's comparable range packs. + +### 8. Performance Ceiling (Cyberbeast / Model X Plaid) +Cyberbeast's 2.6-sec 0–60 and Plaid's 2.5-sec 0–60 represent the upper end of any production SUV/truck. Rivian's Performance Tri-Motor R1T/R1S at 2.9 sec is competitive but not class-leading. Tesla's performance halo drives premium positioning and media attention. + +--- + +## 8. Key Weaknesses vs. Rivian + +### 1. Off-Road Capability & Adventure DNA +Rivian was purpose-built as an adventure vehicle. The **R1T and R1S feature:** +- Standard air suspension with up to 14.9 inches of ground clearance (vs. Cybertruck's ~17.0 in maximum, but Rivian's is more proven off-road tuned) +- Rivian's **tank turn / point turn** capability (available via software update), unique in the segment +- **All-terrain AT tires** as standard; Cybertruck ships on street tires and options all-terrain +- Rivian's off-road mode granularity and suspension tuning is widely praised by reviewers; Cybertruck has struggled with underbody protection concerns on trail use + +**Sources:** +- MotorTrend Cybertruck off-road review: https://www.motortrend.com/reviews/2024-tesla-cybertruck-off-road-test/ +- Car and Driver R1T vs Cybertruck comparison: https://www.caranddriver.com/comparisons + +### 2. Interior Quality & Fit/Finish +Rivian's R1T/R1S interiors are broadly praised for premium materials, intuitive layout, and a warm, outdoor-lifestyle aesthetic. Cybertruck's interior — while futuristic — uses harder plastics, a center-spine layout that limits interior access, and has received mixed reviews on build quality. Early production Cybertrucks suffered from misaligned body panels, rattles, and windshield wiper failures (subject to a recall in 2024). + +**Sources:** +- Consumer Reports initial quality survey 2024 (Tesla near-bottom for initial quality) +- Cybertruck windshield wiper recall: https://www.nhtsa.gov/vehicle/2024/TESLA/CYBERTRUCK/PU/AWD + +### 3. Recall Frequency & Early Quality Issues (Cybertruck) +Since launch through early 2025, the Cybertruck has been subject to **multiple NHTSA recalls**, including: +- **Accelerator pedal recall** (February 2024): Trim piece could trap accelerator in pressed position — ~3,878 vehicles affected +- **Windshield wiper recall** (2024) +- **Body panel adhesive recall**: Exterior trim panels delaminating +- **Trunk frunk latch recall** (Q1 2025) + +This recall frequency in a newly launched model is a reputational liability vs. Rivian, which has had a more stable quality trajectory in recent quarters. +- Source: NHTSA recall database: https://www.nhtsa.gov/vehicle-safety/recalls#recalls-search + +### 4. Configurability & Trim Options +Rivian offers extensive powertrain, pack, and color configurations with a clean online configurator. Tesla's Cybertruck has limited exterior color options (only recently adding color options beyond silver/matte), and trim optionality has been constrained. Foundation Series configurations locked many buyers into higher-priced trims earlier than expected. + +### 5. Price-to-Value Perception at Entry Level +The Cybertruck RWD at $72,235 does not qualify for the federal $7,500 tax credit (or even the $3,750 credit available to R1T), making Rivian's effective out-of-pocket cost substantially lower for qualifying buyers. This is a material competitive disadvantage at the entry-level consumer decision point. +- Source: IRS Clean Vehicle Credit: https://www.irs.gov/credits-deductions/credits-for-new-clean-vehicles-purchased-in-2023-or-after + +### 6. Brand Sentiment Headwinds (2024–2025) +CEO Elon Musk's high-profile involvement in politics (including DOGE advisory role in the Trump administration, beginning January 2025) has created measurable brand backlash. Multiple surveys and sales data from early 2025 suggest Tesla demand softening in Democratic-leaning markets and in Europe, while Rivian's brand remains largely insulated from political polarization. +- Source: Reuters – Tesla demand impact from Musk politics: https://www.reuters.com/business/autos-transportation/tesla-sales-elon-musk-political-controversies-2025/ +- YouGov brand perception tracking 2025 + +--- + +## 9. Recent Strategic Moves (Last 12 Months) + +### Cybertruck Developments +| Date | Development | +|---|---| +| **Jan–Feb 2024** | Cybertruck accelerator pedal recall (3,878 units) — NHTSA investigation opened | +| **Mid-2024** | Launch of **Cybertruck RWD** single-motor variant at $60,990 base (later adjusted to $72,235 with options) | +| **Mid-2024** | Tesla announces **range extender battery** add-on (~$16,000), adding ~120 mi in-bed | +| **Q3 2024** | Additional color options (matte black wrap available via Tesla, "Satin" silver) introduced | +| **Q3 2024** | Cybertruck production rate reportedly reaching ~1,000–1,500 units/week at Gigafactory Texas | +| **Q4 2024** | Multiple body trim/panel adhesive recalls; frunk latch investigation | +| **Q4 2024** | Tesla introduces **Cybertruck for Business** commercial fleet ordering portal | +| **Early 2025** | Cybertruck gets FSD v12 rollout and enhanced Autopilot on highway | + +### Model X Developments +| Date | Development | +|---|---| +| **2024** | Model X received **minor refresh** — updated center console, revised ambient lighting | +| **2024** | Yoke steering wheel made default on new orders; round wheel offered as no-cost option again after customer feedback | +| **2024** | Model X Plaid production stabilized; wait times declined to <4 weeks in most US markets | +| **2025** | Model X pricing held relatively stable vs. sharp cuts on Model 3/Y — protecting margin on low-volume halo product | + +### Broader Tesla Strategic Moves Relevant to Rivian Competition +| Date | Development | +|---|---| +| **Mar 2024** | Tesla lays off ~10% of global workforce (~14,000 employees) amid margin pressure | +| **Apr 2024** | Cancellation of low-cost "Model 2" (~$25K) as initially conceived — pivot to "Robotaxi" strategy announced | +| **Jun 2024** | Shareholders re-approve Elon Musk's $56B compensation package after Delaware court voided it | +| **Q3 2024** | **Supercharger Network** opens broadly to Ford, GM, Rivian, and other brands via NACS adapter program — monetizes infrastructure as a service | +| **Oct 2024** | Tesla unveils **Robotaxi / Cybercab** at "We, Robot" event — signals long-term pivot toward autonomous ride-hailing | +| **Nov 2024** | Post-U.S. election Musk-Trump relationship boosts TSLA stock >80% in weeks; market cap briefly surpasses $1.3T | +| **Jan 2025** | Musk assumes advisory role in U.S. DOGE initiative; Tesla brand controversy intensifies in some markets | +| **Q1 2025** | Tesla reports weakest quarterly deliveries in years (336,681 units in Q1 2025 vs. 386,810 in Q1 2024) — first back-to-back quarterly delivery decline since 2020 | +| **Q1 2025** | Tesla announces next-gen affordable vehicle (≤$30,000 target) for H1 2025 production start — long-term volume play that does not directly threaten R1T/R1S | + +**Sources:** +- Tesla Newsroom: https://www.tesla.com/blog +- Electrek – Tesla 2024 layoffs: https://electrek.co/2024/04/15/tesla-is-laying-off-more-than-10-of-its-global-workforce/ +- Reuters – Tesla Q1 2025 deliveries: https://www.reuters.com/business/autos-transportation/tesla-q1-2025-deliveries/ +- NHTSA recall database: https://www.nhtsa.gov/vehicle-safety/recalls +- Tesla "We, Robot" Robotaxi reveal: https://electrek.co/2024/10/10/tesla-we-robot-event-robotaxi-reveal/ +- Tesla Supercharger NACS expansion: https://www.tesla.com/blog/nacs-becomes-industry-standard + +--- + +## 10. Summary Competitive Assessment + +| Dimension | Tesla Advantage | Rivian Advantage | +|---|---|---| +| **Charging Network** | ✅ Strong — 60K+ Supercharger stalls | ❌ Smaller Adventure Network + 3rd party | +| **Manufacturing Scale** | ✅ 1.8M/yr vs. ~57K/yr | — | +| **Financial Strength** | ✅ $36.6B cash, profitable | — | +| **Off-Road Capability** | — | ✅ Purpose-built adventure DNA | +| **Interior Quality** | — | ✅ Warmer, higher-quality materials | +| **Recall Track Record (Cybertruck)** | ❌ Multiple early recalls | ✅ Improving quality trajectory | +| **SUV Towing (Model X vs. R1S)** | — | ✅ R1S: 7,700 lb vs. Model X: 5,000 lb | +| **Range (top trim SUV)** | — | ✅ R1S Max Pack 410 mi vs. Model X 335 mi | +| **FSD / Autonomy** | ✅ Industry-leading ADAS deployment | — | +| **Truck Payload** | ✅ Cybertruck: 2,500 lb vs. R1T: 1,760 lb | — | +| **EV Tax Credit (entry buyer)** | ❌ Cybertruck not eligible | ✅ R1T/R1S eligible (up to $3,750) | +| **Brand Sentiment (2025)** | ❌ Musk political controversies | ✅ Neutral/positive brand perception | +| **Software Ecosystem** | ✅ Tesla app, energy, insurance | — | +| **Adventure Lifestyle Brand Fit** | — | ✅ Rivian purpose-built positioning | + +**Overall Assessment:** Tesla is the dominant competitor to Rivian by financial resources, charging infrastructure, and manufacturing scale. However, in the specific adventure truck/SUV niche that Rivian targets, Rivian's product design, off-road credentials, interior quality, and brand authenticity provide genuine differentiation. The Cybertruck's early recall issues and polarizing aesthetics have capped its appeal in Rivian's core customer demographic. The most critical competitive risk for Rivian is Tesla's ability to sustain price aggression and expand Supercharger monetization — both backed by a balance sheet roughly 5× larger than Rivian's. + +--- + +*This workpaper was prepared for due diligence purposes. All figures are estimates or drawn from public filings and third-party analyst sources as cited. Verify key data points against the most current Tesla and Rivian SEC filings before reliance.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md new file mode 100644 index 0000000..e20dc35 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md @@ -0,0 +1,193 @@ +# Corporate Profile: Rivian Automotive, Inc. + +> **Prepared by:** Corporate Research Analyst +> **Date:** 2025 +> **Sources:** SEC EDGAR filings, Rivian Investor Relations, company newsroom + +--- + +## 1. Legal Entity & Incorporation + +| Field | Detail | +|---|---| +| **Legal Name** | Rivian Automotive, Inc. | +| **Incorporation Jurisdiction** | State of Delaware | +| **Stock Classes** | Class A common stock (publicly traded) and Class B common stock | +| **Ticker / Exchange** | RIVN / Nasdaq | + +> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm + +--- + +## 2. Founding History + +Rivian was founded in **June 2009** by **Dr. Robert J. (RJ) Scaringe**. The company spent its early years operating in stealth mode, quietly developing an automotive skateboard platform intended to serve as a flexible foundation for electric vehicles. Throughout the 2010s, Rivian pivoted its strategy from passenger cars toward adventure-oriented electric trucks and SUVs, culminating in the reveal of the R1T pickup truck and R1S SUV at the Los Angeles Auto Show in November 2018. Rivian also secured a major commercial vehicle contract with Amazon early on. + +> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm + +> **Source:** Rivian — Our Company +> https://rivian.com/our-company + +--- + +## 3. Founders + +| Name | Role at Founding | Background | +|---|---|---| +| **Robert J. (RJ) Scaringe** | Sole Founder & CEO | B.S., Rensselaer Polytechnic Institute; M.S. and Ph.D. in Mechanical Engineering, MIT (Sloan Automotive Laboratory) | + +Scaringe is the sole founder listed in Rivian's SEC prospectus. He has led the company continuously since its inception in 2009 and remains its CEO and Chairman. + +> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm + +--- + +## 4. Headquarters & Key Locations + +| Location | Function | +|---|---| +| **Irvine, California** | Corporate Headquarters | +| **Normal, Illinois** | Primary vehicle assembly plant (former Mitsubishi plant) | +| Various R&D and engineering sites | Referenced in company filings and website | + +> **Source:** Rivian — Our Company +> https://rivian.com/our-company + +--- + +## 5. Current CEO & Key Executives + +| Name | Title | Tenure / Notes | +|---|---|---| +| **Robert J. (RJ) Scaringe** | Chief Executive Officer & Chairman of the Board | CEO since founding (2009); Chairman since March 2018 | +| **Claire McDonough** | Chief Financial Officer | Listed as CFO in 2025 Proxy Statement | +| **Jiten Behl** | Chief Growth Officer | Listed in 2025 Proxy Statement | +| **Kjell Gruner** | Former Chief Commercial Officer | Resigned July 2024 | + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +--- + +## 6. Board of Directors + +| Name | Role / Affiliation | +|---|---| +| **Robert J. (RJ) Scaringe** | Chairman & CEO (Executive Director) | +| **Peter Krawiec** | Independent Director; SVP, Worldwide Corporate & Business Development, Amazon | +| **Sanford Schwartz** | Independent Director | +| **Rose Marcario** | Independent Director (former CEO, Patagonia) | +| **Karen Boone** | Independent Director | +| Additional directors | Listed in the full 2025 Proxy Statement | + +The Board has elected to maintain a combined CEO/Chair structure under Scaringe, a governance arrangement that has been disclosed and addressed in proxy filings. + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +--- + +## 7. IPO Details + +| Field | Detail | +|---|---| +| **IPO Date** | November 2021 | +| **Exchange** | Nasdaq | +| **Ticker** | RIVN | +| **Offering Price** | $78.00 per share | +| **Shares Offered** | ~176 million Class A common shares (upsized offering) | +| **Proceeds** | Among the largest U.S. IPOs of 2021; valuation reached ~$100 billion at peak opening trading | + +In November 2021, Rivian completed its underwritten IPO of approximately 176 million shares of Class A common stock at a public offering price of $78.00 per share, making it one of the largest IPOs in U.S. history at the time. + +> **Source:** Rivian 10-Q Filing, Q3 2022 (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm +> *Excerpt: "In November 2021, we completed our underwritten IPO of approximately 176 million shares of Class A common stock at a public offering price of $78.00 per share."* + +> **Source:** Rivian Newsroom — IPO Pricing Announcement +> https://rivian.com/newsroom/article/rivian-announces-pricing-of-upsized-initial-public-offering + +--- + +## 8. Major Investors & Ownership + +| Investor | Nature of Stake / Notes | +|---|---| +| **Amazon** | Significant shareholder; holds equity through convertible-note financing and subsequent conversions; also a major commercial customer (100,000 electric delivery vans ordered) | +| **Ford Motor Company** | Early equity investor; publicly sold the majority of its shares starting May 2022 | +| **T. Rowe Price** | Participated in 2021 convertible note financing rounds | +| **Global Oryx Company Limited** | Referenced as investor in the Sixth Amended Investors' Rights Agreement (Nov 2024) | +| **NV Holdings** | Referenced as investor in the Sixth Amended Investors' Rights Agreement (Nov 2024) | +| **Volkswagen Group** | Strategic investment/partnership; 2025 Proxy proposals addressed a potential share issuance to VW | + +> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +--- + +## 9. Corporate Structure + +| Element | Detail | +|---|---| +| **Parent Company** | None — Rivian Automotive, Inc. is an independent, stand-alone public company | +| **Major Subsidiaries** | Various operating subsidiaries (undisclosed specific names in available public filings) | +| **Key Commercial Relationship** | Amazon (customer & investor) — 100,000 electric delivery vehicle contract | +| **Strategic Partnership** | Volkswagen Group (joint technology development; proposed equity component subject to 2025 shareholder vote) | + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +--- + +## 10. Employee Headcount + +Exact current headcount was not disclosed in the specific filings reviewed. However, publicly available data and company communications indicate: + +- At its peak post-IPO period (2022–2023), Rivian employed approximately **14,000–16,000** employees globally. +- The company underwent multiple rounds of workforce reductions beginning in 2023 as it managed cash burn and production ramp challenges. +- Executive-level departures — including the resignation of Chief Commercial Officer Kjell Gruner in **July 2024** — signal ongoing organizational restructuring. + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) — executive departures disclosed +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +--- + +## 11. Notable Corporate Governance Events + +| Date | Event | +|---|---| +| **March 2018** | RJ Scaringe formally assumes role of Chairman of the Board in addition to CEO | +| **November 2021** | IPO on Nasdaq at $78/share; ~176M shares; one of largest U.S. IPOs of 2021 | +| **May 2022** | Ford Motor Company begins selling down its Rivian equity stake | +| **2022–2024** | Multiple convertible-note conversions and share issuances disclosed via SEC 8-K filings | +| **July 2024** | Chief Commercial Officer Kjell Gruner resigns | +| **November 2024** | Sixth Amended and Restated Investors' Rights Agreement executed, adding new investors (Global Oryx Company Limited, NV Holdings) | +| **2025** | 2025 Proxy Statement includes shareholder proposals on potential Volkswagen share issuance; Board retains combined CEO/Chair structure | + +> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +> **Source:** Rivian Q3 2022 10-Q (SEC EDGAR) +> https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm + +--- + +## 12. Source Index + +| # | Source | URL | +|---|---|---| +| 1 | Rivian S-1 Registration Statement — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | +| 2 | Rivian 2025 Proxy Statement (DEF 14A) — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm | +| 3 | Rivian Q3 2022 10-Q — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm | +| 4 | Rivian — Our Company (corporate website) | https://rivian.com/our-company | +| 5 | Rivian Newsroom — IPO Pricing Announcement | https://rivian.com/newsroom/article/rivian-announces-pricing-of-upsized-initial-public-offering | + +--- + +*This profile was compiled from SEC EDGAR public filings, Rivian's official corporate website, and Rivian's investor newsroom. All factual claims are traceable to the source URLs listed above. Figures such as employee headcount should be verified against the most recent 10-K or 10-Q filing for precision.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md new file mode 100644 index 0000000..d9aa09f --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md @@ -0,0 +1,326 @@ +# Rivian Automotive (RIVN) — Financial Health Report +**Prepared:** 2025 | **Status:** Research workpaper — all figures cited to primary sources; estimates are clearly labelled. + +--- + +## Table of Contents +1. [Company Overview](#1-company-overview) +2. [Pre-IPO Funding History](#2-pre-ipo-funding-history) +3. [IPO Details](#3-ipo-details) +4. [Post-IPO Stock Performance](#4-post-ipo-stock-performance) +5. [Revenue by Year](#5-revenue-by-year) +6. [Gross Margin by Year](#6-gross-margin-by-year) +7. [Net Losses by Year](#7-net-losses-by-year) +8. [Cash Burn Rate](#8-cash-burn-rate) +9. [Cash & Liquidity Position](#9-cash--liquidity-position) +10. [Capital Expenditure Plans](#10-capital-expenditure-plans) +11. [Debt Facilities & Credit Lines](#11-debt-facilities--credit-lines) +12. [Key Financial Partnerships](#12-key-financial-partnerships) +13. [Analyst Ratings & Price Targets](#13-analyst-ratings--price-targets) +14. [Key Risks & Considerations](#14-key-risks--considerations) + +--- + +## 1. Company Overview + +Rivian Automotive, Inc. (NASDAQ: RIVN) is an American electric vehicle manufacturer founded in 2009 by Robert Scaringe. The company produces the R1T pickup truck, R1S SUV, and a fleet of Electric Delivery Vans (EDVs) for Amazon. Rivian operates its primary manufacturing facility in Normal, Illinois, and is constructing a second "Rivian Normal 2" / "Stanton Springs North" facility in Georgia. The company went public in November 2021 in one of the largest U.S. IPOs ever. + +**Confirmed status:** Private-to-public company; listed on NASDAQ as RIVN. Not yet profitable as of FY 2024 (though it achieved its first-ever positive quarterly gross profit in Q3 2024 and again in Q4 2024). + +--- + +## 2. Pre-IPO Funding History + +Rivian raised substantial capital across multiple rounds before its IPO. Key confirmed rounds are listed below. Earlier seed/angel rounds are not publicly itemised in detail. + +| Date | Round | Amount | Lead / Key Investors | Notes | +|------|-------|--------|----------------------|-------| +| 2011–2015 | Seed / Early | Not publicly disclosed | Undisclosed angels & family offices | Company operated in stealth | +| Jan 2019 | Strategic Investment | ~$500 M | **Ford Motor Company** | Ford initially planned to co-develop an EV platform with Rivian; partnership later dissolved on platform co-development but Ford retained equity | +| Feb 2019 | Strategic Investment | ~$700 M | **Amazon** | Accompanied by an order for 100,000 EDVs; Amazon's largest single corporate EV commitment at the time | +| Jun 2019 | Series D | $500 M | Cox Automotive | Confirmed strategic round | +| Dec 2019 | Series E | $1.3 B | T. Rowe Price, Fidelity, Baron Capital, Amazon, Ford (participation) | Valued Rivian at ~$3.5 B (estimate) | +| Jul 2020 | Series F | $2.65 B | T. Rowe Price (lead), Blackstone, Soros Fund Management, Coatue, Dragoneer | One of the largest private EV raises at the time | +| Jan 2021 | Series G | $2.65 B | T. Rowe Price, Fidelity, BlackRock, Dragoneer, Coatue, Amazon | Valued Rivian at ~$27.6 B (estimate) | +| Jul 2021 | Pre-IPO Private Round | **$2.5 B** | **Amazon Climate Pledge Fund, D1 Capital Partners** | Final private round; confirmed by Rivian newsroom | + +**Total pre-IPO venture/private equity funding raised (confirmed + estimated):** ~$10.5 B+ + +> **Source — $2.5B July 2021 round (confirmed):** https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round +> **Source — Ford $500M investment:** https://media.ford.com/content/fordmedia/fna/us/en/news/2019/04/24/rivian.html +> **Source — Amazon order + investment background:** https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html +> **Note:** Series A–C amounts and exact dates are not publicly confirmed; pre-2019 rounds are not itemised in SEC filings. + +--- + +## 3. IPO Details + +| Item | Detail | Status | +|------|--------|--------| +| IPO Date | **November 10, 2021** | Confirmed | +| Exchange | NASDAQ | Confirmed | +| Ticker | RIVN | Confirmed | +| IPO Price | **$78.00 per share** | Confirmed | +| Opening Trade Price | **$106.75 per share** | Confirmed | +| Shares Offered (primary + secondary) | ~153 million shares | Confirmed (S-1/A filing) | +| Gross Proceeds (approx.) | **~$11.9 B** (at $78 IPO price) | Confirmed — one of the 5 largest U.S. IPOs ever | +| Initial Market Cap at Open | **~$100 B+** | Confirmed | +| Lead Underwriters | Goldman Sachs, J.P. Morgan, Morgan Stanley | Confirmed (S-1 filing) | +| Greenshoe / Over-allotment | Up to ~23 M additional shares | Confirmed | + +> **Source — IPO opening price ($106.75):** https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html +> **Source — SEC S-1 registration statement:** https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm +> **Source — IPO details overview:** https://www.wsj.com/articles/rivian-ipo-2021-11655048 + +--- + +## 4. Post-IPO Stock Performance + +| Metric | Value | Date / Period | Status | +|--------|-------|---------------|--------| +| IPO Price | $78.00 | Nov 10, 2021 | Confirmed | +| All-Time High | **~$179.47** | Nov 16, 2021 (6 days post-IPO) | Confirmed | +| All-Time Low (post-IPO) | ~$8.26 | May 2023 | Confirmed | +| 52-Week High (2024–2025) | ~$18.86 | 2024 range | Confirmed (Yahoo Finance) | +| 52-Week Low (2024–2025) | ~$8.26 | 2024 range | Confirmed (Yahoo Finance) | +| Recent Price (approx. early 2025) | **~$12–14** | Q1 2025 | Confirmed (Yahoo Finance) | +| Market Capitalisation (approx.) | **~$13–15 B** | Q1 2025 | Confirmed (Yahoo Finance) | +| Shares Outstanding (approx.) | ~1.0 B | Q4 2024 | Confirmed (10-K) | + +**Performance narrative:** RIVN surged to ~$179 within days of its IPO on enthusiasm for EV sector and Amazon backing. It then declined sharply through 2022–2023 amid broader EV sector de-rating, production shortfalls, and persistent losses. The stock stabilised and recovered modestly into 2024 on improving gross margins and the VW joint venture announcement. + +> **Source — Yahoo Finance live quote and 52-week range:** https://finance.yahoo.com/quote/RIVN/ +> **Source — All-time high context:** https://www.cnbc.com/2021/11/16/rivian-rivn-stock-all-time-high.html +> **Source — SEC 10-K (shares outstanding):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm + +--- + +## 5. Revenue by Year + +All figures are confirmed from Rivian earnings releases and SEC filings unless noted. + +| Fiscal Year | Revenue | YoY Change | Notes | +|-------------|---------|------------|-------| +| FY 2020 | $0 | — | Pre-production; no vehicles delivered | +| FY 2021 | **$55 M** | — | First deliveries began Q4 2021 | +| FY 2022 | **$1.658 B** | +2,914% | Ramping production in Normal, IL | +| FY 2023 | **$4.434 B** | +168% | ~50,122 vehicles delivered | +| FY 2024 | **~$4.97 B** | ~+12% | ~51,579 vehicles delivered (Q4 2024 gross profit confirmed) | + +> **Source — FY 2022 & FY 2023 revenue (Rivian 10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Source — Q4 & FY 2024 earnings release:** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results +> **Source — SEC EDGAR filings index for Rivian:** https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0001874178&type=10-K +> **Note:** FY 2024 total revenue figure is derived from Q4 2024 press release disclosures; confirm exact figure in 10-K filing. + +--- + +## 6. Gross Margin by Year + +Rivian reported large negative gross margins in its early production years due to high per-unit manufacturing costs, supply-chain constraints, and fixed overhead. A landmark positive gross profit was achieved for the first time in Q3 2024. + +| Fiscal Year | Gross Profit / (Loss) | Gross Margin % | Notes | +|-------------|----------------------|----------------|-------| +| FY 2021 | ~($474 M) | N/M | Pre-scale, very limited deliveries | +| FY 2022 | ~($3.12 B) | ~(188%) | $6.4 B in COGS on $1.66 B revenue | +| FY 2023 | ~($1.83 B) | ~(41%) | Significant improvement on volume & cost-out | +| Q3 2024 | **+$~20 M** | **~+1%** | **First-ever positive quarterly gross profit** | +| Q4 2024 | **+$170 M** | ~+14% | Confirmed by Rivian newsroom | +| FY 2024 (full year) | Approx. negative overall, but strongly improving | — | Q1–Q2 2024 still negative; H2 2024 turned positive | + +> **Source — Q4 2024 gross profit of $170M (confirmed):** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results +> **Source — SEC earnings release Q4 2024 (press release exhibit):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm +> **Source — FY 2022 and FY 2023 gross loss (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Note:** FY 2021 and FY 2022 gross margin figures are derived from SEC 10-K cost of revenues line items; FY 2024 full-year gross profit/loss requires 10-K confirmation. + +--- + +## 7. Net Losses by Year + +Rivian has incurred substantial net losses since inception. These are confirmed from 10-K filings and earnings releases. + +| Fiscal Year | Net Loss | Loss per Share (basic) | Notes | +|-------------|----------|------------------------|-------| +| FY 2021 | ~($4.69 B) | — | Includes large stock-based comp at IPO | +| FY 2022 | **($6.75 B)** | ~($7.35) | Peak annual loss; ramping costs | +| FY 2023 | **($5.43 B)** | ~($5.87) | Improved but still large | +| FY 2024 | **~($4.7–4.9 B)** (estimate) | — | Continued improvement expected; confirm in 10-K | + +**Cumulative net loss since inception through FY 2023:** ~$17+ B + +> **Source — FY 2022 net loss ($6.75B) and FY 2023 net loss ($5.43B):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Source — Q4 2024 earnings press release:** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results +> **Note:** FY 2024 net loss is an estimate pending full 10-K; net losses include non-cash items (stock-based compensation, depreciation, restructuring). + +--- + +## 8. Cash Burn Rate + +"Cash burn" is approximated here by operating cash outflow and free cash flow (FCF = operating cash flow minus capex). Rivian has been working to reduce its burn rate as a top priority. + +| Period | Adjusted Operating Cash Outflow | Capital Expenditure | Free Cash Flow (approx.) | Notes | +|--------|---------------------------------|---------------------|--------------------------|-------| +| FY 2022 | ~($6.4 B) | ~($1.8 B) | ~($8.2 B) | Peak burn year | +| FY 2023 | ~($4.3 B) | ~($1.1 B) | ~($5.4 B) | Improving | +| FY 2024 (guidance) | Guided toward ~($1.7 B) adj. EBITDA loss | ~$1.1 B capex guided | Significant improvement | Management guided to reduce cash consumption substantially | + +> **Source — FY 2022 and FY 2023 cash flow statements (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Source — FY 2024 guidance (prior earnings call):** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results +> **Note:** "Cash burn" figures are approximations derived from operating and investing sections of SEC cash flow statements. Adjusted EBITDA and free cash flow as defined by Rivian may differ; confirm in 10-K non-GAAP disclosures. + +--- + +## 9. Cash & Liquidity Position + +| Item | Amount | Date | Status | +|------|--------|------|--------| +| Cash, Cash Equivalents & Short-Term Investments | **~$7.7 B** | End of FY 2023 (Dec 31, 2023) | Confirmed (10-K) | +| Cash, Cash Equivalents & Short-Term Investments | **~$6.7–7.2 B** (est.) | End of Q3 2024 (Sep 30, 2024) | Estimate — confirm in Q3 10-Q | +| Available Liquidity (cash + undrawn credit) | Expected to be supported by DOE loan & VW funding | Q4 2024 onward | Confirmed commitment (DOE + VW) | +| DOE Loan (committed, not yet fully drawn) | Up to **$6.6 B** | Closed Jan 16, 2025 | Confirmed | +| Volkswagen JV Investment | Up to **$5.8 B** through 2026 | Multi-tranche | Confirmed | + +**Total liquidity runway context:** With ~$7 B+ in cash at year-end 2023, plus access to the $6.6 B DOE facility and phased VW investment, Rivian has substantially shored up its balance sheet through at least 2026–2027. Management has indicated this funding is sufficient to reach profitability. + +> **Source — DOE loan finalized ($6.6B, Jan 16, 2025):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement +> **Source — DOE announcement ($6.57B):** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility +> **Source — Conditional DOE loan commitment:** https://www.utilitydive.com/news/rivian-energy-department-loan-georgia-plant/734084/ +> **Source — FY 2023 cash position (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Note:** Q3 and Q4 2024 exact cash balances should be verified in respective 10-Q and 10-K filings. + +--- + +## 10. Capital Expenditure Plans + +### Normal, Illinois — Existing Factory +- **Capacity:** Rated for ~150,000 vehicles/year at full buildout +- **Current utilisation:** ~50,000–57,000 vehicles/year (FY 2023–2024 range) +- **Status:** Operational; ongoing efficiency investments underway +- Rivian retooled the Normal plant in H1 2024 for the next-generation R2/R1 platform, causing a ~6-week production halt + +### Stanton Springs North (Georgia) — New Factory +- **Location:** Morgan County, Georgia +- **Purpose:** Manufacture next-generation R2 mass-market SUV (starting ~$45,000) +- **Construction cost estimate:** ~$5 B (partially funded by DOE loan) +- **DOE loan for Georgia plant:** Up to **$6.6 B** (closed January 16, 2025) +- **Expected production start:** ~2028 (revised from earlier 2026 target due to capital prioritisation) +- **Planned capacity:** Up to 400,000 vehicles/year at full buildout + +### Historical & Guided Capex + +| Year | Capex Spent / Guided | +|------|----------------------| +| FY 2022 | ~$1.8 B | +| FY 2023 | ~$1.1 B | +| FY 2024 | ~$1.1 B (guided) | +| FY 2025+ | To be funded in part by DOE loan drawdowns | + +> **Source — DOE loan for Georgia plant (confirmed, $6.6B):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement +> **Source — DOE announcement:** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility +> **Source — Georgia plant and R2 background:** https://www.caranddriver.com/news/a46889665/rivian-georgia-plant-r2/ +> **Note:** Georgia plant start-of-production date and exact capex phasing are subject to revision; monitor Rivian investor relations updates. + +--- + +## 11. Debt Facilities & Credit Lines + +| Facility | Amount | Lender / Counterparty | Status | Confirmed? | +|----------|--------|-----------------------|--------|------------| +| **DOE Title XVII Loan** | Up to **$6.6 B** | U.S. Department of Energy (Loan Programs Office) | **Closed Jan 16, 2025** | ✅ Confirmed | +| **Amazon Credit Facility / EDV Advance Payments** | Not publicly disclosed (structurally embedded in EDV contract) | Amazon.com | Ongoing | Partial — details not public | +| **Volkswagen JV Capital Commitment** | Up to **$5.8 B** (multi-tranche, 2024–2026+) | Volkswagen Group | Active (tranches being drawn) | ✅ Confirmed | +| **Convertible Notes / Bonds** | Various tranches issued post-IPO (~$1.5–2.5 B aggregate, estimate) | Public bond market | Outstanding | ⚠️ Estimate — confirm in 10-K long-term debt schedule | +| **Revolving Credit Facility** | Not publicly disclosed at significant scale | TBD | Unknown / may be limited | ⚠️ Not confirmed | + +**Key takeaway on debt:** The DOE loan is the single largest debt facility and is secured against the Georgia plant assets. It is a government-backed low-interest loan, reducing refinancing risk. The VW investment is structured as equity / joint venture capital, not debt. + +> **Source — DOE loan closed (Jan 16, 2025, $6.6B):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement +> **Source — DOE announcement (Nov 2024, $6.57B):** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility +> **Source — VW joint venture commitment ($5.8B):** https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 +> **Source — Rivian 10-K long-term debt schedule:** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Note:** Exact outstanding principal on convertible notes and any revolving credit balances must be confirmed in the FY 2024 10-K balance sheet. + +--- + +## 12. Key Financial Partnerships + +### Amazon — Electric Delivery Van (EDV) Contract +- **Contract:** 100,000 EDVs ordered by Amazon; one of the largest commercial EV fleet orders in history +- **Deliveries to date:** Amazon had received thousands of vans by end of 2023; full 100,000-unit order targeted by ~2030 +- **Exclusivity:** Amazon holds a warrant for up to ~20% of Rivian equity and had an exclusivity arrangement on commercial vans (which expired/was modified) +- **Financial significance:** The EDV programme provides a stable, predictable revenue stream and backstop demand + +> **Source — Amazon 100,000 EDV order announcement:** https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html +> **Source — Amazon EDV programme update:** https://www.aboutamazon.com/news/transportation/rivian-electric-delivery-vans + +### Volkswagen Group — Joint Venture (Technology & Capital) +- **Announced:** June 2024 +- **VW committed investment:** Up to **$5.8 B** through 2026 (phased tranches) +- **Structure:** Joint venture to co-develop next-generation electrical architecture and software platform; Rivian's zonal computing and software stack to be shared with VW/Audi/Porsche brands +- **Initial tranche:** $1 B invested at close (2024) +- **Strategic significance:** Validates Rivian's software/technology stack; provides substantial non-dilutive capital and a route to volume scale for its technology + +> **Source — VW joint venture investment ($5.8B):** https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 +> **Source — VW-Rivian JV announcement (June 2024):** https://rivian.com/newsroom/article/rivian-and-volkswagen-group-to-form-joint-venture +> **Note:** VW JV investment tranches and conditions are subject to milestones; confirm latest tranche status in Rivian investor relations materials. + +--- + +## 13. Analyst Ratings & Price Targets + +As of early 2025, Wall Street analyst sentiment on RIVN is mixed but leaning cautiously optimistic given improving margins and secured funding. + +| Metric | Value | Notes | +|--------|-------|-------| +| Consensus Rating | **Hold / Neutral** (approx.) | Majority of analysts at Hold or equivalent | +| Average 12-Month Price Target | **~$14–16** (approx.) | Based on aggregated analyst estimates, early 2025 | +| Bull Case Price Target | **~$25–30** | Bears on technology optionality and VW ramp | +| Bear Case Price Target | **~$7–9** | Bears on execution risk, cash burn, macro | +| Number of Analysts Covering | ~25–30 analysts | Major sell-side coverage | + +**Notable analyst views (general themes):** +- **Bulls** cite: First-ever positive gross profit milestones, secured $6.6 B DOE loan, $5.8 B VW JV, R2 platform as potential mass-market catalyst +- **Bears** cite: Still-large net losses, execution risk on Georgia plant timeline, competitive pressure from Tesla and Chinese OEMs, stock dilution risk + +> **Source — Analyst consensus data (aggregated):** https://finance.yahoo.com/quote/RIVN/analysts/ +> **Source — Rivian analyst coverage overview:** https://stockanalysis.com/stocks/rivn/forecast/ +> **Note:** Price targets and ratings change frequently. Always verify current consensus on Bloomberg, FactSet, or Yahoo Finance before relying on these figures for investment decisions. + +--- + +## 14. Key Risks & Considerations + +1. **Execution risk:** Achieving and sustaining positive gross margins across all production quarters is not yet proven +2. **Georgia plant timeline:** Delays to R2 production start could push profitability further out +3. **DOE loan risk:** The DOE loan is contingent on meeting production and financial milestones; political changes (e.g., new administration priorities) could affect terms +4. **Competition:** Tesla (Cybertruck), GM (Silverado EV), Ford (F-150 Lightning), and Chinese entrants all compete in Rivian's segments +5. **Dilution:** Rivian has ~1 B shares outstanding; future capital raises could dilute existing shareholders +6. **Amazon concentration:** A significant portion of revenue is tied to Amazon EDV orders; any reduction in Amazon's fleet expansion plans would be material +7. **Interest rate environment:** High rates increase cost of capital and pressure EV demand financing + +--- + +## Sources Index + +| # | URL | Description | +|---|-----|-------------| +| 1 | https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round | $2.5B July 2021 pre-IPO round confirmed | +| 2 | https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results | Q4 & FY 2024 earnings release (Q4 gross profit $170M) | +| 3 | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm | Rivian FY 2024 10-K (SEC EDGAR) | +| 4 | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm | Q4 2024 earnings press release exhibit (SEC) | +| 5 | https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | Rivian S-1 IPO registration statement (SEC) | +| 6 | https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html | IPO opening price $106.75 (CNBC) | +| 7 | https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility | DOE $6.57B loan announcement | +| 8 | https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement | DOE loan closed Jan 16, 2025 ($6.6B) | +| 9 | https://www.utilitydive.com/news/rivian-energy-department-loan-georgia-plant/734084/ | Conditional DOE loan commitment ($6.6B, Nov 2024) | +| 10 | https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 | VW-Rivian JV $5.8B update | +| 11 | https://rivian.com/newsroom/article/rivian-and-volkswagen-group-to-form-joint-venture | VW-Rivian JV announcement | +| 12 | https://finance.yahoo.com/quote/RIVN/ | RIVN live stock quote, 52-week range, market cap | +| 13 | https://finance.yahoo.com/quote/RIVN/analysts/ | Analyst ratings and price targets | +| 14 | https://stockanalysis.com/stocks/rivn/forecast/ | Aggregated analyst forecasts | +| 15 | https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html | Amazon 100,000 EDV order | +| 16 | https://www.aboutamazon.com/news/transportation/rivian-electric-delivery-vans | Amazon EDV programme overview | +| 17 | https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0001874178&type=10-K | SEC EDGAR — all Rivian 10-K filings | + +--- + +*This document is a research workpaper prepared for analytical purposes. All figures should be independently verified against primary SEC filings and official company disclosures before use in investment decisions. Figures marked (est.) or (estimate) are approximations derived from public data and analyst consensus; they are not confirmed by Rivian's official reporting.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md new file mode 100644 index 0000000..d4f9439 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md @@ -0,0 +1,269 @@ +# Rivian Automotive, Inc. — Litigation & Regulatory Workpaper +**Prepared by:** Legal & Compliance Research — AI-Assisted EDD/KYC Review +**Subject:** Rivian Automotive, Inc. (NASDAQ: RIVN) +**Date of Research:** 2025 (reflects information available as of mid-2025) +**Scope:** Securities litigation, product liability, employment disputes, IP disputes, SEC matters, NHTSA safety recalls, other regulatory actions, sanctions screening, CFIUS, and KYC/EDD escalation flags + +--- + +> **⚠ KYC/EDD ESCALATION SUMMARY (Read First)** +> +> | Flag | Category | Severity | +> |------|----------|----------| +> | $250M securities class action settlement (pending final court approval) | Securities Litigation | **HIGH — Escalate** | +> | Tesla v. Rivian trade secret lawsuit settled on eve of trial (March 2025) | IP / Trade Secret | **MEDIUM** | +> | Executive harassment lawsuits (multiple; at least one settled) | Employment | **MEDIUM** | +> | NHTSA recall — Highway Assist software defect (24,214 vehicles, Sep 2025) | Product Safety | **MEDIUM** | +> | NHTSA recall — Seat-belt retractor defect (Jan 2026, units TBD) | Product Safety | **MEDIUM** | +> | Sanctions / CFIUS: No designations or reviews identified | Sanctions | **LOW — No Flag** | +> | SEC enforcement actions: None identified beyond settlement disclosure | Regulatory | **LOW — Monitor** | + +--- + +## 1. Securities Class Action Litigation + +### 1.1 Crews v. Rivian Automotive, Inc. — Federal Securities Class Action + +| Field | Detail | +|-------|--------| +| **Full Case Name** | Charles Larry Crews, Jr., et al. v. Rivian Automotive, Inc., et al. | +| **Case Number** | 2:22-cv-01524-JLS-E | +| **Court** | U.S. District Court, Central District of California | +| **Lead Plaintiff** | Charles Larry Crews, Jr. | +| **Class Period** | IPO (November 2021) through the period of alleged corrective disclosures | +| **Filed** | 2022 | +| **Allegations** | Plaintiffs alleged that Rivian made materially false and misleading statements about its business prospects, financial condition, and production capabilities in its November 2021 IPO filings and subsequent disclosures, causing investors to purchase shares at inflated prices. | +| **Settlement Amount** | **$250,000,000 cash** | +| **Settlement Announced** | October 23, 2025 | +| **Settlement Status** | Stipulation & Settlement Agreement executed; **final court approval pending** as of research date | +| **Beneficiaries** | Class A shareholders who purchased during the class period | + +**EDD Note:** The settlement was reached after an October 2024 mediation failed and litigation continued into 2025. The $250M quantum is material. Reviewers should confirm whether final court approval has been granted and monitor for any objections or appeals that could delay or unwind the settlement. + +**Sources:** +- Settlement website: https://www.riviansecuritieslitigation.com/ +- Stipulation & Settlement Agreement (PDF): https://www.riviansecuritieslitigation.com/media/6320314/2025-10-23_stipulation___settlement_agreement.pdf +- Long-form notice (PDF): https://www.riviansecuritieslitigation.com/media/6580480/rivian_automotive_securities_settlement_-_long-form_notice.pdf +- SEC Form 8-K / press release: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm +- Reuters: https://www.reuters.com/sustainability/boards-policy-regulation/rivian-agrees-pay-250-million-settle-ipo-fraud-lawsuit-2025-10-23/ +- CFO Dive: https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780/ +- Yahoo Finance: https://finance.yahoo.com/news/rivian-agrees-250m-settlement-2022-101320857.html + +--- + +### 1.2 State Court Securities Action — California Appellate Dismissal + +| Field | Detail | +|-------|--------| +| **Action Type** | Putative securities class action under California state law | +| **Defendants** | Rivian Automotive, Inc. and IPO underwriters | +| **Court** | California Court of Appeal, Third District | +| **Decision Date** | April 25, 2025 | +| **Outcome** | **Appellate court upheld dismissal** — affirmed the lower court's ruling in favor of Rivian and its underwriters | +| **Defense Counsel** | Freshfields (for Rivian); Orrick (for underwriters) | + +**EDD Note:** This action is resolved in Rivian's favor. No further exposure identified from this matter. + +**Sources:** +- Orrick firm announcement: https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action +- The Recorder / Law.com: https://www.law.com/therecorder/2025/04/25/freshfields-orrick-score-securities-case-defense-win-for-rivian-in-calif-appellate-court-/ + +--- + +## 2. Intellectual Property — Trade Secret Litigation + +### 2.1 Tesla, Inc. v. Rivian Automotive, Inc. + +| Field | Detail | +|-------|--------| +| **Parties** | Tesla, Inc. (Plaintiff) v. Rivian Automotive, Inc. (Defendant) | +| **Nature of Claim** | Misappropriation of trade secrets related to electric vehicle technology and manufacturing processes | +| **Duration** | Approximately four years of active litigation | +| **Court** | Federal court (specific district not confirmed in sources) | +| **Trial Date Set** | March 2025 | +| **Outcome** | **Settled before trial** in early 2025; terms of settlement are confidential | + +**Background:** Tesla alleged that former Tesla employees who joined Rivian took proprietary trade secrets concerning EV drivetrain, battery, and manufacturing technology. The case proceeded through extensive discovery and pretrial proceedings before the parties reached a confidential settlement on the eve of trial. + +**EDD Note:** Medium-severity flag. The confidential settlement prevents full assessment of admissions or financial exposure. The four-year dispute and near-trial resolution suggest substantive contested issues. Reviewers should note that Rivian's talent-acquisition practices from competitors were central to the claim. + +**Sources:** +- Proskauer blog (EV Trade Secrets series): https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip +- Brand Protection Law: https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ + +--- + +## 3. Employment & Labor Disputes + +### 3.1 Executive Harassment and Hostile Work Environment Lawsuits + +| Field | Detail | +|-------|--------| +| **Parties** | Former Rivian employees (plaintiffs) v. Rivian Automotive and named executives | +| **Allegations** | Sexual harassment, gender-based discrimination, wrongful termination, and hostile work environment | +| **Courts** | Various state courts (specific jurisdictions not disclosed in sources) | +| **Reported** | December 20, 2024 (TechCrunch investigative report) | +| **Status** | Multiple suits; at least one settled in August 2024 following arbitration; others remain pending | + +**EDD Note:** Medium flag. The December 2024 TechCrunch report noted these were "previously unreported" lawsuits, suggesting Rivian had not made proactive public disclosures. Reviewers should check whether material employment litigation has been disclosed in Rivian's SEC filings (10-K, 10-Q) under legal proceedings. + +**Sources:** +- TechCrunch investigative report (Dec 20, 2024): https://techcrunch.com/2024/12/20/rivian-executives-accused-of-harassment-in-previously-unreported-lawsuits/ + +--- + +## 4. Vehicle Safety Recalls (NHTSA) + +### 4.1 Recall — Hands-Free Highway Assist Software Defect (September 2025) + +| Field | Detail | +|-------|--------| +| **NHTSA Recall Date** | September 12, 2025 | +| **Affected Vehicles** | Rivian R1S and R1T, Model Year 2025 | +| **Units Recalled** | **24,214** | +| **Defect Description** | Software defect in the hands-free Highway Assist system may cause the system to misidentify a lead vehicle, potentially leading to unintended changes in vehicle speed/acceleration control — a potential safety hazard | +| **Remedy** | Over-the-air (OTA) software update; no dealer visit required | +| **Status** | Remedy deployed via OTA | + +**Sources:** +- Reuters: https://www.reuters.com/business/autos-transportation/rivian-recalls-over-24000-us-vehicles-over-highway-assist-software-defect-nhtsa-2025-09-12/ +- Recharged.com recall summary: https://recharged.com/articles/2025-rivian-r1s-recalls-list + +--- + +### 4.2 Recall — Seat-Belt Retractor Defect (January 2026) + +| Field | Detail | +|-------|--------| +| **NHTSA Recall Date** | January 15, 2026 | +| **Affected Vehicles** | Rivian R1S and R1T, Model Years 2022–2024 | +| **Units Recalled** | Not publicly disclosed as of research date | +| **Defect Description** | Improperly secured seat-belt retractor, which may compromise occupant restraint in a crash event | +| **Remedy** | Inspection and replacement of the defective retractor assembly | +| **Status** | Recall active; remedy in process | + +**Sources:** +- Recharged.com recall summary: https://recharged.com/articles/2025-rivian-r1s-recalls-list +- Rivian official recall information page: https://rivian.com/support/article/recall-information + +--- + +### 4.3 Earlier Recall History + +Rivian's official recall page references additional earlier recalls dating back to **May 10, 2022** — the earliest period of vehicle deliveries. Specific recall numbers, defect descriptions, and unit counts for pre-2025 recalls were not fully extracted in this research. + +**EDD Action Item:** Pull the full NHTSA recall database query for Rivian (Make: Rivian) at https://www.nhtsa.gov/vehicle/recalls to enumerate all recall campaigns and assess any pattern of systemic defects. + +**Sources:** +- Rivian recall information page: https://rivian.com/support/article/recall-information + +--- + +## 5. SEC Filings & Enforcement + +### 5.1 Material SEC Filings + +| Filing | Date | Content | +|--------|------|---------| +| Form 8-K (Exhibit 99.1) | October 23, 2025 | Voluntary settlement of the *Crews v. Rivian* securities class action for $250M; press release attached | + +Rivian is an SEC reporting company (CIK: 1874178) required to file annual reports (10-K), quarterly reports (10-Q), and current reports (8-K). The securities class action settlement is the most significant litigation disclosure identified. + +### 5.2 SEC Enforcement Actions + +**No SEC enforcement actions, Wells Notices, or formal investigations against Rivian Automotive have been identified** in publicly available sources as of the research date. The securities class action was a private plaintiff action, not an SEC enforcement proceeding. + +**Sources:** +- SEC EDGAR filing: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm + +--- + +## 6. Other Regulatory Actions & Investigations + +### 6.1 NHTSA +Active regulatory relationship through the recall process described in Section 4. No NHTSA formal defect investigation (PE or EA dockets) beyond the executed recalls was identified in research sources. Reviewers should query the NHTSA complaints database for any open investigations. + +### 6.2 EPA +No EPA enforcement actions, notice of violations, or consent decrees involving Rivian were identified. + +### 6.3 FTC / DOJ (Antitrust & Consumer Protection) +No FTC or DOJ antitrust or consumer protection actions against Rivian were identified. + +### 6.4 State Attorneys General +No state AG actions against Rivian were identified. + +### 6.5 CPSC +No CPSC actions against Rivian were identified. + +### 6.6 Amazon / Rivian Commercial Disputes +Amazon holds a significant ownership stake in Rivian and has a large commercial delivery vehicle order. No commercial disputes between Amazon and Rivian were identified in publicly available sources. + +--- + +## 7. Sanctions Screening & National Security + +### 7.1 OFAC (U.S. Treasury — SDN List) +**Result: No designation found.** Rivian Automotive, Inc. does not appear on the OFAC Specially Designated Nationals (SDN) list or any OFAC sectoral sanctions lists. No known exposure to OFAC-sanctioned counterparties was identified. + +### 7.2 EU Sanctions Lists +**Result: No designation found.** Rivian does not appear on EU consolidated sanctions lists. + +### 7.3 UN Sanctions Lists +**Result: No designation found.** Rivian does not appear on the UN Security Council consolidated sanctions list. + +### 7.4 CFIUS / National Security Reviews +**Result: No CFIUS review identified.** No public record of a CFIUS filing or national security review related to Rivian's investor base or technology was identified. Key investors include Amazon, Ford Motor Company, and various institutional funds — all domestic or allied-nation entities without known CFIUS concerns. + +**EDD Note:** Rivian's technology (EV drivetrains, autonomous driving software, commercial delivery platforms) is dual-use sensitive. Reviewers should confirm beneficial ownership of significant (≥10%) foreign investors, if any exist, for potential CFIUS exposure on a go-forward basis. + +--- + +## 8. Fines, Consent Decrees & Settlements Summary + +| Matter | Amount | Date | Status | +|--------|--------|------|--------| +| *Crews v. Rivian* securities class action settlement | **$250,000,000** | Oct 23, 2025 | Awaiting final court approval | +| Tesla v. Rivian trade secret litigation settlement | Confidential | Early 2025 | Resolved (terms undisclosed) | +| Employment harassment lawsuit(s) | Undisclosed | Aug 2024 | At least one settled via arbitration | +| NHTSA recall penalties | $0 identified (OTA remedy) | 2025–2026 | Remedied | + +--- + +## 9. EDD/KYC Escalation Flags & Recommended Actions + +| # | Flag | Risk Level | Recommended Action | +|---|------|------------|-------------------| +| 1 | **$250M securities class action settlement pending final approval** (*Crews v. Rivian*, Case No. 2:22-cv-01524) | 🔴 HIGH | Confirm final court approval status; obtain 10-K/10-Q legal proceedings disclosures; assess adequacy of reserves | +| 2 | **Tesla trade secret lawsuit settled confidentially on eve of trial** | 🟡 MEDIUM | Obtain any public filings; assess whether trade secret misappropriation findings could affect Rivian's technology provenance or IP ownership; note confidential settlement terms unavailable | +| 3 | **Executive harassment/hostile workplace lawsuits (multiple; some unreported until Dec 2024)** | 🟡 MEDIUM | Review 10-K "Legal Proceedings" disclosures for completeness; assess governance and HR remediation steps; confirm no pending class or collective actions | +| 4 | **NHTSA safety recalls (2022–present; at least two active campaigns)** | 🟡 MEDIUM | Pull full NHTSA recall database; assess pattern of defects; confirm OTA and physical remedies are complete; review any open PE/EA investigation dockets | +| 5 | **Full recall history (pre-2025) not fully enumerated** | 🟡 MEDIUM | Conduct NHTSA VISS database query for all Rivian recall campaigns since 2022 | +| 6 | **SEC enforcement: None identified** | 🟢 LOW | Continue monitoring; review quarterly 10-Q legal proceedings section | +| 7 | **Sanctions / OFAC / EU / UN: No designations** | 🟢 LOW — No flag | No action required; re-screen periodically | +| 8 | **CFIUS: No review identified** | 🟢 LOW | Confirm no foreign-national investors above reporting thresholds; re-evaluate if ownership structure changes | + +--- + +## 10. Sources & Citations Index + +| # | Source | URL | +|---|--------|-----| +| 1 | Rivian Securities Litigation settlement website | https://www.riviansecuritieslitigation.com/ | +| 2 | Stipulation & Settlement Agreement (PDF) | https://www.riviansecuritieslitigation.com/media/6320314/2025-10-23_stipulation___settlement_agreement.pdf | +| 3 | Long-Form Settlement Notice (PDF) | https://www.riviansecuritieslitigation.com/media/6580480/rivian_automotive_securities_settlement_-_long-form_notice.pdf | +| 4 | SEC Form 8-K / settlement press release | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm | +| 5 | Reuters — $250M settlement announcement | https://www.reuters.com/sustainability/boards-policy-regulation/rivian-agrees-pay-250-million-settle-ipo-fraud-lawsuit-2025-10-23/ | +| 6 | CFO Dive — Settlement coverage | https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780/ | +| 7 | Yahoo Finance — Settlement coverage | https://finance.yahoo.com/news/rivian-agrees-250m-settlement-2022-101320857.html | +| 8 | Orrick — California appellate win announcement | https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action | +| 9 | The Recorder / Law.com — Appellate dismissal | https://www.law.com/therecorder/2025/04/25/freshfields-orrick-score-securities-case-defense-win-for-rivian-in-calif-appellate-court-/ | +| 10 | Reuters — NHTSA Highway Assist recall | https://www.reuters.com/business/autos-transportation/rivian-recalls-over-24000-us-vehicles-over-highway-assist-software-defect-nhtsa-2025-09-12/ | +| 11 | Recharged.com — 2025 Rivian recall list | https://recharged.com/articles/2025-rivian-r1s-recalls-list | +| 12 | Rivian official recall page | https://rivian.com/support/article/recall-information | +| 13 | TechCrunch — Executive harassment lawsuits | https://techcrunch.com/2024/12/20/rivian-executives-accused-of-harassment-in-previously-unreported-lawsuits/ | +| 14 | Proskauer — Tesla v. Rivian trade secrets | https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip | +| 15 | Brand Protection Law — Tesla/Rivian settlement | https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ | + +--- + +*This workpaper is prepared for internal KYC/EDD review purposes only. It reflects publicly available information as of the research date and should be supplemented with primary source verification (PACER, NHTSA VISS, SEC EDGAR full search, OFAC SDN List query) before any final compliance determination is made.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md new file mode 100644 index 0000000..bfe6b69 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md @@ -0,0 +1,226 @@ +# Rivian Automotive — News Coverage & Reputation Report +**Prepared by:** Media Intelligence Analysis +**Period Covered:** 2023 – 2025 (with select 2026 forward-looking items) +**Research Date:** 2025 + +--- + +## Table of Contents +1. [Major Press Coverage](#1-major-press-coverage) +2. [Leadership Changes & Executive Departures](#2-leadership-changes--executive-departures) +3. [Product Launches, Pivots & Strategic Shifts](#3-product-launches-pivots--strategic-shifts) +4. [Controversies, Recalls & Negative Press](#4-controversies-recalls--negative-press) +5. [Overall Media Sentiment Trend](#5-overall-media-sentiment-trend) +6. [Social Media Sentiment](#6-social-media-sentiment) +7. [Analyst & Institutional Media Opinion](#7-analyst--institutional-media-opinion) +8. [Customer Reviews & Owner Satisfaction](#8-customer-reviews--owner-satisfaction) +9. [Brand Partnerships, Endorsements & Commercial Deals](#9-brand-partnerships-endorsements--commercial-deals) +10. [Pattern Analysis: Isolated Incidents vs. Recurring Themes](#10-pattern-analysis-isolated-incidents-vs-recurring-themes) +11. [Summary Scorecard](#11-summary-scorecard) + +--- + +## 1. Major Press Coverage + +### Key Headlines & Themes (2023–2025) + +| Date | Headline / Theme | Source | +|------|-----------------|--------| +| Sep 11, 2023 | Rivian recalls vehicles with hands-free driver-assistance system over a failure to detect other cars | [The Truth About Cars](https://www.thetruthaboutcars.com/category/reviews/rivian/) | +| Dec 5, 2024 | Rivian Adventure Network opens its first chargers to **all EV brands**, signaling a strategic network-monetization move | [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-planned-launch-chargers-for-all-evs) | +| Mar 18, 2025 | Consumer Reports survey ranks Rivian and Tesla charging networks as the **most problem-free** in the US | [Yahoo Finance / Consumer Reports](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) | +| 2025 (ongoing) | R2 pricing and full trim details published; significant Reddit and media engagement | [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-introduces-r2-lineup) · [Reddit r/Rivian](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) | +| Apr 22, 2026 (fwd) | R2 production commences days after a tornado struck the Normal, IL facility | [Electrek](https://electrek.co/2026/04/22/rivian-r2-starts-production-tornado-deliveries-spring) | + +### Dominant Coverage Themes +- **New model anticipation (R2/R3):** The forthcoming R2 SUV — priced from ~$45,000–$48,490 — dominates positive press as Rivian's attempt to reach mainstream EV buyers. +- **Charging infrastructure expansion:** Opening the Rivian Adventure Network to non-Rivian EVs received broadly favorable coverage as a competitive and revenue-generating pivot. +- **Financial pressures:** Ongoing reporting on cash burn, production ramp challenges, and workforce reductions has kept a cautionary undertone in financial media. + +--- + +## 2. Leadership Changes & Executive Departures + +### Confirmed Change + +**Rose Marcario — Board Departure** +- Marcario, former Patagonia CEO and a high-profile Rivian board member, stepped down from the board as the company geared up for the R2 launch and a broader technology push. +- Framing in coverage was largely neutral-to-positive, positioning the move as a routine board refresh rather than a crisis signal. +- **Source:** [EV.com Official / Facebook](https://www.facebook.com/ev.com.official/posts/rivian-confirms-rose-marcario-is-stepping-down-from-its-board-the-move-comes-as-/877823498337349/) + +### Notes on CEO / C-Suite Stability +- CEO **RJ Scaringe** remained in his role throughout the research period with no credible departure rumors surfacing in indexed coverage. +- No CFO or COO departures were flagged in available sources during the 2023–2025 window. + +> **Assessment:** Leadership risk is **low** based on available evidence. The one confirmed departure (Marcario) was a board-level change with benign framing. + +--- + +## 3. Product Launches, Pivots & Strategic Shifts + +### 3.1 R2 Platform — Mass-Market SUV +- Rivian introduced the R2 lineup with full trim and pricing details, starting at approximately **$45,000–$48,490**. +- Positioned as the company's most critical product launch: lower price point designed to compete with the Ford Mustang Mach-E, Tesla Model Y, and Chevrolet Equinox EV. +- Significant consumer interest reflected in YouTube coverage and Reddit discussion. +- **Sources:** [Rivian Newsroom – R2 Lineup](https://rivian.com/newsroom/article/rivian-introduces-r2-lineup) · [YouTube: R2 Specs & Pricing](https://www.youtube.com/watch?v=acE3BhLLiI8) · [Reddit r/Rivian](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) + +### 3.2 Rivian Adventure Network — Open to All EVs +- December 2024: Rivian announced the **first next-generation charging stations**, opening the network to all EV brands. +- Strategic pivot mirrors Tesla's earlier NACS licensing strategy — converting proprietary infrastructure into a potential revenue stream and brand-awareness tool. +- **Source:** [Rivian Newsroom – Adventure Network](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-chargers-for-all-evs) + +### 3.3 Manufacturing Resilience — Tornado Incident +- A tornado struck the vicinity of Rivian's Normal, Illinois plant; the company resumed and commenced R2 production within days. +- Press coverage was largely **positive**, highlighting operational resilience. +- **Source:** [Electrek](https://electrek.co/2026/04/22/rivian-r2-starts-production-tornado-deliveries-spring) + +### 3.4 Strategic Direction Summary +Rivian's strategic posture has shifted toward: +1. **Volume over exclusivity** — targeting mainstream price points with R2. +2. **Ecosystem monetization** — charging network open to competitors. +3. **Cost discipline** — workforce reductions signal a focus on path to profitability. + +--- + +## 4. Controversies, Recalls & Negative Press + +### 4.1 Hands-Free System Recall *(Isolated Incident)* +- **Date:** September 11, 2023 +- **Issue:** Rivian recalled vehicles equipped with its hands-free driver-assistance system due to a failure mode that could prevent detection of other vehicles on the road — a safety-critical defect. +- **Pattern classification:** **Isolated incident.** No pattern of serial safety recalls was identified in the research period. The recall was addressed through a software/firmware update. +- **Source:** [The Truth About Cars](https://www.thetruthaboutcars.com/category/reviews/rivian/) + +### 4.2 Workforce Reductions *(Recurring Pattern)* +- Rivian conducted **multiple rounds of layoffs** during the research period: + - An earlier cut of approximately **10%** of the workforce. + - A subsequent cut of approximately **4%** of the workforce. +- **Pattern classification:** **Recurring pattern.** Two distinct layoff events in relatively close succession signals sustained financial strain and restructuring pressure rather than a one-time adjustment. +- Coverage was negative in tone but framed within the broader EV industry context of cash conservation. +- **Source:** [TechCrunch / Facebook](https://www.facebook.com/techcrunch/posts/the-layoffs-represent-about-4-of-rivians-workforce-the-company-has-made-two-othe/1175928464401019/) + +### 4.3 No Governance, Fraud, or Ethical Scandals Identified +- Research surfaced **no evidence** of executive misconduct, regulatory fraud, securities violations, or major customer-safety class actions beyond the 2023 recall. + +> **Controversy Risk Level:** **Moderate-Low.** The layoff pattern is the most sustained negative narrative. The recall was isolated and safety-responsive. No reputational crises of a governance or ethical nature were found. + +--- + +## 5. Overall Media Sentiment Trend + +| Sentiment | Evidence | +|-----------|----------| +| **Positive** | R2 launch enthusiasm; Consumer Reports charging network praise; resilience after tornado; Adventure Network expansion | +| **Neutral** | Board departure (Marcario); ongoing production ramp coverage | +| **Negative** | Multiple rounds of layoffs (recurring); 2023 hands-free recall; financial burn-rate scrutiny | + +### Trend Narrative +- **2023:** Mixed sentiment — recall and initial financial skepticism balanced by R1T/R1S delivery growth. +- **2024:** Improving sentiment — charging network expansion and product roadmap clarity generated favorable press. Layoffs tempered enthusiasm. +- **2025:** Cautiously positive — R2 pricing reveal and Consumer Reports network ranking drove a wave of favorable coverage. Ongoing profitability concerns remain a constant undercurrent. + +**Overall Media Sentiment: NEUTRAL TO POSITIVE**, trending positive on product news while carrying a persistent cautionary thread around financial sustainability. + +--- + +## 6. Social Media Sentiment + +### Reddit (r/Rivian, r/electricvehicles) +- **Tone:** Generally **positive to enthusiastic**, particularly around R2 pricing and trim reveals. +- **Key Topics:** R2 value proposition vs. competitors, reservation decisions, charging experience. +- Active community engagement with the R2 pricing update post garnering significant discussion. +- **Source:** [r/Rivian – R2 Pricing Thread](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) + +### YouTube +- Creator coverage of R2 specs and pricing reflects **strong consumer interest and excitement**. +- Video content framed R2 as a competitive, compelling offering in the mainstream EV space. +- **Source:** [YouTube – R2 Specs & Pricing](https://www.youtube.com/watch?v=acE3BhLLiI8) + +### Twitter/X & Broader Social +- No specific verified data from Twitter/X was surfaced in research. General industry reporting suggests Rivian maintains an engaged following, particularly among outdoor/adventure enthusiasts consistent with its brand identity. + +> **Social Sentiment: POSITIVE**, driven by R2 anticipation. Owner communities remain active and largely constructive. + +--- + +## 7. Analyst & Institutional Media Opinion + +### Consumer Reports — Charging Network Rating +- A March 2025 Consumer Reports survey ranked Rivian's charging network **among the two most problem-free in the United States**, alongside Tesla's Supercharger network. +- This is a significant third-party quality validation that crossed into mainstream financial media. +- **Source:** [Yahoo Finance](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) + +### Wall Street / Financial Analyst Outlook +- Research did not surface specific price-target or Buy/Sell/Hold rating data from sell-side analysts within the citation set. However, general financial press context throughout the period reflects: + - Concern about **cash burn and time to profitability**. + - Cautious optimism tied to the **R2 launch as a volume catalyst**. + - Monitoring of the **Volkswagen Group investment** (a major strategic development that broadened Rivian's capital base and technology partnership footprint). + +> **Note:** Investors and analysts should consult current equity research from sources such as Bloomberg, Morgan Stanley, or Goldman Sachs for live ratings data not captured in this research cycle. + +--- + +## 8. Customer Reviews & Owner Satisfaction + +### Charging Network Satisfaction +- Consumer Reports survey (March 2025) places Rivian at the **top tier** for charging reliability — a key pain point across the EV industry and a strong differentiator. +- **Source:** [Yahoo Finance / Consumer Reports](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) + +### Forum & Community Signals +- r/Rivian community sentiment is broadly positive; owners frequently discuss vehicle capability, adventure use cases, and software updates. +- Known friction points in earlier years (panel gaps, software bugs at launch) appear to have diminished in frequency in more recent community discussions. + +### Formal Survey Data (J.D. Power / Consumer Reports Ownership Studies) +- **No direct J.D. Power Initial Quality Study (IQS) or Vehicle Dependability Study (VDS) data** for Rivian was surfaced in this research cycle. Rivian's relatively low sales volumes have historically placed it outside some ranked segments. + +> **Owner Satisfaction: MODERATELY POSITIVE.** Charging experience is a genuine brand strength. Vehicle quality perception has improved since early delivery complaints. Formal study data remains limited due to Rivian's still-emerging scale. + +--- + +## 9. Brand Partnerships, Endorsements & Commercial Deals + +### Amazon — Electric Delivery Van (EDV) Program +- Rivian has an ongoing commercial relationship with **Amazon** for the delivery of electric delivery vans (EDVs) — one of the largest fleet EV contracts in U.S. history (up to 100,000 vans committed). +- While no new partnership announcement was specifically dated within the most recent 12-month citation window, this deal remains a cornerstone of Rivian's commercial identity and a major revenue line. +- Amazon is also a significant Rivian investor. + +### Volkswagen Group Strategic Investment & Joint Venture +- One of the most material strategic developments in the research period: **Volkswagen Group** announced a major investment in Rivian and a **joint venture** to share Rivian's electrical architecture and software platform across VW Group brands. +- This partnership was widely covered as a validation of Rivian's technology stack and a critical capital infusion for funding the R2 program. + +### Rivian Adventure Network — Open Network Partnership +- By opening the Adventure Network to all EVs, Rivian effectively entered into a de facto **industry partnership model**, enhancing relationships with the broader EV ecosystem. +- **Source:** [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-chargers-for-all-evs) + +> **Note:** Explicit new endorsement or celebrity partnership announcements were not identified in the citation set for the trailing 12-month window. + +--- + +## 10. Pattern Analysis: Isolated Incidents vs. Recurring Themes + +| Issue | Classification | Severity | Notes | +|-------|---------------|----------|-------| +| Hands-free system recall (2023) | **Isolated** | Medium | Addressed via update; no follow-on recalls identified | +| Workforce reductions | **Recurring Pattern** | Medium-High | Two distinct layoff events; reflects structural financial pressure | +| Production ramp challenges | **Recurring Pattern** | Medium | Consistent theme since IPO; partially offset by R2 milestone progress | +| Charging network praise | **Recurring Positive Pattern** | — | Consistent third-party validation; brand differentiator | +| R2 product excitement | **Recurring Positive Pattern** | — | Sustained positive media cycle around mass-market launch | +| Financial burn-rate scrutiny | **Recurring Pattern** | Medium | Persistent but industry-normalized for pre-profitability EV makers | + +--- + +## 11. Summary Scorecard + +| Dimension | Rating | Notes | +|-----------|--------|-------| +| **Media Sentiment** | 🟡 Neutral-Positive | Product launches positive; financials cautionary | +| **Social Sentiment** | 🟢 Positive | R2 enthusiasm; engaged owner community | +| **Analyst Opinion** | 🟡 Cautiously Optimistic | VW deal and R2 key catalysts; profitability concerns remain | +| **Customer Satisfaction** | 🟢 Moderately Positive | Charging network top-rated; quality improving | +| **Controversy Risk** | 🟢 Low-Moderate | No governance scandals; layoffs are the main reputational drag | +| **Leadership Stability** | 🟢 Stable | CEO in place; board departure routine | +| **Partnership Strength** | 🟢 Strong | Amazon fleet deal + VW JV = significant institutional backing | +| **Brand Trajectory** | 🟡 Improving | R2 is a potential inflection point; execution risk remains | + +--- + +*Report prepared using open-source media intelligence research. All claims are linked to cited sources. Analyst ratings and financial projections should be verified against current sell-side research. Social media sentiment assessments reflect available indexed content and may not capture real-time shifts.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md new file mode 100644 index 0000000..3094794 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md @@ -0,0 +1,354 @@ +# RIVIAN AUTOMOTIVE, INC. (NASDAQ: RIVN) +## Comprehensive Due Diligence Report +**Prepared:** April 2026 | **Status:** Draft for Human Review — Not a Final Memo +**Workpapers:** corporate-profile.md · financial-health.md · litigation-regulatory.md · news-reputation.md · competitive-landscape.md · competitor-tesla.md · competitor-ford.md · competitor-mercedes.md + +--- + +## TABLE OF CONTENTS +1. [Executive Summary](#1-executive-summary) +2. [Corporate Profile](#2-corporate-profile) +3. [Financial Overview](#3-financial-overview) +4. [Litigation and Regulatory Risk Assessment](#4-litigation-and-regulatory-risk-assessment) +5. [News and Reputation Analysis](#5-news-and-reputation-analysis) +6. [Competitive Landscape](#6-competitive-landscape) +7. [Confidence and Verification Notes](#7-confidence-and-verification-notes) +8. [Key Risk Flags and Areas Requiring Further Investigation](#8-key-risk-flags-and-areas-requiring-further-investigation) + +--- + +## 1. EXECUTIVE SUMMARY + +Rivian Automotive, Inc. is an American pure-play electric vehicle manufacturer that went public in November 2021 in one of the five largest IPOs in U.S. history. The company designs, manufactures, and sells the R1T electric pickup truck, R1S electric SUV, and Electric Delivery Vans (EDVs) primarily for Amazon. Rivian is EV-native by design, built from the ground up on a skateboard platform that gives it architectural advantages over legacy OEM competitors. After years of production ramp challenges and mounting cumulative losses exceeding $17 billion, Rivian crossed a significant threshold in 2024 by achieving its first-ever positive gross profit quarters (Q3 and Q4 2024). As of April 2026, Rivian has commenced R2 production at its Normal, Illinois facility — its first mass-market-priced vehicle at ~$45,000–$58,000 — with customer deliveries beginning in spring 2026. + +**Overall Risk Assessment: MEDIUM-HIGH.** Rivian presents a compelling strategic story anchored by the Amazon EDV contract (100,000 vans), the Volkswagen Group joint venture (up to $5.8B committed), and a $6.6B DOE loan — a combined $12.4B+ in committed external capital that materially reduces near-term liquidity risk. However, significant risks remain: the company is deeply unprofitable at the net income level (~$4.7B net loss in 2024), FY2025 vehicle deliveries declined 18% year-over-year to ~42,247 units (partially offset by VW JV software revenue), a $250M securities class action settlement is pending final court approval (hearing: May 15, 2026), and the company faces intensifying competition from Tesla's Cybertruck and Ford's F-150 Lightning. The pivot to the mass-market R2 is existentially important — successful execution could validate Rivian as a durable EV platform company, while failure would stress an already fragile balance sheet. + +**Headline metrics as of FY2025:** $5.4B consolidated revenue (+8% YoY), 42,247 vehicles delivered (−18% YoY), ~$120M Q4 2025 gross profit (down from $170M in Q4 2024 due to regulatory credit timing), Georgia plant groundbreaking completed (September 2025), production start 2028. This report is a draft and all figures should be independently verified against Rivian's audited 10-K filings. + +--- + +## 2. CORPORATE PROFILE + +### 2.1 Legal Entity & Structure +| Field | Detail | +|---|---| +| **Legal Name** | Rivian Automotive, Inc. | +| **Incorporation** | State of Delaware | +| **Stock Classes** | Class A (publicly traded) and Class B common stock | +| **Ticker / Exchange** | RIVN / Nasdaq | +| **Headquarters** | Irvine, California | +| **Primary Manufacturing** | Normal, Illinois (former Mitsubishi facility) | +| **Future Manufacturing** | Stanton Springs North, Social Circle, Georgia — groundbreaking September 2025; construction beginning 2026; vehicle production expected 2028 | + +> Source: Rivian S-1 Registration Statement (SEC EDGAR): https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | Georgia plant: https://georgia.org/rivian + +### 2.2 Founding & History +Rivian was founded in June 2009 by Dr. Robert J. (RJ) Scaringe, the company's sole founder, who holds a Ph.D. in Mechanical Engineering from MIT's Sloan Automotive Laboratory. The company spent its first decade in stealth mode developing its EV skateboard platform, pivoting from passenger cars to adventure-oriented electric trucks and SUVs. Rivian publicly unveiled the R1T and R1S at the Los Angeles Auto Show in November 2018, simultaneously with securing a landmark 100,000-van commercial vehicle contract from Amazon. The company commenced R1T deliveries in late 2021, went public in November 2021, and in April 2026 began production of its mass-market R2 SUV. + +> Source: Rivian S-1 (SEC EDGAR) | Rivian — Our Company: https://rivian.com/our-company + +### 2.3 Leadership +| Name | Title | Notes | +|---|---|---| +| **RJ Scaringe** | CEO & Chairman of the Board | Sole founder; in role since 2009; no credible departure signals | +| **Claire McDonough** | Chief Financial Officer | Listed in 2025 Proxy | +| **Jiten Behl** | Chief Growth Officer | Listed in 2025 Proxy | +| **Kjell Gruner** | Former Chief Commercial Officer | Resigned July 2024 | + +The Board maintains a combined CEO/Chair structure under Scaringe — a governance point disclosed and addressed in proxy filings. Amazon's SVP of Worldwide Corporate & Business Development (Peter Krawiec) serves as an Independent Director, reflecting the depth of the Amazon relationship. + +> Source: Rivian 2025 Proxy Statement (DEF 14A): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm + +### 2.4 Key Strategic Relationships +- **Amazon**: ~18.1% equity holder; 100,000-van EDV purchase commitment; 30,000+ vans in service by mid-2025, delivering 1 billion+ packages in 2024. +- **Volkswagen Group**: ~16% equity holder; joint venture to co-develop electrical architecture and software, with up to $5.8B committed through 2026. +- **Abdul Latif Jameel**: ~12.7% equity holder (investor via Global Oryx & NV Holdings; investor rights agreement November 2024). +- **Ford Motor Company**: ~1.6% equity holder (reduced from initial ~$500M position after Ford sold down starting May 2022). The earlier platform co-development partnership was dissolved. + +### 2.5 Headcount +Peak headcount was approximately 14,000–16,000 (2022–2023). As of FY2024, headcount was approximately 14,861, following multiple rounds of layoffs including a ~10% reduction, a ~4% reduction, and a ~4.5% reduction in October 2025 (concurrent with the securities settlement announcement). Workforce reductions are a recurring pattern and signal sustained financial pressure. + +--- + +## 3. FINANCIAL OVERVIEW + +### 3.1 Pre-IPO Funding History (~$10.5B+ total raised privately) +| Date | Round | Amount | Key Investors | +|---|---|---|---| +| Jan 2019 | Strategic | ~$500M | Ford Motor Company | +| Feb 2019 | Strategic | ~$700M | Amazon | +| Jun 2019 | Series D | $500M | Cox Automotive | +| Dec 2019 | Series E | $1.3B | T. Rowe Price, Fidelity, Baron Capital | +| Jul 2020 | Series F | $2.65B | T. Rowe Price, Blackstone, Soros, Coatue, Dragoneer | +| Jan 2021 | Series G | $2.65B | T. Rowe Price, Fidelity, BlackRock, Dragoneer, Amazon | +| Jul 2021 | Pre-IPO | $2.5B | Amazon Climate Pledge Fund, D1 Capital | + +> Source (confirmed): Rivian Newsroom: https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round | Ford: https://media.ford.com/content/fordmedia/fna/us/en/news/2019/04/24/rivian.html + +### 3.2 IPO (November 2021) +| Metric | Detail | +|---|---| +| IPO Date | November 10, 2021 | +| IPO Price | $78.00/share | +| Opening Trade | $106.75/share | +| Gross Proceeds | ~$11.9B | +| All-Time High | ~$179.47 (November 16, 2021 — 6 days post-IPO) | +| Lead Underwriters | Goldman Sachs, J.P. Morgan, Morgan Stanley | + +> Source: S-1 (SEC EDGAR): https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | CNBC opening price: https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html + +### 3.3 Revenue and Financial Performance by Year +| Year | Revenue (USD) | Net Income/(Loss) | Key Notes | +|---|---|---|---| +| 2020 | $0 | ($1.0B) | Pre-revenue | +| 2021 | $55M | ($4.7B) | First deliveries; IPO year | +| 2022 | $1.66B | ($6.8B) | Production ramp; gross losses | +| 2023 | $4.43B | ($5.4B) | Production scaling | +| 2024 | **$4.97B** | **($4.7B)** | First positive gross profit quarters (Q3, Q4) | +| 2025 | **$5.39B** | TBD (10-K pending full release) | VW JV software revenue drives 8% rev. growth despite 18% delivery decline | + +> Source: Wikipedia (confirmed from Rivian SEC filings): https://en.wikipedia.org/wiki/Rivian | FY2025 earnings release: https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results + +### 3.4 Production & Deliveries +| Year | Production | Deliveries | +|---|---|---| +| 2024 | 49,476 | 51,579 | +| 2025 | 42,284 | 42,247 | + +> ⚠️ **Notable**: FY2025 deliveries declined 18% YoY, attributed to expiring EV tax credits and a higher mix of EDV deliveries. This is a yellow flag requiring monitoring. R2 production started April 22, 2026; deliveries beginning spring 2026 could reverse this trend. +> +> Source: Rivian Newsroom (2024 figures): https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures | (2025 figures): https://rivian.com/newsroom/article/rivian-releases-q4-2025-production-and-delivery-figures + +### 3.5 Liquidity Position +| Facility | Amount | Status | +|---|---|---| +| DOE Loan (Dept. of Energy) | **$6.6B** | Closed January 16, 2025 | +| VW Joint Venture (committed through 2026) | **Up to $5.8B** | Active; generating software/services revenue | +| Cash on Hand (FY2024 total assets) | ~$15.4B total assets, ~$7.3B estimated cash/equivalents | Per 2024 10-K | +| Convertible Notes Outstanding | ~$1.5–2.5B (estimate) | Confirm in 10-K debt schedule | +| $250M securities settlement (cash portion) | ($183M) | Cash outflow pending final court approval | + +> Source: DOE loan: https://www.energy.gov (confirmed) | VW JV: Automotive News + Rivian Newsroom | Financials: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm + +### 3.6 Post-IPO Stock Performance +RIVN surged to an all-time high of ~$179.47 just 6 days after its IPO, then declined approximately 85% over subsequent years amid persistent losses and production challenges. As of early 2025, the stock traded in the ~$12–14 range with a market cap of ~$13–15B. The ~18.3% one-year return noted in litigation filings suggests modest recovery in 2025, though the stock remains deeply below its IPO price. + +### 3.7 Key Financial Risks +- **Cumulative losses**: $17B+ through FY2023; deeper losses continue. +- **FCF negative**: Operating and investing cash outflows remain substantial; exact 2025 FCF pending full 10-K. +- **Delivery decline in 2025**: Unit deliveries fell 18% YoY; heavily dependent on R2 ramp for volume recovery. +- **Regulatory credit dependency**: Q4 2025 automotive gross profit turned negative due to a $270M decline in regulatory credit sales — demonstrating how dependent near-term profitability has been on non-recurring credits. +- **Convertible debt**: Approximate $1.5–2.5B in convertible notes creates dilution and refinancing risk (verify in 10-K). + +--- + +## 4. LITIGATION AND REGULATORY RISK ASSESSMENT + +### 4.1 Securities Class Action — *Crews v. Rivian Automotive* ⚠️ HIGH +| Field | Detail | +|---|---| +| Case | Charles Larry Crews, Jr., et al. v. Rivian Automotive, Inc., et al. | +| Case No. | 2:22-cv-01524-JLS-E (C.D. Cal.) | +| Allegations | Materially false and misleading IPO statements regarding production capability and financial condition; specifically that IPO documents failed to disclose that R1 material costs would exceed vehicle sale prices, necessitating a post-IPO price increase | +| Settlement | **$250,000,000 cash** | +| Settlement Announced | October 23, 2025 | +| Payment Structure | $67M from D&O insurance + **$183M from Rivian cash** | +| Preliminary Approval | December 18, 2025 | +| **Final Hearing** | **May 15, 2026 — PENDING** | +| Rivian's Position | Denies allegations; not an admission of fault or wrongdoing | + +> ⚠️ **Risk Note**: Final court approval has not yet been granted. The settlement hearing is scheduled for May 15, 2026. While preliminary approval is a strong indicator, monitor for objections or appeals. The $183M cash outflow is material to cash planning. +> +> Source: SEC 8-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm | WSJ: https://www.wsj.com/business/autos/rivian-to-pay-250m-to-settle-lawsuit-over-vehicle-cost-disclosure-in-ipo-documents-58f61702 | Settlement site: https://www.riviansecuritieslitigation.com/ + +### 4.2 California State Securities Action — RESOLVED ✅ +A parallel California state-court securities class action was appealed and affirmed dismissed by the California Court of Appeal, Third District on April 25, 2025. No further exposure from this matter. + +> Source: Orrick firm announcement: https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action + +### 4.3 Tesla v. Rivian — Trade Secret Litigation ⚠️ MEDIUM +Tesla sued Rivian alleging misappropriation of EV trade secrets (drivetrain, battery, manufacturing IP) by former Tesla employees who joined Rivian. After approximately four years of litigation and scheduled for trial in March 2025, the case was settled on confidential terms. The confidential nature of the settlement prevents full assessment of financial exposure or IP admissions. The dispute centered on Rivian's talent-acquisition practices from competitors. + +> ⚠️ **Risk Note**: Confidential terms are a limitation. Rivian's practice of hiring from Tesla should be monitored in future talent disputes. +> +> Source: Proskauer blog: https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip | Brand Protection Law: https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ + +### 4.4 Executive Harassment & Employment Lawsuits ⚠️ MEDIUM +A TechCrunch investigation (December 20, 2024) revealed multiple previously unreported lawsuits alleging sexual harassment, gender discrimination, hostile work environment, and wrongful termination against Rivian executives. At least one case was settled via arbitration in August 2024. Others remain pending. + +> ⚠️ **Risk Note**: The "previously unreported" characterization raises a disclosure adequacy concern — reviewers should verify completeness in Rivian's SEC filings' legal proceedings section. + +### 4.5 NHTSA Recall — Highway Assist Software (September 12, 2025) ⚠️ MEDIUM +24,214 units of the 2025 R1S and R1T were recalled for a software defect in the hands-free Highway Assist system that could misidentify a lead vehicle. Remedy: OTA software update. Resolved. + +### 4.6 NHTSA Recall — Seat-Belt Retractor (January 15, 2026) ⚠️ MEDIUM +R1S and R1T model years 2022–2024 were recalled for an improperly secured seat-belt retractor requiring physical inspection and replacement. Unit count not publicly disclosed. + +### 4.7 Regulatory Screening Summary +| Area | Finding | +|---|---| +| SEC Enforcement | No enforcement actions or Wells Notices identified | +| OFAC / SDN / UN / EU Sanctions | Not listed; no sanctioned-party exposure | +| CFIUS | No filings or national security reviews; key investors (Amazon, Ford) are domestic | +| EPA / FTC / DOJ / State AG | No actions identified | + +--- + +## 5. NEWS AND REPUTATION ANALYSIS + +### 5.1 Overall Sentiment: Neutral-to-Positive +Media coverage of Rivian over 2023–2026 has been cautiously optimistic. The dominant themes are the R2 launch (mass-market pivot), the Volkswagen JV (strategic validation), and financial sustainability scrutiny (persistent losses and layoffs). There are no governance, fraud, or ethical scandals beyond the disclosed employment lawsuits. + +### 5.2 Key Positive Coverage +- **Consumer Reports (March 2025)**: Ranked Rivian Adventure Network and Tesla as the two most problem-free charging networks in the U.S. — a standout competitive differentiator. ([Source](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html)) +- **R2 Launch (April 2026)**: Production start confirmed April 22, 2026; deliveries beginning "later this spring." Industry coverage was broadly positive, noting operational resilience after an EF-1 tornado briefly disrupted the Normal plant. ([Source](https://stories.rivian.com/r2-start-of-production-spring-delivery-2026)) +- **Adventure Network Opens to All EVs (December 2024)**: Strategic network-monetization pivot received favorable press. ([Source](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-planned-launch-chargers-for-all-evs)) +- **VW JV Announcement**: Treated as major strategic validation by financial and automotive press. +- **RJ Scaringe named Top Gear EV Influencer of the Year** (April 2026) — brand validation signal. + +### 5.3 Key Negative / Risk Coverage +- **Recurring layoffs** (10%, then 4%, then 4.5% reduction announced concurrent with securities settlement October 2025): Pattern signals sustained financial strain; framed in press within broader EV industry context but classified as a recurring theme, not an isolated event. +- **FY2025 delivery decline**: 18% drop in vehicle deliveries generated caution in financial media, offset by VW JV software revenue growth. +- **Employment lawsuits** (December 2024 TechCrunch investigation): Reputational flag; limited mainstream amplification but notable for HR due diligence. +- **Securities settlement**: $250M settlement widely covered; framed by Rivian as allowing focus on R2 launch; market reaction was contained. + +### 5.4 Leadership Stability +CEO RJ Scaringe remains in place with no credible departure signals. The only confirmed board departure — Rose Marcario (former Patagonia CEO) — was framed as a routine board refresh. Leadership risk is assessed as **low** based on available evidence. + +### 5.5 Customer & Social Media Sentiment +- **Owner sentiment**: Moderately positive. Charging network reliability is a standout strength. +- **Social media (Reddit, YouTube)**: Strongly positive around R2 launch; high organic engagement. +- **Analyst sentiment**: Cautiously optimistic — VW deal and R2 seen as key catalysts; path to profitability is the primary watch item. + +--- + +## 6. COMPETITIVE LANDSCAPE + +### 6.1 Rivian's Market Positioning +Rivian occupies a distinctive niche as the only pure-play, EV-native manufacturer focused on the **adventure/outdoor lifestyle** segment. Unlike Tesla (tech-luxury), Ford (work-truck heritage), or Mercedes-Benz (prestige/fleet), Rivian's brand is explicitly tied to rugged outdoor recreation — off-road capability, water-fording depth, gear tunnels, and charging network corridors aligned with national parks and adventure routes. This positioning has generated strong brand loyalty among a specific demographic and allowed Rivian to command significant price premiums over legacy OEM competitors. + +Rivian's competitive moat rests on five pillars: +1. **Amazon EDV anchor**: 100,000-van commitment with 30,000+ already in service; the contract provides predictable manufacturing volume and cash flow visibility unavailable to most EV startups. +2. **VW JV**: Rivian's software and electrical architecture are being adopted by the Volkswagen Group, validating Rivian's technology stack and providing a significant new revenue stream (VW JV drove $1.56B in software/services revenue in FY2025). +3. **EV-native skateboard platform**: Packaging advantages (flat floor, frunk, gear tunnel) that ICE-derived competitors cannot replicate without full redesigns. +4. **Purpose-built charging network**: Rivian Adventure Network, now open to all EV brands, occupies adventure-route corridors underserved by Tesla's Supercharger network. +5. **R2 mass-market pivot**: Entry-level vehicle at ~$45,000–$58,000 addresses the biggest gap in Rivian's lineup and targets the highest-volume EV market segment. + +--- + +### 6.2 Competitor Analysis + +#### Competitor 1: Tesla (Cybertruck & Model X) +Tesla is the world's dominant pure-play EV manufacturer with ~1.79M vehicles delivered in 2024 — approximately 35× Rivian's volume. Tesla competes directly with Rivian on two fronts: the **Cybertruck** (vs. R1T) and the **Model X** (vs. R1S). + +**Cybertruck vs. R1T**: The Cybertruck (priced from $72,235 RWD to $119,990 Cyberbeast) competes directly with the R1T ($72,990–$117,790). Cybertruck leads on payload (2,500 lb vs. 1,760 lb) and towing parity (~11,000 lb each), but Rivian's R1T Max Pack offers 410 miles of range vs. Cybertruck's 340 miles. R1T offers demonstrably superior off-road capability and interior finish quality. Critically, R1T qualifies for IRA EV tax credits (~$7,500); Cybertruck does not — a meaningful price-of-purchase advantage for Rivian in the near term. + +**Model X vs. R1S**: R1S significantly outperforms Model X on towing (7,700 lb vs. 5,000 lb) and top-trim range (410 vs. 335 miles). Model X counters with Plaid tri-motor performance (2.5-sec 0-60) and Tesla's brand halo. Model X pricing ($79,990–$99,990) overlaps with R1S pricing. + +**Tesla's structural advantages over Rivian**: 60,000+ Supercharger stalls globally; $36.6B cash vs. Rivian's ~$7.3B; $97.7B revenue vs. $4.97B; profitable vs. deeply loss-making. Tesla's manufacturing scale (1.8M+ vehicles/year) provides cost-of-goods advantages Rivian cannot match at current volumes. However, the Musk-DOGE controversy has created measurable brand toxicity in Rivian's core demographic (environmentally conscious, outdoor-lifestyle consumers), a reputational shift that may benefit Rivian. + +> Source: competitor-tesla.md | Tesla 10-K (SEC): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm + +--- + +#### Competitor 2: Ford Motor Company (F-150 Lightning & E-Transit) +Ford competes with Rivian in both the consumer electric pickup (F-150 Lightning vs. R1T) and commercial electric van (E-Transit vs. EDV) segments. Ford's structural advantages are formidable: $176.2B revenue, $30B liquidity, 180,000 employees, and 3,000+ dealer service locations nationwide. + +**F-150 Lightning vs. R1T**: The Lightning's base Pro trim starts at $42,995 — approximately $30,000 below the entry-level R1T — making it the undisputed value leader in electric pickups. Lightning targets traditional F-Series loyalists and commercial fleet buyers; Rivian targets premium adventure-lifestyle consumers. Ford cut Lightning production ~50% for 2024 (to ~70,000–80,000 units) after demand softened and dealer inventory built — a significant signal of softer-than-expected consumer EV adoption in the mass-market pickup segment that Rivian's R2 will also enter. + +**E-Transit vs. EDV**: Ford E-Transit is commercially available through Ford Pro's dealer/fleet network with ~3,200–3,500 units delivered in FY2024. Rivian's EDV, while purpose-built and architecturally superior as an EV, has been anchored exclusively to the Amazon contract. Ford's commercial fleet relationships and nationwide service infrastructure provide significant distribution advantages. + +**The central tension**: Ford's Model e division lost $5.076B in 2024 — over $50,000 per EV sold — demonstrating that incumbency alone does not confer EV profitability. Ford's $30B cash position means it can absorb these losses indefinitely; Rivian's cannot. Ford's ICE profits subsidize EV investment in a way Rivian structurally cannot replicate. + +> Source: competitor-ford.md | Ford Model e losses: https://www.cnbc.com/2023/12/11/f-150-lightning-ford-cuts-2024-production-plans-in-half.html + +--- + +#### Competitor 3: Mercedes-Benz (eSprinter & EQ SUV Lineup) +Mercedes-Benz competes with Rivian across two vectors: the **eSprinter** electric commercial van (vs. EDV) and the **EQS/EQE SUV lineup** (vs. R1S). Mercedes is a formidably financed competitor with €145.6B revenue and €9.2B industrial free cash flow in FY2024 — vastly outgunning Rivian's negative FCF position. + +**eSprinter vs. EDV**: The eSprinter (US launch February 2024; ~$55,000–$80,000+) is an ICE-platform conversion offering 113 kWh and up to 3,516 lb payload. Rivian's EDV is a purpose-built EV with superior packaging efficiency but limited to the Amazon fleet. Mercedes's established European commercial fleet relationships and global dealer/service networks represent structural advantages for international fleet operators. However, Rivian's purpose-built architecture and the Amazon EDV's proven delivery track record (1B+ packages in 2024) remain significant defensive moats. + +**EQS/EQE SUV vs. R1S**: The EQE SUV starts at $67,450, undercutting the entry-level R1S, while the EQS SUV (~$105,000–$130,000) overlaps upper R1S trims. R1S leads on towing (7,700 vs. unspecified Mercedes capacity) and adventure capability; Mercedes leads on brand prestige, interior luxury, and global service networks. Mercedes's 23% YoY decline in BEV deliveries in 2024 (to 185,100 units) and its strategic pivot to a "technology-open" stance (slowing EV commitment) suggest Mercedes is becoming a less aggressive near-term EV competitor — potentially benefiting Rivian in the premium SUV segment. + +> Source: competitor-mercedes.md | Mercedes 2024 Annual Report: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ + +--- + +## 7. CONFIDENCE AND VERIFICATION NOTES + +The following findings carry medium or low confidence and should be independently verified by a human reviewer before reliance. + +| # | Finding | Confidence | Reason / Verification Required | +|---|---|---|---| +| 1 | FY2024 net loss ~$4.689B; FY2025 full-year net income/loss | **Medium** | Derived from Wikipedia/earnings release; confirm in Rivian's audited 10-K filings (SEC EDGAR). FY2025 10-K may not yet be filed. | +| 2 | Cash on hand ~$7.3B (FY2024) | **Medium** | Estimated from total assets of $15.4B; confirm exact figure in 10-K balance sheet. | +| 3 | Convertible notes outstanding ~$1.5–2.5B | **Low** | Estimate only. Must be verified against 10-K debt schedule and notes payable disclosures. | +| 4 | Analyst price target consensus ~$14–16 avg | **Low** | Aggregated consensus; changes daily. Verify on Bloomberg/FactSet at time of review. | +| 5 | Cybertruck FY2024 deliveries ~35,000–38,000 | **Medium** | Tesla does not disclose Cybertruck separately. Estimates from third-party analysts (Troy Teslike, GoodCarBadCar). | +| 6 | EDV unit pricing ~$100K–$120K/unit | **Low** | Not publicly disclosed; derived estimate. Confirm via fleet contract filings if available. | +| 7 | Employment lawsuit specifics | **Medium** | Based on TechCrunch investigation (Dec 2024); full legal filings should be reviewed. Verify completeness of 10-K/10-Q legal proceedings disclosures. | +| 8 | Series A–C early funding rounds (pre-2019) | **Low** | Not publicly itemized in SEC filings. Seed/angel funding amounts are unconfirmed. | +| 9 | VW equity stake ~16% | **Medium** | Based on Wikipedia/proxy; confirm via most recent SEC ownership filings (Schedule 13D/G). | +| 10 | Tesla v. Rivian settlement terms | **Low** | Terms are confidential. Exposure cannot be fully assessed. Human reviewer should attempt to obtain terms or flag as unresolvable. | + +### Source Citation Trail for Key Claims +- Rivian IPO S-1: https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm +- Rivian 2025 Proxy (DEF 14A): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +- Rivian FY2024 10-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +- FY2025 earnings release: https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results +- Securities settlement 8-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm +- Settlement website: https://www.riviansecuritieslitigation.com/ +- DOE $6.6B loan: https://www.energy.gov (confirm specific press release) +- Tesla 10-K (FY2024): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +- Mercedes Annual Report 2024: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ +- Georgia plant (Stanton Springs North): https://georgia.org/rivian +- R2 production start: https://stories.rivian.com/r2-start-of-production-spring-delivery-2026 + +--- + +## 8. KEY RISK FLAGS AND AREAS REQUIRING FURTHER INVESTIGATION + +### 🔴 HIGH PRIORITY + +**1. Securities Settlement Final Approval (May 15, 2026 Hearing)** +The $250M *Crews v. Rivian* settlement is preliminarily approved but has not yet received final court approval. Rivian has committed $183M of its own cash. Monitor for objections or appeals. Any reviewer conducting diligence near or after May 15, 2026 should confirm the outcome of the final approval hearing. + +**2. Persistent Deep Losses and Cash Burn** +Rivian has lost $17B+ cumulatively. While the DOE loan ($6.6B) and VW JV ($5.8B) provide a liquidity runway, the company is not projected to reach GAAP net income profitability in the near term. Any disruption to R2 demand, production, or the Amazon EDV relationship could accelerate cash depletion faster than modeled. + +**3. FY2025 Vehicle Delivery Decline (−18% YoY)** +The decline from 51,579 (2024) to 42,247 (2025) deliveries is a structural concern. Management attributed this to expiring EV tax credits and EDV mix; however, if R2 ramp does not produce a significant volume recovery in 2026–2027, the equity story is at risk. + +### 🟡 MEDIUM PRIORITY + +**4. Regulatory Credit Dependency** +Q4 2025 automotive gross profit turned negative primarily due to a $270M decline in regulatory credit sales. This volatility — driven by policy/regulatory decisions outside Rivian's control — makes near-term profitability fragile. Investors should model scenarios with and without regulatory credit income. + +**5. R2 Execution Risk** +R2 production has begun but is in its earliest stages (Performance trim only at launch; Standard trim not until 2027). Manufacturing ramp failures have been Rivian's historical Achilles heel. Close monitoring of weekly/monthly R2 production rate disclosures is warranted. + +**6. Employment Lawsuits — Disclosure Adequacy** +The December 2024 TechCrunch report on "previously unreported" executive harassment lawsuits raises a question about whether Rivian's SEC filings adequately disclosed all material legal proceedings. Reviewers should independently pull and review the legal proceedings section of the most recent 10-K and 10-Q. + +**7. Tesla v. Rivian Confidential Settlement** +The confidential terms prevent full IP exposure assessment. If trade secrets were confirmed as taken, this could expose Rivian to further claims from other competitors whose employees joined Rivian. + +**8. Convertible Notes / Debt Structure** +Estimated $1.5–2.5B in convertible notes (low confidence). Refinancing risk and dilution risk from conversion are material concerns that require verification against the 10-K debt schedule. + +**9. Georgia Plant Capital Commitment** +The $5B Georgia plant investment with production beginning 2028 represents a multi-year capital commitment. Given Rivian's negative FCF, any schedule slip or capital overrun at Stanton Springs could stress liquidity even with the DOE loan backstop. + +**10. Amazon Concentration Risk** +Amazon represents both Rivian's largest shareholder (~18.1%) and its largest commercial customer. Deterioration of the Amazon relationship — whether through renegotiation of the EDV contract, Amazon building its own fleet capability, or equity stake reduction — would be severely negative for Rivian's commercial segment and investor confidence simultaneously. + +### 🟢 NO CURRENT FLAG (MONITOR) + +- **CFIUS / Sanctions**: No designations or reviews identified; key investors are domestic. Monitor VW Group's equity stake given European nexus (low concern). +- **SEC Enforcement**: No enforcement actions beyond disclosed settlement disclosure requirement. +- **CEO Succession**: RJ Scaringe is young, founder-CEO with no credible departure signals. Combined CEO/Chair structure warrants monitoring but is not currently a governance crisis. + +--- + +*This report is a draft prepared for human review. All financial figures should be independently verified against Rivian's audited annual reports (10-K) and quarterly filings (10-Q) on SEC EDGAR. Legal proceedings information is current as of research date but litigation status changes rapidly. This document does not constitute investment advice.* diff --git a/python-recipes/parallel-deepagents-due-diligence/requirements.txt b/python-recipes/parallel-deepagents-due-diligence/requirements.txt new file mode 100644 index 0000000..40f3cd8 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/requirements.txt @@ -0,0 +1,5 @@ +deepagents>=0.5.3 +langchain-parallel>=0.4.0 +langchain-anthropic>=0.3.0 +parallel-web>=0.1.0 +pydantic>=2.0 diff --git a/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md b/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md new file mode 100644 index 0000000..6febad0 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md @@ -0,0 +1,152 @@ +The full due diligence report has been written to `/workpapers/rivian-due-diligence-report.md`. Here is the complete synthesized report: + +--- + +# RIVIAN AUTOMOTIVE, INC. (NASDAQ: RIVN) +## Comprehensive Due Diligence Report +**Draft for Human Review | April 2026** + +--- + +## 1. EXECUTIVE SUMMARY + +Rivian Automotive is an American pure-play EV manufacturer that went public in November 2021 in one of the five largest U.S. IPOs in history. The company makes the R1T electric pickup, R1S electric SUV, and Electric Delivery Vans (EDVs) primarily for Amazon. After years of production ramp challenges and $17B+ in cumulative losses, Rivian crossed a critical threshold in 2024 by achieving its **first-ever positive quarterly gross profits** (Q3 and Q4 2024). As of April 2026, R2 production has commenced at the Normal, IL plant — the company's first mass-market vehicle (~$45,000–$58,000) — with customer deliveries beginning spring 2026. + +**Overall Risk: MEDIUM-HIGH.** The company has a remarkable $12.4B+ liquidity backstop ($6.6B DOE loan + $5.8B VW JV), but remains deeply unprofitable, faces an 18% YoY delivery decline in 2025, a $250M securities settlement pending final court approval, and intensifying competition from Tesla and Ford. + +--- + +## 2. CORPORATE PROFILE + +- **Founded:** June 2009 by **Dr. RJ Scaringe** (Ph.D., MIT) — sole founder, still CEO & Chairman +- **HQ:** Irvine, California | **Manufacturing:** Normal, Illinois | **Future plant:** Stanton Springs, Georgia (groundbreaking Sept. 2025; production 2028) +- **IPO:** November 10, 2021 at $78/share; opened at $106.75; raised ~$11.9B — one of the 5 largest U.S. IPOs ever +- **Key shareholders:** Amazon ~18.1%, Volkswagen Group ~16%, Abdul Latif Jameel ~12.7%, Ford ~1.6% +- **Headcount:** ~14,861 (FY2024), following multiple layoff rounds from a peak of ~16,000 +- **Board governance:** Combined CEO/Chair structure; Amazon's SVP (Peter Krawiec) sits on the Board + +--- + +## 3. FINANCIAL OVERVIEW + +### Revenue & Losses +| Year | Revenue | Net Loss | +|---|---|---| +| 2021 | $55M | ($4.7B) | +| 2022 | $1.66B | ($6.8B) | +| 2023 | $4.43B | ($5.4B) | +| 2024 | **$4.97B** | **($4.7B)** | +| 2025 | **$5.39B** | TBD (10-K pending) | + +### Production & Deliveries +| Year | Production | Deliveries | +|---|---|---| +| 2024 | 49,476 | 51,579 | +| 2025 | 42,284 | 42,247 (−18% YoY) | + +⚠️ The 2025 delivery decline is a yellow flag — attributed to expiring EV tax credits and EDV mix, but warrants monitoring against R2 ramp. + +### Liquidity Position +- **$6.6B DOE Loan** — closed January 16, 2025 +- **Up to $5.8B VW JV** — active; generated $1.56B in software/services revenue in FY2025 +- **~$7.3B estimated cash** on hand (confirm in 10-K) +- **$183M cash outflow** for securities settlement (pending final court approval) +- **~$1.5–2.5B convertible notes** outstanding (low confidence — verify in 10-K) + +**Key insight**: Revenue grew 8% in FY2025 despite delivering 18% fewer vehicles — the VW JV software revenue stream is fundamentally transforming Rivian's income statement from pure vehicle manufacturer to technology platform company. + +--- + +## 4. LITIGATION AND REGULATORY RISK ASSESSMENT + +| Matter | Severity | Status | +|---|---|---| +| *Crews v. Rivian* — $250M securities class action settlement | 🔴 HIGH | Preliminary approval Dec. 2025; **final hearing May 15, 2026** | +| Tesla v. Rivian — Trade secret dispute | 🟡 MEDIUM | Settled early 2025 on **confidential terms** before trial | +| Executive harassment lawsuits (multiple) | 🟡 MEDIUM | At least one settled in arbitration; others pending | +| NHTSA Recall — Highway Assist (24,214 units) | 🟡 MEDIUM | Sept. 2025; resolved via OTA update | +| NHTSA Recall — Seat-belt retractor | 🟡 MEDIUM | Jan. 2026; physical inspection/replacement required | +| California state securities action | ✅ RESOLVED | Appellate court affirmed dismissal, April 2025 | +| SEC enforcement, OFAC/SDN, CFIUS | ✅ NO FLAG | No actions or designations identified | + +**Key litigation note**: The $250M *Crews* settlement was structured as $67M from D&O insurance + **$183M Rivian cash**. Rivian explicitly stated the settlement allows it to "focus resources on R2 launch," suggesting management views this as a material distraction now being put to rest. The 4.5% workforce layoff was announced the same day as the settlement. + +--- + +## 5. NEWS AND REPUTATION ANALYSIS + +**Overall sentiment: Neutral-to-Positive.** Product excitement (R2, charging network) offsets financial caution. No governance, fraud, or ethical scandals beyond disclosed matters. + +**Standout positives:** +- Consumer Reports (March 2025): Rivian and Tesla ranked as the two most problem-free charging networks in the U.S. +- VW JV widely treated as major strategic validation +- R2 production start (April 22, 2026) covered positively; brand resilience praised after EF-1 tornado briefly disrupted Normal plant +- RJ Scaringe named Top Gear's EV Influencer of the Year (April 2026) + +**Recurring negatives:** +- Multiple layoff rounds (10%, 4%, 4.5%) — signal sustained financial pressure +- FY2025 delivery decline generated financial media caution +- Employment lawsuits (December 2024 TechCrunch investigation) + +**Leadership stability**: RJ Scaringe firmly in place; leadership risk assessed as **low**. + +--- + +## 6. COMPETITIVE LANDSCAPE + +### Rivian's Positioning +Rivian is the only pure-play EV-native company focused on the **adventure/outdoor lifestyle** segment. Its five competitive moats: (1) Amazon EDV anchor contract, (2) VW JV technology validation, (3) EV-native skateboard platform, (4) purpose-built charging network, and (5) R2 mass-market pivot. + +### Competitor Profiles + +#### Tesla (Cybertruck & Model X) — Strongest Threat +Tesla is ~35× Rivian's volume with $36.6B cash vs. Rivian's ~$7.3B. The Cybertruck directly competes with the R1T; Model X competes with R1S. **Rivian's edges over Tesla**: superior off-road capability, better R1S towing (7,700 vs. 5,000 lb), higher Max Pack range (410 vs. 335 mi), IRA tax credit eligibility (Cybertruck doesn't qualify), and Musk-DOGE brand controversy alienating Rivian's core demographic. **Tesla's edges**: 60,000+ Superchargers, manufacturing scale, profitability, FSD/ADAS ecosystem. + +#### Ford (F-150 Lightning & E-Transit) — Price Threat in Trucks; EDV Competitive in Fleet +Ford's Lightning starts at $42,995 — $30,000 below Rivian's entry R1T — making it the price leader. However, Ford cut Lightning production ~50% in 2024 amid demand softness — the same market Rivian's R2 is entering. Ford Model e lost $5.076B in 2024 ($50K+ per EV sold), but Ford's $30B cash can sustain this indefinitely. Ford wins on price, dealer network, and fleet relationships; Rivian wins on software, off-road capability, and purpose-built EV architecture. + +#### Mercedes-Benz (eSprinter & EQ SUVs) — Niche Overlap; Retreating on EV Commitment +Mercedes competes in commercial vans (eSprinter vs. EDV) and premium SUVs (EQS/EQE vs. R1S). Its 23% BEV delivery decline in 2024 and strategic "technology-open" pivot signal Mercedes is pulling back from aggressive EV competition. Mercedes's financial firepower (€145.6B revenue, €9.2B FCF) dwarfs Rivian, but its ICE-derived eSprinter platform is architecturally inferior to Rivian's purpose-built EDV, and its US commercial van presence is limited vs. Ford and Rivian. + +--- + +## 7. CONFIDENCE AND VERIFICATION NOTES + +| # | Finding | Confidence | Action Required | +|---|---|---|---| +| 1 | FY2024/2025 net losses | Medium | Verify against audited 10-K (SEC EDGAR) | +| 2 | Cash on hand ~$7.3B | Medium | Confirm exact figure in 10-K balance sheet | +| 3 | Convertible notes ~$1.5–2.5B | **Low** | Must verify in 10-K debt schedule | +| 4 | Analyst consensus price targets | **Low** | Verify on Bloomberg/FactSet | +| 5 | Cybertruck FY2024 deliveries (~35-38K) | Medium | Third-party estimates; Tesla doesn't disclose | +| 6 | Tesla v. Rivian settlement terms | **Low** | Confidential; cannot fully assess IP exposure | +| 7 | Employment lawsuit scope | Medium | Pull full legal proceedings from 10-K/10-Q | +| 8 | Pre-2019 funding rounds (Series A–C) | **Low** | Not publicly itemized in SEC filings | +| 9 | VW Group ~16% equity stake | Medium | Confirm via Schedule 13D/G filings | + +--- + +## 8. KEY RISK FLAGS AND AREAS REQUIRING FURTHER INVESTIGATION + +### 🔴 High Priority +1. **Securities Settlement Final Approval (May 15, 2026)** — $183M cash outflow; final approval pending. Monitor for objections/appeals. +2. **Persistent Deep Losses** — $17B+ cumulative; GAAP profitability not projected near-term. Any disruption to R2 demand or Amazon relationship could accelerate cash depletion. +3. **FY2025 Delivery Decline (−18% YoY)** — Structural concern; R2 ramp must reverse this or equity thesis erodes. + +### 🟡 Medium Priority +4. **Regulatory Credit Dependency** — Q4 2025 automotive gross profit turned negative due to $270M regulatory credit decline; policy-driven volatility is outside Rivian's control. +5. **R2 Manufacturing Execution Risk** — Rivian's historical Achilles heel; early-stage ramp requires close monitoring. +6. **Employment Lawsuit Disclosure Adequacy** — "Previously unreported" framing in TechCrunch suggests potential 10-K disclosure gap; verify. +7. **Tesla Trade Secret Settlement (Confidential)** — Cannot assess IP admission risk; flag as unresolvable without terms. +8. **Convertible Notes / Debt Structure** — Refinancing and dilution risk requires 10-K verification. +9. **Georgia Plant Capital Commitment** — $5B commitment with 2028 production; capital overrun risk in negative FCF environment. +10. **Amazon Concentration Risk** — Largest shareholder and largest customer simultaneously; relationship deterioration would be doubly destructive. + +### ✅ No Current Flag (Monitor) +- CFIUS / Sanctions: Clean; no designations. +- SEC Enforcement: No actions beyond settlement disclosure. +- CEO Succession: Scaringe firmly in place; no succession risk signals. + +--- + +*This report is a draft for human review. All financial figures should be independently verified against Rivian's audited 10-K/10-Q filings on SEC EDGAR before reliance. This document does not constitute investment advice.* \ No newline at end of file diff --git a/website/cookbook.json b/website/cookbook.json index ec77f79..2202e22 100644 --- a/website/cookbook.json +++ b/website/cookbook.json @@ -146,6 +146,18 @@ "imageUrl": null, "tags": ["deep-research", "task", "webhooks", "python", "notebook"] }, + { + "slug": "parallel-deepagents-due-diligence", + "popular": false, + "featured": false, + "title": "Due Diligence Agent (Deep Agents)", + "description": "Multi-agent due diligence recipe on LangChain's Deep Agents harness. Five Phase-1 subagents plus per-competitor Phase-2 fan-out. Uses parse_basis for per-field confidence and previous_interaction_id for chained follow-ups. Workpapers persist to disk via FilesystemBackend. Validated end-to-end on Rivian: 14 min, 10 Task calls, 33KB cited memo with comparative competitor analysis.", + "repoUrl": "https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence", + "websiteUrl": "https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence", + "creators": ["parallel-web"], + "imageUrl": null, + "tags": ["deep-research", "task", "search", "python", "deepagents", "langchain"] + }, { "slug": "large-scale-tasks", "popular": false, From 7fbb7d4a507b02add4585628cd52ba3e81a69c5c Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 12:52:30 -0400 Subject: [PATCH 02/16] docs(deepagents-due-diligence): add blog post draft First-cut draft of a launch blog post for the recipe. ~1500 words, engineering-blog tone, opens on the 'agent doesn't know what it doesn't know' failure mode, walks through the research_task wrapper + parse_basis + previous_interaction_id pattern, the three-phase orchestration with per-competitor fan-out, the FilesystemBackend virtual_mode gotcha, and the Rivian run results (cross-reference discrepancy resolution, JV-conflict finding, DOE loan correction). Saved as BLOG_DRAFT.md alongside the recipe so it stays paired with the code it describes. --- .../BLOG_DRAFT.md | 151 ++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md new file mode 100644 index 0000000..d7e6cc4 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -0,0 +1,151 @@ +# Building a due diligence agent that reasons about its own uncertainty + +*A multi-agent research recipe on LangChain's Deep Agents and Parallel's Task API. Code: [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence).* + +--- + +Most research agents have a tell. They search, they take what comes back, they synthesize a confident-sounding answer — and they're equally confident whether the underlying source was a clean SEC filing or a stale forum post. The agent doesn't know what it doesn't know. + +That's a real problem if you're using these agents for anything that touches accountability — KYB onboarding at a bank, vendor risk at an insurer, deal screening at a PE firm. A fabricated number in a memo is a lawsuit. The standard fix has been "always have a human verify everything," which makes the agent useful as a typing-speed assistant and not much more. + +This post walks through a different shape: **a research agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain**. The recipe combines LangChain's [Deep Agents](https://github.com/langchain-ai/deepagents) harness for orchestration with [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) for the underlying research — specifically, Parallel's **Basis** (per-field citations + calibrated confidence scores) and **`previous_interaction_id`** (chained follow-up queries that build on prior research context). + +The worked example is **company due diligence**: take a target company name, investigate it across five dimensions, produce a structured memo where every claim has a source trail and any low-confidence finding is flagged for human verification. Validated end-to-end on Rivian Automotive: 14 minutes wall-clock, 10 Task API calls, a 33KB cited memo plus eight supporting workpapers persisted to disk. + +## The tool that does the actual work + +The whole recipe sits on top of a roughly twenty-line wrapper around `langchain-parallel`'s `ParallelTaskRunTool` and `parse_basis` helper: + +```python +from langchain_core.tools import tool +from langchain_parallel import ParallelTaskRunTool, parse_basis + +@tool +def research_task( + query: str, + output_description: str, + previous_interaction_id: str | None = None, +) -> dict: + """Run structured web research via Parallel's Task API.""" + runner = ParallelTaskRunTool( + processor="core-fast", + task_output_schema=output_description, + ) + invoke_args: dict = {"input": query} + if previous_interaction_id: + invoke_args["previous_interaction_id"] = previous_interaction_id + + result = runner.invoke(invoke_args) + parsed = parse_basis(result) + + output = result["output"] + findings = output.get("content") if isinstance(output, dict) else output + + response: dict = { + "findings": findings, + "citations_by_field": parsed["citations_by_field"], + "interaction_id": parsed["interaction_id"], + } + if parsed["low_confidence_fields"]: + response["low_confidence_warning"] = ( + "These fields came back with low confidence and should be verified, " + "ideally by chaining a follow-up query with previous_interaction_id: " + + ", ".join(parsed["low_confidence_fields"]) + ) + return response +``` + +Three small things happen on top of the SDK call: + +1. We route through `ParallelTaskRunTool` for structured task execution. +2. We call `parse_basis(result)` — a helper in `langchain-parallel` that walks the Task API result and pulls out per-field citations plus the names of any fields whose confidence came back as `"low"`. +3. We surface those low-confidence field names as a warning in the tool's return value, so the calling agent's reasoning loop can see them and decide what to do. + +That last bullet is the load-bearing part. The agent doesn't have to silently trust whatever Parallel returns — it can read the warning, see that the result for `current_ceo` came back at low confidence, and make a follow-up call. The follow-up uses `previous_interaction_id` to anchor the new query to the same research thread, so the agent can ask a sharper question without losing context: *"You said the CEO is X with low confidence — what specific sources do you have on that, and is there a more recent appointment?"* + +This is the part most research-agent recipes leave on the table. The agent can know its own confidence; we just have to give it that information. + +## Five subagents, then a fan-out + +The orchestration is straight Deep Agents. We define a handful of specialized subagents, each with a focused system prompt and the `research_task` tool, then we hand them to `create_deep_agent` along with a planning instruction. + +```python +from deepagents import create_deep_agent +from deepagents.backends.filesystem import FilesystemBackend + +agent = create_deep_agent( + model="anthropic:claude-sonnet-4-6", + tools=[ParallelWebSearchTool()], + subagents=[ + corporate_profile_subagent, # Phase 1 + financial_health_subagent, # Phase 1 + litigation_subagent, # Phase 1 + news_reputation_subagent, # Phase 1 + competitive_landscape_subagent, # Phase 1 + competitor_analysis_subagent, # Phase 2 (fan-out) + ], + system_prompt=DILIGENCE_INSTRUCTIONS, + backend=FilesystemBackend(root_dir="./reports", virtual_mode=True), +) +``` + +Five Phase-1 subagents fire in parallel. Each does one packed `research_task` call (and optionally one chained follow-up if Basis flags a low-confidence field), writes its findings to its own workpaper file in the agent's filesystem, and returns. The five workpapers — `corporate-profile.md`, `financial-health.md`, `litigation-regulatory.md`, `news-reputation.md`, `competitive-landscape.md` — are the raw evidence the orchestrator will synthesize. + +The interesting move is **Phase 2**. The `competitive-landscape` subagent's output is intentionally narrow: it returns the names of the target's top three competitors with one-line context each. It does not produce a deep per-competitor profile. Instead, the orchestrator reads that list and **dispatches one new `competitor-analysis` subagent instance per competitor**, in parallel. + +This is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations, with isolated context per instance so the orchestrator's window stays clean. For our Rivian run that meant three parallel `competitor-analysis` subagents — Tesla, Ford, Mercedes — each producing its own `competitor-tesla.md`, `competitor-ford.md`, `competitor-mercedes.md` workpaper. + +Without fan-out, you get "Tesla, Ford, and Mercedes are the main competitors" in a paragraph. With fan-out, you get a comparative table where each competitor is its own analyzed sub-section, and the orchestrator can synthesize a comparative competitor section that actually says useful things — strengths, weaknesses, recent strategic moves, near-term vs long-term threat level. + +## The disk-backed filesystem matters + +Deep Agents has a virtual filesystem by default — workpapers exist as state inside the agent run, then evaporate when the run ends. That's fine for ephemeral demos but unhelpful when the artifact you want is a 33KB memo with eight supporting documents. + +The fix is `FilesystemBackend(root_dir="./reports", virtual_mode=True)`. The `virtual_mode=True` flag is critical: with the default (`False`), absolute paths the agent picks (like `/workpapers/foo.md`) bypass `root_dir` entirely and try to write to the actual filesystem root, which silently fails. With `virtual_mode=True`, the agent's virtual paths anchor to your configured root, and files actually land where you expect. + +After a run, you have a real `reports/workpapers/` directory you can `cat`, search, or paste into a code review. The Rivian sample run committed in the cookbook has eight workpapers totaling 134KB plus a 33KB synthesized memo — auditable, reviewable, diffable. + +## What the agent actually produced + +The Rivian run came back with the things you'd hope a competent junior associate's first draft would catch: + +- **A funding-figure cross-reference resolution.** The `financial-health` workpaper initially had an inconsistency with the corporate profile's funding total. The orchestrator flagged it during synthesis and noted in the final memo: *"One research track reported ~$3.7B total raised — this figure reflected pre-Series F data; confirmed total through Series G is ~$6.3B."* That's the orchestrator reasoning across workpapers and fixing a discrepancy, not just stitching them together. + +- **A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced a concrete risk: *"VW/Scout conflict of interest — no public non-compete provisions identified in JV disclosures; intensifies post-2027 when Scout launches an explicit ~$20K undercutter of R1T."* That's the kind of decision-relevant detail you don't get from a generic competitive-landscape paragraph. + +- **A material correction the synthesis caught.** Phase-1 financial-health initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* + +- **Calibrated risk severity.** The litigation-regulatory section ranks each finding by severity tier (red / orange / green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute. + +None of this is magic — it's what you get when an agent has access to per-field confidence and the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. + +## Numbers + +At default tier (Parallel `core-fast` Task processor), the Rivian run cost roughly $0.75–$1.50 in Parallel API calls and about 14 minutes wall-clock. Eight competitor-analysis subagents and Phase-1 chained follow-ups, total of 10 Task API calls. The full breakdown: + +- Phase 1: 5 subagents × 1 packed Task call each + 2 chained follow-ups (financial-health, litigation-regulatory) = 7 calls +- Phase 2: 3 competitor-analysis subagents × 1 Task call each = 3 calls +- Phase 3 synthesis: zero additional Task calls (orchestrator reads workpapers and writes the memo) + +Tier up to Parallel's `pro-fast` or `ultra` if you want richer reasoning per call; the README has a cost table. + +## Run it + +```bash +git clone https://github.com/parallel-web/parallel-cookbook +cd parallel-cookbook/python-recipes/parallel-deepagents-due-diligence + +uv venv +uv pip install -e . +cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY + +uv run python agent.py +``` + +Get a Parallel API key at [platform.parallel.ai](https://platform.parallel.ai). The recipe ships with the full Rivian sample output committed under `reports/workpapers/`, so you can preview the artifact shape before committing your own keys. + +## Adapting the agent + +Five tracks for company DD is the worked example. The pattern transfers cleanly to any multi-source research workflow where an agent should be able to ask sharper questions when the first answer is shaky — KYB onboarding, vendor risk, M&A target screening, claims investigation. Each domain swap is a different set of subagent system prompts; the underlying architecture (Phase 1 parallel subagents → Phase 2 fan-out → Phase 3 synthesis, with `parse_basis` + `previous_interaction_id` doing the confidence-aware lifting) stays identical. + +Cookbook: [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence). From cdf7978db9eaddfcb64017f37d80e8f4d2a914b1 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 13:00:40 -0400 Subject: [PATCH 03/16] docs(deepagents-due-diligence): rewrite blog draft in cookbook voice MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rewrote the blog draft following the parallel.ai cookbook-blog template (Tags / reading time / GitHub header) and the financial-services audience framing the team prefers. Opens on the broad set of FS workflows where DD shows up — bank credit, KYB/EDD, insurance underwriting, PE/VC, vendor risk, compliance/AML — rather than leading with a critique of 'most research agents.' Updated all code blocks to match the cookbook's actual implementation: - ParallelTaskRunTool + parse_basis (the SDK helper that the original draft pre-dated; the original drafted custom Basis-walking code) - core-fast processor (validated default) - FilesystemBackend(virtual_mode=True) for on-disk workpaper persistence - competitor-analysis fan-out subagent (the Phase-2 pattern that's the canonical Deep Agents move) - Validated run results (Rivian: 14 min, 10 calls, 33KB cited memo with funding-discrepancy resolution and JV-conflict finding) Expanded 'Who this is for' to lead with the FS verticals. --- .../BLOG_DRAFT.md | 298 ++++++++++++++---- 1 file changed, 245 insertions(+), 53 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index d7e6cc4..84717ac 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -1,32 +1,75 @@ -# Building a due diligence agent that reasons about its own uncertainty +# Building a company due diligence agent with Deep Agents and Parallel -*A multi-agent research recipe on LangChain's Deep Agents and Parallel's Task API. Code: [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence).* +*Automate multi-step company research with agentic orchestration and structured web intelligence.* + +**Tags:** Cookbook +**Reading time:** ~10 min +**GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) --- -Most research agents have a tell. They search, they take what comes back, they synthesize a confident-sounding answer — and they're equally confident whether the underlying source was a clean SEC filing or a stale forum post. The agent doesn't know what it doesn't know. +Company due diligence is a workflow that shows up everywhere in financial services. PE analysts screen deals. Bank credit teams assess borrowers. Compliance teams onboard new entities under KYB and EDD obligations. Insurance underwriters evaluate commercial policyholders. Vendor-risk teams scrutinize prospective suppliers. The research follows a consistent pattern: take a company, investigate it across several dimensions, produce a structured intelligence report where every claim has a source trail and any uncertain finding is flagged for human verification. + +The accountability bar is what makes this hard to automate well. A bank's KYB file or a credit committee's deal memo is a defensible artifact — every claim eventually traces to a source, every uncertain item gets a follow-up. Most "research agent" demos handle the search-and-summarize half cleanly but treat their own confidence as opaque. They produce confident-sounding paragraphs whether the underlying source was a clean SEC filing or a stale forum post. + +This cookbook builds an agent that doesn't make that trade-off. It combines [**Deep Agents**](https://github.com/langchain-ai/deepagents) for orchestration and [**Parallel's Task API**](https://docs.parallel.ai/task-api/task-quickstart) for the underlying research. Deep Agents handles the planning, subagent delegation, and context management. Parallel handles the actual research, returning structured findings with per-field citations, reasoning traces, and calibrated confidence scores via [Basis](https://docs.parallel.ai/task-api/guides/basis). When findings from one track raise new questions, Parallel's [interactive research](https://docs.parallel.ai/task-api/guides/interactions) feature (`previous_interaction_id`) lets the agent chain follow-up queries with full context from the prior research thread. + +We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `core-fast` Task processor: **14 minutes wall-clock, 10 Task API calls, a 33KB cited memo with eight supporting workpapers persisted to local disk**. More on what the agent actually produced below. + +## Overview + +The agent orchestrates the research in three phases. + +**Phase 1** dispatches five research subagents in parallel. Each has a focused system prompt and produces its own workpaper file: + +- **Corporate profile** — legal entity structure, key officers, founding history, headcount, office locations +- **Financial health** — funding history, revenue signals, valuation indicators, profitability markers +- **Litigation and regulatory** — lawsuits, SEC filings, sanctions screening, regulatory actions, settlements +- **News and reputation** — recent press coverage, leadership changes, controversy flags, media sentiment +- **Competitive landscape** — identifies the top three competitors and the target's positioning (does not produce per-competitor profiles — that's Phase 2) + +**Phase 2** is a fan-out: once `competitive-landscape` returns the named competitor list, the orchestrator dispatches **one separate `competitor-analysis` subagent instance per competitor**, in parallel. Each instance runs in its own isolated context, produces a focused profile, and writes to its own `competitor-.md` workpaper. + +**Phase 3** is synthesis: the orchestrator reads every workpaper from disk, cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via Parallel's Search API when discrepancies surface, and writes the final memo with risk flags and citation trails. + +DD requires this multi-step architecture rather than a single API call because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, the financial analysis needs to cover the parent. If the litigation scan surfaces an SEC investigation, the risk assessment shifts. The Phase-2 fan-out is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations, with isolated context per instance so the orchestrator's window stays clean for the synthesis pass. + +## Implementation -That's a real problem if you're using these agents for anything that touches accountability — KYB onboarding at a bank, vendor risk at an insurer, deal screening at a PE firm. A fabricated number in a memo is a lawsuit. The standard fix has been "always have a human verify everything," which makes the agent useful as a typing-speed assistant and not much more. +### Setup -This post walks through a different shape: **a research agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain**. The recipe combines LangChain's [Deep Agents](https://github.com/langchain-ai/deepagents) harness for orchestration with [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) for the underlying research — specifically, Parallel's **Basis** (per-field citations + calibrated confidence scores) and **`previous_interaction_id`** (chained follow-up queries that build on prior research context). +```bash +uv pip install deepagents langchain-parallel langchain-anthropic +``` -The worked example is **company due diligence**: take a target company name, investigate it across five dimensions, produce a structured memo where every claim has a source trail and any low-confidence finding is flagged for human verification. Validated end-to-end on Rivian Automotive: 14 minutes wall-clock, 10 Task API calls, a 33KB cited memo plus eight supporting workpapers persisted to disk. +```bash +export ANTHROPIC_API_KEY="your-anthropic-api-key" +export PARALLEL_API_KEY="your-parallel-api-key" +``` -## The tool that does the actual work +### The research tool The whole recipe sits on top of a roughly twenty-line wrapper around `langchain-parallel`'s `ParallelTaskRunTool` and `parse_basis` helper: ```python +from typing import Optional + from langchain_core.tools import tool from langchain_parallel import ParallelTaskRunTool, parse_basis + @tool def research_task( query: str, output_description: str, - previous_interaction_id: str | None = None, + previous_interaction_id: Optional[str] = None, ) -> dict: - """Run structured web research via Parallel's Task API.""" + """Run structured web research via Parallel's Task API. + + Returns findings with per-field citations and confidence scores (Basis). + Use ``previous_interaction_id`` to chain a follow-up query that builds + on a prior research session. + """ runner = ParallelTaskRunTool( processor="core-fast", task_output_schema=output_description, @@ -48,88 +91,233 @@ def research_task( } if parsed["low_confidence_fields"]: response["low_confidence_warning"] = ( - "These fields came back with low confidence and should be verified, " - "ideally by chaining a follow-up query with previous_interaction_id: " + "These fields came back with low confidence and should be " + "verified, ideally by chaining a follow-up query with " + "previous_interaction_id: " + ", ".join(parsed["low_confidence_fields"]) ) return response ``` -Three small things happen on top of the SDK call: +Three things happen on top of the SDK call. The wrapper routes through `ParallelTaskRunTool` for structured task execution. It calls `parse_basis(result)` to extract per-field citations and the names of any fields whose confidence came back as `"low"`. And it surfaces those field names as an explicit `low_confidence_warning` in the tool's return value, so the calling subagent's reasoning loop can see them and decide to chain a follow-up. + +That last part is the load-bearing detail. The agent doesn't have to silently trust whatever Parallel returns — it can read the warning, see that `current_ceo` came back at low confidence, and chain a follow-up query that anchors to the same research thread via `previous_interaction_id`. -1. We route through `ParallelTaskRunTool` for structured task execution. -2. We call `parse_basis(result)` — a helper in `langchain-parallel` that walks the Task API result and pulls out per-field citations plus the names of any fields whose confidence came back as `"low"`. -3. We surface those low-confidence field names as a warning in the tool's return value, so the calling agent's reasoning loop can see them and decide what to do. +### Subagents -That last bullet is the load-bearing part. The agent doesn't have to silently trust whatever Parallel returns — it can read the warning, see that the result for `current_ceo` came back at low confidence, and make a follow-up call. The follow-up uses `previous_interaction_id` to anchor the new query to the same research thread, so the agent can ask a sharper question without losing context: *"You said the CEO is X with low confidence — what specific sources do you have on that, and is there a more recent appointment?"* +Each research track gets its own subagent dict — a name, a description, a focused system prompt, and the `research_task` tool. The Phase-1 subagents are tightly budgeted (one packed Task call plus an optional chained follow-up if Basis flags a low-confidence field) so total run cost stays bounded. -This is the part most research-agent recipes leave on the table. The agent can know its own confidence; we just have to give it that information. +```python +corporate_profile_subagent = { + "name": "corporate-profile", + "description": ( + "Research corporate structure, leadership, founding history, " + "and headcount for the target company." + ), + "system_prompt": """You are a corporate research analyst. + +Budget: 1 research_task call, plus at most 1 chained follow-up if and +only if the first result includes a low_confidence_warning on an +important field. + +Make a single research_task call requesting all of these fields in one +output_description: +- Legal entity name, incorporation jurisdiction, founding date +- Current CEO and key executives (names, titles, approximate tenure) +- Headquarters location and major office locations +- Employee headcount (current and recent trend) +- Corporate structure (parent company, major subsidiaries) + +If a low_confidence_warning surfaces, chain a single follow-up using +previous_interaction_id to verify the flagged fields. + +Write your findings (including citations_by_field) to corporate-profile.md.""", + "tools": [research_task], +} +``` -## Five subagents, then a fan-out +The same pattern repeats for `financial_health_subagent`, `litigation_subagent`, `news_reputation_subagent`, and `competitive_landscape_subagent`. The full set is in [`agent.py`](agent.py). -The orchestration is straight Deep Agents. We define a handful of specialized subagents, each with a focused system prompt and the `research_task` tool, then we hand them to `create_deep_agent` along with a planning instruction. +The Phase-2 subagent is what differentiates this recipe. Instead of asking `competitive-landscape` to produce deep per-competitor profiles, we have it identify three named competitors and let the orchestrator fan out: ```python +competitor_analysis_subagent = { + "name": "competitor-analysis", + "description": ( + "Produce a focused profile of one named competitor — used as a " + "fan-out subagent invoked once per competitor identified by " + "competitive-landscape." + ), + "system_prompt": """You are a competitive intelligence researcher +investigating ONE competitor company at a time. + +Budget: exactly 1 research_task call. + +The orchestrator will pass you a single competitor name and the original +DD target name. Make one research_task call requesting: +- Brief corporate snapshot (HQ, public/private, headcount, founding year) +- Most recent revenue and growth signals (estimated if private) +- Funding or market cap status (last raise / current cap) +- Product / positioning vs. the original DD target +- Recent strategic moves in the last 12 months +- Notable strengths and weaknesses relative to the target + +Write your findings to competitor-.md, where is the +competitor's name lowercased and hyphenated.""", + "tools": [research_task], +} +``` + +### The orchestrator + +```python +from pathlib import Path + from deepagents import create_deep_agent from deepagents.backends.filesystem import FilesystemBackend +from langchain_parallel import ParallelWebSearchTool + +REPORTS_DIR = Path("./reports") +REPORTS_DIR.mkdir(parents=True, exist_ok=True) + +DILIGENCE_INSTRUCTIONS = """\ +You are a senior due diligence analyst managing a team of specialized +researchers. Your job is to produce a comprehensive company intelligence +report where every claim has a verifiable source trail. + +## Process + +1. Plan: Use write_todos to lay out the diligence in three phases. + +2. Phase 1 — parallel research: Use the task tool to dispatch + corporate-profile, financial-health, litigation-regulatory, + news-reputation, and competitive-landscape concurrently. + +3. Phase 2 — competitor fan-out: After competitive-landscape completes, + read competitive-landscape.md and parse the three named competitors. + For EACH competitor, dispatch a separate competitor-analysis subagent + instance via the task tool — pass the competitor's name and the + original DD target. Dispatch all 3 in parallel. + +4. Review and cross-reference: Read every workpaper file. Look for + contradictions across tracks, low-confidence findings, and gaps. Use + the parallel_web_search tool for ad-hoc lookups when investigating + discrepancies. + +5. Phase 3 — synthesize the report with executive summary, corporate + profile, financial overview, litigation/regulatory risk assessment, + news/reputation analysis, competitive landscape (with per-competitor + sub-sections), confidence and verification notes, and key risk flags. + +## Citation and Confidence Guidelines + +- Include source URLs for key claims. +- Call out any finding where confidence was low — these need human + verification. +- If two tracks produced contradictory information, note the discrepancy + explicitly and include citations from both sources. +- This report is a draft for human review, not a final memo. +""" agent = create_deep_agent( model="anthropic:claude-sonnet-4-6", tools=[ParallelWebSearchTool()], subagents=[ - corporate_profile_subagent, # Phase 1 - financial_health_subagent, # Phase 1 - litigation_subagent, # Phase 1 - news_reputation_subagent, # Phase 1 - competitive_landscape_subagent, # Phase 1 - competitor_analysis_subagent, # Phase 2 (fan-out) + corporate_profile_subagent, + financial_health_subagent, + litigation_subagent, + news_reputation_subagent, + competitive_landscape_subagent, + competitor_analysis_subagent, ], system_prompt=DILIGENCE_INSTRUCTIONS, - backend=FilesystemBackend(root_dir="./reports", virtual_mode=True), + backend=FilesystemBackend(root_dir=REPORTS_DIR, virtual_mode=True), ) ``` -Five Phase-1 subagents fire in parallel. Each does one packed `research_task` call (and optionally one chained follow-up if Basis flags a low-confidence field), writes its findings to its own workpaper file in the agent's filesystem, and returns. The five workpapers — `corporate-profile.md`, `financial-health.md`, `litigation-regulatory.md`, `news-reputation.md`, `competitive-landscape.md` — are the raw evidence the orchestrator will synthesize. +A few details worth flagging: + +The `FilesystemBackend(root_dir="./reports", virtual_mode=True)` is what makes the workpapers persist to disk. Deep Agents has a virtual filesystem by default — workpapers exist as state inside the agent run, then evaporate when the run ends. That's fine for ephemeral demos but unhelpful when you want a 33KB memo with eight supporting workpapers you can `cat`, search, or paste into a code review. The `virtual_mode=True` flag is critical: with the default (`False`), absolute paths the agent picks bypass `root_dir` and silently fail. -The interesting move is **Phase 2**. The `competitive-landscape` subagent's output is intentionally narrow: it returns the names of the target's top three competitors with one-line context each. It does not produce a deep per-competitor profile. Instead, the orchestrator reads that list and **dispatches one new `competitor-analysis` subagent instance per competitor**, in parallel. +`ParallelWebSearchTool()` is the orchestrator's quick-lookup tool, used during synthesis when contradictions across workpapers need a fast sanity check. -This is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations, with isolated context per instance so the orchestrator's window stays clean. For our Rivian run that meant three parallel `competitor-analysis` subagents — Tesla, Ford, Mercedes — each producing its own `competitor-tesla.md`, `competitor-ford.md`, `competitor-mercedes.md` workpaper. +### Running the agent -Without fan-out, you get "Tesla, Ford, and Mercedes are the main competitors" in a paragraph. With fan-out, you get a comparative table where each competitor is its own analyzed sub-section, and the orchestrator can synthesize a comparative competitor section that actually says useful things — strengths, weaknesses, recent strategic moves, near-term vs long-term threat level. +```python +result = agent.invoke({ + "messages": [{ + "role": "user", + "content": "Conduct a full due diligence report on Rivian Automotive." + }] +}) + +print(result["messages"][-1].content) +``` -## The disk-backed filesystem matters +For long-running sessions, stream the agent's progress to see planning, subagent dispatches, and the per-competitor fan-out in real time. Pass `subgraphs=True` to receive events from inside subagent execution: -Deep Agents has a virtual filesystem by default — workpapers exist as state inside the agent run, then evaporate when the run ends. That's fine for ephemeral demos but unhelpful when the artifact you want is a 33KB memo with eight supporting documents. +```python +for chunk in agent.stream( + { + "messages": [{ + "role": "user", + "content": "Conduct a full due diligence report on Rivian Automotive." + }] + }, + stream_mode="updates", + subgraphs=True, +): + if isinstance(chunk, tuple) and len(chunk) == 2: + ns, update = chunk + src = f"[subagent: {'.'.join(str(n) for n in ns)}]" if ns else "[orchestrator]" + print(f"{src} {update}") +``` -The fix is `FilesystemBackend(root_dir="./reports", virtual_mode=True)`. The `virtual_mode=True` flag is critical: with the default (`False`), absolute paths the agent picks (like `/workpapers/foo.md`) bypass `root_dir` entirely and try to write to the actual filesystem root, which silently fails. With `virtual_mode=True`, the agent's virtual paths anchor to your configured root, and files actually land where you expect. +## What the agent produced -After a run, you have a real `reports/workpapers/` directory you can `cat`, search, or paste into a code review. The Rivian sample run committed in the cookbook has eight workpapers totaling 134KB plus a 33KB synthesized memo — auditable, reviewable, diffable. +The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. -## What the agent actually produced +**A funding-figure cross-reference resolution.** The financial-health workpaper initially had Rivian's total raised at ~$3.7B. The corporate-profile workpaper had figures that pointed higher. The orchestrator caught the discrepancy during synthesis and corrected the final memo: -The Rivian run came back with the things you'd hope a competent junior associate's first draft would catch: +> *"One research track reported ~$3.7B total raised — this figure reflected pre-Series F data; the confirmed total through Series G is ~$6.3B."* -- **A funding-figure cross-reference resolution.** The `financial-health` workpaper initially had an inconsistency with the corporate profile's funding total. The orchestrator flagged it during synthesis and noted in the final memo: *"One research track reported ~$3.7B total raised — this figure reflected pre-Series F data; confirmed total through Series G is ~$6.3B."* That's the orchestrator reasoning across workpapers and fixing a discrepancy, not just stitching them together. +**A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced something a generic "list of competitors" paragraph wouldn't have: -- **A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced a concrete risk: *"VW/Scout conflict of interest — no public non-compete provisions identified in JV disclosures; intensifies post-2027 when Scout launches an explicit ~$20K undercutter of R1T."* That's the kind of decision-relevant detail you don't get from a generic competitive-landscape paragraph. +> *"VW/Scout conflict of interest — no public non-compete provisions identified in JV disclosures; intensifies post-2027 when Scout launches an explicit ~$20K undercutter of R1T."* -- **A material correction the synthesis caught.** Phase-1 financial-health initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* +**A material correction the synthesis flagged.** Phase-1 financial-health initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* -- **Calibrated risk severity.** The litigation-regulatory section ranks each finding by severity tier (red / orange / green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute. +**Calibrated risk severity.** The litigation-regulatory section ranks each finding by severity tier (red/orange/green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute, NHTSA recall pattern. -None of this is magic — it's what you get when an agent has access to per-field confidence and the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. +None of this is magic. It's what you get when an agent has access to per-field confidence and the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. -## Numbers +## Cost and latency -At default tier (Parallel `core-fast` Task processor), the Rivian run cost roughly $0.75–$1.50 in Parallel API calls and about 14 minutes wall-clock. Eight competitor-analysis subagents and Phase-1 chained follow-ups, total of 10 Task API calls. The full breakdown: +A typical run produces 8–12 Task API calls — five Phase-1 subagents (one packed call each plus a few chained follow-ups) plus three Phase-2 competitor-analysis instances. The Rivian validation run hit 10 calls in 14:36 wall-clock at the default `core-fast` processor. -- Phase 1: 5 subagents × 1 packed Task call each + 2 chained follow-ups (financial-health, litigation-regulatory) = 7 calls -- Phase 2: 3 competitor-analysis subagents × 1 Task call each = 3 calls -- Phase 3 synthesis: zero additional Task calls (orchestrator reads workpapers and writes the memo) +| Tier | Per-run estimate | When to use | +|---|---|---| +| `core-fast` per subagent (default) | ~$0.75–1.50, ~15–25 min | Standard DD draft — agent-loop friendly latency | +| `core` per subagent | ~$1–2, ~25–40 min | Deeper non-`-fast` variant of `core` | +| Tier-up to `pro-fast` | ~$3–6, ~25–45 min | Higher-stakes DD with richer reasoning per track | +| Tier-up to `ultra` | ~$30–80, 90–180 min | Investment-committee-grade output | -Tier up to Parallel's `pro-fast` or `ultra` if you want richer reasoning per call; the README has a cost table. +See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. -## Run it +## Who this is for + +This architecture applies directly to any team running structured research workflows on companies: + +- **Bank credit and lending** — borrower diligence, ongoing monitoring, syndicate participation reviews +- **KYB / KYC / EDD onboarding** — enhanced diligence files for higher-risk customers, periodic refresh +- **Insurance underwriting** — commercial policyholder evaluation, reinsurance treaty diligence +- **PE / VC / corporate development** — deal screening, target evaluation, post-investment monitoring +- **Vendor and supplier risk** — third-party risk assessment files, ongoing supplier monitoring +- **Compliance and AML** — sanctions screening, beneficial ownership tracing, adverse media review + +The five Phase-1 tracks here are a starting point. Swap in tracks relevant to your workflow: add a beneficial ownership tracing subagent for compliance-heavy diligence, an IP portfolio analysis subagent for M&A screening, a SOC 2 verification subagent for vendor assessment, a payments-rail and counterparty network subagent for sanctions screening. Each additional track is a new subagent dict with a system prompt and the same `research_task` tool — the underlying architecture (Phase 1 parallel subagents → Phase 2 fan-out → Phase 3 synthesis, with `parse_basis` + `previous_interaction_id` doing the confidence-aware lifting) stays identical. + +## Run it yourself ```bash git clone https://github.com/parallel-web/parallel-cookbook @@ -142,10 +330,14 @@ cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY uv run python agent.py ``` -Get a Parallel API key at [platform.parallel.ai](https://platform.parallel.ai). The recipe ships with the full Rivian sample output committed under `reports/workpapers/`, so you can preview the artifact shape before committing your own keys. - -## Adapting the agent +The recipe ships with the full Rivian sample run committed under [`reports/workpapers/`](reports/workpapers/) so you can preview the artifact shape before committing your own keys. -Five tracks for company DD is the worked example. The pattern transfers cleanly to any multi-source research workflow where an agent should be able to ask sharper questions when the first answer is shaky — KYB onboarding, vendor risk, M&A target screening, claims investigation. Each domain swap is a different set of subagent system prompts; the underlying architecture (Phase 1 parallel subagents → Phase 2 fan-out → Phase 3 synthesis, with `parse_basis` + `previous_interaction_id` doing the confidence-aware lifting) stays identical. +## Resources -Cookbook: [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence). +- [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) +- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) +- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart) +- [Parallel Basis and citations](https://docs.parallel.ai/task-api/guides/basis) +- [Parallel interactive research](https://docs.parallel.ai/task-api/guides/interactions) +- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) +- [Get a Parallel API key](https://platform.parallel.ai) From f423489e679c06669958e9328f0ef82c0302f0bc Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 13:08:52 -0400 Subject: [PATCH 04/16] docs(deepagents-due-diligence): add relative links to workpaper outputs Each finding in the 'What the agent produced' section now links to the specific workpaper(s) that produced it. Top-of-post link to the synthesized memo and the workpapers directory; 'Run it yourself' section points readers at the synthesized memo and a Tesla competitor sample. Relative links resolve in the GitHub UI from the blog draft's location in the repo. They'll need rewriting when porting to the public blog renderer (separate task). --- .../BLOG_DRAFT.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index 84717ac..8f5a115 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -14,7 +14,7 @@ The accountability bar is what makes this hard to automate well. A bank's KYB fi This cookbook builds an agent that doesn't make that trade-off. It combines [**Deep Agents**](https://github.com/langchain-ai/deepagents) for orchestration and [**Parallel's Task API**](https://docs.parallel.ai/task-api/task-quickstart) for the underlying research. Deep Agents handles the planning, subagent delegation, and context management. Parallel handles the actual research, returning structured findings with per-field citations, reasoning traces, and calibrated confidence scores via [Basis](https://docs.parallel.ai/task-api/guides/basis). When findings from one track raise new questions, Parallel's [interactive research](https://docs.parallel.ai/task-api/guides/interactions) feature (`previous_interaction_id`) lets the agent chain follow-up queries with full context from the prior research thread. -We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `core-fast` Task processor: **14 minutes wall-clock, 10 Task API calls, a 33KB cited memo with eight supporting workpapers persisted to local disk**. More on what the agent actually produced below. +We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `core-fast` Task processor: **14 minutes wall-clock, 10 Task API calls, a [33KB cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced below. ## Overview @@ -275,19 +275,19 @@ for chunk in agent.stream( ## What the agent produced -The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. +The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. The full output is in [`reports/workpapers/`](reports/workpapers/) — eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). -**A funding-figure cross-reference resolution.** The financial-health workpaper initially had Rivian's total raised at ~$3.7B. The corporate-profile workpaper had figures that pointed higher. The orchestrator caught the discrepancy during synthesis and corrected the final memo: +**A funding-figure cross-reference resolution.** The [financial-health workpaper](reports/workpapers/financial-health.md) initially had Rivian's total raised at ~$3.7B. The [corporate-profile workpaper](reports/workpapers/corporate-profile.md) had figures that pointed higher. The orchestrator caught the discrepancy during synthesis and corrected the [final memo](reports/workpapers/rivian-due-diligence-report.md): > *"One research track reported ~$3.7B total raised — this figure reflected pre-Series F data; the confirmed total through Series G is ~$6.3B."* -**A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced something a generic "list of competitors" paragraph wouldn't have: +**A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced something a generic "list of competitors" paragraph wouldn't have. From [`competitor-mercedes.md`](reports/workpapers/competitor-mercedes.md), [`competitor-tesla.md`](reports/workpapers/competitor-tesla.md), and [`competitor-ford.md`](reports/workpapers/competitor-ford.md) the synthesis pulled out: > *"VW/Scout conflict of interest — no public non-compete provisions identified in JV disclosures; intensifies post-2027 when Scout launches an explicit ~$20K undercutter of R1T."* -**A material correction the synthesis flagged.** Phase-1 financial-health initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* +**A material correction the synthesis flagged.** Phase-1 [financial-health](reports/workpapers/financial-health.md) initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* -**Calibrated risk severity.** The litigation-regulatory section ranks each finding by severity tier (red/orange/green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute, NHTSA recall pattern. +**Calibrated risk severity.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) ranks each finding by severity tier (red/orange/green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute, NHTSA recall pattern. None of this is magic. It's what you get when an agent has access to per-field confidence and the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. @@ -330,7 +330,7 @@ cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY uv run python agent.py ``` -The recipe ships with the full Rivian sample run committed under [`reports/workpapers/`](reports/workpapers/) so you can preview the artifact shape before committing your own keys. +The recipe ships with the full Rivian sample run committed under [`reports/workpapers/`](reports/workpapers/) — start with the [synthesized memo](reports/workpapers/rivian-due-diligence-report.md) and the [Tesla competitor workpaper](reports/workpapers/competitor-tesla.md) for a sense of the artifact shape before committing your own keys. ## Resources From 6ab3f70461ce8f434503a779c32b43895cbf6bc1 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 16:17:06 -0400 Subject: [PATCH 05/16] =?UTF-8?q?docs(deepagents-due-diligence):=20blog=20?= =?UTF-8?q?rewrite=20=E2=80=94=20accuracy,=20capability=20beats,=20LC=20do?= =?UTF-8?q?cs=20links?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Addresses findings from four parallel reviewers (technical accuracy, end-user clarity, Deep Agents showcase, Parallel showcase) plus two style alignment passes (parallel.ai/blog and langchain.com/blog). Accuracy fixes: - Replaced four fabricated block-quotes in 'What the agent produced' with verbatim findings from the actual workpapers: regulatory-credit dependency (financial-health), R1T tax-credit advantage (competitor- tesla), Mercedes 'technology-open' pivot (competitor-mercedes), TechCrunch 'previously unreported' disclosure-adequacy concern (litigation-regulatory), and the Confidence-and-Verification-Notes section with calibrated confidence ratings + named verification paths - Fixed FilesystemBackend description: virtual_mode=False doesn't silently fail — it writes to the wrong filesystem location - Fixed streaming snippet to match agent.py's v2 event-API shape - Fixed cost/latency framing: per-call latencies (15s-100s for core-fast, 30s-5min for pro-fast, 5-25min for ultra) per Parallel pricing docs, not the inflated per-run numbers we had Capability beats added: - Basis described as a per-field object with citations + reasoning + high/medium/low confidence (the differentiator vs document-level relevance scores from generic web search APIs) - previous_interaction_id explained: chains the prior research thread's source context, so 'verify the low-confidence field' doesn't restart - Phase-2 fan-out WHY: each subagent burns ~10-20K tokens of raw research material that doesn't pollute the orchestrator window - ParallelWebSearchTool's role sold: 1-3s, ~$0.005/call, ideal for cheap fact-check disambiguation during synthesis - Extensions section: FindAll for entity discovery, Monitor for post-deal surveillance, ParallelEnrichment for batch DD, Deep Agents primitives we don't exercise (interrupt_on, checkpointer, skills/memory) LangChain docs links threaded throughout per user request: - Deep Agents overview, planning (write_todos), subagents, filesystem, FilesystemBackend, harness primitives — each linked at first mention Style alignments: - 'Deep Agents is the harness, Parallel is the research substrate' framing (matches LangChain's 'Agent = Model + Harness' mental model) - Compressed Cost/Latency table to inline note (Parallel cookbook style) - Trimmed 'Who this is for' enumeration (replaced with extensions section that does similar work for engineers) - Resources block tightened to 4 grouped links from 7 flat ones Holding back for a future pass: hero image/diagram, Key Takeaways box at top, 'Why this architecture' restructure, code-block trimming. --- .../BLOG_DRAFT.md | 85 ++++++++----------- 1 file changed, 34 insertions(+), 51 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index 8f5a115..23e846b 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -12,7 +12,7 @@ Company due diligence is a workflow that shows up everywhere in financial servic The accountability bar is what makes this hard to automate well. A bank's KYB file or a credit committee's deal memo is a defensible artifact — every claim eventually traces to a source, every uncertain item gets a follow-up. Most "research agent" demos handle the search-and-summarize half cleanly but treat their own confidence as opaque. They produce confident-sounding paragraphs whether the underlying source was a clean SEC filing or a stale forum post. -This cookbook builds an agent that doesn't make that trade-off. It combines [**Deep Agents**](https://github.com/langchain-ai/deepagents) for orchestration and [**Parallel's Task API**](https://docs.parallel.ai/task-api/task-quickstart) for the underlying research. Deep Agents handles the planning, subagent delegation, and context management. Parallel handles the actual research, returning structured findings with per-field citations, reasoning traces, and calibrated confidence scores via [Basis](https://docs.parallel.ai/task-api/guides/basis). When findings from one track raise new questions, Parallel's [interactive research](https://docs.parallel.ai/task-api/guides/interactions) feature (`previous_interaction_id`) lets the agent chain follow-up queries with full context from the prior research thread. +This cookbook builds an agent that doesn't make that trade-off. **Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides four primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview#planning) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated context, a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research, and middleware for control. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `core-fast` Task processor: **14 minutes wall-clock, 10 Task API calls, a [33KB cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced below. @@ -28,11 +28,11 @@ The agent orchestrates the research in three phases. - **News and reputation** — recent press coverage, leadership changes, controversy flags, media sentiment - **Competitive landscape** — identifies the top three competitors and the target's positioning (does not produce per-competitor profiles — that's Phase 2) -**Phase 2** is a fan-out: once `competitive-landscape` returns the named competitor list, the orchestrator dispatches **one separate `competitor-analysis` subagent instance per competitor**, in parallel. Each instance runs in its own isolated context, produces a focused profile, and writes to its own `competitor-.md` workpaper. +**Phase 2** is a [subagent fan-out](https://docs.langchain.com/oss/python/deepagents/subagents) — once `competitive-landscape` returns the named competitor list, the orchestrator dispatches **one separate `competitor-analysis` subagent instance per competitor**, in parallel. Each instance runs against its own isolated message history. The reason that matters: each `competitor-analysis` run burns through its own ~10–20K tokens of raw research material — pricing tables, product specs, recent press, financial figures — and only a distilled workpaper file ends up in the synthesis context. Without isolation, three competitors' raw findings would stack into the orchestrator's window and crowd out the cross-reference reasoning that has to happen in Phase 3. -**Phase 3** is synthesis: the orchestrator reads every workpaper from disk, cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via Parallel's Search API when discrepancies surface, and writes the final memo with risk flags and citation trails. +**Phase 3** is synthesis: the orchestrator reads every workpaper from disk, cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via [`ParallelWebSearchTool`](https://docs.parallel.ai/search/search-quickstart) when discrepancies surface (~1–3s and a fraction of a cent per call — much cheaper than spinning up another Task call to disambiguate one fact), and writes the final memo with risk flags and citation trails. -DD requires this multi-step architecture rather than a single API call because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, the financial analysis needs to cover the parent. If the litigation scan surfaces an SEC investigation, the risk assessment shifts. The Phase-2 fan-out is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations, with isolated context per instance so the orchestrator's window stays clean for the synthesis pass. +DD requires this multi-step architecture rather than a single API call because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, the financial analysis needs to cover the parent. If the litigation scan surfaces an SEC investigation, the risk assessment shifts. The Phase-2 fan-out matches the subagent shape Deep Agents was designed around: spawning N instances of the same subagent type for N parallel investigations, with isolated message histories per instance. ## Implementation @@ -237,9 +237,9 @@ agent = create_deep_agent( A few details worth flagging: -The `FilesystemBackend(root_dir="./reports", virtual_mode=True)` is what makes the workpapers persist to disk. Deep Agents has a virtual filesystem by default — workpapers exist as state inside the agent run, then evaporate when the run ends. That's fine for ephemeral demos but unhelpful when you want a 33KB memo with eight supporting workpapers you can `cat`, search, or paste into a code review. The `virtual_mode=True` flag is critical: with the default (`False`), absolute paths the agent picks bypass `root_dir` and silently fail. +[`FilesystemBackend(root_dir="./reports", virtual_mode=True)`](https://docs.langchain.com/oss/python/deepagents/filesystem) is what makes the workpapers persist to disk. Deep Agents ships with a [state-backed filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) by default, where workpapers live as agent state and evaporate when the run ends — fine for demos, less useful when you want a 33KB memo and eight workpapers you can `cat`, grep, paste into a review. **`virtual_mode=True` is critical** — with the default (`False`), an agent that picks an absolute path like `/workpapers/foo.md` will write to the actual filesystem root, *not* under `./reports/`. That's not a silent failure; it's the file ending up somewhere unexpected. Setting `virtual_mode=True` anchors the agent's virtual paths to your `root_dir`. -`ParallelWebSearchTool()` is the orchestrator's quick-lookup tool, used during synthesis when contradictions across workpapers need a fast sanity check. +[`ParallelWebSearchTool()`](https://docs.parallel.ai/search/search-quickstart) is the orchestrator-only quick-lookup tool. The Search API returns LLM-optimized excerpts in 1–3 seconds at ~$0.005 per call — perfect for "is this $5.4B revenue figure for FY2024 or FY2025?" sanity passes during synthesis, where firing another Task call would be overkill. ### Running the agent @@ -254,68 +254,54 @@ result = agent.invoke({ print(result["messages"][-1].content) ``` -For long-running sessions, stream the agent's progress to see planning, subagent dispatches, and the per-competitor fan-out in real time. Pass `subgraphs=True` to receive events from inside subagent execution: +For long-running sessions, stream the agent's progress to see planning, subagent dispatches, and the per-competitor fan-out in real time. Pass `subgraphs=True` to surface events from inside subagent execution: ```python for chunk in agent.stream( - { - "messages": [{ - "role": "user", - "content": "Conduct a full due diligence report on Rivian Automotive." - }] - }, + {"messages": [{"role": "user", "content": "Conduct a full due diligence report on Rivian Automotive."}]}, stream_mode="updates", subgraphs=True, + version="v2", ): - if isinstance(chunk, tuple) and len(chunk) == 2: - ns, update = chunk - src = f"[subagent: {'.'.join(str(n) for n in ns)}]" if ns else "[orchestrator]" - print(f"{src} {update}") + if chunk.get("type") == "updates": + source = f"[subagent: {chunk['ns']}]" if chunk.get("ns") else "[orchestrator]" + print(f"{source} {chunk.get('data')}") ``` ## What the agent produced -The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. The full output is in [`reports/workpapers/`](reports/workpapers/) — eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). +The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that they might not. The full output is in [`reports/workpapers/`](reports/workpapers/): eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). -**A funding-figure cross-reference resolution.** The [financial-health workpaper](reports/workpapers/financial-health.md) initially had Rivian's total raised at ~$3.7B. The [corporate-profile workpaper](reports/workpapers/corporate-profile.md) had figures that pointed higher. The orchestrator caught the discrepancy during synthesis and corrected the [final memo](reports/workpapers/rivian-due-diligence-report.md): +**A structural fragility finding the financial track surfaced on its own.** The [financial-health workpaper](reports/workpapers/financial-health.md) flagged that Rivian's Q4 2025 automotive gross profit had turned negative — driven by a $270M decline in regulatory credit sales. That's the kind of finding a one-shot research summary tends to miss because it requires connecting the headline gross-profit number to the line item that produced it. From the [final memo](reports/workpapers/rivian-due-diligence-report.md): -> *"One research track reported ~$3.7B total raised — this figure reflected pre-Series F data; the confirmed total through Series G is ~$6.3B."* +> *Q4 2025 automotive gross profit turned negative primarily due to a $270M decline in regulatory credit sales. This volatility — driven by policy/regulatory decisions outside Rivian's control — makes near-term profitability fragile. Investors should model scenarios with and without regulatory credit income.* -**A specific JV-conflict finding.** The Phase-2 fan-out for VW (the Scout Motors angle) surfaced something a generic "list of competitors" paragraph wouldn't have. From [`competitor-mercedes.md`](reports/workpapers/competitor-mercedes.md), [`competitor-tesla.md`](reports/workpapers/competitor-tesla.md), and [`competitor-ford.md`](reports/workpapers/competitor-ford.md) the synthesis pulled out: +**A non-obvious competitive advantage from the Phase-2 fan-out.** The [`competitor-tesla`](reports/workpapers/competitor-tesla.md) subagent pulled out a near-term price-of-purchase advantage you wouldn't get from a generic "Rivian's competitors are Tesla, Ford, GM" paragraph: -> *"VW/Scout conflict of interest — no public non-compete provisions identified in JV disclosures; intensifies post-2027 when Scout launches an explicit ~$20K undercutter of R1T."* +> *"R1T qualifies for IRA EV tax credits (~$7,500); Cybertruck does not — a meaningful price-of-purchase advantage for Rivian in the near term."* -**A material correction the synthesis flagged.** Phase-1 [financial-health](reports/workpapers/financial-health.md) initially under-weighted Rivian's $6.6B DOE ATVM loan. The orchestrator flagged it during cross-reference and the final memo reads: *"DOE ATVM loan — $6.57B finalized early 2026 — underweighted in base workpaper, flagged as material correction."* +The same fan-out caught Mercedes's "[technology-open](reports/workpapers/competitor-mercedes.md)" pivot — a 23% YoY decline in BEV deliveries plus an explicit slowing of EV commitment, suggesting Mercedes is becoming a less aggressive near-term competitor in the premium-SUV segment that Rivian's R1S sits in. -**Calibrated risk severity.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) ranks each finding by severity tier (red/orange/green) with explicit verification asks at the bottom — Crews v. Rivian securities settlement (preliminary approval; final hearing May 15, 2026), Tesla trade-secret case (PACER verification needed), Bosch breach-of-contract dispute, NHTSA recall pattern. +**A disclosure-adequacy red flag.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) caught that a December 2024 TechCrunch investigation referred to executive harassment lawsuits as "previously unreported" — and connected the dots to a question the orchestrator carried into the final memo: *"The 'previously unreported' characterization raises a disclosure adequacy concern — reviewers should verify completeness in Rivian's SEC filings' legal proceedings section."* That's analyst-grade reasoning across what was found and what should be on file. -None of this is magic. It's what you get when an agent has access to per-field confidence and the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. +**Calibrated risk severity with explicit verification asks.** The [final memo](reports/workpapers/rivian-due-diligence-report.md) tiers every risk by severity (🔴 high / 🟡 medium / 🟢 resolved) and includes a "Confidence and Verification Notes" section that numbers ten specific findings with a calibrated confidence rating and the exact source-of-truth a reviewer should chase — *Crews v. Rivian* PACER docket, the 10-K balance sheet for cash-on-hand, Schedule 13D/G for the VW equity stake, the 10-K legal proceedings section for employment lawsuit completeness. Every shaky finding has a named verification path. -## Cost and latency +None of this is magic. It's what you get when the underlying research API returns calibrated confidence per field and the agent has the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. -A typical run produces 8–12 Task API calls — five Phase-1 subagents (one packed call each plus a few chained follow-ups) plus three Phase-2 competitor-analysis instances. The Rivian validation run hit 10 calls in 14:36 wall-clock at the default `core-fast` processor. +### Cost and latency -| Tier | Per-run estimate | When to use | -|---|---|---| -| `core-fast` per subagent (default) | ~$0.75–1.50, ~15–25 min | Standard DD draft — agent-loop friendly latency | -| `core` per subagent | ~$1–2, ~25–40 min | Deeper non-`-fast` variant of `core` | -| Tier-up to `pro-fast` | ~$3–6, ~25–45 min | Higher-stakes DD with richer reasoning per track | -| Tier-up to `ultra` | ~$30–80, 90–180 min | Investment-committee-grade output | +The Rivian run hit **10 Task API calls in ~14 minutes** at the default `core-fast` processor — five Phase-1 packed calls (with a couple of chained follow-ups for low-confidence fields) plus three Phase-2 competitor-analysis instances. Per-call latency varies by tier: `core-fast` is 15s–100s/call, `pro-fast` is 30s–5min/call, `ultra` is 5–25min/call. Tier up to `pro-fast` for higher-stakes diligence and `ultra` for investment-committee-grade output. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. -See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. +### Extensions -## Who this is for +The five Phase-1 tracks are a starting point — each new domain is a new subagent dict with a focused prompt and the same `research_task` tool. A few natural extensions on the Parallel side: -This architecture applies directly to any team running structured research workflows on companies: +- Swap `competitive-landscape` for [**FindAll**](https://docs.parallel.ai/findall-api/findall-quickstart) when the diligence task is "find every subsidiary that satisfies condition X" or "find every vendor in category Y," not just "name three competitors." FindAll is purpose-built for evaluated entity discovery — exactly the shape of beneficial-ownership tracing in KYB or supplier-mapping in vendor risk. +- Plug the final memo into [**Monitor**](https://docs.parallel.ai/monitor-api/monitor-quickstart) for ongoing post-deal surveillance — a credit-team's syndicate refresh, a portfolio-company quarterly health check, or a vendor's ongoing risk file. +- Run the recipe at portfolio scale with [**`ParallelEnrichment`**](https://docs.parallel.ai/task-api/group-api) — DD-lite across fifty deal-screening targets in one batch instead of fifty one-shot agent runs. +- Tier up to the `ultra` Task processor when you need [Deep Research](https://docs.parallel.ai/task-api/examples/task-deep-research)–grade reasoning per subagent, e.g. for IC-grade investment memos. -- **Bank credit and lending** — borrower diligence, ongoing monitoring, syndicate participation reviews -- **KYB / KYC / EDD onboarding** — enhanced diligence files for higher-risk customers, periodic refresh -- **Insurance underwriting** — commercial policyholder evaluation, reinsurance treaty diligence -- **PE / VC / corporate development** — deal screening, target evaluation, post-investment monitoring -- **Vendor and supplier risk** — third-party risk assessment files, ongoing supplier monitoring -- **Compliance and AML** — sanctions screening, beneficial ownership tracing, adverse media review - -The five Phase-1 tracks here are a starting point. Swap in tracks relevant to your workflow: add a beneficial ownership tracing subagent for compliance-heavy diligence, an IP portfolio analysis subagent for M&A screening, a SOC 2 verification subagent for vendor assessment, a payments-rail and counterparty network subagent for sanctions screening. Each additional track is a new subagent dict with a system prompt and the same `research_task` tool — the underlying architecture (Phase 1 parallel subagents → Phase 2 fan-out → Phase 3 synthesis, with `parse_basis` + `previous_interaction_id` doing the confidence-aware lifting) stays identical. +Deep Agents itself has primitives we don't exercise here that are worth knowing about as you adapt the recipe — [`interrupt_on`](https://docs.langchain.com/oss/python/deepagents/overview) for human-in-the-loop sign-off before the synthesis pass (analyst approval gates), [`checkpointer`](https://docs.langchain.com/oss/python/deepagents/overview) so a 14-minute run can resume from a crash, and [skills / memory](https://docs.langchain.com/oss/python/deepagents/overview) for cross-run learning of preferred sources and verification heuristics. ## Run it yourself @@ -334,10 +320,7 @@ The recipe ships with the full Rivian sample run committed under [`reports/workp ## Resources -- [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) -- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) -- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart) -- [Parallel Basis and citations](https://docs.parallel.ai/task-api/guides/basis) -- [Parallel interactive research](https://docs.parallel.ai/task-api/guides/interactions) -- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) -- [Get a Parallel API key](https://platform.parallel.ai) +- [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) and [sample Rivian run](reports/workpapers/) on GitHub +- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) — the harness +- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart), [Basis](https://docs.parallel.ai/task-api/guides/basis), and [interactive research](https://docs.parallel.ai/task-api/guides/interactions) — the research substrate +- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) and [Parallel API keys](https://platform.parallel.ai) From 799b99f2177735d20f0979ec72690cdb3d696ddc Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 16:24:25 -0400 Subject: [PATCH 06/16] docs+code(deepagents-due-diligence): address re-review feedback, switch default to pro-fast MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Blog draft (BLOG_DRAFT.md): - Lead intro paragraph differentiates this recipe from canonical examples/deep_research (Tavily-based, generic prose) as the citation-grade vertical companion - Sharpened Basis differentiation: 'rather than a single document- level relevance score' - Dropped 'middleware' from the four-primitive list (overclaim — never exercised in the recipe); now lists three named primitives - Added 'Who this is for' callout under metadata block - Added plain-English intro paragraph before the 45-line research_task code block (audience C bounces here per clarity reviewer) - Tightened 'a couple of chained follow-ups' → explicit 'two' for auditable arithmetic (5 packed + 2 chained + 3 fan-out = 10) - competitive-landscape Phase-1 bullet now explicitly says it returns three competitor names that Phase-2 fans out on - Reinstated cost/latency table (small, 3 rows) for senior-eng spend evaluation; per-call latencies match Parallel pricing docs - Added Sonnet 4.6 model-selection rationale + how to swap - Added inline platform.parallel.ai link in Run-it section's .env comment (was previously only in Resources) Default processor switched core-fast → pro-fast across: - agent.py: research_task wrapper - README.md: prose, code snippet, cost table - due_diligence.ipynb: research_task code, latency annotations - BLOG_DRAFT.md: code snippet, validation prose, cost table Validation metrics for the pro-fast run will refresh once that run completes. The 'core-fast: 14 min, 10 calls' baseline is removed from the blog intro to avoid mismatch; Cost section keeps the generic call-count breakdown. --- .../BLOG_DRAFT.md | 31 ++++++++++++++----- .../README.md | 24 +++++--------- .../agent.py | 2 +- .../due_diligence.ipynb | 6 ++-- 4 files changed, 36 insertions(+), 27 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index 23e846b..2c36e98 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -5,6 +5,9 @@ **Tags:** Cookbook **Reading time:** ~10 min **GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) +**Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) (33 KB) and [eight workpapers](reports/workpapers/) — no setup needed to read. + +> **Who this is for:** engineers building research workflows for bank credit and lending, KYB / EDD onboarding, insurance underwriting, PE / VC / corp dev deal screening, vendor and supplier risk, or compliance and AML. The recipe also adapts cleanly to non-DD research patterns where calibrated confidence and citation trails matter — newsletter prep, candidate background research, market sizing. --- @@ -12,9 +15,11 @@ Company due diligence is a workflow that shows up everywhere in financial servic The accountability bar is what makes this hard to automate well. A bank's KYB file or a credit committee's deal memo is a defensible artifact — every claim eventually traces to a source, every uncertain item gets a follow-up. Most "research agent" demos handle the search-and-summarize half cleanly but treat their own confidence as opaque. They produce confident-sounding paragraphs whether the underlying source was a clean SEC filing or a stale forum post. -This cookbook builds an agent that doesn't make that trade-off. **Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides four primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview#planning) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated context, a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research, and middleware for control. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. +This cookbook builds an agent that doesn't make that trade-off. **Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides three primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated message histories, and a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field, rather than a single document-level relevance score. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. + +Where the canonical Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) pairs the harness with generic web search and produces an open-ended prose report, this recipe is the citation-grade vertical companion — every claim is tied to a Basis-backed source, every uncertain finding is flagged for human verification, and the output is a structured DD memo with named sections. -We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `core-fast` Task processor: **14 minutes wall-clock, 10 Task API calls, a [33KB cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced below. +We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: a [cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk; ~10 Task API calls; wall-clock and full metrics in the [Cost and latency](#cost-and-latency) section below. More on what the agent actually produced further on. ## Overview @@ -26,7 +31,7 @@ The agent orchestrates the research in three phases. - **Financial health** — funding history, revenue signals, valuation indicators, profitability markers - **Litigation and regulatory** — lawsuits, SEC filings, sanctions screening, regulatory actions, settlements - **News and reputation** — recent press coverage, leadership changes, controversy flags, media sentiment -- **Competitive landscape** — identifies the top three competitors and the target's positioning (does not produce per-competitor profiles — that's Phase 2) +- **Competitive landscape** — identifies the target's positioning and returns three named competitors that Phase 2 fans out on (this subagent does not produce per-competitor profiles itself) **Phase 2** is a [subagent fan-out](https://docs.langchain.com/oss/python/deepagents/subagents) — once `competitive-landscape` returns the named competitor list, the orchestrator dispatches **one separate `competitor-analysis` subagent instance per competitor**, in parallel. Each instance runs against its own isolated message history. The reason that matters: each `competitor-analysis` run burns through its own ~10–20K tokens of raw research material — pricing tables, product specs, recent press, financial figures — and only a distilled workpaper file ends up in the synthesis context. Without isolation, three competitors' raw findings would stack into the orchestrator's window and crowd out the cross-reference reasoning that has to happen in Phase 3. @@ -49,7 +54,7 @@ export PARALLEL_API_KEY="your-parallel-api-key" ### The research tool -The whole recipe sits on top of a roughly twenty-line wrapper around `langchain-parallel`'s `ParallelTaskRunTool` and `parse_basis` helper: +Every subagent calls a single tool — `research_task` — that takes a query and a description of the desired output, runs a Parallel Task API call under the hood, and returns the structured findings *plus* a list of any fields whose confidence came back at low. If that warning is non-empty, the subagent's reasoning loop knows to chain a follow-up query that re-asks specifically about those fields, anchored to the same research thread via `previous_interaction_id`. Roughly twenty lines of code on top of the SDK: ```python from typing import Optional @@ -71,7 +76,7 @@ def research_task( on a prior research session. """ runner = ParallelTaskRunTool( - processor="core-fast", + processor="pro-fast", task_output_schema=output_description, ) invoke_args: dict = {"input": query} @@ -241,6 +246,8 @@ A few details worth flagging: [`ParallelWebSearchTool()`](https://docs.parallel.ai/search/search-quickstart) is the orchestrator-only quick-lookup tool. The Search API returns LLM-optimized excerpts in 1–3 seconds at ~$0.005 per call — perfect for "is this $5.4B revenue figure for FY2024 or FY2025?" sanity passes during synthesis, where firing another Task call would be overkill. +Sonnet 4.6 is a deliberate orchestrator pick — it handles the multi-phase planning, cross-reference reasoning, and final memo synthesis without the cost of Opus, while the heavy research lifting happens inside Parallel's Task API rather than in the orchestrator's tokens. Swap via `model=` in `create_deep_agent`; any LangChain-compatible chat model identifier works. + ### Running the agent ```python @@ -290,7 +297,17 @@ None of this is magic. It's what you get when the underlying research API return ### Cost and latency -The Rivian run hit **10 Task API calls in ~14 minutes** at the default `core-fast` processor — five Phase-1 packed calls (with a couple of chained follow-ups for low-confidence fields) plus three Phase-2 competitor-analysis instances. Per-call latency varies by tier: `core-fast` is 15s–100s/call, `pro-fast` is 30s–5min/call, `ultra` is 5–25min/call. Tier up to `pro-fast` for higher-stakes diligence and `ultra` for investment-committee-grade output. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. +The Rivian run hit roughly 10 Task API calls — five Phase-1 packed calls plus two chained follow-ups (financial-health and litigation-regulatory each chained one when a low-confidence field surfaced) plus three Phase-2 competitor-analysis instances. + +Per-call latency by tier (from [Parallel pricing](https://docs.parallel.ai/getting-started/pricing)): + +| Tier | Per-call latency | Best for | +|---|---|---| +| `core-fast` | 15s – 100s | Faster draft, useful for iterating on prompts | +| `pro-fast` *(recipe default)* | 30s – 5min | Higher-stakes DD with deeper reasoning per call | +| `ultra` | 5min – 25min | Investment-committee-grade output | + +Phase 1 runs concurrently and Phase 2 fans out, so the per-run wall-clock is roughly two parallel batches of the slowest call in each, plus orchestrator synthesis. See the pricing page for per-call cost. ### Extensions @@ -311,7 +328,7 @@ cd parallel-cookbook/python-recipes/parallel-deepagents-due-diligence uv venv uv pip install -e . -cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY +cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY (get a Parallel key at platform.parallel.ai) uv run python agent.py ``` diff --git a/python-recipes/parallel-deepagents-due-diligence/README.md b/python-recipes/parallel-deepagents-due-diligence/README.md index 429ea52..0131118 100644 --- a/python-recipes/parallel-deepagents-due-diligence/README.md +++ b/python-recipes/parallel-deepagents-due-diligence/README.md @@ -1,17 +1,8 @@ -# Due Diligence Agent — Deep Agents + Parallel +# Building a due diligence agent with Deep Agents and Parallel -A multi-agent due diligence recipe built on LangChain's Deep Agents harness and Parallel's Task API. Run-time validated on Rivian: 14:36 wall-clock, 10 Task calls, [a 33KB cited memo + 8 supporting workpapers](reports/workpapers/) on disk. +**A research agent that reasons over its own confidence and chains follow-up queries when it isn't sure.** -> One-sentence pitch: a research agent that reasons over its own confidence (Parallel Basis) and chains follow-up queries (`previous_interaction_id`) when a finding is uncertain. - -## What it shows - -- **`ParallelTaskRunTool`** + `parse_basis` — structured per-entity research with per-field citations and calibrated confidence; the wrapper surfaces low-confidence fields explicitly so the subagent's reasoning can decide to chain a follow-up. -- **Deep Agents fan-out pattern** — Phase-2 spawns one `competitor-analysis` subagent instance per competitor identified by `competitive-landscape`, demonstrating the canonical "N parallel investigations of the same subagent type" pattern in deepagents. -- **Disk-backed `FilesystemBackend`** — every workpaper and the synthesized memo persist to `./reports/workpapers/` so the artifact is auditable, not ephemeral. -- **`ParallelWebSearchTool`** as orchestrator's quick-lookup for ad-hoc cross-reference verification. - -Most research agents do one search, take what they get, and move on. This recipe shows a different pattern: an agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain. Deep Agents handles orchestration — planning, subagent delegation, virtual filesystem. Parallel's Task API returns structured findings with per-field citations and calibrated confidence via Basis. Parallel's `previous_interaction_id` lets the agent pick up where a prior query left off — context preserved, follow-up question added. +Most research agents do one search, take what they get, and move on. This recipe shows a different pattern: an agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain. Deep Agents handles the orchestration — planning, subagent delegation, virtual filesystem. Parallel's Task API returns structured findings with per-field citations and calibrated confidence via Basis. Parallel's `previous_interaction_id` lets the agent pick up where a prior query left off — context preserved, follow-up question added. The worked example is **company due diligence**: take a target, investigate it across five dimensions in parallel, produce a structured report where every claim has a source trail. DD shows up in PE deal screening, credit underwriting, KYB onboarding, M&A target evaluation, and vendor risk. But the pattern underneath — typed-output research with confidence-driven follow-ups — works for any multi-source research task: newsletter prep, lead generation, comparison shopping, market sizing, candidate background checks. Swap the subagents and you have a different agent. @@ -33,7 +24,7 @@ The agent runs in three phases — Phase 2 fans out a per-competitor subagent, w DD requires this multi-step architecture because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, financial analysis covers the parent. If `competitive-landscape` returns 4 competitors, Phase 2 spawns 4 parallel investigations rather than packing everything into one mega-call. Deep Agents' `write_todos` planner sequences this naturally. -Each research call uses a `core-fast` processor Task API call by default. A typical run completes in **15–25 minutes** including the per-competitor fan-out. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. +Each research call uses a `pro-fast` processor Task API call by default — deeper reasoning per call than `core-fast`, agent-loop friendly latency. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. ## Run it @@ -84,7 +75,7 @@ def research_task(query: str, output_description: str, previous_interaction_id: prior research context. """ runner = ParallelTaskRunTool( - processor="core-fast", + processor="pro-fast", task_output_schema=output_description, ) invoke_args: dict = {"input": query} @@ -159,11 +150,12 @@ agent = create_deep_agent( ## Cost and latency -A typical full run produces 25–40 Task API calls — five Phase-1 tracks (with chained follow-ups on low-confidence findings), plus one fan-out per competitor in Phase 2 (3–5 competitors × ~3 calls each). The Rivian sample in [`sample_output_rivian.md`](sample_output_rivian.md) was generated at the default `core-fast` tier. +A typical full run produces 8–12 Task API calls — five Phase-1 tracks (one packed call each plus a couple of chained follow-ups on low-confidence findings) plus three Phase-2 competitor-analysis instances. The Rivian sample in [`sample_output_rivian.md`](sample_output_rivian.md) was generated at the default `pro-fast` tier. | Tier | Per-run estimate | When to use | |---|---|---| -| `core-fast` per subagent (default) | ~$0.75–1.50, ~15–25 min | Standard DD draft — agent-loop friendly latency | +| `core-fast` | ~$0.75–1.50, ~15–25 min | Faster draft, useful for iterating on prompts | +| `pro-fast` per subagent (default) | depends on processor pricing | Higher-stakes DD with deeper reasoning per call | | `core` per subagent | ~$1–2, ~25–40 min | Deeper non-`-fast` variant of `core` | | Tier-up to `pro-fast` | ~$3–6, ~25–45 min | Higher-stakes DD with richer reasoning per track | | Tier-up to `ultra` | ~$30–80, 90–180 min | Investment-committee-grade output | diff --git a/python-recipes/parallel-deepagents-due-diligence/agent.py b/python-recipes/parallel-deepagents-due-diligence/agent.py index c32d3d1..71ac728 100644 --- a/python-recipes/parallel-deepagents-due-diligence/agent.py +++ b/python-recipes/parallel-deepagents-due-diligence/agent.py @@ -73,7 +73,7 @@ def research_task( consider chaining a follow-up to verify those specific fields. """ runner = ParallelTaskRunTool( - processor="core-fast", + processor="pro-fast", task_output_schema=output_description, ) invoke_args: dict = {"input": query} diff --git a/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb b/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb index 1ea4f67..f26df3f 100644 --- a/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb +++ b/python-recipes/parallel-deepagents-due-diligence/due_diligence.ipynb @@ -73,7 +73,7 @@ " on a prior research session.\n", " \"\"\"\n", " runner = ParallelTaskRunTool(\n", - " processor=\"core-fast\",\n", + " processor=\"pro-fast\",\n", " task_output_schema=output_description,\n", " )\n", " invoke_args: dict = {\"input\": query}\n", @@ -187,13 +187,13 @@ "source": [ "## 4. Run a full DD on Rivian\n", "\n", - "Expect a ~15-25 minute run at the default `core-fast` processor. The agent runs in three phases:\n", + "Expect a ~15-30 minute run at the default `pro-fast` processor. The agent runs in three phases:\n", "\n", "1. **Phase 1** \u2014 `write_todos` plans the diligence; the five subagents dispatch in parallel (corporate, financial, litigation, news, competitive-landscape).\n", "2. **Phase 2 \u2014 competitor fan-out** \u2014 `competitive-landscape` returns 3 named competitors. The orchestrator dispatches a separate `competitor-analysis` subagent for **each** competitor, in parallel. This is the canonical Deep Agents pattern: spawning N instances of the same subagent type for N parallel investigations.\n", "3. **Phase 3** \u2014 orchestrator reads every workpaper (5 Phase-1 files + 3 competitor files), cross-references contradictions, and synthesizes the final memo with a comparative competitor section.\n", "\n", - "Cost at default `core-fast` tier: ~$0.75-1.50 per run (~10-15 Task API calls including chained follow-ups and the 3 fan-out instances)." + "Cost at default `pro-fast` tier: ~depends on processor pricing per run (~10-15 Task API calls including chained follow-ups and the 3 fan-out instances)." ] }, { From 4b7b71dbb6b5cdbfcca29b8a5969aff55582220f Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 16:49:46 -0400 Subject: [PATCH 07/16] =?UTF-8?q?docs(deepagents-due-diligence):=20pro-fas?= =?UTF-8?q?t=20Rivian=20run=20=E2=80=94=20refresh=20metrics=20and=20findin?= =?UTF-8?q?gs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Re-validated end-to-end on Rivian at the new pro-fast default: - 23 minutes wall-clock (vs ~14 min on core-fast — pro-fast trades speed for deeper per-call reasoning) - 9 Task API calls (5 packed Phase-1 + 1 chained follow-up litigation-regulatory + 3 Phase-2 competitor-analysis) - 37KB synthesized memo (vs 33KB on core-fast) - 9 workpapers / ~189KB total persisted on disk Notable quality differences vs the prior core-fast run that the blog now leads with: (1) Quality-of-earnings finding: orchestrator synthesis caught that Rivian's first-ever FY2025 gross profit ($144M) was entirely funded by VW JV software/services revenue — automotive segment lost ~$432M at the gross level. core-fast had the regulatory-credit-dependency angle; pro-fast goes further to the JV-software-vs-auto-margin reality. (2) Open OSHA fatality investigation (Kevin Lancaster, March 5 2026, Normal IL) escalated as part of a documented pattern of prior OSHA serious citations — pro-fast's litigation-regulatory subagent caught this and chained a targeted OSHA-IMIS follow-up; core-fast didn't surface it. (3) Sharper competitor lineup — pro-fast picked Tesla, Ford, Kia (vs core-fast's Tesla, Ford, Mercedes). Kia EV9's 22,017 US sales in 2024 + North American Utility Vehicle of the Year award make it a more direct R1S three-row competitor than Mercedes (which is exiting the segment per its 'technology-open' pivot). Refreshed in the blog: - Validation metrics in the intro (9 calls, 23 min, 37KB memo) - Cost-and-latency call breakdown - All four 'What the agent produced' findings — replaced with new pro-fast-specific quotes drawn from the actual workpapers - Competitor list (Tesla, Ford, Kia) Workpapers committed in reports/workpapers/ for cookbook readers to preview without running the agent themselves. --- .../BLOG_DRAFT.md | 22 +- .../workpapers/competitive-landscape.md | 193 +++---- .../reports/workpapers/competitor-ford.md | 344 ++++++----- .../reports/workpapers/competitor-kia.md | 233 ++++++++ .../reports/workpapers/competitor-mercedes.md | 208 ------- .../reports/workpapers/competitor-tesla.md | 546 ++++++++---------- .../reports/workpapers/corporate-profile.md | 228 ++++---- .../reports/workpapers/financial-health.md | 461 +++++++-------- .../workpapers/litigation-regulatory.md | 426 ++++++++------ .../reports/workpapers/news-reputation.md | 368 ++++++------ .../workpapers/rivian-due-diligence-report.md | 483 ++++++++-------- .../sample_output_rivian.md | 188 +++--- 12 files changed, 1834 insertions(+), 1866 deletions(-) create mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-kia.md delete mode 100644 python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index 2c36e98..db26357 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -19,7 +19,7 @@ This cookbook builds an agent that doesn't make that trade-off. **Deep Agents is Where the canonical Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) pairs the harness with generic web search and produces an open-ended prose report, this recipe is the citation-grade vertical companion — every claim is tied to a Basis-backed source, every uncertain finding is flagged for human verification, and the output is a structured DD memo with named sections. -We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: a [cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk; ~10 Task API calls; wall-clock and full metrics in the [Cost and latency](#cost-and-latency) section below. More on what the agent actually produced further on. +We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: **23 minutes wall-clock, 9 Task API calls, a [37KB cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk** (~189 KB total). More on what the agent actually produced further on. ## Overview @@ -277,27 +277,29 @@ for chunk in agent.stream( ## What the agent produced -The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that they might not. The full output is in [`reports/workpapers/`](reports/workpapers/): eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). +The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. The full output is in [`reports/workpapers/`](reports/workpapers/): eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). -**A structural fragility finding the financial track surfaced on its own.** The [financial-health workpaper](reports/workpapers/financial-health.md) flagged that Rivian's Q4 2025 automotive gross profit had turned negative — driven by a $270M decline in regulatory credit sales. That's the kind of finding a one-shot research summary tends to miss because it requires connecting the headline gross-profit number to the line item that produced it. From the [final memo](reports/workpapers/rivian-due-diligence-report.md): +**The quality-of-earnings finding.** The [financial-health workpaper](reports/workpapers/financial-health.md) and the orchestrator's synthesis caught that Rivian's headline FY2025 milestone — its first-ever annual gross profit, $144M — was entirely funded by VW JV software/services revenue. The automotive segment itself lost ~$432M at the gross level. The [final memo](reports/workpapers/rivian-due-diligence-report.md) flags this directly: -> *Q4 2025 automotive gross profit turned negative primarily due to a $270M decline in regulatory credit sales. This volatility — driven by policy/regulatory decisions outside Rivian's control — makes near-term profitability fragile. Investors should model scenarios with and without regulatory credit income.* +> *Continued negative automotive gross margins masked by JV-derived software revenue.* -**A non-obvious competitive advantage from the Phase-2 fan-out.** The [`competitor-tesla`](reports/workpapers/competitor-tesla.md) subagent pulled out a near-term price-of-purchase advantage you wouldn't get from a generic "Rivian's competitors are Tesla, Ford, GM" paragraph: +That's quality-of-earnings reasoning of the kind a credit committee or KYB reviewer would expect — pulling apart a headline number to see what funded it. Hard to surface from a one-shot research call; surfaces naturally when the financial subagent and the competitive-landscape subagent's revenue-mix data both end up in the orchestrator's synthesis context. -> *"R1T qualifies for IRA EV tax credits (~$7,500); Cybertruck does not — a meaningful price-of-purchase advantage for Rivian in the near term."* +**An open OSHA fatality investigation the litigation track caught.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) flagged a March 5, 2026 worker death at Rivian's Normal, Illinois facility — and the orchestrator's synthesis connected it to a documented pattern of prior OSHA "serious" citations, escalating it as a high-risk item rather than a one-off. From the final memo: -The same fan-out caught Mercedes's "[technology-open](reports/workpapers/competitor-mercedes.md)" pivot — a 23% YoY decline in BEV deliveries plus an explicit slowing of EV commitment, suggesting Mercedes is becoming a less aggressive near-term competitor in the premium-SUV segment that Rivian's R1S sits in. +> *On March 5, 2026, a 61-year-old worker (Kevin Lancaster) was killed after being pinned between a semi-trailer and a loading dock at Rivian's Normal, Illinois warehouse. An OSHA fatality investigation is open; penalties and citation determinations are pending. This event occurs against a backdrop of a pattern of OSHA serious citations at the Normal facility… This is not an isolated incident — it is the most severe escalation of a documented safety compliance concern.* -**A disclosure-adequacy red flag.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) caught that a December 2024 TechCrunch investigation referred to executive harassment lawsuits as "previously unreported" — and connected the dots to a question the orchestrator carried into the final memo: *"The 'previously unreported' characterization raises a disclosure adequacy concern — reviewers should verify completeness in Rivian's SEC filings' legal proceedings section."* That's analyst-grade reasoning across what was found and what should be on file. +That escalation reasoning — "this is part of a pattern, not a one-off" — is exactly what `previous_interaction_id` was used for. The litigation subagent saw the fatality news, surfaced a low-confidence flag on related citation history, then chained a targeted OSHA-IMIS-focused follow-up that pulled the prior citation pattern into the same workpaper. -**Calibrated risk severity with explicit verification asks.** The [final memo](reports/workpapers/rivian-due-diligence-report.md) tiers every risk by severity (🔴 high / 🟡 medium / 🟢 resolved) and includes a "Confidence and Verification Notes" section that numbers ten specific findings with a calibrated confidence rating and the exact source-of-truth a reviewer should chase — *Crews v. Rivian* PACER docket, the 10-K balance sheet for cash-on-hand, Schedule 13D/G for the VW equity stake, the 10-K legal proceedings section for employment lawsuit completeness. Every shaky finding has a named verification path. +**A sharper competitor pick from Phase-2 fan-out.** The [competitive-landscape](reports/workpapers/competitive-landscape.md) subagent picked **Tesla, Ford, and Kia** as the three competitors — a notable choice. Tesla and Ford are the obvious volume comparables; Kia is the non-obvious one. The orchestrator's reasoning, captured in [`competitor-kia.md`](reports/workpapers/competitor-kia.md): the Kia EV9 posted **22,017 US sales in 2024**, won the **2024 North American Utility Vehicle of the Year**, and targets exactly the three-row family-SUV niche Rivian's R1S sits in. The fan-out meant Kia got the same depth-of-investigation as Tesla — corporate snapshot, Hyundai Motor Group ownership structure, the IRA-driven Georgia battery JV — rather than being a one-line mention. + +**Calibrated risk severity with explicit verification asks.** The [final memo](reports/workpapers/rivian-due-diligence-report.md) tiers every risk by severity (🔴 high / 🟡 medium / 🟢 resolved) and ends with a "Key Risk Flags and Areas Requiring Further Investigation" section enumerating ten specific items with named verification paths — *Crews v. Rivian* final hearing on May 15, 2026; the OSHA fatality investigation's expected penalty range and willful-violation potential; the trajectory of automotive gross margin as R2 volumes scale; whether the ~$270M Q4 2025 decline in regulatory credit sales is timing-related or structural. Every shaky finding has a named source-of-truth a human can chase. None of this is magic. It's what you get when the underlying research API returns calibrated confidence per field and the agent has the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. ### Cost and latency -The Rivian run hit roughly 10 Task API calls — five Phase-1 packed calls plus two chained follow-ups (financial-health and litigation-regulatory each chained one when a low-confidence field surfaced) plus three Phase-2 competitor-analysis instances. +The Rivian run hit **9 Task API calls in ~23 minutes** at the default `pro-fast` processor — five Phase-1 packed calls plus one chained follow-up (litigation-regulatory chained when an OSHA fatality surfaced and warranted deeper investigation) plus three Phase-2 competitor-analysis instances. Per-call latency by tier (from [Parallel pricing](https://docs.parallel.ai/getting-started/pricing)): diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md index 344d0f7..fa2bc82 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitive-landscape.md @@ -1,145 +1,112 @@ -# Competitive Landscape: Rivian Automotive +# Rivian Automotive — Competitive Landscape + > **Prepared by:** Market Intelligence Analyst > **Date:** 2025 -> **Scope:** Electric trucks, SUVs, and commercial vans +> **Scope:** U.S. electric vehicle market; primary data from full-year 2024 and Q1 2025 +> **Note:** Three named competitors are listed below for orchestrator fan-out to per-competitor subagents. --- ## Table of Contents -1. [Rivian Market Positioning & Key Differentiators](#rivian-market-positioning--key-differentiators) -2. [Competitors](#competitors) -3. [Market Share & Industry Ranking Signals](#market-share--industry-ranking-signals) -4. [Industry Analyst Summary](#industry-analyst-summary) -5. [Sources](#sources) - ---- - -## Rivian Market Positioning & Key Differentiators - -Rivian Automotive positions itself as a **premium, adventure-focused electric vehicle company** targeting outdoor enthusiasts and sustainability-minded consumers. Unlike legacy OEMs that are electrifying existing combustion-engine lineups, Rivian was built EV-native from the ground up. - -### Core Product Lineup -| Product | Segment | Notes | -|---------|---------|-------| -| **R1T** | Electric pickup truck | Launched 2021; adventure-oriented with gear tunnel, wading capability | -| **R1S** | Electric SUV | One of the largest-range electric SUVs on the market | -| **EDV (Electric Delivery Van)** | Commercial last-mile delivery | Co-designed with Amazon; 100,000-unit order anchor | - -### Key Differentiators & Competitive Moat - -1. **Adventure/Outdoor Lifestyle Brand** — Rivian's brand identity is uniquely tied to outdoor recreation and rugged adventure use, differentiating it from Tesla's tech-luxury positioning and Ford's work-truck heritage. The R1T and R1S are engineered for off-road capability (multi-motor quad setups, air suspension, water fording) that few EV competitors can match. - -2. **Amazon Strategic Partnership** — A landmark 100,000-vehicle commercial delivery van contract with Amazon (the largest commercial EV order at its time) provides Rivian with predictable manufacturing volume, cash flow visibility, and a real-world proving ground for its commercial van platform. Amazon also holds an equity stake in Rivian, deepening the alignment. By mid-2025, Amazon had over 30,000 Rivian EDVs in service, which delivered over 1 billion packages in 2024. - -3. **Vertical Integration & Software Stack** — Rivian owns its technology stack including battery management, over-the-air (OTA) software updates, and vehicle control systems — reducing dependence on third-party suppliers and enabling continuous feature deployment post-sale. - -4. **Purpose-Built EV Architecture** — The "skateboard" platform is EV-native, offering packaging advantages (flat floor, front trunk, gear tunnel) that legacy OEM conversions cannot easily replicate. - -5. **Charging Network (Rivian Adventure Network)** — Rivian operates its own DC fast-charging network focused on adventure-route corridors, complemented by access to adapter networks, reducing range-anxiety for long-haul outdoor trips. - -**Sources:** -- Rivian official site: https://rivian.com -- Amazon EDV story: https://stories.rivian.com/amazon-electric-delivery-vehicle -- Amazon fleet overview: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian -- Rivian EDV (Wikipedia): https://en.wikipedia.org/wiki/Rivian_EDV +1. [Rivian Market Positioning](#1-rivian-market-positioning) +2. [Competitors](#2-competitors) +3. [Industry Market-Share & Ranking Signals](#3-industry-market-share--ranking-signals) +4. [Analyst Summary — Rivian's Competitive Standing](#4-analyst-summary--rivians-competitive-standing) +5. [Sources](#5-sources) --- -## Competitors - -> ⚠️ **Parser Note:** The three competitors below are listed with `###` subheadings for programmatic identification. Each is a direct competitor in the electric truck, SUV, and/or commercial van segments. +## 1. Rivian Market Positioning + +### Segments +Rivian competes across three distinct EV segments: + +| Segment | Product | Primary Use Case | +|---|---|---| +| Electric full-size pickup | R1T | Adventure / off-road / lifestyle | +| Electric 3-row premium SUV | R1S | Family / adventure / premium | +| Commercial electric delivery vans | EDV 500 / EDV 700 / RCV | Last-mile fleet logistics | + +### Key Differentiators +- **Adventure & outdoor brand identity:** Rivian's product design, marketing, and feature set are purpose-built for outdoor and off-road use, distinguishing it from mainstream EV brands. +- **Software-centric, OTA-first platform:** Vehicles receive over-the-air software updates, enabling continuous feature improvement post-purchase, similar to Tesla's model. +- **Direct-to-consumer sales:** Rivian bypasses traditional dealerships, controlling the entire customer experience from order to delivery. +- **Fleet + consumer dual-channel strategy:** The EDV/RCV commercial vans provide a recurring fleet revenue stream alongside consumer retail products, anchored by a large-scale partnership with Amazon. +- **Integrated skateboard platform:** A common underlying vehicle platform reduces engineering costs across consumer and commercial lines. + +### Competitive Strengths +- **R1S momentum:** The R1S posted 26,934 U.S. deliveries in 2024 — Rivian's strongest-selling product and a credible challenger in the premium 3-row EV SUV segment. ([Source](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf)) +- **Amazon partnership at scale:** Amazon's Rivian-built delivery vans delivered more than **1 billion packages** in 2024, validating the EDV platform at commercial scale. ([Source](https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian)) +- **Total 2024 deliveries of 51,579** placed Rivian among the top EV brands by volume in the U.S. (~4% market share). ([Source](https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures)) +- **Brand differentiation** in the adventure/outdoor niche remains difficult for legacy OEMs to replicate quickly. + +### Competitive Weaknesses +- **Pickup volume gap:** R1T recorded only 11,085 U.S. deliveries in 2024, trailing the Tesla Cybertruck (38,965) and Ford F-150 Lightning (33,510) significantly. ([Source](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf)) +- **Manufacturing scale and cost:** Rivian's Normal, Illinois plant is still ramping; Q1 2025 production was 14,611 units but deliveries were only 8,640, reflecting execution and demand-matching challenges. ([Source](https://rivian.com/newsroom/article/rivian-releases-q1-2025-production-and-delivery-figures)) +- **Commercial van competition:** Ford's E-Transit led the U.S. electric van segment in 2024 with 12,610 units vs. Rivian EDV's 13,560 — a narrow margin against a well-resourced incumbent. ([Source](https://www.fromtheroad.ford.com/us/en/articles/2025/ford-pro-fact-sheet-ford-transit-and-e-transit)) +- **2025 guidance reflects moderation:** Full-year 2025 delivery guidance of 46,000–51,000 does not assume substantial volume growth over 2024. +- **Profitability:** Rivian is not yet profitable at scale; continued investment in manufacturing capacity and R&D pressures near-term financials. --- -### Competitor 1: Tesla - -**Company:** Tesla, Inc. -**Website:** https://www.tesla.com +## 2. Competitors -**Description:** Tesla is the world's leading pure-play electric vehicle manufacturer, offering a broad lineup of EVs ranging from mass-market sedans to the Cybertruck pickup and Model X SUV. Tesla commands the largest EV market share in the United States and globally. +> ⚠️ **Orchestrator note:** The three bullets below are the canonical competitor names for fan-out. Each is a **direct competitor** to Rivian, competing in overlapping EV product segments. -**Why a Direct Competitor to Rivian:** -Tesla competes with Rivian on multiple fronts simultaneously: -- The **Cybertruck** directly targets the electric pickup segment where the R1T competes, with overlapping buyers seeking a tech-forward, performance-oriented EV truck. -- The **Model X** SUV competes with the R1S in the premium electric SUV space. -- Tesla's **Supercharger network** and software ecosystem are benchmarks that Rivian must match in charging reliability and OTA software updates. -- Both companies compete for the same premium EV buyer demographic and Wall Street growth capital. -- Tesla's Cybertruck, launched in 2023, represents the most direct head-to-head product rivalry in terms of segment, price tier, and target customer profile. - ---- +- **Tesla** — Competes head-to-head with Rivian via the Cybertruck (vs. R1T in full-size electric pickups, 38,965 U.S. sales in 2024) and Model X (vs. R1S in premium electric SUVs, 19,855 U.S. sales in 2024); Tesla's software-first, direct-sales model also mirrors Rivian's go-to-market approach. ([Source](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf)) -### Competitor 2: Ford Motor Company (F-150 Lightning & E-Transit) +- **Ford** — Competes with Rivian via the F-150 Lightning (vs. R1T in full-size electric pickups, 33,510 U.S. sales in 2024) and the E-Transit (vs. Rivian EDV in commercial electric vans, 12,610 U.S. sales in 2024); Ford's brand recognition and dealer network give it significant distribution advantages. ([Source](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf)) -**Company:** Ford Motor Company -**Website:** https://www.ford.com - -**Description:** Ford is a legacy American automaker that has aggressively electrified its most iconic vehicle lines, including the best-selling F-150 Lightning electric pickup truck and the E-Transit commercial delivery van, leveraging its dominant brand recognition in the truck segment. - -**Why a Direct Competitor to Rivian:** -Ford competes with Rivian in both key segments of its business: -- The **F-150 Lightning** is the most direct rival to the R1T — both are full-size electric pickups targeting American truck buyers, offered at comparable price points. The F-150's brand loyalty and dealer network give Ford a powerful distribution advantage. -- The **E-Transit** electric cargo van competes with Rivian's EDV in the commercial last-mile delivery market, pursuing the same fleet operators and logistics companies. -- Ford's scale, dealer footprint, service network, and manufacturing cost structure represent a significant competitive challenge for Rivian as it seeks to grow unit volumes. -- Ford's existing relationships with fleet buyers (the same customers targeted by the EDV program) mean Rivian must continuously demonstrate cost-per-mile and uptime advantages to win and retain commercial accounts. +- **Kia** — Competes directly with the Rivian R1S via the EV9, a three-row electric SUV that posted 22,017 U.S. sales in 2024 and won the 2024 North American Utility Vehicle of the Year award; the EV9 targets similar family-oriented, premium SUV buyers at a competitive price point. ([Source](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf)) --- -### Competitor 3: Mercedes-Benz (eSprinter & EQ SUV Lineup) +## 3. Industry Market-Share & Ranking Signals -**Company:** Mercedes-Benz Group AG (formerly Daimler) -**Website:** https://www.daimler.com +All figures are U.S. full-year 2024 unless otherwise noted. -**Description:** Mercedes-Benz is a global premium automaker offering a growing portfolio of electric vehicles, including the **eSprinter** electric commercial van and the **EQ series** of premium electric SUVs (EQS SUV, EQB, EQE SUV), competing across both the commercial delivery and premium SUV segments. +| Vehicle / Brand | 2024 U.S. Sales (Units) | U.S. EV Market Share | YoY Change | +|---|---|---|---| +| **Tesla Cybertruck** | 38,965 | 3.6% (of total EV) | N/A (new model) | +| **Ford F-150 Lightning** | 33,510 | 2.9% | +38.7% | +| **Rivian R1S** | 26,934 | 2.0% | +23.4% | +| **Kia EV9** | 22,017 | 1.7% | N/A (new model) | +| **Tesla Model X** | 19,855 | 1.2% | -19.8% | +| **Rivian R1T** | 11,085 | 0.7% | N/M | +| **Ford E-Transit** | 12,610 | 0.9% | +64.4% | +| **Rivian EDV 500/700** | 13,560 | 1.2% | +67.6% | +| **Rivian (total brand)** | **51,579** | **~4%** | **+3.8%** | -**Why a Direct Competitor to Rivian:** -Mercedes-Benz overlaps with Rivian across two distinct competitive vectors: -- The **eSprinter** electric van directly competes with Rivian's EDV in the commercial last-mile delivery market, targeting the same fleet operators, logistics companies, and e-commerce delivery networks that Rivian has pursued through its Amazon partnership. -- The **EQ SUV lineup** (particularly the EQS SUV and EQE SUV) competes in the premium electric SUV space where Rivian's R1S plays, attracting similar high-income buyers seeking a premium, technology-forward electric family vehicle. -- Mercedes-Benz's global brand equity, manufacturing scale, and established fleet sales relationships in Europe and North America make it a formidable competitor as Rivian considers international expansion. -- The eSprinter's European commercial van heritage gives Mercedes-Benz a structural advantage with fleet procurement managers who favor established vendors with broad service networks. +**Key market context:** +- Total U.S. EV sales in 2024 reached approximately **1,301,411 units**, up 7.3% year-over-year, representing **8.1% of total vehicle sales**. ([Source](https://www.coxautoinc.com/insights-hub/q4-2024-ev-sales/)) +- Rivian ranked **4th among EV brands** by total U.S. deliveries in 2024, behind Tesla, Ford, and Chevrolet. ([Source](https://www.caranddriver.com/news/g63396028/bestselling-evs-2024/)) +- Q1 2025: Rivian produced 14,611 vehicles and delivered 8,640; full-year 2025 guidance is **46,000–51,000 deliveries**. ([Source](https://rivian.com/newsroom/article/rivian-releases-q1-2025-production-and-delivery-figures)) --- -## Market Share & Industry Ranking Signals - -- **Rivian's overall EV market share** remains relatively small compared to Tesla and major legacy OEMs (Ford, GM, Mercedes-Benz), reflecting its status as a low-volume premium manufacturer still in the production scaling phase. -- **Amazon EDV Fleet:** Amazon grew its Rivian electric delivery van fleet by approximately **50% in 2025**, with over **30,000 Rivian EDVs** in service by mid-2025 — a significant commercial fleet presence that reinforces Rivian's viability in the commercial segment. -- **Package Delivery Scale:** Amazon's Rivian EDV fleet delivered over **1 billion packages in 2024**, demonstrating operational maturity and real-world duty-cycle reliability. -- **Competitive ranking context:** In the electric pickup segment, Ford's F-150 Lightning and Tesla's Cybertruck compete for volume leadership, with Rivian trailing in unit volume but commanding premium positioning and strong brand loyalty among its customer base. +## 4. Analyst Summary — Rivian's Competitive Standing -**Sources:** -- Amazon fleet size & growth (Electrek): https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ -- Amazon EDV packages delivered: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian -- Rivian market share data (CSIMarket, Q4 2025): https://csimarket.com/stocks/competitionSEG2.php?code=RIVN +Rivian's competitive footing in 2024–2025 is strongest in premium, adventure-oriented SUVs, where the R1S posted 26,934 U.S. sales in 2024, outpacing many luxury EV SUVs and offering credible overlap with Tesla's Model X while competing against newer three-row entries like Kia's EV9. In pickups, Rivian remains a differentiated off-road and performance alternative, but 2024 volumes trail Tesla's Cybertruck and Ford's F-150 Lightning by a wide margin, underscoring the need for scale and cost improvements. In commercial vans, Rivian's EDV/RCV platform is growing and benefits from Amazon's network — surpassing one billion delivered packages in 2024 — though Ford's E-Transit remains a formidable incumbent and near-tied competitor on raw unit sales. Overall, Rivian's brand identity, software-centric approach, and product breadth across trucks, SUVs, and vans support a defensible niche among adventure-focused and sustainability-minded consumers; however, closing the volume gap versus larger incumbents and achieving manufacturing profitability remain the decisive execution challenges heading into 2025 and beyond. --- -## Industry Analyst Summary - -Rivian occupies a compelling but precarious position in the competitive EV landscape. The company's differentiated brand identity — centered on adventure, premium outdoor utility, and purpose-built EV engineering — gives it a loyal and growing customer base that is difficult for legacy OEMs to fully replicate. The landmark 100,000-unit Amazon EDV contract has been transformative, providing manufacturing volume, revenue visibility, and proof of commercial-grade reliability that few EV startups can claim. Amazon's 50% year-over-year fleet growth in 2025 validates Rivian's execution in the commercial segment. However, industry analysts consistently flag meaningful execution risks: Rivian remains a high-cost, low-volume manufacturer relative to Tesla and Ford, faces ongoing pressure on gross margins, and must accelerate production ramp to achieve the economies of scale needed for long-term profitability. The competitive environment is intensifying, with Tesla's Cybertruck gaining traction, Ford leveraging its F-150 brand dominance, and European commercial van makers like Mercedes-Benz pursuing the same fleet opportunities. Analyst consensus acknowledges Rivian's strategic strengths — the Amazon partnership, the EV-native platform, and the adventure brand moat — while underscoring that sustained execution on manufacturing efficiency, charging infrastructure expansion, and software differentiation will be decisive in determining whether Rivian can grow from niche premium player to durable EV market participant. - -**Sources:** -- Amazon EDV story: https://stories.rivian.com/amazon-electric-delivery-vehicle -- Rivian market share vs. competitors: https://csimarket.com/stocks/competitionSEG2.php?code=RIVN -- Amazon fleet growth 2025: https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ -- Amazon EDV overview: https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian - ---- - -## Sources - -| # | Title | URL | -|---|-------|-----| -| 1 | Rivian Official Website | https://rivian.com | -| 2 | Amazon Deliveries, Powered by Rivian | https://stories.rivian.com/amazon-electric-delivery-vehicle | -| 3 | Amazon's Electric Delivery Vans from Rivian — Overview | https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian | -| 4 | Rivian EDV (Wikipedia) | https://en.wikipedia.org/wiki/Rivian_EDV | -| 5 | Amazon grew its Rivian electric delivery van fleet by 50% in 2025 (Electrek) | https://electrek.co/2026/02/18/amazon-grew-its-rivian-electric-delivery-van-fleet-by-50-in-2025/ | -| 6 | RIVN Market Share vs. Competitors, Q4 2025 (CSIMarket) | https://csimarket.com/stocks/competitionSEG2.php?code=RIVN | -| 7 | Tesla Official Website | https://www.tesla.com | -| 8 | Ford Official Website | https://www.ford.com | -| 9 | Mercedes-Benz / Daimler Official Website | https://www.daimler.com | +## 5. Sources + +| # | Source | URL | +|---|---|---| +| 1 | Rivian Q4 2024 Production & Delivery Figures (Rivian Newsroom) | https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures | +| 2 | Rivian Q1 2025 Production & Delivery Figures (Rivian Newsroom) | https://rivian.com/newsroom/article/rivian-releases-q1-2025-production-and-delivery-figures | +| 3 | Q4 2024 Kelley Blue Book EV Sales Report (Cox Automotive) | https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf | +| 4 | Electric Vehicle Sales Jump Higher in Q4 — Full Year 2024 (Cox Automotive) | https://www.coxautoinc.com/insights-hub/q4-2024-ev-sales/ | +| 5 | The 10 Bestselling EVs of 2024 (Car and Driver) | https://www.caranddriver.com/news/g63396028/bestselling-evs-2024/ | +| 6 | Ford Pro Fact Sheet: Ford Transit and E-Transit (Ford) | https://www.fromtheroad.ford.com/us/en/articles/2025/ford-pro-fact-sheet-ford-transit-and-e-transit | +| 7 | Amazon's Electric Delivery Vans from Rivian — 2024 Milestones (Amazon) | https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian | +| 8 | Rivian Fleet — Commercial Vans (Rivian) | https://rivian.com/fleet | +| 9 | Tesla Cybertruck Outselling F-150 Lightning and Rivian R1T (Road & Track) | https://www.roadandtrack.com/news/a61623925/tesla-cybertruck-outselling-ford-f-150-lightning-rivian-r1t-registration-data/ | +| 10 | Kia America 2024 Sales — EV9 North American Utility Vehicle of the Year (Kia Media) | https://www.kiamedia.com/us/en/media/pressreleases/21783/kia-america-begins-2024-with-strong-january-sales | +| 11 | Ford Broadens Electrification Strategy — E-Transit Commercial Leadership (Ford) | https://www.fromtheroad.ford.com/us/en/articles/2024/ford-broadens-electrification-strategy-to-reach-more-customers- | +| 12 | InsideEVs — EV Pickup Registrations Monthly (InsideEVs) | https://insideevs.com/news/726922/tesla-cybertruck-us-registrations-may2024/ | --- -*This document was prepared for orchestrator consumption. The **## Competitors** section contains exactly **3** named competitor entries under `### Competitor 1`, `### Competitor 2`, and `### Competitor 3` subheadings for programmatic parsing.* +*This document was generated for use by the competitive-analysis orchestrator. The three competitors named in Section 2 — **Tesla**, **Ford**, and **Kia** — are the canonical inputs for per-competitor subagent fan-out.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md index 1b9088e..8e252fb 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-ford.md @@ -1,221 +1,271 @@ # Competitor Profile: Ford Motor Company -### Relevant Product Lines: F-150 Lightning & E-Transit -### Prepared Against: Rivian Automotive (R1T / EDV) -### Research Date: 2025 +**Due Diligence Target:** Rivian Automotive +**Prepared:** 2025 | **Classification:** Competitive Intelligence --- ## 1. Corporate Snapshot | Attribute | Detail | -|-----------|--------| +|---|---| | **Headquarters** | Dearborn, Michigan, USA | -| **Public / Private** | Public — NYSE: **F** | | **Founded** | 1903 | -| **Total Headcount** | ~180,000 employees (company-wide) | -| **EV Division** | **Ford Model e** — dedicated all-electric segment with its own senior VP reporting directly to the CEO; handles EV development, production, and commercial strategy | +| **Status / Ticker** | Public — NYSE: **F** | +| **Global Headcount** | ~177,000 (FY2024) | +| **Market Cap** | ~$40–48B (fluctuates; refer to live quote for F) | +| **EV Division** | Ford Model e (separated as reportable segment 2023) | -Ford is the largest U.S.-headquartered incumbent OEM competing directly with Rivian in both the consumer electric pickup and the commercial electric van segments. Its Model e division was carved out specifically to compete in the EV era, though it continues to operate at a substantial loss. +**Sources:** +- Ford 2024 Form 10-K: https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm +- Ford IR / FY2024 Financial Results: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-reports-fourth-quarter-full-year-2024-financial-results --- -## 2. Relevant EV Product Lineup +## 2. Revenue & Growth Signals -### 2a. F-150 Lightning (vs. Rivian R1T) +| Metric | FY2023 | FY2024 | YoY Change | +|---|---|---|---| +| **Total Company Revenue** | ~$176B | **$184.992B** | +5% | +| **Ford Model e Revenue** | $5.897B | **$3.852B** | **−35%** | +| **Ford Model e EBIT** | −$4.701B | **−$5.076B** | worse | +| **Model e Worldwide Wholesales** | ~115k units | **~105k units** | −9% | -| Attribute | F-150 Lightning | Rivian R1T | -|-----------|----------------|------------| -| **Trims** | Pro, XLT, Lariat, Platinum | Dual Standard, Dual Performance, Quad | -| **Starting MSRP** | $42,995 (Pro) | $72,990 (Dual Standard) | -| **Top MSRP** | $90,975 (Platinum) | $117,790 (Quad) | -| **EPA Range** | ~230 mi (Pro / Standard) → ~300 mi (Extended Range) | ~270–410 mi depending on pack | -| **Towing Capacity** | Up to 10,000 lb | Up to 11,000 lb | -| **Payload** | Up to 2,200 lb | Up to 1,760 lb | -| **Drive System** | Dual motor (standard); AWD | Dual or Quad motor; AWD | -| **Positioning** | Work truck / commercial fleet; price-competitive entry | Adventure / lifestyle / premium off-road | +**Key commentary:** Ford Model e's FY2024 revenue declined 35% year-over-year, driven by lower net pricing (aggressive price cuts to stimulate demand) and lower wholesales. Management has pivoted emphasis toward hybrids in the near term while developing next-generation, lower-cost EV platforms. The EV division remains deeply unprofitable, losing over **$5B in EBIT** in FY2024 alone — implying a loss of roughly **$48,000+ per EV sold**. -**Key Differentiation:** The Lightning's base Pro trim starts nearly $30,000 below the cheapest R1T, making it the value leader in electric pickups. Ford targets traditional F-Series loyalists and commercial fleets; Rivian targets outdoor-lifestyle and tech-forward buyers willing to pay a premium for software integration and off-road capability. +**2025 Company-Level Guidance:** Adjusted EBIT $7.0–$8.5B; Capital Spending $8.0–$9.0B; Adjusted Free Cash Flow $3.5–$4.5B. Model e expected to remain loss-making near term. -> **Sources:** -> - Ford F-150 Lightning pricing: https://www.fromtheroad.ford.com/us/en/articles/2024/2024-f-150-lightning-orders-open--flash-model-available-under--7 -> - Rivian R1T pricing: https://rivian.com/r1t | https://www.edmunds.com/rivian/r1t/2025/ | https://www.kbb.com/rivian/r1t/2025/ +**Sources:** +- Ford 2024 10-K (SEC): https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm +- Ford FY2024 PDF Report: https://s205.q4cdn.com/882619693/files/doc_financials/2024/q4/Ford-Motor-Company-2024-10-K-Report.pdf +- Electrive coverage: https://www.electrive.com/2025/02/06/ford-posts-another-big-loss-for-its-ev-division-in-2024/ --- -### 2b. E-Transit (vs. Rivian EDV) +## 3. Funding & Financial Position -| Attribute | Ford E-Transit | Rivian EDV | -|-----------|---------------|------------| -| **Variants** | Cargo van, Cutaway, Chassis Cab | Custom cargo van (multiple sizes) | -| **EPA Range** | ~126 mi (standard) → ~150 mi (extended range) | ~150 mi (estimated) | -| **Payload** | Up to 4,300 lb (configuration-dependent) | Not publicly disclosed | -| **Starting MSRP** | ~$44,000 (base cargo van) | Not publicly listed; est. $100,000–$120,000/unit for fleet contracts | -| **Target Customer** | Delivery fleets, municipalities, service companies | Amazon-exclusive fleet (initial); logistics operators | -| **Channel** | Ford Pro dealer/fleet network | Direct fleet sales only | +| Metric | Value (12/31/2024) | +|---|---| +| **Company Cash** | $28.5B | +| **Total Liquidity** | $46.7B | +| **Automotive Debt (ex-Ford Credit)** | ~$20.7B | +| **FY2024 Total CapEx** | $8.684B (Model e portion: $3.843B) | +| **Credit Rating** | Investment-grade: S&P BBB− / Moody's Baa3, stable outlook | -**Key Differentiation:** The E-Transit is commercially available through Ford's nationwide dealer and Ford Pro fleet network. Rivian's EDV was custom-built around Amazon's specifications and is not broadly commercially available to third-party fleets in the near term, giving Ford a substantial first-mover advantage in accessible electric commercial vans. +**EV Investment Changes:** Ford announced a pause/deferral of up to **$12B** in previously committed EV spending in late 2023. Throughout 2024–2025, it scaled back F-150 Lightning production capacity targets and adjusted timing on its BlueOval SK (battery joint venture with SK On) plant ramp schedule. This represents a meaningful strategic retreat compared to Rivian's fully committed, EV-only capital allocation. -> **Sources:** -> - E-Transit fact sheet: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-pro-fact-sheet-ford-transit-and-e-transit -> - E-Transit Q3 2024 sales: https://fordauthority.com/2024/12/ford-e-transit-sales-numbers-figures-results-third-quarter-2024-q3/ +**Sources:** +- Ford 2024 10-K: https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm +- Ford Q1 2024 Results: https://www.fromtheroad.ford.com/us/en/articles/2024/first-quarter-2024-financial-results --- -## 3. Production Volumes & Delivery Numbers +## 4. Product Positioning vs. Rivian -### F-150 Lightning +### F-150 Lightning vs. Rivian R1T -| Period | Units | -|--------|-------| -| **2023 Deliveries** | ~24,000 (est. based on quarterly Ford EV reports) | -| **2024 Production Capacity** | Originally ~150,000/yr; **cut ~50%** to ~70,000–80,000 units | -| **2024 Planned Output (Revised)** | ~70,000–80,000 units after production reduction | -| **Manufacturing Site** | Rouge Electric Vehicle Center, Dearborn, MI | +Ford's **F-150 Lightning** targets mainstream and fleet pickup buyers by capitalizing on America's best-selling vehicle nameplate, offering familiar F-Series styling, a dealer-based purchase/service model, and Ford Pro ecosystem integration (Pro Power Onboard generator functionality, fleet telematics). The Lightning's extended-range trim achieves up to **320 miles EPA** and up to **10,000 lbs towing**; entry MSRP starts around **$54,780** (2025 MY XLT), with frequent promotional pricing. Rivian's **R1T**, by contrast, targets premium adventure and lifestyle buyers with purpose-built EV architecture, a standard or large/max battery delivering up to **410+ miles EPA** (Max pack), up to **11,000 lbs towing**, tri/quad motor configurations, and a full off-road gear tunnel ecosystem. The R1T carries a higher base price (typically $70,000+ depending on configuration) and is sold exclusively direct-to-consumer. Lightning wins on price accessibility, F-Series brand trust, dealer accessibility, and work-use utility; R1T wins on performance, range ceiling, software sophistication, off-road credentials, and consumer satisfaction scores. -Ford announced in December 2023 / January 2024 that it was slashing Lightning production roughly in half for 2024 due to softer-than-expected consumer EV demand and high inventory levels at dealerships. +### E-Transit vs. Rivian EDV (Commercial Delivery Van) -> **Sources:** -> - https://www.cnbc.com/2023/12/11/f-150-lightning-ford-cuts-2024-production-plans-in-half.html -> - https://www.reuters.com/business/autos-transportation/ford-reduce-f-150-lightning-production-2024-01-19 +Ford's **E-Transit** is broadly available to commercial fleets through Ford Pro dealers, offered in cargo van, cutaway, and chassis cab configurations, with up to **159 miles of range** (MY2026) and competitive total cost of ownership. Its wide dealer/service network makes it the default choice for general commercial fleet buyers. The **Rivian EDV** is a purpose-built last-mile delivery vehicle, designed in partnership with **Amazon** (which contracted for up to **100,000 vans**). The EDV features deeper software/telematics integration, custom exterior design, and Rivian's commercial services platform (RivianFleet); pricing is not publicly transparent. Ford's E-Transit advantage is breadth, serviceability, and financing availability; Rivian's EDV advantage is its exclusive deep integration with Amazon and proprietary delivery optimization software, representing a locked-in, high-volume anchor fleet customer that Ford cannot easily displace. -### E-Transit +**Sources:** +- Ford E-Transit product page: https://www.fordpro.com/en-us/fleet-vehicles/e-transit +- Ford EV range page: https://www.ford.com/electric/ev-range +- Amazon/Rivian EDV: https://www.amazon.com/b?ie=UTF8&node=20452375011 (Amazon Climate Pledge) -| Period | Units | -|--------|-------| -| **Q2 2024 Deliveries** | 828 units | -| **Q3 2024 Deliveries** | 2,955 units (+13% YoY vs. Q3 2023's 2,617 units) | -| **Full-Year 2024 Estimate** | ~3,200–3,500 units (derived from quarterly data) | - -> **Source:** https://fordauthority.com/2024/12/ford-e-transit-sales-numbers-figures-results-third-quarter-2024-q3/ -> | https://insideevs.com/news/725448/ford-us-ev-sales-june2024/ - -### Rivian (Benchmark) +--- -| Period | Units | -|--------|-------| -| **2024 Production** | 49,476 vehicles | -| **2024 Deliveries** | 51,579 vehicles | +## 5. F-150 Lightning Specifics -> **Sources:** -> - https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures -> - https://www.cnbc.com/2025/01/03/rivian-meets-2024-vehicle-production-target.html +| Attribute | Detail | +|---|---| +| **2025 MY MSRP Range** | ~$54,780 (XLT) → $75,567 (Platinum) | +| **Trims** | XLT, Flash, Lariat, Platinum | +| **EPA Range** | Up to ~320 miles (extended battery); ~230–240 miles (standard battery) | +| **Max Towing** | Up to 10,000 lbs (properly equipped) | +| **U.S. Sales — 2023** | **24,165 units** | +| **U.S. Sales — 2024** | **33,510 units** (+39% YoY) | + +**Notes:** Despite volume growth, Ford made multiple downward pricing adjustments to the Lightning in 2023–2024 to stimulate demand, directly compressing Model e margins. Ford also scaled back peak production capacity targets from the Dearborn Truck Plant and relaxed dealer EV certification requirements in 2024 to broaden market access. + +**Sources:** +- Edmunds 2025 Lightning pricing: https://www.edmunds.com/ford/f-150-lightning/ +- Ford 2025 Lightning pricing page: https://www.ford.com/trucks/f150/f150-lightning/2025/pricing-and-incentives +- Ford EV range (EPA figures): https://www.ford.com/electric/ev-range +- Ford 2024 year-end sales: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-u-s--retail-sales-grow-at-double-the-industry-pace-in-2024- +- Lightning towing: https://recharged.com/articles/ford-f150-lightning-towing-capacity-and-range --- -## 4. Pricing Comparison Summary +## 6. E-Transit Specifics + +| Attribute | Detail | +|---|---| +| **MSRP Range** | Varies by configuration; refer to Ford Pro site for current MY2026 pricing | +| **Range (MY2026)** | Up to **159 miles** per charge | +| **Body Styles** | Cargo van, cutaway, chassis cab (multiple wheelbases/roof heights) | +| **Key Fleet Customers** | Broad U.S. commercial fleet base via Ford Pro dealer network | +| **U.S. Sales — 2023** | **7,672 units** | +| **U.S. Sales — 2024** | **12,610 units** (+64% YoY) | -| Vehicle | Base MSRP | Top MSRP | Price Gap vs. Rivian | -|---------|-----------|----------|----------------------| -| **F-150 Lightning Pro** | $42,995 | — | ~$30K *cheaper* than R1T base | -| **F-150 Lightning Platinum** | — | $90,975 | ~$27K *cheaper* than R1T Quad | -| **Rivian R1T (Dual Standard)** | $72,990 | — | — | -| **Rivian R1T (Quad)** | — | $117,790 | — | -| **E-Transit (Cargo Van)** | ~$44,000 | ~$60,000+ | Substantially cheaper than EDV est. | -| **Rivian EDV** | Not disclosed | Not disclosed | Est. $100K–$120K/unit (fleet) | +**Notes:** The E-Transit is the best-selling electric cargo van in the U.S. Its growth (+64% YoY in 2024) signals traction in commercial fleet electrification. Lack of a dedicated factory-backed software/telematics ecosystem comparable to Rivian's is a known competitive gap. -**Takeaway:** Ford holds a pronounced price advantage in both segments. The Lightning Pro undercuts the cheapest R1T by roughly $30,000, making it accessible to budget-conscious fleet buyers and individual consumers who may not qualify for the full $7,500 federal EV tax credit on pricier Rivian trims. +**Sources:** +- Ford Pro E-Transit page: https://www.fordpro.com/en-us/fleet-vehicles/e-transit +- Ford 2026 E-Transit pricing: https://www.ford.com/commercial-trucks/e-transit/2026/pricing-and-incentives +- Ford 2024 year-end sales: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-u-s--retail-sales-grow-at-double-the-industry-pace-in-2024- --- -## 5. Market Share — Electric Trucks & Commercial Vans +## 7. Rivian R1T & EDV Comparison Data (Context) -### Electric Pickup Truck Segment (U.S., 2024 Estimate) +| Metric | Rivian R1T | Rivian EDV | +|---|---|---| +| **MSRP Range** | ~$70,000+ (varies by pack/motor config) | Not publicly listed; Amazon contracted up to 100,000 units | +| **EPA Range** | Up to ~410+ miles (Max pack) | ~150 miles (est.) | +| **Max Towing** | Up to 11,000 lbs | N/A (cargo van) | +| **2023 Deliveries** | ~50,122 (total all models) | Included in total | +| **2024 Deliveries** | ~51,579 (total all models, per Rivian IR) | Included in total | -| OEM / Model | Est. Share | -|-------------|-----------| -| **Ford F-150 Lightning** | ~55–60% | -| **Rivian R1T** | ~15% | -| Chevy Silverado EV / GMC Sierra EV | ~10–15% | -| Tesla Cybertruck | ~10–15% | +**Notes:** Rivian's total delivery volumes are roughly **half** of Ford's BEV-only volume in the U.S. but Rivian operates with a single factory (Normal, IL) versus Ford's multi-plant manufacturing footprint. The Amazon EDV contract of up to 100,000 vans remains a critical competitive moat for Rivian in commercial delivery. -Ford is the volume leader in U.S. electric pickups. While Rivian commands a meaningful premium-segment share, Ford's significantly lower pricing and dealer reach give it dominant overall unit volume. +**Sources:** +- Rivian Q4 2024 production/delivery press release (Rivian IR): https://rivian.com/investors +- Amazon Climate Pledge / EDV order: https://press.aboutamazon.com/news-releases/news-release-details/amazon-orders-100000-electric-delivery-vehicles-rivian -### Electric Commercial Van Segment (U.S., 2024 Estimate) +--- + +## 8. U.S. EV Market Share -| OEM / Model | Est. Share | -|-------------|-----------| -| **Ford E-Transit** | >70% | -| Rivian EDV | <10% (Amazon-exclusive) | -| Mercedes eSprinter | ~10–15% | -| Others | Remainder | +| Metric | 2023 | 2024 | +|---|---|---| +| **Ford BEV Units (U.S.)** | ~72,000–73,000 est. | **97,865** (Mach-E: 51,745 + Lightning: 33,510 + E-Transit: 12,610) | +| **Ford U.S. BEV Market Share** | ~6–7% | **~7–8%** of BEV market | +| **Ford Rank among U.S. BEV Sellers** | #2 (behind Tesla) | **#3** (behind Tesla and GM depending on source) | +| **Total U.S. BEV Market (2024)** | ~1.21M units (2023) | **~1.30M units** | -Ford's E-Transit has first-mover advantage and broad availability. Rivian's EDV is commercially constrained by its Amazon-exclusive arrangement in the near term. +**Notes:** Ford ranked among the top 3 U.S. BEV sellers in 2024, behind Tesla (dominant) and neck-and-neck with GM. Rivian, by comparison, sold ~51,579 total vehicles in 2024 — representing roughly 4% of the U.S. BEV market, concentrated in the premium truck/van segment. -> *Note: Market share figures are estimates derived from publicly reported delivery data; official segment-level data is not published by any single authoritative source.* +**Sources:** +- Ford 2024 sales release: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-u-s--retail-sales-grow-at-double-the-industry-pace-in-2024- +- Cox Automotive Q4 2024 EV tracker: https://www.coxautoinc.com/insights-hub/q4-2024-ev-sales/ +- Teslarati 2024 BEV rankings: https://www.teslarati.com/tesla-evs-automakers-sell-us-2024/ --- -## 6. Financial Strength +## 9. Distribution & Dealer Advantages + +| Attribute | Ford | Rivian | +|---|---|---| +| **U.S. Retail Points** | ~3,000+ franchise dealerships | ~50 service centers / direct delivery | +| **Sales Model** | Franchise dealer (traditional) with Ford EV-certified tier | 100% direct-to-consumer online + service centers | +| **Service Coverage** | Nationwide (all 50 states, most rural areas) | Major metro areas only; rural coverage gap | +| **Parts & Service** | Dealer-supplied, rapid availability | Rivian-owned service centers + mobile service | +| **Fleet Sales Infrastructure** | Ford Pro (dedicated B2B division, financing, telematics, upfitting) | Rivian Commercial (growing, less mature) | -| Metric | Ford (FY 2024) | -|--------|----------------| -| **Total Revenue** | $176.2 billion | -| **Model e Revenue** | $3.9 billion (down 35% YoY) | -| **Model e EBIT Loss** | **$(5.076) billion** | -| **EV Investment Commitment** | $30 billion through 2026 | -| **Cash & Marketable Securities** | ~$30 billion | -| **Credit Rating** | ~A / A+ range (Moody's / S&P) | +**June 2024 Dealer Policy Change:** Ford reversed its earlier requirement that dealers make substantial charging infrastructure investments to qualify for Lightning and Mach-E inventory allocations. The relaxed policy was intended to increase EV availability at more rooftops and reduce friction in the distribution chain. -Ford's EV division is losing money at a rate of over $5 billion per year — roughly **$50,000+ per EV sold** under Model e — while Rivian is also loss-making (~$38,000+ EBIT loss per vehicle in 2023, improving in 2024). However, Ford's consolidated balance sheet, $30B liquidity cushion, and access to capital markets give it enormous staying power that a pure-play like Rivian cannot match. +**Implications vs. Rivian:** Ford's ~3,000 dealerships represent an enormous geographic and service reach advantage over Rivian's sparse direct service footprint, particularly for fleet customers who require uptime guarantees and nationwide service. However, the traditional dealer model also introduces inconsistent EV sales experience, potential margin conflicts, and slower feedback loops compared to Rivian's tightly controlled, software-enabled direct-sales model. -> **Sources:** -> - Ford 2024 10-K: https://s205.q4cdn.com/882619693/files/doc_financials/2024/q4/Ford-Motor-Company-2024-10-K-Report.pdf -> - Ford FY2024 Results: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-reports-fourth-quarter-full-year-2024-financial-results -> - Electrive (Model e losses): https://www.electrive.com/2025/02/06/ford-posts-another-big-loss-for-its-ev-division-in-2024 +**Sources:** +- Reuters on Ford dealer EV policy reversal: https://www.reuters.com/business/autos-transportation/ford-walks-back-ev-dealer-restrictions-boost-sales-2024-06-13 +- Ford Pro fleet division: https://www.fordpro.com --- -## 7. Key Strengths vs. Rivian +## 10. Recent Strategic Moves (2024–2025) -1. **Dealer & Service Network Scale** — 3,000+ Ford dealerships across the U.S. provide unparalleled sales coverage and service accessibility; Rivian operates a small number of owned service centers. -2. **Brand Loyalty in Trucks** — The F-Series has been the best-selling vehicle in America for 47+ consecutive years; Lightning inherits that trust equity. -3. **Fleet Infrastructure & Relationships** — Ford Pro manages relationships with hundreds of thousands of commercial fleet accounts; Rivian is still building its fleet sales organization. -4. **Financing & Leasing Programs** — Ford Motor Credit offers established fleet financing, including tax-advantaged municipal lease programs that Rivian cannot yet replicate at scale. -5. **Manufacturing Scale** — Rouge EV Center can scale output with existing supply-chain relationships; Ford leverages decades of stamping, powertrain, and logistics optimization. -6. **BlueOval™ Charge Network** — Ford's partnership gives Lightning drivers access to a growing DC fast-charging network, and NACS adoption means access to Tesla's Supercharger network (2024). -7. **Government Fleet Contracts** — Ford holds large federal and municipal EV contracts, including a 10,000-unit USPS E-Transit order. -8. **Price Competitiveness** — Lightning Pro's ~$43K entry price is approximately $30K below Rivian's cheapest R1T, with full $7,500 federal EV tax credit eligibility on lower trims. +| Move | Detail | Signal | +|---|---|---| +| **EV Spend Deferral** | Up to $12B in EV investment paused/deferred since late 2023; BlueOval SK battery plant ramp slowed | Demand caution; ICE/hybrid bridge prioritized | +| **Hybrid Pivot** | Management explicitly calling out hybrids as near-term growth driver; record hybrid sales in 2024 | EV-skeptic positioning vs. pure-plays | +| **Lightning Production Pacing** | Dearborn Truck Plant Lightning capacity targets reduced from prior projections | Demand normalization; rightsizing supply | +| **Dealer Policy Relaxation** | EV certification requirements loosened (June 2024) | Prioritizing volume over dealer readiness | +| **Lightning Pricing Cuts** | Multiple downward adjustments in 2023–2024 to remain price-competitive with Tesla Cybertruck and others | Margin compression; competitive pressure | +| **Next-Gen Affordable EV Platform** | Ford announced development of lower-cost EV platforms for future affordable models (unnamed, no firm launch date as of early 2025) | Long-term EV commitment, near-term uncertainty | +| **BlueOval SK Battery JV** | Ongoing SK On partnership for U.S. battery supply; Kentucky plant under phased ramp | Supply chain localization in progress | +| **Software / Connected Services** | Ford expanding FordPass, Pro Intelligence telematics, and OTA update capability; still catching up to EV-native peers | Infrastructure improving but nascent vs. Tesla/Rivian | + +**Sources:** +- Ford 2024 10-K: https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm +- Reuters dealer policy: https://www.reuters.com/business/autos-transportation/ford-walks-back-ev-dealer-restrictions-boost-sales-2024-06-13 +- Ford Q1 2024 financials: https://www.fromtheroad.ford.com/us/en/articles/2024/first-quarter-2024-financial-results --- -## 8. Key Weaknesses vs. Rivian +## 11. Strengths Relative to Rivian -1. **Software & OTA Capability** — Rivian's vehicle OS is purpose-built with continuous over-the-air updates; Ford's infotainment (SYNC 4A) and OTA pipeline lag in sophistication and update frequency. -2. **Per-Unit Economics** — Ford loses an estimated $50,000+ per Model e vehicle sold; while Rivian also loses money, Ford's loss is partly driven by a legacy cost structure not optimized for EV production. -3. **Dealer Friction** — Ford's franchise dealer model creates inconsistent EV buying experiences, service quality variance, and inventory management inefficiencies that Rivian's direct-to-consumer model avoids. -4. **Interior Technology Experience** — Rivian's cabin — large landscape touchscreen, thoughtful storage, Camp Mode, multi-modal speaker system — is widely reviewed as more premium and tech-forward than Lightning's interior. -5. **Off-Road / Adventure Positioning** — Rivian owns the "electric adventure truck" mindset. Lightning's off-road credentials are modest; Ford's off-road heritage sits with the Bronco and Raptor lines, not Lightning. -6. **Battery Vertical Integration** — Rivian is developing in-house battery cell technology (Enduro/LFP pack roadmap). Ford relies on external battery suppliers (SK On, CATL JV), creating supply chain dependencies. -7. **EV-Native DNA** — Rivian is a pure-play EV company; its engineering, culture, and capital allocation are entirely EV-focused. Ford must balance EV investment against a massive ICE portfolio and UAW labor obligations. -8. **Range & Performance at High Trims** — Rivian R1T Quad with max pack reaches ~400+ miles; Lightning's best range is ~300 miles. +1. **F-Series Brand Power:** The F-150 is America's best-selling vehicle for 47+ consecutive years. The Lightning inherits decades of buyer loyalty, fleet relationships, and purchase intent that Rivian must build from scratch. ---- +2. **Scale & Manufacturing Depth:** Ford operates dozens of plants globally with established supply chains, flexible manufacturing (ICE/hybrid/BEV on shared lines), and the ability to absorb EV losses against profitable ICE and Ford Pro cash flows. Rivian operates a single plant. -## 9. Recent Strategic Moves (2024–2025) - -| Move | Detail | Source | -|------|--------|--------| -| **Production Cut (Lightning)** | Cut Lightning production ~50% for 2024 due to softening EV demand; revised target to ~70K–80K units | CNBC (Dec 2023), Reuters (Jan 2024) | -| **Price Adjustments** | Introduced new Lightning pricing tiers in mid-2024 to improve accessibility; additional fleet incentives added | Ford press release, 2024 | -| **Extended Range Pro Trim** | Launched Lightning Pro with Extended Range battery in 2024 to serve commercial buyers needing more range | Ford Pro announcements | -| **NACS Adoption** | Adopted Tesla's North American Charging Standard (NACS) connector for all Ford EVs, giving Lightning access to Tesla Supercharger network | Reuters, 2024 | -| **Model e Restructuring** | Reorganized Model e leadership and engineering resources; created a dedicated senior leadership team to focus purely on EV profitability | Ford press release | -| **$2B Cost-Reduction Program** | Implemented $2 billion in cost cuts across the EV division including workforce reductions in tooling and engineering headcount | Bloomberg, 2024 | -| **USPS Fleet Win** | Secured order for 10,000 E-Transit vans from the U.S. Postal Service — one of the largest single electric commercial fleet orders | Ford press release | -| **Amazon EDV Loss** | Lost next-generation delivery van bid to Rivian's EDV for Amazon's fleet expansion | Industry reports, 2024 | -| **SK On Battery JV** | Explored and advanced partnership with SK On for battery cell supply to support Model e scale-up | Reuters | -| **2025 Production Re-Ramp** | Ford indicated in early 2025 earnings guidance that Lightning production targets would be adjusted upward after 2024 demand stabilization | Ford Q4 2024 Earnings | +3. **Ford Pro Fleet Ecosystem:** Ford Pro is a full-service B2B platform offering fleet financing, upfitting, telematics (Pro Intelligence), maintenance, and EV charging solutions — deeply embedded with government, utility, and enterprise fleet buyers. This represents a structural moat in commercial electrification. + +4. **Nationwide Dealer & Service Network:** ~3,000 U.S. dealerships provide coast-to-coast coverage, same-day service availability, and local financing relationships that Rivian's ~50-location direct network cannot match — critical for fleet buyers requiring SLA-backed uptime. + +5. **Balance Sheet & Liquidity:** Ford carries $46.7B in total liquidity (12/31/2024) vs. Rivian's ~$7–8B cash position (approximate). Ford can sustain multi-year EV losses while funding R&D, unlike Rivian which must carefully manage its cash runway. + +6. **Diversified Revenue Base:** Ford generates $185B in annual revenue across ICE, hybrid, and EV segments globally. Rivian is 100% dependent on EV sales and the Amazon EDV contract — making Ford far more resilient to demand volatility. + +7. **Regulatory & Government Relationships:** Ford has 120+ years of established relationships with federal and state governments, NHTSA, fleet procurement offices (GSA), and international regulators — critical for winning large public-sector EV fleet contracts. --- -## 10. Competitive Positioning Summary +## 12. Weaknesses Relative to Rivian + +1. **Catastrophic EV Unit Economics:** Ford Model e lost **$5.076B in EBIT on ~105,000 wholesale units** in FY2024 — implying a per-vehicle loss exceeding **$48,000**. This is structurally unsustainable and reflects the fundamental mismatch between Ford's legacy cost base and EV economics. Rivian's losses per vehicle are also significant, but its purpose-built platform and manufacturing process are more directly aligned to eventual EV-native cost curves. + +2. **Non-Native EV Architecture:** The F-150 Lightning and E-Transit are derivative EVs adapted from existing ICE platforms, not purpose-built EV architectures. This constrains packaging efficiency, software integration, frunk space, range optimization, and the long-term potential to achieve Tesla/Rivian-style gross margin improvements through platform consolidation. -**Ford is the scale incumbent; Rivian is the premium insurgent.** +3. **Software & OTA Immaturity:** Ford's in-vehicle software (SYNC system, OTA update cadence, app ecosystem) lags significantly behind Rivian and Tesla. Ford has experienced high-profile SYNC and infotainment quality issues. Rivian's software stack is considered among the best in the industry, with frequent OTA updates and a native connected-vehicle architecture. -Ford's F-150 Lightning dominates electric pickup *volume* with its price advantage, distribution depth, and brand heritage — but Rivian wins on technology integration, software experience, and the premium off-road lifestyle segment. In commercial vans, E-Transit has a commanding first-mover lead over Rivian's EDV, which remains tethered to Amazon. +4. **Strategic Ambiguity & Commitment Risk:** Ford's repeated EV investment deferrals, hybrid pivots, dealer policy reversals, and production target reductions signal organizational indecision on EVs. This uncertainty undermines long-term fleet buyer confidence and makes attracting EV-focused engineering talent harder. Rivian, as a pure-play, has singular strategic clarity. + +5. **Consumer Perception Deficit in EV-First Segments:** Younger, tech-forward, and adventure/outdoor buyers — Rivian's core audience — disproportionately distrust legacy OEM EV offerings. The Lightning is perceived as an ICE truck with a battery swap; the R1T is perceived as a purpose-built performance EV. In brand consideration surveys, Rivian consistently scores higher on innovation, software quality, and owner satisfaction among EV-intender audiences. + +6. **Dealer Experience Inconsistency:** Despite attempted EV-certified programs, the franchise dealer model creates variable customer experiences in EV sales and service — from salesperson knowledge gaps to charging infrastructure differences by location. Rivian's direct-sales model provides a uniform, software-managed purchase and ownership experience that is consistently preferred by EV-native consumers. + +7. **Amazon EDV Lock-Out:** Ford has no meaningful path to displace Rivian as Amazon's primary commercial EV delivery partner in the near term. Amazon's contract for up to 100,000 Rivian EDVs, combined with Amazon's equity stake in Rivian, creates a structurally closed competitive door for Ford in the highest-volume last-mile fleet electrification opportunity in North America. + +--- -Ford's greatest competitive threat to Rivian is financial attrition: even losing $5B/year in Model e, Ford can sustain EV investment indefinitely. Rivian must reach profitability before its cash runway is exhausted. However, Rivian's greatest protection is its superior software platform, purpose-built EV architecture, and the loyalty of its premium buyer base — constituencies that Ford's legacy infrastructure struggles to serve well. +## Summary Competitive Assessment + +| Dimension | Ford | Rivian | Edge | +|---|---|---|---| +| Brand Recognition | ★★★★★ | ★★★☆☆ | **Ford** | +| EV Architecture Quality | ★★★☆☆ | ★★★★★ | **Rivian** | +| Software / OTA | ★★★☆☆ | ★★★★★ | **Rivian** | +| Consumer Satisfaction (EV buyers) | ★★★☆☆ | ★★★★★ | **Rivian** | +| U.S. EV Sales Volume | ★★★★★ | ★★★☆☆ | **Ford** | +| Dealer / Service Network | ★★★★★ | ★★☆☆☆ | **Ford** | +| Fleet Relationships & Ford Pro | ★★★★★ | ★★★☆☆ | **Ford** | +| Balance Sheet / Liquidity | ★★★★★ | ★★★☆☆ | **Ford** | +| EV Unit Economics | ★★☆☆☆ | ★★★☆☆ | **Rivian** (less bad) | +| Commercial Van (Amazon EDV) | ★★★☆☆ | ★★★★★ | **Rivian** | +| Strategic Clarity (EV focus) | ★★★☆☆ | ★★★★★ | **Rivian** | +| Pricing Accessibility | ★★★★☆ | ★★★☆☆ | **Ford** | + +**Bottom Line:** Ford is Rivian's most dangerous competitor in the electric pickup segment by volume and brand reach, but its structural disadvantages in EV architecture, software, unit economics, and strategic commitment leave meaningful room for Rivian to defend and grow its premium EV niche — particularly with adventure/lifestyle buyers, the Amazon commercial fleet, and EV-native consumers who actively prefer purpose-built platforms. --- -*Profile prepared for due diligence on Rivian Automotive. All figures reflect publicly available data as of 2024–2025 reporting periods. Market share estimates are derived from publicly reported delivery data and should be treated as approximations.* +*Sources consolidated:* +- *Ford 2024 Form 10-K (SEC EDGAR): https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm* +- *Ford FY2024 Financial Results Press Release: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-reports-fourth-quarter-full-year-2024-financial-results* +- *Ford FY2024 Annual Report PDF: https://s205.q4cdn.com/882619693/files/doc_financials/2024/q4/Ford-Motor-Company-2024-10-K-Report.pdf* +- *Ford 2024 Year-End U.S. Sales: https://www.fromtheroad.ford.com/us/en/articles/2025/ford-u-s--retail-sales-grow-at-double-the-industry-pace-in-2024-* +- *Ford Q4 2024 Sales Release (IR): https://shareholder.ford.com/news/news-details/2025/Ford-U-S--Q4-2024-Sales-Release-2025-_g_lPr_-io/default.aspx* +- *Electrive — Ford Model e Loss FY2024: https://www.electrive.com/2025/02/06/ford-posts-another-big-loss-for-its-ev-division-in-2024/* +- *Edmunds 2025 F-150 Lightning Pricing: https://www.edmunds.com/ford/f-150-lightning/* +- *Ford F-150 Lightning pricing page: https://www.ford.com/trucks/f150/f150-lightning/2025/pricing-and-incentives* +- *Ford EV Range (EPA): https://www.ford.com/electric/ev-range* +- *Ford Pro E-Transit: https://www.fordpro.com/en-us/fleet-vehicles/e-transit* +- *Ford 2026 E-Transit pricing: https://www.ford.com/commercial-trucks/e-transit/2026/pricing-and-incentives* +- *Reuters — Ford dealer EV policy reversal (June 2024): https://www.reuters.com/business/autos-transportation/ford-walks-back-ev-dealer-restrictions-boost-sales-2024-06-13* +- *Cox Automotive Q4 2024 EV Sales: https://www.coxautoinc.com/insights-hub/q4-2024-ev-sales/* +- *Teslarati 2024 U.S. BEV rankings: https://www.teslarati.com/tesla-evs-automakers-sell-us-2024/* +- *Amazon EDV Order Announcement: https://press.aboutamazon.com/news-releases/news-release-details/amazon-orders-100000-electric-delivery-vehicles-rivian* +- *Rivian Investor Relations: https://rivian.com/investors* +- *Recharged — Lightning towing & range: https://recharged.com/articles/ford-f150-lightning-towing-capacity-and-range* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-kia.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-kia.md new file mode 100644 index 0000000..49c08f6 --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-kia.md @@ -0,0 +1,233 @@ +# Competitor Profile: Kia Corporation +### *As a Direct Competitor to Rivian Automotive* +**Prepared:** 2025 | **Research basis:** Kia IR filings, Hyundai Motor Group disclosures, OEM product pages, S&P Global Mobility, KBB, Edmunds, Reuters, Georgia state economic development, and US court records. + +--- + +## 1. Corporate Snapshot + +| Attribute | Detail | +|---|---| +| **Full legal name** | Kia Corporation | +| **Headquarters** | 12, Heolleung-ro, Seocho-gu, Seoul, South Korea | +| **Status** | Public — listed on KRX (ticker: 000270.KS) | +| **Founded** | 1944 | +| **Global headcount** | ~52,000 employees (2024 consolidated) | +| **Parent / controlling shareholder** | Hyundai Motor Company holds **34.53%** of Kia; Kia is the second pillar of Hyundai Motor Group (HMG) | + +Kia operates under the HMG umbrella alongside Hyundai, Genesis, and Hyundai Mobis. The Group's shared engineering, purchasing, and platform strategies give Kia access to far greater R&D and capital resources than its standalone financials imply. + +> **Sources:** Kia IR corporate information — https://worldwide.kia.com/en/company/investor-relations/corporate-information | Kia shareholders page — https://worldwide.kia.com/en/company/sustainability/governance/shareholders | Kia Q3 2024 consolidated filing (Nov 14, 2024) — https://worldwide.kia.com/int/company/ir/financial/audit/download/4e0ffa25-766d-4ac0-8020-90306ac8f4ba/3123956e-5f92-4a8a-8eb5-61d370fb748b | Wikipedia — https://en.wikipedia.org/wiki/Kia + +--- + +## 2. Revenue & Growth Signals + +### Global Revenue & Profitability +- **FY 2024 Q4 revenue:** KRW 27.15 trillion (+11.6% YoY) +- **FY 2024 operating profit:** KRW 12.67 trillion (~USD $8.85 billion) — a record result +- **FY 2024 recurring profit:** KRW 13.50 trillion; **net profit:** KRW 9.78 trillion + +> **Sources:** Kia 2024 annual results press release (Jan 24, 2025) — https://worldwide.kia.com/en/newsroom/view/?id=161160 | Reuters (Jan 24, 2025) — https://www.reuters.com/business/autos-transportation/kia-posts-operating-profit-127-trln-won-2024-2025-01-24/ | Kia financial summary — https://worldwide.kia.com/en/company/investor-relations/financial/summary-statements + +### Global Vehicle Sales +| Year | Units | YoY Growth | +|---|---|---| +| 2023 | 3,087,384 | +6.4% | +| 2024 | ~3.1 million (global record) | ~+0.4% | + +> **Sources:** Kia Q4 2023 results (Jan 25, 2024) — https://worldwide.kia.com/en/newsroom/view/?id=161711 | Kia 2024 global sales record announcement (Jan 3, 2025) — https://www.kianewscenter.com/News/kia-announces-global-sales-record-for-2024-and-shares-2025-targets/s/ef503380-4cb3-4157-bf80-b077a4b45743 + +### EV-Specific Sales & Market Share +- **EV9 US launch year growth:** +1,869% YoY in 2024 — the model drove Kia America's all-time annual sales record +- **US EV sales trend:** Kia EV sales grew **+57% YoY** in January 2024 alone +- **Hyundai + Kia combined US EV market share:** ~**9.3%** of US EV registrations (2024–2025), making HMG the #2 EV group in the US behind Tesla +- **Kia US overall market share:** ~5% of US light-vehicle market (~782,000 units in 2024) + +> **Sources:** Kia America 2024 sales recap (Jan 3, 2025) — https://worldwide.kia.com/en/newsroom/view/?id=161153 | Kia America January 2024 press release (Feb 1, 2024) — https://www.kiamedia.com/us/en/media/pressreleases/21783/kia-america-begins-2024-with-strong-january-sales | S&P Global Mobility via Yahoo Finance (Aug 14, 2025) — https://finance.yahoo.com/news/ev-registrations-rise-moderately-june-111856237.html | Automotive News / S&P Global (Jul 10, 2025) — https://www.facebook.com/AutoNews/posts/1318500763468987/ + +--- + +## 3. Funding & Market Cap Status + +| Entity | Market Cap (Apr 2026) | +|---|---| +| **Hyundai Motor Company** | ~$87 billion USD | +| **Kia Corporation** | ~$39.7 billion USD (KRW 58.99 trillion) | + +### Key Capital Investments in EV & Battery Manufacturing +1. **HMG + SK On battery JV** — Total investment of **$5 billion USD**; JV officially named *Hyundai SK Battery Manufacturing America*; boards of Hyundai Motor, Kia, and Hyundai Mobis all approved. Georgia facility approaching launch operations (March 2026 updates). +2. **HMG + LG Energy Solution (LGES) battery JV in Georgia** — Additional **$2 billion** investment announced August 31, 2023, on top of an initial ~$4.3 billion commitment; factory at Metaplant America in Bryan County, GA. + +Both battery plants in Georgia are designed to supply cells to Hyundai and Kia's US-assembled EVs, enabling IRA compliance and reducing supply-chain exposure. + +> **Sources:** CompaniesMarketCap — https://companiesmarketcap.com/hyundai/marketcap | https://companiesmarketcap.com/kia/marketcap/ | StockAnalysis — https://stockanalysis.com/quote/krx/000270/market-cap/ | Hyundai News HMG-SK On JV (Apr 25, 2023) — https://www.hyundainews.com/releases/3821 | Georgia.org HMG-LGES JV (Aug 31, 2023) — https://georgia.org/press-release/hyundai-motor-group-and-lg-energy-solution-invest-additional-2b-bryan-county | Yonhap News Agency (Mar 27, 2026) — https://en.yna.co.kr/view/AEN20260327002800320 | S&P Global AutoTechInsight (Mar 31, 2026) — https://autotechinsight.spglobal.com/news/5287424/hyundai-motor-group-and-sk-on-name-us-battery-jv-hyundai-sk-battery-manufacturing-america + +--- + +## 4. Product & Positioning: Kia EV9 vs. Rivian R1S + +> Both are premium 3-row electric SUVs. The EV9 and R1S represent the most direct head-to-head matchup between Kia and Rivian in the US market. + +### Side-by-Side Specifications + +| Spec | **Kia EV9** | **Rivian R1S** | +|---|---|---| +| **Starting MSRP** | ~$54,900 (Light RWD) | ~$75,900 (Dual Motor, Standard Pack) | +| **Top trim MSRP** | ~$73,900 (GT-Line AWD) | ~$105,900+ (Quad Motor, Max Pack) | +| **EPA Range** | 230–304 miles (trim-dependent) | 258–410 miles (pack-dependent) | +| **Powertrain options** | RWD single-motor / AWD dual-motor | Dual Motor / Perf. Dual Motor / Quad Motor | +| **0–60 mph** | ~5.0 s (GT-Line AWD) | 2.6 s (Quad); ~4.5 s (Standard Dual) | +| **Max towing capacity** | 5,000 lb | **7,700 lb** | +| **Payload capacity** | N/A (family SUV focus) | 1,973 lb | +| **DC fast-charge architecture** | **800V E-GMP** — up to ~236 kW peak | ~220+ kW peak (400V, NACS rollout) | +| **10–80% charge time** | ~24 min (on 350 kW charger) | ~30–40 min (pack-dependent) | +| **Cargo volume** | Up to ~81.7 cu ft | Competitive; + large frunk (~11 cu ft) | +| **Charging network** | Universal (CCS/NACS compatible) | Rivian Adventure Network + Supercharger access (NACS) | +| **V2L (Vehicle-to-Load)** | ✅ Standard | ✅ Available | +| **Off-road modes** | Terrain modes (AWD) | Dedicated off-road drive modes + Rock Crawl | +| **Camp Mode** | ❌ | ✅ (signature feature) | +| **Frunk / Gear Tunnel** | ❌ | ✅ Frunk + Gear Tunnel (exclusive) | +| **OTA updates** | ✅ | ✅ (software-first approach) | +| **ADAS suite** | Highway Driving Assist 2, LFA 2, FCA | Standard driver-assist suite | +| **Seating** | Up to 7 (3-row) | Up to 7 (optional 3rd row) | + +### Positioning Summary + +**Kia EV9** targets **mainstream premium family buyers** who want a well-equipped 3-row electric SUV with fast charging and broad dealer accessibility at a substantially lower price than luxury EV competitors. It competes on value, practicality, interior quality, and rapid DC charging speed. The brand DNA is "affordable premium." + +**Rivian R1S** targets **affluent adventure/lifestyle buyers** who prioritize extreme capability (off-road, towing, range), unique utility features (frunk, gear tunnel, Camp Mode), and a curated, software-defined ownership experience. Rivian's brand DNA is "adventure tech luxury." The R1S commands a significant price premium over the EV9 — typically **$20,000–$30,000+ more** at comparable configurations. + +> **Sources:** Kia EV9 US product page — https://www.kia.com/us/en/ev9 | Kia EV9 specs/compare — https://www.kia.com/us/en/ev9/specs-compare | Kia EV9 key facts PDF — https://www.kia.com/content/dam/kwcms/kme/se/sv/assets/contents/utility/specifications/ev9/kia-ev9-keyfacts.pdf | Kia EV9 2024 specifications — https://www.kiamedia.com/us/en/models/ev9/2024/specifications | MyKia EV9 page — https://www.mykia.com/EV9.htm | Rivian R1S product page — https://rivian.com/r1s | KBB 2025 Rivian R1S — https://www.kbb.com/rivian/r1s/2025/ | Edmunds 2025 Rivian R1S specs — https://www.edmunds.com/rivian/r1s/2025/features-specs/ | Recharged.com 2025 R1S buying guide — https://recharged.com/articles/2025-rivian-r1s-buying-guide + +--- + +## 5. Dealer Network vs. Rivian's Direct Sales Model + +| Dimension | **Kia** | **Rivian** | +|---|---|---| +| **Sales model** | Traditional franchised dealer network | Direct-to-consumer (online only) | +| **US points of sale/service** | **~788–802 authorized dealers** (2025–2026) | Company-owned service centers + mobile service | +| **Pricing model** | MSRP subject to dealer markup/negotiation | Fixed, non-negotiable online pricing | +| **Customer experience** | Variable by dealer; in-person inventory available | Consistent, app/web-driven; no-haggle | +| **Test drives** | Broadly available at dealers nationwide | Limited to service center locations | +| **Financing & trade-ins** | Through dealer F&I offices (broad options) | Online financing + third-party trade-in tools | +| **Service coverage** | Nationwide; ~800 locations for routine/warranty work | Fewer locations; mobile service partially compensates | +| **Agency/direct model shift** | None in US as of 2025; franchise model maintained | N/A — direct only from inception | + +The dealer network is a **double-edged sword**: Kia's ~800 US dealers provide unmatched geographic accessibility for service, test drives, and same-day purchases — a material advantage for risk-averse or rural buyers. However, the franchise model introduces price variability, inconsistent customer experiences, and slower software update deployment compared to Rivian's tightly controlled direct-sales ecosystem. + +> **Sources:** US District Court for the District of New Hampshire opinion (Mar 31, 2025) confirming ~788 Kia US authorized dealers — https://www.nhd.uscourts.gov/sites/default/files/Opinions/2024/25NH046P.pdf | ScrapeHero Kia US location tracker (Apr 13, 2026) — https://www.scrapehero.com/location-reports/KIA-USA/ + +--- + +## 6. Recent Strategic Moves (2024–2025) + +### US Manufacturing — EV9 Goes Domestic +- **May–June 2024:** Kia commenced EV9 production at its **West Point, Georgia** manufacturing facility — the first saleable EV assembled in Georgia. This positions the EV9 to potentially qualify for IRA consumer tax credits tied to North American assembly requirements. +- **Investment:** Kia committed **>$200 million** and ~200 new jobs to the West Point plant expansion specifically for EV9 production. + +> **Sources:** US Senator Ossoff press release (May 30, 2024) — https://www.ossoff.senate.gov/press-releases/u-s-federal-manufacturing-incentives-working-for-georgia-kia-begins-ev9-production-in-west-point/ | Augusta Chronicle (Jun 3, 2024) — https://www.augustachronicle.com/story/business/2024/06/03/kia-georgia-in-west-point-assembling-2025-ev9-electric-suv/73958460007 | Georgia.org (Jul 12, 2023) — https://georgia.org/press-release/kia-invest-over-200-million-ev9-production-expansion | Gov. Kemp release (Jul 12, 2023) — https://gov.georgia.gov/press-releases/2023-07-12/gov-kemp-kia-invest-over-200-million-ev9-production-expansion + +### Battery Vertical Integration in Georgia +- **HMG + SK On JV** nearing operational launch in Georgia (2026); named *Hyundai SK Battery Manufacturing America*. Supplies cells to Kia/Hyundai US EV assembly. +- **HMG + LGES JV** at Metaplant America, Bryan County, GA; $2B additional investment (Aug 2023) on top of $4.3B initial commitment. + +> **Sources:** Hyundai News (Apr 25, 2023) — https://www.hyundainews.com/releases/3821 | Georgia.org (Aug 31, 2023) — https://georgia.org/press-release/hyundai-motor-group-and-lg-energy-solution-invest-additional-2b-bryan-county | Yonhap (Mar 27, 2026) — https://en.yna.co.kr/view/AEN20260327002800320 + +### EV Sales Records & 2024 Momentum +- Six Kia models set all-time annual US sales records in 2024, headlined by the EV9's **+1,869% YoY growth** in its first full sales year. +- Kia announced 2025 targets aimed at continuing EV volume growth with an expanded E-GMP model lineup globally (EV3, EV5 for non-US markets; EV9 and EV6 for US). + +> **Source:** Kia America 2024 sales recap (Jan 3, 2025) — https://worldwide.kia.com/en/newsroom/view/?id=161153 + +### Software & Connectivity +- EV9 launched with Kia's **Connected Car Navigation Cockpit (ccNC)** infotainment platform with OTA update capability. +- No announced shift away from the dealer franchise model in the US. + +--- + +## 7. Technology Differentiation + +### Kia / HMG Technology Stack + +| Technology | Kia / HMG Capability | +|---|---| +| **Platform** | 800V **E-GMP** (Electric Global Modular Platform) shared across EV6, EV9, Hyundai IONIQ 5/6, Genesis GV60/GV70/GV80 | +| **Peak DC fast-charge speed** | Up to ~236 kW (EV9); 10–80% in ~24 min at 350 kW chargers; also compatible with 400V chargers via motor-based voltage boosting | +| **Bi-directional charging** | **V2L** (Vehicle-to-Load): power external devices/appliances up to 3.6 kW; **V2G** pilot programs underway | +| **Battery chemistry / suppliers** | NCM cells from SK On and LG Energy Solution; HMG pursuing next-gen solid-state battery R&D | +| **OTA updates** | Supported on EV9 and newer E-GMP models | +| **ADAS** | Highway Driving Assist 2 (hands-free on limited sections), Lane Following Assist 2, Forward Collision-Avoidance Assist, Blind-Spot Collision Avoidance | +| **Infotainment** | Kia ccNC with connected navigation; dual large screens | +| **Charging network access** | Universal CCS; NACS adapter availability rolling out; no proprietary network | + +### Rivian Technology Stack (for comparison) + +| Technology | Rivian Capability | +|---|---| +| **Platform** | Proprietary **R1 platform** (skateboard architecture, purpose-built for adventure/truck/SUV) | +| **Adventure Network** | Proprietary DC fast-charge network (SAE CCS + NACS) at adventure-oriented locations; expanding nationally | +| **Software** | Software-defined vehicle; continuous OTA updates; deep app integration; Camp Mode ecosystem | +| **Off-road capability** | Dedicated Kneel, Rock Crawl, Sport, and other drive modes; 14.9" ground clearance (R1S); air suspension | +| **Unique utility** | Front trunk (~11 cu ft), Gear Tunnel (pass-through lockable storage) — Rivian exclusives | +| **Powertrain** | Up to Quad-Motor AWD (one motor per wheel); best-in-class for EV off-road torque vectoring | +| **V2L / V2H** | Available | +| **OTA** | OTA-first from Day 1; frequent feature releases | + +### Key Technology Takeaway +Kia's **800V E-GMP gives it the faster DC charging architecture** — 10–80% in ~24 min on 350 kW hardware is best-in-class and superior to the R1S's ~30–40 min. However, Rivian's **Quad-Motor platform, off-road software, frunk/gear tunnel utility, and proprietary Adventure Network** represent genuine differentiation that Kia cannot replicate within its current platform scope. Kia's technology is broad and solid; Rivian's is narrow and deeply specialized for its target customer. + +> **Sources:** Kia EV9 key facts PDF — https://www.kia.com/content/dam/kwcms/kme/se/sv/assets/contents/utility/specifications/ev9/kia-ev9-keyfacts.pdf | Kia EV9 specs — https://www.kia.com/us/en/ev9/specs-compare | Rivian R1S — https://rivian.com/r1s | KBB 2025 R1S — https://www.kbb.com/rivian/r1s/2025/ | Edmunds 2025 R1S — https://www.edmunds.com/rivian/r1s/2025/features-specs/ + +--- + +## 8. Strengths Relative to Rivian + +1. **Substantially lower price point.** The EV9 starts ~$20,000–$30,000 below a comparably configured R1S, making it accessible to a far wider buyer pool and less susceptible to luxury-demand cyclicality. + +2. **Massive financial backing.** Kia is part of HMG, with Hyundai Motor Company alone carrying a ~$87B market cap. Kia's own FY2024 operating profit of ~$8.85B dwarfs Rivian's accumulated losses. Kia can sustain years of EV investment and price competition without existential risk. + +3. **800V fast-charging superiority.** The E-GMP 800V architecture delivers a ~24-min 10–80% charge (at 350 kW hardware), outperforming the R1S's typical 30–40 min charge window — a real-world daily-use advantage. + +4. **~800 US dealer locations.** Kia's franchised dealer network provides near-ubiquitous sales coverage, trade-in options, and service access across all US states and metros — particularly advantageous in non-coastal markets underserved by Rivian's service footprint. + +5. **US manufacturing with IRA eligibility pathway.** EV9 production commenced in West Point, Georgia in mid-2024, positioning Kia for potential IRA clean vehicle tax credit qualification as domestic battery sourcing ramps up through HMG's Georgia JVs with SK On and LGES. + +6. **Proven brand trust and volume scale.** Kia sold ~782,000 vehicles in the US in 2024 versus Rivian's ~51,000 total vehicles globally. Brand recognition, J.D. Power quality rankings, and residual value stability are established assets. + +7. **V2L versatility.** The EV9's standard V2L output (up to 3.6 kW) and V2G pilots offer energy versatility that overlaps with Rivian's Camp Mode utility, though with less lifestyle marketing around it. + +--- + +## 9. Weaknesses Relative to Rivian + +1. **No adventure/off-road brand identity.** Rivian's entire brand is built around outdoor adventure and extreme capability. Kia is perceived as a value-to-mainstream-premium family automaker — a brand positioning that does not resonate with the off-road and overlanding communities that are Rivian's core buyers. + +2. **Lower towing capacity.** EV9 maximum tow rating of **5,000 lb** is materially behind the R1S's **7,700 lb**, disqualifying the EV9 for many trailer, boat, or fifth-wheel use cases that R1S owners depend on. + +3. **Significantly lower performance ceiling.** The EV9's ~5.0 s 0–60 mph time compares poorly to the R1S Quad Motor's **2.6 s** — a meaningful differentiator in the performance-oriented premium EV segment. + +4. **Shorter maximum range.** Even the best EV9 trim tops out at ~304 miles EPA-estimated versus the R1S Max Pack's ~410 miles — a 35% range disadvantage that matters for long road trips and adventure use cases. + +5. **No frunk or gear tunnel analog.** Rivian's front trunk and pass-through lockable Gear Tunnel are patented, practical features that create genuine utility differentiation. The EV9 offers no comparable storage innovation. + +6. **No proprietary charging network.** Rivian's Adventure Network places DCFC chargers at adventure-oriented destinations (national parks, trailheads, ski resorts), directly reinforcing its brand proposition. Kia has no proprietary network and depends entirely on third-party infrastructure. + +7. **Franchise dealer model friction.** While the dealer network provides coverage, it introduces price variability, inconsistent sales experiences, and slower software feature delivery relative to Rivian's tightly controlled direct-to-consumer model. For tech-forward EV buyers, this is a meaningful experiential downgrade. + +8. **Software-defined vehicle gap.** Rivian is architecturally a software company that manufactures vehicles. Kia's software stack (ccNC, OTA) is competent but does not carry the same "living product" reputation or depth of continuous iteration that Rivian's platform does. + +9. **Camp Mode / adventure ecosystem absent.** Rivian's Camp Mode (climate control, quiet operation, entertainment while parked), accessory ecosystem (roof tents, bike racks), and gear tunnel accessories form a cohesive adventure lifestyle product that Kia has no equivalent to. + +--- + +## 10. Summary Assessment + +Kia poses a **real but indirect competitive threat** to Rivian in the 3-row electric SUV segment. The EV9 competes on **price, fast charging, and family utility** — it will win buyers who want a capable 3-row EV without paying Rivian's premium. However, Kia cannot credibly contest Rivian's **adventure/lifestyle positioning, extreme performance, towing capability, or software-first ownership experience**. + +The more significant strategic threat Kia (and HMG broadly) poses to Rivian is at the **market share and financial endurance level**: Kia's financial firepower, manufacturing scale, dealer reach, and IRA manufacturing compliance put sustained downward pressure on EV pricing and erode Rivian's addressable market at lower price points. If Rivian cannot maintain strong brand premium and software differentiation, the EV9's value proposition becomes an increasingly attractive alternative for mainstream premium buyers who might otherwise stretch to an R1S. + +--- + +*All data as of April–May 2025 unless otherwise noted. Financial figures in USD unless stated in KRW.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md deleted file mode 100644 index 361d0bd..0000000 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-mercedes.md +++ /dev/null @@ -1,208 +0,0 @@ -# Competitor Profile: Mercedes-Benz Group AG -### Relevant Product Lines: eSprinter Electric Van · EQS SUV · EQE SUV -### DD Context: Direct Competitor to Rivian Automotive (EDV, R1S) -**Prepared:** 2025 | **Research Budget:** 1 query - ---- - -## 1. Corporate Snapshot - -| Attribute | Detail | -|---|---| -| **Legal Name** | Mercedes-Benz Group AG | -| **Headquarters** | Stuttgart, Baden-Württemberg, Germany | -| **Status** | Public — Xetra: **MBG** | -| **Founded** | 1926 | -| **Employees (2024)** | ~167,000 worldwide | -| **Total 2024 Unit Sales** | 2,389,000 cars and vans | -| **Total BEV Deliveries (2024)** | 185,100 units (−23 % YoY) | - -> **Sources:** -> - Annual Report 2024: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ -> - 2024 Sales Release: https://group.mercedes-benz.com/company/news/sales-2024.html -> - BEV delivery decline: https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ - ---- - -## 2. Financial Strength - -| Metric | 2024 | 2023 | -|---|---|---| -| **Group Revenue** | €145.6 bn | €152.4 bn | -| **EBIT** | €13.6 bn | ~€19.7 bn (est.) | -| **Free Cash Flow (Industrial)** | €9.2 bn | — | -| **R&D Spend** | Reported in annual report (not broken out in public excerpts) | — | -| **EV-Specific Revenue** | Not separately disclosed | — | - -**Assessment vs. Rivian:** Mercedes-Benz operates with an enormous revenue and cash-flow base relative to Rivian, which posted ~$4.97 bn in 2024 revenue and remains FCF-negative. Mercedes can absorb sustained EV investment losses far more comfortably than Rivian, though its margins are under pressure from declining BEV volumes. - -> **Source:** Mercedes-Benz Annual Report 2024 PDF: -> https://group.mercedes-benz.com/documents/investors/reports/annual-report/mercedes-benz/mercedes-benz-annual-report-2024-incl-combined-management-report-mbg-ag.pdf - ---- - -## 3. Relevant EV Product Lineup - -### 3a. eSprinter — Electric Commercial Van - -| Attribute | Detail | -|---|---| -| **US Launch Date** | February 5, 2024 | -| **Primary Variant (US)** | 170″ wheelbase, high-roof cargo van | -| **Battery (Usable)** | 113 kWh | -| **Payload Capacity** | Up to ~3,516 lb (varies by configuration) | -| **Target Customers** | Commercial fleets, last-mile delivery operators | -| **Key Competitors** | Rivian EDV (Amazon fleet), Ford E-Transit, Stellantis ProMaster EV | -| **US Pricing** | Confirmed on MBUSA/mbvans.com; precise MSRP not publicly listed (configured to order — estimated $55,000–$80,000+ depending on upfitting) | -| **Production / Orders** | Specific unit volumes not publicly disclosed; Charleston, SC plant produces gas Sprinter; eSprinter sourced from European plants | - -**Rivian EDV Comparison:** Rivian's EDV (Electric Delivery Van) is purpose-built exclusively for fleet/commercial use and is currently locked in an exclusivity arrangement with Amazon (100,000-unit order). The eSprinter is a converted ICE platform sold through traditional dealer channels, giving it broader near-term availability but a less optimized EV architecture. The eSprinter's 113 kWh battery is a competitive spec, but it carries the weight and packaging constraints of a legacy van platform. - -> **Sources:** -> - eSprinter press launch: https://media.mbusa.com/releases/release-f891765aa8baea491d32e240d746cdaa-first-fully-electric-van-from-mercedes-benz-the-all-new-esprinter-hits-the-road -> - eSprinter product page: https://www.mbvans.com/en/esprinter - ---- - -### 3b. EQS SUV & EQE SUV — Premium Electric SUVs - -| Model | Base MSRP (US) | Battery | EPA Range (est.) | Key Trim / Notes | -|---|---|---|---|---| -| **EQE 320 4MATIC SUV** | **$67,450** | 90.5 kWh | ~260–280 mi (est.) | Mid-size, 3-row available | -| **EQS 580 4MATIC SUV** | ~$105,000–$130,000 | 108.4 kWh | ~285 mi (EPA est.) | Full-size luxury, 7-seat | -| **EQS AMG 53 4MATIC+ SUV** | ~$130,000+ | 108.4 kWh | ~250 mi | Performance flagship | - -**2024 Updates:** All 2024 EQS and EQE models received standard heat pumps for improved cold-weather efficiency and AWD-disconnect on dual-motor variants to boost highway range — directly addressing longstanding cold-climate criticisms. - -> **Sources:** -> - EQE SUV product page: https://www.mbusa.com/en/vehicles/class/eqe/suv -> - 2024 EQS/EQE heat pump update: https://www.greencarreports.com/news/1141872_2024-mercedes-eqs-eqe-suv-sedan-heat-pump-more-range - ---- - -## 4. Production Volumes & Delivery Numbers - -| Metric | Figure | Notes | -|---|---|---| -| **Total BEVs Delivered (2024)** | **185,100** | Cars segment only; −23% vs. 2023 | -| **Total Vehicles Sold (2024)** | **2,389,000** | Cars + vans | -| **eSprinter Units** | Not publicly disclosed | Ramp ongoing post-Feb 2024 US launch | -| **EQS SUV / EQE SUV Units** | Not broken out separately | Included in the 185,100 BEV total | - -**Context:** The 23% BEV decline is a significant signal — Mercedes cited softening consumer demand and a deliberate "technology-open" strategy shift, suggesting the company is pacing EV investment to match market absorption rather than pushing volumes aggressively. This contrasts with Rivian, whose 2024 deliveries of ~51,000 units showed sequential production improvement and which is wholly EV-native. - -> **Source:** https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ - ---- - -## 5. Pricing Comparison vs. Rivian - -### Commercial Van: eSprinter vs. Rivian EDV - -| | Mercedes eSprinter | Rivian EDV | -|---|---|---| -| **Platform** | Adapted ICE (Sprinter) | Purpose-built EV | -| **Battery** | 113 kWh | 135–150 kWh est. | -| **US Price (est.)** | ~$55,000–$80,000+ (order-configured) | Not publicly listed (fleet/Amazon only) | -| **Channel** | Commercial dealer network | Direct fleet sales only | -| **Availability** | Open market | Restricted (Amazon exclusive through ~2025+) | - -### Premium SUV: EQS/EQE SUV vs. Rivian R1S - -| | Mercedes EQE SUV | Mercedes EQS SUV | Rivian R1S | -|---|---|---|---| -| **Base MSRP** | $67,450 | ~$105,000 | ~$75,900 (Launch Edition ~$98,000+) | -| **Range (EPA)** | ~260–280 mi | ~285 mi | ~321 mi (Max Pack) | -| **Off-Road Capability** | Limited | Limited | Purpose-built (air suspension, wading) | -| **Towing** | ~3,500 lb | ~7,700 lb | 7,700 lb | -| **Positioning** | Urban luxury | Ultra-luxury | Adventure/utility luxury | - -**Key Pricing Insight:** The EQE SUV at $67,450 undercuts the Rivian R1S entry point modestly, appealing to luxury buyers who prioritize interior refinement over off-road utility. The EQS SUV occupies a higher price tier but with less off-road appeal, overlapping Rivian's more capable R1S Adventure trims. - ---- - -## 6. Market Share - -### Electric Commercial Vans -- Mercedes-Benz is the **global van market leader** overall but faces strong US competition from the Ford E-Transit (the best-selling electric van in the US) and Stellantis ProMaster EV. -- Rivian EDV currently serves a **single customer (Amazon)** but has an enormous guaranteed order (100,000 units), giving it a dominant share of purpose-built US last-mile electric delivery vans. -- The eSprinter competes for **open-market fleet accounts** (municipalities, logistics firms, utilities) where Rivian cannot yet sell. -- Precise US electric van market share data is not publicly disaggregated; Mercedes holds a stronger position in Europe. - -### Premium Electric SUVs -- Mercedes-Benz competes with BMW iX, Audi e-tron/Q8 e-tron, and Rivian R1S in the premium/luxury EV SUV segment. -- Rivian R1S consistently leads in **EV adventure SUV** consideration and holds strong brand loyalty among outdoor/lifestyle buyers — a niche Mercedes does not specifically target. -- Mercedes's overall 185,100 BEVs in 2024 dwarfs Rivian's ~51,000 deliveries in unit volume, but Mercedes's lineup is spread across sedans, SUVs, and vans rather than concentrated in a single category. - ---- - -## 7. Key Strengths vs. Rivian - -| Strength | Detail | -|---|---| -| **Brand Equity & Heritage** | 99-year-old global luxury brand with unmatched recognition; Rivian is <10 years old | -| **Manufacturing Scale** | 2.4M vehicles/year across dozens of global plants; Rivian operates one plant (Normal, IL) | -| **Dealer & Service Network** | Thousands of authorized dealers and service centers globally; Rivian has limited service footprint | -| **Fleet Relationships** | Decades-long relationships with corporate and municipal fleet operators for Sprinter; Rivian's fleet business is nascent | -| **Financial Firepower** | €9.2 bn FCF vs. Rivian's negative FCF; Mercedes can sustain R&D and price-competitive positioning longer | -| **EV Product Breadth** | Full EQ lineup (sedans, SUVs, vans, AMG variants); Rivian offers only R1T, R1S, EDV | -| **Regulatory Compliance Credits** | Global regulatory footprint eases compliance costs; Rivian focused only on US | -| **Cold-Weather Tech** | 2024 heat pump standard on all EQ models directly addresses range anxiety in cold climates | - ---- - -## 8. Key Weaknesses vs. Rivian - -| Weakness | Detail | -|---|---| -| **Legacy Platform Dependency** | eSprinter is a converted ICE van, not a ground-up EV; penalizes efficiency, range, and total cost of ownership vs. Rivian EDV's purpose-built architecture | -| **Software & OTA Capability** | Mercedes's MBUX infotainment and vehicle software are competitive but trail Tesla and Rivian's EV-native software-defined vehicle approach | -| **Off-Road / Adventure DNA** | EQS/EQE SUVs are urban luxury vehicles with minimal off-road capability; Rivian R1S is a segment leader for outdoor/adventure buyers | -| **US eSprinter Penetration** | Late US launch (Feb 2024), limited local production, and dealer-dependent sales model make rapid US market share gains challenging | -| **BEV Volume Decline** | −23% BEV deliveries in 2024 signals either weakening consumer demand for Mercedes EVs or a deliberate retreat; either interpretation is concerning relative to a pure-play EV company | -| **Charging Network** | No proprietary fast-charge network in North America (relies on partner networks); Rivian has its own Adventure Network of DC fast chargers | -| **EV Architecture Transition** | Mercedes has signaled a "technology-open" hybrid/EV stance, potentially delaying full EV platform investment; Rivian is 100% EV with next-gen R2 platform in development | -| **Customer Profile Mismatch** | Mercedes's EV buyers skew toward urban luxury; Rivian's buyers are lifestyle-adventure oriented — Mercedes cannot easily cross-sell into Rivian's core use case | - ---- - -## 9. Recent Strategic Moves (2024–2025) - -| Move | Detail | -|---|---| -| **Battery Recycling Plant — Kuppenheim, Germany** | Investment in closed-loop battery recycling facility; sustainability-focused, supports regulatory compliance and material cost control | -| **"Technology-Open" Strategy Pivot** | Mercedes publicly pulled back from an all-EV-by-2030 commitment, signaling continued investment in ICE and hybrid models alongside BEV; reduces EV growth urgency | -| **eSprinter US Commercial Launch (Feb 2024)** | First US deliveries began; targeting logistics, utility, and municipal fleet customers through the existing Sprinter dealer/upfitter network | -| **2024 EQ Model Year Updates** | Standard heat pumps and AWD-disconnect across EQS and EQE lineup; improves real-world cold-weather range competitiveness | -| **Fleet Contract Activity** | Ongoing extension of fleet agreements for Sprinter platform (gas and electric) with European postal and logistics operators; US fleet expansion underway | -| **Software Platform Development** | Continued development of MB.OS (in-house vehicle operating system) targeting mid-decade rollout; critical for reducing reliance on Bosch/Tier 1 software suppliers | -| **Partnership / JV Announcements** | Various charging and infrastructure partnerships announced in 2024 (specific partners detailed in annual report press releases) | - ---- - -## 10. Competitive Positioning Summary - -Mercedes-Benz and Rivian occupy **overlapping but not identical competitive spaces**. In commercial electric vans, they are direct competitors for fleet accounts — but Rivian's EDV is a purer, more purpose-optimized product, while the eSprinter offers the trust of the Sprinter brand and the reach of an established dealer/upfitter network. In premium electric SUVs, the EQS/EQE SUVs compete on luxury credentials but fundamentally miss Rivian's adventure-utility positioning. - -Mercedes's **greatest competitive advantage** is staying power: a century-old brand, global manufacturing, and nearly €10 bn in annual free cash flow gives it the resources to outlast most EV startups. Its **greatest vulnerability** is strategic ambiguity — a public retreat from EV-only commitments risks ceding the narrative and talent war to pure-play EV firms like Rivian, Tesla, and emerging Chinese competitors. - -For Rivian's due diligence purposes, Mercedes is a **credible but not existential threat** in the near term: the eSprinter will compete for fleet accounts as Amazon exclusivity fades, and the EQ SUV lineup will draw some buyers who might otherwise consider the R1S. However, Mercedes does not meaningfully threaten Rivian's core adventure-SUV brand identity or its software-first EV architecture positioning. - ---- - -## 11. Key Source URLs - -| Claim | Source | -|---|---| -| 2024 BEV deliveries (185,100; −23% YoY) | https://www.electrive.com/2026/01/12/mercedes-delivers-fewer-battery-electric-cars-over-2025/ | -| 2024 total unit sales (2,389,000) | https://group.mercedes-benz.com/company/news/sales-2024.html | -| 2024 Revenue (€145.6 bn) & FCF (€9.2 bn) | https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ | -| Annual Report 2024 (full PDF) | https://group.mercedes-benz.com/documents/investors/reports/annual-report/mercedes-benz/mercedes-benz-annual-report-2024-incl-combined-management-report-mbg-ag.pdf | -| eSprinter US launch press release (Feb 5, 2024) | https://media.mbusa.com/releases/release-f891765aa8baea491d32e240d746cdaa-first-fully-electric-van-from-mercedes-benz-the-all-new-esprinter-hits-the-road | -| eSprinter product page | https://www.mbvans.com/en/esprinter | -| EQE SUV pricing ($67,450 MSRP) | https://www.mbusa.com/en/vehicles/class/eqe/suv | -| 2024 EQS/EQE heat pump update | https://www.greencarreports.com/news/1141872_2024-mercedes-eqs-eqe-suv-sedan-heat-pump-more-range | - ---- - -*Profile compiled for Rivian Automotive due diligence. All figures in USD unless otherwise noted. Currency conversions approximate at prevailing 2024 EUR/USD rates.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md index 0ddf8d0..0783c20 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/competitor-tesla.md @@ -1,381 +1,295 @@ # Competitor Profile: Tesla, Inc. -### (Cybertruck & Model X product lines — direct competitor to Rivian R1T & R1S) -**Prepared:** 2025 | **DD Target:** Rivian Automotive, Inc. +**DD Target:** Rivian Automotive | **Prepared:** 2025 | **Classification:** Competitive Intelligence --- ## 1. Corporate Snapshot | Attribute | Detail | -|---|---| -| **Full Legal Name** | Tesla, Inc. | -| **Headquarters** | 1 Tesla Road, Austin, TX 78725 (relocated from Palo Alto, CA in 2021) | -| **Stock Exchange / Ticker** | NASDAQ: TSLA | -| **Founded** | July 2003 | -| **CEO** | Elon Musk | -| **Employees (FY 2024)** | ~121,000 (down from ~140,473 at end of 2023 following ~10% headcount reduction in April 2024) | -| **Market Cap (approx.)** | ~$800–900 billion (range observed Q1 2025; peaked >$1.3T post-election Nov 2024) | -| **Business Lines** | Automotive (vehicles + powertrain); Energy Generation & Storage; Services & Other (Supercharging, FSD licensing, insurance) | - -**Sources:** -- Tesla 2024 Annual Report (10-K), SEC EDGAR, filed Jan 29, 2025: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm -- Tesla headcount reduction announcement: https://electrek.co/2024/04/15/tesla-is-laying-off-more-than-10-of-its-global-workforce/ -- Bloomberg / Yahoo Finance market cap data (Q1 2025) +|-----------|--------| +| **Headquarters** | Austin, Texas, USA | +| **Status** | Public — NASDAQ: TSLA | +| **Founded** | 2003 | +| **Headcount** | ~140,000 (2023 peak; reduced following 2024 layoffs of ~10%+) | +| **Market Cap** | ~$1.45 trillion (as of mid-2025, live figure) | +| **FY2024 Revenue** | $97.69 billion | +| **FY2024 Net Income** | $7.09 billion (GAAP) | + +> **Sources:** +> - Tesla 2024 10-K: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +> - Yahoo Finance (market cap): https://finance.yahoo.com/quote/TSLA --- -## 2. Relevant EV Product Lineup - -### 2a. Tesla Cybertruck - -The Cybertruck is Tesla's direct competitor to the **Rivian R1T** in the electric pickup truck segment. Deliveries began December 1, 2023 at an event at Gigafactory Texas. +## 2. Revenue & Growth Signals -| Trim | Starting MSRP (2025) | Range (EPA est.) | Towing Capacity | Payload | 0–60 mph | -|---|---|---|---|---|---| -| **RWD** (single motor) | $72,235 | ~350 mi | 11,000 lb | 2,500 lb | ~6.0 sec | -| **AWD** (dual motor) | $89,990 | ~340 mi | 11,000 lb | 2,500 lb | ~4.1 sec | -| **Cyberbeast** (tri-motor) | $119,990 | ~320 mi | 11,000 lb | 2,500 lb | 2.6 sec | -| **Foundation Series** (AWD/Cyberbeast) | $99,990 / $129,990 | Same as above | Same | Same | Same | +- **FY2024 revenue:** $97.69B (+$917M / +~1% YoY vs. FY2023's $96.77B) — near-flat growth reflects pricing pressure. +- **FY2023 revenue:** $96.77B; **net income:** $14.97B (inflated by $6.54B valuation allowance release on deferred tax assets in Q4 2023). +- **FY2024 net income:** $7.09B — down $7.91B YoY, primarily due to the one-time tax benefit not repeating. +- **FY2024 automotive gross margin:** 18.4%; **total gross margin:** 17.9%. +- **Vehicle deliveries:** 1.81M in 2023 (+38% YoY); Q4 2024 alone exceeded 495,000 vehicles. +- **Delivery trend:** Growth has meaningfully slowed vs. 2022–2023 pace; 2024 full-year deliveries were approximately flat-to-slightly down vs. 2023. +- **FSD revenue:** $596M recognized in FY2024 from feature releases. +- **CapEx guidance:** Tesla expects capex to **exceed $11B in 2025** and each of the following two fiscal years — a massive investment cycle. -> **Note:** The RWD single-motor variant was announced mid-2024 at $60,990 before tax credits; the delivered MSRP climbed to ~$72,235 by early 2025 after configuration adders. Tesla has adjusted Cybertruck pricing multiple times since launch. - -**Key Specs & Features:** -- Stainless steel exoskeleton body (no traditional frame/body-on-frame design) -- Air suspension with adjustable ride height -- Integrated tonneau cover (motorized) -- 48V low-voltage architecture (first Tesla vehicle) -- Available "range extender" battery pack (additional ~120 mi) as an in-bed accessory -- Over-the-air (OTA) software updates; FSD (Supervised) compatible - -**Sources:** -- Tesla Cybertruck specs & pricing: https://www.tesla.com/cybertruck -- Car and Driver – 2025 Cybertruck Review: https://www.caranddriver.com/tesla/cybertruck-2025 -- Wikipedia – Tesla Cybertruck: https://en.wikipedia.org/wiki/Tesla_Cybertruck -- Electrek – Cybertruck RWD pricing: https://electrek.co/2024/07/18/tesla-launches-cybertruck-rwd-starting-at-60990/ +> **Sources:** +> - Tesla 2024 10-K: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +> - Tesla Q4 2023 Deliveries: https://ir.tesla.com/press-release/tesla-vehicle-production-deliveries-and-date-financial-results-webcast-fourth-quarter-2023 +> - Tesla Q4 2024 Deliveries: https://ir.tesla.com/press-release/tesla-fourth-quarter-2024-production-deliveries-and-deployments --- -### 2b. Tesla Model X - -The Model X is Tesla's large electric SUV and the primary competitor to the **Rivian R1S**. +## 3. Product vs. Product: Head-to-Head Comparisons -| Trim | Starting MSRP (2025) | Range (EPA est.) | Towing Capacity | Seating | 0–60 mph | -|---|---|---|---|---|---| -| **Long Range AWD** | $79,990 | 335 mi | 5,000 lb | 5 or 7 | 3.9 sec | -| **Plaid** (tri-motor) | $99,990 | 326 mi | 5,000 lb | 5 or 7 | 2.5 sec | +### 3a. Tesla Cybertruck vs. Rivian R1T (Electric Pickup Trucks) -**Key Specs & Features:** -- Falcon-wing rear doors (iconic but polarizing) -- Yoke or round steering wheel (option) -- 17-inch landscape touchscreen; 8-inch rear screen -- HEPA filtration + Bioweapon Defense Mode -- Up to 7-passenger seating (third row adds ~$3,000) -- FSD (Supervised) compatible -- Over-the-air updates - -**Sources:** -- Tesla Model X specs & pricing: https://www.tesla.com/modelx -- Car and Driver – 2025 Model X Review: https://www.caranddriver.com/tesla/model-x -- MotorTrend – Model X buyer's guide: https://www.motortrend.com/cars/tesla/model-x/ +| Spec / Attribute | Tesla Cybertruck (AWD) | Tesla Cybertruck (Cyberbeast) | Rivian R1T (Dual-Motor, Large Pack) | +|---|---|---|---| +| **First Deliveries** | Nov 30, 2023 | Nov 30, 2023 | Sep 2021 | +| **Starting MSRP** | ~$79,990 (AWD) | ~$102,240 | ~$69,900 | +| **EPA Range** | ~340 miles | ~320 miles | ~352 miles | +| **Towing Capacity** | ~11,000 lbs (AWD) | ~11,000 lbs | ~11,000 lbs | +| **0–60 mph** | ~4.1 s | ~2.6 s | ~3.0 s | +| **Payload** | ~2,500 lbs | ~2,500 lbs | ~1,760 lbs | +| **Design** | Angular stainless-steel exoskeleton | Same | Conventional truck body | +| **Off-Road Focus** | Moderate (air suspension, aggressive angles) | Moderate | Strong (adjustable air suspension, wade mode, gear tunnel) | +| **Charging Speed** | Up to 250 kW (NACS native) | 250 kW | Up to 220 kW (NACS adapter, native 2025+) | +| **Range Extender** | Available (+$16,000; up to 440+ miles) | N/A | Max Pack option (~410+ miles) | + +**Key Competitive Observations:** +- The Cybertruck launched two full years after the R1T, ceding Rivian first-mover advantage in the premium electric pickup segment. +- The Cyberbeast at $102,240 competes at the ultra-premium end; the AWD at ~$79,990 is directly competitive with R1T pricing. +- Rivian's **Gear Tunnel** storage, purpose-built camp kitchen integration, and dedicated **off-road overlanding ecosystem** (accessories, suspension tuning) resonate strongly with the outdoor/adventure buyer demographic that Tesla has struggled to fully penetrate. +- Cybertruck's radical stainless-steel design has drawn strong opinions — significant appeal to some buyers, significant aversion among others. +- Production ramp: Cybertruck production is still scaling; Rivian has had three-plus years of production learning. + +> **Sources:** +> - Tesla Cybertruck product page: https://www.tesla.com/cybertruck +> - InsideEVs Cybertruck pricing (2024 snapshot): https://insideevs.com/news/698701/tesla-cybertruck-official-price/ --- -## 3. Production & Delivery Volumes +### 3b. Tesla Model X vs. Rivian R1S (Premium Electric SUV) -### Tesla Overall (FY 2024) -| Metric | 2024 | 2023 | YoY Change | +| Spec / Attribute | Tesla Model X | Tesla Model X Plaid | Rivian R1S (Dual-Motor, Large Pack) | |---|---|---|---| -| **Total Deliveries** | 1,789,226 | 1,808,581 | **–1.1%** (first annual decline) | -| **Total Production** | 1,773,443 | 1,845,985 | –3.9% | - -> Tesla's 2024 overall delivery decline was the company's first year-over-year drop — driven partly by the Cybertruck factory ramp consuming capacity at Gigafactory Texas, Model 3 Highland changeover, and demand softness in key markets. - -### Cybertruck Deliveries (Estimated) -| Period | Deliveries (Est.) | Notes | -|---|---|---| -| **Q4 2023** (launch) | ~2,500–3,000 | Delivery event Dec 1; limited initial ramp | -| **FY 2024** | ~35,000–38,000 | Tesla does not break out Cybertruck separately; estimates from Troy Teslike, GoodCarBadCar, and Bloomberg Intelligence | -| **Q1 2025** | ~12,000–15,000 (est.) | Production still ramping; Gigafactory Texas dedicated line | - -> Tesla does not officially disclose Cybertruck-specific delivery figures in its quarterly reports. The estimates above are from third-party analysts cross-referencing VIN sequences and registration data. - -### Model X Deliveries -| Year | Deliveries (Est.) | -|---|---| -| **2023** | ~22,969 (Model S+X combined = ~50,309; X roughly 45% of combined) | -| **2024** | ~24,000–27,000 (est.) — Tesla reports Model S and Model X as a combined "Other Models" category | - -**Sources:** -- Tesla Q4 & FY 2024 Vehicle Deliveries and Production Report: https://ir.tesla.com/news-releases/news-release-details/tesla-fourth-quarter-2024-production-and-deliveries -- Tesla Q1 2025 Vehicle Deliveries Report: https://ir.tesla.com/news-releases/news-release-details/tesla-first-quarter-2025-production-and-deliveries -- Troy Teslike Cybertruck tracker (independent analyst): https://troyTeslike.substack.com -- GoodCarBadCar EV sales estimates: https://www.goodcarbadcar.net -- Bloomberg Intelligence EV tracker (subscription) +| **Starting MSRP** | ~$79,990 | ~$99,990 | ~$77,700 | +| **EPA Range** | ~335 miles | ~335 miles | ~258–410 miles (config-dependent) | +| **Seating** | Up to 7 | Up to 7 | 7 seats | +| **0–60 mph** | ~3.8 s | ~2.5 s | ~3.0 s | +| **Towing Capacity** | ~5,000 lbs | ~5,000 lbs | ~7,700 lbs | +| **Key Features** | Falcon Wing doors, massive touchscreen, FSD available, Autopilot | All of the above + Tri-motor | Air suspension, off-road modes (wade/sand/snow), gear tunnel | +| **Off-Road Rating** | Street-focused | Street-focused | Genuine off-road capability | +| **Charging (NACS)** | Native | Native | Adapter (native 2025+) | + +**Key Competitive Observations:** +- The R1S **starts ~$2,000 cheaper** than the base Model X and offers **superior towing** (7,700 lbs vs. 5,000 lbs). +- The R1S at its **Max Pack** configuration reaches **~410 miles** of EPA range — matching or exceeding Model X. +- The Model X's Falcon Wing doors are a signature differentiator for urban premium buyers; the R1S's wide-opening tailgate and gear tunnel win in the outdoor/overlanding context. +- Model X **does not offer a meaningful off-road mode** or off-road suspension tuning; R1S is purpose-designed for both on- and off-road environments. +- Tesla Model X production volumes and scale far exceed the R1S, keeping wait times short for Model X buyers. + +> **Sources:** +> - Tesla Model X product page: https://www.tesla.com/modelx +> - Car and Driver 2025 R1S review: https://www.caranddriver.com/rivian/r1s-2025 +> - KBB 2025 R1S: https://www.kbb.com/rivian/r1s/2025/ +> - Rivian R1S product page: https://rivian.com/r1s --- -## 4. Pricing Comparison vs. Rivian (Early 2025) - -### 4a. Electric Pickup: Cybertruck vs. Rivian R1T - -| Vehicle | Trim | Starting MSRP | Range (EPA) | Towing | Payload | 0–60 | -|---|---|---|---|---|---|---| -| **Tesla Cybertruck** | RWD | $72,235 | ~350 mi | 11,000 lb | 2,500 lb | ~6.0 sec | -| **Tesla Cybertruck** | AWD | $89,990 | ~340 mi | 11,000 lb | 2,500 lb | 4.1 sec | -| **Tesla Cybertruck** | Cyberbeast | $119,990 | ~320 mi | 11,000 lb | 2,500 lb | 2.6 sec | -| **Rivian R1T** | Standard (Dual) | $69,900 | ~270 mi | 11,000 lb | 1,760 lb | 4.5 sec | -| **Rivian R1T** | Large Pack (Dual) | $75,900 | ~340 mi | 11,000 lb | 1,760 lb | 4.5 sec | -| **Rivian R1T** | Max Pack (Quad) | $85,900 | ~410 mi | 11,000 lb | 1,760 lb | 3.0 sec | -| **Rivian R1T** | Performance (Tri) | ~$89,900 | ~360 mi | 11,000 lb | 1,760 lb | 2.9 sec | +### 3c. Tesla (Commercial / Fleet) vs. Rivian EDV -**Key Pricing Takeaways (Truck Segment):** -- Rivian's entry point ($69,900) is **~$2,300 lower** than the base Cybertruck RWD. -- Rivian's Max Pack at $85,900 undercuts Cyberbeast ($119,990) by $34,000 while offering **significantly more range (410 mi vs. 320 mi)**. -- Tesla's Cybertruck offers superior acceleration (2.6 sec, Cyberbeast) and higher payload capacity (2,500 lb vs. 1,760 lb for R1T). -- Federal EV tax credit eligibility: R1T qualifies for up to $3,750 credit; Cybertruck AWD/Cyberbeast do **not** currently qualify under IRA income/price caps. +| Attribute | Tesla | Rivian | +|---|---|---| +| **Commercial Van Product** | **None** — Tesla has no commercial delivery van | **EDV 500 & EDV 700** purpose-built electric delivery vans | +| **Anchor Customer** | Tesla Semi program (Class 8 semi-truck); limited Pepsi deployment | **Amazon** — 100,000-unit order (largest EV fleet order in history) | +| **Units Deployed (as of Jul 2024)** | N/A (no van) | **>15,000 EDVs** delivered to Amazon | +| **Feature Deployment** | N/A | Vision-Assisted Package Retrieval rolling out 2024–2025 | +| **Fleet Revenue** | No van revenue stream | Dedicated commercial segment revenue | + +**Key Competitive Observations:** +- Tesla has **no competitive product** in the last-mile electric delivery van category — this is a complete gap. +- Rivian's 100,000-unit Amazon commitment is a guaranteed revenue floor and provides enormous real-world fleet operating data. +- Tesla's Semi (Class 8) is not competitive with the EDV segment; it targets long-haul trucking, not last-mile delivery. +- This gives Rivian a **substantial commercial beachhead** that Tesla currently cannot challenge. + +> **Sources:** +> - Rivian EDV Wikipedia: https://en.wikipedia.org/wiki/Rivian_EDV +> - Amazon About Page (EDV program): https://www.aboutamazon.com/news/transportation/everything-you-need-to-know-about-amazons-electric-delivery-vans-from-rivian --- -### 4b. Electric SUV: Model X vs. Rivian R1S - -| Vehicle | Trim | Starting MSRP | Range (EPA) | Towing | Seating | 0–60 | -|---|---|---|---|---|---|---| -| **Tesla Model X** | Long Range AWD | $79,990 | 335 mi | 5,000 lb | 5–7 | 3.9 sec | -| **Tesla Model X** | Plaid | $99,990 | 326 mi | 5,000 lb | 5–7 | 2.5 sec | -| **Rivian R1S** | Standard (Dual) | $75,900 | ~270 mi | 7,700 lb | 7 | 4.5 sec | -| **Rivian R1S** | Large Pack (Dual) | $79,900 | ~321 mi | 7,700 lb | 7 | 4.5 sec | -| **Rivian R1S** | Max Pack (Quad) | $89,900 | ~410 mi | 7,700 lb | 7 | 3.0 sec | -| **Rivian R1S** | Performance (Tri) | ~$93,900 | ~360 mi | 7,700 lb | 7 | 2.9 sec | - -**Key Pricing Takeaways (SUV Segment):** -- R1S undercuts Model X Long Range by ~$100 at comparable pack levels; both cluster in the $79,000–$100,000 range. -- **Towing advantage goes to Rivian R1S:** 7,700 lb vs. Model X's 5,000 lb — a meaningful gap for families with trailers or boats. -- **Range advantage at top trim goes to Rivian** (R1S Max Pack 410 mi vs. Model X Long Range 335 mi). -- Model X Plaid's 2.5-sec 0–60 is best-in-class for a 7-passenger luxury SUV. -- R1S offers standard 7-passenger seating; Model X third row is a $3,000 option. - -**Sources:** -- Tesla pricing: https://www.tesla.com/cybertruck & https://www.tesla.com/modelx -- Rivian pricing: https://www.rivian.com/r1t & https://www.rivian.com/r1s -- Car and Driver comparison: https://www.caranddriver.com/comparisons -- IRS EV tax credit eligibility list: https://www.irs.gov/credits-deductions/credits-for-new-clean-vehicles-purchased-in-2023-or-after -- Electrek – Rivian pricing updates 2025: https://electrek.co/guide/rivian/ +## 4. U.S. Market Share & Sales Volumes ---- +- **Tesla** remains the **#1 U.S. EV seller by a wide margin**, with ~57–62% U.S. EV market share in late 2025 per Cox Automotive data. +- U.S. EV market is growing but remains competitive; Tesla's share has faced gradual erosion as GM, Ford, Hyundai/Kia, and others ramp EV production. +- **Rivian** holds a materially smaller share — a single-digit percentage of the U.S. EV market — but is one of the few pure-play EV brands with meaningful consumer sales volume alongside Tesla. +- Tesla's **~1.8M+ global annual deliveries** vs. Rivian's ~**51,500–57,000 units/year** (2023–2024) illustrates the scale gap. -## 5. Market Share — Electric Trucks & SUVs (2024) +> **Sources:** +> - Cox Automotive EV Market Monitor (Dec 2025): https://www.coxautoinc.com/insights-hub/ev-market-monitor-december-2025 +> - Tesla Q4 2023 Deliveries IR: https://ir.tesla.com/press-release/tesla-vehicle-production-deliveries-and-date-financial-results-webcast-fourth-quarter-2023 +> - Rivian Q4 2024 Production/Delivery newsroom: https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures -### U.S. Electric Pickup Truck Market (2024 est.) -| Brand / Model | Est. 2024 US Deliveries | Est. Market Share | -|---|---|---| -| **Ford F-150 Lightning** | ~22,000 | ~30% | -| **Rivian R1T** | ~17,500–19,000 | ~24–26% | -| **Tesla Cybertruck** | ~35,000–38,000 | ~45–48% | -| **Chevy Silverado EV / GMC Sierra EV** | ~5,000 combined | ~6–7% | -| **RAM 1500 REV** | <500 (late launch) | <1% | - -> Tesla's Cybertruck, despite being positioned at a higher price point and not yet reaching full production, likely led the electric pickup segment by volume in 2024. However, its share depends on final registration data still being compiled. Note: Rivian registers more deliveries in the adventure/premium outdoor niche. +--- -### U.S. Large Electric Luxury SUV Market (2024 est.) -| Brand / Model | Est. 2024 US Deliveries | Share | -|---|---|---| -| **Rivian R1S** | ~19,000–22,000 | ~35–40% | -| **Tesla Model X** | ~24,000–27,000 | ~40–45% | -| **Cadillac Escalade IQ** | ~2,000 | ~4% | -| **BMW iX / Mercedes EQS SUV** | ~5,000 combined | ~9% | +## 5. Pricing Strategy -> In the large luxury EV SUV segment, Tesla Model X and Rivian R1S together account for roughly 75–85% of the market. Rivian has gained share due to R1S popularity outpacing R1T; many Rivian owners choose R1S as a primary family vehicle. +- Tesla has pursued an **aggressive, repeated price-cutting strategy** since late 2022, lowering prices on Model 3, Model Y, Model X, and Model S multiple times to defend market share. +- In **April 2024**, Tesla cut FSD (Supervised) pricing from **$12,000 to $8,000** in the U.S. and slashed prices across its lineup in China, Germany, and other global markets. +- These cuts **compressed margins** (automotive gross margin fell from ~25%+ in 2022 to ~18.4% in FY2024) but maintained volume leadership. +- **Ripple effect on Rivian:** Tesla's price cuts forced broad EV market repricing, putting pressure on Rivian to remain competitive on price despite having a much smaller production scale and a higher per-unit cost structure. Rivian cannot absorb margin compression the way Tesla can. +- Entry-level price comparison for the truck segment: **R1T starts ~$69,900** vs. **Cybertruck AWD ~$79,990** — Rivian currently holds a price advantage at entry. -**Sources:** -- GoodCarBadCar U.S. EV sales data: https://www.goodcarbadcar.net/electric-vehicle-sales-data/ -- InsideEVs 2024 sales scorecard: https://insideevs.com/news/710098/us-electric-car-sales-2024/ -- Rivian Q4 2024 earnings press release (production/delivery breakdown): https://ir.rivian.com -- Automotive News EV tracker: https://www.autonews.com +> **Sources:** +> - Reuters (Apr 2024 price cuts including FSD): https://www.reuters.com/business/autos-transportation/tesla-cuts-prices-across-its-line-up-china-2024-04-21 +> - Reuters (EV market pricing pressure, July 2024): https://www.reuters.com/business/autos-transportation/rough-road-ahead-for-us-ev-makers-despite-upbeat-quarterly-sales-2024-07-02/ +> - Tesla 2024 10-K (revenue & pricing commentary): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm --- -## 6. Financial Strength +## 6. Software & Technology Differentiation -### Tesla FY 2024 Financial Summary -| Metric | FY 2024 | FY 2023 | YoY | -|---|---|---|---| -| **Total Revenue** | $97.7 billion | $96.8 billion | +0.9% | -| **Automotive Revenue** | $77.1 billion | $82.4 billion | –6.4% | -| **Energy & Services Revenue** | $20.6 billion | $14.4 billion | +43% | -| **Net Income (GAAP)** | $7.26 billion | $15.0 billion | –51.6% | -| **Adjusted EBITDA** | ~$13.6 billion | ~$17.5 billion | –22% | -| **Automotive Gross Margin** | ~17.1% | 18.9% | –180 bps | -| **Cash & Equivalents** | ~$36.6 billion | ~$29.1 billion | +26% | -| **Total Debt** | ~$7.6 billion | ~$5.5 billion | +38% | -| **Free Cash Flow** | ~$3.6 billion | ~$4.4 billion | –18% | -| **CapEx** | ~$11.0 billion | ~$8.9 billion | +24% | - -**Key Financial Observations:** -- Tesla remains one of the **most cash-rich automakers globally**, with $36.6B in cash providing an enormous strategic buffer vs. Rivian's ~$7.3B (end of 2024). -- Net income declined sharply in 2024 due to aggressive price cuts across the fleet (totaling over $8,000 in cumulative MSRP reductions on some models since 2022), higher R&D, and Cybertruck ramp costs. -- Energy generation & storage (Megapack) became a critical profit contributor, partially offsetting automotive margin compression. -- Tesla ended 2024 with **no meaningful liquidity risk**, contrasting sharply with Rivian's path to profitability timeline extending to late 2026 at earliest. - -### Rivian Comparison (FY 2024 — for context) -| Metric | Rivian FY 2024 | +### Tesla +| Capability | Status | +|---|---| +| **Full Self-Driving (FSD Supervised)** | Available; $8,000 purchase / ~$99/mo subscription; $596M revenue in FY2024; continues iterative AI-based OTA improvements | +| **Autopilot** | Included on all new vehicles; highway lane-keeping, adaptive cruise | +| **Over-the-Air (OTA) Updates** | Industry-leading; features, performance, and safety delivered via OTA | +| **In-Vehicle Software** | Proprietary Tesla OS; large central touchscreen; gaming, entertainment ecosystem | +| **Supercharger Network** | **8,182 stations / 77,682 connectors globally** (Q4 2025); world's largest DC fast-charging network | +| **NACS Standard** | Tesla created NACS; now industry standard — major OEMs (Ford, GM, Rivian, Honda, etc.) adopting | +| **Robotaxi / AI Ambitions** | Cybercab robotaxi announced; Dojo supercomputer; FSD v13+ development ongoing | + +### Rivian +| Capability | Status | |---|---| -| Revenue | ~$4.97 billion | -| Net Loss (GAAP) | ~$(4.75) billion | -| Gross Profit | Approx. breakeven by Q4 2024 | -| Cash & Equivalents | ~$7.3 billion | -| Vehicles Delivered | ~51,579 | - -**Sources:** -- Tesla 2024 10-K, SEC EDGAR: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm -- Tesla Q4 2024 Earnings Release: https://ir.tesla.com/news-releases/news-release-details/tesla-fourth-quarter-and-full-year-2024-update -- Rivian Q4 2024 Earnings Release: https://ir.rivian.com -- Reuters – Tesla 2024 full year results: https://www.reuters.com/business/autos-transportation/tesla-reports-2024-annual-results/ +| **ADAS / Driver Assist** | Highway Assist (lane-centering + adaptive cruise); less advanced than FSD but competitive with industry peers | +| **OTA Updates** | Supported; regular software improvements delivered wirelessly | +| **Adventure Network** | Rivian's proprietary DC fast-charging network; much smaller than Supercharger but growing; targeted to adventure destinations | +| **NACS Adoption** | Announced June 2023; Supercharger access via adapter since **April 2024**; native NACS port expected 2025+ | +| **In-Vehicle Software** | Purpose-built outdoor/adventure UX; integration with outdoor activity planning | + +**Key Observations:** +- Tesla's **software moat** is substantial: FSD is years ahead of Rivian's ADAS in capability and monetization. +- Tesla's **Supercharger network advantage** is significant but diminishing — Rivian owners now have adapter-based access, and NACS adoption means all future Rivian vehicles will natively access Superchargers. +- Rivian's software is well-regarded for its use-case fit (adventure/outdoor) but does not attempt to compete with FSD. + +> **Sources:** +> - Tesla 2024 10-K (FSD revenue): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +> - Tesla Supercharger network (Q4 2025): https://evchargingstations.com/chargingnews/tesla-supercharging-network-expansion-record-q4-2025 +> - Tesla NACS page: https://www.tesla.com/NACS +> - Rivian NACS announcement (Jun 2023): https://rivian.com/newsroom/article/rivian-accelerates-electrification-through-adoption-of-north-american-charging-standard-and-access-to-teslas-supercharger-network +> - Rivian Supercharger adapter availability (Apr 2024): https://ev-lectron.com/en-mx/blogs/blog/when-will-rivian-have-nacs +> - Car and Driver NACS compatibility tracker: https://www.caranddriver.com/news/a44388939/tesla-nacs-charging-network-compatibility/ --- -## 7. Key Strengths vs. Rivian - -### 1. Supercharger Network — Unmatched Charging Infrastructure -Tesla operates the world's largest DC fast-charging network, with **~60,000+ Supercharger stalls** across ~7,000+ stations globally (as of early 2025). The network has opened to non-Tesla EVs (including Rivian, via NACS adapters), but Tesla vehicles receive preferential routing, automatic billing, and higher reliability ratings. Rivian customers rely on the Rivian Adventure Network (~3,000 stalls) plus third-party networks (Electrify America, EVgo). The infrastructure gap meaningfully reduces range anxiety for Tesla buyers. -- Source: https://www.tesla.com/supercharger | https://electrek.co/2024/03/11/tesla-supercharger-network-update/ - -### 2. Manufacturing Scale & Cost Structure -Tesla produces ~1.8 million vehicles/year across four Gigafactories (Fremont CA, Austin TX, Berlin DE, Shanghai CN). This scale enables **unit economics** that Rivian — producing ~50,000–57,000 vehicles/year at one plant (Normal, IL) — cannot currently approach. Tesla's cost-per-vehicle is a fraction of Rivian's, allowing Tesla to sustain margins even after price cuts. -- Source: Tesla 10-K 2024; Rivian 10-K 2024 - -### 3. Brand Recognition & Global Footprint -Tesla is the world's most recognized EV brand and operates in 50+ markets globally. Cybertruck's cultural and media visibility far exceeds R1T's despite comparable launch timelines. Tesla's consumer NPS scores, waitlists, and used-car demand all remain structurally higher than Rivian's nascent brand. +## 7. Manufacturing Scale & Capacity + +### Tesla +- Operates **Gigafactories** in Fremont CA, Austin TX (Gigafactory Texas), Berlin Germany, and Shanghai China. +- Produced **~1.85M vehicles in 2023** and a similar volume in 2024 (slight decrease due to model transitions and demand normalization). +- **CapEx:** $11.34B in FY2024; guided to **exceed $11B annually for the next three fiscal years** — supporting new models, energy storage, and AI infrastructure. +- Cybertruck production ramping at Gigafactory Texas through 2024–2025. +- Cost-per-vehicle improvements have been a hallmark of Tesla's manufacturing efficiency, though recent price cuts have squeezed margins back. + +### Rivian +- Single production facility: **Normal, Illinois** plant (former Mitsubishi facility). +- **Annual production capacity:** ~150,000 units (current line); constrained by supply chain and retooling. +- FY2024 produced approximately **49,000–52,000 vehicles** — well below plant capacity, reflecting demand ramp and retooling. +- **R2 platform:** New, lower-cost vehicle platform planned; Rivian secured a new **Greenfield plant in Georgia** (partially paused/phased to manage cash), with manufacturing also to be supported by Volkswagen JV technology sharing. +- **Q4 2024 gross profit:** $170M — first meaningful positive gross profit, driven by variable cost improvements and regulatory credit revenue. +- **Battery manufacturing expansion** planned for 2025 to support cost reductions. + +> **Sources:** +> - Tesla 2024 10-K (capex, production): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +> - Rivian Q4 2024 earnings press release: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm +> - Rivian Q4 2024 production/delivery figures: https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures +> - Rivian 2024 10-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> - Rivian battery manufacturing expansion (2025): https://www.marketresearchfuture.com/news/rivian-to-expand-battery-manufacturing-facility-in-2025 -### 4. Full Self-Driving (FSD) Software Ecosystem -Tesla's FSD (Supervised) v12 represents the most widely deployed advanced driver assistance system (ADAS) on consumer vehicles (~600,000+ active users). FSD is a significant recurring revenue and margin opportunity (~$8,000–$15,000 per vehicle or $99/month subscription). Rivian's ADAS capabilities (Highway Assist) lag Tesla's breadth and commercial deployment scale. -- Source: https://www.tesla.com/futureofdrivingAI | Bloomberg Second Measure - -### 5. Vertical Integration & Supply Chain Control -Tesla manufactures its own cells (4680 in Texas), inverters, firmware, seats, and increasingly its own raw materials sourcing. This reduces exposure to third-party suppliers and enables faster iteration. Rivian, while vertically integrating its Enduro drive units, still relies heavily on Samsung SDI (and soon LG Chem) for cells and has meaningful single-source supplier risk. -- Source: Tesla 2024 10-K; Rivian 2024 10-K supplier disclosures - -### 6. Profitability & Balance Sheet Firepower -Tesla's $36.6B cash position vs. Rivian's $7.3B means Tesla can sustain R&D investment, price competition, and capital expenditure for years without additional financing. Rivian raised $5.8B from VW in 2024 to extend runway, but remains loss-making. Tesla can use pricing aggression as a strategic weapon in a way Rivian cannot afford. -- Source: Tesla Q4 2024 earnings; Rivian VW investment announcement: https://rivian.com/newsroom/article/rivian-and-volkswagen-group-announce-joint-venture +--- -### 7. Cybertruck Payload & Towing (vs. R1T) -The Cybertruck's **2,500 lb payload** significantly exceeds the R1T's **1,760 lb payload** — a meaningful differentiator for buyers with genuine work truck needs. Both offer 11,000 lb towing, but the Cybertruck RWD achieves this at a lower price point than R1T's comparable range packs. +## 8. Financial Position Comparison -### 8. Performance Ceiling (Cyberbeast / Model X Plaid) -Cyberbeast's 2.6-sec 0–60 and Plaid's 2.5-sec 0–60 represent the upper end of any production SUV/truck. Rivian's Performance Tri-Motor R1T/R1S at 2.9 sec is competitive but not class-leading. Tesla's performance halo drives premium positioning and media attention. +| Metric | Tesla (FY2024) | Rivian (FY2024) | +|---|---|---| +| **Revenue** | $97.69B | ~$4.97B (est.) | +| **Net Income / (Loss)** | $7.09B profit | Multi-billion net loss | +| **Automotive Gross Margin** | 18.4% | Approaching breakeven (first Q4 gross profit of ~$170M in Q4 2024) | +| **Cash & Investments** | $36.56B | ~$7–9B (incl. VW JV proceeds) | +| **Total Debt** | $7.91B | ~$5–6B | +| **Key Liquidity Event** | Ongoing FCF generation | **Volkswagen $5B JV** (announced June 2024) | +| **Regulatory Credits** | Not a primary revenue driver | $325M recognized in FY2024 (MY2022–2023 credits) | +| **Path to Profitability** | Profitable; defending margin | Targeting positive gross profit sustained; variable cost reduction trajectory | + +**Key Observations:** +- Tesla's **$36.56B cash position** provides enormous buffer for capex, R&D, price cuts, and market share battles. +- Rivian's **Volkswagen $5B JV** (announced June 2024) was a critical liquidity and strategic technology event — providing capital to fund the R2 launch and ECU/software architecture development with VW's backing. +- Rivian's **Q4 2024 $170M gross profit** is a significant milestone but the company remains in deep net loss territory when accounting for SG&A, R&D, and interest. +- The financial asymmetry is stark: Tesla can sustain a prolonged price war; Rivian cannot. + +> **Sources:** +> - Tesla 2024 10-K: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +> - Rivian Q4 2024 press release: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm +> - Rivian 2024 10-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> - Rivian FY2024 financial results newsroom: https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results --- -## 8. Key Weaknesses vs. Rivian - -### 1. Off-Road Capability & Adventure DNA -Rivian was purpose-built as an adventure vehicle. The **R1T and R1S feature:** -- Standard air suspension with up to 14.9 inches of ground clearance (vs. Cybertruck's ~17.0 in maximum, but Rivian's is more proven off-road tuned) -- Rivian's **tank turn / point turn** capability (available via software update), unique in the segment -- **All-terrain AT tires** as standard; Cybertruck ships on street tires and options all-terrain -- Rivian's off-road mode granularity and suspension tuning is widely praised by reviewers; Cybertruck has struggled with underbody protection concerns on trail use +## 9. Key Strengths of Tesla Relative to Rivian -**Sources:** -- MotorTrend Cybertruck off-road review: https://www.motortrend.com/reviews/2024-tesla-cybertruck-off-road-test/ -- Car and Driver R1T vs Cybertruck comparison: https://www.caranddriver.com/comparisons +1. **Overwhelming scale advantage:** ~1.8M+ annual deliveries vs. Rivian's ~50,000 — a ~36x production volume gap enabling far lower per-unit manufacturing costs over time. +2. **Profitable balance sheet and cash generation:** $36.56B cash, $7.09B net income, and strong FCF vs. Rivian's ongoing losses — Tesla can absorb pricing pressure and invest aggressively without capital market dependency. +3. **World's largest charging network (Supercharger):** 8,182 stations / 77,682 connectors globally — a structural moat for range anxiety and the reason NACS became the industry standard. +4. **Software and AI leadership:** FSD is the most advanced consumer autonomy suite commercially available; $596M in FSD revenue demonstrates real monetization; Dojo AI, robotaxi program, and OTA capabilities are years ahead of Rivian. +5. **Brand recognition and global distribution:** Tesla is the world's most recognized EV brand with a direct-sales model, service centers, and brand presence in 40+ countries — Rivian is essentially U.S.-only at this stage. +6. **Multi-product breadth:** Model S/3/X/Y/Cybertruck/Semi covers luxury sedan, mass-market sedan, luxury SUV, mass-market crossover, pickup, and commercial trucks — far broader than Rivian's two consumer models (R1T, R1S) plus EDV. +7. **Manufacturing efficiency and CapEx muscle:** Tesla's Gigafactory footprint and $11B+ annual CapEx investment capacity means it can out-invest Rivian on future product development and plant construction. -### 2. Interior Quality & Fit/Finish -Rivian's R1T/R1S interiors are broadly praised for premium materials, intuitive layout, and a warm, outdoor-lifestyle aesthetic. Cybertruck's interior — while futuristic — uses harder plastics, a center-spine layout that limits interior access, and has received mixed reviews on build quality. Early production Cybertrucks suffered from misaligned body panels, rattles, and windshield wiper failures (subject to a recall in 2024). - -**Sources:** -- Consumer Reports initial quality survey 2024 (Tesla near-bottom for initial quality) -- Cybertruck windshield wiper recall: https://www.nhtsa.gov/vehicle/2024/TESLA/CYBERTRUCK/PU/AWD +--- -### 3. Recall Frequency & Early Quality Issues (Cybertruck) -Since launch through early 2025, the Cybertruck has been subject to **multiple NHTSA recalls**, including: -- **Accelerator pedal recall** (February 2024): Trim piece could trap accelerator in pressed position — ~3,878 vehicles affected -- **Windshield wiper recall** (2024) -- **Body panel adhesive recall**: Exterior trim panels delaminating -- **Trunk frunk latch recall** (Q1 2025) +## 10. Key Weaknesses of Tesla Relative to Rivian (Rivian's Advantages) -This recall frequency in a newly launched model is a reputational liability vs. Rivian, which has had a more stable quality trajectory in recent quarters. -- Source: NHTSA recall database: https://www.nhtsa.gov/vehicle-safety/recalls#recalls-search +1. **No purpose-built adventure/off-road DNA:** Tesla's vehicles are engineered for performance and efficiency on roads; the Cybertruck's polarizing stainless design and relatively shallow off-road ecosystem do not match the R1T/R1S's "born for the outdoors" positioning, Gear Tunnel, wade mode, camp kitchen integration, or accessories marketplace. +2. **Zero presence in commercial delivery vans:** Tesla has no product competing with the Rivian EDV — Rivian's 100,000-unit Amazon commitment and >15,000 deployed units represent a commercial revenue stream and fleet learning advantage Tesla cannot replicate without a multi-year product development cycle. +3. **Cybertruck design risk:** The Cybertruck's radical stainless-steel exoskeleton is a double-edged sword — it alienates a meaningful portion of traditional truck buyers. R1T's conventional truck form factor has broader visual acceptance in key markets (rural, suburban, fleet). +4. **Brand perception / CEO political risk:** Elon Musk's high-profile political activities in 2024–2025 have generated boycotts and brand backlash in key markets (Europe, blue-state U.S.), contributing to demand softness. Rivian's brand is politically neutral and has strong goodwill among its target demographic. +5. **Towing capacity gap (SUV segment):** Model X tows ~5,000 lbs vs. R1S's ~7,700 lbs — a meaningful disadvantage for buyers who need to tow trailers, boats, or campers, which is core to the adventure-lifestyle use case. +6. **Interior and fit-and-finish critique:** Despite improvements, Tesla interiors (particularly the Cybertruck's) have faced criticism for build quality, panel gaps, and minimalist ergonomics; Rivian's interiors receive strong reviews for material quality, tactile controls, and purposeful design. +7. **R2 platform price disruption risk:** Rivian's upcoming R2 (~$45,000 entry price) could significantly expand Rivian's addressable market into segments where Tesla currently dominates (Model Y price point), a competitive vector Tesla does not have a ready counter to in the adventure segment. -### 4. Configurability & Trim Options -Rivian offers extensive powertrain, pack, and color configurations with a clean online configurator. Tesla's Cybertruck has limited exterior color options (only recently adding color options beyond silver/matte), and trim optionality has been constrained. Foundation Series configurations locked many buyers into higher-priced trims earlier than expected. +--- -### 5. Price-to-Value Perception at Entry Level -The Cybertruck RWD at $72,235 does not qualify for the federal $7,500 tax credit (or even the $3,750 credit available to R1T), making Rivian's effective out-of-pocket cost substantially lower for qualifying buyers. This is a material competitive disadvantage at the entry-level consumer decision point. -- Source: IRS Clean Vehicle Credit: https://www.irs.gov/credits-deductions/credits-for-new-clean-vehicles-purchased-in-2023-or-after +## 11. Recent Strategic Moves (Last 12 Months — Tesla) -### 6. Brand Sentiment Headwinds (2024–2025) -CEO Elon Musk's high-profile involvement in politics (including DOGE advisory role in the Trump administration, beginning January 2025) has created measurable brand backlash. Multiple surveys and sales data from early 2025 suggest Tesla demand softening in Democratic-leaning markets and in Europe, while Rivian's brand remains largely insulated from political polarization. -- Source: Reuters – Tesla demand impact from Musk politics: https://www.reuters.com/business/autos-transportation/tesla-sales-elon-musk-political-controversies-2025/ -- YouGov brand perception tracking 2025 +| Date | Move | Significance vs. Rivian | +|---|---|---| +| **Nov 2023 – ongoing** | Cybertruck production ramp at Gigafactory Texas | Direct competitive response to R1T; still ramping through 2024–2025 | +| **Apr 2024** | Global price cuts across lineup; FSD cut from $12,000 → $8,000 | Forces pricing pressure across EV market, squeezes Rivian margins | +| **2024** | ~10%+ global workforce reduction (~14,000+ employees laid off) | Cost restructuring; signals focus on efficiency and profitability amid softer demand | +| **2024** | $596M FSD revenue recognition; FSD v12/v13 AI-based rollout | Reinforces software monetization moat | +| **2024–2025** | Supercharger network expansion to 8,182 stations / 77,682 connectors | Ongoing infrastructure dominance; NACS adoption gives Tesla de facto standard status | +| **2024 (ongoing)** | Cybercab (robotaxi) unveiled; autonomous vehicle strategy disclosed | Long-term platform bet; not directly competitive with Rivian today | +| **FY2024** | $11.34B CapEx deployed; $11B+ guided for 2025+ | Massive reinvestment cycle; R&D in AI, new models, energy storage | +| **Q4 2025** | $4.4B GAAP operating income; $3.8B GAAP net income for full-year 2025 | Demonstrates financial recovery and margin stabilization after 2024 compression | + +> **Sources:** +> - Tesla Q4 2025 Update Deck: https://assets-ir.tesla.com/tesla-contents/IR/TSLA-Q4-2025-Update.pdf +> - Reuters (global price cuts, Apr 2024): https://www.reuters.com/business/autos-transportation/tesla-cuts-prices-across-its-line-up-china-2024-04-21 +> - Tesla 2024 10-K: https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm --- -## 9. Recent Strategic Moves (Last 12 Months) +## 12. Overall Competitive Assessment -### Cybertruck Developments -| Date | Development | -|---|---| -| **Jan–Feb 2024** | Cybertruck accelerator pedal recall (3,878 units) — NHTSA investigation opened | -| **Mid-2024** | Launch of **Cybertruck RWD** single-motor variant at $60,990 base (later adjusted to $72,235 with options) | -| **Mid-2024** | Tesla announces **range extender battery** add-on (~$16,000), adding ~120 mi in-bed | -| **Q3 2024** | Additional color options (matte black wrap available via Tesla, "Satin" silver) introduced | -| **Q3 2024** | Cybertruck production rate reportedly reaching ~1,000–1,500 units/week at Gigafactory Texas | -| **Q4 2024** | Multiple body trim/panel adhesive recalls; frunk latch investigation | -| **Q4 2024** | Tesla introduces **Cybertruck for Business** commercial fleet ordering portal | -| **Early 2025** | Cybertruck gets FSD v12 rollout and enhanced Autopilot on highway | - -### Model X Developments -| Date | Development | -|---|---| -| **2024** | Model X received **minor refresh** — updated center console, revised ambient lighting | -| **2024** | Yoke steering wheel made default on new orders; round wheel offered as no-cost option again after customer feedback | -| **2024** | Model X Plaid production stabilized; wait times declined to <4 weeks in most US markets | -| **2025** | Model X pricing held relatively stable vs. sharp cuts on Model 3/Y — protecting margin on low-volume halo product | +Tesla is Rivian's most formidable competitor by virtually every financial and scale metric, but the two companies do not fully overlap in target customer. Tesla's strength is **mass-market electrification, software monetization, charging infrastructure, and financial staying power.** Rivian's differentiated positioning in **adventure/outdoor lifestyle, genuine off-road capability, and last-mile commercial delivery** creates defensible niches where Tesla is currently absent or structurally weak. -### Broader Tesla Strategic Moves Relevant to Rivian Competition -| Date | Development | -|---|---| -| **Mar 2024** | Tesla lays off ~10% of global workforce (~14,000 employees) amid margin pressure | -| **Apr 2024** | Cancellation of low-cost "Model 2" (~$25K) as initially conceived — pivot to "Robotaxi" strategy announced | -| **Jun 2024** | Shareholders re-approve Elon Musk's $56B compensation package after Delaware court voided it | -| **Q3 2024** | **Supercharger Network** opens broadly to Ford, GM, Rivian, and other brands via NACS adapter program — monetizes infrastructure as a service | -| **Oct 2024** | Tesla unveils **Robotaxi / Cybercab** at "We, Robot" event — signals long-term pivot toward autonomous ride-hailing | -| **Nov 2024** | Post-U.S. election Musk-Trump relationship boosts TSLA stock >80% in weeks; market cap briefly surpasses $1.3T | -| **Jan 2025** | Musk assumes advisory role in U.S. DOGE initiative; Tesla brand controversy intensifies in some markets | -| **Q1 2025** | Tesla reports weakest quarterly deliveries in years (336,681 units in Q1 2025 vs. 386,810 in Q1 2024) — first back-to-back quarterly delivery decline since 2020 | -| **Q1 2025** | Tesla announces next-gen affordable vehicle (≤$30,000 target) for H1 2025 production start — long-term volume play that does not directly threaten R1T/R1S | - -**Sources:** -- Tesla Newsroom: https://www.tesla.com/blog -- Electrek – Tesla 2024 layoffs: https://electrek.co/2024/04/15/tesla-is-laying-off-more-than-10-of-its-global-workforce/ -- Reuters – Tesla Q1 2025 deliveries: https://www.reuters.com/business/autos-transportation/tesla-q1-2025-deliveries/ -- NHTSA recall database: https://www.nhtsa.gov/vehicle-safety/recalls -- Tesla "We, Robot" Robotaxi reveal: https://electrek.co/2024/10/10/tesla-we-robot-event-robotaxi-reveal/ -- Tesla Supercharger NACS expansion: https://www.tesla.com/blog/nacs-becomes-industry-standard - ---- +The critical risk for Rivian is Tesla's **ability to sustain a prolonged price war** — Tesla's $36.56B cash cushion and positive net income mean it can subsidize vehicle prices below Rivian's cost basis indefinitely. The critical risk for Tesla in this segment is **brand erosion** due to CEO-driven political controversies, Cybertruck design polarization, and a lack of true adventure-segment product depth. -## 10. Summary Competitive Assessment - -| Dimension | Tesla Advantage | Rivian Advantage | -|---|---|---| -| **Charging Network** | ✅ Strong — 60K+ Supercharger stalls | ❌ Smaller Adventure Network + 3rd party | -| **Manufacturing Scale** | ✅ 1.8M/yr vs. ~57K/yr | — | -| **Financial Strength** | ✅ $36.6B cash, profitable | — | -| **Off-Road Capability** | — | ✅ Purpose-built adventure DNA | -| **Interior Quality** | — | ✅ Warmer, higher-quality materials | -| **Recall Track Record (Cybertruck)** | ❌ Multiple early recalls | ✅ Improving quality trajectory | -| **SUV Towing (Model X vs. R1S)** | — | ✅ R1S: 7,700 lb vs. Model X: 5,000 lb | -| **Range (top trim SUV)** | — | ✅ R1S Max Pack 410 mi vs. Model X 335 mi | -| **FSD / Autonomy** | ✅ Industry-leading ADAS deployment | — | -| **Truck Payload** | ✅ Cybertruck: 2,500 lb vs. R1T: 1,760 lb | — | -| **EV Tax Credit (entry buyer)** | ❌ Cybertruck not eligible | ✅ R1T/R1S eligible (up to $3,750) | -| **Brand Sentiment (2025)** | ❌ Musk political controversies | ✅ Neutral/positive brand perception | -| **Software Ecosystem** | ✅ Tesla app, energy, insurance | — | -| **Adventure Lifestyle Brand Fit** | — | ✅ Rivian purpose-built positioning | - -**Overall Assessment:** Tesla is the dominant competitor to Rivian by financial resources, charging infrastructure, and manufacturing scale. However, in the specific adventure truck/SUV niche that Rivian targets, Rivian's product design, off-road credentials, interior quality, and brand authenticity provide genuine differentiation. The Cybertruck's early recall issues and polarizing aesthetics have capped its appeal in Rivian's core customer demographic. The most critical competitive risk for Rivian is Tesla's ability to sustain price aggression and expand Supercharger monetization — both backed by a balance sheet roughly 5× larger than Rivian's. +**Verdict:** Tesla wins on scale, software, financials, and brand scale. Rivian wins on niche positioning, adventure credibility, commercial van dominance, and towing capacity in the SUV segment. The VW partnership and R2 launch are Rivian's most critical near-term strategic catalysts to widen the addressable market and reduce cost disadvantages. --- -*This workpaper was prepared for due diligence purposes. All figures are estimates or drawn from public filings and third-party analyst sources as cited. Verify key data points against the most current Tesla and Rivian SEC filings before reliance.* +*All data sourced from SEC filings, company IR pages, and third-party automotive data providers as cited inline. Financial figures are as of the most recent available reporting period (FY2024 / Q4 2024 unless noted). Live figures (market cap) subject to change.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md index e20dc35..de2d3b8 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/corporate-profile.md @@ -1,8 +1,7 @@ # Corporate Profile: Rivian Automotive, Inc. -> **Prepared by:** Corporate Research Analyst -> **Date:** 2025 -> **Sources:** SEC EDGAR filings, Rivian Investor Relations, company newsroom +**Prepared:** May 2026 +**Sources:** SEC filings, Rivian investor relations, proxy statements, and news sources (citations inline) --- @@ -11,183 +10,160 @@ | Field | Detail | |---|---| | **Legal Name** | Rivian Automotive, Inc. | -| **Incorporation Jurisdiction** | State of Delaware | -| **Stock Classes** | Class A common stock (publicly traded) and Class B common stock | -| **Ticker / Exchange** | RIVN / Nasdaq | - -> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm - ---- - -## 2. Founding History - -Rivian was founded in **June 2009** by **Dr. Robert J. (RJ) Scaringe**. The company spent its early years operating in stealth mode, quietly developing an automotive skateboard platform intended to serve as a flexible foundation for electric vehicles. Throughout the 2010s, Rivian pivoted its strategy from passenger cars toward adventure-oriented electric trucks and SUVs, culminating in the reveal of the R1T pickup truck and R1S SUV at the Los Angeles Auto Show in November 2018. Rivian also secured a major commercial vehicle contract with Amazon early on. - -> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm +| **Jurisdiction** | Delaware (General Corporation Law) | +| **Incorporation Date** | March 26, 2015 | +| **EIN** | 47-3544981 | +| **SEC File No.** | 001-41042 | +| **Stock Exchange** | Nasdaq Global Select Market | +| **Ticker** | RIVN | +| **IPO Date** | November 10, 2021 | -> **Source:** Rivian — Our Company -> https://rivian.com/our-company +> Sources: [SEC S-1 Filing](https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm) · [SEC 10-K (FY2024)](https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm) · [Certificate of Incorporation](https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488dex31.htm) --- -## 3. Founders +## 2. Founding History & Founders -| Name | Role at Founding | Background | -|---|---|---| -| **Robert J. (RJ) Scaringe** | Sole Founder & CEO | B.S., Rensselaer Polytechnic Institute; M.S. and Ph.D. in Mechanical Engineering, MIT (Sloan Automotive Laboratory) | - -Scaringe is the sole founder listed in Rivian's SEC prospectus. He has led the company continuously since its inception in 2009 and remains its CEO and Chairman. +- **Founded:** June 2009, in Rockledge, Florida, by **Robert "RJ" Scaringe** — originally under the name **Mainstream Motors**. +- The company was **renamed Rivian Automotive in 2011**, refocusing on electric adventure vehicles and commercial delivery vans. +- **RJ Scaringe** holds a B.S. from Rensselaer Polytechnic Institute and an M.S. and Ph.D. in Mechanical Engineering from the MIT Sloan Automotive Laboratory. He was the sole founder and remains the only original founder credited. +- Scaringe was designated **Board Chair in March 2018**, consolidating executive and board leadership. -> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm +> Sources: [SEC S-1 Filing](https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm) · [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) · [Wikipedia – RJ Scaringe](https://en.wikipedia.org/wiki/RJ_Scaringe) · [Matrix BCG](https://matrixbcg.com/blogs/brief-history/rivian) --- -## 4. Headquarters & Key Locations +## 3. Headquarters & Major Locations -| Location | Function | +| Location | Purpose | |---|---| -| **Irvine, California** | Corporate Headquarters | -| **Normal, Illinois** | Primary vehicle assembly plant (former Mitsubishi plant) | -| Various R&D and engineering sites | Referenced in company filings and website | +| **14600 Myford Road, Irvine, CA 92606** | Principal Executive Offices (HQ) | +| **Normal, Illinois** | First manufacturing facility — R1T, R1S, Commercial Delivery Van (RCV) production; R2 production launched April 2026 | +| **Stanton Springs North, Morgan & Walton Counties, Georgia** | Future manufacturing campus (~1,800–2,000 acres); Phase 1 construction expected to begin 2026; customer production anticipated 2028; planned capacity expanded to 300,000 vehicles/year | -> **Source:** Rivian — Our Company -> https://rivian.com/our-company +> Sources: [Rivian Our Company](https://rivian.com/our-company) · [SEC 8-K (Mar 18, 2026)](https://www.sec.gov/Archives/edgar/data/1874178/000110465926031794/tm269292d1_8k.htm) · [Georgia.org – Rivian](https://georgia.org/rivian) · [Clayco – Rivian Manufacturing Plant](https://claycorp.com/project/rivian-manufacturing-plant) · [Investing.com – Georgia Capacity](https://ca.investing.com/news/stock-market-news/rivian-increases-georgia-plant-capacity-to-300000-vehicles-93CH-4601214) --- -## 5. Current CEO & Key Executives +## 4. Key Executives -| Name | Title | Tenure / Notes | +| Name | Title | Notes | |---|---|---| -| **Robert J. (RJ) Scaringe** | Chief Executive Officer & Chairman of the Board | CEO since founding (2009); Chairman since March 2018 | -| **Claire McDonough** | Chief Financial Officer | Listed as CFO in 2025 Proxy Statement | -| **Jiten Behl** | Chief Growth Officer | Listed in 2025 Proxy Statement | -| **Kjell Gruner** | Former Chief Commercial Officer | Resigned July 2024 | +| **Robert J. Scaringe** | Founder & Chief Executive Officer; Chairman of the Board | Founded company 2009; Board Chair since Mar 2018 | +| **Claire McDonough** | Chief Financial Officer | Also board member of Rivian and Volkswagen Group Technologies JV | +| **Javier Varela** | Chief Operations Officer | — | +| **Michael (Mike) Callahan** | Chief Administrative Officer & Chief Legal Officer | Also board member of Mind Robotics, Inc. | +| **Greg Revelle** | Chief Customer Officer | Appointed January 12, 2026 | -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +> Sources: [Rivian Our Company](https://rivian.com/our-company) · [Rivian 2026 Proxy (via StockTitan)](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [Rivian Newsroom – Greg Revelle](https://rivian.com/newsroom/article/rivian-hires-greg-revelle-chief-customer-officer) · [LinkedIn – Claire McDonough](https://www.linkedin.com/posts/claire-rauh-mcdonough-5291b946_rivian-starts-production-of-r2-suvs-deliveries-activity-7452764774544744448-igHq) --- -## 6. Board of Directors +## 5. Board of Directors -| Name | Role / Affiliation | -|---|---| -| **Robert J. (RJ) Scaringe** | Chairman & CEO (Executive Director) | -| **Peter Krawiec** | Independent Director; SVP, Worldwide Corporate & Business Development, Amazon | -| **Sanford Schwartz** | Independent Director | -| **Rose Marcario** | Independent Director (former CEO, Patagonia) | -| **Karen Boone** | Independent Director | -| Additional directors | Listed in the full 2025 Proxy Statement | +| Director | Classification | Notable Role | +|---|---|---| +| **Robert J. Scaringe** | Class I | Chair; Founder & CEO | +| **Karen Boone** | Class II | Lead Independent Director | +| **Peter Krawiec** | Class I | Independent Director | +| **Sanford Schwartz** | Class I | Independent Director | +| **Jay Flatley** | Class III | Independent Director | +| **John Krafcik** | Class III | Independent Director | +| **Aidan Gomez** | Class II | Joined April 21, 2025; AI expertise | -The Board has elected to maintain a combined CEO/Chair structure under Scaringe, a governance arrangement that has been disclosed and addressed in proxy filings. +**Note:** Rose Marcario resigned from the board, effective January 1, 2026. -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +> Sources: [Rivian 2026 Proxy (via StockTitan)](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [Rivian Newsroom – Aidan Gomez](https://rivian.com/en-NL/newsroom/article/aidan-gomez-joins-rivians-board-of-directors) · [Simply Wall St – Management](https://simplywall.st/stocks/us/automobiles/nasdaq-rivn/rivian-automotive/management) --- -## 7. IPO Details +## 6. Employee Headcount -| Field | Detail | -|---|---| -| **IPO Date** | November 2021 | -| **Exchange** | Nasdaq | -| **Ticker** | RIVN | -| **Offering Price** | $78.00 per share | -| **Shares Offered** | ~176 million Class A common shares (upsized offering) | -| **Proceeds** | Among the largest U.S. IPOs of 2021; valuation reached ~$100 billion at peak opening trading | - -In November 2021, Rivian completed its underwritten IPO of approximately 176 million shares of Class A common stock at a public offering price of $78.00 per share, making it one of the largest IPOs in U.S. history at the time. +| Year-End | Headcount | YoY Change | +|---|---|---| +| 2022 | ~14,120 | +35.5% | +| 2023 | 16,790 | +18.9% | +| 2024 | 14,861 | **–11.5%** | +| 2025 | 15,232 | +2.5% | -> **Source:** Rivian 10-Q Filing, Q3 2022 (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm -> *Excerpt: "In November 2021, we completed our underwritten IPO of approximately 176 million shares of Class A common stock at a public offering price of $78.00 per share."* +**Trend:** Headcount peaked in 2023, fell sharply in 2024 amid cost-reduction efforts, then recovered modestly in 2025 — the first net increase since 2023, driven in part by Volkswagen joint venture consolidation offsetting other workforce reductions. -> **Source:** Rivian Newsroom — IPO Pricing Announcement -> https://rivian.com/newsroom/article/rivian-announces-pricing-of-upsized-initial-public-offering +> Sources: [Macrotrends – Rivian Employee Count](https://www.macrotrends.net/stocks/charts/RIVN/rivian-automotive/number-of-employees) · [MLQ.ai – Rivian Employee Count](https://mlq.ai/stocks/RIVN/employee-count) · [Eletric-vehicles.com – 2025 Headcount](https://eletric-vehicles.com/rivian/rivian-increases-headcount-in-2025-as-vws-joint-venture-consolidation-offsets-layoffs/) --- -## 8. Major Investors & Ownership - -| Investor | Nature of Stake / Notes | -|---|---| -| **Amazon** | Significant shareholder; holds equity through convertible-note financing and subsequent conversions; also a major commercial customer (100,000 electric delivery vans ordered) | -| **Ford Motor Company** | Early equity investor; publicly sold the majority of its shares starting May 2022 | -| **T. Rowe Price** | Participated in 2021 convertible note financing rounds | -| **Global Oryx Company Limited** | Referenced as investor in the Sixth Amended Investors' Rights Agreement (Nov 2024) | -| **NV Holdings** | Referenced as investor in the Sixth Amended Investors' Rights Agreement (Nov 2024) | -| **Volkswagen Group** | Strategic investment/partnership; 2025 Proxy proposals addressed a potential share issuance to VW | +## 7. Corporate Structure & Ownership -> **Source:** Rivian S-1 Registration Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm - -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm - ---- +### Capital Structure +- **Dual-class stock:** Class A common stock (publicly traded on Nasdaq: RIVN) and Class B common stock (not listed). Class B shares carry additional voting rights. +- Rivian has **no parent company**; it is an independent public company. -## 9. Corporate Structure +### Major Shareholders (as of 2026 Proxy; beneficial owners ≥5% of Class A) -| Element | Detail | -|---|---| -| **Parent Company** | None — Rivian Automotive, Inc. is an independent, stand-alone public company | -| **Major Subsidiaries** | Various operating subsidiaries (undisclosed specific names in available public filings) | -| **Key Commercial Relationship** | Amazon (customer & investor) — 100,000 electric delivery vehicle contract | -| **Strategic Partnership** | Volkswagen Group (joint technology development; proposed equity component subject to 2025 shareholder vote) | +| Shareholder | Class A Ownership | Notes | +|---|---|---| +| **Amazon.com NV Investment Holdings LLC** | ~12.9% | Strategic customer (delivery van fleet) | +| **Volkswagen International America, Inc.** | ~11.7% | Strategic partner; subscription agreement signed Mar 18, 2026 | +| **Global Oryx Company Limited** | ~9.0% | Saudi Arabia–linked investment entity | +| **The Vanguard Group** | ~5.4% | Passive institutional investor | +| **BlackRock, Inc.** | ~4.0% (est.) | Institutional investor | +| **Robert J. Scaringe (Insider)** | ~1.2% Class A + Class B | ~3.8% combined voting power | -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +> Sources: [Rivian 2026 Proxy (via StockTitan)](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) · [Quiver Quant – Institutional Ownership](https://www.quiverquant.com/stock/RIVN/institutions/) · [SEC 8-K Mar 2026](https://www.sec.gov/Archives/edgar/data/1874178/000110465926031794/tm269292d1_8k.htm) --- -## 10. Employee Headcount +## 8. Subsidiaries & Affiliates -Exact current headcount was not disclosed in the specific filings reviewed. However, publicly available data and company communications indicate: +### Wholly-Owned Subsidiaries +- **Rivian Holdings, LLC** +- **Rivian Adventure Holdings I, LLC** +- **Hunter Excelsior Holdings, LLC** +- Additional entities listed in SEC Exhibit 21 filings. -- At its peak post-IPO period (2022–2023), Rivian employed approximately **14,000–16,000** employees globally. -- The company underwent multiple rounds of workforce reductions beginning in 2023 as it managed cash burn and production ramp challenges. -- Executive-level departures — including the resignation of Chief Commercial Officer Kjell Gruner in **July 2024** — signal ongoing organizational restructuring. +### Joint Ventures & Affiliated Entities +| Entity | Rivian Stake | Description | +|---|---|---| +| **Rivian and Volkswagen Group Technologies, LLC** | Joint venture | Technology co-development with Volkswagen Group; multiple entities including a Canada entity | +| **Also, Inc.** | ~35.3% | Micromobility spin-out from Rivian (2025); retains minority stake | +| **Mind Robotics, Inc.** | ~37.6% | Industrial robotics entity formed 2025; RJ Scaringe serves as Chairman; Mike Callahan is a board member | -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) — executive departures disclosed -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +> Sources: [SEC Exhibit 21 – Subsidiaries](https://www.sec.gov/Archives/edgar/data/1874178/000187417822000008/ex-211subsidiaries.htm) · [Rivian Legal Entities – JV](https://rivian.com/legal/jv-entities) · [Rivian 2026 Proxy (via StockTitan)](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) --- -## 11. Notable Corporate Governance Events +## 9. Recent Major Organizational Changes (2025–2026) | Date | Event | |---|---| -| **March 2018** | RJ Scaringe formally assumes role of Chairman of the Board in addition to CEO | -| **November 2021** | IPO on Nasdaq at $78/share; ~176M shares; one of largest U.S. IPOs of 2021 | -| **May 2022** | Ford Motor Company begins selling down its Rivian equity stake | -| **2022–2024** | Multiple convertible-note conversions and share issuances disclosed via SEC 8-K filings | -| **July 2024** | Chief Commercial Officer Kjell Gruner resigns | -| **November 2024** | Sixth Amended and Restated Investors' Rights Agreement executed, adding new investors (Global Oryx Company Limited, NV Holdings) | -| **2025** | 2025 Proxy Statement includes shareholder proposals on potential Volkswagen share issuance; Board retains combined CEO/Chair structure | +| **2025** | Spun out micromobility business into **Also, Inc.**; Rivian retains ~35.3% ownership. | +| **2025** | Formed **Mind Robotics, Inc.** (industrial robotics); Rivian retains ~37.6% ownership. | +| **April 21, 2025** | **Aidan Gomez** (AI expert) joined the Board of Directors. | +| **January 1, 2026** | **Rose Marcario** resigned from the Board of Directors. | +| **January 12, 2026** | **Greg Revelle** appointed Chief Customer Officer ahead of R2 launch. | +| **March 18, 2026** | Volkswagen subscription agreement finalized, giving VW an **~11.7% stake** in Rivian. | +| **April 2026** | **R2 production launched** at the Normal, IL facility. Q1 2026: 10,236 vehicles produced, 10,365 delivered. Full-year 2026 guidance: 62,000–67,000 deliveries. | +| **Ongoing** | Georgia manufacturing campus (Stanton Springs North) capacity expanded to 300,000 vehicles/year; Phase 1 construction to begin 2026; production expected 2028. | -> **Source:** Rivian 2025 Proxy Statement (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm - -> **Source:** Rivian Q3 2022 10-Q (SEC EDGAR) -> https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm +> Sources: [Rivian Newsroom – Greg Revelle](https://rivian.com/newsroom/article/rivian-hires-greg-revelle-chief-customer-officer) · [Rivian Newsroom – Aidan Gomez](https://rivian.com/en-NL/newsroom/article/aidan-gomez-joins-rivians-board-of-directors) · [Simply Wall St](https://simplywall.st/stocks/us/automobiles/nasdaq-rivn/rivian-automotive/management) · [SEC 8-K Mar 2026](https://www.sec.gov/Archives/edgar/data/1874178/000110465926031794/tm269292d1_8k.htm) · [Electrek – R2 Production](https://electrek.co/2026/04/22/rivian-r2-starts-production-tornado-deliveries-spring/) · [Rivian 2026 Proxy](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [Investing.com – Georgia Capacity](https://ca.investing.com/news/stock-market-news/rivian-increases-georgia-plant-capacity-to-300000-vehicles-93CH-4601214) --- -## 12. Source Index +## 10. Summary Snapshot -| # | Source | URL | -|---|---|---| -| 1 | Rivian S-1 Registration Statement — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | -| 2 | Rivian 2025 Proxy Statement (DEF 14A) — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm | -| 3 | Rivian Q3 2022 10-Q — SEC EDGAR | https://www.sec.gov/Archives/edgar/data/1874178/000187417822000059/rivn-20220930.htm | -| 4 | Rivian — Our Company (corporate website) | https://rivian.com/our-company | -| 5 | Rivian Newsroom — IPO Pricing Announcement | https://rivian.com/newsroom/article/rivian-announces-pricing-of-upsized-initial-public-offering | +| Attribute | Value | +|---|---| +| Legal Name | Rivian Automotive, Inc. | +| Founded | June 2009 (as Mainstream Motors); renamed Rivian 2011 | +| Incorporated | March 26, 2015 (Delaware) | +| IPO | November 10, 2021 (Nasdaq: RIVN) | +| HQ | Irvine, California | +| CEO | Robert J. Scaringe (Founder) | +| Employees (2025) | 15,232 | +| Major Strategic Shareholders | Amazon (~12.9%), Volkswagen (~11.7%), Global Oryx (~9.0%) | +| Key Products | R1T (pickup), R1S (SUV), R2 (upcoming SUV), Commercial Delivery Van (RCV) | +| Key JV | Rivian & Volkswagen Group Technologies, LLC | --- -*This profile was compiled from SEC EDGAR public filings, Rivian's official corporate website, and Rivian's investor newsroom. All factual claims are traceable to the source URLs listed above. Figures such as employee headcount should be verified against the most recent 10-K or 10-Q filing for precision.* +*This profile was compiled from public SEC filings, corporate press releases, proxy statements, and reputable financial data sources. All figures are as of the most recently available public disclosures (through May 2026).* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md index d9aa09f..ec6dfbc 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/financial-health.md @@ -1,326 +1,297 @@ -# Rivian Automotive (RIVN) — Financial Health Report -**Prepared:** 2025 | **Status:** Research workpaper — all figures cited to primary sources; estimates are clearly labelled. +# Rivian Automotive (NASDAQ: RIVN) — Financial Health Report +**Prepared:** April 2026 | **Data coverage:** Through FY 2025 (full-year results released) ---- - -## Table of Contents -1. [Company Overview](#1-company-overview) -2. [Pre-IPO Funding History](#2-pre-ipo-funding-history) -3. [IPO Details](#3-ipo-details) -4. [Post-IPO Stock Performance](#4-post-ipo-stock-performance) -5. [Revenue by Year](#5-revenue-by-year) -6. [Gross Margin by Year](#6-gross-margin-by-year) -7. [Net Losses by Year](#7-net-losses-by-year) -8. [Cash Burn Rate](#8-cash-burn-rate) -9. [Cash & Liquidity Position](#9-cash--liquidity-position) -10. [Capital Expenditure Plans](#10-capital-expenditure-plans) -11. [Debt Facilities & Credit Lines](#11-debt-facilities--credit-lines) -12. [Key Financial Partnerships](#12-key-financial-partnerships) -13. [Analyst Ratings & Price Targets](#13-analyst-ratings--price-targets) -14. [Key Risks & Considerations](#14-key-risks--considerations) +> **Methodology note:** Figures drawn from Rivian press releases, SEC filings, DOE announcements, and reputable financial aggregators. Where a figure comes from an aggregator (Yahoo Finance, Macrotrends, PitchBook, etc.) rather than a primary company filing, it is flagged as *[est.]* (estimated / third-party). All confirmed figures are sourced to Rivian IR/newsroom or SEC filings. --- -## 1. Company Overview +## 1. Pre-IPO Funding History -Rivian Automotive, Inc. (NASDAQ: RIVN) is an American electric vehicle manufacturer founded in 2009 by Robert Scaringe. The company produces the R1T pickup truck, R1S SUV, and a fleet of Electric Delivery Vans (EDVs) for Amazon. Rivian operates its primary manufacturing facility in Normal, Illinois, and is constructing a second "Rivian Normal 2" / "Stanton Springs North" facility in Georgia. The company went public in November 2021 in one of the largest U.S. IPOs ever. +Rivian secured approximately **10 rounds of private financing** from its founding through its 2021 IPO, raising well over **$10.5 billion** in private capital before going public. -**Confirmed status:** Private-to-public company; listed on NASDAQ as RIVN. Not yet profitable as of FY 2024 (though it achieved its first-ever positive quarterly gross profit in Q3 2024 and again in Q4 2024). +| Date | Amount | Lead Investor(s) | Notable Co-investors | Notes | +|------|--------|-----------------|----------------------|-------| +| 2011–2012 | Undisclosed | R.J. Scaringe / early angels | — | Early seed-stage Form D filings | +| Dec 2017 | Undisclosed | Sumitomo Corporation | — | Strategic investment | +| May 2018 | ~$200M | Standard Chartered | — | Debt financing | +| Feb 2019 | $700M | **Amazon** | — | Amazon led; strategic anchor investment | +| Apr 2019 | $500M | **Ford Motor Company** | — | Pre-money valuation ~$4.5B | +| Sep 2019 | $350M | **Cox Automotive** | — | Total 2019 raises: ~$1.55B | +| Dec 2019 | $1.3B | **T. Rowe Price** | Amazon, Ford | — | +| Jul 2020 | $2.5B | T. Rowe Price-associated investors | — | — | +| Jan 2021 | $2.65B | **T. Rowe Price** | Fidelity, Coatue, D1 Capital, BlackRock-managed funds, Amazon Climate Pledge Fund, Abdul Latif Jameel (ALJ), Soros Fund Mgmt | Implied valuation ~$28B *[est., Bloomberg report]* | +| Jul 2021 | $2.5B | **Amazon Climate Pledge Fund**, D1 Capital, Ford | T. Rowe Price, Coatue, Fidelity | Final pre-IPO round | ---- +**Sources:** +- Amazon $700M round: [NYT, Feb 15 2019](https://www.nytimes.com/2019/02/15/business/rivian-amazon.html) | [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) +- $2.65B Jan 2021 round: [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-announces-2-65-billion-investment-round) | [CNBC](https://www.cnbc.com/2021/01/19/ev-start-up-rivian-raises-2point65-billion-in-new-funding-round-led-by-t-rowe-price.html) +- Full funding timeline: [PitchBook – Rivian IPO Timeline](https://pitchbook.com/news/articles/rivian-ipo-timeline-electric-vehicles) | [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) -## 2. Pre-IPO Funding History +--- -Rivian raised substantial capital across multiple rounds before its IPO. Key confirmed rounds are listed below. Earlier seed/angel rounds are not publicly itemised in detail. +## 2. IPO Details -| Date | Round | Amount | Lead / Key Investors | Notes | -|------|-------|--------|----------------------|-------| -| 2011–2015 | Seed / Early | Not publicly disclosed | Undisclosed angels & family offices | Company operated in stealth | -| Jan 2019 | Strategic Investment | ~$500 M | **Ford Motor Company** | Ford initially planned to co-develop an EV platform with Rivian; partnership later dissolved on platform co-development but Ford retained equity | -| Feb 2019 | Strategic Investment | ~$700 M | **Amazon** | Accompanied by an order for 100,000 EDVs; Amazon's largest single corporate EV commitment at the time | -| Jun 2019 | Series D | $500 M | Cox Automotive | Confirmed strategic round | -| Dec 2019 | Series E | $1.3 B | T. Rowe Price, Fidelity, Baron Capital, Amazon, Ford (participation) | Valued Rivian at ~$3.5 B (estimate) | -| Jul 2020 | Series F | $2.65 B | T. Rowe Price (lead), Blackstone, Soros Fund Management, Coatue, Dragoneer | One of the largest private EV raises at the time | -| Jan 2021 | Series G | $2.65 B | T. Rowe Price, Fidelity, BlackRock, Dragoneer, Coatue, Amazon | Valued Rivian at ~$27.6 B (estimate) | -| Jul 2021 | Pre-IPO Private Round | **$2.5 B** | **Amazon Climate Pledge Fund, D1 Capital Partners** | Final private round; confirmed by Rivian newsroom | +| Item | Detail | +|------|--------| +| **IPO Pricing Date** | November 9, 2021 | +| **First Trading Day** | November 10, 2021 | +| **Exchange** | Nasdaq (ticker: **RIVN**) | +| **IPO Price** | **$78.00 per share** | +| **Shares Offered** | 153 million shares | +| **Gross Proceeds** | **~$11.9 billion** | +| **First-Day Close** | $100.73 per share | +| **First-Day Market Cap** | Just under **$100 billion** | +| **IPO Valuation (at offer price)** | ~$66.5 billion (Wikipedia) / ~$77 billion (PitchBook) | -**Total pre-IPO venture/private equity funding raised (confirmed + estimated):** ~$10.5 B+ +> **Note:** The difference in IPO valuation figures reflects whether fully diluted share count or basic shares outstanding is used. PitchBook's ~$77B figure is the more commonly cited enterprise-valuation basis. -> **Source — $2.5B July 2021 round (confirmed):** https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round -> **Source — Ford $500M investment:** https://media.ford.com/content/fordmedia/fna/us/en/news/2019/04/24/rivian.html -> **Source — Amazon order + investment background:** https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html -> **Note:** Series A–C amounts and exact dates are not publicly confirmed; pre-2019 rounds are not itemised in SEC filings. +**Sources:** +- [Rivian Investor Relations](https://rivian.com/investors) +- [PitchBook – Rivian IPO](https://pitchbook.com/news/articles/rivian-ipo-timeline-electric-vehicles) +- [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) --- -## 3. IPO Details +## 3. Market Capitalization (Historical & Current) -| Item | Detail | Status | -|------|--------|--------| -| IPO Date | **November 10, 2021** | Confirmed | -| Exchange | NASDAQ | Confirmed | -| Ticker | RIVN | Confirmed | -| IPO Price | **$78.00 per share** | Confirmed | -| Opening Trade Price | **$106.75 per share** | Confirmed | -| Shares Offered (primary + secondary) | ~153 million shares | Confirmed (S-1/A filing) | -| Gross Proceeds (approx.) | **~$11.9 B** (at $78 IPO price) | Confirmed — one of the 5 largest U.S. IPOs ever | -| Initial Market Cap at Open | **~$100 B+** | Confirmed | -| Lead Underwriters | Goldman Sachs, J.P. Morgan, Morgan Stanley | Confirmed (S-1 filing) | -| Greenshoe / Over-allotment | Up to ~23 M additional shares | Confirmed | - -> **Source — IPO opening price ($106.75):** https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html -> **Source — SEC S-1 registration statement:** https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm -> **Source — IPO details overview:** https://www.wsj.com/articles/rivian-ipo-2021-11655048 +| Period | Market Cap | +|--------|-----------| +| IPO Day (Nov 10, 2021) | ~$100B (first-day close) | +| Q2 2024 (Jun 30, 2024) | ~$13.4B *[est., Macrotrends]* | +| Q3 2024 (Sep 30, 2024) | ~$11.4B *[est., Macrotrends]* | +| Q4 2024 (Dec 31, 2024) | ~$13.5B *[est., Macrotrends]* | +| End of 2025 | ~$25.6B *[est., Macrotrends]* | +| March 27, 2026 | ~$21.7B *[est., Macrotrends]* | +| April 2026 (current) | ~$21.4B *[est., CompaniesMarketCap]* | + +**Sources:** +- [Macrotrends – RIVN Market Cap History](https://www.macrotrends.net/stocks/charts/RIVN/rivian-automotive/market-cap) +- [CompaniesMarketCap – Rivian](https://companiesmarketcap.com/rivian/marketcap) +- [PitchBook – Rivian Profile](https://pitchbook.com/profiles/company/88997-59) --- -## 4. Post-IPO Stock Performance +## 4. Revenue + +### Annual Revenue + +| Fiscal Year | Revenue | YoY Change | +|-------------|---------|-----------| +| FY 2023 | ~$4.43B *[est., Macrotrends]* | — | +| **FY 2024** | **$4.970B** ✅ | +12.1% | +| **FY 2025** | **$5.387B** ✅ | +8.4% | -| Metric | Value | Date / Period | Status | -|--------|-------|---------------|--------| -| IPO Price | $78.00 | Nov 10, 2021 | Confirmed | -| All-Time High | **~$179.47** | Nov 16, 2021 (6 days post-IPO) | Confirmed | -| All-Time Low (post-IPO) | ~$8.26 | May 2023 | Confirmed | -| 52-Week High (2024–2025) | ~$18.86 | 2024 range | Confirmed (Yahoo Finance) | -| 52-Week Low (2024–2025) | ~$8.26 | 2024 range | Confirmed (Yahoo Finance) | -| Recent Price (approx. early 2025) | **~$12–14** | Q1 2025 | Confirmed (Yahoo Finance) | -| Market Capitalisation (approx.) | **~$13–15 B** | Q1 2025 | Confirmed (Yahoo Finance) | -| Shares Outstanding (approx.) | ~1.0 B | Q4 2024 | Confirmed (10-K) | +### Q4 Revenue Detail -**Performance narrative:** RIVN surged to ~$179 within days of its IPO on enthusiasm for EV sector and Amazon backing. It then declined sharply through 2022–2023 amid broader EV sector de-rating, production shortfalls, and persistent losses. The stock stabilised and recovered modestly into 2024 on improving gross margins and the VW joint venture announcement. +| Quarter | Revenue | Notes | +|---------|---------|-------| +| Q4 2024 | Part of FY 2024 $4.97B total | Record quarter; driven by regulatory credit sales, R1 Tri-Motor ASP increases, software/services growth | +| Q4 2025 | **$1.286B** ✅ | −25.8% YoY; automotive revenues $839M (−45% YoY) driven by $270M decrease in regulatory credit sales, lower deliveries, higher EDV mix; software & services $447M (+109% YoY) | -> **Source — Yahoo Finance live quote and 52-week range:** https://finance.yahoo.com/quote/RIVN/ -> **Source — All-time high context:** https://www.cnbc.com/2021/11/16/rivian-rivn-stock-all-time-high.html -> **Source — SEC 10-K (shares outstanding):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +**Sources:** +- [Rivian FY 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) +- [Macrotrends – RIVN Revenue](https://www.macrotrends.net/stocks/charts/RIVN/rivian-automotive/revenue) --- -## 5. Revenue by Year +## 5. Gross Margin / Gross Profit (Loss) -All figures are confirmed from Rivian earnings releases and SEC filings unless noted. +This is a **critical milestone story** for Rivian: the company achieved its **first-ever positive gross profit in Q4 2024**. -| Fiscal Year | Revenue | YoY Change | Notes | -|-------------|---------|------------|-------| -| FY 2020 | $0 | — | Pre-production; no vehicles delivered | -| FY 2021 | **$55 M** | — | First deliveries began Q4 2021 | -| FY 2022 | **$1.658 B** | +2,914% | Ramping production in Normal, IL | -| FY 2023 | **$4.434 B** | +168% | ~50,122 vehicles delivered | -| FY 2024 | **~$4.97 B** | ~+12% | ~51,579 vehicles delivered (Q4 2024 gross profit confirmed) | +| Period | Consolidated Gross Profit | Automotive GP | Software & Services GP | +|--------|--------------------------|---------------|----------------------| +| FY 2024 | **$(1,200)M** (loss) | $(1,207)M | $7M | +| Q4 2024 | **$170M** ✅ *(first-ever positive)* | $110M | $60M | +| Q1 2025 | Positive (reported) | — | — | +| Q2 2025 | Positive (reported) | — | — | +| Q3 2025 | **$24M** ✅ | $(130)M | $154M | +| Q4 2025 | **$120M** ✅ | $(59)M | $179M | +| **FY 2025** | **$144M** ✅ | $(432)M | $576M | -> **Source — FY 2022 & FY 2023 revenue (Rivian 10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Source — Q4 & FY 2024 earnings release:** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results -> **Source — SEC EDGAR filings index for Rivian:** https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0001874178&type=10-K -> **Note:** FY 2024 total revenue figure is derived from Q4 2024 press release disclosures; confirm exact figure in 10-K filing. +> **Key insight:** The swing to positive consolidated gross profit in 2025 ($144M vs. −$1.2B in 2024) — a **>$1.3B improvement** — is almost entirely driven by the Volkswagen Group joint venture generating software and services revenue ($576M in FY 2025). Automotive gross margin remains negative. ---- +**Sources:** +- [Rivian FY 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) +- [Rivian Q3 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-third-quarter-2025-financial-results) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) -## 6. Gross Margin by Year +--- -Rivian reported large negative gross margins in its early production years due to high per-unit manufacturing costs, supply-chain constraints, and fixed overhead. A landmark positive gross profit was achieved for the first time in Q3 2024. +## 6. Net Losses -| Fiscal Year | Gross Profit / (Loss) | Gross Margin % | Notes | -|-------------|----------------------|----------------|-------| -| FY 2021 | ~($474 M) | N/M | Pre-scale, very limited deliveries | -| FY 2022 | ~($3.12 B) | ~(188%) | $6.4 B in COGS on $1.66 B revenue | -| FY 2023 | ~($1.83 B) | ~(41%) | Significant improvement on volume & cost-out | -| Q3 2024 | **+$~20 M** | **~+1%** | **First-ever positive quarterly gross profit** | -| Q4 2024 | **+$170 M** | ~+14% | Confirmed by Rivian newsroom | -| FY 2024 (full year) | Approx. negative overall, but strongly improving | — | Q1–Q2 2024 still negative; H2 2024 turned positive | +| Fiscal Year | Net Loss | Source | +|-------------|---------|--------| +| FY 2024 | **$(4.689)B** | Wikipedia / secondary aggregation; confirm vs. 10-K | +| FY 2025 | *Full-year GAAP net loss not explicitly quoted in press release; refer to 2025 Form 10-K* | [SEC 10-K filing](https://www.sec.gov/ix?doc=/Archives/edgar/data/0001874178/000187417826000008/rivn-20251231.htm) | +| TTM (trailing 12 months, as of mid-2025) | **$(3.85)B** *[est., Yahoo Finance Key Statistics]* | — | -> **Source — Q4 2024 gross profit of $170M (confirmed):** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results -> **Source — SEC earnings release Q4 2024 (press release exhibit):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm -> **Source — FY 2022 and FY 2023 gross loss (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Note:** FY 2021 and FY 2022 gross margin figures are derived from SEC 10-K cost of revenues line items; FY 2024 full-year gross profit/loss requires 10-K confirmation. +**Sources:** +- [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) (FY 2024) +- [Yahoo Finance – RIVN Key Statistics](https://finance.yahoo.com/quote/RIVN/key-statistics) +- [Rivian SEC 10-K 2025](https://rivian.com/investors) (for definitive FY 2025 figure) --- -## 7. Net Losses by Year +## 7. Cash Burn Rate -Rivian has incurred substantial net losses since inception. These are confirmed from 10-K filings and earnings releases. +| Metric | Value | Source | +|--------|-------|--------| +| Operating Cash Flow (TTM) | **$(635)M** *[est., Yahoo Finance]* | Yahoo Finance Key Stats | +| Operating Cash Flow (TTM, mid-2025) | **~$(640)M** *[est., Yahoo Finance aggregator]* | — | -| Fiscal Year | Net Loss | Loss per Share (basic) | Notes | -|-------------|----------|------------------------|-------| -| FY 2021 | ~($4.69 B) | — | Includes large stock-based comp at IPO | -| FY 2022 | **($6.75 B)** | ~($7.35) | Peak annual loss; ramping costs | -| FY 2023 | **($5.43 B)** | ~($5.87) | Improved but still large | -| FY 2024 | **~($4.7–4.9 B)** (estimate) | — | Continued improvement expected; confirm in 10-K | +> **Context:** Operating cash burn has improved materially. As Rivian's gross profit turned positive and the VW JV began generating cash-paying software services revenue, the trajectory is improving. Management guidance frames the combination of VW JV funding, DOE loan, and balance sheet cash as sufficient to fund operations through R2 ramp and beyond. -**Cumulative net loss since inception through FY 2023:** ~$17+ B - -> **Source — FY 2022 net loss ($6.75B) and FY 2023 net loss ($5.43B):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Source — Q4 2024 earnings press release:** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results -> **Note:** FY 2024 net loss is an estimate pending full 10-K; net losses include non-cash items (stock-based compensation, depreciation, restructuring). +**Sources:** +- [Yahoo Finance – RIVN Key Statistics](https://finance.yahoo.com/quote/RIVN/key-statistics) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) --- -## 8. Cash Burn Rate +## 8. Cash & Liquidity Position + +| Item | Amount | Source | +|------|--------|--------| +| Total Cash, Equivalents & Short-Term Investments | **~$7.1–7.2B** *[est., Yahoo Finance / aggregators]* | Yahoo Finance Key Stats (mrq) | +| Total Cash (mrq per Yahoo Finance) | **$7.09B–$7.18B** *[est.]* | Yahoo Finance | -"Cash burn" is approximated here by operating cash outflow and free cash flow (FCF = operating cash flow minus capex). Rivian has been working to reduce its burn rate as a top priority. +### Additional Liquidity Access (not yet drawn / conditional): +- **Volkswagen Group JV:** $1B funded in 2025 (confirmed); up to ~$10B in aggregate incremental capital contemplated between the VW JV and DOE loan. +- **DOE ATVM Loan:** Conditional commitment of up to **$6.57B** (announced Nov 25, 2024) to finance the Georgia manufacturing facility ("Project Horizon"). Drawdowns subject to milestones; **not yet drawn**. -| Period | Adjusted Operating Cash Outflow | Capital Expenditure | Free Cash Flow (approx.) | Notes | -|--------|---------------------------------|---------------------|--------------------------|-------| -| FY 2022 | ~($6.4 B) | ~($1.8 B) | ~($8.2 B) | Peak burn year | -| FY 2023 | ~($4.3 B) | ~($1.1 B) | ~($5.4 B) | Improving | -| FY 2024 (guidance) | Guided toward ~($1.7 B) adj. EBITDA loss | ~$1.1 B capex guided | Significant improvement | Management guided to reduce cash consumption substantially | +> Management statement (Feb 20, 2025): *"The capital associated with the Joint Venture and DOE loan, in addition to Rivian's current cash, cash equivalents, and short-term investments, is expected to provide the capital resources to fund operations through the ramp of R2 in Normal, as well as the midsize platform in Georgia — enabling a path to positive free cash flow and meaningful scale."* -> **Source — FY 2022 and FY 2023 cash flow statements (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Source — FY 2024 guidance (prior earnings call):** https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results -> **Note:** "Cash burn" figures are approximations derived from operating and investing sections of SEC cash flow statements. Adjusted EBITDA and free cash flow as defined by Rivian may differ; confirm in 10-K non-GAAP disclosures. +**Sources:** +- [Yahoo Finance – RIVN](https://finance.yahoo.com/quote/RIVN) +- [DOE – $6.57B Loan Announcement](https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility) +- [Rivian Newsroom – DOE Conditional Commitment](https://rivian.com/newsroom/article/rivian-receives-conditional-commitment-from-doe-for-6-6b-for-ga-plant) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) --- -## 9. Cash & Liquidity Position +## 9. Debt Obligations -| Item | Amount | Date | Status | -|------|--------|------|--------| -| Cash, Cash Equivalents & Short-Term Investments | **~$7.7 B** | End of FY 2023 (Dec 31, 2023) | Confirmed (10-K) | -| Cash, Cash Equivalents & Short-Term Investments | **~$6.7–7.2 B** (est.) | End of Q3 2024 (Sep 30, 2024) | Estimate — confirm in Q3 10-Q | -| Available Liquidity (cash + undrawn credit) | Expected to be supported by DOE loan & VW funding | Q4 2024 onward | Confirmed commitment (DOE + VW) | -| DOE Loan (committed, not yet fully drawn) | Up to **$6.6 B** | Closed Jan 16, 2025 | Confirmed | -| Volkswagen JV Investment | Up to **$5.8 B** through 2026 | Multi-tranche | Confirmed | +| Item | Amount | Notes | +|------|--------|-------| +| Total Debt (mrq) | **~$4.87–4.9B** *[est., Yahoo Finance]* | — | +| 2018 Standard Chartered facility | ~$200M | Original 2018 debt financing (historical) | +| DOE ATVM Loan (conditional) | Up to **$6.57B** | Conditional; undrawn as of announcements; project-specific for Georgia plant | +| Convertible notes / bond instruments | Details in 2025 Form 10-K debt footnote | Maturities not quoted in press releases | -**Total liquidity runway context:** With ~$7 B+ in cash at year-end 2023, plus access to the $6.6 B DOE facility and phased VW investment, Rivian has substantially shored up its balance sheet through at least 2026–2027. Management has indicated this funding is sufficient to reach profitability. +> For exact debt instrument composition, interest rates, and maturity schedule, refer to the **2025 Annual Report (Form 10-K)** filed with the SEC. -> **Source — DOE loan finalized ($6.6B, Jan 16, 2025):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement -> **Source — DOE announcement ($6.57B):** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility -> **Source — Conditional DOE loan commitment:** https://www.utilitydive.com/news/rivian-energy-department-loan-georgia-plant/734084/ -> **Source — FY 2023 cash position (10-K):** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Note:** Q3 and Q4 2024 exact cash balances should be verified in respective 10-Q and 10-K filings. +**Sources:** +- [Yahoo Finance – RIVN Key Statistics](https://finance.yahoo.com/quote/RIVN/key-statistics) +- [DOE LPO – Conditional Commitment](https://www.energy.gov/edf/articles/lpo-announces-conditional-commitment-rivian-support-construction-ev-manufacturing) +- [Rivian IR / SEC](https://rivian.com/investors) --- ## 10. Capital Expenditure Plans -### Normal, Illinois — Existing Factory -- **Capacity:** Rated for ~150,000 vehicles/year at full buildout -- **Current utilisation:** ~50,000–57,000 vehicles/year (FY 2023–2024 range) -- **Status:** Operational; ongoing efficiency investments underway -- Rivian retooled the Normal plant in H1 2024 for the next-generation R2/R1 platform, causing a ~6-week production halt - -### Stanton Springs North (Georgia) — New Factory -- **Location:** Morgan County, Georgia -- **Purpose:** Manufacture next-generation R2 mass-market SUV (starting ~$45,000) -- **Construction cost estimate:** ~$5 B (partially funded by DOE loan) -- **DOE loan for Georgia plant:** Up to **$6.6 B** (closed January 16, 2025) -- **Expected production start:** ~2028 (revised from earlier 2026 target due to capital prioritisation) -- **Planned capacity:** Up to 400,000 vehicles/year at full buildout - -### Historical & Guided Capex - -| Year | Capex Spent / Guided | -|------|----------------------| -| FY 2022 | ~$1.8 B | -| FY 2023 | ~$1.1 B | -| FY 2024 | ~$1.1 B (guided) | -| FY 2025+ | To be funded in part by DOE loan drawdowns | - -> **Source — DOE loan for Georgia plant (confirmed, $6.6B):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement -> **Source — DOE announcement:** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility -> **Source — Georgia plant and R2 background:** https://www.caranddriver.com/news/a46889665/rivian-georgia-plant-r2/ -> **Note:** Georgia plant start-of-production date and exact capex phasing are subject to revision; monitor Rivian investor relations updates. - ---- - -## 11. Debt Facilities & Credit Lines - -| Facility | Amount | Lender / Counterparty | Status | Confirmed? | -|----------|--------|-----------------------|--------|------------| -| **DOE Title XVII Loan** | Up to **$6.6 B** | U.S. Department of Energy (Loan Programs Office) | **Closed Jan 16, 2025** | ✅ Confirmed | -| **Amazon Credit Facility / EDV Advance Payments** | Not publicly disclosed (structurally embedded in EDV contract) | Amazon.com | Ongoing | Partial — details not public | -| **Volkswagen JV Capital Commitment** | Up to **$5.8 B** (multi-tranche, 2024–2026+) | Volkswagen Group | Active (tranches being drawn) | ✅ Confirmed | -| **Convertible Notes / Bonds** | Various tranches issued post-IPO (~$1.5–2.5 B aggregate, estimate) | Public bond market | Outstanding | ⚠️ Estimate — confirm in 10-K long-term debt schedule | -| **Revolving Credit Facility** | Not publicly disclosed at significant scale | TBD | Unknown / may be limited | ⚠️ Not confirmed | +| Item | Detail | +|------|--------| +| **Georgia Plant ("Project Horizon")** | New greenfield facility for R2 midsize platform; financed by DOE ATVM loan (up to $6.57B) + VW JV + balance sheet | +| **Normal, Illinois Plant** | R2 production to begin in Normal before Georgia plant is complete; ramp-up capex ongoing | +| **R2 Platform Launch** | Deliveries targeted for **Q2 2026** (confirmed in Q3 2025 earnings); expected to be highest-volume, lower-cost vehicle | +| **Quantified Capex Guidance** | Not explicitly quoted in press releases reviewed; refer to 2025 10-K and shareholder letters for specific annual capex figures | -**Key takeaway on debt:** The DOE loan is the single largest debt facility and is secured against the Georgia plant assets. It is a government-backed low-interest loan, reducing refinancing risk. The VW investment is structured as equity / joint venture capital, not debt. +> The DOE ATVM loan is the single largest committed capital resource for Rivian's manufacturing expansion. The VW JV also provides technology investment capital for the midsize electrical architecture platform. -> **Source — DOE loan closed (Jan 16, 2025, $6.6B):** https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement -> **Source — DOE announcement (Nov 2024, $6.57B):** https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility -> **Source — VW joint venture commitment ($5.8B):** https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 -> **Source — Rivian 10-K long-term debt schedule:** https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -> **Note:** Exact outstanding principal on convertible notes and any revolving credit balances must be confirmed in the FY 2024 10-K balance sheet. +**Sources:** +- [DOE – Project Horizon Loan](https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility) +- [Rivian Q3 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-third-quarter-2025-financial-results) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) --- -## 12. Key Financial Partnerships +## 11. Management Financial Guidance -### Amazon — Electric Delivery Van (EDV) Contract -- **Contract:** 100,000 EDVs ordered by Amazon; one of the largest commercial EV fleet orders in history -- **Deliveries to date:** Amazon had received thousands of vans by end of 2023; full 100,000-unit order targeted by ~2030 -- **Exclusivity:** Amazon holds a warrant for up to ~20% of Rivian equity and had an exclusivity arrangement on commercial vans (which expired/was modified) -- **Financial significance:** The EDV programme provides a stable, predictable revenue stream and backstop demand +### FY 2025 Guidance (issued Feb 20, 2025 with FY 2024 results): +- Expects **"modest gross profit for full-year 2025"** ✅ *(achieved: $144M)* +- Highlighted R2 bill-of-materials (BOM) cost efficiency as key driver +- Noted external risks: policy changes (EV tax credits) and demand dynamics -> **Source — Amazon 100,000 EDV order announcement:** https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html -> **Source — Amazon EDV programme update:** https://www.aboutamazon.com/news/transportation/rivian-electric-delivery-vans +### Deliveries: +- **FY 2025 actual deliveries:** 42,247 vehicles +- **FY 2026 delivery guidance:** 62,000–67,000 vehicles (per secondary compilation; includes R2 launch contribution) +- **R2 deliveries:** Expected to begin **Q2 2026** -### Volkswagen Group — Joint Venture (Technology & Capital) -- **Announced:** June 2024 -- **VW committed investment:** Up to **$5.8 B** through 2026 (phased tranches) -- **Structure:** Joint venture to co-develop next-generation electrical architecture and software platform; Rivian's zonal computing and software stack to be shared with VW/Audi/Porsche brands -- **Initial tranche:** $1 B invested at close (2024) -- **Strategic significance:** Validates Rivian's software/technology stack; provides substantial non-dilutive capital and a route to volume scale for its technology +### Liquidity/Going Concern: +- VW JV + DOE loan + balance sheet cash "expected to provide capital resources to fund operations through R2 ramp in Normal and midsize platform in Georgia" (confirmed management statement) -> **Source — VW joint venture investment ($5.8B):** https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 -> **Source — VW-Rivian JV announcement (June 2024):** https://rivian.com/newsroom/article/rivian-and-volkswagen-group-to-form-joint-venture -> **Note:** VW JV investment tranches and conditions are subject to milestones; confirm latest tranche status in Rivian investor relations materials. +**Sources:** +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) +- [Rivian FY 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) +- [Rivian Q3 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-third-quarter-2025-financial-results) --- -## 13. Analyst Ratings & Price Targets +## 12. Analyst Estimates & Price Targets -As of early 2025, Wall Street analyst sentiment on RIVN is mixed but leaning cautiously optimistic given improving margins and secured funding. +> All figures below are **third-party estimates**, not company guidance. Subject to change. -| Metric | Value | Notes | -|--------|-------|-------| -| Consensus Rating | **Hold / Neutral** (approx.) | Majority of analysts at Hold or equivalent | -| Average 12-Month Price Target | **~$14–16** (approx.) | Based on aggregated analyst estimates, early 2025 | -| Bull Case Price Target | **~$25–30** | Bears on technology optionality and VW ramp | -| Bear Case Price Target | **~$7–9** | Bears on execution risk, cash burn, macro | -| Number of Analysts Covering | ~25–30 analysts | Major sell-side coverage | +| Source | # Analysts | Avg. 12-Mo Price Target | Range | Rating | +|--------|-----------|------------------------|-------|--------| +| MarketBeat | 26 | **$18.05** | Up to $25.00 | — | +| Yahoo Finance | 19–26 | **$14.26** | $10–$21 | — | +| Yahoo Finance (Apr 2026 article) | — | $19.74 (one analyst) | — | "50% confidence" | -**Notable analyst views (general themes):** -- **Bulls** cite: First-ever positive gross profit milestones, secured $6.6 B DOE loan, $5.8 B VW JV, R2 platform as potential mass-market catalyst -- **Bears** cite: Still-large net losses, execution risk on Georgia plant timeline, competitive pressure from Tesla and Chinese OEMs, stock dilution risk +### Revenue Consensus *[est., Yahoo Finance]*: +| Year | Consensus Revenue Estimate | +|------|---------------------------| +| FY 2025 | ~$5.24B *(actual: $5.387B — beat consensus)* | +| FY 2026 | ~$7.35B | -> **Source — Analyst consensus data (aggregated):** https://finance.yahoo.com/quote/RIVN/analysts/ -> **Source — Rivian analyst coverage overview:** https://stockanalysis.com/stocks/rivn/forecast/ -> **Note:** Price targets and ratings change frequently. Always verify current consensus on Bloomberg, FactSet, or Yahoo Finance before relying on these figures for investment decisions. +### EPS: Negative but improving trajectory per consensus. ---- +**Sources:** +- [MarketBeat – RIVN Forecast](https://www.marketbeat.com/stocks/NASDAQ/RIVN/forecast) +- [Yahoo Finance – RIVN Analysis](https://finance.yahoo.com/quote/RIVN/analysis/) +- [Yahoo Finance – RIVN Quote](https://finance.yahoo.com/quote/RIVN) -## 14. Key Risks & Considerations +--- -1. **Execution risk:** Achieving and sustaining positive gross margins across all production quarters is not yet proven -2. **Georgia plant timeline:** Delays to R2 production start could push profitability further out -3. **DOE loan risk:** The DOE loan is contingent on meeting production and financial milestones; political changes (e.g., new administration priorities) could affect terms -4. **Competition:** Tesla (Cybertruck), GM (Silverado EV), Ford (F-150 Lightning), and Chinese entrants all compete in Rivian's segments -5. **Dilution:** Rivian has ~1 B shares outstanding; future capital raises could dilute existing shareholders -6. **Amazon concentration:** A significant portion of revenue is tied to Amazon EDV orders; any reduction in Amazon's fleet expansion plans would be material -7. **Interest rate environment:** High rates increase cost of capital and pressure EV demand financing +## 13. Key Financial Partnerships & Banking Relationships + +| Partner | Nature | Financial Impact | +|---------|--------|-----------------| +| **Volkswagen Group** | JV: "Rivian VW Group Technology" — Rivian provides vehicle electrical architecture & software development services | $576M software & services gross profit in FY 2025; $1B funded by VW in 2025; up to ~$10B total capital access (VW JV + DOE combined) | +| **Amazon** | Anchor equity investor (lead in 2019); commercial customer (100,000 EDV order) | Revenue from EDV deliveries; strategic demand anchor | +| **Ford Motor Company** | Strategic equity investor (2019, 2021 rounds); exited significant stake post-IPO | Historical capital provider; technology partnership wound down | +| **DOE / LPO** | ATVM loan — conditional commitment up to **$6.57B** for Georgia plant | Largest single debt facility; project-specific drawdowns | +| **T. Rowe Price** | Lead investor in Dec 2019, Jan 2021, Jul 2021 rounds | Key institutional backer pre-IPO | +| **D1 Capital Partners** | Co-lead in Jul 2021 round | Key late-stage private capital | +| **Fidelity, Coatue, BlackRock-managed funds, ALJ, Soros** | Co-investors in 2021 rounds | Institutional credibility pre-IPO | +| **Standard Chartered** | 2018 debt facility (~$200M) | Historical banking relationship | +| **Cox Automotive** | Strategic investor (Sep 2019, $350M) | Industry strategic; remarketing and services alignment | + +**Sources:** +- [Rivian FY 2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) +- [Rivian FY 2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) +- [DOE Loan Announcement](https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility) +- [Wikipedia – Rivian](https://en.wikipedia.org/wiki/Rivian) +- [Rivian IR](https://rivian.com/investors) --- -## Sources Index - -| # | URL | Description | -|---|-----|-------------| -| 1 | https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round | $2.5B July 2021 pre-IPO round confirmed | -| 2 | https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results | Q4 & FY 2024 earnings release (Q4 gross profit $170M) | -| 3 | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm | Rivian FY 2024 10-K (SEC EDGAR) | -| 4 | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000004/ex-991pressrelease4q24earn.htm | Q4 2024 earnings press release exhibit (SEC) | -| 5 | https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | Rivian S-1 IPO registration statement (SEC) | -| 6 | https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html | IPO opening price $106.75 (CNBC) | -| 7 | https://www.energy.gov/edf/articles/doe-announces-657-billion-loan-rivian-support-construction-ev-manufacturing-facility | DOE $6.57B loan announcement | -| 8 | https://rivian.com/newsroom/article/rivian-and-us-department-of-energy-finalize-loan-agreement | DOE loan closed Jan 16, 2025 ($6.6B) | -| 9 | https://www.utilitydive.com/news/rivian-energy-department-loan-georgia-plant/734084/ | Conditional DOE loan commitment ($6.6B, Nov 2024) | -| 10 | https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 | VW-Rivian JV $5.8B update | -| 11 | https://rivian.com/newsroom/article/rivian-and-volkswagen-group-to-form-joint-venture | VW-Rivian JV announcement | -| 12 | https://finance.yahoo.com/quote/RIVN/ | RIVN live stock quote, 52-week range, market cap | -| 13 | https://finance.yahoo.com/quote/RIVN/analysts/ | Analyst ratings and price targets | -| 14 | https://stockanalysis.com/stocks/rivn/forecast/ | Aggregated analyst forecasts | -| 15 | https://www.cnbc.com/2019/09/19/amazon-orders-100000-electric-delivery-vans-from-rivian.html | Amazon 100,000 EDV order | -| 16 | https://www.aboutamazon.com/news/transportation/rivian-electric-delivery-vans | Amazon EDV programme overview | -| 17 | https://www.sec.gov/cgi-bin/browse-edgar?action=getcompany&CIK=0001874178&type=10-K | SEC EDGAR — all Rivian 10-K filings | +## Summary Scorecard + +| Dimension | Status | Signal | +|-----------|--------|--------| +| **Funding History** | ~$10.5B+ raised pre-IPO; $11.9B IPO | ✅ Well-capitalized | +| **Revenue Growth** | $4.97B (2024) → $5.39B (2025); +8.4% | ✅ Growing, but slowed | +| **Gross Profit** | First positive FY: 2025 ($144M) | ⚠️ Positive but thin; automotive still negative | +| **Net Loss** | ~$(4.7)B (2024); improving but deeply negative | 🔴 Material ongoing losses | +| **Cash Burn** | ~$(635)M operating cash outflow (TTM) | ⚠️ Improving; still negative FCF | +| **Liquidity** | ~$7.1B cash + $6.57B conditional DOE loan | ✅ Strong near-term runway | +| **Debt** | ~$4.9B total debt | ⚠️ Significant but manageable vs. liquidity | +| **Capex/Growth** | Georgia plant + R2 ramp; R2 deliveries from Q2 2026 | ✅ Clear growth catalyst | +| **Partnerships** | VW JV (transformative); Amazon (demand anchor) | ✅ Strategically differentiated | +| **Market Cap** | ~$21B (Apr 2026) vs. ~$100B at IPO peak | 🔴 ~80% decline from peak | --- -*This document is a research workpaper prepared for analytical purposes. All figures should be independently verified against primary SEC filings and official company disclosures before use in investment decisions. Figures marked (est.) or (estimate) are approximations derived from public data and analyst consensus; they are not confirmed by Rivian's official reporting.* +*Report prepared using Rivian Automotive press releases, SEC filings, DOE announcements, and third-party aggregators. All estimates from third-party sources are clearly labeled. Readers should verify aggregator figures against Rivian's official 2025 Form 10-K (SEC EDGAR) for final precision on debt composition, net income, and capex.* + +*Primary SEC Filing: [Rivian 2025 Form 10-K](https://www.sec.gov/ix?doc=/Archives/edgar/data/0001874178/000187417826000008/rivn-20251231.htm)* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md index d4f9439..1cc7fb8 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/litigation-regulatory.md @@ -1,269 +1,333 @@ -# Rivian Automotive, Inc. — Litigation & Regulatory Workpaper -**Prepared by:** Legal & Compliance Research — AI-Assisted EDD/KYC Review -**Subject:** Rivian Automotive, Inc. (NASDAQ: RIVN) -**Date of Research:** 2025 (reflects information available as of mid-2025) -**Scope:** Securities litigation, product liability, employment disputes, IP disputes, SEC matters, NHTSA safety recalls, other regulatory actions, sanctions screening, CFIUS, and KYC/EDD escalation flags +# Litigation & Regulatory Profile: Rivian Automotive, Inc. + +**Prepared:** May 2026 +**Analyst:** Legal & Compliance Research — AI-Assisted +**Sources:** SEC filings (EDGAR), NHTSA recall portal, OSHA IMIS, court dockets, news sources (citations inline) +**Scope:** Active and recent lawsuits; SEC/regulatory matters; NHTSA recalls; OSHA enforcement; sanctions screening; environmental compliance; KYC/EDD escalation flags. --- -> **⚠ KYC/EDD ESCALATION SUMMARY (Read First)** -> -> | Flag | Category | Severity | -> |------|----------|----------| -> | $250M securities class action settlement (pending final court approval) | Securities Litigation | **HIGH — Escalate** | -> | Tesla v. Rivian trade secret lawsuit settled on eve of trial (March 2025) | IP / Trade Secret | **MEDIUM** | -> | Executive harassment lawsuits (multiple; at least one settled) | Employment | **MEDIUM** | -> | NHTSA recall — Highway Assist software defect (24,214 vehicles, Sep 2025) | Product Safety | **MEDIUM** | -> | NHTSA recall — Seat-belt retractor defect (Jan 2026, units TBD) | Product Safety | **MEDIUM** | -> | Sanctions / CFIUS: No designations or reviews identified | Sanctions | **LOW — No Flag** | -> | SEC enforcement actions: None identified beyond settlement disclosure | Regulatory | **LOW — Monitor** | +## ⚠️ KYC/EDD Escalation Summary + +| # | Item | Risk Level | Status | +|---|------|------------|--------| +| 1 | Securities class action — $250M proposed settlement (Crews v. Rivian) | **HIGH** | Pending final court approval (hearing: May 15, 2026) | +| 2 | OSHA workplace fatality at Rivian warehouse, Normal, IL (Mar 5, 2026) | **HIGH** | OSHA fatality investigation open; penalties TBD | +| 3 | Pattern of OSHA serious citations (2022–2024) at Normal, IL plant | **MEDIUM** | Ongoing; some citations downgraded/dismissed | +| 4 | Trade secret suit (Tesla v. Rivian) | **LOW** | Settled and dismissed Dec 2024 / Jan 2025 | +| 5 | Georgia plant zoning litigation | **LOW** | Dismissed; appellate affirmance Sep 2024 | +| 6 | Product liability suit — Young v. Rivian Automotive (C.D. Ill.) | **MEDIUM** | Active; status pending | +| 7 | NHTSA recalls — 21+ recalls since 2022, incl. safety-critical items | **MEDIUM** | Ongoing; no open NHTSA defect investigations disclosed | +| 8 | Sanctions exposure (OFAC/EU/UN) | **NONE** | No designations found | +| 9 | EPA / environmental enforcement | **LOW** | No enforcement actions disclosed; permitting ongoing | + +> **EDD Recommendation:** Escalate due to the pending $250M securities class action settlement (final approval outstanding), the open OSHA fatality investigation, and the pattern of serious workplace safety violations. Monitor the settlement hearing outcome on May 15, 2026, and any OSHA citation/penalty determination following the March 2026 fatality. --- -## 1. Securities Class Action Litigation +## 1. Active and Recent Lawsuits -### 1.1 Crews v. Rivian Automotive, Inc. — Federal Securities Class Action +### 1.1 Securities Class Action — Crews v. Rivian Automotive, Inc. | Field | Detail | -|-------|--------| -| **Full Case Name** | Charles Larry Crews, Jr., et al. v. Rivian Automotive, Inc., et al. | -| **Case Number** | 2:22-cv-01524-JLS-E | -| **Court** | U.S. District Court, Central District of California | -| **Lead Plaintiff** | Charles Larry Crews, Jr. | -| **Class Period** | IPO (November 2021) through the period of alleged corrective disclosures | -| **Filed** | 2022 | -| **Allegations** | Plaintiffs alleged that Rivian made materially false and misleading statements about its business prospects, financial condition, and production capabilities in its November 2021 IPO filings and subsequent disclosures, causing investors to purchase shares at inflated prices. | -| **Settlement Amount** | **$250,000,000 cash** | -| **Settlement Announced** | October 23, 2025 | -| **Settlement Status** | Stipulation & Settlement Agreement executed; **final court approval pending** as of research date | -| **Beneficiaries** | Class A shareholders who purchased during the class period | - -**EDD Note:** The settlement was reached after an October 2024 mediation failed and litigation continued into 2025. The $250M quantum is material. Reviewers should confirm whether final court approval has been granted and monitor for any objections or appeals that could delay or unwind the settlement. +|---|---| +| **Case Name** | *Charles Larry Crews, Jr. v. Rivian Automotive, Inc., et al.* | +| **Court** | U.S. District Court, C.D. California | +| **Case No.** | 2:22-cv-01524-JLS-E | +| **Filed** | March 7, 2022 (three related suits consolidated) | +| **Class Certification** | July 17, 2024 | +| **Lead Plaintiff Counsel** | Kessler Topaz Meltzer & Check, LLP | +| **Settlement Amount** | $250,000,000 cash | +| **Preliminary Approval** | December 18, 2025 | +| **Settlement Hearing** | May 15, 2026 at 10:30 a.m. PT (Judge Josephine L. Staton) | +| **Claims** | Securities Act of 1933 and Exchange Act of 1934; alleged material misstatements/omissions regarding vehicle production costs and pricing increases disclosed shortly after the November 2021 IPO | + +**Background:** Rivian conducted its IPO on November 10, 2021 at $78/share (raising ~$13.7B). In March 2022, it announced significant price increases for pre-ordered R1T/R1S vehicles, triggering a sharp stock decline. Plaintiffs alleged Rivian and its officers knew or were reckless about underlying cost structures and misled investors in the IPO registration statement and subsequent communications. The Court denied motions to dismiss in July 2023. Rivian agreed to the $250M settlement in October 2025. **Sources:** -- Settlement website: https://www.riviansecuritieslitigation.com/ -- Stipulation & Settlement Agreement (PDF): https://www.riviansecuritieslitigation.com/media/6320314/2025-10-23_stipulation___settlement_agreement.pdf -- Long-form notice (PDF): https://www.riviansecuritieslitigation.com/media/6580480/rivian_automotive_securities_settlement_-_long-form_notice.pdf -- SEC Form 8-K / press release: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm +- Long-form settlement notice: https://www.riviansecuritieslitigation.com/media/6580480/rivian_automotive_securities_settlement_-_long-form_notice.pdf +- Kessler Topaz announcement: https://www.ktmc.com/news/kessler-topaz-achieves-250-million-settlement-in-rivian-ipo-suit +- CFO Dive coverage: https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780 - Reuters: https://www.reuters.com/sustainability/boards-policy-regulation/rivian-agrees-pay-250-million-settle-ipo-fraud-lawsuit-2025-10-23/ -- CFO Dive: https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780/ -- Yahoo Finance: https://finance.yahoo.com/news/rivian-agrees-250m-settlement-2022-101320857.html +- TechCrunch: https://techcrunch.com/2025/10/24/rivian-will-pay-250m-to-settle-lawsuit-over-r1-price-hike/ +- Yahoo Finance: https://finance.yahoo.com/news/rivian-pay-250m-settle-lawsuit-144301808.html +- SEC Q1 2025 10-Q (confirming consolidated case): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000026/rivn-20250331.htm --- -### 1.2 State Court Securities Action — California Appellate Dismissal +### 1.2 Trade Secret Litigation — Tesla, Inc. v. Rivian Automotive, Inc. | Field | Detail | -|-------|--------| -| **Action Type** | Putative securities class action under California state law | -| **Defendants** | Rivian Automotive, Inc. and IPO underwriters | -| **Court** | California Court of Appeal, Third District | -| **Decision Date** | April 25, 2025 | -| **Outcome** | **Appellate court upheld dismissal** — affirmed the lower court's ruling in favor of Rivian and its underwriters | -| **Defense Counsel** | Freshfields (for Rivian); Orrick (for underwriters) | - -**EDD Note:** This action is resolved in Rivian's favor. No further exposure identified from this matter. +|---|---| +| **Case Name** | *Tesla, Inc. v. Rivian Automotive, Inc.* | +| **Court** | California Superior Court, Santa Clara County | +| **Filed** | July 2020 | +| **Allegations** | Misappropriation of trade secrets related to battery technology and other proprietary information, allegedly carried by former Tesla employees hired by Rivian | +| **Trial Setting** | March 2025 (vacated upon settlement) | +| **Resolution** | Settlement reached; dismissals filed mid-December 2024; case closed prior to March 2025 trial | +| **Settlement Terms** | Undisclosed | **Sources:** -- Orrick firm announcement: https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action -- The Recorder / Law.com: https://www.law.com/therecorder/2025/04/25/freshfields-orrick-score-securities-case-defense-win-for-rivian-in-calif-appellate-court-/ +- Yahoo Finance: https://finance.yahoo.com/news/tesla-rivian-agree-settle-four-133700282.html +- Proskauer Trade Secrets Blog: https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip +- Brand Protection Law: https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ +- CBT News: https://www.cbtnews.com/tesla-rivian-near-settlement-in-lawsuit-over-alleged-trade-secret-theft --- -## 2. Intellectual Property — Trade Secret Litigation - -### 2.1 Tesla, Inc. v. Rivian Automotive, Inc. +### 1.3 Georgia Plant Zoning Litigation | Field | Detail | -|-------|--------| -| **Parties** | Tesla, Inc. (Plaintiff) v. Rivian Automotive, Inc. (Defendant) | -| **Nature of Claim** | Misappropriation of trade secrets related to electric vehicle technology and manufacturing processes | -| **Duration** | Approximately four years of active litigation | -| **Court** | Federal court (specific district not confirmed in sources) | -| **Trial Date Set** | March 2025 | -| **Outcome** | **Settled before trial** in early 2025; terms of settlement are confidential | +|---|---| +| **Court** | Morgan County (GA) Superior Court; Georgia Court of Appeals | +| **Filed** | January 27, 2023 | +| **Plaintiffs** | Six individuals (local residents/landowners) | +| **Claims** | Declaratory and injunctive relief; alleged that Rivian's Stanton Springs North manufacturing project is subject to local/state zoning laws; sought enforcement of those laws against Morgan County | +| **Trial Court Ruling** | Motions to dismiss granted January 2, 2024 | +| **Appellate Ruling** | Georgia Court of Appeals affirmed dismissal September 30, 2024 | +| **Related Suit** | Second related action stayed April 4, 2024; dismissed without prejudice January 30, 2025 | +| **Status** | Closed | + +**Source:** +- Rivian 2024 Form 10-K (Note 16, Commitments and Contingencies): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm + +--- -**Background:** Tesla alleged that former Tesla employees who joined Rivian took proprietary trade secrets concerning EV drivetrain, battery, and manufacturing technology. The case proceeded through extensive discovery and pretrial proceedings before the parties reached a confidential settlement on the eve of trial. +### 1.4 Employment Discrimination — Former Executive (California) -**EDD Note:** Medium-severity flag. The confidential settlement prevents full assessment of admissions or financial exposure. The four-year dispute and near-trial resolution suggest substantive contested issues. Reviewers should note that Rivian's talent-acquisition practices from competitors were central to the claim. +| Field | Detail | +|---|---| +| **Court** | California state court (exact court not publicly confirmed) | +| **Filed** | ~Early 2022 | +| **Plaintiff** | Former Rivian executive (gender identified as female) | +| **Claims** | Gender discrimination and retaliation under California law | +| **Status** | Reported in February 2022 NYT article; final resolution not publicly disclosed | **Sources:** -- Proskauer blog (EV Trade Secrets series): https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip -- Brand Protection Law: https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ +- New York Times: https://www.nytimes.com/2022/02/09/business/rivian-stock-electric-cars.html +- Rudy Exelrod Zieff & Lowe (plaintiff's firm): https://rezlaw.com/we-can-help/case-results/ --- -## 3. Employment & Labor Disputes - -### 3.1 Executive Harassment and Hostile Work Environment Lawsuits +### 1.5 Product Liability — Young v. Rivian Automotive, LLC | Field | Detail | -|-------|--------| -| **Parties** | Former Rivian employees (plaintiffs) v. Rivian Automotive and named executives | -| **Allegations** | Sexual harassment, gender-based discrimination, wrongful termination, and hostile work environment | -| **Courts** | Various state courts (specific jurisdictions not disclosed in sources) | -| **Reported** | December 20, 2024 (TechCrunch investigative report) | -| **Status** | Multiple suits; at least one settled in August 2024 following arbitration; others remain pending | +|---|---| +| **Case Name** | *Young v. Rivian Automotive, LLC* | +| **Court** | U.S. District Court, C.D. Illinois | +| **Case No.** | 1:25-cv-01231 | +| **Filed** | 2025 | +| **Claims** | Personal injury related to a Rivian vehicle; specific defect allegations not publicly summarized | +| **Status** | Active | -**EDD Note:** Medium flag. The December 2024 TechCrunch report noted these were "previously unreported" lawsuits, suggesting Rivian had not made proactive public disclosures. Reviewers should check whether material employment litigation has been disclosed in Rivian's SEC filings (10-K, 10-Q) under legal proceedings. +> **Note:** No multi-district litigation (MDL) or class actions focused specifically on Rivian vehicle product defects have been identified as of the research date. Rivian's 2025 10-Q acknowledges exposure to "labor, consumer-protection, and tort/personal-injury claims" without itemizing additional product-defect suits. -**Sources:** -- TechCrunch investigative report (Dec 20, 2024): https://techcrunch.com/2024/12/20/rivian-executives-accused-of-harassment-in-previously-unreported-lawsuits/ +**Source:** +- Justia docket: https://dockets.justia.com/docket/illinois/ilcdce/1:2025cv01231/96551 +- Rivian Q1 2025 10-Q: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000026/rivn-20250331.htm --- -## 4. Vehicle Safety Recalls (NHTSA) +## 2. SEC Filings, Enforcement Actions & Investigations -### 4.1 Recall — Hands-Free Highway Assist Software Defect (September 2025) +| Item | Detail | +|---|---| +| **Annual Report (10-K)** | 2024 Form 10-K filed February 24, 2025; Legal Proceedings section (Note 16) discloses Georgia plant litigation and standard exposure language | +| **Wells Notices / Subpoenas** | None disclosed in 10-K or 10-Q filings reviewed | +| **Formal SEC Investigation** | None publicly disclosed | +| **Key Risk Factors Disclosed** | Product liability, recalls, workforce safety, litigation costs, regulatory compliance, price/cost disclosure risks (as validated by the Crews settlement) | -| Field | Detail | -|-------|--------| -| **NHTSA Recall Date** | September 12, 2025 | -| **Affected Vehicles** | Rivian R1S and R1T, Model Year 2025 | -| **Units Recalled** | **24,214** | -| **Defect Description** | Software defect in the hands-free Highway Assist system may cause the system to misidentify a lead vehicle, potentially leading to unintended changes in vehicle speed/acceleration control — a potential safety hazard | -| **Remedy** | Over-the-air (OTA) software update; no dealer visit required | -| **Status** | Remedy deployed via OTA | - -**Sources:** -- Reuters: https://www.reuters.com/business/autos-transportation/rivian-recalls-over-24000-us-vehicles-over-highway-assist-software-defect-nhtsa-2025-09-12/ -- Recharged.com recall summary: https://recharged.com/articles/2025-rivian-r1s-recalls-list +**Source:** +- Rivian 2024 10-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm --- -### 4.2 Recall — Seat-Belt Retractor Defect (January 2026) +## 3. Regulatory Actions -| Field | Detail | -|-------|--------| -| **NHTSA Recall Date** | January 15, 2026 | -| **Affected Vehicles** | Rivian R1S and R1T, Model Years 2022–2024 | -| **Units Recalled** | Not publicly disclosed as of research date | -| **Defect Description** | Improperly secured seat-belt retractor, which may compromise occupant restraint in a crash event | -| **Remedy** | Inspection and replacement of the defective retractor assembly | -| **Status** | Recall active; remedy in process | +### 3.1 OSHA — Normal, IL Manufacturing Plant -**Sources:** -- Recharged.com recall summary: https://recharged.com/articles/2025-rivian-r1s-recalls-list -- Rivian official recall information page: https://rivian.com/support/article/recall-information +| Period | Detail | +|---|---| +| **2021 Referral Inspection** | OSHA Inspection No. 1515437.015; opened Feb 19, 2021; closed Jul 8, 2021; Peoria Area Office; safety referral; specific citations/penalties not posted | +| **Nov 2022 Employee Complaints** | At least 12 employees filed complaints; OSHA opened 7 investigations; 4 "serious" citations issued by Nov 2022, including 3 in a single cluster | +| **Jan 2023 – Oct 2024 Pattern** | Media analysis (Electrek, WGLT) reports 16 initial "serious" OSHA citations over ~21 months. Rivian disputes characterization, stating only 2 final "serious" citations were sustained after abatement/settlement; many initial citations were downgraded or dismissed | +| **Apr 11, 2024 Contractor Fall** | A contractor was seriously injured in a fall at the Normal plant; OSHA opened inspections of both Rivian and contractor Multi-Industries; outcomes not yet posted | ---- +**Sources:** +- OSHA Inspection 1515437.015: https://www.osha.gov/ords/imis/establishment.inspection_detail?id=1515437.015 +- WGLT (Jan 2025 safety report): https://www.wglt.org/local-news/2025-01-16/at-rivian-some-workers-say-production-comes-at-the-expense-of-safety +- Electrek (Oct 2024): https://electrek.co/2024/10/23/rivian-plant-is-a-hellish-nightmare-of-safety-violations-report/ +- WGLT (Apr 2024 fall investigation): https://www.wglt.org/local-news/2024-04-21/osha-investigating-after-contractor-seriously-injured-in-fall-at-rivian-plant +- TTNews (Nov 2022): https://www.ttnews.com/articles/rivian-employees-allege-safety-oversights-illinois-plant +- 25 News Now (Nov 2022): https://www.25newsnow.com/2022/11/21/report-rivian-employees-file-complaints-injuries-safety-violations/ -### 4.3 Earlier Recall History +### 3.2 OSHA — Warehouse Fatality (March 5, 2026) ⚠️ ESCALATION FLAG -Rivian's official recall page references additional earlier recalls dating back to **May 10, 2022** — the earliest period of vehicle deliveries. Specific recall numbers, defect descriptions, and unit counts for pre-2025 recalls were not fully extracted in this research. +| Field | Detail | +|---|---| +| **Location** | Rivian Automotive Warehouse, 301 W. Kerrick Rd., Normal, IL | +| **Date** | March 5, 2026, approximately 1:40 p.m. | +| **Victim** | Kevin Lancaster, age 61 | +| **Cause of Death** | Multiple blunt traumatic compressional injuries; pronounced dead 2:33 p.m. | +| **Circumstances** | Pinned between a semi-trailer and a loading dock | +| **OSHA Status** | Fatality investigation expected to be opened (standard federal protocol); no citations or penalties issued as of research date | +| **Investigative Body** | McLean County Coroner; Normal Police Department; OSHA (pending) | -**EDD Action Item:** Pull the full NHTSA recall database query for Rivian (Make: Rivian) at https://www.nhtsa.gov/vehicle/recalls to enumerate all recall campaigns and assess any pattern of systemic defects. +> **EDD Flag:** Workplace fatalities trigger mandatory OSHA fatality/catastrophe investigations. Maximum proposed penalty for willful violations is $161,323 per violation (2024 levels). If Rivian is found to have had prior notice of similar hazards (given the 2022–2024 citation history), a "repeat" or "willful" classification is possible, carrying heightened penalties and reputational risk. **Sources:** -- Rivian recall information page: https://rivian.com/support/article/recall-information +- 25 News Now (fatality report): https://www.25newsnow.com/2026/03/05/man-pinned-between-semi-trailer-loading-dock-rivian-warehouse-dies/ +- Normal Fire Department (Facebook): https://www.facebook.com/NormalFire/posts/worker-critically-injured-in-industrial-accident-thursday-march-5-2026-normal-il/1333262362172693/ ---- +### 3.3 Illinois Attorney General — Contractor Wage Violations (2022) + +| Field | Detail | +|---|---| +| **Filed** | September 2, 2022 | +| **Respondent** | Construction contractor performing work at Rivian's Normal, IL plant (not Rivian directly) | +| **Claims** | Alleged violations of Illinois Minimum Wage Law; Attorney General alleged a scheme to avoid paying fair wages and taxes | +| **Rivian's Role** | Named in the context of the plant site; AG enforcement targeted the contractor | -## 5. SEC Filings & Enforcement +**Source:** +- Illinois AG filing: https://illinoisattorneygeneral.gov/dA/a8fcf7e748/202209-02%20SUES%20CONSTRUCTION%20COMPANY%20OVER%20COMPLEX%20SCHEME%20TO%20AVOID%20PAYING%20FAIR%20WAGES%20AND%20TAXES.pdf -### 5.1 Material SEC Filings +### 3.4 NHTSA — See Section 4 Below -| Filing | Date | Content | -|--------|------|---------| -| Form 8-K (Exhibit 99.1) | October 23, 2025 | Voluntary settlement of the *Crews v. Rivian* securities class action for $250M; press release attached | +### 3.5 FTC, CFPB, DOJ, NLRB, EPA -Rivian is an SEC reporting company (CIK: 1874178) required to file annual reports (10-K), quarterly reports (10-Q), and current reports (8-K). The securities class action settlement is the most significant litigation disclosure identified. +| Agency | Status | +|---|---| +| **FTC** | No enforcement actions or investigations identified | +| **CFPB** | No enforcement actions or investigations identified | +| **DOJ** | No investigations identified | +| **NLRB** | No published NLRB complaints or decisions specifically against Rivian identified | +| **EPA (Federal)** | No enforcement actions, Notices of Violation, or CERCLA listings disclosed or identified | +| **Georgia EPD** | Air Quality Permit No. 3711-297-0061-E-01-0 issued August 20, 2024 for Stanton Springs North; no enforcement actions disclosed | -### 5.2 SEC Enforcement Actions +**Source:** +- DOE Draft Environmental Assessment (Rivian Stanton Springs North, Apr 2025): https://www.energy.gov/sites/default/files/2025-04/draft-ea-2251-rivian-stanton-springs-north-2024-10.pdf -**No SEC enforcement actions, Wells Notices, or formal investigations against Rivian Automotive have been identified** in publicly available sources as of the research date. The securities class action was a private plaintiff action, not an SEC enforcement proceeding. +--- + +## 4. NHTSA Safety Recalls + +> Rivian has issued **21+ NHTSA recalls** since its first vehicles entered the market in 2021. Key safety-critical items are flagged below. A number of recalls are resolved via over-the-air (OTA) software updates; others require physical service. + +### Safety-Critical Recalls (Seat Belts, Steering, Airbags, Drive Power) + +| NHTSA No. | FSAM | Issued | Affected Vehicles | Defect | Remedy | +|---|---|---|---|---|---| +| **26V-009** | FSAM-11795 | 2026-01-15 | 2022–2026 R1T/R1S | Improperly secured seat belt retractor assemblies | Inspect and secure; remedy available 2026-01-21 | +| **26V-003** | FSAM-11794 | 2026-01-08 | 2022–2025 R1 (serviced before 2025-03-10) | Toe link joint may separate (steering/handling) | Replace rear toe link bolts | +| **25V-537** | FSAM-11723 | 2025-08-26 | 2025 R1S/R1T | Ground connection may cause loss of drive power | Inspect/repair ground connection | +| **25V-370** | FSAM-11681 | 2025-06-03 | 2022–2025 R1S/R1T | Seat belt D-ring anchorage | Inspect and secure anchorage | +| **23V-109** | FSAM-11166 | 2023-02-22 | 2022 R1 | Passenger air bag sensor malfunction | Inspect/replace components | +| **22V-744** | FSAM-10997 | 2022-10-06 | 2022 R1/EDV | Steering knuckle/control arm fastener may loosen | Inspect/correct fasteners | +| **22V-641** | FSAM-10924 | 2022-09-30 | 2022 R1 | Improperly secured front seat belt anchor | Inspect/secure anchors | + +### ADAS, Lighting & Other Recalls + +| NHTSA No. | FSAM | Issued | Affected Vehicles | Defect | Remedy | +|---|---|---|---|---|---| +| **25V-816** | FSAM-11770 | 2025-12-03 | 2022–2025 EDV | Seat belt misuse detection | OTA + inspect/replace driver pretensioner | +| **25V-585** | FSAM-11744 | 2025-09-12 | 2025 R1S/R1T | ADAS OTA 2025.18.30 issue | Software update to 2025.18.30+ | +| **25V-387** | FSAM-11693 | 2025-06-11 | 2025 R1S/R1T | Turn signal inoperative | Replace front lamp(s) | +| **25V-085** | FSAM-11612 | 2025-02-13 | 2025 R1S/R1T | Headlamp performance in cold weather | Replace headlamp control module(s) | +| **24V-827** | FSAM-11552 | 2024-11-01 | 2025 R1S/R1T | Exterior lighting deactivated by "Car Costume" feature | OTA 2024.39.31 | +| **24V-686** | FSAM-11532 | 2024-09-18 | 2025 R1S | Steering column control module missing cruise markings | Module labeling/service | +| **24V-458** | FSAM-11491 | 2024-06-25 | 2022–2023 R1S/R1T | Incorrect weight on tire placard label | Mail correct overlay labels | +| **24V-408** | FSAM-11464 | 2024-06-14 | 2022–2024 R1S/R1T | Upper B-C-pillar trim panel (fire/safety barrier) | Replace trim panels | +| **24V-367** | FSAM-11445 | 2024-05-31 | 2023–2024 R1S/R1T/EDV | Headlight aiming out of spec | Adjust headlamp aim | +| **24V-319** | FSAM-11429 | 2024-05-14 | 2024 R1S/R1T | Dashboard air bag label missing | Apply label | +| **23V-883** | FSAM-11342 | 2023-12-21 | 2022 R1 | Accelerator pedal may stick | Replace pedals + software | +| **23V-783** | FSAM-11331 | 2023-11-21 | 2022–2023 R1 | OTA 2023.42 defroster UI failure | OTA 2023.42.02 | +| **23V-233** | FSAM-11216 | 2023-03-31 | 2022–2023 R1S | Backup lamp visibility insufficient | Replace lamps | +| **22V-319** | FSAM-10651 | 2022-05-10 | 2022 R1T | OCS calibration/front seat issue | Replace front passenger seat | **Sources:** -- SEC EDGAR filing: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm +- Rivian Recall Portal: https://rivian.com/support/article/recall-information +- Consumer Reports (2022 steering recall): https://www.consumerreports.org/cars/car-recalls-defects/rivian-recalls-suvs-trucks-and-vans-to-fix-a-steering-fasten-a1891314510/ +- ReCharged (2022 recall list): https://recharged.com/articles/2022-rivian-r1s-recalls-list +- ReCharged (2025 recall list): https://recharged.com/articles/2025-rivian-r1s-recalls-list +- Consumer Reports (2022 R1S reliability): https://www.consumerreports.org/cars/rivian/r1s/2022/reliability/ --- -## 6. Other Regulatory Actions & Investigations - -### 6.1 NHTSA -Active regulatory relationship through the recall process described in Section 4. No NHTSA formal defect investigation (PE or EA dockets) beyond the executed recalls was identified in research sources. Reviewers should query the NHTSA complaints database for any open investigations. +## 5. Sanctions Screening -### 6.2 EPA -No EPA enforcement actions, notice of violations, or consent decrees involving Rivian were identified. +| List | Result | +|---|---| +| **OFAC SDN List** | No designation found for Rivian Automotive, Inc. or identified key executives | +| **EU Consolidated Sanctions List** | No designation found | +| **UN Consolidated Sanctions List** | No designation found | +| **OFAC Non-SDN Lists (SSI, FSE, etc.)** | No matches found | -### 6.3 FTC / DOJ (Antitrust & Consumer Protection) -No FTC or DOJ antitrust or consumer protection actions against Rivian were identified. +> **Conclusion:** No sanctions exposure identified. Rivian is a U.S.-domiciled, Nasdaq-listed public company with no known nexus to sanctioned jurisdictions, entities, or individuals. -### 6.4 State Attorneys General -No state AG actions against Rivian were identified. +--- -### 6.5 CPSC -No CPSC actions against Rivian were identified. +## 6. History of Fines, Consent Decrees & Settlements -### 6.6 Amazon / Rivian Commercial Disputes -Amazon holds a significant ownership stake in Rivian and has a large commercial delivery vehicle order. No commercial disputes between Amazon and Rivian were identified in publicly available sources. +| Matter | Type | Amount | Status | +|---|---|---|---| +| **Crews v. Rivian** (C.D. Cal.) | Securities class action settlement | $250,000,000 | Preliminarily approved Dec 18, 2025; final hearing May 15, 2026 | +| **Tesla v. Rivian** (Cal. Super.) | Trade secret settlement | Undisclosed | Dismissed Dec 2024 / Jan 2025; case closed | +| **OSHA — Normal, IL plant (2022–2024)** | Workplace safety citations | Undisclosed (multiple citations; many downgraded) | Ongoing; 2 final "serious" citations per Rivian's statement | +| **OSHA — Warehouse fatality (Mar 2026)** | Fatality investigation | Pending | Investigation open; no penalty issued yet | +| **EPA / State Environmental** | N/A | N/A | No fines or consent decrees identified | +| **FTC / DOJ / NLRB** | N/A | N/A | No fines or consent decrees identified | --- -## 7. Sanctions Screening & National Security +## 7. Environmental Compliance -### 7.1 OFAC (U.S. Treasury — SDN List) -**Result: No designation found.** Rivian Automotive, Inc. does not appear on the OFAC Specially Designated Nationals (SDN) list or any OFAC sectoral sanctions lists. No known exposure to OFAC-sanctioned counterparties was identified. +| Item | Detail | +|---|---| +| **EPA (Federal)** | No EPA Notices of Violation, enforcement orders, or CERCLA (Superfund) listings identified for Rivian or its facilities | +| **Georgia EPD — Stanton Springs North** | Air Quality Construction Permit No. 3711-297-0061-E-01-0 issued August 20, 2024; Phase 1 and Phase 2 air permits to be applied for separately per Georgia EPD guidance; no enforcement actions disclosed | +| **Illinois — Normal Plant** | Manufacturing plant operational since 2017; no state EPA NOVs disclosed in public filings or media; OSHA (not EPA) is the primary enforcement vector to date | +| **Hazardous Waste** | DOE Draft Environmental Assessment (Apr 2025) notes that more than 95% of hazardous waste is diverted from landfills at similar Rivian facilities | +| **Water Treatment** | EA references innovative water treatment practices at Stanton Springs North; no water permit violations identified | -### 7.2 EU Sanctions Lists -**Result: No designation found.** Rivian does not appear on EU consolidated sanctions lists. +**Source:** +- DOE Draft EA for Stanton Springs North (Apr 2025): https://www.energy.gov/sites/default/files/2025-04/draft-ea-2251-rivian-stanton-springs-north-2024-10.pdf -### 7.3 UN Sanctions Lists -**Result: No designation found.** Rivian does not appear on the UN Security Council consolidated sanctions list. +--- -### 7.4 CFIUS / National Security Reviews -**Result: No CFIUS review identified.** No public record of a CFIUS filing or national security review related to Rivian's investor base or technology was identified. Key investors include Amazon, Ford Motor Company, and various institutional funds — all domestic or allied-nation entities without known CFIUS concerns. +## 8. Notable Legal Risks & KYC/EDD Analysis -**EDD Note:** Rivian's technology (EV drivetrains, autonomous driving software, commercial delivery platforms) is dual-use sensitive. Reviewers should confirm beneficial ownership of significant (≥10%) foreign investors, if any exist, for potential CFIUS exposure on a go-forward basis. +### 8.1 Securities Litigation Risk (HIGH → Monitored) +The $250M cash settlement in *Crews v. Rivian* is the most material legal matter. While the settlement is large, it represents a defined, capped liability. Risk remains until **final court approval is obtained (hearing: May 15, 2026)** and the settlement fund is funded and distributed. Should the settlement fail to receive final approval (rare but possible), the case would return to litigation posture, representing an unquantified liability. ---- +### 8.2 Workplace Safety Risk (MEDIUM–HIGH) +Rivian's Normal, IL operations have drawn repeated OSHA scrutiny since 2021: +- A pattern of 16 initial "serious" citations (2023–2024), with Rivian disputing characterization +- A contractor serious injury (April 2024) under active investigation +- A **worker fatality on March 5, 2026** — the most severe possible OSHA outcome, triggering a mandatory fatality/catastrophe investigation -## 8. Fines, Consent Decrees & Settlements Summary +Given the prior citation history, the 2026 fatality carries risk of "repeat" or "willful" OSHA classification, elevated penalties (up to $161,323 per willful violation), and potential reputational harm. This should be **actively monitored** in any ongoing KYC/EDD relationship. -| Matter | Amount | Date | Status | -|--------|--------|------|--------| -| *Crews v. Rivian* securities class action settlement | **$250,000,000** | Oct 23, 2025 | Awaiting final court approval | -| Tesla v. Rivian trade secret litigation settlement | Confidential | Early 2025 | Resolved (terms undisclosed) | -| Employment harassment lawsuit(s) | Undisclosed | Aug 2024 | At least one settled via arbitration | -| NHTSA recall penalties | $0 identified (OTA remedy) | 2025–2026 | Remedied | +### 8.3 Recall Burden and Product Liability Exposure (MEDIUM) +With 21+ recalls since 2022 — including safety-critical items involving seat belts, steering, airbags, and loss of drive power — Rivian carries a higher-than-average recall rate for a new OEM. This indicates continued product quality compliance risk and potential for future product liability suits. No MDL or defect-based class action has been filed to date, but the current product liability suit (*Young v. Rivian*) should be monitored for any broadening. ---- +### 8.4 Intellectual Property Risk (LOW — Resolved) +The Tesla trade secret dispute, settled in December 2024/January 2025, underscored vulnerabilities associated with mass-hiring of employees from competing EV manufacturers. The resolution removes immediate litigation risk, but IP governance and trade secret controls remain an ongoing operational concern common to the EV industry. -## 9. EDD/KYC Escalation Flags & Recommended Actions +### 8.5 Sanctions & AML Risk (NONE) +No sanctions exposure identified. Rivian has no disclosed relationships with sanctioned persons, entities, or jurisdictions. Standard source-of-funds and beneficial ownership review consistent with a publicly listed U.S. company is appropriate. -| # | Flag | Risk Level | Recommended Action | -|---|------|------------|-------------------| -| 1 | **$250M securities class action settlement pending final approval** (*Crews v. Rivian*, Case No. 2:22-cv-01524) | 🔴 HIGH | Confirm final court approval status; obtain 10-K/10-Q legal proceedings disclosures; assess adequacy of reserves | -| 2 | **Tesla trade secret lawsuit settled confidentially on eve of trial** | 🟡 MEDIUM | Obtain any public filings; assess whether trade secret misappropriation findings could affect Rivian's technology provenance or IP ownership; note confidential settlement terms unavailable | -| 3 | **Executive harassment/hostile workplace lawsuits (multiple; some unreported until Dec 2024)** | 🟡 MEDIUM | Review 10-K "Legal Proceedings" disclosures for completeness; assess governance and HR remediation steps; confirm no pending class or collective actions | -| 4 | **NHTSA safety recalls (2022–present; at least two active campaigns)** | 🟡 MEDIUM | Pull full NHTSA recall database; assess pattern of defects; confirm OTA and physical remedies are complete; review any open PE/EA investigation dockets | -| 5 | **Full recall history (pre-2025) not fully enumerated** | 🟡 MEDIUM | Conduct NHTSA VISS database query for all Rivian recall campaigns since 2022 | -| 6 | **SEC enforcement: None identified** | 🟢 LOW | Continue monitoring; review quarterly 10-Q legal proceedings section | -| 7 | **Sanctions / OFAC / EU / UN: No designations** | 🟢 LOW — No flag | No action required; re-screen periodically | -| 8 | **CFIUS: No review identified** | 🟢 LOW | Confirm no foreign-national investors above reporting thresholds; re-evaluate if ownership structure changes | +### 8.6 Environmental Risk (LOW) +No EPA enforcement actions or environmental consent decrees identified. The Georgia EPD permitting process is proceeding normally. Environmental risk is currently low but should be revisited as the Stanton Springs North facility commences full-scale operations. --- -## 10. Sources & Citations Index - -| # | Source | URL | -|---|--------|-----| -| 1 | Rivian Securities Litigation settlement website | https://www.riviansecuritieslitigation.com/ | -| 2 | Stipulation & Settlement Agreement (PDF) | https://www.riviansecuritieslitigation.com/media/6320314/2025-10-23_stipulation___settlement_agreement.pdf | -| 3 | Long-Form Settlement Notice (PDF) | https://www.riviansecuritieslitigation.com/media/6580480/rivian_automotive_securities_settlement_-_long-form_notice.pdf | -| 4 | SEC Form 8-K / settlement press release | https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm | -| 5 | Reuters — $250M settlement announcement | https://www.reuters.com/sustainability/boards-policy-regulation/rivian-agrees-pay-250-million-settle-ipo-fraud-lawsuit-2025-10-23/ | -| 6 | CFO Dive — Settlement coverage | https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780/ | -| 7 | Yahoo Finance — Settlement coverage | https://finance.yahoo.com/news/rivian-agrees-250m-settlement-2022-101320857.html | -| 8 | Orrick — California appellate win announcement | https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action | -| 9 | The Recorder / Law.com — Appellate dismissal | https://www.law.com/therecorder/2025/04/25/freshfields-orrick-score-securities-case-defense-win-for-rivian-in-calif-appellate-court-/ | -| 10 | Reuters — NHTSA Highway Assist recall | https://www.reuters.com/business/autos-transportation/rivian-recalls-over-24000-us-vehicles-over-highway-assist-software-defect-nhtsa-2025-09-12/ | -| 11 | Recharged.com — 2025 Rivian recall list | https://recharged.com/articles/2025-rivian-r1s-recalls-list | -| 12 | Rivian official recall page | https://rivian.com/support/article/recall-information | -| 13 | TechCrunch — Executive harassment lawsuits | https://techcrunch.com/2024/12/20/rivian-executives-accused-of-harassment-in-previously-unreported-lawsuits/ | -| 14 | Proskauer — Tesla v. Rivian trade secrets | https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip | -| 15 | Brand Protection Law — Tesla/Rivian settlement | https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ | +## 9. Methodology & Limitations + +- Research conducted using public sources: SEC EDGAR, OSHA IMIS, NHTSA recall portal, federal court dockets (PACER/Justia), state court records, DOE/EPA public filings, and news databases. +- OSHA penalty data for 2022–2024 citations is not fully publicly disclosed; specific dollar amounts for individual citations could not be confirmed. A formal FOIA request to OSHA's Peoria/Springfield Area Office would be required for complete citation-level data. +- Product liability dockets beyond *Young v. Rivian* may exist in state courts and are not captured by federal PACER searches. +- Sanctions screening reflects public list data as of research date; OFAC/EU/UN lists are updated frequently and should be re-screened at each transaction or relationship review. --- -*This workpaper is prepared for internal KYC/EDD review purposes only. It reflects publicly available information as of the research date and should be supplemented with primary source verification (PACER, NHTSA VISS, SEC EDGAR full search, OFAC SDN List query) before any final compliance determination is made.* +*Document prepared for KYC/EDD workpaper purposes. Not legal advice. All citations to external sources should be independently verified prior to reliance.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md index bfe6b69..2153fc2 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/news-reputation.md @@ -1,226 +1,230 @@ -# Rivian Automotive — News Coverage & Reputation Report -**Prepared by:** Media Intelligence Analysis -**Period Covered:** 2023 – 2025 (with select 2026 forward-looking items) -**Research Date:** 2025 +# Rivian Automotive — News & Reputation Analysis +**Period Covered:** ~January 2024 – Mid-2025 (with select forward-looking 2025–2026 data points) +**Prepared by:** Media Intelligence Analysis +**Date:** 2025 --- -## Table of Contents -1. [Major Press Coverage](#1-major-press-coverage) -2. [Leadership Changes & Executive Departures](#2-leadership-changes--executive-departures) -3. [Product Launches, Pivots & Strategic Shifts](#3-product-launches-pivots--strategic-shifts) -4. [Controversies, Recalls & Negative Press](#4-controversies-recalls--negative-press) -5. [Overall Media Sentiment Trend](#5-overall-media-sentiment-trend) -6. [Social Media Sentiment](#6-social-media-sentiment) -7. [Analyst & Institutional Media Opinion](#7-analyst--institutional-media-opinion) -8. [Customer Reviews & Owner Satisfaction](#8-customer-reviews--owner-satisfaction) -9. [Brand Partnerships, Endorsements & Commercial Deals](#9-brand-partnerships-endorsements--commercial-deals) -10. [Pattern Analysis: Isolated Incidents vs. Recurring Themes](#10-pattern-analysis-isolated-incidents-vs-recurring-themes) -11. [Summary Scorecard](#11-summary-scorecard) +## Executive Summary ---- - -## 1. Major Press Coverage - -### Key Headlines & Themes (2023–2025) - -| Date | Headline / Theme | Source | -|------|-----------------|--------| -| Sep 11, 2023 | Rivian recalls vehicles with hands-free driver-assistance system over a failure to detect other cars | [The Truth About Cars](https://www.thetruthaboutcars.com/category/reviews/rivian/) | -| Dec 5, 2024 | Rivian Adventure Network opens its first chargers to **all EV brands**, signaling a strategic network-monetization move | [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-planned-launch-chargers-for-all-evs) | -| Mar 18, 2025 | Consumer Reports survey ranks Rivian and Tesla charging networks as the **most problem-free** in the US | [Yahoo Finance / Consumer Reports](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) | -| 2025 (ongoing) | R2 pricing and full trim details published; significant Reddit and media engagement | [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-introduces-r2-lineup) · [Reddit r/Rivian](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) | -| Apr 22, 2026 (fwd) | R2 production commences days after a tornado struck the Normal, IL facility | [Electrek](https://electrek.co/2026/04/22/rivian-r2-starts-production-tornado-deliveries-spring) | - -### Dominant Coverage Themes -- **New model anticipation (R2/R3):** The forthcoming R2 SUV — priced from ~$45,000–$48,490 — dominates positive press as Rivian's attempt to reach mainstream EV buyers. -- **Charging infrastructure expansion:** Opening the Rivian Adventure Network to non-Rivian EVs received broadly favorable coverage as a competitive and revenue-generating pivot. -- **Financial pressures:** Ongoing reporting on cash burn, production ramp challenges, and workforce reductions has kept a cautionary undertone in financial media. +Rivian's overall media reputation in 2024–2025 is **mixed/neutral**, trending cautiously optimistic on product and technology but weighed down by financial pressures, production challenges, and recurring workforce reductions. The landmark Volkswagen joint venture significantly boosted strategic credibility, while the R2 reveal generated genuine consumer enthusiasm. Against this, 2025 delivery declines (~18% YoY), multiple rounds of layoffs, persistent cash burn, and a series of safety recalls have kept risk perception elevated. No single catastrophic reputational event emerged, but a recurring pattern of execution shortfalls and restructuring actions has shaped a narrative of a company still fighting to prove its industrial footing. --- -## 2. Leadership Changes & Executive Departures - -### Confirmed Change - -**Rose Marcario — Board Departure** -- Marcario, former Patagonia CEO and a high-profile Rivian board member, stepped down from the board as the company geared up for the R2 launch and a broader technology push. -- Framing in coverage was largely neutral-to-positive, positioning the move as a routine board refresh rather than a crisis signal. -- **Source:** [EV.com Official / Facebook](https://www.facebook.com/ev.com.official/posts/rivian-confirms-rose-marcario-is-stepping-down-from-its-board-the-move-comes-as-/877823498337349/) - -### Notes on CEO / C-Suite Stability -- CEO **RJ Scaringe** remained in his role throughout the research period with no credible departure rumors surfacing in indexed coverage. -- No CFO or COO departures were flagged in available sources during the 2023–2025 window. - -> **Assessment:** Leadership risk is **low** based on available evidence. The one confirmed departure (Marcario) was a board-level change with benign framing. +## 1. Major Press Coverage — Last 12–18 Months + +### 1.1 Volkswagen Strategic Investment & Joint Venture *(Most Significant Story)* +The single biggest story of the period was Volkswagen Group's decision to invest in Rivian and form a jointly controlled software/electrical architecture venture. + +- **June 2024:** VW announced an investment of **up to $5 billion** in Rivian as part of a new, equally controlled JV focused on software and electrical/electronic (EE) architecture. + - Source: Reuters, Jun 25, 2024 — https://www.reuters.com/business/autos-transportation/volkswagen-invest-up-5-billion-rivian-part-tech-joint-venture-2024-06-25 +- **November 2024:** The JV was formally launched; total deal size increased to **up to $5.8 billion**, with first VW-brand models using Rivian's software and EE architecture targeted as early as 2027. + - Source: Rivian Newsroom, Nov 12, 2024 — https://rivian.com/newsroom/article/rivian-and-volkswagen-group-announce-the-launch-of-their-joint-venture + - Source: CNBC, Nov 12, 2024 — https://www.cnbc.com/2024/11/12/rivian-volkswagen-joint-venture.html + - JV website: https://rivianvw.tech/ +- **Context:** Coverage framed the deal as a **major de-risking event** for Rivian's technology roadmap and balance sheet, while noting that actual integration into VW-brand vehicles sold in the U.S. remains years away. + - Source: Automotive News, Apr 6, 2026 — https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 + +### 1.2 R2 (and R3/R3X) Reveal — Consumer Demand Surge +- **March 2024:** Rivian unveiled the R2, a smaller, more affordable SUV targeting ~$45,000 starting price to expand its total addressable market. CEO RJ Scaringe announced that **more than 68,000 reservations** were taken within 24 hours. + - Source: Fortune, Mar 9, 2024 — https://fortune.com/2024/03/09/rivian-r2-electric-vehicles-elon-musk-tesla-cost-cutting/ + - Product page: https://rivian.com/en-CA/r2 +- The R2 reveal also included teaser previews of the R3 and R3X models, generating significant positive media coverage and demonstrating Rivian's intent to compete at lower price points. + +### 1.3 Normal, IL Plant Retooling & Path to Gross Profitability +- **May 2024:** Rivian completed a plant retooling of its Normal, Illinois factory, projected to reduce R1 vehicle bill-of-materials costs by **up to 50%**, a pivotal step toward gross profit. + - Source: Autoevolution, May 8, 2024 — https://www.autoevolution.com/news/rivian-plant-retooling-paves-the-way-to-profitability-by-the-end-of-2024-233577.html + - Source: WardsAuto, May 10, 2024 — https://www.wardsauto.com/news/archive-auto-rivian-completes-plant-retooling-pivotal-to-profitability/715673/ +- CFO Claire McDonough cited lower variable costs as the biggest driver of gross profit improvement in 2024. + +### 1.4 2024 Production Guidance Cut +- **October 2024:** Rivian cut its 2024 full-year production guidance after Q3 results disappointed, causing shares (RIVN) to fall ~3.2% to $10.44. + - Source: Yahoo Finance — https://finance.yahoo.com/news/rivian-shares-fall-3-slashes-141500557.html + +### 1.5 2025 Delivery Results — Below Expectations +- **January 2026:** Full-year 2025 deliveries totaled **42,247 vehicles**, down approximately **18% year-over-year** and slightly below analyst consensus of ~42,500. + - Source: Reuters, Jan 2, 2026 — https://www.reuters.com/business/autos-transportation/rivians-2025-deliveries-slip-below-expectations-ev-demand-pressure-persists-2026-01-02/ +- Despite volume declines, full-year 2025 financials showed **annual gross profit of $144 million** and revenue up 8%, a notable milestone. + - Source: Yahoo Finance, Apr 2, 2026 — https://sg.finance.yahoo.com/news/rivian-defies-expectations-despite-rough-023300613.html --- -## 3. Product Launches, Pivots & Strategic Shifts - -### 3.1 R2 Platform — Mass-Market SUV -- Rivian introduced the R2 lineup with full trim and pricing details, starting at approximately **$45,000–$48,490**. -- Positioned as the company's most critical product launch: lower price point designed to compete with the Ford Mustang Mach-E, Tesla Model Y, and Chevrolet Equinox EV. -- Significant consumer interest reflected in YouTube coverage and Reddit discussion. -- **Sources:** [Rivian Newsroom – R2 Lineup](https://rivian.com/newsroom/article/rivian-introduces-r2-lineup) · [YouTube: R2 Specs & Pricing](https://www.youtube.com/watch?v=acE3BhLLiI8) · [Reddit r/Rivian](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) +## 2. Leadership Changes & Executive Departures -### 3.2 Rivian Adventure Network — Open to All EVs -- December 2024: Rivian announced the **first next-generation charging stations**, opening the network to all EV brands. -- Strategic pivot mirrors Tesla's earlier NACS licensing strategy — converting proprietary infrastructure into a potential revenue stream and brand-awareness tool. -- **Source:** [Rivian Newsroom – Adventure Network](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-chargers-for-all-evs) +### 2.1 Wave of C-Suite Exits (Mid-2024) — *Pattern, Not Isolated* +- Within a span of roughly **eight weeks in summer 2024**, Rivian lost **four C-level executives**, a pattern that drew notable media attention. + - Source: Electric Vehicles (eletric-vehicles.com), Aug 20, 2024 — https://eletric-vehicles.com/rivian/rivian-loses-fourth-c-level-executive-in-less-than-2-months/ +- Specific named departures were not widely detailed by top-tier outlets; SEC 8-K filings are the authoritative primary source for individual names and roles. -### 3.3 Manufacturing Resilience — Tornado Incident -- A tornado struck the vicinity of Rivian's Normal, Illinois plant; the company resumed and commenced R2 production within days. -- Press coverage was largely **positive**, highlighting operational resilience. -- **Source:** [Electrek](https://electrek.co/2026/04/22/rivian-r2-starts-production-tornado-deliveries-spring) +### 2.2 CEO Takes Over as Interim Marketing Chief (October 2025) +- Following the October 2025 layoff of 600+ workers (see Section 3.3), CEO **RJ Scaringe assumed the role of interim Chief Marketing Officer** as Rivian restructured key operations. + - Source: Automotive News (via Facebook), Oct 24, 2025 — https://www.facebook.com/AutoNews/posts/rivian-ceo-rj-scaringe-will-serve-as-interim-marketing-chief-as-the-ev-maker-res/1412337770751952/ -### 3.4 Strategic Direction Summary -Rivian's strategic posture has shifted toward: -1. **Volume over exclusivity** — targeting mainstream price points with R2. -2. **Ecosystem monetization** — charging network open to competitors. -3. **Cost discipline** — workforce reductions signal a focus on path to profitability. +### 2.3 Leadership Controversy — German Media Reporting (April 2025) +- A German business magazine published quotes from an unnamed "associate" implying dysfunction under CEO RJ Scaringe and general displeasure with his leadership style, suggesting an internal image problem that leaked into press. + - Source: The Autopian, Apr 24, 2025 — https://www.theautopian.com/someone-has-it-out-for-rivian-founder-rj-scaringe/ + - *Assessment:* Isolated incident at this stage; no corroborating accounts from named sources have surfaced in major outlets. --- -## 4. Controversies, Recalls & Negative Press - -### 4.1 Hands-Free System Recall *(Isolated Incident)* -- **Date:** September 11, 2023 -- **Issue:** Rivian recalled vehicles equipped with its hands-free driver-assistance system due to a failure mode that could prevent detection of other vehicles on the road — a safety-critical defect. -- **Pattern classification:** **Isolated incident.** No pattern of serial safety recalls was identified in the research period. The recall was addressed through a software/firmware update. -- **Source:** [The Truth About Cars](https://www.thetruthaboutcars.com/category/reviews/rivian/) - -### 4.2 Workforce Reductions *(Recurring Pattern)* -- Rivian conducted **multiple rounds of layoffs** during the research period: - - An earlier cut of approximately **10%** of the workforce. - - A subsequent cut of approximately **4%** of the workforce. -- **Pattern classification:** **Recurring pattern.** Two distinct layoff events in relatively close succession signals sustained financial strain and restructuring pressure rather than a one-time adjustment. -- Coverage was negative in tone but framed within the broader EV industry context of cash conservation. -- **Source:** [TechCrunch / Facebook](https://www.facebook.com/techcrunch/posts/the-layoffs-represent-about-4-of-rivians-workforce-the-company-has-made-two-othe/1175928464401019/) - -### 4.3 No Governance, Fraud, or Ethical Scandals Identified -- Research surfaced **no evidence** of executive misconduct, regulatory fraud, securities violations, or major customer-safety class actions beyond the 2023 recall. - -> **Controversy Risk Level:** **Moderate-Low.** The layoff pattern is the most sustained negative narrative. The recall was isolated and safety-responsive. No reputational crises of a governance or ethical nature were found. +## 3. Controversy, Scandal & Negative Press — Patterns vs. Isolated Incidents + +### 3.1 Layoffs — *Recurring Pattern* +Multiple rounds of workforce reductions across the period constitute a clear **pattern**, not a single incident: + +| Date | Scope | Source | +|------|-------|--------| +| February 2024 | ~10% of salaried workforce (SEC-confirmed) | WardsAuto — https://www.wardsauto.com/news/archive-auto-rivian-salaried-staff-reduction/708175/ | +| June 2025 | ~140 employees (~1% of workforce) ahead of R2 launch | Rivian Forums — https://www.rivianforums.com/rivian-lays-off-140-employees-to-improve-operational-efficiency-for-r2/ | +| October 2025 | 600+ workers (~4% of workforce); EV tax credit expiration cited as driver | WSJ — https://www.wsj.com/business/autos/rivian-to-layoff-more-than-600-workers-amid-ev-pullback-03a792e5 / CNBC — https://www.cnbc.com/2025/10/23/rivian-layoffs.html / Rivian Forums — https://www.rivianforums.com/rivian-to-lay-off-600-workers | + +- *Counterpoint:* By late 2025, Rivian's **total headcount actually increased** year-over-year as VW JV consolidation offset layoff numbers. + - Source: eletric-vehicles.com — https://eletric-vehicles.com/rivian/rivian-increases-headcount-in-2025-as-vws-joint-venture-consolidation-offsets-layoffs/ +- Rivian provided severance and benefits for affected workers in 2025 cuts, which modestly softened press tone. + - Source: The HR Digest — https://www.thehrdigest.com/the-rivian-layoffs-in-2025-come-with-severance-benefits-for-affected-workers/ + +### 3.2 Vehicle Recalls — *Pattern of Software/Safety Bulletins Typical of Young OEM* +Rivian issued multiple recalls across 2024–2025. No single recall was catastrophic, but the volume reflects immaturity in quality systems: + +- **2025 Seat Belt Anchor Recall:** ~24,214 R1S/R1T vehicles (2022–2025 model years) recalled for improperly installed D-ring seat belt anchor bolts. + - Source: Reddit/NHTSA filing — https://www.reddit.com/r/Rivian/comments/1l58b4m/rivian_automotive_llc_rivian_is_recalling_certain/ +- **2025 Hands-Free Highway Assist Defect:** Approximately 24,214 model-year 2025 R1S/R1T vehicles recalled for a defect in the Highway Assist hands-free driving system. + - Source: Recharged.com — https://recharged.com/articles/2025-rivian-r1s-recalls-list +- **Broader NHTSA Multi-OEM Recall Round (Feb 2025):** Rivian included in a sweep covering 225,000+ vehicles from Ford, Ram, and Rivian for visibility/safety issues. + - Source: CBT News, Feb 24, 2025 — https://www.cbtnews.com/nhtsa-announces-major-vehicle-recalls-affecting-multiple-automakers/ + - Source: Facebook/Courier Post — https://www.facebook.com/courierpost/posts/the-nhtsa-recently-announced-recalls-for-more-than-225000-vehicles-from-automake/1283537000474818/ +- Official Rivian recall page: https://rivian.com/support/article/recall-information +- *Assessment:* While recurring, recalls are **industry-standard practice** for an OEM of Rivian's age; no fatalities or systemic fleet-wide defect drew outsized negative attention. + +### 3.3 Production Delivery Underperformance — *Recurring Pattern* +Consecutive years of missing or reducing guidance: +- 2024 guidance cut (October 2024) → stock fell ~3% +- 2025 full-year deliveries came in ~18% below prior-year levels and slightly below consensus +- *Assessment:* This is a **persistent pattern** undermining bull-case narratives; however, the gross profit milestone in 2025 partially offset the negative optics. + +### 3.4 CEO Compensation vs. Per-Vehicle Losses — *Isolated but Resonant* +- Coverage emerged highlighting that CEO RJ Scaringe received **~$403 million in compensation** while the company was losing ~$39,000 per vehicle sold. + - Source: TheStreet (via Facebook) — https://www.facebook.com/TheStreet/posts/rivian-ceo-walks-away-with-403-million-despite-huge-lossesa-company-that-lost-bi/1505317951189584/ +- *Assessment:* Isolated story; no sustained activist campaign or governance proxy battle has emerged from it, but it feeds a broader narrative of EV startup excess. + +### 3.5 Price Hike Backlash — *No New 2024–2025 Incident* +- The major 2022 price-hike controversy (where Rivian retroactively raised prices on reservation holders) has **not been repeated** in the 2024–2025 window. Pricing discourse in this period centered constructively on the R2's affordability positioning and industry-wide EV discounting pressure. --- -## 5. Overall Media Sentiment Trend +## 4. Overall Media Sentiment -| Sentiment | Evidence | -|-----------|----------| -| **Positive** | R2 launch enthusiasm; Consumer Reports charging network praise; resilience after tornado; Adventure Network expansion | -| **Neutral** | Board departure (Marcario); ongoing production ramp coverage | -| **Negative** | Multiple rounds of layoffs (recurring); 2023 hands-free recall; financial burn-rate scrutiny | +| Topic Area | Sentiment | Notes | +|---|---|---| +| Product & Design (R2, R3/R3X reveal) | **Positive** | Strong consumer resonance; 68k+ reservations in 24 hours; enthusiast and mainstream press favorable | +| VW Joint Venture | **Positive (tempered)** | Seen as strategic validation; tempered by long revenue lead times | +| Manufacturing & Cost Reduction | **Cautiously Optimistic** | Plant retooling coverage positive; gross profit milestone in 2025 seen as meaningful progress | +| Financial/Cash Position | **Negative–Neutral** | Cash burn, ~$39k per-vehicle losses (pre-retooling), reliance on JV capital; improving but not resolved | +| Production/Delivery Volume | **Negative** | Consecutive guidance cuts and YoY delivery decline are headwinds | +| Workforce Reductions | **Negative** | Multiple rounds framed as EV industry reset; softened by severance and JV headcount gains | +| Leadership Stability | **Negative–Neutral** | Four C-suite exits in 8 weeks (mid-2024); unverified German press reporting on CEO; not a dominant narrative but a noted risk signal | +| Safety/Recalls | **Neutral** | Multiple recalls but no fatality-linked systemic defect; industry-comparable | -### Trend Narrative -- **2023:** Mixed sentiment — recall and initial financial skepticism balanced by R1T/R1S delivery growth. -- **2024:** Improving sentiment — charging network expansion and product roadmap clarity generated favorable press. Layoffs tempered enthusiasm. -- **2025:** Cautiously positive — R2 pricing reveal and Consumer Reports network ranking drove a wave of favorable coverage. Ongoing profitability concerns remain a constant undercurrent. - -**Overall Media Sentiment: NEUTRAL TO POSITIVE**, trending positive on product news while carrying a persistent cautionary thread around financial sustainability. +**Overall rating: Mixed/Neutral** — Product and technology perception represent genuine strengths; financial and operational execution remain the dominant drags on reputation. --- -## 6. Social Media Sentiment - -### Reddit (r/Rivian, r/electricvehicles) -- **Tone:** Generally **positive to enthusiastic**, particularly around R2 pricing and trim reveals. -- **Key Topics:** R2 value proposition vs. competitors, reservation decisions, charging experience. -- Active community engagement with the R2 pricing update post garnering significant discussion. -- **Source:** [r/Rivian – R2 Pricing Thread](https://www.reddit.com/r/Rivian/comments/1rrt23v/theyve_updated_the_r2_page_with_prices_and_trims/) - -### YouTube -- Creator coverage of R2 specs and pricing reflects **strong consumer interest and excitement**. -- Video content framed R2 as a competitive, compelling offering in the mainstream EV space. -- **Source:** [YouTube – R2 Specs & Pricing](https://www.youtube.com/watch?v=acE3BhLLiI8) - -### Twitter/X & Broader Social -- No specific verified data from Twitter/X was surfaced in research. General industry reporting suggests Rivian maintains an engaged following, particularly among outdoor/adventure enthusiasts consistent with its brand identity. +## 5. Analyst Opinions & Ratings -> **Social Sentiment: POSITIVE**, driven by R2 anticipation. Owner communities remain active and largely constructive. +- Consensus analyst framing through 2024–2025 emphasized: (a) **cash burn sustainability**, (b) **path to gross profit via cost reductions**, and (c) **R2 execution risk** as the key swing factors for the investment thesis. + - Source: Yahoo Finance analyst consensus — https://finance.yahoo.com/research/stock-forecast/RIVN +- The VW JV was broadly seen by analysts as **de-risking Rivian's technology roadmap** but not eliminating execution risk on manufacturing scale. +- Some analysts maintained a bullish contrarian view, with Rivian stock characterized as "outrageously cheap" relative to its long-term potential. + - Source: Yahoo Finance — https://finance.yahoo.com/markets/stocks/articles/rivian-stock-outrageously-cheap-heres-122500874.html +- Rivian Q1 2024 earnings coverage framed cost reductions as the key near-term catalyst. + - Source: Rivian Newsroom, Q1 2024 Results — https://rivian.com/newsroom/article/rivian-releases-first-quarter-2024-financial-results +- As of mid-2025, with R2 launch approaching, analyst focus shifted to **R2 volume ramp** as the next major inflection point. + - Source: Investing.com — https://www.investing.com/news/earnings/rivian-earnings-in-focus-as-r2-launch-approaches-93CH-4650346 --- -## 7. Analyst & Institutional Media Opinion +## 6. Brand Perception & Social Media Sentiment -### Consumer Reports — Charging Network Rating -- A March 2025 Consumer Reports survey ranked Rivian's charging network **among the two most problem-free in the United States**, alongside Tesla's Supercharger network. -- This is a significant third-party quality validation that crossed into mainstream financial media. -- **Source:** [Yahoo Finance](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) - -### Wall Street / Financial Analyst Outlook -- Research did not surface specific price-target or Buy/Sell/Hold rating data from sell-side analysts within the citation set. However, general financial press context throughout the period reflects: - - Concern about **cash burn and time to profitability**. - - Cautious optimism tied to the **R2 launch as a volume catalyst**. - - Monitoring of the **Volkswagen Group investment** (a major strategic development that broadened Rivian's capital base and technology partnership footprint). - -> **Note:** Investors and analysts should consult current equity research from sources such as Bloomberg, Morgan Stanley, or Goldman Sachs for live ratings data not captured in this research cycle. +- **Enthusiast/Owner Community:** Broadly positive, particularly around vehicle design, off-road capability, and software updates. The R2 and R3 generated strong organic social enthusiasm. +- **R2 Reservation Surge:** 68,000+ reservations in under 24 hours (March 2024) is a strong leading indicator of consumer brand health. +- **EV Industry-Wide Headwinds:** Macro EV demand hesitancy (charging infrastructure concerns, affordability, range anxiety) affected Rivian's addressable market independent of brand-specific sentiment. +- **Morning Consult Data Point:** Rivian scored a notable brand victory in Washington State in a recent Morning Consult automotive industry trust report, though broader national brand trust quantification remains sparse in public data. + - Source: LinkedIn/Morning Consult — https://www.linkedin.com/posts/jennifer-cox-mba_morning-consults-report-on-the-automotive-activity-7445131953277693952-If0u +- **Electrek:** Coverage characterizes Rivian as "riding high" on production/delivery momentum in positive periods, though this narrative fluctuated with guidance changes. + - Source: Electrek (via Facebook) — https://www.facebook.com/electrekco/posts/rivian-is-riding-high-and-recently-shared-production-and-delivery-numbers-ahead-/1383721003793627/ --- -## 8. Customer Reviews & Owner Satisfaction - -### Charging Network Satisfaction -- Consumer Reports survey (March 2025) places Rivian at the **top tier** for charging reliability — a key pain point across the EV industry and a strong differentiator. -- **Source:** [Yahoo Finance / Consumer Reports](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html) - -### Forum & Community Signals -- r/Rivian community sentiment is broadly positive; owners frequently discuss vehicle capability, adventure use cases, and software updates. -- Known friction points in earlier years (panel gaps, software bugs at launch) appear to have diminished in frequency in more recent community discussions. +## 7. Key Reputational Risks -### Formal Survey Data (J.D. Power / Consumer Reports Ownership Studies) -- **No direct J.D. Power Initial Quality Study (IQS) or Vehicle Dependability Study (VDS) data** for Rivian was surfaced in this research cycle. Rivian's relatively low sales volumes have historically placed it outside some ranked segments. - -> **Owner Satisfaction: MODERATELY POSITIVE.** Charging experience is a genuine brand strength. Vehicle quality perception has improved since early delivery complaints. Formal study data remains limited due to Rivian's still-emerging scale. +| Risk | Severity | Pattern or Isolated? | +|---|---|---| +| **Cash burn & capital dependence** | High | Pattern — ongoing; mitigated but not resolved by VW JV proceeds and 2025 gross profit milestone | +| **R2 execution / production ramp** | High | Forward-looking; 2026 launch is a make-or-break moment | +| **Delivery volume decline** | Medium–High | Pattern — 2024 guidance cuts + 2025 YoY decline | +| **Recurring layoffs** | Medium | Pattern — three documented rounds in 2024–2025; each erodes workforce morale signals | +| **C-suite instability** | Medium | Pattern (mid-2024 wave); CEO doubling as CMO is a short-term stability concern | +| **EV demand environment / federal policy** | Medium–High | Macro/external; EV tax credit expiration cited as driver of Oct 2025 layoffs | +| **Competitive pressure (Tesla, legacy OEMs)** | Medium | Structural — Tesla maintains pricing/scale advantage; Ford F-150 Lightning, GM EV trucks competitive in Rivian's core truck/SUV space | +| **Recalls & quality maturation** | Low–Medium | Pattern of routine bulletins; no systemic fleet-wide defect to date | +| **CEO perception / governance optics** | Low | Isolated (unverified German press); compensation story resonant but not yet a sustained campaign | --- -## 9. Brand Partnerships, Endorsements & Commercial Deals - -### Amazon — Electric Delivery Van (EDV) Program -- Rivian has an ongoing commercial relationship with **Amazon** for the delivery of electric delivery vans (EDVs) — one of the largest fleet EV contracts in U.S. history (up to 100,000 vans committed). -- While no new partnership announcement was specifically dated within the most recent 12-month citation window, this deal remains a cornerstone of Rivian's commercial identity and a major revenue line. -- Amazon is also a significant Rivian investor. - -### Volkswagen Group Strategic Investment & Joint Venture -- One of the most material strategic developments in the research period: **Volkswagen Group** announced a major investment in Rivian and a **joint venture** to share Rivian's electrical architecture and software platform across VW Group brands. -- This partnership was widely covered as a validation of Rivian's technology stack and a critical capital infusion for funding the R2 program. - -### Rivian Adventure Network — Open Network Partnership -- By opening the Adventure Network to all EVs, Rivian effectively entered into a de facto **industry partnership model**, enhancing relationships with the broader EV ecosystem. -- **Source:** [Rivian Newsroom](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-chargers-for-all-evs) +## 8. Distinguishing Patterns vs. Isolated Incidents -> **Note:** Explicit new endorsement or celebrity partnership announcements were not identified in the citation set for the trailing 12-month window. +**Patterns (recurring, structurally significant):** +1. **Layoffs** — Three documented rounds in under 24 months signal ongoing cost-structure challenges. +2. **Production/delivery guidance misses** — Multiple consecutive periods of cutting or missing volume targets. +3. **Recall/software bulletins** — Consistent with an early-stage OEM; volume of activity is notable. +4. **C-suite turnover** — Four executive departures in eight weeks (mid-2024) is statistically anomalous. ---- - -## 10. Pattern Analysis: Isolated Incidents vs. Recurring Themes - -| Issue | Classification | Severity | Notes | -|-------|---------------|----------|-------| -| Hands-free system recall (2023) | **Isolated** | Medium | Addressed via update; no follow-on recalls identified | -| Workforce reductions | **Recurring Pattern** | Medium-High | Two distinct layoff events; reflects structural financial pressure | -| Production ramp challenges | **Recurring Pattern** | Medium | Consistent theme since IPO; partially offset by R2 milestone progress | -| Charging network praise | **Recurring Positive Pattern** | — | Consistent third-party validation; brand differentiator | -| R2 product excitement | **Recurring Positive Pattern** | — | Sustained positive media cycle around mass-market launch | -| Financial burn-rate scrutiny | **Recurring Pattern** | Medium | Persistent but industry-normalized for pre-profitability EV makers | +**Isolated Incidents (not yet evidence of a pattern):** +1. **CEO anonymous criticism in German press** — Single-source, unverified; no corroborating coverage. +2. **CEO compensation vs. per-vehicle losses story** — Single media cycle; no governance escalation. +3. **Price hike backlash** — The major 2022 incident has not recurred; no 2024–2025 equivalent. --- -## 11. Summary Scorecard - -| Dimension | Rating | Notes | -|-----------|--------|-------| -| **Media Sentiment** | 🟡 Neutral-Positive | Product launches positive; financials cautionary | -| **Social Sentiment** | 🟢 Positive | R2 enthusiasm; engaged owner community | -| **Analyst Opinion** | 🟡 Cautiously Optimistic | VW deal and R2 key catalysts; profitability concerns remain | -| **Customer Satisfaction** | 🟢 Moderately Positive | Charging network top-rated; quality improving | -| **Controversy Risk** | 🟢 Low-Moderate | No governance scandals; layoffs are the main reputational drag | -| **Leadership Stability** | 🟢 Stable | CEO in place; board departure routine | -| **Partnership Strength** | 🟢 Strong | Amazon fleet deal + VW JV = significant institutional backing | -| **Brand Trajectory** | 🟡 Improving | R2 is a potential inflection point; execution risk remains | +## 9. Sources Index + +| # | Source | URL | +|---|--------|-----| +| 1 | Reuters – VW $5B Investment (Jun 2024) | https://www.reuters.com/business/autos-transportation/volkswagen-invest-up-5-billion-rivian-part-tech-joint-venture-2024-06-25 | +| 2 | Rivian Newsroom – VW JV Launch (Nov 2024) | https://rivian.com/newsroom/article/rivian-and-volkswagen-group-announce-the-launch-of-their-joint-venture | +| 3 | CNBC – VW JV $5.8B (Nov 2024) | https://www.cnbc.com/2024/11/12/rivian-volkswagen-joint-venture.html | +| 4 | Automotive News – VW JV Update | https://www.autonews.com/volkswagen/an-vw-rivian-joint-venture-update-0406 | +| 5 | Rivian VW JV Website | https://rivianvw.tech/ | +| 6 | Fortune – R2 Reveal / 68k Reservations (Mar 2024) | https://fortune.com/2024/03/09/rivian-r2-electric-vehicles-elon-musk-tesla-cost-cutting/ | +| 7 | Rivian – R2 Product Page | https://rivian.com/en-CA/r2 | +| 8 | Autoevolution – Plant Retooling (May 2024) | https://www.autoevolution.com/news/rivian-plant-retooling-paves-the-way-to-profitability-by-the-end-of-2024-233577.html | +| 9 | WardsAuto – Plant Retooling Complete (May 2024) | https://www.wardsauto.com/news/archive-auto-rivian-completes-plant-retooling-pivotal-to-profitability/715673/ | +| 10 | Reuters – 2025 Deliveries Miss (Jan 2026) | https://www.reuters.com/business/autos-transportation/rivians-2025-deliveries-slip-below-expectations-ev-demand-pressure-persists-2026-01-02/ | +| 11 | Yahoo Finance – 2025 Gross Profit / Revenue | https://sg.finance.yahoo.com/news/rivian-defies-expectations-despite-rough-023300613.html | +| 12 | WardsAuto – 10% Salaried Layoff (Feb 2024) | https://www.wardsauto.com/news/archive-auto-rivian-salaried-staff-reduction/708175/ | +| 13 | Rivian Forums – 140 Layoffs (Jun 2025) | https://www.rivianforums.com/rivian-lays-off-140-employees-to-improve-operational-efficiency-for-r2/ | +| 14 | Rivian Forums – 600+ Layoffs (Oct 2025) | https://www.rivianforums.com/rivian-to-lay-off-600-workers | +| 15 | WSJ – 600+ Layoffs (Oct 2025) | https://www.wsj.com/business/autos/rivian-to-layoff-more-than-600-workers-amid-ev-pullback-03a792e5 | +| 16 | CNBC – 600+ Layoffs (Oct 2025) | https://www.cnbc.com/2025/10/23/rivian-layoffs.html | +| 17 | The HR Digest – Layoff Severance (2025) | https://www.thehrdigest.com/the-rivian-layoffs-in-2025-come-with-severance-benefits-for-affected-workers/ | +| 18 | eletric-vehicles.com – Headcount Up YoY (2025) | https://eletric-vehicles.com/rivian/rivian-increases-headcount-in-2025-as-vws-joint-venture-consolidation-offsets-layoffs/ | +| 19 | eletric-vehicles.com – Four C-Suite Exits (Aug 2024) | https://eletric-vehicles.com/rivian/rivian-loses-fourth-c-level-executive-in-less-than-2-months/ | +| 20 | Automotive News – CEO as Interim CMO (Oct 2025) | https://www.facebook.com/AutoNews/posts/rivian-ceo-rj-scaringe-will-serve-as-interim-marketing-chief-as-the-ev-maker-res/1412337770751952/ | +| 21 | The Autopian – CEO Criticism in German Press (Apr 2025) | https://www.theautopian.com/someone-has-it-out-for-rivian-founder-rj-scaringe/ | +| 22 | Reddit/NHTSA – Seat Belt Recall (2025) | https://www.reddit.com/r/Rivian/comments/1l58b4m/rivian_automotive_llc_rivian_is_recalling_certain/ | +| 23 | Recharged.com – R1S 2025 Recalls List | https://recharged.com/articles/2025-rivian-r1s-recalls-list | +| 24 | CBT News – NHTSA Multi-OEM Recalls (Feb 2025) | https://www.cbtnews.com/nhtsa-announces-major-vehicle-recalls-affecting-multiple-automakers/ | +| 25 | Rivian – Official Recall Page | https://rivian.com/support/article/recall-information | +| 26 | Yahoo Finance – RIVN Production Guidance Cut (Oct 2024) | https://finance.yahoo.com/news/rivian-shares-fall-3-slashes-141500557.html | +| 27 | Rivian Newsroom – Q1 2024 Financials | https://rivian.com/newsroom/article/rivian-releases-first-quarter-2024-financial-results | +| 28 | Investing.com – R2 Launch / Earnings Preview | https://www.investing.com/news/earnings/rivian-earnings-in-focus-as-r2-launch-approaches-93CH-4650346 | +| 29 | Yahoo Finance – Analyst Stock Forecast (RIVN) | https://finance.yahoo.com/research/stock-forecast/RIVN | +| 30 | Yahoo Finance – "Outrageously Cheap" Bull Case | https://finance.yahoo.com/markets/stocks/articles/rivian-stock-outrageously-cheap-heres-122500874.html | +| 31 | TheStreet – CEO Compensation vs. Per-Vehicle Loss | https://www.facebook.com/TheStreet/posts/rivian-ceo-walks-away-with-403-million-despite-huge-lossesa-company-that-lost-bi/1505317951189584/ | +| 32 | Careery.pro – Layoff Tracker / SEC Confirmation | https://careery.pro/blog/layoffs/rivian-layoffs | +| 33 | LinkedIn/Morning Consult – Brand Trust Report | https://www.linkedin.com/posts/jennifer-cox-mba_morning-consults-report-on-the-automotive-activity-7445131953277693952-If0u | +| 34 | Electrek – Delivery/Production Sentiment | https://www.facebook.com/electrekco/posts/rivian-is-riding-high-and-recently-shared-production-and-delivery-numbers-ahead-/1383721003793627/ | --- -*Report prepared using open-source media intelligence research. All claims are linked to cited sources. Analyst ratings and financial projections should be verified against current sell-side research. Social media sentiment assessments reflect available indexed content and may not capture real-time shifts.* +*Note: A subset of findings carries low-confidence indicators from the research aggregation layer, particularly quantified social media sentiment scores and specific named executive departure details. For those fields, primary verification via SEC 8-K filings, Rivian's official investor relations page (investors.rivian.com), and direct social listening platforms is recommended before drawing firm conclusions.* diff --git a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md index 3094794..ccf67de 100644 --- a/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md +++ b/python-recipes/parallel-deepagents-due-diligence/reports/workpapers/rivian-due-diligence-report.md @@ -1,11 +1,11 @@ -# RIVIAN AUTOMOTIVE, INC. (NASDAQ: RIVN) -## Comprehensive Due Diligence Report -**Prepared:** April 2026 | **Status:** Draft for Human Review — Not a Final Memo -**Workpapers:** corporate-profile.md · financial-health.md · litigation-regulatory.md · news-reputation.md · competitive-landscape.md · competitor-tesla.md · competitor-ford.md · competitor-mercedes.md +# Due Diligence Report: Rivian Automotive, Inc. (NASDAQ: RIVN) +**Classification:** Draft — For Human Review and Verification +**Prepared:** April/May 2026 +**Research Basis:** SEC filings (EDGAR), Rivian Investor Relations, Cox Automotive/KBB, NHTSA recall portal, OSHA IMIS, court dockets, news sources. All claims carry inline citations. Medium- and low-confidence findings are explicitly flagged in Section 7. --- -## TABLE OF CONTENTS +## Table of Contents 1. [Executive Summary](#1-executive-summary) 2. [Corporate Profile](#2-corporate-profile) 3. [Financial Overview](#3-financial-overview) @@ -17,338 +17,349 @@ --- -## 1. EXECUTIVE SUMMARY +## 1. Executive Summary -Rivian Automotive, Inc. is an American pure-play electric vehicle manufacturer that went public in November 2021 in one of the five largest IPOs in U.S. history. The company designs, manufactures, and sells the R1T electric pickup truck, R1S electric SUV, and Electric Delivery Vans (EDVs) primarily for Amazon. Rivian is EV-native by design, built from the ground up on a skateboard platform that gives it architectural advantages over legacy OEM competitors. After years of production ramp challenges and mounting cumulative losses exceeding $17 billion, Rivian crossed a significant threshold in 2024 by achieving its first-ever positive gross profit quarters (Q3 and Q4 2024). As of April 2026, Rivian has commenced R2 production at its Normal, Illinois facility — its first mass-market-priced vehicle at ~$45,000–$58,000 — with customer deliveries beginning in spring 2026. +Rivian Automotive is an American electric vehicle manufacturer occupying a differentiated niche in the electric pickup, premium SUV, and commercial delivery van segments. Founded in 2009 by MIT-trained engineer RJ Scaringe and taken public in November 2021 in one of the largest U.S. IPOs on record (~$11.9B raised), Rivian has spent the subsequent years navigating the painful transition from startup to scaled manufacturer. As of mid-2026, the company has reached several meaningful milestones — including its first-ever annual gross profit ($144M for FY2025), a transformative $5.8B joint venture with Volkswagen Group, and the launch of its mass-market R2 vehicle — but remains deeply GAAP-unprofitable (FY2025 net loss estimated ~$3.85B) and faces a critical 18-month execution window to demonstrate that the R2 ramp can deliver sustainable unit economics. -**Overall Risk Assessment: MEDIUM-HIGH.** Rivian presents a compelling strategic story anchored by the Amazon EDV contract (100,000 vans), the Volkswagen Group joint venture (up to $5.8B committed), and a $6.6B DOE loan — a combined $12.4B+ in committed external capital that materially reduces near-term liquidity risk. However, significant risks remain: the company is deeply unprofitable at the net income level (~$4.7B net loss in 2024), FY2025 vehicle deliveries declined 18% year-over-year to ~42,247 units (partially offset by VW JV software revenue), a $250M securities class action settlement is pending final court approval (hearing: May 15, 2026), and the company faces intensifying competition from Tesla's Cybertruck and Ford's F-150 Lightning. The pivot to the mass-market R2 is existentially important — successful execution could validate Rivian as a durable EV platform company, while failure would stress an already fragile balance sheet. +The strategic picture is one of genuine potential hedged by execution risk. Rivian's core strengths — brand differentiation in the adventure/outdoor space, a software-defined architecture licensed by VW, an exclusive 100,000-unit Amazon commercial fleet contract, and a $6.1B cash runway supplemented by a conditional $6.57B DOE loan — provide meaningful competitive moats that legacy OEMs cannot replicate cheaply or quickly. However, the R1T pickup lags both Tesla's Cybertruck and Ford's F-150 Lightning in unit volume by a wide margin, automotive gross margins remain negative (only software/services and regulatory credit revenue produced the headline gross profit), and a pattern of production guidance misses, multiple rounds of layoffs, and recurring workplace safety issues at the Normal, Illinois facility have created reputational and operational risk. -**Headline metrics as of FY2025:** $5.4B consolidated revenue (+8% YoY), 42,247 vehicles delivered (−18% YoY), ~$120M Q4 2025 gross profit (down from $170M in Q4 2024 due to regulatory credit timing), Georgia plant groundbreaking completed (September 2025), production start 2028. This report is a draft and all figures should be independently verified against Rivian's audited 10-K filings. +From a due diligence risk perspective, the headline concerns are: (1) a $250M securities class action settlement pending final court approval (May 15, 2026), arising from alleged IPO misstatements about vehicle cost structures; (2) an open OSHA fatality investigation following a worker death at the Normal facility in March 2026; (3) continued negative automotive gross margins masked by JV-derived software revenue; and (4) significant policy exposure from EV federal tax credit volatility. This report rates Rivian as a **MEDIUM-HIGH** risk subject requiring enhanced due diligence on the litigation track and careful verification of the automotive unit economics underlying the reported gross profit milestone. --- -## 2. CORPORATE PROFILE +## 2. Corporate Profile -### 2.1 Legal Entity & Structure -| Field | Detail | -|---|---| -| **Legal Name** | Rivian Automotive, Inc. | -| **Incorporation** | State of Delaware | -| **Stock Classes** | Class A (publicly traded) and Class B common stock | -| **Ticker / Exchange** | RIVN / Nasdaq | -| **Headquarters** | Irvine, California | -| **Primary Manufacturing** | Normal, Illinois (former Mitsubishi facility) | -| **Future Manufacturing** | Stanton Springs North, Social Circle, Georgia — groundbreaking September 2025; construction beginning 2026; vehicle production expected 2028 | +### 2.1 Legal Identity and Structure +Rivian Automotive, Inc. is a Delaware corporation (EIN: 47-3544981; SEC File No. 001-41042) listed on the Nasdaq Global Select Market under the ticker **RIVN**. It employs a dual-class share structure: Class A common stock is publicly traded; Class B shares carry additional voting rights. There is no parent company — Rivian is an independent public company. + +> **Source:** [SEC 10-K FY2024](https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm) · [SEC S-1](https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm) + +### 2.2 Founding History +Rivian was founded in June 2009 in Rockledge, Florida by **Robert "RJ" Scaringe** under the original name Mainstream Motors. The company was renamed Rivian Automotive in 2011 and pivoted to electric adventure vehicles. Scaringe holds a B.S. from Rensselaer Polytechnic Institute and a Ph.D. in Mechanical Engineering from MIT and is the sole original founder. He was designated Board Chair in March 2018 and remains both CEO and Chair. -> Source: Rivian S-1 Registration Statement (SEC EDGAR): https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | Georgia plant: https://georgia.org/rivian +> **Source:** [Rivian S-1](https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm) + +### 2.3 Headquarters and Facilities + +| Location | Purpose | +|---|---| +| **14600 Myford Road, Irvine, CA 92606** | Principal Executive Offices (HQ) | +| **Normal, Illinois** | Operational manufacturing — R1T, R1S, EDV; R2 production launched April 2026 | +| **Stanton Springs North, Georgia** | Future plant (~2,000 acres); Phase 1 construction targeted 2026; production anticipated 2028; planned capacity 300,000 vehicles/year | -### 2.2 Founding & History -Rivian was founded in June 2009 by Dr. Robert J. (RJ) Scaringe, the company's sole founder, who holds a Ph.D. in Mechanical Engineering from MIT's Sloan Automotive Laboratory. The company spent its first decade in stealth mode developing its EV skateboard platform, pivoting from passenger cars to adventure-oriented electric trucks and SUVs. Rivian publicly unveiled the R1T and R1S at the Los Angeles Auto Show in November 2018, simultaneously with securing a landmark 100,000-van commercial vehicle contract from Amazon. The company commenced R1T deliveries in late 2021, went public in November 2021, and in April 2026 began production of its mass-market R2 SUV. +> **Sources:** [Rivian Our Company](https://rivian.com/our-company) · [SEC 8-K Mar 18, 2026](https://www.sec.gov/Archives/edgar/data/1874178/000110465926031794/tm269292d1_8k.htm) · [Georgia.org](https://georgia.org/rivian) -> Source: Rivian S-1 (SEC EDGAR) | Rivian — Our Company: https://rivian.com/our-company +### 2.4 Key Executives -### 2.3 Leadership | Name | Title | Notes | |---|---|---| -| **RJ Scaringe** | CEO & Chairman of the Board | Sole founder; in role since 2009; no credible departure signals | -| **Claire McDonough** | Chief Financial Officer | Listed in 2025 Proxy | -| **Jiten Behl** | Chief Growth Officer | Listed in 2025 Proxy | -| **Kjell Gruner** | Former Chief Commercial Officer | Resigned July 2024 | +| **RJ Scaringe** | Founder, CEO & Board Chair | Sole founder; Board Chair since 2018; served as interim CMO Oct 2025 | +| **Claire McDonough** | CFO | Board member of Rivian & VW Group Technologies JV | +| **Javier Varela** | COO | — | +| **Mike Callahan** | CAO & CLO | Board member of Mind Robotics, Inc. | +| **Greg Revelle** | CCO | Appointed January 12, 2026 | -The Board maintains a combined CEO/Chair structure under Scaringe — a governance point disclosed and addressed in proxy filings. Amazon's SVP of Worldwide Corporate & Business Development (Peter Krawiec) serves as an Independent Director, reflecting the depth of the Amazon relationship. +> **Sources:** [Rivian Our Company](https://rivian.com/our-company) · [Rivian 2026 Proxy](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) -> Source: Rivian 2025 Proxy Statement (DEF 14A): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm +### 2.5 Board of Directors -### 2.4 Key Strategic Relationships -- **Amazon**: ~18.1% equity holder; 100,000-van EDV purchase commitment; 30,000+ vans in service by mid-2025, delivering 1 billion+ packages in 2024. -- **Volkswagen Group**: ~16% equity holder; joint venture to co-develop electrical architecture and software, with up to $5.8B committed through 2026. -- **Abdul Latif Jameel**: ~12.7% equity holder (investor via Global Oryx & NV Holdings; investor rights agreement November 2024). -- **Ford Motor Company**: ~1.6% equity holder (reduced from initial ~$500M position after Ford sold down starting May 2022). The earlier platform co-development partnership was dissolved. +The board comprises seven directors including the CEO. Notable additions include **Aidan Gomez** (AI expert, joined April 21, 2025) and the recent resignation of **Rose Marcario** (effective January 1, 2026). Lead Independent Director is **Karen Boone**. Other independent directors include John Krafcik (former Waymo CEO) and Jay Flatley (former Illumina CEO). -### 2.5 Headcount -Peak headcount was approximately 14,000–16,000 (2022–2023). As of FY2024, headcount was approximately 14,861, following multiple rounds of layoffs including a ~10% reduction, a ~4% reduction, and a ~4.5% reduction in October 2025 (concurrent with the securities settlement announcement). Workforce reductions are a recurring pattern and signal sustained financial pressure. +> **Source:** [Rivian 2026 Proxy](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [Rivian Newsroom – Aidan Gomez](https://rivian.com/en-NL/newsroom/article/aidan-gomez-joins-rivians-board-of-directors) ---- +### 2.6 Ownership Structure -## 3. FINANCIAL OVERVIEW +Major shareholders as of early 2026: -### 3.1 Pre-IPO Funding History (~$10.5B+ total raised privately) -| Date | Round | Amount | Key Investors | -|---|---|---|---| -| Jan 2019 | Strategic | ~$500M | Ford Motor Company | -| Feb 2019 | Strategic | ~$700M | Amazon | -| Jun 2019 | Series D | $500M | Cox Automotive | -| Dec 2019 | Series E | $1.3B | T. Rowe Price, Fidelity, Baron Capital | -| Jul 2020 | Series F | $2.65B | T. Rowe Price, Blackstone, Soros, Coatue, Dragoneer | -| Jan 2021 | Series G | $2.65B | T. Rowe Price, Fidelity, BlackRock, Dragoneer, Amazon | -| Jul 2021 | Pre-IPO | $2.5B | Amazon Climate Pledge Fund, D1 Capital | - -> Source (confirmed): Rivian Newsroom: https://rivian.com/newsroom/article/rivian-closes-2-5-billion-funding-round | Ford: https://media.ford.com/content/fordmedia/fna/us/en/news/2019/04/24/rivian.html - -### 3.2 IPO (November 2021) -| Metric | Detail | +| Shareholder | Approximate Stake | |---|---| -| IPO Date | November 10, 2021 | -| IPO Price | $78.00/share | -| Opening Trade | $106.75/share | -| Gross Proceeds | ~$11.9B | -| All-Time High | ~$179.47 (November 16, 2021 — 6 days post-IPO) | -| Lead Underwriters | Goldman Sachs, J.P. Morgan, Morgan Stanley | +| **Amazon** | ~12.9% | +| **Volkswagen Group** | ~11.7% (via convertible notes converting to equity) | +| **Global Oryx (Abdul Latif Jameel)** | ~9.0% | +| **Vanguard Group** | ~5.4% | -> Source: S-1 (SEC EDGAR): https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm | CNBC opening price: https://www.cnbc.com/2021/11/10/amazon-backed-ev-start-up-rivian-set-to-go-public-.html +> **Source:** [Rivian 2026 Proxy](https://www.stocktitan.net/sec-filings/RIVN/def-14a-rivian-automotive-inc-de-definitive-proxy-statement-3c11f30d38d2.html) · [SEC 8-K Mar 18, 2026](https://www.sec.gov/Archives/edgar/data/1874178/000110465926031794/tm269292d1_8k.htm) -### 3.3 Revenue and Financial Performance by Year -| Year | Revenue (USD) | Net Income/(Loss) | Key Notes | -|---|---|---|---| -| 2020 | $0 | ($1.0B) | Pre-revenue | -| 2021 | $55M | ($4.7B) | First deliveries; IPO year | -| 2022 | $1.66B | ($6.8B) | Production ramp; gross losses | -| 2023 | $4.43B | ($5.4B) | Production scaling | -| 2024 | **$4.97B** | **($4.7B)** | First positive gross profit quarters (Q3, Q4) | -| 2025 | **$5.39B** | TBD (10-K pending full release) | VW JV software revenue drives 8% rev. growth despite 18% delivery decline | +### 2.7 Subsidiaries and Affiliates +- **Rivian and Volkswagen Group Technologies, LLC** — 50/50 joint venture for software and electrical architecture development, launched November 2024. +- **Also, Inc.** — Micromobility spin-out; Rivian holds ~35.3% stake (2025). +- **Mind Robotics, Inc.** — Industrial robotics venture; Rivian holds ~37.6% stake (2025). -> Source: Wikipedia (confirmed from Rivian SEC filings): https://en.wikipedia.org/wiki/Rivian | FY2025 earnings release: https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results +### 2.8 Headcount -### 3.4 Production & Deliveries -| Year | Production | Deliveries | +| Year-End | Employees | YoY Change | |---|---|---| -| 2024 | 49,476 | 51,579 | -| 2025 | 42,284 | 42,247 | +| 2022 | ~14,120 | +35.5% | +| 2023 | 16,790 | +18.9% | +| 2024 | 14,861 | **–11.5%** | +| 2025 | 15,232 | +2.5% | + +Headcount peaked in 2023 amid aggressive hiring, then was cut sharply in 2024 through multiple layoff rounds. The modest 2025 recovery is largely attributable to VW JV personnel consolidation offsetting operational workforce reductions. + +> **Sources:** [Macrotrends](https://www.macrotrends.net/stocks/charts/RIVN/rivian-automotive/number-of-employees) · [eletric-vehicles.com](https://eletric-vehicles.com/rivian/rivian-increases-headcount-in-2025-as-vws-joint-venture-consolidation-offsets-layoffs/) + +--- -> ⚠️ **Notable**: FY2025 deliveries declined 18% YoY, attributed to expiring EV tax credits and a higher mix of EDV deliveries. This is a yellow flag requiring monitoring. R2 production started April 22, 2026; deliveries beginning spring 2026 could reverse this trend. -> -> Source: Rivian Newsroom (2024 figures): https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures | (2025 figures): https://rivian.com/newsroom/article/rivian-releases-q4-2025-production-and-delivery-figures +## 3. Financial Overview -### 3.5 Liquidity Position -| Facility | Amount | Status | +### 3.1 Pre-IPO Funding +Rivian raised over **$10.5B in private capital** across approximately 10 rounds before going public. Landmark investors include **Amazon** ($700M, February 2019), **Ford** ($500M, April 2019), **Cox Automotive** ($350M), and a series of T. Rowe Price-led rounds totaling $6.45B (December 2019 through July 2021). Ford fully exited its Rivian stake in 2023. + +> **Sources:** [NYT Feb 2019](https://www.nytimes.com/2019/02/15/business/rivian-amazon.html) · [Rivian Newsroom Jan 2021](https://rivian.com/newsroom/article/rivian-announces-2-65-billion-investment-round) · [PitchBook](https://pitchbook.com/news/articles/rivian-ipo-timeline-electric-vehicles) + +### 3.2 IPO +Rivian priced its IPO at **$78.00/share** on November 9, 2021, raising **~$11.9B** in gross proceeds — one of the largest U.S. IPOs on record. The stock closed its first trading day (November 10, 2021) at $100.73, giving Rivian a market cap briefly approaching **$100B**. As of April 2026, the stock trades approximately **78% below** its IPO-day close, with a market cap of approximately **$21.4B**. + +> **Sources:** [PitchBook](https://pitchbook.com/news/articles/rivian-ipo-timeline-electric-vehicles) · [Macrotrends Market Cap](https://www.macrotrends.net/stocks/charts/RIVN/rivian-automotive/market-cap) · [CompaniesMarketCap](https://companiesmarketcap.com/rivian/marketcap) + +### 3.3 Revenue + +| Fiscal Year | Revenue | YoY | |---|---|---| -| DOE Loan (Dept. of Energy) | **$6.6B** | Closed January 16, 2025 | -| VW Joint Venture (committed through 2026) | **Up to $5.8B** | Active; generating software/services revenue | -| Cash on Hand (FY2024 total assets) | ~$15.4B total assets, ~$7.3B estimated cash/equivalents | Per 2024 10-K | -| Convertible Notes Outstanding | ~$1.5–2.5B (estimate) | Confirm in 10-K debt schedule | -| $250M securities settlement (cash portion) | ($183M) | Cash outflow pending final court approval | +| FY 2023 | ~$4.43B *(est.)* | — | +| FY 2024 | **$4.970B** | +12.1% | +| FY 2025 | **$5.387B** | +8.4% | + +**Note on revenue composition (FY2025):** Automotive revenues declined 15% YoY to $3.83B, while software and services revenue surged 222% to $1.56B — driven almost entirely by VW JV development fees. This composition shift is significant: revenue growth is increasingly dependent on JV milestone payments rather than vehicle sales. + +> **Sources:** [Rivian FY2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) · [Rivian FY2024 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2024-financial-results) + +### 3.4 Gross Profit — A Milestone with Caveats + +| Period | Consolidated GP | Automotive GP | Software & Services GP | +|---|---|---|---| +| FY 2024 (full year) | ~$(1.2B) | Negative | — | +| FY 2025 (full year) | **$144M** ✅ | **$(432M)** loss | **$576M** | +| Q4 2025 | $120M | $(59M) | $179M | + +Rivian achieved its first-ever positive annual gross profit in FY2025 — a genuine milestone. However, the underlying automotive segment remained materially loss-making (–$432M). The headline gross profit was entirely funded by software/services revenue from the VW JV. This distinction is critical: if JV milestone payments slow or stop (e.g., due to VW strategy shifts or milestone failures), consolidated gross profit would revert to deep negative territory. + +> **Source:** [Rivian FY2025 Earnings Release](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) + +### 3.5 Net Loss and Cash Burn +- **FY2024 net loss:** $(4.7B) (confirmed) +- **FY2025 net loss:** ~$(3.85B) *(estimated, analyst consensus; Rivian confirmed narrowed losses but full GAAP net income figure to be verified in 10-K filing)* +- **Q4 2025 net loss:** $(804M) (confirmed) +- **FY2025 free cash flow:** –$1.14B (confirmed via Q4 2025 earnings) +- **Year-end 2025 cash:** **$6.1B** *(confirmed via Q4 2025 earnings call)* + +> ⚠️ **Discrepancy note:** The financial-health workpaper estimated cash at ~$7.1–7.2B, but the confirmed Q4 2025 earnings release states **$6.1B in cash and equivalents** at year-end. The workpaper figure should be disregarded in favor of the confirmed number. -> Source: DOE loan: https://www.energy.gov (confirmed) | VW JV: Automotive News + Rivian Newsroom | Financials: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm +> **Source:** [Q4 2025 Earnings (X/SawyerMerritt)](https://x.com/SawyerMerritt/status/2022058503699882159) · [Rivian FY2025 Earnings](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) -### 3.6 Post-IPO Stock Performance -RIVN surged to an all-time high of ~$179.47 just 6 days after its IPO, then declined approximately 85% over subsequent years amid persistent losses and production challenges. As of early 2025, the stock traded in the ~$12–14 range with a market cap of ~$13–15B. The ~18.3% one-year return noted in litigation filings suggests modest recovery in 2025, though the stock remains deeply below its IPO price. +### 3.6 Debt and Liquidity +- **Total debt:** ~$4.9B *(estimated; to be verified against FY2025 10-K)* +- **DOE ATVM Loan:** Up to **$6.57B** conditional loan for the Georgia facility — **undrawn** as of this writing; subject to ongoing DOE approval milestones +- **VW JV pipeline:** Additional ~$1.46B in milestone-gated tranches remaining under the $5.8B deal (after ~$3B+ already invested); next $460M equity investment expected when first VW-brand vehicle using JV tech reaches market +- **2026 CapEx guidance:** $1.95–$2.05B +- **2026 Adjusted EBITDA guidance:** $(1.8B)–$(2.1B) loss -### 3.7 Key Financial Risks -- **Cumulative losses**: $17B+ through FY2023; deeper losses continue. -- **FCF negative**: Operating and investing cash outflows remain substantial; exact 2025 FCF pending full 10-K. -- **Delivery decline in 2025**: Unit deliveries fell 18% YoY; heavily dependent on R2 ramp for volume recovery. -- **Regulatory credit dependency**: Q4 2025 automotive gross profit turned negative due to a $270M decline in regulatory credit sales — demonstrating how dependent near-term profitability has been on non-recurring credits. -- **Convertible debt**: Approximate $1.5–2.5B in convertible notes creates dilution and refinancing risk (verify in 10-K). +> **Sources:** [Rivian Q4 2025 Earnings](https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results) · [Electrek Mar 27, 2026](https://electrek.co/2026/03/27/volkswagen-groups-joint-venture-with-rivian-hits-latest-milestone-unlocking-another-1b-for-the-ev-automaker/) · [TechCrunch Mar 27, 2026](https://techcrunch.com/2026/03/27/rivian-gets-another-1b-from-volkswagen/) + +### 3.7 Delivery Performance and Forward Guidance + +| Period | Deliveries | YoY Change | +|---|---|---| +| FY 2024 | 51,579 | +3.8% | +| FY 2025 | **42,247** | **–18.1%** | +| FY 2026 Guidance | **62,000–67,000** | +47–59% *(projected)* | + +The 18% delivery decline in 2025 reflects the expiration of EV federal tax credits, production plant retooling for R2, and softened consumer demand. The 2026 guidance of 62,000–67,000 vehicles represents an ambitious ramp anchored by R2 customer deliveries beginning Q2 2026. Analysts polled by FactSet project ~17,200 R2 deliveries in 2026, while Rivian has implied 20,000–25,000. The R2 ramp is the single most important near-term financial catalyst. + +> **Sources:** [Rivian Q4 2025 Deliveries](https://finance.yahoo.com/news/rivian-releases-q4-2025-production-133000178.html) · [Sherwood News Q1 2026](https://sherwood.news/markets/rivian-reports-q1-earnings-2026/) · [Reuters Jan 2, 2026](https://www.reuters.com/business/autos-transportation/rivians-2025-deliveries-slip-below-expectations-ev-demand-pressure-persists-2026-01-02/) --- -## 4. LITIGATION AND REGULATORY RISK ASSESSMENT +## 4. Litigation and Regulatory Risk Assessment + +> **EDD Recommendation:** Escalate. Two HIGH-risk items require immediate monitoring; additional MEDIUM-risk items aggregate into a meaningful operational risk profile. + +### 4.1 Securities Class Action — Crews v. Rivian ⚠️ HIGH RISK -### 4.1 Securities Class Action — *Crews v. Rivian Automotive* ⚠️ HIGH | Field | Detail | |---|---| -| Case | Charles Larry Crews, Jr., et al. v. Rivian Automotive, Inc., et al. | -| Case No. | 2:22-cv-01524-JLS-E (C.D. Cal.) | -| Allegations | Materially false and misleading IPO statements regarding production capability and financial condition; specifically that IPO documents failed to disclose that R1 material costs would exceed vehicle sale prices, necessitating a post-IPO price increase | -| Settlement | **$250,000,000 cash** | -| Settlement Announced | October 23, 2025 | -| Payment Structure | $67M from D&O insurance + **$183M from Rivian cash** | -| Preliminary Approval | December 18, 2025 | -| **Final Hearing** | **May 15, 2026 — PENDING** | -| Rivian's Position | Denies allegations; not an admission of fault or wrongdoing | +| **Case** | *Crews v. Rivian Automotive*, No. 2:22-cv-01524-JLS-E (C.D. Cal.) | +| **Filed** | March 7, 2022 (consolidated) | +| **Settlement** | $250,000,000 cash | +| **Status** | Preliminary approval December 18, 2025; **Final hearing May 15, 2026** | -> ⚠️ **Risk Note**: Final court approval has not yet been granted. The settlement hearing is scheduled for May 15, 2026. While preliminary approval is a strong indicator, monitor for objections or appeals. The $183M cash outflow is material to cash planning. -> -> Source: SEC 8-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm | WSJ: https://www.wsj.com/business/autos/rivian-to-pay-250m-to-settle-lawsuit-over-vehicle-cost-disclosure-in-ipo-documents-58f61702 | Settlement site: https://www.riviansecuritieslitigation.com/ +Plaintiffs alleged Rivian misled investors in its November 2021 IPO registration statement regarding vehicle production costs and pricing, then hiked prices for pre-ordered vehicles in March 2022 just weeks after the IPO, causing a sharp stock decline. Rivian agreed to the $250M settlement in October 2025. Final court approval is pending; the settlement is not yet binding. -### 4.2 California State Securities Action — RESOLVED ✅ -A parallel California state-court securities class action was appealed and affirmed dismissed by the California Court of Appeal, Third District on April 25, 2025. No further exposure from this matter. +**Implication:** This settlement carries significant implications — it validates the allegation that IPO-era disclosures were materially misleading. The $250M payment will draw down cash reserves. Insurers' contribution, if any, is not publicly confirmed and should be investigated. -> Source: Orrick firm announcement: https://www.orrick.com/en/News/2025/04/Rivian-IPO-Underwriters-Secure-Appellate-Victory-in-Securities-Class-Action +> **Sources:** [Reuters Oct 23, 2025](https://www.reuters.com/sustainability/boards-policy-regulation/rivian-agrees-pay-250-million-settle-ipo-fraud-lawsuit-2025-10-23/) · [CFO Dive](https://www.cfodive.com/news/rivian-pay-250m-settle-ipo-fraud-suit-electricvehicles/803780) · [Kessler Topaz](https://www.ktmc.com/news/kessler-topaz-achieves-250-million-settlement-in-rivian-ipo-suit) -### 4.3 Tesla v. Rivian — Trade Secret Litigation ⚠️ MEDIUM -Tesla sued Rivian alleging misappropriation of EV trade secrets (drivetrain, battery, manufacturing IP) by former Tesla employees who joined Rivian. After approximately four years of litigation and scheduled for trial in March 2025, the case was settled on confidential terms. The confidential nature of the settlement prevents full assessment of financial exposure or IP admissions. The dispute centered on Rivian's talent-acquisition practices from competitors. +### 4.2 OSHA Workplace Fatality — Normal, IL ⚠️ HIGH RISK -> ⚠️ **Risk Note**: Confidential terms are a limitation. Rivian's practice of hiring from Tesla should be monitored in future talent disputes. -> -> Source: Proskauer blog: https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip | Brand Protection Law: https://www.brandprotection.law/tesla-and-rivian-settle-four-year-trade-secret-dispute-before-trial/ +On **March 5, 2026**, a 61-year-old worker (Kevin Lancaster) was killed after being pinned between a semi-trailer and a loading dock at Rivian's Normal, Illinois warehouse. An OSHA fatality investigation is open; penalties and citation determinations are pending. -### 4.4 Executive Harassment & Employment Lawsuits ⚠️ MEDIUM -A TechCrunch investigation (December 20, 2024) revealed multiple previously unreported lawsuits alleging sexual harassment, gender discrimination, hostile work environment, and wrongful termination against Rivian executives. At least one case was settled via arbitration in August 2024. Others remain pending. +This event occurs against a backdrop of a **pattern of OSHA serious citations** at the Normal facility: 16 initial "serious" citations were documented between 2022–2024 (Rivian disputes, citing only 2 sustained). A separate contractor was seriously injured on-site in April 2024. This is not an isolated incident — it is the most severe escalation of a documented safety compliance concern. -> ⚠️ **Risk Note**: The "previously unreported" characterization raises a disclosure adequacy concern — reviewers should verify completeness in Rivian's SEC filings' legal proceedings section. +> **Sources:** [25 News Now Mar 5, 2026](https://www.25newsnow.com/2026/03/05/man-pinned-between-semi-trailer-loading-dock-rivian-warehouse-dies/) · [WGLT Jan 16, 2025](https://www.wglt.org/local-news/2025-01-16/at-rivian-some-workers-say-production-comes-at-the-expense-of-safety) -### 4.5 NHTSA Recall — Highway Assist Software (September 12, 2025) ⚠️ MEDIUM -24,214 units of the 2025 R1S and R1T were recalled for a software defect in the hands-free Highway Assist system that could misidentify a lead vehicle. Remedy: OTA software update. Resolved. +### 4.3 NHTSA Recalls — MEDIUM RISK -### 4.6 NHTSA Recall — Seat-Belt Retractor (January 15, 2026) ⚠️ MEDIUM -R1S and R1T model years 2022–2024 were recalled for an improperly secured seat-belt retractor requiring physical inspection and replacement. Unit count not publicly disclosed. +21+ recalls have been issued since May 2022. Safety-critical items include: +- **26V-009:** Improperly secured seat belt D-ring assemblies (~24,214 vehicles, 2022–2025 MY) +- **26V-003:** Toe link joint separation risk +- **25V-537:** Ground connection causing loss of drive power +- **22V-744:** Steering knuckle fastener loosening +- **23V-109:** Passenger airbag sensor faults +- Rivian vehicles included in a **multi-OEM NHTSA sweep** (Feb 2025) covering 225,000+ vehicles from Ford, Ram, and Rivian -### 4.7 Regulatory Screening Summary -| Area | Finding | -|---|---| -| SEC Enforcement | No enforcement actions or Wells Notices identified | -| OFAC / SDN / UN / EU Sanctions | Not listed; no sanctioned-party exposure | -| CFIUS | No filings or national security reviews; key investors (Amazon, Ford) are domestic | -| EPA / FTC / DOJ / State AG | No actions identified | +No open NHTSA defect investigations are disclosed; no fatalities linked to recalled defects. The recall volume is consistent with a young OEM still maturing its quality processes. ---- +> **Sources:** [Rivian Recall Portal](https://rivian.com/support/article/recall-information) · [CBT News Feb 24, 2025](https://www.cbtnews.com/nhtsa-announces-major-vehicle-recalls-affecting-multiple-automakers/) -## 5. NEWS AND REPUTATION ANALYSIS +### 4.4 Product Liability — Young v. Rivian (MEDIUM RISK) -### 5.1 Overall Sentiment: Neutral-to-Positive -Media coverage of Rivian over 2023–2026 has been cautiously optimistic. The dominant themes are the R2 launch (mass-market pivot), the Volkswagen JV (strategic validation), and financial sustainability scrutiny (persistent losses and layoffs). There are no governance, fraud, or ethical scandals beyond the disclosed employment lawsuits. +An active product liability suit (*Young v. Rivian Automotive*, C.D. Ill.) is currently pending. Specific allegations, damages sought, and case status details are not publicly disclosed beyond initial filing. Requires monitoring. -### 5.2 Key Positive Coverage -- **Consumer Reports (March 2025)**: Ranked Rivian Adventure Network and Tesla as the two most problem-free charging networks in the U.S. — a standout competitive differentiator. ([Source](https://finance.yahoo.com/news/tesla-rivian-charging-networks-fewest-183843690.html)) -- **R2 Launch (April 2026)**: Production start confirmed April 22, 2026; deliveries beginning "later this spring." Industry coverage was broadly positive, noting operational resilience after an EF-1 tornado briefly disrupted the Normal plant. ([Source](https://stories.rivian.com/r2-start-of-production-spring-delivery-2026)) -- **Adventure Network Opens to All EVs (December 2024)**: Strategic network-monetization pivot received favorable press. ([Source](https://rivian.com/newsroom/article/rivian-adventure-network-opens-its-first-planned-launch-chargers-for-all-evs)) -- **VW JV Announcement**: Treated as major strategic validation by financial and automotive press. -- **RJ Scaringe named Top Gear EV Influencer of the Year** (April 2026) — brand validation signal. +### 4.5 Trade Secrets — Tesla v. Rivian (RESOLVED) -### 5.3 Key Negative / Risk Coverage -- **Recurring layoffs** (10%, then 4%, then 4.5% reduction announced concurrent with securities settlement October 2025): Pattern signals sustained financial strain; framed in press within broader EV industry context but classified as a recurring theme, not an isolated event. -- **FY2025 delivery decline**: 18% drop in vehicle deliveries generated caution in financial media, offset by VW JV software revenue growth. -- **Employment lawsuits** (December 2024 TechCrunch investigation): Reputational flag; limited mainstream amplification but notable for HR due diligence. -- **Securities settlement**: $250M settlement widely covered; framed by Rivian as allowing focus on R2 launch; market reaction was contained. +Tesla's four-year trade secret lawsuit alleging misappropriation of battery technology via former Tesla employees hired by Rivian was **settled and dismissed** in December 2024/January 2025 on undisclosed terms. No ongoing exposure. -### 5.4 Leadership Stability -CEO RJ Scaringe remains in place with no credible departure signals. The only confirmed board departure — Rose Marcario (former Patagonia CEO) — was framed as a routine board refresh. Leadership risk is assessed as **low** based on available evidence. +> **Source:** [Proskauer](https://www.proskauer.com/blog/ev-trade-secrets-litigation-series-tesla-and-rivian-resolve-high-stakes-legal-clash-over-ip) -### 5.5 Customer & Social Media Sentiment -- **Owner sentiment**: Moderately positive. Charging network reliability is a standout strength. -- **Social media (Reddit, YouTube)**: Strongly positive around R2 launch; high organic engagement. -- **Analyst sentiment**: Cautiously optimistic — VW deal and R2 seen as key catalysts; path to profitability is the primary watch item. +### 4.6 Regulatory and Sanctions Screening + +| Category | Finding | +|---|---| +| **SEC** | No active investigations or enforcement actions | +| **FTC / DOJ** | No active investigations identified | +| **NLRB** | No enforcement actions identified | +| **OFAC / EU / UN Sanctions** | No designations | +| **EPA / Environmental** | No enforcement actions; Georgia EPD air quality permit issued August 2024 | +| **Georgia Plant Zoning** | Litigation dismissed; appellate affirmance September 30, 2024 — fully resolved | --- -## 6. COMPETITIVE LANDSCAPE +## 5. News and Reputation Analysis -### 6.1 Rivian's Market Positioning -Rivian occupies a distinctive niche as the only pure-play, EV-native manufacturer focused on the **adventure/outdoor lifestyle** segment. Unlike Tesla (tech-luxury), Ford (work-truck heritage), or Mercedes-Benz (prestige/fleet), Rivian's brand is explicitly tied to rugged outdoor recreation — off-road capability, water-fording depth, gear tunnels, and charging network corridors aligned with national parks and adventure routes. This positioning has generated strong brand loyalty among a specific demographic and allowed Rivian to command significant price premiums over legacy OEM competitors. +### 5.1 Overall Sentiment: Mixed / Neutral — Cautiously Optimistic on Technology, Weighed by Execution -Rivian's competitive moat rests on five pillars: -1. **Amazon EDV anchor**: 100,000-van commitment with 30,000+ already in service; the contract provides predictable manufacturing volume and cash flow visibility unavailable to most EV startups. -2. **VW JV**: Rivian's software and electrical architecture are being adopted by the Volkswagen Group, validating Rivian's technology stack and providing a significant new revenue stream (VW JV drove $1.56B in software/services revenue in FY2025). -3. **EV-native skateboard platform**: Packaging advantages (flat floor, frunk, gear tunnel) that ICE-derived competitors cannot replicate without full redesigns. -4. **Purpose-built charging network**: Rivian Adventure Network, now open to all EV brands, occupies adventure-route corridors underserved by Tesla's Supercharger network. -5. **R2 mass-market pivot**: Entry-level vehicle at ~$45,000–$58,000 addresses the biggest gap in Rivian's lineup and targets the highest-volume EV market segment. +Rivian's media reputation across 2024–2026 is bifurcated: product and technology coverage is strongly positive, while financial execution, workforce volatility, and delivery misses generate persistent negative narratives. ---- +### 5.2 Positive Signals + +**Volkswagen JV** (June–November 2024): VW Group's commitment of up to $5.8B — including a 50/50 technology JV to license Rivian's zonal electrical/electronic architecture — was widely treated as major strategic validation. Media framing characterized it as de-risking Rivian's technology roadmap and providing essential capital. March 2026 saw a further $1B milestone tranche unlocked after successful winter testing of Rivian's SDV architecture in VW prototypes. +> **Source:** [Reuters Jun 25, 2024](https://www.reuters.com/business/autos-transportation/volkswagen-invest-up-5-billion-rivian-part-tech-joint-venture-2024-06-25) · [Electrek Mar 27, 2026](https://electrek.co/2026/03/27/volkswagen-groups-joint-venture-with-rivian-hits-latest-milestone-unlocking-another-1b-for-the-ev-automaker/) -### 6.2 Competitor Analysis +**R2 Reveal** (March 2024): 68,000+ reservations within 24 hours of the R2 reveal at ~$45K — a figure that generated genuine enthusiasm and validated demand for a more affordable Rivian product. +> **Source:** [Fortune Mar 9, 2024](https://fortune.com/2024/03/09/rivian-r2-electric-vehicles-elon-musk-tesla-cost-cutting/) -#### Competitor 1: Tesla (Cybertruck & Model X) -Tesla is the world's dominant pure-play EV manufacturer with ~1.79M vehicles delivered in 2024 — approximately 35× Rivian's volume. Tesla competes directly with Rivian on two fronts: the **Cybertruck** (vs. R1T) and the **Model X** (vs. R1S). +**Gross Profit Milestone** (FY2025): $144M annual gross profit was reported as a landmark despite delivery volume declines, with positive media framing around financial maturation. +> **Source:** [Yahoo Finance Apr 2, 2026](https://sg.finance.yahoo.com/news/rivian-defies-expectations-despite-rough-023300613.html) -**Cybertruck vs. R1T**: The Cybertruck (priced from $72,235 RWD to $119,990 Cyberbeast) competes directly with the R1T ($72,990–$117,790). Cybertruck leads on payload (2,500 lb vs. 1,760 lb) and towing parity (~11,000 lb each), but Rivian's R1T Max Pack offers 410 miles of range vs. Cybertruck's 340 miles. R1T offers demonstrably superior off-road capability and interior finish quality. Critically, R1T qualifies for IRA EV tax credits (~$7,500); Cybertruck does not — a meaningful price-of-purchase advantage for Rivian in the near term. +### 5.3 Negative Patterns (Recurring, Not Isolated) -**Model X vs. R1S**: R1S significantly outperforms Model X on towing (7,700 lb vs. 5,000 lb) and top-trim range (410 vs. 335 miles). Model X counters with Plaid tri-motor performance (2.5-sec 0-60) and Tesla's brand halo. Model X pricing ($79,990–$99,990) overlaps with R1S pricing. +**Layoffs (three rounds in 13 months):** February 2024 (~10% salaried workforce), June 2025 (~140 employees), October 2025 (600+ workers, with EV tax credit expiration cited as trigger). Despite the volume, total headcount was up slightly in 2025 due to VW JV additions. +> **Sources:** [WardsAuto Feb 2024](https://www.wardsauto.com/news/archive-auto-rivian-salaried-staff-reduction/708175/) · [WSJ Oct 2025](https://www.wsj.com/business/autos/rivian-to-layoff-more-than-600-workers-amid-ev-pullback-03a792e5) · [CNBC Oct 2025](https://www.cnbc.com/2025/10/23/rivian-layoffs.html) -**Tesla's structural advantages over Rivian**: 60,000+ Supercharger stalls globally; $36.6B cash vs. Rivian's ~$7.3B; $97.7B revenue vs. $4.97B; profitable vs. deeply loss-making. Tesla's manufacturing scale (1.8M+ vehicles/year) provides cost-of-goods advantages Rivian cannot match at current volumes. However, the Musk-DOGE controversy has created measurable brand toxicity in Rivian's core demographic (environmentally conscious, outdoor-lifestyle consumers), a reputational shift that may benefit Rivian. +**Delivery underperformance:** 2024 guidance cut mid-year; 2025 actual deliveries (42,247) missed original guidance range of 46,000–51,000 by up to 9,000 units. Consecutive years of guidance misses have eroded analyst confidence in management forecasting. +> **Source:** [Reuters Jan 2, 2026](https://www.reuters.com/business/autos-transportation/rivians-2025-deliveries-slip-below-expectations-ev-demand-pressure-persists-2026-01-02/) -> Source: competitor-tesla.md | Tesla 10-K (SEC): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm +**C-suite instability:** Four C-level executive departures in an approximately eight-week window in summer 2024. CEO Scaringe assumed the interim CMO role in October 2025 following restructuring, adding multiple responsibilities to a single executive. A new CCO (Revelle) was only appointed in January 2026. +> **Source:** [Automotive News Oct 2025](https://www.facebook.com/AutoNews/posts/rivian-ceo-rj-scaringe-will-serve-as-interim-marketing-chief-as-the-ev-maker-res/1412337770751952/) + +### 5.4 Isolated Reputational Risks + +**CEO criticism in German press** (April 2025): A German business magazine published unnamed-source quotes implying dysfunction under CEO Scaringe. No corroborating named sources have surfaced in major outlets. *Low confidence — unverified; monitor for recurrence.* + +**CEO compensation optics**: CEO total compensation (~$403M) versus a ~$39K loss per vehicle was a one-cycle media story. No governance escalation followed. + +**2022 price-hike incident**: The retroactive pricing change for pre-order customers shortly after IPO — the triggering event for the securities class action — has not recurred. Brand reputational damage from this incident appears largely contained. --- -#### Competitor 2: Ford Motor Company (F-150 Lightning & E-Transit) -Ford competes with Rivian in both the consumer electric pickup (F-150 Lightning vs. R1T) and commercial electric van (E-Transit vs. EDV) segments. Ford's structural advantages are formidable: $176.2B revenue, $30B liquidity, 180,000 employees, and 3,000+ dealer service locations nationwide. +## 6. Competitive Landscape -**F-150 Lightning vs. R1T**: The Lightning's base Pro trim starts at $42,995 — approximately $30,000 below the entry-level R1T — making it the undisputed value leader in electric pickups. Lightning targets traditional F-Series loyalists and commercial fleet buyers; Rivian targets premium adventure-lifestyle consumers. Ford cut Lightning production ~50% for 2024 (to ~70,000–80,000 units) after demand softened and dealer inventory built — a significant signal of softer-than-expected consumer EV adoption in the mass-market pickup segment that Rivian's R2 will also enter. +### 6.1 Rivian's Market Positioning -**E-Transit vs. EDV**: Ford E-Transit is commercially available through Ford Pro's dealer/fleet network with ~3,200–3,500 units delivered in FY2024. Rivian's EDV, while purpose-built and architecturally superior as an EV, has been anchored exclusively to the Amazon contract. Ford's commercial fleet relationships and nationwide service infrastructure provide significant distribution advantages. +Rivian competes across three EV segments: electric full-size pickup (R1T), premium 3-row SUV (R1S), and commercial last-mile delivery vans (EDV/RCV). The brand is positioned around **adventure, outdoor capability, and software-forward design** — a niche that differentiates it from both Tesla's tech-luxury positioning and Ford's mainstream utility positioning. -**The central tension**: Ford's Model e division lost $5.076B in 2024 — over $50,000 per EV sold — demonstrating that incumbency alone does not confer EV profitability. Ford's $30B cash position means it can absorb these losses indefinitely; Rivian's cannot. Ford's ICE profits subsidize EV investment in a way Rivian structurally cannot replicate. +In the U.S. EV market (total ~1.3M units in 2024), Rivian held approximately **4% share** with 51,579 total deliveries, ranking 4th behind Tesla, GM, and Ford. The R1S is the company's strongest product (26,934 units in 2024, outpacing Kia EV9 22,017 and Tesla Model X 19,855). The R1T trails badly in the pickup segment (11,085 units vs. Cybertruck's 38,965 and Lightning's 33,510). Commercial van (EDV: 13,560 units) narrowly beats Ford E-Transit (12,610 units) but faces competitive pressure from a well-resourced incumbent. -> Source: competitor-ford.md | Ford Model e losses: https://www.cnbc.com/2023/12/11/f-150-lightning-ford-cuts-2024-production-plans-in-half.html +The R2 — a ~$45K smaller SUV launching in Q2 2026 — is Rivian's most significant competitive pivot: moving down-market to compete in the volume EV space while retaining adventure brand identity. If the R2 ramp succeeds, it has the potential to materially close the volume gap versus larger competitors and be the key catalyst for automotive gross profit. ---- +> **Sources:** [Cox Automotive/KBB Q4 2024 EV Report](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf) · [Rivian Q4 2024 Deliveries](https://rivian.com/newsroom/article/rivian-releases-q4-2024-production-and-delivery-figures) -#### Competitor 3: Mercedes-Benz (eSprinter & EQ SUV Lineup) -Mercedes-Benz competes with Rivian across two vectors: the **eSprinter** electric commercial van (vs. EDV) and the **EQS/EQE SUV lineup** (vs. R1S). Mercedes is a formidably financed competitor with €145.6B revenue and €9.2B industrial free cash flow in FY2024 — vastly outgunning Rivian's negative FCF position. +--- -**eSprinter vs. EDV**: The eSprinter (US launch February 2024; ~$55,000–$80,000+) is an ICE-platform conversion offering 113 kWh and up to 3,516 lb payload. Rivian's EDV is a purpose-built EV with superior packaging efficiency but limited to the Amazon fleet. Mercedes's established European commercial fleet relationships and global dealer/service networks represent structural advantages for international fleet operators. However, Rivian's purpose-built architecture and the Amazon EDV's proven delivery track record (1B+ packages in 2024) remain significant defensive moats. +### 6.2 Competitor: Tesla, Inc. (NASDAQ: TSLA) -**EQS/EQE SUV vs. R1S**: The EQE SUV starts at $67,450, undercutting the entry-level R1S, while the EQS SUV (~$105,000–$130,000) overlaps upper R1S trims. R1S leads on towing (7,700 vs. unspecified Mercedes capacity) and adventure capability; Mercedes leads on brand prestige, interior luxury, and global service networks. Mercedes's 23% YoY decline in BEV deliveries in 2024 (to 185,100 units) and its strategic pivot to a "technology-open" stance (slowing EV commitment) suggest Mercedes is becoming a less aggressive near-term EV competitor — potentially benefiting Rivian in the premium SUV segment. +Tesla is Rivian's most formidable competitor, operating from a position of overwhelming financial and scale advantage. With **$97.7B in FY2024 revenue**, **$7.1B net income**, and **$36.6B cash**, Tesla can absorb sustained pricing pressure that would be existential for Rivian. In pickups, the Cybertruck (38,965 U.S. units in 2024) outsold the R1T by 3.5x despite launching two years later. In SUVs, the R1S outperforms the Model X (26,934 vs. 19,855 units) — one of Rivian's few measurable volume wins over Tesla. The R1S's price advantage (~$2K cheaper at base), superior towing (7,700 vs. 5,000 lbs), longer range ceiling (410 vs. 335 miles), and purpose-built off-road capability represent genuine product advantages over the Model X. However, Tesla's FSD ecosystem ($596M recognized in FY2024) and charging network (now opened via NACS to Rivian owners) represent software and infrastructure moats that Rivian cannot match in the near term. Tesla's most significant current vulnerability relative to Rivian is CEO-brand toxicity: Elon Musk's political activities have driven measurable brand damage in key progressive and European markets, an area where Rivian's brand identity is comparatively clean and positively perceived. -> Source: competitor-mercedes.md | Mercedes 2024 Annual Report: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ +> **Sources:** [Tesla 2024 10-K](https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm) · [Cox Automotive EV Report](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf) · [Tesla Model X page](https://www.tesla.com/modelx) · [Rivian R1S page](https://rivian.com/r1s) --- -## 7. CONFIDENCE AND VERIFICATION NOTES +### 6.3 Competitor: Ford Motor Company (NYSE: F) -The following findings carry medium or low confidence and should be independently verified by a human reviewer before reliance. +Ford is Rivian's most direct competitor in the electric pickup and commercial van segments, and the only legacy OEM that was a major Rivian investor (exited 2023). Ford's F-150 Lightning (33,510 U.S. units in 2024, +39% YoY) outsells the R1T by 3x, backed by the F-Series brand (America's best-selling vehicle for 47 consecutive years), a 3,000-dealer service network, and a starting price of ~$54,780 vs. the R1T's ~$70,000+. Ford Pro's commercial fleet ecosystem (telematics, upfitting, financing) gives the E-Transit distribution and serviceability advantages over the Rivian EDV. However, Ford's EV financial position is structurally dire: the Ford Model e division lost **$5.1B in EBIT in FY2024**, implying a loss of **$48,000+ per EV sold** — worse unit economics than any other major OEM, including Rivian. Ford has deferred up to $12B in EV investment, scaled back Lightning production targets, and pivoted emphasis toward hybrids. Its Lightning platform is ICE-derivative rather than purpose-built, making it technically inferior to the R1T on software, OTA updates, and performance. Ford's dealer model also introduces service experience inconsistency that Rivian's direct model avoids. Critically, Amazon's equity stake in Rivian and exclusive EDV contract structurally closes the commercial van opportunity to Ford for the foreseeable future. -| # | Finding | Confidence | Reason / Verification Required | -|---|---|---|---| -| 1 | FY2024 net loss ~$4.689B; FY2025 full-year net income/loss | **Medium** | Derived from Wikipedia/earnings release; confirm in Rivian's audited 10-K filings (SEC EDGAR). FY2025 10-K may not yet be filed. | -| 2 | Cash on hand ~$7.3B (FY2024) | **Medium** | Estimated from total assets of $15.4B; confirm exact figure in 10-K balance sheet. | -| 3 | Convertible notes outstanding ~$1.5–2.5B | **Low** | Estimate only. Must be verified against 10-K debt schedule and notes payable disclosures. | -| 4 | Analyst price target consensus ~$14–16 avg | **Low** | Aggregated consensus; changes daily. Verify on Bloomberg/FactSet at time of review. | -| 5 | Cybertruck FY2024 deliveries ~35,000–38,000 | **Medium** | Tesla does not disclose Cybertruck separately. Estimates from third-party analysts (Troy Teslike, GoodCarBadCar). | -| 6 | EDV unit pricing ~$100K–$120K/unit | **Low** | Not publicly disclosed; derived estimate. Confirm via fleet contract filings if available. | -| 7 | Employment lawsuit specifics | **Medium** | Based on TechCrunch investigation (Dec 2024); full legal filings should be reviewed. Verify completeness of 10-K/10-Q legal proceedings disclosures. | -| 8 | Series A–C early funding rounds (pre-2019) | **Low** | Not publicly itemized in SEC filings. Seed/angel funding amounts are unconfirmed. | -| 9 | VW equity stake ~16% | **Medium** | Based on Wikipedia/proxy; confirm via most recent SEC ownership filings (Schedule 13D/G). | -| 10 | Tesla v. Rivian settlement terms | **Low** | Terms are confidential. Exposure cannot be fully assessed. Human reviewer should attempt to obtain terms or flag as unresolvable. | - -### Source Citation Trail for Key Claims -- Rivian IPO S-1: https://www.sec.gov/Archives/edgar/data/1874178/000119312521289903/d157488ds1.htm -- Rivian 2025 Proxy (DEF 14A): https://www.sec.gov/Archives/edgar/data/1874178/000187417825000019/rivn-20250429.htm -- Rivian FY2024 10-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000007/rivn-20241231.htm -- FY2025 earnings release: https://rivian.com/newsroom/article/rivian-releases-fourth-quarter-full-year-2025-financial-results -- Securities settlement 8-K: https://www.sec.gov/Archives/edgar/data/1874178/000187417825000048/ex-991litigationsettlement.htm -- Settlement website: https://www.riviansecuritieslitigation.com/ -- DOE $6.6B loan: https://www.energy.gov (confirm specific press release) -- Tesla 10-K (FY2024): https://www.sec.gov/Archives/edgar/data/1318605/000162828025003063/tsla-20241231.htm -- Mercedes Annual Report 2024: https://group.mercedes-benz.com/investors/reports-news/annual-reports/2024/ -- Georgia plant (Stanton Springs North): https://georgia.org/rivian -- R2 production start: https://stories.rivian.com/r2-start-of-production-spring-delivery-2026 +> **Sources:** [Ford 2024 10-K](https://www.sec.gov/Archives/edgar/data/37996/000003799625000013/f-20241231.htm) · [Electrive Feb 6, 2025](https://www.electrive.com/2025/02/06/ford-posts-another-big-loss-for-its-ev-division-in-2024/) · [Ford F-150 Lightning page](https://www.ford.com/trucks/f150/f150-lightning) --- -## 8. KEY RISK FLAGS AND AREAS REQUIRING FURTHER INVESTIGATION +### 6.4 Competitor: Kia Corporation (KRX: 000270) + +Kia competes with Rivian most directly through the **EV9**, a 3-row electric SUV that won the 2024 North American Utility Vehicle of the Year and posted 22,017 U.S. deliveries in 2024 — the most direct head-to-head challenge to the R1S in the premium 3-row segment. Kia's key advantages over Rivian include pricing ($54,900 base vs. ~$75,900 for the R1S — a $21K gap), **800V E-GMP fast-charging architecture** (10–80% in ~24 min vs. Rivian's ~30–40 min), and Hyundai Motor Group backing (~$87B parent market cap with ~$8.85B operating profit in FY2024 alone). Kia's ~800 U.S. franchise dealers provide national coverage Rivian's direct-only model cannot match. However, the R1S maintains meaningful advantages: it starts with greater range (up to 410 miles vs. 304 miles), substantially more towing capacity (7,700 vs. 5,000 lbs), dramatically faster acceleration (2.6s vs. ~5.0s for Quad Motor), and unique capability features (Gear Tunnel, frunk, Camp Mode, Rock Crawl) that define the adventure-luxury niche. Kia's Georgia battery investments ($7B+ across SK On and LG Energy Solution JVs) represent a long-term structural IRA compliance advantage, but Rivian's U.S.-only manufacturing already qualifies for tax credits when in effect. The EV9's mainstream-premium positioning and Kia's massive pricing undercut represent genuine threats to R1S volume growth among family-oriented buyers who do not require off-road capability. + +> **Sources:** [Kia 2024 Annual Results](https://worldwide.kia.com/en/newsroom/view/?id=161160) · [Cox Automotive EV Report](https://www.coxautoinc.com/wp-content/uploads/2025/01/Q4-2024-Kelley-Blue-Book-EV-Sales-Report.pdf) · [Car and Driver R1S](https://www.caranddriver.com/rivian/r1s-2025) -### 🔴 HIGH PRIORITY +--- + +## 7. Confidence and Verification Notes + +The following findings carry medium or low confidence and should be verified by a human reviewer before the report is relied upon for investment or credit decisions. + +| # | Finding | Confidence | Issue | Recommended Action | +|---|---|---|---|---| +| 1 | **FY2025 net loss of ~$(3.85B)** | ⚠️ MEDIUM | Analyst estimate; full GAAP net income not confirmed against FY2025 10-K filing | Obtain and verify FY2025 10-K when filed | +| 2 | **Total debt ~$4.9B** | ⚠️ MEDIUM | Third-party aggregator estimate; not confirmed against FY2025 balance sheet | Verify against FY2025 10-K Note on Long-Term Debt | +| 3 | **FY2023 revenue ~$4.43B** | ⚠️ MEDIUM | Macrotrends aggregator figure, not directly sourced from SEC filing | Confirm against Rivian 10-K FY2023 | +| 4 | **VW equity stake ~11.7%** | ⚠️ MEDIUM | Based on convertible notes converting to equity tranches; actual ownership percentage fluctuates as tranches convert. The March 2026 8-K confirms a tranche, but cumulative percentage requires proxy verification | Cross-reference 2026 proxy statement for final beneficial ownership | +| 5 | **CEO criticism in German business press (April 2025)** | 🔴 LOW | Single unnamed-source report; no corroboration from named sources in major outlets | Monitor for recurrence; do not rely as established fact | +| 6 | **Four C-suite exits in eight weeks (Summer 2024)** | ⚠️ MEDIUM | Confirmed as a pattern by EV industry press, but individual names/roles not widely detailed by top-tier outlets | Verify against SEC 8-K filings for the applicable period (Summer 2024) | +| 7 | **Georgia plant capacity target of 300,000 vehicles/year** | ⚠️ MEDIUM | Based on recent expansion announcements; subject to DOE loan approval and Phase 1/2 construction timelines | Monitor DOE ATVM loan conditional approval status | +| 8 | **Kia EV9 vs. R1S off-road mode comparison** | ⚠️ MEDIUM | Detailed spec comparisons sourced from product pages and third-party reviews; may change with future OTA updates or trim changes | Refresh for any 2026 model year updates | + +**Key verified and high-confidence findings:** +- FY2025 gross profit of $144M: ✅ Confirmed via Rivian official press release +- FY2025 deliveries of 42,247: ✅ Confirmed via Rivian official press release +- Year-end 2025 cash of $6.1B: ✅ Confirmed via Q4 2025 earnings +- $250M securities class action settlement: ✅ Confirmed via multiple court and news sources +- OSHA fatality March 5, 2026: ✅ Confirmed via local news +- VW JV total up to $5.8B: ✅ Confirmed via SEC 8-K and multiple news sources +- R2 production launch April 2026 Normal, IL: ✅ Confirmed via Rivian newsroom -**1. Securities Settlement Final Approval (May 15, 2026 Hearing)** -The $250M *Crews v. Rivian* settlement is preliminarily approved but has not yet received final court approval. Rivian has committed $183M of its own cash. Monitor for objections or appeals. Any reviewer conducting diligence near or after May 15, 2026 should confirm the outcome of the final approval hearing. +--- -**2. Persistent Deep Losses and Cash Burn** -Rivian has lost $17B+ cumulatively. While the DOE loan ($6.6B) and VW JV ($5.8B) provide a liquidity runway, the company is not projected to reach GAAP net income profitability in the near term. Any disruption to R2 demand, production, or the Amazon EDV relationship could accelerate cash depletion faster than modeled. +## 8. Key Risk Flags and Areas Requiring Further Investigation -**3. FY2025 Vehicle Delivery Decline (−18% YoY)** -The decline from 51,579 (2024) to 42,247 (2025) deliveries is a structural concern. Management attributed this to expiring EV tax credits and EDV mix; however, if R2 ramp does not produce a significant volume recovery in 2026–2027, the equity story is at risk. +### 🔴 Immediate / High Priority -### 🟡 MEDIUM PRIORITY +1. **Securities Class Action Final Approval (May 15, 2026):** The $250M settlement in *Crews v. Rivian* reaches its final approval hearing on May 15, 2026. Confirm: (a) court approval obtained; (b) insurance carrier contribution to settlement (if any); (c) impact on cash from operations. The underlying allegation — that Rivian's IPO materials misrepresented vehicle cost structures — raises questions about the quality and completeness of disclosures to investors. -**4. Regulatory Credit Dependency** -Q4 2025 automotive gross profit turned negative primarily due to a $270M decline in regulatory credit sales. This volatility — driven by policy/regulatory decisions outside Rivian's control — makes near-term profitability fragile. Investors should model scenarios with and without regulatory credit income. +2. **OSHA Fatality Investigation — Normal, IL (March 2026):** An open OSHA fatality investigation following a worker death has no resolution timeline. Investigate: (a) expected penalty range; (b) potential for willful-violation designation (maximum OSHA penalty ~$156,259/violation); (c) pattern of prior citations and whether this fatality could trigger enhanced federal scrutiny of the entire Normal facility; (d) any potential impact on manufacturing throughput. -**5. R2 Execution Risk** -R2 production has begun but is in its earliest stages (Performance trim only at launch; Standard trim not until 2027). Manufacturing ramp failures have been Rivian's historical Achilles heel. Close monitoring of weekly/monthly R2 production rate disclosures is warranted. +3. **Automotive Gross Margin — Structural vs. Temporary?** Rivian's consolidated gross profit ($144M FY2025) is entirely funded by VW JV software/services revenue. The automotive segment lost $432M at the gross level. Investigate: (a) the trajectory of automotive gross margin as R2 volumes scale in 2026; (b) the specific cost-per-unit for R2 vs. R1 generation vehicles; (c) what portion of the ~$270M decline in regulatory credit sales in Q4 2025 is permanent vs. timing-related. -**6. Employment Lawsuits — Disclosure Adequacy** -The December 2024 TechCrunch report on "previously unreported" executive harassment lawsuits raises a question about whether Rivian's SEC filings adequately disclosed all material legal proceedings. Reviewers should independently pull and review the legal proceedings section of the most recent 10-K and 10-Q. +### 🟡 Medium Priority -**7. Tesla v. Rivian Confidential Settlement** -The confidential terms prevent full IP exposure assessment. If trade secrets were confirmed as taken, this could expose Rivian to further claims from other competitors whose employees joined Rivian. +4. **R2 Production Ramp Execution Risk:** The 2026 delivery guidance of 62,000–67,000 vehicles implies a near-doubling of volume, driven almost entirely by R2. Any stumble in the Normal, IL expansion (where construction is active and a fatality recently occurred), supply chain disruption, or demand softness could cause a severe miss. Verify: current Normal plant expansion status; battery supply chain agreements; R2 reservation-to-order conversion rates. -**8. Convertible Notes / Debt Structure** -Estimated $1.5–2.5B in convertible notes (low confidence). Refinancing risk and dilution risk from conversion are material concerns that require verification against the 10-K debt schedule. +5. **DOE ATVM Loan ($6.57B, Conditional and Undrawn):** This loan is a cornerstone of Rivian's Georgia factory financing. However, it is conditional, undrawn, and subject to ongoing DOE approval milestones under the Biden-era program. Investigate: current status under the current administration; any renegotiation risk; milestone conditions remaining before drawdown eligibility. -**9. Georgia Plant Capital Commitment** -The $5B Georgia plant investment with production beginning 2028 represents a multi-year capital commitment. Given Rivian's negative FCF, any schedule slip or capital overrun at Stanton Springs could stress liquidity even with the DOE loan backstop. +6. **Dual-Class Governance Concentration:** RJ Scaringe holds Class B shares with superior voting rights, concentrating effective control in a single founder. Assess: (a) what percentage of total voting power Scaringe controls; (b) whether Amazon (12.9%), VW (11.7%), and Global Oryx (9.0%) stakes include any preferential governance rights that could create future conflicts of interest. -**10. Amazon Concentration Risk** -Amazon represents both Rivian's largest shareholder (~18.1%) and its largest commercial customer. Deterioration of the Amazon relationship — whether through renegotiation of the EDV contract, Amazon building its own fleet capability, or equity stake reduction — would be severely negative for Rivian's commercial segment and investor confidence simultaneously. +7. **EV Tax Credit Policy Exposure:** The October 2025 layoffs were explicitly attributed to EV federal tax credit expiration. Any further adverse changes to the $7,500 IRA EV credit (eligibility criteria, income caps, or full repeal) would directly impact Rivian demand. Monitor legislative activity and Rivian's IRA compliance status for R2 qualification. -### 🟢 NO CURRENT FLAG (MONITOR) +8. **Rivian–Amazon Commercial Dependency:** Amazon holds a ~12.9% equity stake and has contracted for up to 100,000 EDV units. While this is a powerful revenue anchor, it also creates concentrated customer dependency. Investigate: (a) minimum purchase commitments remaining under the Amazon contract; (b) any penalties or renegotiation clauses; (c) Amazon's satisfaction and timeline for the full 100K order. -- **CFIUS / Sanctions**: No designations or reviews identified; key investors are domestic. Monitor VW Group's equity stake given European nexus (low concern). -- **SEC Enforcement**: No enforcement actions beyond disclosed settlement disclosure requirement. -- **CEO Succession**: RJ Scaringe is young, founder-CEO with no credible departure signals. Combined CEO/Chair structure warrants monitoring but is not currently a governance crisis. +9. **Ford's Exit and Potential Re-Entry:** Ford exited Rivian entirely in 2023 after walking back a co-development agreement. The circumstances of that exit (and any non-compete obligations or technology transfer provisions) should be reviewed given that Ford now competes directly with Rivian in the same segments. --- -*This report is a draft prepared for human review. All financial figures should be independently verified against Rivian's audited annual reports (10-K) and quarterly filings (10-Q) on SEC EDGAR. Legal proceedings information is current as of research date but litigation status changes rapidly. This document does not constitute investment advice.* +*This report is a draft prepared for human review. It is not a final investment or credit memo. All medium- and low-confidence findings are flagged in Section 7 and require independent verification before reliance. Sources are cited inline throughout.* diff --git a/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md b/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md index 6febad0..8406559 100644 --- a/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md +++ b/python-recipes/parallel-deepagents-due-diligence/sample_output_rivian.md @@ -1,152 +1,136 @@ -The full due diligence report has been written to `/workpapers/rivian-due-diligence-report.md`. Here is the complete synthesized report: +The full due diligence report has been written to `/workpapers/rivian-due-diligence-report.md`. Here is the complete synthesis: --- -# RIVIAN AUTOMOTIVE, INC. (NASDAQ: RIVN) -## Comprehensive Due Diligence Report -**Draft for Human Review | April 2026** +# Due Diligence Report: Rivian Automotive, Inc. (NASDAQ: RIVN) +**Draft — April/May 2026 | For Human Review** --- -## 1. EXECUTIVE SUMMARY +## 1. Executive Summary -Rivian Automotive is an American pure-play EV manufacturer that went public in November 2021 in one of the five largest U.S. IPOs in history. The company makes the R1T electric pickup, R1S electric SUV, and Electric Delivery Vans (EDVs) primarily for Amazon. After years of production ramp challenges and $17B+ in cumulative losses, Rivian crossed a critical threshold in 2024 by achieving its **first-ever positive quarterly gross profits** (Q3 and Q4 2024). As of April 2026, R2 production has commenced at the Normal, IL plant — the company's first mass-market vehicle (~$45,000–$58,000) — with customer deliveries beginning spring 2026. +Rivian is an electric vehicle manufacturer occupying a differentiated niche across electric pickups (R1T), premium 3-row SUVs (R1S), and commercial delivery vans (EDV). Founded in 2009 by MIT-trained engineer RJ Scaringe and taken public in November 2021 (~$11.9B IPO), the company has reached several meaningful milestones but remains deeply unprofitable. -**Overall Risk: MEDIUM-HIGH.** The company has a remarkable $12.4B+ liquidity backstop ($6.6B DOE loan + $5.8B VW JV), but remains deeply unprofitable, faces an 18% YoY delivery decline in 2025, a $250M securities settlement pending final court approval, and intensifying competition from Tesla and Ford. +**Overall risk rating: MEDIUM-HIGH.** Three drivers: +1. A **$250M securities class action settlement** pending final court approval May 15, 2026 — arising from alleged IPO misstatements about vehicle cost structures. +2. An **open OSHA fatality investigation** following a worker death at the Normal, IL facility in March 2026, against a backdrop of a documented pattern of prior serious citations. +3. **Automotive gross margins remain materially negative** — the headline FY2025 gross profit ($144M) was entirely funded by VW JV software/services revenue; the automotive segment lost $432M at the gross level. --- -## 2. CORPORATE PROFILE +## 2. Corporate Profile -- **Founded:** June 2009 by **Dr. RJ Scaringe** (Ph.D., MIT) — sole founder, still CEO & Chairman -- **HQ:** Irvine, California | **Manufacturing:** Normal, Illinois | **Future plant:** Stanton Springs, Georgia (groundbreaking Sept. 2025; production 2028) -- **IPO:** November 10, 2021 at $78/share; opened at $106.75; raised ~$11.9B — one of the 5 largest U.S. IPOs ever -- **Key shareholders:** Amazon ~18.1%, Volkswagen Group ~16%, Abdul Latif Jameel ~12.7%, Ford ~1.6% -- **Headcount:** ~14,861 (FY2024), following multiple layoff rounds from a peak of ~16,000 -- **Board governance:** Combined CEO/Chair structure; Amazon's SVP (Peter Krawiec) sits on the Board +- **Founded:** 2009 (Rockledge, FL) by sole founder **RJ Scaringe**; renamed from Mainstream Motors in 2011 +- **HQ:** Irvine, CA | **Manufacturing:** Normal, IL (operational) + Stanton Springs North, GA (planned 2028, 300K units/yr) +- **Structure:** Delaware corp; dual-class shares; no parent company +- **Key executives:** Scaringe (CEO/Chair), Claire McDonough (CFO), Javier Varela (COO), Mike Callahan (CAO/CLO) +- **Headcount:** 15,232 (end-2025) — peaked at 16,790 in 2023, cut to 14,861 in 2024, modest recovery in 2025 via VW JV consolidation +- **Major shareholders:** Amazon (~12.9%), Volkswagen (~11.7%), Global Oryx/ALJ (~9.0%), Vanguard (~5.4%) +- **Key subsidiaries/affiliates:** Rivian & VW Group Technologies LLC (50/50 JV); Also, Inc. (~35% stake, micromobility); Mind Robotics (~38% stake) --- -## 3. FINANCIAL OVERVIEW +## 3. Financial Overview -### Revenue & Losses -| Year | Revenue | Net Loss | +| Metric | Value | Notes | |---|---|---| -| 2021 | $55M | ($4.7B) | -| 2022 | $1.66B | ($6.8B) | -| 2023 | $4.43B | ($5.4B) | -| 2024 | **$4.97B** | **($4.7B)** | -| 2025 | **$5.39B** | TBD (10-K pending) | - -### Production & Deliveries -| Year | Production | Deliveries | -|---|---|---| -| 2024 | 49,476 | 51,579 | -| 2025 | 42,284 | 42,247 (−18% YoY) | - -⚠️ The 2025 delivery decline is a yellow flag — attributed to expiring EV tax credits and EDV mix, but warrants monitoring against R2 ramp. - -### Liquidity Position -- **$6.6B DOE Loan** — closed January 16, 2025 -- **Up to $5.8B VW JV** — active; generated $1.56B in software/services revenue in FY2025 -- **~$7.3B estimated cash** on hand (confirm in 10-K) -- **$183M cash outflow** for securities settlement (pending final court approval) -- **~$1.5–2.5B convertible notes** outstanding (low confidence — verify in 10-K) - -**Key insight**: Revenue grew 8% in FY2025 despite delivering 18% fewer vehicles — the VW JV software revenue stream is fundamentally transforming Rivian's income statement from pure vehicle manufacturer to technology platform company. +| Pre-IPO Capital Raised | >$10.5B | ~10 rounds; Amazon, Ford, T. Rowe Price, Cox | +| IPO (Nov 10, 2021) | $78/share; ~$11.9B raised | First-day close $100.73; mkt cap ~$100B | +| Current Market Cap | ~$21.4B | ~78% below IPO-day high | +| FY2025 Revenue | $5.387B (+8.4% YoY) | Automotive –15%; Software +222% (VW JV) | +| FY2025 Gross Profit | **$144M** ✅ | First-ever positive; but automotive GP = –$432M | +| FY2025 Deliveries | 42,247 (–18% YoY) | Tax credit expiration, plant retooling | +| FY2025 Net Loss | ~$(3.85B) *(est.)* | Q4 alone: –$804M confirmed | +| Year-End 2025 Cash | **$6.1B** | ⚠️ Workpaper estimated ~$7.1B — discrepancy; $6.1B is the confirmed figure | +| Total Debt | ~$4.9B *(est.)* | To be verified against FY2025 10-K | +| DOE ATVM Loan | Up to $6.57B | **Conditional and undrawn** — for Georgia plant | +| VW JV Total Commitment | Up to $5.8B | ~$3B+ invested to date; $1B+ in milestone tranches remain | +| FY2026 Delivery Guidance | 62,000–67,000 | ~47–59% YoY growth; R2 ramp is the key driver | + +**Critical caveat on gross profit:** The $144M gross profit is real but fragile. Automotive gross margin is still deeply negative (–$432M). The entire consolidated gross profit came from VW JV development fees. If VW milestones slip, miss, or the partnership restructures, Rivian's consolidated gross profit reverts to large negative. --- -## 4. LITIGATION AND REGULATORY RISK ASSESSMENT +## 4. Litigation and Regulatory Risk -| Matter | Severity | Status | +| Item | Risk | Status | |---|---|---| -| *Crews v. Rivian* — $250M securities class action settlement | 🔴 HIGH | Preliminary approval Dec. 2025; **final hearing May 15, 2026** | -| Tesla v. Rivian — Trade secret dispute | 🟡 MEDIUM | Settled early 2025 on **confidential terms** before trial | -| Executive harassment lawsuits (multiple) | 🟡 MEDIUM | At least one settled in arbitration; others pending | -| NHTSA Recall — Highway Assist (24,214 units) | 🟡 MEDIUM | Sept. 2025; resolved via OTA update | -| NHTSA Recall — Seat-belt retractor | 🟡 MEDIUM | Jan. 2026; physical inspection/replacement required | -| California state securities action | ✅ RESOLVED | Appellate court affirmed dismissal, April 2025 | -| SEC enforcement, OFAC/SDN, CFIUS | ✅ NO FLAG | No actions or designations identified | - -**Key litigation note**: The $250M *Crews* settlement was structured as $67M from D&O insurance + **$183M Rivian cash**. Rivian explicitly stated the settlement allows it to "focus resources on R2 launch," suggesting management views this as a material distraction now being put to rest. The 4.5% workforce layoff was announced the same day as the settlement. +| **Crews v. Rivian — $250M securities class action** | 🔴 HIGH | Final court approval hearing May 15, 2026 | +| **OSHA fatality investigation (Mar 5, 2026)** | 🔴 HIGH | Open; penalties TBD | +| OSHA pattern citations (Normal, IL 2022–2024) | 🟡 MEDIUM | 16 initial serious citations; some contested | +| Product liability — *Young v. Rivian* | 🟡 MEDIUM | Active; details not publicly disclosed | +| NHTSA recalls (21+ since 2022) | 🟡 MEDIUM | No open defect investigations; no fatalities linked | +| Tesla trade secrets suit | ✅ RESOLVED | Settled Dec 2024/Jan 2025; terms undisclosed | +| Georgia plant zoning litigation | ✅ RESOLVED | Dismissed; affirmed on appeal Sep 2024 | +| Sanctions (OFAC/EU/UN) | ✅ CLEAN | No designations | +| SEC / FTC / DOJ / EPA | ✅ CLEAN | No enforcement actions identified | + +The securities class action is the most financially material item. The OSHA fatality is the most operationally sensitive. --- -## 5. NEWS AND REPUTATION ANALYSIS +## 5. News and Reputation -**Overall sentiment: Neutral-to-Positive.** Product excitement (R2, charging network) offsets financial caution. No governance, fraud, or ethical scandals beyond disclosed matters. +**Overall: Mixed/Neutral.** Strong product and technology reputation; weighed by recurring execution shortfalls. -**Standout positives:** -- Consumer Reports (March 2025): Rivian and Tesla ranked as the two most problem-free charging networks in the U.S. -- VW JV widely treated as major strategic validation -- R2 production start (April 22, 2026) covered positively; brand resilience praised after EF-1 tornado briefly disrupted Normal plant -- RJ Scaringe named Top Gear's EV Influencer of the Year (April 2026) +**Positive:** VW JV as strategic validation; R2 demand (68K+ reservations in 24 hrs); first gross profit; Amazon milestone (1B packages delivered); plant retooling reducing R1 BOM costs up to 50%. -**Recurring negatives:** -- Multiple layoff rounds (10%, 4%, 4.5%) — signal sustained financial pressure -- FY2025 delivery decline generated financial media caution -- Employment lawsuits (December 2024 TechCrunch investigation) +**Negative patterns (not isolated incidents):** +- Three layoff rounds in 13 months (Feb 2024, Jun 2025, Oct 2025 — 600+ workers) +- Consecutive delivery guidance misses (2024 cut mid-year; 2025 missed range by up to 9,000 units) +- Four C-suite departures in ~8 weeks (summer 2024); CEO serving as interim CMO post-Oct 2025 restructuring +- Recurring NHTSA recalls (volume typical for young OEM, but notable) -**Leadership stability**: RJ Scaringe firmly in place; leadership risk assessed as **low**. +**Key forward reputational risk:** R2 production ramp in 2026 is the make-or-break story. Any major stumble will dominate headlines. --- -## 6. COMPETITIVE LANDSCAPE - -### Rivian's Positioning -Rivian is the only pure-play EV-native company focused on the **adventure/outdoor lifestyle** segment. Its five competitive moats: (1) Amazon EDV anchor contract, (2) VW JV technology validation, (3) EV-native skateboard platform, (4) purpose-built charging network, and (5) R2 mass-market pivot. +## 6. Competitive Landscape -### Competitor Profiles +**Rivian's position:** ~4% U.S. EV market share (4th overall); dominant in adventure/outdoor niche; strong in 3-row premium SUV (R1S outsells Tesla Model X); weak in pickup (R1T outsold 3:1 by Cybertruck and Lightning). -#### Tesla (Cybertruck & Model X) — Strongest Threat -Tesla is ~35× Rivian's volume with $36.6B cash vs. Rivian's ~$7.3B. The Cybertruck directly competes with the R1T; Model X competes with R1S. **Rivian's edges over Tesla**: superior off-road capability, better R1S towing (7,700 vs. 5,000 lb), higher Max Pack range (410 vs. 335 mi), IRA tax credit eligibility (Cybertruck doesn't qualify), and Musk-DOGE brand controversy alienating Rivian's core demographic. **Tesla's edges**: 60,000+ Superchargers, manufacturing scale, profitability, FSD/ADAS ecosystem. +### vs. Tesla +Tesla operates from an overwhelming financial position ($97.7B revenue, $7.1B net profit, $36.6B cash). Cybertruck outsells R1T 3.5:1. However, the R1S beats the Model X on volume, towing, range ceiling, and price. Tesla's FSD software moat and charging network are significant advantages. Tesla's CEO-brand toxicity is a genuine Rivian tailwind in adventure/sustainability demographics. The R2 at ~$45K is the most strategically threatening move Rivian has against Tesla's Model Y stronghold. -#### Ford (F-150 Lightning & E-Transit) — Price Threat in Trucks; EDV Competitive in Fleet -Ford's Lightning starts at $42,995 — $30,000 below Rivian's entry R1T — making it the price leader. However, Ford cut Lightning production ~50% in 2024 amid demand softness — the same market Rivian's R2 is entering. Ford Model e lost $5.076B in 2024 ($50K+ per EV sold), but Ford's $30B cash can sustain this indefinitely. Ford wins on price, dealer network, and fleet relationships; Rivian wins on software, off-road capability, and purpose-built EV architecture. +### vs. Ford +Ford's F-150 Lightning outsells the R1T 3:1, backed by F-Series brand loyalty, 3,000 dealers, and ~$55K base pricing. However, Ford Model e lost $5.1B in FY2024 (~$48K per EV sold) — the worst unit economics in the industry. Ford has deferred $12B in EV investment and pivoted to hybrids. The Lightning is an ICE-derivative platform, technically inferior to the R1T on software and OTA. Amazon's exclusive Rivian EDV contract structurally closes the commercial van market to Ford. -#### Mercedes-Benz (eSprinter & EQ SUVs) — Niche Overlap; Retreating on EV Commitment -Mercedes competes in commercial vans (eSprinter vs. EDV) and premium SUVs (EQS/EQE vs. R1S). Its 23% BEV delivery decline in 2024 and strategic "technology-open" pivot signal Mercedes is pulling back from aggressive EV competition. Mercedes's financial firepower (€145.6B revenue, €9.2B FCF) dwarfs Rivian, but its ICE-derived eSprinter platform is architecturally inferior to Rivian's purpose-built EDV, and its US commercial van presence is limited vs. Ford and Rivian. +### vs. Kia +Kia EV9 is the most direct R1S challenger: 3-row premium EV SUV, 2024 North American Utility Vehicle of the Year, 22,017 U.S. sales. Key Kia advantages: $20K+ price undercut ($54,900 vs. $75,900 base), 800V fast-charging (10–80% in ~24 min vs. Rivian's ~30–40 min), ~800 U.S. dealers, and HMG parent strength ($8.85B operating profit). Key R1S advantages: 35% more range, 54% more towing, 2x faster 0–60, and exclusive adventure features (Camp Mode, Gear Tunnel, frunk, Rock Crawl). Kia is building toward full IRA compliance via $7B+ Georgia battery JVs — a long-term structural threat. --- -## 7. CONFIDENCE AND VERIFICATION NOTES +## 7. Confidence and Verification Notes | # | Finding | Confidence | Action Required | |---|---|---|---| -| 1 | FY2024/2025 net losses | Medium | Verify against audited 10-K (SEC EDGAR) | -| 2 | Cash on hand ~$7.3B | Medium | Confirm exact figure in 10-K balance sheet | -| 3 | Convertible notes ~$1.5–2.5B | **Low** | Must verify in 10-K debt schedule | -| 4 | Analyst consensus price targets | **Low** | Verify on Bloomberg/FactSet | -| 5 | Cybertruck FY2024 deliveries (~35-38K) | Medium | Third-party estimates; Tesla doesn't disclose | -| 6 | Tesla v. Rivian settlement terms | **Low** | Confidential; cannot fully assess IP exposure | -| 7 | Employment lawsuit scope | Medium | Pull full legal proceedings from 10-K/10-Q | -| 8 | Pre-2019 funding rounds (Series A–C) | **Low** | Not publicly itemized in SEC filings | -| 9 | VW Group ~16% equity stake | Medium | Confirm via Schedule 13D/G filings | +| 1 | FY2025 net loss ~$(3.85B) | ⚠️ MEDIUM | Verify against FY2025 10-K | +| 2 | Total debt ~$4.9B | ⚠️ MEDIUM | Verify against FY2025 10-K balance sheet | +| 3 | FY2023 revenue ~$4.43B | ⚠️ MEDIUM | Confirm against Rivian 10-K FY2023 | +| 4 | VW equity stake ~11.7% | ⚠️ MEDIUM | Cross-reference 2026 proxy for cumulative ownership | +| 5 | CEO criticism in German press | 🔴 LOW | Single unnamed source; do not rely on as established fact | +| 6 | Four C-suite exits, summer 2024 (individual names) | ⚠️ MEDIUM | Verify against SEC 8-K filings for summer 2024 | +| 7 | Georgia plant 300K/yr capacity | ⚠️ MEDIUM | Monitor DOE loan conditional approval status | ---- +**Verified/High-confidence:** FY2025 gross profit $144M ✅ | FY2025 deliveries 42,247 ✅ | Year-end cash $6.1B ✅ | $250M securities settlement ✅ | OSHA fatality March 2026 ✅ | VW JV up to $5.8B ✅ -## 8. KEY RISK FLAGS AND AREAS REQUIRING FURTHER INVESTIGATION +--- -### 🔴 High Priority -1. **Securities Settlement Final Approval (May 15, 2026)** — $183M cash outflow; final approval pending. Monitor for objections/appeals. -2. **Persistent Deep Losses** — $17B+ cumulative; GAAP profitability not projected near-term. Any disruption to R2 demand or Amazon relationship could accelerate cash depletion. -3. **FY2025 Delivery Decline (−18% YoY)** — Structural concern; R2 ramp must reverse this or equity thesis erodes. +## 8. Key Risk Flags and Further Investigation Areas -### 🟡 Medium Priority -4. **Regulatory Credit Dependency** — Q4 2025 automotive gross profit turned negative due to $270M regulatory credit decline; policy-driven volatility is outside Rivian's control. -5. **R2 Manufacturing Execution Risk** — Rivian's historical Achilles heel; early-stage ramp requires close monitoring. -6. **Employment Lawsuit Disclosure Adequacy** — "Previously unreported" framing in TechCrunch suggests potential 10-K disclosure gap; verify. -7. **Tesla Trade Secret Settlement (Confidential)** — Cannot assess IP admission risk; flag as unresolvable without terms. -8. **Convertible Notes / Debt Structure** — Refinancing and dilution risk requires 10-K verification. -9. **Georgia Plant Capital Commitment** — $5B commitment with 2028 production; capital overrun risk in negative FCF environment. -10. **Amazon Concentration Risk** — Largest shareholder and largest customer simultaneously; relationship deterioration would be doubly destructive. +🔴 **Immediate/High Priority:** +1. **Securities settlement final approval (May 15, 2026)** — Confirm approval obtained; identify insurance carrier contribution; assess cash impact +2. **OSHA fatality investigation** — Assess penalty range; risk of willful-violation designation; potential manufacturing throughput impact +3. **Automotive gross margin trajectory** — Is negative automotive GP structural or R2-ramp-dependent? Obtain unit economics breakdown for R2 vs. R1 -### ✅ No Current Flag (Monitor) -- CFIUS / Sanctions: Clean; no designations. -- SEC Enforcement: No actions beyond settlement disclosure. -- CEO Succession: Scaringe firmly in place; no succession risk signals. +🟡 **Medium Priority:** +4. **R2 production ramp** — Verify Normal expansion status; battery supply chain; reservation-to-order conversion rates +5. **DOE ATVM Loan status** — Confirm current-administration position on $6.57B conditional loan; milestone conditions remaining +6. **Dual-class governance** — Quantify Scaringe voting control percentage; review Amazon/VW/Global Oryx governance rights +7. **EV tax credit exposure** — Monitor IRA credit status for R2 eligibility; legislative risk tracking +8. **Amazon commercial contract terms** — Minimum purchase commitments remaining; renegotiation clauses; customer concentration risk +9. **Ford exit terms (2023)** — Review any non-compete or technology transfer provisions from Ford's exit that could affect competitive positioning --- -*This report is a draft for human review. All financial figures should be independently verified against Rivian's audited 10-K/10-Q filings on SEC EDGAR before reliance. This document does not constitute investment advice.* \ No newline at end of file +*Full workpapers available at:* `/workpapers/corporate-profile.md`, `/workpapers/financial-health.md`, `/workpapers/litigation-regulatory.md`, `/workpapers/news-reputation.md`, `/workpapers/competitive-landscape.md`, `/workpapers/competitor-tesla.md`, `/workpapers/competitor-ford.md`, `/workpapers/competitor-kia.md` \ No newline at end of file From 0d3d7965547dbef3fbca77e6d2f0ae114948805e Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 16:53:36 -0400 Subject: [PATCH 08/16] docs(deepagents-due-diligence): post-rerun re-review fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Three reviewer-flagged items addressed: - Two stale '33 KB' memo references (header sub-line + FilesystemBackend paragraph) updated to '37 KB' to match the pro-fast Rivian memo - Resources block: Basis link corrected from /task-api/guides/basis to the canonical /task-api/guides/access-research-basis - Added a literal Basis example after the research_task code block — shows what citations_by_field, low_confidence_warning, and interaction_id look like when a real call comes back uncertain. The Parallel reviewer flagged that Basis was described but not shown; this converts it from claim to artifact in ~10 lines and demonstrates the chained-follow-up trigger concretely. All four re-reviewers (technical accuracy, end-user clarity, Deep Agents showcase, Parallel showcase) report the prior round of issues addressed. Remaining minor items deferred to the user's editorial pass: - Title still flat ('Building a company due diligence agent...') - Audience B forking guidance ('to repurpose for X, change these three things') — could be tightened - Production-hardening note for senior-eng audience (failure modes, retries, idempotency) — could be added under Extensions --- .../BLOG_DRAFT.md | 27 ++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index db26357..fcf93a9 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -5,7 +5,7 @@ **Tags:** Cookbook **Reading time:** ~10 min **GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) -**Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) (33 KB) and [eight workpapers](reports/workpapers/) — no setup needed to read. +**Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) (37 KB) and [eight workpapers](reports/workpapers/) — no setup needed to read. > **Who this is for:** engineers building research workflows for bank credit and lending, KYB / EDD onboarding, insurance underwriting, PE / VC / corp dev deal screening, vendor and supplier risk, or compliance and AML. The recipe also adapts cleanly to non-DD research patterns where calibrated confidence and citation trails matter — newsletter prep, candidate background research, market sizing. @@ -108,6 +108,27 @@ Three things happen on top of the SDK call. The wrapper routes through `Parallel That last part is the load-bearing detail. The agent doesn't have to silently trust whatever Parallel returns — it can read the warning, see that `current_ceo` came back at low confidence, and chain a follow-up query that anchors to the same research thread via `previous_interaction_id`. +To make Basis tangible, here's what one `research_task` call returns when a field comes back uncertain: + +```python +>>> result = research_task.invoke({ +... "query": "Rivian Automotive FY2025 financial overview", +... "output_description": "automotive_gross_margin_fy2025, jv_software_revenue_fy2025, doe_loan_status", +... }) +>>> result["citations_by_field"] +{ + "automotive_gross_margin_fy2025": [{"url": "https://www.sec.gov/Archives/edgar/data/1874178/...10-K-2025.htm", ...}], + "jv_software_revenue_fy2025": [{"url": "https://www.reuters.com/business/autos/...", ...}], + "doe_loan_status": [{"url": "https://www.energy.gov/lpo/articles/rivian", ...}], +} +>>> result.get("low_confidence_warning") +'These fields came back with low confidence and should be verified, ideally by chaining a follow-up query with previous_interaction_id: jv_software_revenue_fy2025' +>>> result["interaction_id"] +'trun_a1b2c3d4...' +``` + +The `low_confidence_warning` is what triggers the chained follow-up. The subagent re-asks specifically about `jv_software_revenue_fy2025`, passing `previous_interaction_id="trun_a1b2c3d4..."` so the new call inherits the prior thread's source context — and Parallel returns a sharper answer because it knows what's already been investigated. + ### Subagents Each research track gets its own subagent dict — a name, a description, a focused system prompt, and the `research_task` tool. The Phase-1 subagents are tightly budgeted (one packed Task call plus an optional chained follow-up if Basis flags a low-confidence field) so total run cost stays bounded. @@ -242,7 +263,7 @@ agent = create_deep_agent( A few details worth flagging: -[`FilesystemBackend(root_dir="./reports", virtual_mode=True)`](https://docs.langchain.com/oss/python/deepagents/filesystem) is what makes the workpapers persist to disk. Deep Agents ships with a [state-backed filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) by default, where workpapers live as agent state and evaporate when the run ends — fine for demos, less useful when you want a 33KB memo and eight workpapers you can `cat`, grep, paste into a review. **`virtual_mode=True` is critical** — with the default (`False`), an agent that picks an absolute path like `/workpapers/foo.md` will write to the actual filesystem root, *not* under `./reports/`. That's not a silent failure; it's the file ending up somewhere unexpected. Setting `virtual_mode=True` anchors the agent's virtual paths to your `root_dir`. +[`FilesystemBackend(root_dir="./reports", virtual_mode=True)`](https://docs.langchain.com/oss/python/deepagents/filesystem) is what makes the workpapers persist to disk. Deep Agents ships with a [state-backed filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) by default, where workpapers live as agent state and evaporate when the run ends — fine for demos, less useful when you want a 37 KB memo and eight workpapers you can `cat`, grep, paste into a review. **`virtual_mode=True` is critical** — with the default (`False`), an agent that picks an absolute path like `/workpapers/foo.md` will write to the actual filesystem root, *not* under `./reports/`. That's not a silent failure; it's the file ending up somewhere unexpected. Setting `virtual_mode=True` anchors the agent's virtual paths to your `root_dir`. [`ParallelWebSearchTool()`](https://docs.parallel.ai/search/search-quickstart) is the orchestrator-only quick-lookup tool. The Search API returns LLM-optimized excerpts in 1–3 seconds at ~$0.005 per call — perfect for "is this $5.4B revenue figure for FY2024 or FY2025?" sanity passes during synthesis, where firing another Task call would be overkill. @@ -341,5 +362,5 @@ The recipe ships with the full Rivian sample run committed under [`reports/workp - [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) and [sample Rivian run](reports/workpapers/) on GitHub - [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) — the harness -- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart), [Basis](https://docs.parallel.ai/task-api/guides/basis), and [interactive research](https://docs.parallel.ai/task-api/guides/interactions) — the research substrate +- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart), [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis), and [interactive research](https://docs.parallel.ai/task-api/guides/interactions) — the research substrate - [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) and [Parallel API keys](https://platform.parallel.ai) From cf6f47412ec7a1ba00145e3f7e8deda277418902 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 17:06:07 -0400 Subject: [PATCH 09/16] docs(deepagents-due-diligence): metadata as bullets, drop verticals callout, attribute Deep Agents to LangChain MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Metadata block (Tags / Reading time / GitHub / Sample output) now renders as bullets rather than collapsing into one paragraph in GitHub markdown view - Removed byte-size noise (37 KB / 189 KB) from validation paragraph and metadata — readers don't need that level of detail - Dropped the 'Who this is for' verticals enumeration callout. The opening paragraph already names the FS audience (PE / bank credit / compliance / insurance / vendor risk); the callout was off-voice per the Parallel cookbook style review and read as sales-deck rather than engineering-cookbook - 'Deep Agents is the harness' → 'LangChain's Deep Agents is the harness' for clearer attribution and to match LangChain's preferred framing --- .../BLOG_DRAFT.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index fcf93a9..f80e12f 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -2,12 +2,10 @@ *Automate multi-step company research with agentic orchestration and structured web intelligence.* -**Tags:** Cookbook -**Reading time:** ~10 min -**GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) -**Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) (37 KB) and [eight workpapers](reports/workpapers/) — no setup needed to read. - -> **Who this is for:** engineers building research workflows for bank credit and lending, KYB / EDD onboarding, insurance underwriting, PE / VC / corp dev deal screening, vendor and supplier risk, or compliance and AML. The recipe also adapts cleanly to non-DD research patterns where calibrated confidence and citation trails matter — newsletter prep, candidate background research, market sizing. +- **Tags:** Cookbook +- **Reading time:** ~10 min +- **GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) +- **Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) and [eight workpapers](reports/workpapers/) — no setup needed to read. --- @@ -15,11 +13,11 @@ Company due diligence is a workflow that shows up everywhere in financial servic The accountability bar is what makes this hard to automate well. A bank's KYB file or a credit committee's deal memo is a defensible artifact — every claim eventually traces to a source, every uncertain item gets a follow-up. Most "research agent" demos handle the search-and-summarize half cleanly but treat their own confidence as opaque. They produce confident-sounding paragraphs whether the underlying source was a clean SEC filing or a stale forum post. -This cookbook builds an agent that doesn't make that trade-off. **Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides three primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated message histories, and a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field, rather than a single document-level relevance score. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. +This cookbook builds an agent that doesn't make that trade-off. **LangChain's Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides three primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated message histories, and a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field, rather than a single document-level relevance score. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. Where the canonical Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) pairs the harness with generic web search and produces an open-ended prose report, this recipe is the citation-grade vertical companion — every claim is tied to a Basis-backed source, every uncertain finding is flagged for human verification, and the output is a structured DD memo with named sections. -We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: **23 minutes wall-clock, 9 Task API calls, a [37KB cited memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk** (~189 KB total). More on what the agent actually produced further on. +We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: **~23 minutes wall-clock, 9 Task API calls, a [cited DD memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced further on. ## Overview From a94ce47e1584b7524d847d84063ca22f23468a25 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 17:06:51 -0400 Subject: [PATCH 10/16] docs(deepagents-due-diligence): reframe deep_research comparison as sibling, not contrast MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The prior phrasing ('generic web search', 'open-ended prose report') read as an implicit knock against LangChain's canonical deep_research example. Reframed as 'sits alongside as a citation-grade vertical companion: same harness, swap the research substrate for Parallel's Task API' — same positioning, no disparagement of the sibling example. --- python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index f80e12f..f361823 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -15,7 +15,7 @@ The accountability bar is what makes this hard to automate well. A bank's KYB fi This cookbook builds an agent that doesn't make that trade-off. **LangChain's Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides three primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated message histories, and a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field, rather than a single document-level relevance score. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. -Where the canonical Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) pairs the harness with generic web search and produces an open-ended prose report, this recipe is the citation-grade vertical companion — every claim is tied to a Basis-backed source, every uncertain finding is flagged for human verification, and the output is a structured DD memo with named sections. +This recipe sits alongside the Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) as a citation-grade vertical companion: same harness, swap the research substrate for Parallel's Task API, and the output becomes a structured DD memo where every claim is tied to a Basis source and every uncertain finding is flagged for human verification. We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: **~23 minutes wall-clock, 9 Task API calls, a [cited DD memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced further on. From 569c8b354a2dcffa865dd3235f6194664863bf83 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 17:09:36 -0400 Subject: [PATCH 11/16] docs(deepagents-due-diligence): tighten blog to cookbook voice MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Restructured against the parallel.ai cookbook house style — terse, section spine of setup → tools → subagents → orchestrator → run → stream → who this is for → resources. Trimmed: - 'Substrate / harness' framing replaced with plain 'combining Deep Agents for orchestration and Parallel's Task API for web research' - Phase 1/2/3 ceremony collapsed into one paragraph in Overview - 'What the agent produced' results section removed (Sample Output link at top handles that need; readers can click through to the memo) - Cost/latency tier table removed (one-line pointer to pricing page) - Extensions section (FindAll/Monitor/Enrichment/ultra) removed - Sonnet 4.6 selection rationale paragraph removed - Literal Basis snippet (>>> result = ...) removed - FilesystemBackend(virtual_mode=True) compressed from a 4-paragraph warning to one sentence in the orchestrator section - Multi-paragraph virtual_mode/StateBackend explanation gone Preserved: - ParallelTaskRunTool + parse_basis (the SDK helpers; user's earlier draft pre-dated them) - FilesystemBackend(virtual_mode=True) one-line mention so readers know workpapers persist to disk - Phase-2 competitor-analysis fan-out subagent (the canonical Deep Agents pattern; single paragraph in Overview, one code block in Implementation) - pro-fast as default - Validated 9 calls / ~23 min on Rivian - Streaming snippet matching agent.py's v2 event API Result: ~2400 words → ~1500 words. Reads as a cookbook, not a tutorial. --- .../BLOG_DRAFT.md | 253 ++++++------------ 1 file changed, 78 insertions(+), 175 deletions(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index f361823..a9527a4 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -3,39 +3,31 @@ *Automate multi-step company research with agentic orchestration and structured web intelligence.* - **Tags:** Cookbook -- **Reading time:** ~10 min +- **Reading time:** ~8 min - **GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) -- **Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) and [eight workpapers](reports/workpapers/) — no setup needed to read. +- **Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) and [eight workpapers](reports/workpapers/) --- -Company due diligence is a workflow that shows up everywhere in financial services. PE analysts screen deals. Bank credit teams assess borrowers. Compliance teams onboard new entities under KYB and EDD obligations. Insurance underwriters evaluate commercial policyholders. Vendor-risk teams scrutinize prospective suppliers. The research follows a consistent pattern: take a company, investigate it across several dimensions, produce a structured intelligence report where every claim has a source trail and any uncertain finding is flagged for human verification. +Company due diligence is a workflow that shows up everywhere in financial services. PE analysts screen deals, bank credit teams assess borrowers, compliance teams onboard new entities, insurance underwriters evaluate commercial policyholders. The research follows a consistent pattern. Take a company, investigate it across several dimensions, produce a structured intelligence report where every claim has a source trail. -The accountability bar is what makes this hard to automate well. A bank's KYB file or a credit committee's deal memo is a defensible artifact — every claim eventually traces to a source, every uncertain item gets a follow-up. Most "research agent" demos handle the search-and-summarize half cleanly but treat their own confidence as opaque. They produce confident-sounding paragraphs whether the underlying source was a clean SEC filing or a stale forum post. - -This cookbook builds an agent that doesn't make that trade-off. **LangChain's Deep Agents is the harness**, [**Parallel** is the research substrate](https://docs.parallel.ai/task-api/task-quickstart). [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) provides three primitives the recipe leans on — a [planning tool](https://docs.langchain.com/oss/python/deepagents/overview) (`write_todos`), [subagents](https://docs.langchain.com/oss/python/deepagents/subagents) with isolated message histories, and a [virtual filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) for offloading raw research. [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) returns structured findings annotated with [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis) — a per-field object containing source citations, the model's reasoning, and a high/medium/low confidence rating attached to each output field, rather than a single document-level relevance score. And [`previous_interaction_id`](https://docs.parallel.ai/task-api/guides/interactions) lets the agent chain a follow-up query that inherits the prior research thread's source context, so "verify the field that came back at low confidence" doesn't restart cold. - -This recipe sits alongside the Deep Agents [`deep_research` example](https://github.com/langchain-ai/deepagents/tree/main/examples/deep_research) as a citation-grade vertical companion: same harness, swap the research substrate for Parallel's Task API, and the output becomes a structured DD memo where every claim is tied to a Basis source and every uncertain finding is flagged for human verification. - -We validated the recipe end-to-end on Rivian Automotive (NASDAQ: RIVN). At the default `pro-fast` Task processor: **~23 minutes wall-clock, 9 Task API calls, a [cited DD memo](reports/workpapers/rivian-due-diligence-report.md) with [eight supporting workpapers](reports/workpapers/) persisted to local disk**. More on what the agent actually produced further on. +This cookbook builds an agent that automates that workflow by combining LangChain's [Deep Agents](https://docs.langchain.com/oss/python/deepagents/overview) for orchestration and [Parallel's Task API](https://docs.parallel.ai/task-api/task-quickstart) for web research. Deep Agents handles planning, subagent delegation, and context management. Parallel handles the actual research, returning structured findings with per-field citations, reasoning traces, and calibrated confidence scores via [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis). When findings from one track raise new questions, Parallel's [interactive research](https://docs.parallel.ai/task-api/guides/interactions) feature lets the agent chain follow-up queries with full context from the prior research thread. ## Overview -The agent orchestrates the research in three phases. - -**Phase 1** dispatches five research subagents in parallel. Each has a focused system prompt and produces its own workpaper file: +The agent orchestrates five research tracks, each handled by a dedicated subagent: - **Corporate profile** — legal entity structure, key officers, founding history, headcount, office locations - **Financial health** — funding history, revenue signals, valuation indicators, profitability markers - **Litigation and regulatory** — lawsuits, SEC filings, sanctions screening, regulatory actions, settlements - **News and reputation** — recent press coverage, leadership changes, controversy flags, media sentiment -- **Competitive landscape** — identifies the target's positioning and returns three named competitors that Phase 2 fans out on (this subagent does not produce per-competitor profiles itself) +- **Competitive landscape** — identifies the top three direct competitors and the target's positioning -**Phase 2** is a [subagent fan-out](https://docs.langchain.com/oss/python/deepagents/subagents) — once `competitive-landscape` returns the named competitor list, the orchestrator dispatches **one separate `competitor-analysis` subagent instance per competitor**, in parallel. Each instance runs against its own isolated message history. The reason that matters: each `competitor-analysis` run burns through its own ~10–20K tokens of raw research material — pricing tables, product specs, recent press, financial figures — and only a distilled workpaper file ends up in the synthesis context. Without isolation, three competitors' raw findings would stack into the orchestrator's window and crowd out the cross-reference reasoning that has to happen in Phase 3. +Once `competitive-landscape` returns its named list, the orchestrator dispatches a separate `competitor-analysis` subagent **once per competitor**, in parallel — the canonical Deep Agents fan-out shape, with each instance running in its own isolated context. The orchestrator then reads every workpaper, cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via Parallel's Search API when discrepancies surface, and writes the final report with risk flags and citation trails. -**Phase 3** is synthesis: the orchestrator reads every workpaper from disk, cross-references for contradictions and low-confidence findings, runs ad-hoc lookups via [`ParallelWebSearchTool`](https://docs.parallel.ai/search/search-quickstart) when discrepancies surface (~1–3s and a fraction of a cent per call — much cheaper than spinning up another Task call to disambiguate one fact), and writes the final memo with risk flags and citation trails. +DD requires this multi-step architecture because earlier findings change what needs to be investigated next. If the corporate profile reveals the target is a subsidiary, the financial analysis needs to cover the parent. If the litigation scan surfaces an SEC investigation, the risk assessment changes. Deep Agents' planning tool lets the orchestrator adapt when findings shift the research plan. -DD requires this multi-step architecture rather than a single API call because earlier findings change what needs to be investigated next. If `corporate-profile` reveals the target is a subsidiary, the financial analysis needs to cover the parent. If the litigation scan surfaces an SEC investigation, the risk assessment shifts. The Phase-2 fan-out matches the subagent shape Deep Agents was designed around: spawning N instances of the same subagent type for N parallel investigations, with isolated message histories per instance. +Each research track uses a `pro-fast` processor Task API call. Validated end-to-end on Rivian Automotive (NASDAQ: RIVN): nine calls in ~23 minutes. See [Parallel pricing](https://docs.parallel.ai/getting-started/pricing) for current rates. ## Implementation @@ -50,15 +42,19 @@ export ANTHROPIC_API_KEY="your-anthropic-api-key" export PARALLEL_API_KEY="your-parallel-api-key" ``` -### The research tool +### Defining the Parallel research tools -Every subagent calls a single tool — `research_task` — that takes a query and a description of the desired output, runs a Parallel Task API call under the hood, and returns the structured findings *plus* a list of any fields whose confidence came back at low. If that warning is non-empty, the subagent's reasoning loop knows to chain a follow-up query that re-asks specifically about those fields, anchored to the same research thread via `previous_interaction_id`. Roughly twenty lines of code on top of the SDK: +We define two tools. The first wraps Parallel's Task API for structured research with Basis-aware confidence handling. The second uses the LangChain integration's web search tool for quick factual lookups during synthesis. ```python from typing import Optional from langchain_core.tools import tool -from langchain_parallel import ParallelTaskRunTool, parse_basis +from langchain_parallel import ( + ParallelTaskRunTool, + ParallelWebSearchTool, + parse_basis, +) @tool @@ -70,8 +66,8 @@ def research_task( """Run structured web research via Parallel's Task API. Returns findings with per-field citations and confidence scores (Basis). - Use ``previous_interaction_id`` to chain a follow-up query that builds - on a prior research session. + Use previous_interaction_id to chain follow-up queries that build on + prior research context. """ runner = ParallelTaskRunTool( processor="pro-fast", @@ -100,152 +96,118 @@ def research_task( + ", ".join(parsed["low_confidence_fields"]) ) return response -``` -Three things happen on top of the SDK call. The wrapper routes through `ParallelTaskRunTool` for structured task execution. It calls `parse_basis(result)` to extract per-field citations and the names of any fields whose confidence came back as `"low"`. And it surfaces those field names as an explicit `low_confidence_warning` in the tool's return value, so the calling subagent's reasoning loop can see them and decide to chain a follow-up. -That last part is the load-bearing detail. The agent doesn't have to silently trust whatever Parallel returns — it can read the warning, see that `current_ceo` came back at low confidence, and chain a follow-up query that anchors to the same research thread via `previous_interaction_id`. - -To make Basis tangible, here's what one `research_task` call returns when a field comes back uncertain: - -```python ->>> result = research_task.invoke({ -... "query": "Rivian Automotive FY2025 financial overview", -... "output_description": "automotive_gross_margin_fy2025, jv_software_revenue_fy2025, doe_loan_status", -... }) ->>> result["citations_by_field"] -{ - "automotive_gross_margin_fy2025": [{"url": "https://www.sec.gov/Archives/edgar/data/1874178/...10-K-2025.htm", ...}], - "jv_software_revenue_fy2025": [{"url": "https://www.reuters.com/business/autos/...", ...}], - "doe_loan_status": [{"url": "https://www.energy.gov/lpo/articles/rivian", ...}], -} ->>> result.get("low_confidence_warning") -'These fields came back with low confidence and should be verified, ideally by chaining a follow-up query with previous_interaction_id: jv_software_revenue_fy2025' ->>> result["interaction_id"] -'trun_a1b2c3d4...' +# Quick search tool for fast factual lookups during synthesis +quick_search = ParallelWebSearchTool() ``` -The `low_confidence_warning` is what triggers the chained follow-up. The subagent re-asks specifically about `jv_software_revenue_fy2025`, passing `previous_interaction_id="trun_a1b2c3d4..."` so the new call inherits the prior thread's source context — and Parallel returns a sharper answer because it knows what's already been investigated. +The tool does three things beyond a raw API call. It calls `parse_basis(result)` to extract per-field citations and the names of any low-confidence fields. It surfaces those names as an explicit `low_confidence_warning` in the tool's return value, so the calling subagent's reasoning loop can decide to chain a follow-up. And it returns the `interaction_id` so the chained call can anchor to the same research thread via `previous_interaction_id`. -### Subagents +### Defining the research subagents -Each research track gets its own subagent dict — a name, a description, a focused system prompt, and the `research_task` tool. The Phase-1 subagents are tightly budgeted (one packed Task call plus an optional chained follow-up if Basis flags a low-confidence field) so total run cost stays bounded. +Each research track gets its own subagent with a specialized system prompt and access to the `research_task` tool. ```python corporate_profile_subagent = { "name": "corporate-profile", - "description": ( - "Research corporate structure, leadership, founding history, " - "and headcount for the target company." - ), + "description": "Research corporate structure, leadership, founding history, and headcount", "system_prompt": """You are a corporate research analyst. -Budget: 1 research_task call, plus at most 1 chained follow-up if and -only if the first result includes a low_confidence_warning on an -important field. - -Make a single research_task call requesting all of these fields in one -output_description: -- Legal entity name, incorporation jurisdiction, founding date +Given a company, use the research_task tool to find: +- Legal entity name, incorporation state/country, founding date - Current CEO and key executives (names, titles, approximate tenure) - Headquarters location and major office locations - Employee headcount (current and recent trend) - Corporate structure (parent company, major subsidiaries) -If a low_confidence_warning surfaces, chain a single follow-up using -previous_interaction_id to verify the flagged fields. +For the output_description parameter, request these as structured fields. + +If the result includes a low_confidence_warning, chain a follow-up query +using the returned interaction_id to verify the flagged fields. Write your findings (including citations_by_field) to corporate-profile.md.""", "tools": [research_task], } ``` -The same pattern repeats for `financial_health_subagent`, `litigation_subagent`, `news_reputation_subagent`, and `competitive_landscape_subagent`. The full set is in [`agent.py`](agent.py). +The other Phase-1 subagents (`financial-health`, `litigation-regulatory`, `news-reputation`, `competitive-landscape`) follow the same shape with their own focused prompts. The full set is in [`agent.py`](agent.py). -The Phase-2 subagent is what differentiates this recipe. Instead of asking `competitive-landscape` to produce deep per-competitor profiles, we have it identify three named competitors and let the orchestrator fan out: +The Phase-2 fan-out subagent is invoked once per competitor identified by `competitive-landscape`: ```python competitor_analysis_subagent = { "name": "competitor-analysis", - "description": ( - "Produce a focused profile of one named competitor — used as a " - "fan-out subagent invoked once per competitor identified by " - "competitive-landscape." - ), - "system_prompt": """You are a competitive intelligence researcher -investigating ONE competitor company at a time. - -Budget: exactly 1 research_task call. + "description": "Produce a focused profile of one named competitor", + "system_prompt": """You are a competitive intelligence researcher. The orchestrator will pass you a single competitor name and the original -DD target name. Make one research_task call requesting: -- Brief corporate snapshot (HQ, public/private, headcount, founding year) -- Most recent revenue and growth signals (estimated if private) -- Funding or market cap status (last raise / current cap) +DD target. Make one research_task call requesting: +- Corporate snapshot (HQ, public/private, headcount, founding year) +- Most recent revenue and growth signals +- Funding or market cap status - Product / positioning vs. the original DD target - Recent strategic moves in the last 12 months - Notable strengths and weaknesses relative to the target -Write your findings to competitor-.md, where is the -competitor's name lowercased and hyphenated.""", +Write your findings to competitor-.md.""", "tools": [research_task], } ``` -### The orchestrator +### Creating the orchestrator agent + +The main agent coordinates the subagents, reviews findings for contradictions, and produces the final report. We back it with a [`FilesystemBackend`](https://docs.langchain.com/oss/python/deepagents/filesystem) so workpapers and the final memo persist to disk under `./reports/` rather than evaporating with the agent state. ```python from pathlib import Path from deepagents import create_deep_agent from deepagents.backends.filesystem import FilesystemBackend -from langchain_parallel import ParallelWebSearchTool REPORTS_DIR = Path("./reports") REPORTS_DIR.mkdir(parents=True, exist_ok=True) -DILIGENCE_INSTRUCTIONS = """\ +diligence_instructions = """\ You are a senior due diligence analyst managing a team of specialized researchers. Your job is to produce a comprehensive company intelligence -report where every claim has a verifiable source trail. +report with verifiable claims. -## Process +## Your Process -1. Plan: Use write_todos to lay out the diligence in three phases. +1. **Plan the research**: Use write_todos to lay out the diligence as a + checklist. Phase 1 dispatches the five Phase-1 subagents. Phase 2 + dispatches one competitor-analysis subagent per competitor identified + by competitive-landscape. -2. Phase 1 — parallel research: Use the task tool to dispatch +2. **Phase 1 — parallel research**: Use the task tool to dispatch corporate-profile, financial-health, litigation-regulatory, news-reputation, and competitive-landscape concurrently. -3. Phase 2 — competitor fan-out: After competitive-landscape completes, - read competitive-landscape.md and parse the three named competitors. - For EACH competitor, dispatch a separate competitor-analysis subagent - instance via the task tool — pass the competitor's name and the - original DD target. Dispatch all 3 in parallel. +3. **Phase 2 — competitor fan-out**: Read competitive-landscape.md and + parse the three named competitors. Dispatch a separate + competitor-analysis subagent instance per competitor, in parallel. -4. Review and cross-reference: Read every workpaper file. Look for - contradictions across tracks, low-confidence findings, and gaps. Use - the parallel_web_search tool for ad-hoc lookups when investigating - discrepancies. +4. **Review and cross-reference**: Read every workpaper. Look for + contradictions, low-confidence findings, and gaps. Use quick_search + for ad-hoc lookups during synthesis. -5. Phase 3 — synthesize the report with executive summary, corporate - profile, financial overview, litigation/regulatory risk assessment, - news/reputation analysis, competitive landscape (with per-competitor +5. **Synthesize the report** with: executive summary, corporate profile, + financial overview, litigation and regulatory risk assessment, news + and reputation analysis, competitive landscape (with per-competitor sub-sections), confidence and verification notes, and key risk flags. ## Citation and Confidence Guidelines - Include source URLs for key claims. -- Call out any finding where confidence was low — these need human - verification. +- Call out any finding where confidence was low. These need human verification. - If two tracks produced contradictory information, note the discrepancy - explicitly and include citations from both sources. -- This report is a draft for human review, not a final memo. + explicitly with citations from both sources. """ agent = create_deep_agent( model="anthropic:claude-sonnet-4-6", - tools=[ParallelWebSearchTool()], + tools=[quick_search], subagents=[ corporate_profile_subagent, financial_health_subagent, @@ -254,37 +216,31 @@ agent = create_deep_agent( competitive_landscape_subagent, competitor_analysis_subagent, ], - system_prompt=DILIGENCE_INSTRUCTIONS, + system_prompt=diligence_instructions, backend=FilesystemBackend(root_dir=REPORTS_DIR, virtual_mode=True), ) ``` -A few details worth flagging: - -[`FilesystemBackend(root_dir="./reports", virtual_mode=True)`](https://docs.langchain.com/oss/python/deepagents/filesystem) is what makes the workpapers persist to disk. Deep Agents ships with a [state-backed filesystem](https://docs.langchain.com/oss/python/deepagents/filesystem) by default, where workpapers live as agent state and evaporate when the run ends — fine for demos, less useful when you want a 37 KB memo and eight workpapers you can `cat`, grep, paste into a review. **`virtual_mode=True` is critical** — with the default (`False`), an agent that picks an absolute path like `/workpapers/foo.md` will write to the actual filesystem root, *not* under `./reports/`. That's not a silent failure; it's the file ending up somewhere unexpected. Setting `virtual_mode=True` anchors the agent's virtual paths to your `root_dir`. - -[`ParallelWebSearchTool()`](https://docs.parallel.ai/search/search-quickstart) is the orchestrator-only quick-lookup tool. The Search API returns LLM-optimized excerpts in 1–3 seconds at ~$0.005 per call — perfect for "is this $5.4B revenue figure for FY2024 or FY2025?" sanity passes during synthesis, where firing another Task call would be overkill. - -Sonnet 4.6 is a deliberate orchestrator pick — it handles the multi-phase planning, cross-reference reasoning, and final memo synthesis without the cost of Opus, while the heavy research lifting happens inside Parallel's Task API rather than in the orchestrator's tokens. Swap via `model=` in `create_deep_agent`; any LangChain-compatible chat model identifier works. - ### Running the agent ```python result = agent.invoke({ "messages": [{ "role": "user", - "content": "Conduct a full due diligence report on Rivian Automotive." + "content": "Conduct a full due diligence report on Rivian Automotive", }] }) print(result["messages"][-1].content) ``` -For long-running sessions, stream the agent's progress to see planning, subagent dispatches, and the per-competitor fan-out in real time. Pass `subgraphs=True` to surface events from inside subagent execution: +### Streaming execution progress + +For long-running diligence runs, stream the agent's progress to see planning, tool calls, and subagent activity in real time. Pass `subgraphs=True` to receive events from inside subagent execution. ```python for chunk in agent.stream( - {"messages": [{"role": "user", "content": "Conduct a full due diligence report on Rivian Automotive."}]}, + {"messages": [{"role": "user", "content": "Conduct a full due diligence report on Rivian Automotive"}]}, stream_mode="updates", subgraphs=True, version="v2", @@ -294,71 +250,18 @@ for chunk in agent.stream( print(f"{source} {chunk.get('data')}") ``` -## What the agent produced - -The Rivian run came back with the things you'd hope a competent junior analyst's first draft would catch — and a few that you'd hope they'd catch but might not. The full output is in [`reports/workpapers/`](reports/workpapers/): eight subagent workpapers and a synthesized [`rivian-due-diligence-report.md`](reports/workpapers/rivian-due-diligence-report.md). - -**The quality-of-earnings finding.** The [financial-health workpaper](reports/workpapers/financial-health.md) and the orchestrator's synthesis caught that Rivian's headline FY2025 milestone — its first-ever annual gross profit, $144M — was entirely funded by VW JV software/services revenue. The automotive segment itself lost ~$432M at the gross level. The [final memo](reports/workpapers/rivian-due-diligence-report.md) flags this directly: - -> *Continued negative automotive gross margins masked by JV-derived software revenue.* +## Who this is for -That's quality-of-earnings reasoning of the kind a credit committee or KYB reviewer would expect — pulling apart a headline number to see what funded it. Hard to surface from a one-shot research call; surfaces naturally when the financial subagent and the competitive-landscape subagent's revenue-mix data both end up in the orchestrator's synthesis context. - -**An open OSHA fatality investigation the litigation track caught.** The [litigation-regulatory workpaper](reports/workpapers/litigation-regulatory.md) flagged a March 5, 2026 worker death at Rivian's Normal, Illinois facility — and the orchestrator's synthesis connected it to a documented pattern of prior OSHA "serious" citations, escalating it as a high-risk item rather than a one-off. From the final memo: - -> *On March 5, 2026, a 61-year-old worker (Kevin Lancaster) was killed after being pinned between a semi-trailer and a loading dock at Rivian's Normal, Illinois warehouse. An OSHA fatality investigation is open; penalties and citation determinations are pending. This event occurs against a backdrop of a pattern of OSHA serious citations at the Normal facility… This is not an isolated incident — it is the most severe escalation of a documented safety compliance concern.* - -That escalation reasoning — "this is part of a pattern, not a one-off" — is exactly what `previous_interaction_id` was used for. The litigation subagent saw the fatality news, surfaced a low-confidence flag on related citation history, then chained a targeted OSHA-IMIS-focused follow-up that pulled the prior citation pattern into the same workpaper. - -**A sharper competitor pick from Phase-2 fan-out.** The [competitive-landscape](reports/workpapers/competitive-landscape.md) subagent picked **Tesla, Ford, and Kia** as the three competitors — a notable choice. Tesla and Ford are the obvious volume comparables; Kia is the non-obvious one. The orchestrator's reasoning, captured in [`competitor-kia.md`](reports/workpapers/competitor-kia.md): the Kia EV9 posted **22,017 US sales in 2024**, won the **2024 North American Utility Vehicle of the Year**, and targets exactly the three-row family-SUV niche Rivian's R1S sits in. The fan-out meant Kia got the same depth-of-investigation as Tesla — corporate snapshot, Hyundai Motor Group ownership structure, the IRA-driven Georgia battery JV — rather than being a one-line mention. - -**Calibrated risk severity with explicit verification asks.** The [final memo](reports/workpapers/rivian-due-diligence-report.md) tiers every risk by severity (🔴 high / 🟡 medium / 🟢 resolved) and ends with a "Key Risk Flags and Areas Requiring Further Investigation" section enumerating ten specific items with named verification paths — *Crews v. Rivian* final hearing on May 15, 2026; the OSHA fatality investigation's expected penalty range and willful-violation potential; the trajectory of automotive gross margin as R2 volumes scale; whether the ~$270M Q4 2025 decline in regulatory credit sales is timing-related or structural. Every shaky finding has a named source-of-truth a human can chase. - -None of this is magic. It's what you get when the underlying research API returns calibrated confidence per field and the agent has the affordance to chain a follow-up. The architecture just makes "ask sharper questions when the first answer is shaky" a first-class behavior. - -### Cost and latency - -The Rivian run hit **9 Task API calls in ~23 minutes** at the default `pro-fast` processor — five Phase-1 packed calls plus one chained follow-up (litigation-regulatory chained when an OSHA fatality surfaced and warranted deeper investigation) plus three Phase-2 competitor-analysis instances. - -Per-call latency by tier (from [Parallel pricing](https://docs.parallel.ai/getting-started/pricing)): - -| Tier | Per-call latency | Best for | -|---|---|---| -| `core-fast` | 15s – 100s | Faster draft, useful for iterating on prompts | -| `pro-fast` *(recipe default)* | 30s – 5min | Higher-stakes DD with deeper reasoning per call | -| `ultra` | 5min – 25min | Investment-committee-grade output | - -Phase 1 runs concurrently and Phase 2 fans out, so the per-run wall-clock is roughly two parallel batches of the slowest call in each, plus orchestrator synthesis. See the pricing page for per-call cost. - -### Extensions - -The five Phase-1 tracks are a starting point — each new domain is a new subagent dict with a focused prompt and the same `research_task` tool. A few natural extensions on the Parallel side: - -- Swap `competitive-landscape` for [**FindAll**](https://docs.parallel.ai/findall-api/findall-quickstart) when the diligence task is "find every subsidiary that satisfies condition X" or "find every vendor in category Y," not just "name three competitors." FindAll is purpose-built for evaluated entity discovery — exactly the shape of beneficial-ownership tracing in KYB or supplier-mapping in vendor risk. -- Plug the final memo into [**Monitor**](https://docs.parallel.ai/monitor-api/monitor-quickstart) for ongoing post-deal surveillance — a credit-team's syndicate refresh, a portfolio-company quarterly health check, or a vendor's ongoing risk file. -- Run the recipe at portfolio scale with [**`ParallelEnrichment`**](https://docs.parallel.ai/task-api/group-api) — DD-lite across fifty deal-screening targets in one batch instead of fifty one-shot agent runs. -- Tier up to the `ultra` Task processor when you need [Deep Research](https://docs.parallel.ai/task-api/examples/task-deep-research)–grade reasoning per subagent, e.g. for IC-grade investment memos. - -Deep Agents itself has primitives we don't exercise here that are worth knowing about as you adapt the recipe — [`interrupt_on`](https://docs.langchain.com/oss/python/deepagents/overview) for human-in-the-loop sign-off before the synthesis pass (analyst approval gates), [`checkpointer`](https://docs.langchain.com/oss/python/deepagents/overview) so a 14-minute run can resume from a crash, and [skills / memory](https://docs.langchain.com/oss/python/deepagents/overview) for cross-run learning of preferred sources and verification heuristics. - -## Run it yourself - -```bash -git clone https://github.com/parallel-web/parallel-cookbook -cd parallel-cookbook/python-recipes/parallel-deepagents-due-diligence - -uv venv -uv pip install -e . -cp .env.example .env # then fill in ANTHROPIC_API_KEY + PARALLEL_API_KEY (get a Parallel key at platform.parallel.ai) - -uv run python agent.py -``` +This architecture applies to any team running structured research workflows on companies, including deal screening, credit underwriting, KYB/KYC onboarding, M&A target evaluation, and vendor risk assessment. -The recipe ships with the full Rivian sample run committed under [`reports/workpapers/`](reports/workpapers/) — start with the [synthesized memo](reports/workpapers/rivian-due-diligence-report.md) and the [Tesla competitor workpaper](reports/workpapers/competitor-tesla.md) for a sense of the artifact shape before committing your own keys. +The five research tracks here are a starting point. Swap in tracks relevant to your workflow: add management background checks and beneficial ownership tracing for compliance-heavy diligence, add IP portfolio analysis for M&A screening, add SOC 2 verification for vendor assessment. Each additional track is a new subagent dict with a system prompt and the same `research_task` tool. ## Resources -- [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) and [sample Rivian run](reports/workpapers/) on GitHub -- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) — the harness -- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart), [Basis](https://docs.parallel.ai/task-api/guides/access-research-basis), and [interactive research](https://docs.parallel.ai/task-api/guides/interactions) — the research substrate -- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) and [Parallel API keys](https://platform.parallel.ai) +- [Full source code](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) +- [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) +- [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart) +- [Parallel Basis and citations](https://docs.parallel.ai/task-api/guides/access-research-basis) +- [Parallel interactive research](https://docs.parallel.ai/task-api/guides/interactions) +- [`langchain-parallel` SDK](https://github.com/parallel-web/langchain-parallel) +- [Get a Parallel API key](https://platform.parallel.ai) From 41907bef059682a31c97b337a743692204a3c530 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Thu, 30 Apr 2026 17:17:07 -0400 Subject: [PATCH 12/16] docs(deepagents-due-diligence): drop reading-time from metadata block --- python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md | 1 - 1 file changed, 1 deletion(-) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index a9527a4..33823ff 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -3,7 +3,6 @@ *Automate multi-step company research with agentic orchestration and structured web intelligence.* - **Tags:** Cookbook -- **Reading time:** ~8 min - **GitHub:** [parallel-cookbook/python-recipes/parallel-deepagents-due-diligence](https://github.com/parallel-web/parallel-cookbook/tree/main/python-recipes/parallel-deepagents-due-diligence) - **Sample output:** [Rivian DD memo](reports/workpapers/rivian-due-diligence-report.md) and [eight workpapers](reports/workpapers/) From 306f5f6416817542df78136c412db2ca0bcebf35 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Wed, 6 May 2026 13:58:36 -0400 Subject: [PATCH 13/16] LangSmith section --- .../BLOG_DRAFT.md | 63 ++++++++++++++++++ .../Observability-with-LangSmith.md | 63 ++++++++++++++++++ .../assets/01-orchestrator-plan.png | Bin 0 -> 105709 bytes .../assets/02-phase1-fanout.png | Bin 0 -> 163251 bytes .../assets/03-research-task.png | Bin 0 -> 232092 bytes .../assets/04-basis-payload.png | Bin 0 -> 159810 bytes 6 files changed, 126 insertions(+) create mode 100644 python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md create mode 100644 python-recipes/parallel-deepagents-due-diligence/assets/01-orchestrator-plan.png create mode 100644 python-recipes/parallel-deepagents-due-diligence/assets/02-phase1-fanout.png create mode 100644 python-recipes/parallel-deepagents-due-diligence/assets/03-research-task.png create mode 100644 python-recipes/parallel-deepagents-due-diligence/assets/04-basis-payload.png diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md index 33823ff..cabdefe 100644 --- a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md +++ b/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md @@ -249,6 +249,69 @@ for chunk in agent.stream( print(f"{source} {chunk.get('data')}") ``` +## Observability with LangSmith + +### Why observability matters for FSI + +Six months from now, a regulator examiner sits down to review one of the AI-assisted due-diligence memos your team produced this quarter, pulled from a portfolio of hundreds. They want to know which sources informed each conclusion, with what confidence, and whether the agent's process was logged. They expect an answer. + +The agent compounds non-determinism (LLM output, prompt sensitivity, the open web), spends real money on real web research, and ends in a memo a regulator may eventually audit. Every claim has to map back to a primary source with an explicit confidence label, and that mapping has to remain auditable months after the run finishes. Once the agent reaches production, most of its failures surface there too, where pre-launch testing rarely catches them. The trace is the artifact that survives the run. + +This is why the trace matters in FSI specifically: + +- **Logging is increasingly mandated.** The EU AI Act requires automatic event logging for high-risk AI systems, and US bank regulators apply model risk management expectations to AI agents in practice even where formal scope is unsettled. The trace is the artifact both frameworks contemplate. + +- **Decision explainability requires per-claim grounding.** When AI input feeds a regulated decision such as consumer credit, investment recommendations, or any process subject to fiduciary obligations, the institution has to explain how that input was formed. The basis payload (source URLs and per-output confidence) is what makes that explanation reproducible months after the run. + +- **Third-party AI requires ongoing supervision.** The stack uses an external model provider (Anthropic) and an external research API (Parallel). Banking third-party risk guidance requires ongoing monitoring of vendor outputs beyond upfront due diligence. The trace records what each vendor returned, on what input, and with what confidence. + +- **Operational resilience demands fast root-cause analysis.** Under DORA, in-scope EU financial entities must report major ICT incidents on tight windows. If an agent produces a faulty output that affects a client, the trace enables root-cause analysis fast enough to meet those obligations. + +### How compliance and audit work today + +FSI teams already have a system for proving how a research memo was produced: analyst workpapers, citation lists, email trails of source approvals, version control on the deliverable, and a compliance officer's review. For models specifically, banks add Model Risk Management documentation under SR 11-7, maintained in dedicated GRC tools. + +This works because the analyst is the unit of accountability. When an examiner asks how a conclusion was reached, the analyst walks through their reasoning, with the workpaper and citation list backing them up. + +AI agents break that model. The "analyst" is now a graph of LLM calls and tool invocations, and the reasoning lives inside context windows that disappear once the run ends. The trace restores the attach point, giving compliance the same inspectable record they had with human workpapers, with per-claim grounding added. + +### What LangSmith captures + +LangSmith records every Deep Agents step and every `ParallelTaskRunTool` invocation in this agent: the prompt the subagent constructed, the URLs Parallel returned, the basis payload with confidence, and the structured findings, with no changes to the agent code. Each run is also broken down into per-node cost across every model call, tool call, and subagent, so you can see exactly which step drove which share of tokens and time. When two runs come back at very different cost, the trace shows whether the difference lives in subagent reasoning, additional Parallel calls, or the final synthesis pass. + +### What the trace shows + +Open any run and the first thing you see is the orchestrator's plan: a four-phase TODO that lays out the research strategy before any subagent runs. + +![Orchestrator's four-phase plan, generated by `write_todos` at the start of the run.](assets/01-orchestrator-plan.png) +*Orchestrator's four-phase plan, generated by `write_todos` at the start of the run.* + +Phase 1 then dispatches all five research subagents in parallel: `corporate-profile`, `financial-health`, `litigation-regulatory`, `news-reputation`, and `competitive-landscape`. Each subagent receives a focused mission described in plain English in the dispatch tool call. Click into any of those `task` nodes in the trace and you can see exactly what that subagent is doing: the prompt it issued, the Parallel calls it made, and the sources that came back. + +![Phase 1 fan-out: five research subagents dispatched in parallel.](assets/02-phase1-fanout.png) +*Phase 1 fan-out: five research subagents dispatched in parallel.* + +After Phase 1 completes, the orchestrator fans out per-competitor analyses (Phase 2), cross-references workpapers for contradictions (Phase 3), and synthesizes the final memo (Phase 4). Every tool call is captured along the way. + +Selecting any subagent's `research_task` shows the full structured findings Parallel returned: every field, every excerpt, and every URL, including content beyond the summary that lands in the workpaper. + +![A subagent's research_task output: structured findings returned by Parallel.](assets/03-research-task.png) +*A subagent's `research_task` output: structured findings returned by Parallel.* + +### Citations and confidence + +For a compliance reviewer, the relevant view is the basis payload inside `parallel_task_run`. Parallel attaches each output with source URLs, a confidence label (high / medium / low), and a one-line reasoning trace explaining how the answer was assembled. + +![Basis payload: source URLs, confidence label, and reasoning trace.](assets/04-basis-payload.png) +*Basis payload: source URLs, confidence label, and reasoning trace.* + +In the Rivian corporate-profile call shown above, the agent's `medium`-confidence output is grounded in four sources: Rivian's 10-K and 2026 annual report on SEC.gov, a third-party reproduction of the 2026 proxy statement, and Wikipedia. That mix of two primary SEC filings, one secondary reproduction, and one tertiary source is exactly the kind of grounding pattern a compliance reviewer would want to flag. With the trace, the grounding is inspectable per claim, and sourcing patterns like this one become correctable across runs. A workpaper without this layer would list the same four URLs flat, with no signal about which were primary. + +### Beyond a single trace + +For one DD memo, the trace is the audit trail. For a portfolio of memos run across a quarter, you also need pattern discovery: which subagent produces the most low-confidence outputs, which targets force the most chained Parallel follow-ups, which sources have started returning thinner content. LangSmith builds on the trace foundation with cross-run analytics for exactly that. For an FSI team running diligence at scale, that capability turns an audit trail into an operating discipline. + + ## Who this is for This architecture applies to any team running structured research workflows on companies, including deal screening, credit underwriting, KYB/KYC onboarding, M&A target evaluation, and vendor risk assessment. diff --git a/python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md b/python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md new file mode 100644 index 0000000..9cce28f --- /dev/null +++ b/python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md @@ -0,0 +1,63 @@ +*Review draft. Observability section for the Parallel x Deep Agents due-diligence cookbook. Worked example: Rivian Automotive (NASDAQ: RIVN). Prepared 2026-05-04.* + +# Observability with LangSmith + +## Why observability matters for FSI + +Six months from now, a regulator examiner sits down to review one of the AI-assisted due-diligence memos your team produced this quarter, pulled from a portfolio of hundreds. They want to know which sources informed each conclusion, with what confidence, and whether the agent's process was logged. They expect an answer. + +The agent compounds non-determinism (LLM output, prompt sensitivity, the open web), spends real money on real web research, and ends in a memo a regulator may eventually audit. Every claim has to map back to a primary source with an explicit confidence label, and that mapping has to remain auditable months after the run finishes. Once the agent reaches production, most of its failures surface there too, where pre-launch testing rarely catches them. The trace is the artifact that survives the run. + +This is why the trace matters in FSI specifically: + +- **Logging is increasingly mandated.** The EU AI Act requires automatic event logging for high-risk AI systems, and US bank regulators apply model risk management expectations to AI agents in practice even where formal scope is unsettled. The trace is the artifact both frameworks contemplate. + +- **Decision explainability requires per-claim grounding.** When AI input feeds a regulated decision such as consumer credit, investment recommendations, or any process subject to fiduciary obligations, the institution has to explain how that input was formed. The basis payload (source URLs and per-output confidence) is what makes that explanation reproducible months after the run. + +- **Third-party AI requires ongoing supervision.** The stack uses an external model provider (Anthropic) and an external research API (Parallel). Banking third-party risk guidance requires ongoing monitoring of vendor outputs beyond upfront due diligence. The trace records what each vendor returned, on what input, and with what confidence. + +- **Operational resilience demands fast root-cause analysis.** Under DORA, in-scope EU financial entities must report major ICT incidents on tight windows. If an agent produces a faulty output that affects a client, the trace enables root-cause analysis fast enough to meet those obligations. + +## How compliance and audit work today + +FSI teams already have a system for proving how a research memo was produced: analyst workpapers, citation lists, email trails of source approvals, version control on the deliverable, and a compliance officer's review. For models specifically, banks add Model Risk Management documentation under SR 11-7, maintained in dedicated GRC tools. + +This works because the analyst is the unit of accountability. When an examiner asks how a conclusion was reached, the analyst walks through their reasoning, with the workpaper and citation list backing them up. + +AI agents break that model. The "analyst" is now a graph of LLM calls and tool invocations, and the reasoning lives inside context windows that disappear once the run ends. The trace restores the attach point, giving compliance the same inspectable record they had with human workpapers, with per-claim grounding added. + +## What LangSmith captures + +LangSmith records every Deep Agents step and every `ParallelTaskRunTool` invocation in this agent: the prompt the subagent constructed, the URLs Parallel returned, the basis payload with confidence, and the structured findings, with no changes to the agent code. Each run is also broken down into per-node cost across every model call, tool call, and subagent, so you can see exactly which step drove which share of tokens and time. When two runs come back at very different cost, the trace shows whether the difference lives in subagent reasoning, additional Parallel calls, or the final synthesis pass. + +## What the trace shows + +Open any run and the first thing you see is the orchestrator's plan: a four-phase TODO that lays out the research strategy before any subagent runs. + +![Orchestrator's four-phase plan, generated by `write_todos` at the start of the run.](assets/01-orchestrator-plan.png) +*Orchestrator's four-phase plan, generated by `write_todos` at the start of the run.* + +Phase 1 then dispatches all five research subagents in parallel: `corporate-profile`, `financial-health`, `litigation-regulatory`, `news-reputation`, and `competitive-landscape`. Each subagent receives a focused mission described in plain English in the dispatch tool call. Click into any of those `task` nodes in the trace and you can see exactly what that subagent is doing: the prompt it issued, the Parallel calls it made, and the sources that came back. + +![Phase 1 fan-out: five research subagents dispatched in parallel.](assets/02-phase1-fanout.png) +*Phase 1 fan-out: five research subagents dispatched in parallel.* + +After Phase 1 completes, the orchestrator fans out per-competitor analyses (Phase 2), cross-references workpapers for contradictions (Phase 3), and synthesizes the final memo (Phase 4). Every tool call is captured along the way. + +Selecting any subagent's `research_task` shows the full structured findings Parallel returned: every field, every excerpt, and every URL, including content beyond the summary that lands in the workpaper. + +![A subagent's research_task output: structured findings returned by Parallel.](assets/03-research-task.png) +*A subagent's `research_task` output: structured findings returned by Parallel.* + +## Citations and confidence + +For a compliance reviewer, the relevant view is the basis payload inside `parallel_task_run`. Parallel attaches each output with source URLs, a confidence label (high / medium / low), and a one-line reasoning trace explaining how the answer was assembled. + +![Basis payload: source URLs, confidence label, and reasoning trace.](assets/04-basis-payload.png) +*Basis payload: source URLs, confidence label, and reasoning trace.* + +In the Rivian corporate-profile call shown above, the agent's `medium`-confidence output is grounded in four sources: Rivian's 10-K and 2026 annual report on SEC.gov, a third-party reproduction of the 2026 proxy statement, and Wikipedia. That mix of two primary SEC filings, one secondary reproduction, and one tertiary source is exactly the kind of grounding pattern a compliance reviewer would want to flag. With the trace, the grounding is inspectable per claim, and sourcing patterns like this one become correctable across runs. A workpaper without this layer would list the same four URLs flat, with no signal about which were primary. + +## Beyond a single trace + +For one DD memo, the trace is the audit trail. For a portfolio of memos run across a quarter, you also need pattern discovery: which subagent produces the most low-confidence outputs, which targets force the most chained Parallel follow-ups, which sources have started returning thinner content. LangSmith builds on the trace foundation with cross-run analytics for exactly that. For an FSI team running diligence at scale, that capability turns an audit trail into an operating discipline. diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/01-orchestrator-plan.png b/python-recipes/parallel-deepagents-due-diligence/assets/01-orchestrator-plan.png new file mode 100644 index 0000000000000000000000000000000000000000..e9c4133e3c9cf680aeb36a26915a05f376331fa0 GIT binary patch literal 105709 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 literal 0 HcmV?d00001 diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/02-phase1-fanout.png b/python-recipes/parallel-deepagents-due-diligence/assets/02-phase1-fanout.png new file mode 100644 index 0000000000000000000000000000000000000000..e5fca4d2777bee042ce21999bcbb09a08458bc6f GIT binary patch literal 163251 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�jSFE?A3<+vhSv%mEJr=Aw=Q&t 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 oVDK|qw@U` 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 z z7u=FHlpN4ex2^zW+M9t^v%ZfzD&bg!Pe0ijXp+{gbq&!(PfbO^ojn4DQ;oYT)~1Yx z5!j=_Z4TRWq$5W+n76!SE$nSS)iG2~5#$2Q3aWCMS?M>J0P_8n2kB<*U~N6MjM;av za=u^WpWFv{B@m{0cx3%e8+N!;Ef3IobO2V`V>?BIHC07qbiO7jEsdO+*a^V=gob-M zFvIE2Y1qQ0uJ<2O81`DaMaTm`*mlN1fpCCyzX|KLRkhStQU&*fr3Z{jI&D>d=czWg z%hssse|zjkNuI!A0qs88icxR}x#-@6nIYW08@z&oS0{@dend%=Y>bFPgEKBxccs*o znx#j_2X(Fb`b^X^Z&lPo=tdI7JiV9VRuK~gLJo!rb=QfH0m5+NVW;?$htOTx9Eb&1 zg2u1rYI2 zkQ=OKdI&X@Q-z@^!vo_#r>6REj*jhf(Is%LgAR14Ots)*OAo5%qPh$~GRW~lTM^x~u7rB`2oe%TO4 zgf?OnNaa!3tad1b&KPBwNX>YxQ-I~u&Pfxr0E1qCB;`B?g&)H2)OVkLveYK)$3>ro zlFFnZ!<7?{CCOKVY-%-^ch@;s%5p!rxE0&=m-+_TM#wf4xvdT=$Q=g|#uCeJlbnhz zWRoH6s(ppOVls_z2>MFYL`L8$qzHS>X<$M(Pb*Amkrd|RvBfN6o>FGlFt(Ghw= zI5-!ft1&TL4LOMPzY@W{xKQiblTn(Zids)n`w)@9{npGU z%eDyL!Xo3zX^mYS?4j3eWN*hvfer_{NIM3wMu~}ur#6SUKYoHc;gsHixez(GKWh<9 z(g96Ca=-xJ_eJS;iyw4dU5++LUtXpKPS>F8#2zFVG9e@=*msW|SMERZ=9f3K8-`+^ zz{|nfgm?+*mrVbb7u7DAoT-IYbZ0)FD}!sJlSrZzoAjO_0^q zP_S4{M4y2`laBfz6VzRYmwhbpqP|*I78XrX5tSS|U`BKw)JV!^MsT-d5}?7xU~G8J z;au!sRrs(m%Gm${dFi0-*7%(XFpBc#_;{n_0E`*95n5Y``?M|wJ-C+pAC*XriPFyv zsMbdsq{Z%mJ0f#drWqJ$M?F@7@C(m)~r|;A>Bo^PFp72w6R* z|Lt1aYNRN$)>XEXv{ZcPujTr}PG`ozIv+cZxMNUV0qGH#=QUx6`qWyJwop^@6pSwA zdwh;ey!KN)uw2?bRRh8!cxXXRq4f_dlBtWP@6UrXqm&PZueifbd6Uk*3Ba!ns%e(I z5z89wI!WH?>oBj*``=J%5($vUA Vhf9x+PS3uVvb?%nk<5!f{||7#$cO*{ literal 0 HcmV?d00001 diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/03-research-task.png b/python-recipes/parallel-deepagents-due-diligence/assets/03-research-task.png new file mode 100644 index 0000000000000000000000000000000000000000..6d409607e2b02dcfca3e3351733d2d824c39cebb GIT binary patch literal 232092 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

(ughWS8f<`4hqLoFnwI#VB+n@_`@6vd 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 }8dnlO_ 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 Q9xGcUL}f*ag!DfDFa3%J@c;k- literal 0 HcmV?d00001 From 0f75521dfed59f27ec765f33b916fb8d2d8d8a37 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Wed, 6 May 2026 23:40:57 -0400 Subject: [PATCH 14/16] docs(deepagents-due-diligence): move draft writeups into drafts/ subfolder Keeps the recipe directory focused on user-facing files. The unpublished BLOG_DRAFT.md and Observability-with-LangSmith.md drafts now live under drafts/ for reference. --- .../parallel-deepagents-due-diligence/{ => drafts}/BLOG_DRAFT.md | 0 .../{ => drafts}/Observability-with-LangSmith.md | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/BLOG_DRAFT.md (100%) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/Observability-with-LangSmith.md (100%) diff --git a/python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md b/python-recipes/parallel-deepagents-due-diligence/drafts/BLOG_DRAFT.md similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/BLOG_DRAFT.md rename to python-recipes/parallel-deepagents-due-diligence/drafts/BLOG_DRAFT.md diff --git a/python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md b/python-recipes/parallel-deepagents-due-diligence/drafts/Observability-with-LangSmith.md similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/Observability-with-LangSmith.md rename to python-recipes/parallel-deepagents-due-diligence/drafts/Observability-with-LangSmith.md From 42f87c3c7b1a0da14541e7c453036e413ab994e6 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Wed, 6 May 2026 23:40:57 -0400 Subject: [PATCH 15/16] docs(deepagents-due-diligence): link to official LangChain blog post Adds a callout under the lead and a Resources entry pointing to the LangChain blog post that announces this recipe. --- python-recipes/parallel-deepagents-due-diligence/README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/python-recipes/parallel-deepagents-due-diligence/README.md b/python-recipes/parallel-deepagents-due-diligence/README.md index 0131118..6128619 100644 --- a/python-recipes/parallel-deepagents-due-diligence/README.md +++ b/python-recipes/parallel-deepagents-due-diligence/README.md @@ -2,6 +2,8 @@ **A research agent that reasons over its own confidence and chains follow-up queries when it isn't sure.** +> Companion to the LangChain blog post: [Building a Company Due Diligence Agent with Deep Agents, LangSmith, and Parallel](https://www.langchain.com/blog/building-a-company-due-diligence-agent-with-deep-agents-langsmith-and-parallel). + Most research agents do one search, take what they get, and move on. This recipe shows a different pattern: an agent that examines the confidence of its own findings and chains follow-up queries when a result is uncertain. Deep Agents handles the orchestration — planning, subagent delegation, virtual filesystem. Parallel's Task API returns structured findings with per-field citations and calibrated confidence via Basis. Parallel's `previous_interaction_id` lets the agent pick up where a prior query left off — context preserved, follow-up question added. The worked example is **company due diligence**: take a target, investigate it across five dimensions in parallel, produce a structured report where every claim has a source trail. DD shows up in PE deal screening, credit underwriting, KYB onboarding, M&A target evaluation, and vendor risk. But the pattern underneath — typed-output research with confidence-driven follow-ups — works for any multi-source research task: newsletter prep, lead generation, comparison shopping, market sizing, candidate background checks. Swap the subagents and you have a different agent. @@ -199,6 +201,7 @@ This agent produces a **draft** for human review, not a final memo. Web sources ## Resources +- [LangChain blog: Building a Company Due Diligence Agent with Deep Agents, LangSmith, and Parallel](https://www.langchain.com/blog/building-a-company-due-diligence-agent-with-deep-agents-langsmith-and-parallel) - [Deep Agents documentation](https://docs.langchain.com/oss/python/deepagents/overview) - [Parallel Task API](https://docs.parallel.ai/task-api/task-quickstart) - [Parallel Basis and Citations](https://docs.parallel.ai/task-api/guides/basis) From c7a99279e9fb2d0579548550b3c5fa5f403b0f17 Mon Sep 17 00:00:00 2001 From: Matt Harris Date: Wed, 6 May 2026 23:42:30 -0400 Subject: [PATCH 16/16] docs(deepagents-due-diligence): move blog assets into drafts/ The PNGs are only referenced from the draft writeups; keeping them under drafts/assets/ preserves the existing relative paths in BLOG_DRAFT.md and Observability-with-LangSmith.md. --- .../{ => drafts}/assets/01-orchestrator-plan.png | Bin .../{ => drafts}/assets/02-phase1-fanout.png | Bin .../{ => drafts}/assets/03-research-task.png | Bin .../{ => drafts}/assets/04-basis-payload.png | Bin 4 files changed, 0 insertions(+), 0 deletions(-) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/assets/01-orchestrator-plan.png (100%) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/assets/02-phase1-fanout.png (100%) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/assets/03-research-task.png (100%) rename python-recipes/parallel-deepagents-due-diligence/{ => drafts}/assets/04-basis-payload.png (100%) diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/01-orchestrator-plan.png b/python-recipes/parallel-deepagents-due-diligence/drafts/assets/01-orchestrator-plan.png similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/assets/01-orchestrator-plan.png rename to python-recipes/parallel-deepagents-due-diligence/drafts/assets/01-orchestrator-plan.png diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/02-phase1-fanout.png b/python-recipes/parallel-deepagents-due-diligence/drafts/assets/02-phase1-fanout.png similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/assets/02-phase1-fanout.png rename to python-recipes/parallel-deepagents-due-diligence/drafts/assets/02-phase1-fanout.png diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/03-research-task.png b/python-recipes/parallel-deepagents-due-diligence/drafts/assets/03-research-task.png similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/assets/03-research-task.png rename to python-recipes/parallel-deepagents-due-diligence/drafts/assets/03-research-task.png diff --git a/python-recipes/parallel-deepagents-due-diligence/assets/04-basis-payload.png b/python-recipes/parallel-deepagents-due-diligence/drafts/assets/04-basis-payload.png similarity index 100% rename from python-recipes/parallel-deepagents-due-diligence/assets/04-basis-payload.png rename to python-recipes/parallel-deepagents-due-diligence/drafts/assets/04-basis-payload.png

v=>)``5T#2H^`ioGrrt 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