Skip to content

Instrument Pendo Track Events - #3

Open
novus-by-pendo[bot] wants to merge 1 commit into
mainfrom
novus/instrument-pendo-track-events
Open

Instrument Pendo Track Events#3
novus-by-pendo[bot] wants to merge 1 commit into
mainfrom
novus/instrument-pendo-track-events

Conversation

@novus-by-pendo

Copy link
Copy Markdown

Summary

Adds 13 Pendo Track Events across frontend and backend to capture key user interactions, pipeline performance, and system health metrics.

Client-side events (pendo.track() in browser):

  • idea_submitted (src/components/venturemind/interactive.tsx) — fires on form submission with idea metadata and source detection
  • example_idea_selected (src/components/venturemind/interactive.tsx) — fires when a preset example idea is chosen
  • report_exported (src/components/venturemind/interactive.tsx) — fires when the analysis report is downloaded as .txt
  • whatif_simulation_performed (src/components/venturemind/interactive.tsx) — debounced (1s) tracking when What-If Simulator sliders settle at non-default positions
  • analysis_completed (src/app/page.tsx) — fires when the 6-agent pipeline returns real results, with score/verdict/timing metadata
  • analysis_failed (src/app/page.tsx) — fires on unrecoverable analysis errors
  • demo_mode_fallback (src/app/page.tsx) — fires when API is unavailable or times out, triggering mock results

Server-side events (Pendo Track API via HTTP POST):

  • pipeline_stage_completed (core/orchestrator.py) — fires per agent stage with duration and status
  • memory_hit_found (core/orchestrator.py) — fires when prior analysis runs match the current idea via similarity search
  • evaluation_reflection_triggered (core/orchestrator.py) — fires when the evaluator triggers a reflection loop for additional research
  • analysis_run_persisted (core/orchestrator.py) — fires when results are saved to long-term memory
  • scenario_studio_generated (utils/scenario_engine.py) — fires when the 5 investor scenarios are built
  • rate_limit_exceeded (src/app/api/analyze/route.ts) — fires when a user exceeds the 10 analyses/hour rate limit

New file:

  • core/pendo_track.py — Reusable Python utility for sending server-side Track Events to the Pendo Track API using urllib.request (fire-and-forget via daemon thread)

Test plan

  • Verify client-side events fire in browser console by submitting an idea and checking pendo.track calls
  • Verify whatif_simulation_performed only fires once after sliders settle (debounced)
  • Verify example_idea_selected fires when clicking a preset example
  • Verify report_exported fires on download button click
  • Verify server-side events appear in Pendo (may take up to 2 hours)
  • Confirm tracking failures do not break application flow

🤖 Generated with Claude Code

Add 13 Pendo Track Events to capture key user interactions and pipeline metrics:

Client-side (pendo.track):
- idea_submitted: fires on form submission with idea metadata
- analysis_completed: fires when 6-agent pipeline returns results
- analysis_failed: fires on unrecoverable analysis errors
- demo_mode_fallback: fires when API is unavailable/times out
- report_exported: fires on report download
- whatif_simulation_performed: debounced tracking of simulator usage
- example_idea_selected: fires when preset example is chosen

Server-side (Pendo Track API via HTTP POST):
- pipeline_stage_completed: fires per agent stage with duration
- memory_hit_found: fires when prior runs match current idea
- evaluation_reflection_triggered: fires on evidence quality loops
- analysis_run_persisted: fires when results are saved to memory
- scenario_studio_generated: fires when investor scenarios are built
- rate_limit_exceeded: fires when user hits 10/hr throttle

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
venture-mind-ai Ready Ready Preview, Comment Jun 10, 2026 4:42pm

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants