2026-07 HANDS-ON · BEAM PENETRATION

RC 穿梁套管自動檢核

掃描視圖內穿梁套管 → 幾何萃取 + 套管分類 → 按 RC 法規判定(H/3、禁開區、相鄰淨距)。鈺傑(SEven777-a)在 fork 分支開發 23 commits,PR #68 收編修正合併進 main(2026-07-02);v2 完整線於 feature/seven777-beam-penetration-v2 續行。啟銘(ChimingLu)熱重載 opt-in 線同步更新。

+2
MCP 工具
掃描 / 幾何萃取
23
commits 收編
SEven777-a 作者圖譜
R24+R26
雙 build
0 error
TWO WAVES

兩波推進:fork 開發 → 收編修正

同一條能力線,分兩段完成;收編採手動修正合併,確保 main 完整性。

WAVE 1 · 05/23–06/12 · SEven777-a(作者 鈺傑)

在 fork 分支 feature/beam-penetration-rc 獨力開發 23 commits:1650 行 CommandExecutor.BeamPenetration.cs(實體頂點極值投影法、正交梁邊界、雙重碰撞防禦、綠 PASS/紅 FAIL 圖面標記)、CommandExecutor.AdvancedPenetration.cs、4 個 MCP 工具、check-beam-penetration skill、連結模型套管掃描、梁端接柱/牆偵測(IsStartAtColumn/IsEndAtColumn)、WebSocket 大封包修正。

WAVE 2 · 06/30–07/02 · 收編 PR #68

鈺傑自行把 step1(C# 幾何萃取 + 套管分類)切成 PR #68 提交(2026-06-30)。收編採修正式合併(2026-07-02):還原 main 版 dispatcher(PR 原修改會誤刪 12 個現役 case)、僅手動補入 3 個新 case;追齊 7 個未隨附 helper 方法的依賴閉包(partial 611→959 行);cherry-pick WebSocket 大封包截斷修正;R24(.NET FX 4.8)+ R26(.NET 8)雙 build 0 error;QA/QC 54 PASS。上線工具:analyze_beam_penetrationscan_penetrated_beams_in_view(工具計數 101→103)。

WAVE 2 續行(v2 分支)

完整線已收編到 origin 分支 feature/seven777-beam-penetration-v2(保留他 23-commit 作者圖譜):新增 visualize_penetrationget_src_beam_mapping 工具(分支上 105)、skill 改寫為 MCP 工具編排、SC/SRC domain 草稿(待江老師確認)、丟棄 6,000+ 行對話萃取暫存檔。

WORKFLOW · 4 STEPS

四步工作流

兩個 runtime 工具 + 一份法規 domain 串成一條;v2 分支再加圖面標記。

步驟工具 / 方法做什麼 / 回什麼
① 掃描scan_penetrated_beams_in_view掃描視圖內所有穿梁套管,回梁清單與套管位置
② 萃取analyze_beam_penetration單梁幾何萃取 + 套管分類(位置、直徑、Zone 判定)
③ 法規判定domain/beam-penetration-rc.mdH/3 限制、禁開區(Zone A)、相鄰套管淨距計算 → PASS / FAIL
④ 圖面標記
v2 分支
visualize_penetration綠 PASS/紅 FAIL 批次上色,回標記數量
GOTCHAS

三個技術陷阱

fork PR 舊檔貼回陷阱

GitHub 顯示 mergeable,textual merge 乾淨,但 PR 的 CommandExecutor.cs 是 fork 舊檔整個貼回:刪 12 個現役 case(門窗圖例、樑翻模、走廊分析等)。因方法在 partial class,build 照樣過、runtime 才壞。教訓:合併 fork PR 前先 diff dispatcher case 清單。

PR 切片的依賴閉包

從大分支切出來的 PR 可能呼叫沒隨附的方法;本次 PR 呼叫了 7 個未隨附的 helper 方法,無法單獨編譯。教訓:合併前要追依賴閉包,缺的從同作者原分支補。

WebSocket 大封包截斷

單次 ReceiveAsync + GetString(count) 遇分片 frame 會截斷 JSON;改 MemoryStream 累積至 EndOfMessage 才轉字串。此修正已 cherry-pick 進 main。

OPT-IN LINE

啟銘熱重載 opt-in 線

ChimingLu(啟銘)· 熱重載架構更新

熱重載架構(MCP.Contracts + MCP.CoreRuntime 多專案、TcpListener、shadow-copy)依單一 csproj 憲法維持 opt-in 不進 main;新 opt-in 線 = origin 分支 feature/core-reload-optin(取代舊 preview/chiming-pr42/43 快照),已同步 main 最新內容並補上 TcpListener 續傳 frame 累積與 CoreRuntime 編譯清單修正。文件指標:docs/core-reload-architecture.md/core-reload-dev skill。

RELATED REFERENCE

深度閱讀

domain/beam-penetration-base.md

共用基礎:梁類型判定 + 分派 RC/SC/SRC + 共用輸出格式

domain/beam-penetration-rc.md

RC 梁規則:H/3 限制、Zone A 禁開區、相鄰淨距、PASS/FAIL 判定

domain/beam-penetration-algorithm.md

實體投影降維、JoinGeometry 端面消失、法向量過濾演算法

domain/sleeve-classification-protocol.md

套管分類 SOP:穿梁 / 穿牆 / 穿板判定、套管身分識別

Domain 索引

61 個 Domain SOP 總表