from research import *
s=begin(716,'Map premises to family consequences','Which compact premises account for each new whole-family result?',{'families':['calendar rail','five-node refinement','native core','phase field','micro/macro','anchored convergence','fixed mirror']},['C632–C715'])
rows=[['Calendar rail','T,h=7; two13 flanks; half-calendar divisibility','Nine cross-spans;13/14/13 minimum conditional on14/26 offsets','C632–C643'],['Creation–Terah','Three supplied centers/scales; five roles','One6|1|6|1 template','C648–C650'],['Native core','720 carrier;30 flank','690/700/750 table and1470 cell','C665–C670'],['Phase fields','Exact suffix rule; widths34/40;80 shift; source70 body','All endpoint pairs and25|35|35|25','C672–C682'],['Micro/macro','34.5 seed; calendar lengths;9660|2940 partition','12600/12740/13440 with retained roles and units','C685–C690,C713–C715'],['4346 convergence','4114/E/1446 and4304/P/1406 routes','One head from balanced190 difference','C692–C695'],['Fixed mirror','Literal12-node template; chart;5842 total','Six pairs; conditional center−2921','C704–C709']]
a=artifact('deliverables/Family_Claim_Dependencies.json',json.dumps({'columns':['family','premises','consequences','evidence'],'rows':rows},indent=2)+'\n')
finish(s,{'artifact':a,'family_count':len(rows)},'Seven compact premise packets now explain the principal new families. The dependency map prevents generated coordinates, repeated partitions and overlap counts from being counted as independent evidence. It also identifies which placements still need historical explanation.','Integrate the new anchored results and review corrections into the readable draft.',{'coverage':len(rows)==7,'unique_families':len({r[0] for r in rows})==7})
