Brett Lawson
4db1ba7b2f
blend.feature_executive: carry attributes through PartitionFeature and RestoreFeature copies
...
Upstream's CopyFaces notifies SM_NO_COPY on each copied face, edge and vertex
(SmMerge::MakeFaceuse), so attributes reach the copies as their behaviours say.
The port's copies ran with an empty attribute store.
- topology::brep::p2::CopyNotifyState: notification state for a copy between
two B-reps, holding both B-reps' own attributes (source objects under tagged
copy_source_ref identities) and giving each B-rep its own back.
- topology::brep::p7::copy_faces_from: copy_faces with distinct source
identities (copy_faces delegates to it unchanged).
- SmFeatureExecutive: PartitionFeature and RestoreFeature copy with the
attributes. The patch path does not yet: its merges still differ from SMLib
(finding addendum).
- Shim, FFI and runner: optional SmLongAttribute inputs, plus per-id face and
edge counts of every B-rep in the record; 4 attribute cases (3 pass; the
extrusion case fails until the patch path carries).
- Unit test: copy and reference attributes reach the feature B-rep, temporary
ones do not.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MNXLXj2sJf943y2dDF36Vy
2026-10-31 04:34:25 +01:00
..
2026-10-29 21:25:31 +01:00
2026-10-31 04:34:25 +01:00
2026-10-26 23:28:10 +01:00
2026-10-20 17:27:04 +00:00
2026-10-23 20:35:17 +02:00
2026-10-30 10:55:22 +01:00
2026-10-20 17:27:04 +00:00
2026-10-18 11:00:12 +09:00
2026-10-24 23:40:47 +02:00
2026-10-24 22:54:38 +02:00
2026-10-26 20:27:47 -04:00
2026-10-30 00:37:08 +01:00
2026-10-30 10:20:50 -04:00
2026-10-25 14:57:53 +01:00
2026-10-25 14:57:53 +01:00
2026-10-25 15:01:50 +01:00
2026-10-25 13:21:23 +01:00
2026-10-25 15:01:50 +01:00
2026-10-25 12:16:14 +01:00
2026-10-24 19:39:29 +02:00
2026-10-30 11:47:12 -04:00
2026-10-30 13:58:43 -04:00
2026-10-27 15:20:08 +01:00
2026-10-24 15:17:59 +02:00
2026-10-19 13:31:29 -04:00
2026-10-27 05:02:56 +01:00
2026-10-19 08:13:20 -04:00
2026-10-19 08:13:20 -04:00
2026-10-21 21:36:36 -04:00
2026-10-19 21:52:00 +02:00
2026-10-19 02:41:31 -07:00
2026-10-27 15:20:08 +01:00
2026-10-19 02:41:31 -07:00
2026-10-23 16:16:17 +02:00
2026-10-23 15:42:46 +02:00
2026-10-30 15:17:57 -04:00
2026-10-26 18:45:59 +01:00
2026-10-26 09:56:56 +01:00
2026-10-30 10:55:22 +01:00
2026-10-19 20:15:20 -04:00
2026-10-23 01:09:29 -07:00
2026-10-20 17:08:56 -07:00
2026-10-19 14:37:39 +02:00
2026-10-21 18:32:07 -07:00
2026-10-16 17:46:32 -04:00
2026-10-21 18:32:07 -07:00
2026-10-27 07:41:25 +01:00
2026-10-21 18:32:07 -07:00
2026-10-29 23:05:15 -04:00
2026-10-30 18:24:34 -04:00
2026-10-30 11:35:36 +01:00
2026-10-24 09:48:54 +02:00
2026-10-19 18:48:30 -06:00
2026-10-27 21:29:37 +02:00
2026-10-19 16:53:33 +02:00
2026-10-22 01:00:58 -07:00
2026-10-29 05:20:56 -04:00
2026-10-29 05:20:56 -04:00
2026-10-21 12:06:19 -07:00
2026-10-26 14:11:22 -04:00
2026-10-17 06:43:03 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 06:43:03 +09:00
2026-10-30 13:54:24 +01:00
2026-10-30 13:54:24 +01:00
2026-10-17 06:43:03 +09:00
2026-10-21 10:47:42 -07:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-26 01:05:41 +01:00
2026-10-27 08:37:39 +01:00
2026-10-17 06:43:03 +09:00
2026-10-26 01:10:58 +01:00
2026-10-21 10:47:42 -07:00
2026-10-21 10:47:42 -07:00
2026-10-29 01:00:03 +01:00
2026-10-17 20:33:34 +02:00
2026-10-30 13:54:24 +01:00
2026-10-18 11:00:12 +09:00
2026-10-18 11:00:12 +09:00
2026-10-17 20:33:34 +02:00
2026-10-30 13:54:24 +01:00
2026-10-17 06:43:03 +09:00
2026-10-30 13:54:24 +01:00
2026-10-27 15:07:19 +01:00
2026-10-12 17:14:44 -04:00
2026-10-12 15:56:53 -04:00
2026-10-17 04:51:37 +02:00
2026-10-12 16:07:37 -04:00
2026-10-12 15:59:25 -04:00
2026-10-12 15:59:50 -04:00
2026-10-30 22:44:47 +01:00
2026-10-12 15:32:31 -04:00
2026-10-19 08:29:19 +10:00
2026-10-12 16:32:37 -04:00
2026-10-12 16:13:30 -04:00
2026-10-12 16:59:48 -04:00
2026-10-23 15:50:22 +02:00
2026-10-23 15:50:22 +02:00
2026-10-26 20:27:47 -04:00
2026-10-26 23:51:20 +03:00
2026-10-12 16:20:44 -04:00
2026-10-30 00:58:11 +01:00
2026-10-20 21:24:26 -07:00
2026-10-12 15:53:54 -04:00
2026-10-17 06:43:03 +09:00
2026-10-17 06:43:03 +09:00
2026-10-12 16:04:13 -04:00
2026-10-17 06:43:03 +09:00
2026-10-12 16:39:34 -04:00
2026-10-30 13:52:04 +01:00
2026-10-12 16:51:52 -04:00
2026-10-12 16:52:11 -04:00
2026-10-25 18:21:06 +01:00
2026-10-12 15:29:32 -04:00
2026-10-12 15:58:55 -04:00
2026-10-17 20:33:34 +02:00
2026-10-27 22:25:19 +01:00
2026-10-27 13:44:56 +01:00
2026-10-16 04:40:50 -04:00
2026-10-30 11:11:01 -04:00
2026-10-16 21:30:00 +02:00
2026-10-30 07:29:01 +01:00
2026-10-30 11:18:10 -04:00
2026-10-30 13:31:23 +01:00
2026-10-30 03:06:33 -04:00
2026-10-27 08:11:26 +01:00
2026-10-20 23:34:06 +00:00
2026-10-24 15:16:51 +02:00
2026-10-26 20:27:47 -04:00
2026-10-23 20:54:06 +08:00
2026-10-23 20:54:06 +08:00
2026-10-25 08:29:59 +01:00
2026-10-25 08:29:59 +01:00
2026-10-30 15:42:37 -04:00
2026-10-16 22:30:54 +10:00
2026-10-28 14:16:09 +01:00
2026-10-24 18:43:33 +02:00
2026-10-27 21:25:52 +02:00
2026-10-21 17:10:44 -07:00
2026-10-21 17:42:25 -07:00
2026-10-17 06:43:03 +09:00
2026-10-16 08:17:41 +02:00
2026-10-18 01:03:20 +02:00
2026-10-30 00:13:09 -04:00
2026-10-17 20:33:34 +02:00
2026-10-17 20:33:34 +02:00
2026-10-27 00:52:11 +01:00
2026-10-17 20:33:34 +02:00
2026-10-17 20:33:34 +02:00
2026-10-27 15:16:15 +01:00
2026-10-30 03:40:55 -04:00
2026-10-29 02:42:43 +01:00
2026-10-19 15:41:26 -04:00
2026-10-19 16:02:26 +02:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-29 17:16:52 -04:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 14:58:27 +09:00
2026-10-25 16:25:56 +01:00
2026-10-12 15:46:03 -04:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-17 14:58:27 +09:00
2026-10-21 12:10:34 -07:00
2026-10-17 06:43:03 +09:00
2026-10-18 11:00:12 +09:00
2026-10-29 06:22:32 +01:00
2026-10-17 06:43:03 +09:00
2026-10-24 18:36:31 +02:00
2026-10-17 06:43:03 +09:00
2026-10-17 06:43:03 +09:00
2026-10-17 14:58:27 +09:00
2026-10-12 19:00:34 -04:00
2026-10-29 10:42:45 +01:00
2026-10-30 13:51:43 -04:00
2026-10-23 22:27:44 -07:00
2026-10-29 11:41:50 -04:00
2026-10-29 18:10:52 -04:00
2026-10-29 18:27:15 -04:00
2026-10-30 02:27:32 -04:00
2026-10-30 00:03:50 -04:00
2026-10-26 20:27:47 -04:00
2026-10-19 16:02:23 +01:00
2026-10-27 22:36:36 +01:00
2026-10-29 01:05:27 +01:00
2026-10-20 18:25:56 -07:00
2026-10-17 22:41:48 -04:00
2026-10-18 15:23:17 -04:00
2026-10-30 09:00:54 -04:00
2026-10-27 11:54:25 -04:00
2026-10-26 23:17:38 -04:00
2026-10-27 15:16:15 +01:00
2026-10-29 17:38:51 -04:00
2026-10-29 11:41:50 -04:00
2026-10-27 13:37:02 +01:00
2026-10-18 11:00:12 +09:00
2026-10-22 09:11:32 +02:00
2026-10-30 02:27:27 -04:00
2026-10-30 13:54:24 +01:00
2026-10-30 07:29:01 +01:00
2026-10-28 07:44:44 +01:00
2026-10-30 11:36:02 +01:00
2026-10-24 14:58:51 +02:00
2026-10-17 06:43:03 +09:00
2026-10-27 07:21:33 +01:00
2026-10-18 00:13:00 -06:00
2026-10-17 06:43:03 +09:00
2026-10-27 22:25:19 +01:00
2026-10-29 18:56:42 -04:00
2026-10-17 20:33:34 +02:00
2026-10-17 20:33:34 +02:00
2026-10-18 11:00:12 +09:00
2026-10-27 11:08:36 +01:00
2026-10-30 07:48:42 -04:00
2026-10-27 05:13:01 +01:00
2026-10-17 20:33:34 +02:00
2026-10-25 15:42:21 -04:00
2026-10-17 06:43:03 +09:00
2026-10-18 11:00:12 +09:00
2026-10-18 11:00:12 +09:00
2026-10-27 20:33:53 +01:00
2026-10-29 01:23:05 +01:00
2026-10-29 05:20:56 -04:00
2026-10-17 06:43:03 +09:00
2026-10-30 14:48:32 +01:00
2026-10-27 11:34:21 +01:00
2026-10-21 21:41:48 +02:00
2026-10-15 15:40:03 +02:00
2026-10-28 07:44:44 +01:00
2026-10-30 14:48:32 +01:00
2026-10-19 17:08:36 +02:00
2026-10-26 20:09:20 +01:00
2026-10-28 07:44:44 +01:00
2026-10-21 12:10:34 -07:00
2026-10-21 12:10:34 -07:00
2026-10-29 17:48:29 -04:00
2026-10-29 22:31:27 -07:00
2026-10-17 14:58:27 +09:00
2026-10-27 08:35:49 +01:00
2026-10-17 06:43:03 +09:00
2026-10-22 17:18:03 -07:00
2026-10-27 11:06:56 +01:00
2026-10-27 08:02:46 +01:00
2026-10-17 14:58:27 +09:00
2026-10-30 02:27:27 -04:00
2026-10-26 00:59:36 +01:00
2026-10-17 06:43:03 +09:00
2026-10-25 15:18:14 +01:00
2026-10-26 14:55:17 +01:00
2026-10-18 01:03:20 +02:00
2026-10-26 02:51:22 +01:00
2026-10-17 06:43:03 +09:00
2026-10-21 12:10:34 -07:00
2026-10-21 12:10:34 -07:00
2026-10-29 01:23:05 +01:00
2026-10-28 06:13:20 +01:00
2026-10-25 22:29:34 +01:00
2026-10-27 13:44:56 +01:00
2026-10-18 11:00:12 +09:00
2026-10-18 11:00:12 +09:00
2026-10-20 16:43:50 +02:00
2026-10-18 11:00:12 +09:00
2026-10-30 13:06:45 +01:00
2026-10-26 20:27:47 -04:00
2026-10-17 06:43:03 +09:00
2026-10-27 22:55:04 +01:00
2026-10-26 12:30:50 +01:00
2026-10-29 18:10:52 -04:00
2026-10-29 17:35:26 -04:00
2026-10-30 07:25:45 +01:00
2026-10-15 19:59:44 +02:00
2026-10-25 20:08:25 -04:00
2026-10-29 17:52:17 -04:00
2026-10-13 19:33:14 -04:00
2026-10-30 07:29:01 +01:00
2026-10-30 00:58:11 +01:00
2026-10-26 18:20:44 +01:00
2026-10-30 09:09:05 -04:00
2026-10-30 09:16:56 -04:00
2026-10-22 00:23:08 -07:00
2026-10-19 19:59:37 +10:00
2026-10-31 03:37:46 +01:00
2026-10-30 06:41:41 +01:00
2026-10-27 10:05:11 +01:00
2026-10-18 09:22:27 +10:00
2026-10-27 13:37:02 +01:00
2026-10-29 23:05:03 -04:00
2026-10-25 19:46:20 +01:00
2026-10-24 14:26:23 +02:00
2026-10-29 06:23:23 +01:00
2026-10-24 14:58:51 +02:00
2026-10-29 06:22:32 +01:00
2026-10-22 23:13:21 +02:00
2026-10-30 11:36:02 +01:00
2026-10-30 08:22:45 -04:00
2026-10-27 11:54:25 -04:00
2026-10-30 07:48:42 -04:00
2026-10-29 06:22:32 +01:00
2026-10-29 06:22:32 +01:00
2026-10-16 04:10:03 +02:00
2026-10-26 14:11:22 -04:00
2026-10-25 22:18:56 +01:00
2026-10-29 06:22:32 +01:00
2026-10-17 04:51:37 +02:00
2026-10-15 16:55:21 +02:00
2026-10-23 13:00:39 -07:00
2026-10-30 07:48:42 -04:00
2026-10-29 06:22:32 +01:00
2026-10-29 06:31:16 +01:00
2026-10-15 16:55:21 +02:00