Crelay-Topo: complete replacement trajectory validation
======================================================
Validated 2026-09-15 against the current working tree.

RESULT: All 94 actions executed successfully; agent1 reached location19.
VALIDATE-RECORDER-SOLUTION returned T NIL: both completed recorder cycles and
the final open cycle passed independent recording validation, and complete
playback satisfied the original problem goal. No solve/search was run; no
minimum-length claim is made. No technology or problem geometry was changed.

Action boundaries:
  1-10   Retained Subgoal 1.
 11-30   Retained Subgoal 2.
 31-65   Replacement continuation through the plate5 handoff (35 actions).
 66-94   Beam setup, gate8 crossing, final plates, goal (29 actions).
Thus the complete replacement continuation from Subgoal 2 is 64 actions.
This 94-action complete solution differs from the old 94-action intermediate
checkpoint formerly recorded in subgoal-solutions.txt. That entry has now
been replaced; the former version is preserved in the historical archive.

Continuation details:
- The ghost picks up tray1*, steps off plate5, and returns through recording
  gates5, 3, and 1 to location2. Recording gate5 stays open despite live switch2.
- At location2 the ghost grounds its tray, picks up and grounds connector1*,
  then puts tray1* on plate1 and retrieves connector1*. This spells out the
  proposed swap without trying to hold both objects at once.
- The ghost connects connector1* at location9 to repeater1/transmitter1, then
  stands on plate3 at location10, opening gate4 and energizing repeater1.
- Agent1 steps off plate5 and carries the loaded tray through gate7 to location15,
  then through gate8 to location21. These moves pass the current beam/gate rules.
- At location21, releasing tray1 grounds box1 with connector1 still on top.
  Agent1 puts tray1 on plate6 at location16, returns for connector1 and puts it
  on plate7 at location17, then returns for box1 and puts it on plate8 at location18.
- Gate9 opens; agent1 walks to location19 while the ghost remains on plate3.
  The goal occurs in an open final cycle; there is no actual STOP-RECORDER action.

Connector limitation remains: tech/beam-relay.lisp's PICKUP-CONNECTOR always
clears pairings. This trajectory explicitly reconnects when loading the box;
the user's requested retain-pairings pickup option has not been implemented.

Exact cumulative replay form, after staging crelay-topo:

