Report formats
Every forge build writes two reports next to the geometry in
out/<product-id>/. Both are plain YAML, assembled only from the typed
capability report and the validation evidence — they cannot disagree with the
pipeline that produced them.
findings.yaml
Section titled “findings.yaml”The validation report: every check that ran, with evidence.
status: pass # worst finding winsscore: scores: {form: 1.0, manufacturing: 0.93, quality: 0.9} overall: 0.95 grade: A # critical FAIL forces F regardless of numbers status: passfindings: - check: form.wall_thickness status: pass level: form message: min cavity-to-outer distance 3.20 vs wall 3.20 - check: manufacturing.overhang status: warn level: manufacturing message: round cavity roof spans 21.6 mm — relies on bridgingNotes:
checknames bind against the validator registry; per-product assertions appear with a:—contract.must_have:<feature>,constraint:<expr>,modifier:<id>.- findings carry
measured/limit/unitwhere applicable — evidence, not just verdicts; - a
critical: trueFAIL at contract / topology / region / assembly level forces overall FAIL and grade F.
honesty_report.yaml
Section titled “honesty_report.yaml”The capability contract: what you asked for vs what was proven built.
requested_features: [asymmetric_side_hook, mounting_flange, hex_perforation]supported_features: [asymmetric_side_hook, mounting_flange, hex_perforation]built_features: [asymmetric_side_hook, mounting_flange, hex_perforation]missing_features: []unsupported_features: []forbidden_forms_checked: - {form: closed_ring, status: absent} - {form: symmetric_c_ring, status: absent}critical_failures: []engine_gaps: []Notes:
built ⊆ supportedis enforced at the schema level — an unsupported feature cannot serialize as built;- a feature enters
built_featuresonly after every check in itsverified_bylist PASSed; - forbidden forms report
absent/present/unchecked— an unchecked form is never assumed absent; engine_gapsis the engine admitting what it could not measure in this environment.
assembly_report.yaml
Section titled “assembly_report.yaml”Assemblies additionally write a top-level report with poses, joints, the BOM
and the assembly grade, plus assembled.step — a posed compound (placement
for the eyes; intersection happens only inside probes).