Repository navigation
feat: magnetic grid bindings for members (T01.8 slice 1) - #852
Merged
Merged
Conversation
One batch commit carrying the magnetic grid bindings for members (T01.8 slice 1): the engine's grid-following bindings, the magnetic command family, the layer-engine validation and edit paths, and the contract and design documents recording the O-G5 answers and the GR-N14 evidence. Fork-only policy paths are not part of the delivery.
Blogbotana
approved these changes
Nov 8, 2026
axisrow
added a commit
to axisrow/BeamCraft
that referenced
this pull request
Nov 8, 2026
BeamCraft-Test-Gate: {"version":1,"commit":"12e8a5bb96e3ac35f55a60a5ce53bb780c6d9d91","tree":"fbc2eba7cfce752f47ea181d2cb232d3ad59d8e1","base":"12e8a5bb96e3ac35f55a60a5ce53bb780c6d9d91","merge_parent":"3ba696a78c79d90fed744868701b2a3f6d8f42f2","os":"macos","arch":"aarch64","scope":"full","ui_independent_reason":null,"ui_tested":true,"rustc":"rustc 1.99.1 (58cf8f9c3 2026-10-13)","cargo":"cargo 1.99.1 (5f94df478 2026-08-27)","nextest":"cargo-nextest 0.9.149 (3fe4ef319 2026-10-20)\nrelease: 0.9.149\ncommit-hash: 3fe4ef31972f24e0c94cfe291718eab0fe678260\ncommit-date: 2026-10-20\nhost: aarch64-apple-darwin","expected_tests":2707,"executed_tests":2707,"ignored_tests":["beamcraft-test-gate::process::process_fixture"],"source_unchanged":true,"stages":[{"name":"format","exit_code":0,"elapsed_ms":1610,"timed_out":false},{"name":"clippy","exit_code":0,"elapsed_ms":20676,"timed_out":false},{"name":"prepare","exit_code":0,"elapsed_ms":60564,"timed_out":false},{"name":"tests","exit_code":0,"elapsed_ms":167103,"timed_out":false},{"name":"doctests","exit_code":0,"elapsed_ms":1715,"timed_out":false},{"name":"docs","exit_code":0,"elapsed_ms":4340,"timed_out":false}]}
This was referenced Nov 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this changes
Delivers the fork delta accumulated since the 1108 sync wave's delivery (#836) as one batch
commit on top of
master(the single-batch delivery the fork sync policy prescribes). Onefeature line, delivered whole:
positions — the engine binds an end to the nearest admissible grid line and records the
binding in the member layer, the command layer exposes it (
magneticcommand family, gridcommand options and delete/update behaviour), and the layer engine validates and edits the
bindings (
crates/layer-engine/src/authored/*,crates/model/src/grid.rs). The O-G5 ownerdecision is answered and the magnetic grid mode is specified in the project-grids contract
document and the T01.8 design note; the GR-N14 grid-in-use chain is proven over a real
element index in the CLI suite (
tests/t018_magnetic.rs).The fork-only policy (its workflow forms,
docs/plan/, visual evidence, fork tooling) is notpart of this delivery; the upstream-owned Python CI tools are untouched.
How you verified it
cargo fmt --all -- --check(recorded gate stage, exit 0)cargo clippy --workspace --all-targets -- -D warnings(recorded gate stage, exit 0)cargo test --workspace(recorded gate: 2692/2692 runnable tests executed with nextest0.9.149 on macOS aarch64, plus mandatory doctests and
cargo doc -D warnings, all exit 0;the committed fork
mastermerge equals the tested tree, receipt bound in the mergecommit)
test: render the catalogue colour check large enough for software rasterisers #837 test fix, so this tree is tested against current
master, not against a pre-feat: view manager, project browser, properties panel and ribbon #828base.
Never-crash
Every model file, IFC/DSTV import and keystroke is untrusted input (
AGENTS.md§4).unwrap/expect/panic!/todo!outside testsunsafeProvenance
Read
AGENTS.md§1 and §2 before adding any asset.Anything a reviewer should look at first
and registry both waves touched are merged by hand in the fork's sync merge, and this tree
is what upstream CI gates.
🤖 Generated with Claude Code