The ladder editor’s ? list. Each entry below is one row of the
gesture inventory,
with the tests that exercise it in the last green run of each suite.
28 of 31 are covered by a passing test.
rig nightly:
last green run 20 Oct 2026, 10:29 UTC on c7618d3 · rig demo:
last green run 18 Oct 2026, 07:43 UTC on c7618d3 · gesture harness:
last green run 16 Oct 2026, 14:48 UTC on c7618d3 · overview
L01 Click an element to select it
LD · claimed in "?" list LD / Select / `Click`
PASS
PASS harness · diagram Ladder: click a rung name, Del deletes the rung
rig verb ld_node_el — not in a baked run
rig verb click_el — not in a baked run
What the inventory lists
webview test
diagram.test.mjs: Ladder: click a rung name, Del deletes the rung (rung name only)
rig verb
ld_node_el / click_el
smoke
—
Harness evidence — diagram: Ladder: click a rung name, Del deletes the rung
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L02 Click a rung's name to select the whole rung
LD · claimed in "?" list LD / Select / `Click a rung's name`
PASS
PASS harness · diagram Ladder: click a rung name, Del deletes the rung
rig verb ld_select_rung — not in a baked run
What the inventory lists
webview test
diagram.test.mjs: Ladder: click a rung name, Del deletes the rung
rig verb
ld_select_rung
smoke
—
Harness evidence — diagram: Ladder: click a rung name, Del deletes the rung
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L03 Double-click to retag a contact or coil (+Tag / -Tag makes an edge contact, /Tag an NC one), edit arguments, rename a rung
LD · claimed in "?" list LD / Edit / `Double-click`
rig verb ld_add_contact
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
+20 more in the run's artifact
L06 Drag a palette item onto a rung spot
LD · claimed in "?" list LD / Edit / `Drag a palette item`
PASS
PASS harness · diagram Ladder: the FB… picker names a TON / CTU instance with the first free name
rig verb ld_palette — not in a baked run
rig verb g_drag_to — not in a baked run
What the inventory lists
webview test
diagram.test.mjs: Ladder: the FB… picker names a TON / CTU instance with the first free name
rig verb
ld_palette, g_drag_to
smoke
—
Harness evidence — diagram: Ladder: the FB… picker names a TON / CTU instance with the first free name
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L07 Drag an element to another spot or rung
LD · claimed in "?" list LD / Edit / `Drag an element`
PASS
PASS rig verb ld_move_element · rig demo
PASS rig verb ld_move_element-same · rig demo
PASS rig verb ld_move_element-coil · rig demo
PASS rig verb ld_move_element · rig nightly
PASS rig verb ld_move_element-same · rig nightly
PASS rig verb ld_move_element-coil · rig nightly
PASS harness · diagram Ladder zoom: a palette drop and a node drag still hit their spots at 173%
PASS harness · ld-keys Ladder drag: a contact dragged into another rung posts ONE move naming source path and target (L07)
PASS harness · ld-keys Ladder drag: a contact dragged to a later spot in its own rung posts a move with the new index (L07)
What the inventory lists
webview test
diagram.test.mjs: Ladder zoom: a palette drop and a node drag still hit their spots at 173%; ld-keys.test.mjs: a contact dragged into another rung / to a later spot in its own rung post one `move` op (L07)
rig verb
ld_move_element (selftest: another rung, the same rung, a coil)
smoke
—
rig verb ld_move_element
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L08 Delete the element, or the rung when its name is selected
LD · claimed in "?" list LD / Edit / `Del / Backspace`
PASS harness · diagram Ladder: click a rung name, Del deletes the rung
What the inventory lists
webview test
diagram.test.mjs: Ladder: click a rung name, Del deletes the rung
rig verb
ld_delete_last_coil
smoke
—
rig verb ld_delete_last_coil
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L09 Press N to toggle a contact between NO and NC
LD · claimed in "?" list LD / Edit / `N`
PASS
PASS harness · ld-keys Ladder keys: N on a selected contact posts toggleNeg, again flips it back (L09)
What the inventory lists
webview test
ld-keys.test.mjs: N on a selected contact posts toggleNeg, again flips it back
rig verb
—
smoke
—
Harness evidence — ld-keys: Ladder keys: N on a selected contact posts toggleNeg, again flips it back (L09)
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L10 Press M to cycle a coil normal → set → reset
LD · claimed in "?" list LD / Edit / `M`
PASS
PASS harness · ld-keys Ladder keys: M on a selected coil cycles normal -> set -> reset -> normal (L10)
What the inventory lists
webview test
ld-keys.test.mjs: M on a selected coil cycles normal -> set -> reset -> normal
rig verb
—
smoke
—
Harness evidence — ld-keys: Ladder keys: M on a selected coil cycles normal -> set -> reset -> normal (L10)
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L11 Press B to wrap the selection in a parallel branch
LD · claimed in "?" list LD / Edit / `B`
PASS
PASS rig verb ld_add_branch · rig demo
PASS rig verb ld_add_branch · rig nightly
What the inventory lists
webview test
—
rig verb
ld_add_branch
smoke
—
rig verb ld_add_branch
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L12 Copy, cut, paste an element or a whole rung (into another ladder too)
LD · claimed in "?" list LD / Edit / `Ctrl + C / X / V`
PASS harness · diagram Ladder zoom: buttons and Ctrl+= / Ctrl+- / Ctrl+0 (fit) with focus in the diagram
What the inventory lists
webview test
diagram.test.mjs: Ladder zoom: buttons and Ctrl+= / Ctrl+- / Ctrl+0
rig verb
diagram_zoom
smoke
06
rig verb diagram_zoom
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
+7 more in the run's artifact
L17 Pan by middle-dragging (wheel and scrollbars scroll)
LD · claimed in "?" list LD / View / `Middle-drag`
PASS
PASS harness · ld-keys Ladder pan: a middle-button drag scrolls the pane by the drag delta and posts no op; the wheel scrolls too (L17)
What the inventory lists
webview test
ld-keys.test.mjs: a middle-button drag scrolls the pane by the drag delta and posts no op; the wheel scrolls too
rig verb
—
smoke
—
Harness evidence — ld-keys: Ladder pan: a middle-button drag scrolls the pane by the drag delta and posts no op; the wheel scrolls too (L17)
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L18 Undo the last edit to the file from the diagram
LD · claimed in "?" list LD / File / `Ctrl + Z`
no evidence yet
rig verb g_key — not in a baked run
What the inventory lists
webview test
—
rig verb
g_key (ctrl+z in takes)
smoke
—
L19 Redo
LD · claimed in "?" list LD / File / `Ctrl + Y / Ctrl + Shift + Z`
Harness evidence — ld-keys: Ladder redo: Ctrl+Z / Ctrl+Shift+Z / Ctrl+Y post diagramKey undo / redo / redo (L19)
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L20 Save the file from the diagram
LD · claimed in "?" list LD / File / `Ctrl + S`
no evidence yet
rig verb g_save — not in a baked run
What the inventory lists
webview test
—
rig verb
g_save
smoke
—
L21 An edge contact (`+Tag` / `-Tag`) draws as a P / N contact; live, it lights for the scan its one-shot fires (#212)
LD · claimed in CHANGELOG Unreleased; ladder.mdx In the editor
PASS
PASS rig verb ld_edge_drawn · rig demo
PASS rig verb ld_edge_drawn · rig nightly
PASS harness · ld-parity Ladder edge contact: +Tag / -Tag draw as P / N contacts between the rail and the block (L21, #212)
PASS harness · ld-parity Ladder edge contact: live power comes from its one-shot, and its input rules a pulse out (L21, #212)
What the inventory lists
webview test
ld-parity.test.mjs: +Tag / -Tag draw as P / N contacts; live power comes from its one-shot
rig verb
ld_edge_drawn (selftest; logix-shaped m1)
smoke
—
rig verb ld_edge_drawn
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L22 Insert a rising / falling-edge contact from the palette (⊣P⊢ ⊣N⊢) (#213)
LD · claimed in palette titles; ladder.mdx In the editor
PASS
PASS rig verb ld_add_edge-N · rig demo
PASS rig verb ld_add_edge-N · rig nightly
PASS harness · ld-parity Ladder edge contact: the palette inserts P and N contacts (L22, #213)
What the inventory lists
webview test
ld-parity.test.mjs: the palette inserts P and N contacts
rig verb
ld_add_edge (selftest)
smoke
—
rig verb ld_add_edge-N
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L23 Press P to cycle a contact NO → P → N → NC (N on an edge: NC) (#213)
LD · claimed in "?" list LD / Edit / `P`
PASS
PASS harness · ld-parity Ladder edge contact: P cycles a selected contact NO → P → N → NC → NO; N on an edge makes it NC (L23, #213)
What the inventory lists
webview test
ld-parity.test.mjs: P cycles a selected contact
rig verb
—
smoke
—
Harness evidence — ld-parity: Ladder edge contact: P cycles a selected contact NO → P → N → NC → NO; N on an edge makes it NC (L23, #213)
· gesture harness, last green run 16 Oct 2026, 14:48 UTC on c7618d3
L24 Type `+Tag` / `-Tag` / `/Tag` into a contact's retag to set its form; a bare tag keeps it (#213)
LD · claimed in ladder.mdx In the editor
PASS
PASS rig verb ld_edge_retag · rig demo
PASS rig verb ld_retag-edge · rig demo
PASS rig verb ld_edge_retag · rig nightly
PASS rig verb ld_retag-edge · rig nightly
PASS harness · ld-parity Ladder edge contact: double-click a contact and type +Tag — the retag posts it whole; an edge retags too (L24, #213)
What the inventory lists
webview test
ld-parity.test.mjs: double-click a contact and type +Tag
rig verb ld_edge_retag
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L25 Copy a whole rung (its name selected) and paste it below the selected rung: next name (m1 → m2), instances renamed; ⧉ / ✂ disabled with nothing to copy (#217)
LD · claimed in "?" list LD / Edit / `Ctrl + C / X / V`; CHANGELOG Unreleased
PASS
PASS rig verb ld_copy_rung · rig demo
PASS rig verb ld_copy_rung · rig nightly
PASS harness · ld-parity Ladder rung copy: the palette ⧉ then ⎘ pastes below the source when nothing is selected; ✂ cuts the rung (L25, #217)
PASS harness · ld-parity Ladder rung copy: select a rung, Ctrl+C, select another, Ctrl+V — pasteRung below it; ⧉ is enabled only with something to copy (L25, #217)
What the inventory lists
webview test
ld-parity.test.mjs: Ctrl+C / Ctrl+V pasteRung; ⧉ then ⎘, ✂ cuts the rung
rig verb
ld_copy_rung (selftest; logix-shaped m2)
smoke
—
rig verb ld_copy_rung
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L26 The declare offer types a name from its use (a CTU's `CV =>` is INT) over a seed-typed REAL (#219)
LD · claimed in CHANGELOG Unreleased
PASS
PASS rig verb ld_declare_offer_type · rig demo
PASS rig verb ld_declare_offer_type · rig nightly
PASS harness · ld-parity Ladder declare: a CTU's CV => Starts is offered as VAR_EXTERNAL : INT, not the seed's REAL (L26, #219)
What the inventory lists
webview test
ld-parity.test.mjs: a CTU's CV => Starts is offered as VAR_EXTERNAL : INT
rig verb ld_declare_offer_type
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L27 Declare, rename and delete a FUNCTION_BLOCK's pins: the declare offer inside a block (VAR_INPUT / VAR_OUTPUT), the variables panel's block scope (in → out → in/out → local), double-click a name to rename (#214)
LD · claimed in CHANGELOG Unreleased; ladder.mdx In the editor
PASS
PASS rig verb ld_declare · rig demo
PASS rig verb ld_declare-AckCount · rig demo
PASS rig verb ld_vars_declare · rig demo
PASS rig verb ld_vars_rename · rig demo
PASS rig verb ld_vars_delete · rig demo
PASS rig verb ld_declare · rig nightly
PASS rig verb ld_declare-AckCount · rig nightly
PASS rig verb ld_vars_declare · rig nightly
PASS rig verb ld_vars_rename · rig nightly
PASS rig verb ld_vars_delete · rig nightly
PASS harness · ld-parity Ladder declare: inside a FUNCTION_BLOCK the offer makes pins — a read is VAR_INPUT, a coil VAR_OUTPUT (L27, #214)
PASS harness · ld-parity Ladder vars panel: a block's scope declares its pins (in → out → in/out → local), renames and deletes them (L27, #214)
What the inventory lists
webview test
ld-parity.test.mjs: inside a FUNCTION_BLOCK the offer makes pins; a block's scope declares, renames and deletes its pins
rig verb ld_vars_lists_instance
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L29 Ctrl / Shift + click adds an element of the same series to the selection (or takes it out)
LD · claimed in "?" list LD / Select / `Ctrl / Shift + click`
PASS
PASS rig verb ld_or_select · rig demo
PASS rig verb ld_or_select · rig nightly
PASS harness · editor-gestures Ladder OR (#91): Ctrl-click three contacts, O → ONE wrapOr with a leg each; the OR button does the same
What the inventory lists
webview test
editor-gestures.test.mjs: Ladder OR (#91): Ctrl-click three contacts, O
rig verb
ld_or_select (selftest)
smoke
—
rig verb ld_or_select
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L30 O (or the toolbar's OR): several selected elements → ONE branch with a leg each; a selected branch → one more leg; one element → a 2-leg OR (#91)
LD · claimed in "?" list LD / Edit / `O`; CHANGELOG Unreleased
PASS
PASS rig verb ld_or_select · rig demo
PASS rig verb ld_branch_or_leg · rig demo
PASS rig verb ld_or_select · rig nightly
PASS rig verb ld_branch_or_leg · rig nightly
webview test with no linked recording: editor-gestures.test.mjs: Ladder OR (#91) ×2
What the inventory lists
webview test
editor-gestures.test.mjs: Ladder OR (#91) ×2
rig verb
ld_or_select, ld_branch_or_leg (selftest)
smoke
—
rig verb ld_or_select
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1
L31 A branch is its own element (g.branch > g.leg > g.node, aria-labelled): click its rails to select it; Del deletes it (#91)
LD · claimed in "?" list LD / Select / `Click a branch's rails`
PASS
PASS rig verb ld_branch_or_leg · rig demo
PASS rig verb ld_branch_or_leg · rig nightly
PASS harness · editor-gestures Ladder OR (#91): a branch is ONE element — g.branch > g.leg > g.node, labelled; click its rails to select, O adds a leg, Del deletes it
What the inventory lists
webview test
editor-gestures.test.mjs: Ladder OR (#91): a branch is ONE element
rig verb
ld_branch_or_leg (selftest)
smoke
—
rig verb ld_branch_or_leg
· rig demo, last green run 18 Oct 2026, 07:43 UTC on c7618d3 · VS Code 1.139.1