Evidence

s1096.py

Download source fileOpen in research workspace
from research import *
family="structural"
p=ROOT/'prep/manuscript_structural.json'
packet=json.loads(p.read_text());modules=packet if isinstance(packet,list) else packet['modules'];m=modules[0]
textbody=m.get('text',m.get('body',''))
for old,new in []:textbody=textbody.replace(old,new)
s=begin(1096,'Manuscript: '+m['title'],'Does this section accurately connect its complete source family to the shared explanation?',{'draft_sha256':hashlib.sha256(p.read_bytes()).hexdigest(),'module_index':0},['C1071','prep/manuscript_structural.json'])
sources=m.get('sources',m.get('source_sections',m.get('citations',[])));source_notes=[]
for x in sources:
 if isinstance(x,str):source_notes.append(x)
 else:source_notes.append(x.get('file','')+' '+(', '.join(x.get('sections',[])) if 'sections' in x else x.get('section','')))
steps=m.get('steps',m.get('C_steps',[x for x in m.get('citations',[]) if x.startswith('C')]))
if not steps and family=='round':steps=['C932–C952','C1058–C1068']
content='### '+m['title']+'\n\n'+textbody+'\n\n*Sources:* '+'; '.join(source_notes)+'.\n\n*Research record:* '+', '.join('C'+str(x) if isinstance(x,int) else str(x) for x in steps)+'.\n'
rel='deliverables/sections/25_structural_1.md'
a=artifact(rel,content)
checks={'nine_count_total':sum([200,20,200,20,40,10,30,20,10])==550,'missing_category':'male-donkey count' in textbody,'no_invented_young':'unnumbered young contribute no invented count' in textbody}
finish(s,{'section':a,'body_words':len(textbody.split()),'source_references':len(source_notes)},"The Esau section ties ordered accumulation to full-list recovery while keeping animal categories and chronological placement separate.",'Reassess the next explanatory section against its source roles and the sealed calculations.',checks)

Edition and provenance

s1096.py

SHA-256 55f6b8f92af82dc21c650aa2737bd0a3dc57993bc449c767a6ac78db701abe50

C480–C1634/Research_Cycles/C0932_C1131/evidence/s1096.py