← house

East wall extension, fall-run raked top

v1 AI approved Generated with ElixiFree

SIP-120 east extension: 2858×142mm span, 2804.76mm (south) raking to 2700mm (north/height_end). Raked top plate carries second half roof fall. No openings. Splines to e2, e4.

Dependencies

foundation.sole_plate_bearing

Interfaces Provided

raked_top_plate (bearing) corner_spline_e2 (joint) corner_spline_e4 (joint)
◉
Agent initialized (status: waiting_for_dependencies, action: check_dependencies)
◉
Provider: claude_code | Profile: balanced
◉
Agent initialized (status: waiting_for_dependencies, action: check_dependencies)
◉
Provider: claude_code | Profile: balanced
◇
Received interface foundation.sole_plate_bearing: %{name: "sole_plate_bearing", type: "bearing", value: %{}, agent_id: "foundation"}
◉
All dependencies resolved, starting generation
◉
Refreshed placement from design spec (bbox %{"x" => 2858.0, "y" => 142.0, "z" => 2804.762308475243})
◉
Generating v1
◉
[ElixiFree] active — code_module=elixifree.sip
◉
[ElixiFree] downgrading to claude-haiku-4-5-20251001 (builder API active)
○
Calling Claude (local subscription) for code generation (claude-haiku-4-5-20251001)...
◉
Generation token budget: max_tokens=12288, thinking_budget=0 (retry_count=0)
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
●
Received response ( tokens)
◉
Applied the building graph's wall top profile: raked, height=2804.8 -> height_end=2.7e3
◉
Normalized Wall builder dimensions/orientation to local-frame contract
◆
s0_wall_e3_v1.py · 25 lines
from elixifree.domains.sip import Wall

# === ANCHOR POINTS ===
ANCHOR_TOP_FACE = (1429.0, 71.0, 2804.762308475243)
ANCHOR_BOTTOM_FACE = (1429.0, 71.0, 0.0)
ANCHOR_FRONT_FACE = (1429.0, 0.0, 1402.3811542376216)
ANCHOR_BACK_FACE = (1429.0, 142.0, 1402.3811542376216)
ANCHOR_LEFT_FACE = (0.0, 71.0, 1402.3811542376216)
ANCHOR_RIGHT_FACE = (2858.0, 71.0, 1402.3811542376216)
# === END ANCHOR POINTS ===

# === PARAMETERS ===
SPAN = 2858.0                           # mm — east-west length along X
THICKNESS = 142.0                      # mm — SIP-120 total thickness along Y
HEIGHT_SOUTH = 2804.762308475243      # mm — raked top at south end (X=0)
HEIGHT_NORTH = 2700.0                 # mm — raked top at north end (X=span)
STOCK = "SIP-120"
# === END PARAMETERS ===

result = (Wall(span=2858.0, height=2804.8, stock="SIP-120", height_end=2700.0)
    .inner_groove(x=THICKNESS / 2)                    # corner spline e2 (south end)
    .inner_groove(x=SPAN - THICKNESS / 2)            # corner spline e4 (north end)
    .build())

result.add_to_doc("Body")
◉
[ElixiFree] ✓ generated script uses elixifree imports
●
Executing in FreeCAD...
◉
StepAnalyzer failed: FreeCAD could not read STEP file: FreeCAD exception thrown (File to load not existing or not readable) — skipping
●
FreeCAD execution succeeded
●
Exported: model.stl
★
Ready for review (v1)
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code
◉
Component approved by user
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
◉
Provider updated to claude_code / balanced
v0.0.985