kerfmaster pin list · The interface — recorded intent (build later)
recordStates what the code does today. Auditable against the code — this is the only type that can go stale.
Content last changed 2026-09-01 — computed from the item itself, not typed.
Built 2026-09-01 (Aristide 'c' — brick C of the approved execution plan). Jordan's Add-Toolpath walkthrough (2026-08-28) names tab size among the typed per-feature values; MetaCam's standard settings run with 'Suppress wirejoints' checked — so 0 is a first-class value: no tab.
Engine: emit.write_gcode_macrob overrides= takes {"near", "tab_width": w} per feature (nearest-centroid binding like start/lead_length/sequence). The typed width replaces the table-sized width for THAT feature only; w=0 leaves no tab and lands in stats["slug_omitted"] (never silent); negative refuses in the engine's own words. The per-contour record carries tab ran+source (operator vs table:/rule) and overrides.tab_width beside it; the slug report's band column says 'operator' on a forced width. The width moves, the gates don't: an untabbed over-drop slug that later rapids cross is still the same red finding on both surfaces (rules.check_plan and the posted-NC audit), warn never block.
Round trip: tooling_doc.CONSUMABLE += tab_width (same commit as the engine input, per the model rule); overrides_from rebuilds it; the app's one shaping _feats_from passes it through, so Part review, the live drag judge (dragcheck) and every post read the override identically — parity proven live (dragcheck with the recorded set = the review's findings byte-identical). The part-by-part nested post replicates tab_width per placement exactly like lead_length; the macro nest path reads it through overrides_from untouched.
UI: a 'tab size' unit-input slot in the Part review contour panel (placeholder = the current ran width, '0 = no tab' stated), set re-plans through the same override channel, clear restores the ruled value; the honest not-built note drops tab size and keeps lead angle/radius, lead-out, condition, comp, direction.
Proven: test_tooling_doc grown 21→30 controls (typed width posts + source operator + others untouched; 0 suppresses, recorded; negative refuses; round trip; unconsumed fixture moved to lead_angle) — all suites green; app/verify_tab.js live over the public URL (11 checks, incl. dragcheck parity with the override active and nav209's cut plan + O33291 re-issued after the verify's re-plans, number kept).
Honest limits: the slot forces the WIDTH; where the tab sits stays the start-point decision (the drag-handle / start override moves it); part-outer tabs only appear when the operator types one — automatic part tabs still await Jordan's go (PINLIST 3a).