Real-data validation of the new finfacts.derive F&F/TTM pack against this feed (93,813 records, 6,500 reporters) found: every entity carries exactly ONE quarterly duration period per concept (verified: all 4,047 entities with quarterly us-gaap:NetIncomeLoss have exactly 1 distinct quarter; 0 have ≥4). Consequence: revenue_ttm, net_income_ttm, capex_ttm, opex_ttm, earnings_to_float_mcap and capex_to_float_mcap materialize for 0 of 5,236 float-bearing entities — the TTM contiguity guard (350–380d over 4 quarters) correctly refuses single-quarter input.
Instant-fact derives work fine on the current pack (4,182 book_to_float_mcap ratios, median 0.538). Ask: extend the core-pack reduction to keep the trailing ≥4 (ideally 8) quarterly duration observations per concept per entity, so the TTM family and the owner's earnings/capex-to-float requirements light up.
Validation script: session scratchpad fnf_feed_validation.py (sessie 02016dd5).
Real-data validation of the new
finfacts.deriveF&F/TTM pack against this feed (93,813 records, 6,500 reporters) found: every entity carries exactly ONE quarterly duration period per concept (verified: all 4,047 entities with quarterlyus-gaap:NetIncomeLosshave exactly 1 distinct quarter; 0 have ≥4). Consequence:revenue_ttm,net_income_ttm,capex_ttm,opex_ttm,earnings_to_float_mcapandcapex_to_float_mcapmaterialize for 0 of 5,236 float-bearing entities — the TTM contiguity guard (350–380d over 4 quarters) correctly refuses single-quarter input.Instant-fact derives work fine on the current pack (4,182
book_to_float_mcapratios, median 0.538). Ask: extend the core-pack reduction to keep the trailing ≥4 (ideally 8) quarterly duration observations per concept per entity, so the TTM family and the owner's earnings/capex-to-float requirements light up.Validation script: session scratchpad
fnf_feed_validation.py(sessie 02016dd5).