(validate-solution
  (START-RECORDER AGENT1)
  (MOVE AGENT1* ((WALK LOCATION1 NIL LOCATION2)))
  (MOVE AGENT1* ((STEP (LOCATION2 GROUND) NIL
                                  (LOCATION2 PLATE1))))
  (MOVE AGENT1 ((WALK LOCATION1 (GATE1 GATE3) LOCATION9)))
  (PICKUP-CONNECTOR AGENT1 CONNECTOR1 LOCATION9)
  (MOVE AGENT1 ((WALK LOCATION9 (GATE1 GATE3) LOCATION2)))
  (PUT-CONNECTOR AGENT1 CONNECTOR1 LOCATION2 PLATE1)
  (MOVE AGENT1* ((STEP (LOCATION2 PLATE1) NIL
                                  (LOCATION2 GROUND))))
  (MOVE AGENT1* ((WALK LOCATION2 NIL LOCATION1)))
  (STOP-RECORDER AGENT1*)
  (MOVE AGENT1 ((WALK LOCATION2 NIL LOCATION1)))
  (START-RECORDER AGENT1)
  (MOVE AGENT1* ((WALK LOCATION1 (GATE1) LOCATION7)))
  (PICKUP-TRAY AGENT1* TRAY1* LOCATION7 LOCATION7)
  (MOVE AGENT1* ((WALK LOCATION7 NIL LOCATION5)))
  (MOVE AGENT1 ((WALK LOCATION1 (GATE1) LOCATION7)))
  (PICKUP-TRAY AGENT1 TRAY1 LOCATION7 LOCATION7)
  (PUT-TRAY AGENT1 TRAY1 GROUND LOCATION7)
  (MOVE AGENT1 ((WALK LOCATION7 NIL LOCATION4)))
  (MOVE AGENT1 ((STEP (LOCATION4 GROUND) NIL (LOCATION4 BLOWER1))))
  (TOGGLE-SWITCH AGENT1 SWITCH1)
  (MOVE AGENT1 ((JUMP (LOCATION20 GROUND) NIL (LOCATION5 TRAY1*))))
  (TOGGLE-SWITCH AGENT1 SWITCH1)
  (MOVE AGENT1 ((JUMP (LOCATION5 TRAY1*) (GATE2) (LOCATION6 GROUND))))
  (PICKUP-BOX AGENT1 BOX1 LOCATION6 LOCATION6)
  (MOVE AGENT1 ((JUMP LOCATION6 (GATE2) LOCATION4) (WALK LOCATION4 NIL LOCATION7)))
  (PUT-BOX AGENT1 BOX1 PLATE2 LOCATION7)
  (MOVE AGENT1* ((WALK LOCATION5 (GATE1) LOCATION1)))
  (PUT-TRAY AGENT1* TRAY1* GROUND LOCATION1)
  (STOP-RECORDER AGENT1*)



(MOVE AGENT1 ((WALK LOCATION7 (GATE1) LOCATION1)))
(START-RECORDER AGENT1)
(MOVE AGENT1* ((WALK LOCATION1 (GATE1) LOCATION7)))
(PICKUP-TRAY AGENT1* TRAY1* LOCATION7 LOCATION7)
(MOVE AGENT1* ((WALK LOCATION7 NIL LOCATION5)))
(MOVE AGENT1 ((WALK LOCATION1 NIL LOCATION2)))
(PICKUP-CONNECTOR AGENT1 CONNECTOR1 LOCATION2)
(MOVE AGENT1 ((WALK LOCATION2 (GATE1) LOCATION7)))
(CONNECT-CONNECTOR AGENT1 CONNECTOR1 LOCATION7 GROUND (REPEATER1 RECEIVER1))
(PICKUP-BOX AGENT1 BOX1 LOCATION7 LOCATION7)
(MOVE AGENT1 ((WALK LOCATION7 NIL LOCATION4)))
(MOVE AGENT1 ((STEP (LOCATION4 GROUND) NIL (LOCATION4 BLOWER1))))
(TOGGLE-SWITCH AGENT1 SWITCH1)
(PUT-BOX AGENT1 BOX1 TRAY1* LOCATION5)
(TOGGLE-SWITCH AGENT1 SWITCH1)
(MOVE AGENT1 ((WALK LOCATION4 NIL LOCATION7)))
(PICKUP-CONNECTOR AGENT1 CONNECTOR1 LOCATION7)
(MOVE AGENT1 ((WALK LOCATION7 NIL LOCATION4)))
(MOVE AGENT1 ((STEP (LOCATION4 GROUND) NIL (LOCATION4 BLOWER1))))
(TOGGLE-SWITCH AGENT1 SWITCH1)
(CONNECT-CONNECTOR AGENT1 CONNECTOR1 LOCATION5 BOX1 (REPEATER1 RECEIVER1))
(TOGGLE-SWITCH AGENT1 SWITCH1)
(MOVE AGENT1 ((WALK LOCATION4 NIL LOCATION7)))
(PICKUP-TRAY AGENT1 TRAY1 LOCATION7 LOCATION7)
(MOVE AGENT1 ((WALK LOCATION7 (GATE3 GATE5) LOCATION13)))
(PUT-TRAY AGENT1 TRAY1 PLATE4 LOCATION13)
(MOVE AGENT1* ((WALK LOCATION5 (GATE3 GATE5) LOCATION12)))
(MOVE AGENT1* ((STEP (LOCATION12 GROUND) NIL (LOCATION12 PLATE5))))
(MOVE AGENT1 ((WALK LOCATION13 (GATE6 SCREEN1) LOCATION14)))
(TOGGLE-SWITCH AGENT1 SWITCH2)
(MOVE AGENT1 ((WALK LOCATION14 (GATE6 SCREEN1) LOCATION13)))
(PICKUP-TRAY AGENT1 TRAY1 LOCATION13 LOCATION13)
(MOVE AGENT1 ((WALK LOCATION13 NIL LOCATION12)))
(MOVE AGENT1 ((STEP (LOCATION12 GROUND) NIL (LOCATION12 PLATE5))))
(PUT-TRAY AGENT1* TRAY1* GROUND LOCATION12)
(PICKUP-TRAY AGENT1* TRAY1* LOCATION12 LOCATION12)
(MOVE AGENT1* ((STEP (LOCATION12 PLATE5) NIL (LOCATION12 GROUND))))
(MOVE AGENT1* ((WALK LOCATION12 (GATE1 GATE3 GATE5) LOCATION2)))
(PUT-TRAY AGENT1* TRAY1* GROUND LOCATION2)
(PICKUP-CONNECTOR AGENT1* CONNECTOR1* LOCATION2)
(PUT-CONNECTOR AGENT1* CONNECTOR1* LOCATION2 GROUND)
(PICKUP-TRAY AGENT1* TRAY1* LOCATION2 LOCATION2)
(PUT-TRAY AGENT1* TRAY1* PLATE1 LOCATION2)
(PICKUP-CONNECTOR AGENT1* CONNECTOR1* LOCATION2)
(MOVE AGENT1* ((WALK LOCATION2 (GATE1 GATE3) LOCATION9)))
(CONNECT-CONNECTOR AGENT1* CONNECTOR1* LOCATION9 GROUND (REPEATER1 TRANSMITTER1))
(MOVE AGENT1* ((WALK LOCATION9 NIL LOCATION10)))
(MOVE AGENT1* ((STEP (LOCATION10 GROUND) NIL (LOCATION10 PLATE3))))
(MOVE AGENT1 ((STEP (LOCATION12 PLATE5) NIL (LOCATION12 GROUND))))
(MOVE AGENT1 ((WALK LOCATION12 (GATE7) LOCATION15)))
(MOVE AGENT1 ((WALK LOCATION15 (GATE8) LOCATION21)))
(PUT-TRAY AGENT1 TRAY1 GROUND LOCATION21)
(PICKUP-TRAY AGENT1 TRAY1 LOCATION21 LOCATION21)
(MOVE AGENT1 ((WALK LOCATION21 NIL LOCATION16)))
(PUT-TRAY AGENT1 TRAY1 PLATE6 LOCATION16)
(MOVE AGENT1 ((WALK LOCATION16 NIL LOCATION21)))
(PICKUP-CONNECTOR AGENT1 CONNECTOR1 LOCATION21)
(MOVE AGENT1 ((WALK LOCATION21 NIL LOCATION17)))
(PUT-CONNECTOR AGENT1 CONNECTOR1 LOCATION17 PLATE7)
(MOVE AGENT1 ((WALK LOCATION17 NIL LOCATION21)))
(PICKUP-BOX AGENT1 BOX1 LOCATION21 LOCATION21)
(MOVE AGENT1 ((WALK LOCATION21 NIL LOCATION18)))
(PUT-BOX AGENT1 BOX1 PLATE8 LOCATION18)
(MOVE AGENT1 ((WALK LOCATION18 (GATE9) LOCATION19)))
)

