From 4f7e8f3b7e2aef086f1c07839797cde374455013 Mon Sep 17 00:00:00 2001 From: Shahovalov MIkhail Date: Wed, 27 May 2026 10:11:27 +0300 Subject: [PATCH] =?UTF-8?q?docs:=20handoff-=D0=BF=D1=80=D0=BE=D0=BC=D1=82?= =?UTF-8?q?=20=E2=80=94=20hole=20=D0=B3=D0=BE=D1=82=D0=BE=D0=B2=20(API7),?= =?UTF-8?q?=20=D1=81=D0=BB=D0=B5=D0=B4=D1=83=D1=8E=D1=89=D0=B8=D0=B9=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B8=D0=BE=D1=80=D0=B8=D1=82=D0=B5=D1=82=20draft?= =?UTF-8?q?=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20API7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/superpowers/NEXT-SESSION.md | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/docs/superpowers/NEXT-SESSION.md b/docs/superpowers/NEXT-SESSION.md index 0f50284..049983b 100644 --- a/docs/superpowers/NEXT-SESSION.md +++ b/docs/superpowers/NEXT-SESSION.md @@ -9,26 +9,33 @@ КОМПАС-3D должен быть запущен (нужен для интеграционных тестов). ## Текущее состояние (main, синхронизирован с origin) -- 62 MCP-инструмента, 101 тест зелёных (60 unit + 41 integration). +- 63 MCP-инструмента, 104 теста зелёных (60 unit + 44 integration). - Пакет A «богаче эскизы» — готов (дуга×2, эллипс, ломаная, многоугольник, сплайн, точка). - Пакет B «формообразующие» — основная часть готова: shell, rib, sweep, loft. - Пакет C «массивы и зеркало» — ГОТОВ: `linear_pattern`, `circular_pattern`, `mirror_operation`, `mirror_body`. Источник копирования — id операций из реестра `_features` (хелпер `RequireFeature`); оси — `CoordinateAxis`/`CoordinateAxes` (`Core/Modeling`). +- `hole` — отверстие ГОТОВ (через **API7**, в API5 определения нет): `HoleService` + (`Core/Modeling/HoleService.cs`), простое цилиндрическое, сквозное/глухое. Прецедент: первая + формообразующая на API7 (раньше API7 был только у `move_face`). - Пакет E начат: смещённая плоскость (`sketch_create_on_offset_plane`). - `PartModeler` разбит на partial: `PartModeler.cs` (ядро + helpers `SelectFaceByIndex`/ `SelectEdgeByIndex` + `RequireFeature` + `NewParam`), `.Sketch.cs` (эскизы/примитивы), `.Features.cs` (операции, включая массивы/зеркало). - Чистые маппинги/валидация — в `SketchGeometry` (Core/Modeling); тип точки — `SketchPoint` (Host). - Прочитай память: `kompas-formative-features-api5` (definition в API5), - `kompas-pattern-mirror-api5` (пакет C: count вкл. оригинал, circular свойствами, ChooseBodies нерабочий). + `kompas-pattern-mirror-api5` (пакет C), `kompas-hole-api7` (hole: только API7, направление по объёму). ## Задача этой сессии (по приоритету) -1. `hole` — отверстие (исследовать `ksHoleDefinition` / `o3d_*hole*` — есть ли definition в API5). -2. `draft` (уклон) — ТОЛЬКО если найдёшь способ через API7 (в API5 `ksDraftDefinition` НЕТ, - только `o3d_DraftFromEdges=644` без интерфейса — см. память). -3. Расширения пакета C при необходимости: 2D-сетка линейного массива, выбор оси по ребру, - массив вдоль кривой (`o3d_curveCopy=37`). +1. `draft` (уклон граней) — исследовать **API7** (в API5 `ksDraftDefinition` НЕТ; в API7 есть + `IModelContainer.DraftsFromEdges` / `Inclines` — проверить, как у hole). Если выйдет — реализовать + по тому же паттерну, что `HoleService` (отдельный сервис на API7). +2. Параметрика (пакет D): чтение/запись переменных модели, связи размеров (`list_variables` уже есть — + добавить set/создание переменных через `ksVariable`/API7). +3. Расширения hole: зенковка/цековка/коническое (`ksHTCounterbore/Countersinking/Conic` + + параметрические подынтерфейсы), резьба (`ShowThread`/`IThread`). +4. Расширения пакета C: 2D-сетка линейного массива, выбор оси по ребру, массив вдоль кривой + (`o3d_curveCopy=37`). Бери по одной операции за инкремент, доводи до зелёного и merge+push, потом следующую. Не пытайся сделать весь пакет одним заходом — инкремент надёжнее.