Release digest
Added
- REPORT-PILLARS-HANDOFF (Report Evidence Continuity) —
/api/reports/{company}now carries the additivecorporate_pillars.v1read model throughstats.corporate_pillars, so the report route can reuse the same employee, market, and public evidence context as Overview. - REPORT-PILLARS-SURFACE (Narrative Entry Context) —
/app/reportnow renders a compact three-pillar report handoff before the executive verdict, keeping coverage, freshness, and confidence visible without changing the canonical Trust Score. - REPORT-PILLARS-AI-PROMPT (Narrative Evidence Lanes) — AI report
generation now receives a formatted
CORPORATE EVIDENCE LANESprompt block derived fromcorporate_pillars.v1, so newly generated narratives can explain employee, market, and public evidence without creating a second score. - REPORT-NARRATIVE-REFRESH (Manual Narrative Regeneration) —
/api/reports/{company}?refresh=truenow lets the report workspace force a fresh AI narrative when source data exists, so analysts can regenerate the report read with the latest evidence-lane prompt context. - CRYPTO-SEARCH-MATERIALIZATION (Search Result Project Open) —
/api/crypto/project/{slug}now materializes a search-discovered project when the cached snapshot is missing, allowing newly selected CoinGecko-backed assets such as duplicate ticker variants to open instead of falling into a false not-found state.
Fixed
- SOURCE-DIVERSITY-COUNTING (Real Source Coverage) — Corporate source diversity now counts only active public source feeds instead of treating any review corpus as implicit Kununu coverage.
- REPORT-PILLARS-COPY (Readable Evidence Details) — Report handoff metric cards now show compact evidence details and replace internal vacancy-timestamp wording with user-facing hiring-market freshness language.
- REPORT-REFRESH-ACTION (User-Controlled Report Update) —
/app/reportnow routes theRefresh AI narrativeaction through the report endpoint instead of the admin analysis endpoint, keeping regeneration scoped to the selected report company. - CRYPTO-LOOKUP-ERROR-STATE (Readable Project Failures) —
/app/cryptonow shows API lookup errors before the empty-project fallback and offers a scoped retry action, so transient upstream failures are not misreported as unsupported projects. - REPORT-ACTIONS-ALIGNMENT (Hero Action Rhythm) —
/app/reportaction buttons now align with the report title/content column on desktop while preserving full-width mobile controls. - LEGACY-CORPORATE-SOURCE-COVERAGE (Aggregate Review Corpus) — Corporate scoring and Overview fallback logic now preserve legacy review-only datasets as one visible source when explicit source counters are absent, while public pillar confidence still depends on explicit source feeds.
Internal
- Added regression coverage for the report payload handoff, report viewer source contract, real-source counting behavior, and legacy aggregate review corpus coverage.
- Added regression coverage for manual report narrative refresh requests and the Report Viewer source contract.
- Added regression coverage for crypto search-discovered project materialization, crypto error-state ordering, and report action alignment.
- Added regression coverage to ensure AI report generation carries
corporate_pillars.v1into structured report prompt input. - Verified targeted report/corporate tests, dashboard lint, and dashboard production build locally.
- Updated the corporate scoring architecture contract to document that
corporate_pillars.v1is available through both company stats and report stats, including AI report prompt context. No public knowledge-base change is required because this remains an internal dashboard/report workspace surface.
