cert-anc-module-specs

Notes

  • 2026-10-01 (entirely-api 554355c): the ANC cert module now prints the plans’ anchor specs and per-anchor cards. Before: cert_data_service.build_division_data gated the WA cards on str(qty).isdigit() (false for as-built floats like 2.0) and _parse_specs_from_notes dropped the keys permit_parser writes (rod_length, plate_height_aff, depth_bg, wall_type, torque_spec), so every anchor cert showed template defaults (Rod Length 8–12 ft, 16×16 / 12×12 plates, 0.75 in rod) and no cards. Now: _int_qty, _NOTES_PASSTHROUGH_KEYS, _registry_sow_field_specs (registry sow_field slugs as fallbacks), _anchor_specs / _anchor_spec_rows / _anchor_cards build the full wall_specs / chan_specs rows (plans first, defaults only where the project has none, unit column dropped when the value carries units) and WA cards (wall anchors parsed under channels still get cards); format_quantity_display prints integral floats whole (“All 2 wall anchor(s)”). Tests tests/test_cert_anchor_specs.py. First verified on MAN-9238 cert v4. The same isdigit pattern still exists in the BRC and SUP branches (brace / column cards) — not changed, flagged for review.