Skip to content

Lamp Bracket V1

implemented unverified

Ceiling/under-shelf lamp bracket: a screw-mounted plate, a cantilever arm with an optional root gusset, and a CONTINUOUS wiring channel — vertical entry through the plate near the root, horizontal run exiting the arm tip. The channel is verified void along its full L-path on the compiled solid. The arm tip carries the datum a lamp_socket_cup_v1 mounts onto (match the cup's mount_bc to the arm width).

Built from a real example — orbit to inspect.

Declaration example

A minimal product declaration for this archetype — exposed parameters at their defaults. Validate and build it with forge validate / forge build.

schema: product/v1
id: my_lamp_bracket
archetype: lamp_bracket_v1@1

params:
  arm_len: 160mm
  channel_d: 8mm

Parameters

parametertypedefaultrangerole
arm_lenlength160mm60mm … 190mmfunctionalexposed
arm_wlength22mm12mm … 40mmstructural
arm_hlength22mm12mm … 40mmstructural
plate_llength70mm50mm … 140mmassembly
plate_wlength46mm30mm … 80mmassembly
plate_tlength6mm4mm … 10mmmanufacturing
gussetboolTruestructural
gusset_lenlength34mm15mm … expr(arm_len * 0.4)structural
gusset_droplengthexpr(arm_h * 0.6)0mm … 30mmstructural
channel_dwiring channel bore (v1 clamp — leaves >= 2mm wall)length8mm4mm … expr(min(arm_w, arm_h) - 4)functionalexposed
screwchoiceM4M3 | M4 | M5assembly
screw_countcount22 … 4assembly
screw_spacinglengthexpr(arm_w + 20)expr(arm_w + 13) … expr(plate_l - 10)assembly
mount_bcbolt-circle diameter of tip thread pilots; match the cup's mount_bc (declare it once via assembly.shared)length0mm0mm … expr(arm_w - 10)assembly
mount_screwchoiceM4M3 | M4 | M5assembly
mount_screw_countcount42 … 6assembly
mount_insetcup center setback from the arm tiplength26mmexpr(mount_bc / 2 + 6) … expr(arm_len / 2)assembly
pilot_depththread pilot depth — clamped so pilots never break into the wiring channel abovelengthexpr(min(8, arm_h / 2 - channel_d / 2 - 2))5mm … expr(arm_h / 2 - channel_d / 2 - 2)assembly

Regions

  • plate mounting surface
  • screw_zones fastener keepout
  • arm_root high stress region forbids: add_hex_perforation
  • arm_tip_face mounting surface
  • channel_zone soft contact surface

Contract

Guarantees

must-have features and invariants — verified on every build

  • cantilever_arm
  • wiring_channel
  • mounting_flange
  • channel_d <= min(arm_w, arm_h) - 4

Will refuse

explicit prohibitions — the engine refuses to build these

  • blocked_channel

Not claimed

what passing validation does not mean

  • Provided “as is” under Apache-2.0 — no warranty of fitness for a particular purpose.

Subscribed validators (14)

interface.frame_existsinterface.frame_orthonormalinterface.normal_points_outwardinterface.up_consistentform.channel_inside_wallsform.cuts_respect_keepoutsform.flange_above_cradleform.screw_access_cleartopology.single_connected_solidtopology.flange_above_cradletopology.screw_holes_opentopology.countersinks_presenttopology.bores_opentopology.channel_continuous