Internal research interface
Dataset health and research management. This build has no authentication by design — the README documents how auth could be added if the tool ever leaves the internal network.
50
Franchises
23
Research sources
109
Evidence metrics
14
Product categories
7
Catalysts
2026-07-10
Research as-of
76/109
Modeled metrics
23
Low-confidence franchises
Freshness for undated sources falls back to the access date.
Forecast intervals for these franchises widen automatically; treat their criterion detail as directional.
76 of 109 evidence metrics are internal model outputs (including “not publicly reported” placeholders). Every one is flagged with the Modeled badge wherever it appears.
Uploaded files are validated against the full Zod schema and never replace verified data automatically.
Validation runs at module load — invalid seed data crashes the build rather than rendering unverified numbers. The unit-test suite re-verifies every check below.
| Check | Result |
|---|---|
| Franchise records parsed against the strict Zod schema | 50/50 |
| Overall scores reproduced by the weighted formula (±0.1) | 50/50 |
| Rank order consistent with actionability scores | Pass |
| Forecast bands contain their base cases (4 horizons × 50) | Pass |
| Source registry entries validated | 23/23 |
| Product categories validated | 14/14 |
| Catalyst registry validated | 7/7 |
overallScore = ( brandRecognition * 0.22 + momentum * 0.18 + fandomEngagement * 0.15 + visualSuitability * 0.15 + licensingFeasibility * 0.12 + demographicFit * 0.08 + priceElasticity * 0.05 + whitespace * 0.05 ) * 10
rawDemandScore = ( brandRecognition * 0.28 + momentum * 0.22 + fandomEngagement * 0.20 + visualSuitability * 0.15 + demographicFit * 0.10 + priceElasticity * 0.05 ) * 10 // licensing feasibility and whitespace excluded (modeled view)
confidenceScore = officialSalesEvidence*0.25 + sourceRecency*0.20 + sourceDiversity*0.15 + engagementEvidence*0.15 + merchEvidence*0.15 + licensingEvidence*0.10
projectedOpportunity = currentOpportunity + releaseCatalystAdjustment + mediaCatalystAdjustment + engagementTrendAdjustment + merchWhitespaceAdjustment - licensingDelayAdjustment - saturationAdjustment - stalenessAdjustment