Captured replay output
======================
Validating 94 actions...


VALIDATION SUCCESSFUL

All 94 actions executed successfully.
Goal satisfied.

Final state:
  Time: 94.0
  Value: 0.0
  Propositions:
    (COLOR CONNECTOR1* RED)
    (COLOR REPEATER1 RED)
    (DEPRESSED PLATE2)
    (DEPRESSED PLATE1)
    (DEPRESSED PLATE3)
    (DEPRESSED PLATE6)
    (DEPRESSED PLATE7)
    (DEPRESSED PLATE8)
    (HAS-LOCATION AGENT1 LOCATION19)
    (HAS-LOCATION TRAY1 LOCATION16)
    (HAS-LOCATION AGENT1* LOCATION10)
    (HAS-LOCATION BOX1* LOCATION7)
    (HAS-LOCATION TRAY1* LOCATION2)
    (HAS-LOCATION CONNECTOR1* LOCATION9)
    (HAS-LOCATION CONNECTOR1 LOCATION17)
    (HAS-LOCATION BOX1 LOCATION18)
    (ON BOX1* PLATE2)
    (ON TRAY1* PLATE1)
    (ON AGENT1* PLATE3)
    (ON TRAY1 PLATE6)
    (ON CONNECTOR1 PLATE7)
    (ON BOX1 PLATE8)
    (OPEN GATE7)
    (OPEN GATE3)
    (OPEN GATE2)
    (OPEN GATE1)
    (OPEN GATE4)
    (OPEN GATE9)
    (PAIRED CONNECTOR1* REPEATER1)
    (PAIRED CONNECTOR1* TRANSMITTER1)
    (RECORDER-CYCLES-USED 3)
    (RECORDING-DEPRESSED PLATE2)
    (RECORDING-DEPRESSED PLATE1)
    (RECORDING-DEPRESSED PLATE3)
    (RECORDING-IN-PROGRESS)
    (RECORDING-OPEN GATE2)
    (RECORDING-OPEN GATE5)
    (RECORDING-OPEN GATE3)
    (RECORDING-OPEN GATE1)
    (RECORDING-OPEN GATE4)
    (SWITCHED-ON SWITCH2)


FINISH-REPLAY-PASS: 94 actions

FINISH-RECORDER-VALIDATION: T NIL
Cleaning up resources and shutting down threads...
Cleanup completed.

