Core concept · measured evidence
Measurement evidence
Postdom preserves platform values, observation time, availability state, and evidence limits without converting missing data into zero.
Evidence distinction
Value semantics
Measured nothing
A platform supplied numeric evidence whose value is zero. Keep the zero.
No supported value
No evidence-backed numeric value was returned. Preserve null and inspect availability.
Modeled evidence
Availability states
Every modeled field has one availability state. A reason is guaranteed only for never and unverified.
availableThe platform is expected to expose the field. A null may still have no reason.
delayed(2-3d)The platform may expose the field after the stated delay.
estimableEvidence could support a derived value. Postdom does not promise that computation exists.
neverThe platform does not expose the field. Null includes an explicit reason.
unverifiedAvailability lacks verification. Null includes an explicit reason.
Labeled example
Example snapshot
This excerpt shows a real zero beside an unverified null. The post ID, timestamp, and values are synthetic.
get_performance({
post_id: "post_example_08"
})
// Example response excerpt
{
"post_id": "post_example_08",
"performance": [{
"platform": "tiktok",
"captured_at": "2026-09-01T10:00:00Z",
"views": 0,
"saves": null,
"availability": {
"views": {
"state": "available",
"reason": null
},
"saves": {
"state": "unverified",
"reason": "tiktok.saves is unverified; no evidence-backed value is available yet."
}
}
}]
}Agent response
Measurement handoff
availablePreserve evidence
Return the supplied number and observation time. Preserve a null when no value arrives.
delayed(2-3d)Retry later
Keep null distinct from zero, then retry after the evidence window.
estimableAvoid invention
Do not calculate a value unless a supported computation and required evidence exist.
never · unverifiedExplain absence
Return null with the supplied availability state and reason.
Publish eligibility
A post that failed before any measurable destination publish is ineligible for performance. Return publish_failed instead of inventing a snapshot.