1. Prometheus Official Documentation, "Querying > Basics", @ modifier section. This section outlines the primary uses of the @ modifier. It can be applied to an instant vector selector (metric @ timestamp) or to a full expression. For aggregations, the standard is to apply it to the entire expression to set the evaluation time for the whole operation, as shown in option B. The syntax in option D is non-canonical for aggregations.
Source: https://prometheus.io/docs/prometheus/latest/querying/basics/#modifier
2. Prometheus Official Documentation, "Querying > Operators", "Aggregation operators" section. The syntax for aggregation operators is defined as aggr-op([parameter,] ). This implies that modifiers which affect the evaluation time of the entire operation, like @, should be applied to the complete aggr-op(...) construct, not to the argument within it.
Source: https://prometheus.io/docs/prometheus/latest/querying/operators/#aggregation-operators