deduction) is a one-shot AI analysis surface: you write a scenario prompt (hypothetical or current), optionally scope it to a region, and the analyst returns a structured deduction of likely timeline and impact, framed by whichever analytical framework is active.
What the panel shows
A form with three inputs and a result area:- Query textarea — free-form scenario prompt.
- Geo input — optional region / country scope applied to the analysis.
- Framework selector — the panel’s
FrameworkSelectorbindspanelId: 'deduction'so the user can switch between active analytical frameworks for this run. - Submit button — disabled while a call is in flight.
- Result container — renders the response as Markdown → sanitised HTML.
COOLDOWN_MS = 5_000 in src/components/DeductionPanel.ts) prevents accidental back-to-back submissions.
The panel can consume the latest-news feed via an optional getLatestNews hook passed by the host at mount time — the news context is folded into the request so the deduction reflects today’s state of the world.
Panel id is deduction; canonical component is src/components/DeductionPanel.ts. Title “Deduct Situation” per src/config/panels.ts:111.
How you reach it
- Cmd+K: type deduce, situation, or what if.
- Availability by variant: registered in the full/geopolitical variant only, and disabled by default (
enabled: false, premium: 'locked'atsrc/config/panels.ts:111). PRO users must opt into it. Not present in the tech, finance, commodity, or happy variants.
Data sources
The panel calls the Intelligence service via the generatedIntelligenceServiceClient (getRpcBaseUrl() + /api/intelligence/v1/*). Under the hood it composes news context via buildNewsContext(latestNews) and submits the prompt with the active framework metadata from getActiveFrameworkForPanel('deduction').
Refresh cadence
Each submission is a fresh LLM call — no caching. A 5-second cooldown applies between submissions.Tier & gating
PRO (hard-locked) and opt-in.enabled: false, premium: 'locked' in src/config/panels.ts:111. isPanelEntitled unlocks it when either a valid WORLDMONITOR_API_KEY is present or isPro is true (deduction is in the apiKeyPanels allowlist at src/config/panels.ts:973). Per the render path, hasPremiumAccess() is also checked before submit.
API reference
- Intelligence service — generated client used by the panel.
- Related MCP tool:
analyze_situationexposes equivalent functionality over the MCP transport for agent-based callers.
