# Complete constructed observation record

Source: ledger.csv and observations.json. Fictional posts A and B; complete teaching ledger through 3 October 2026. Not a LinkedIn export or real account. Unit: impression events.

Question 1: What activity happened during September? Event dates from 1 September inclusive to 1 October exclusive. Rows r2, r4, r3: 150 + 100 + 250 = 500. Post A contributes 400 and B contributes 100.

Question 2: What are the lifetime counts for posts created in September? Creation date selects only B. Observation date 3 October; rows r4 and r5: 100 + 700 = 800. Older A rows are not selected. All five ledger rows sum to 1250; that is also not September activity.

Aggregation: 3, 15 and 18 September have increments 150, 100 and 250. Cumulative checkpoints are 150, 250, 500. Last value minus the starting zero gives 500. Summing checkpoints to 900 counts events again.

Availability: observed-example is an observed zero; unavailable-example is unavailable; uncollected-example was not collected. The latter values remain JSON null, not numeric zero. These fictional states make no claim about a real platform field.

Decision: label creation selection, event window, observation date and aggregation separately. Do not infer an account failure from 500 versus 800. Unknown: real users, actual account state and private data. Failure case: invalid-duplicate-ledger.csv repeats r4 and must be rejected.
