Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feat/crease-entity"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
For #26 and #27. Groundwork for the #26/#28 material-crease work, split into two PRs; this is PR1, the plumbing.
Makes creases and flaps first-class entities in
Fold_state: anedgecarries paper endpoints, its two bordering face ids, an assignment, a stablecrease_id, and provenance. Edges accumulate across folds and split when a later fold crosses them, preservingcrease_id— the #26 identity invariant.fold_emitnow serializes creases straight fromstate.edges, retiring the emit-time geometric reconstruction (therecord_of/on_segmentchord matching). The #27 precrease bug — mark a crease, fold on it, getU/0° instead ofV/180° — is now fixed on the entity via an in-placeU→M/Vupgrade; the old tactical two-chords-at-emit hack and the now-deadcrease_recordside-list are removed, so edges are the single source of truth.Behavior-preserving. A 20-snapshot golden net, generated on the old emit path, survives the rewrite byte-for-byte — no emitted FOLD changes. Rebased onto the step/macro slice (#35);
fold_state.mlwas untouched by it, so the entity work rebased clean and the goldens were regenerated to characterize #35 output.Out of scope, deferred to PR2: material crease reference semantics and the
#(.a .b .c)flap operand — the user-facing half of #28. This PR is only the entity that PR2 builds on; no language surface changes here. Design and plan live indocs/superpowers/{specs,plans}/2026-07-03-*.