Your discussion join is quietly multiplying launch votes
说明与用途
启用讨论数据不应在仪表板中使启动投票数量倍增。当启用 includeComments 和 includeReviews 时,下游 join 会使参与度指标膨胀。修复方法是保持报告分支独立于各自的目标粒度:启动指标保持在启动粒度,评论按启动聚合,评论按启动聚合。
问题
Turning on discussion data shouldn't multiply a launch's votes in the dashboard; enabling includeComments and includeReviews can inflate engagement metrics through downstream joins.
结果
Downstream joins that pair comments with reviews multiply launch-level metrics, inflating engagement counts. The fix is to keep reporting branches independent at their intended grain rather than flattening them into a single launch-grain report.
工作流
- Enable includeComments and includeReviews for the report due Friday
- Export a record per launch with discussion and reviews attached as arrays
- Run naive flatMap join pairing every comment with every review, producing duplicate rows carrying the full launch vote count
- Recognize that SUM(DISTINCT votesCount) doesn't fix the problem because different launches legitimately share a vote total
- Keep the branches independent until each has the intended reporting grain: launch metrics at launch grain, comments aggregated by launch, reviews aggregated by launch
- Validate the envelope, preserve opaque children, and retain request settings alongside the retrieved batch
证据
Source deduplication does not prevent a downstream join from multiplying launch-level metrics.
Every comment pairs with every review. Each resulting row carries the launch's entire vote count.
SUM(DISTINCT votesCount) doesn't repair this. Different launches can legitimately share a vote total. That expression deduplicates a measurement when you need to preserve an identity.
Keep the branches independent until each has the intended reporting grain: launch metrics, comments → replies → aggregate by launch, attached reviews → aggregate by launch.
Empty values are omitted, including empty arrays. Missing comments therefore isn't a reliable statement that nobody commented.
- 记录日期: 2026-11-01T21:13:59.535Z