{
 "title": "Narrative: a figure, a field, an open cage",
 "sub": "Every full-image state from the Midjourney default to Hold. Spine = kept; side branches = tried and not carried forward, with the reason.",
 "parts": [
  {
   "name": "The default",
   "sub": "Four Midjourney images of the prompt, as given.",
   "end": "the same horizontal split in all four; a bird in all four; the other hand neither absent nor resisting",
   "nodes": [
    {
     "id": "mj1",
     "img": "s0_default/mj/mj1.png",
     "label": "Midjourney 1",
     "tool": "generator",
     "platform": "Midjourney",
     "by": "russell",
     "status": "context",
     "note": "grass over the lower body, the upper body against the sky; the cage held; a bird."
    },
    {
     "id": "mj2",
     "img": "s0_default/mj/mj2.png",
     "label": "Midjourney 2",
     "tool": "generator",
     "platform": "Midjourney",
     "by": "russell",
     "status": "context",
     "note": "grass over the lower body, the upper body against the sky; the cage held; a bird."
    },
    {
     "id": "mj3",
     "img": "s0_default/mj/mj3.png",
     "label": "Midjourney 3",
     "tool": "generator",
     "platform": "Midjourney",
     "by": "russell",
     "status": "context",
     "note": "grass over the lower body, the upper body against the sky; the cage held; a bird."
    },
    {
     "id": "mj4",
     "img": "s0_default/mj/mj4.png",
     "label": "Midjourney 4",
     "tool": "generator",
     "platform": "Midjourney",
     "by": "russell",
     "status": "context",
     "note": "grass over the lower body, the upper body against the sky; the cage held; a bird."
    }
   ]
  },
  {
   "name": "Set 1",
   "sub": "Six organizations of figure, field and cage.",
   "end": "carried: 2 (favourite), 4",
   "nodes": [
    {
     "id": "st",
     "img": "tools_test/s.png",
     "label": "stage test",
     "tool": "stage",
     "by": "claude",
     "status": "branch",
     "why": "testing hand/stage.py",
     "parent": "set1/2_submerged"
    },
    {
     "id": "set1/1_cage_in_grass",
     "img": "set1/1_cage_in_grass/d.png",
     "inset": "set1/1_cage_in_grass/study.png",
     "label": "1 cage in grass",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "The cage set down among the grass, its bars continuous with the blades; she is far off, walking away, joined only by a long tether. Can the cage become part of the field's pattern?  Decision: drop: cage and grass are two mark families; the pattern idea needed the caption",
     "parent": "set1/2_submerged",
     "why": "drop: cage and grass are two mark families; the pattern idea needed the caption"
    },
    {
     "id": "set1/2_submerged",
     "img": "set1/2_submerged/d.png",
     "inset": "set1/2_submerged/study.png",
     "label": "2 submerged",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "kept",
     "note": "Submerged: she kneels in tall grass, only head and shoulders above it, the cage raised high against the sky; the other arm is gone into the grass. Part of the field below, apart above?  Decision: carry (favourite): she is made of the field's marks; the cage is the one constructed pattern, held into empty sky"
    },
    {
     "id": "set1/3_through_the_cage",
     "img": "set1/3_through_the_cage/d.png",
     "inset": "set1/3_through_the_cage/study.png",
     "label": "3 through the cage",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Through the cage: the cage close to us fills the frame; she stands beyond it, seen through the bars, the tether running from her hand to it. The cage as a pattern laid over her.  Decision: reserve: bars cross her and the field, but the cage reads as a pavilion",
     "parent": "set1/2_submerged",
     "why": "reserve: bars cross her and the field, but the cage reads as a pavilion"
    },
    {
     "id": "set1/4_silhouette",
     "img": "set1/4_silhouette/d.png",
     "inset": "set1/4_silhouette/study.png",
     "label": "4 silhouette",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Against the light: low view, backlit; she and the cage are dark shapes on a bright sky, the cage arm out, the other arm absent. Is apartness a silhouette?  Decision: carry: one dark shape; bars rhyme with blades",
     "parent": "set1/2_submerged",
     "why": "carry: one dark shape; bars rhyme with blades"
    },
    {
     "id": "set1/5_lying",
     "img": "set1/5_lying/d.png",
     "inset": "set1/5_lying/study.png",
     "label": "5 lying",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Lying in the field, the cage upright beside her head, the tether slack. Seen from above: part of the field, literally. Is that more than a caption?  Decision: drop: reads as a body in grass; the cage becomes a clue",
     "parent": "set1/2_submerged",
     "why": "drop: reads as a body in grass; the cage becomes a clue"
    },
    {
     "id": "set1/6_resisting",
     "img": "set1/6_resisting/d.png",
     "inset": "set1/6_resisting/study.png",
     "label": "6 resisting",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Resisting: she walks away; the tether runs taut from her trailing hand back to the cage on the ground; the other arm reaches forward. Can resistance be visible as a line under strain?  Decision: drop: the forward arm reads as a wave; resistance not visible",
     "parent": "set1/2_submerged",
     "why": "drop: the forward arm reads as a wave; resistance not visible"
    }
   ]
  },
  {
   "name": "Set 2",
   "sub": "Develop, and the strongest counterexamples.",
   "end": "the cage turns a signal into carrying; standing clear is apart only",
   "nodes": [
    {
     "id": "set2/1_submerged_closer",
     "img": "set2/1_submerged_closer/d.png",
     "inset": "set2/1_submerged_closer/study.png",
     "label": "1 submerged closer",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "kept",
     "note": "Develop 2: closer; grass crossing more of her; the cage high, door open.  Decision: carry with corrections: grass above her head removes the 'apart'"
    },
    {
     "id": "set2/2_standing_clear",
     "img": "set2/2_standing_clear/d.png",
     "inset": "set2/2_standing_clear/study.png",
     "label": "2 standing clear",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Counterexample: the same figure standing clear of the grass, as in the default. What is lost?  Decision: counterexample: different marks from the field; a scarecrow; apart only",
     "parent": "set2/1_submerged_closer",
     "why": "counterexample: different marks from the field; a scarecrow; apart only"
    },
    {
     "id": "set2/3_no_cage",
     "img": "set2/3_no_cage/d.png",
     "inset": "set2/3_no_cage/study.png",
     "label": "3 no cage",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Counterexample: submerged, the hand raised empty, no cage. Is the cage doing something specific?  Decision: counterexample: the raised empty arm reads as distress; the cage turns a signal into carrying",
     "parent": "set2/1_submerged_closer",
     "why": "counterexample: the raised empty arm reads as distress; the cage turns a signal into carrying"
    },
    {
     "id": "set2/4_silhouette_chest",
     "img": "set2/4_silhouette_chest/d.png",
     "inset": "set2/4_silhouette_chest/study.png",
     "label": "4 silhouette chest",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Develop 4: silhouette with grass to her chest; the cage at the grass top so bars and blades meet.  Decision: operating window: at the grass top the cage dissolves and becomes illegible",
     "parent": "set2/1_submerged_closer",
     "why": "operating window: at the grass top the cage dissolves and becomes illegible"
    },
    {
     "id": "set2/5_backlit_submerged",
     "img": "set2/5_backlit_submerged/d.png",
     "inset": "set2/5_backlit_submerged/study.png",
     "label": "5 backlit submerged",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Combine 2 and 4: backlit and submerged: her body dark among dark grass, the cage dark against the sky.  Decision: drop: one dark mass",
     "parent": "set2/1_submerged_closer",
     "why": "drop: one dark mass"
    },
    {
     "id": "set2/6_with_bird",
     "img": "set2/6_with_bird/d.png",
     "inset": "set2/6_with_bird/study.png",
     "label": "6 with bird",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "The bird: the favourite plus a bird on the cage, as in every default image. What does the bird do?  Decision: the bird reads as a finial and a story cue; stays out",
     "parent": "set2/1_submerged_closer",
     "why": "the bird reads as a finial and a story cue; stays out"
    }
   ]
  },
  {
   "name": "Set 3",
   "sub": "Combine and challenge: the cage at the boundary.",
   "end": "direction: the boundary crosses her and the cage",
   "nodes": [
    {
     "id": "set3/1_chin_cage_clear",
     "img": "set3/1_chin_cage_clear/d.png",
     "inset": "set3/1_chin_cage_clear/study.png",
     "label": "1 chin cage clear",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "The corrections, cage clear: grass to her chin, the left arm lowered and lost in the grass, the cage held up into the sky.  Decision: weaker: the cage is an object held up, apart from the field",
     "parent": "set3/2_cage_at_boundary",
     "why": "weaker: the cage is an object held up, apart from the field"
    },
    {
     "id": "set3/2_cage_at_boundary",
     "img": "set3/2_cage_at_boundary/d.png",
     "inset": "set3/2_cage_at_boundary/study.png",
     "label": "2 cage at boundary",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "kept",
     "note": "The cage at the boundary: its dome clear against the sky, its base among the blades.  Decision: carry: dome clear, bars continue the blades: pattern made of the field"
    },
    {
     "id": "set3/3_leaning_grass",
     "img": "set3/3_leaning_grass/d.png",
     "inset": "set3/3_leaning_grass/study.png",
     "label": "3 leaning grass",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Counterexample: the same, with the grass leaning hard so the blades no longer run parallel to the bars. Does the rhyme depend on the parallels?  Decision: counterexample: crossed blades separate the cage; the rhyme needs the parallels",
     "parent": "set3/2_cage_at_boundary",
     "why": "counterexample: crossed blades separate the cage; the rhyme needs the parallels"
    },
    {
     "id": "set3/4_off_centre",
     "img": "set3/4_off_centre/d.png",
     "inset": "set3/4_off_centre/study.png",
     "label": "4 off centre",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Off-centre: the same, framed with her at the right and cropped; the cage nearer the middle.  Decision: small gain; the ruled grass top dominates",
     "parent": "set3/2_cage_at_boundary",
     "why": "small gain; the ruled grass top dominates"
    },
    {
     "id": "set3/5_cezanne",
     "img": "set3/5_cezanne/d.png",
     "inset": "set3/5_cezanne/study.png",
     "label": "5 cezanne",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "The boundary scene in Cezanne's graphite hand: is the relation in the arrangement or in the Kollwitz marks?  Decision: the relation is in the arrangement",
     "parent": "set3/2_cage_at_boundary",
     "why": "the relation is in the arrangement"
    },
    {
     "id": "set3/6_standing_tall_grass",
     "img": "set3/6_standing_tall_grass/d.png",
     "inset": "set3/6_standing_tall_grass/study.png",
     "label": "6 standing tall grass",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Counterexample to kneeling: standing in grass to her chin. Is submersion a pose or a frame?  Decision: counterexample passed: submersion is the frame, not the pose",
     "parent": "set3/2_cage_at_boundary",
     "why": "counterexample passed: submersion is the frame, not the pose"
    }
   ]
  },
  {
   "name": "Passage 1",
   "sub": "The boundary, the tether, the lost arm.",
   "end": "the reference sent to ChatGPT",
   "nodes": [
    {
     "id": "passage1/p1_tether",
     "img": "passage1/p1_tether/d.png",
     "inset": "passage1/p1_tether/study.png",
     "label": "p1 tether",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Tethered: the cage hangs from her raised hand by a short line, clear of her arm, straddling a ragged grass top; the left arm reaches down into the grass.  Decision: carry: a gap of sky between hand and cage",
     "parent": "passage1/p5_combined",
     "why": "carry: a gap of sky between hand and cage"
    },
    {
     "id": "passage1/p2_held_not_tethered",
     "img": "passage1/p2_held_not_tethered/d.png",
     "inset": "passage1/p2_held_not_tethered/study.png",
     "label": "p2 held not tethered",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Counterexample: the cage held directly in the hand at the same place. Does the tether add something visible?  Decision: counterexample: held reads as carried; the tether is a visible interval",
     "parent": "passage1/p5_combined",
     "why": "counterexample: held reads as carried; the tether is a visible interval"
    },
    {
     "id": "passage1/p3_turned",
     "img": "passage1/p3_turned/d.png",
     "inset": "passage1/p3_turned/study.png",
     "label": "p3 turned",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "Turned: her body toward the cage, her head turned away from us (hair, no face).  Decision: tool limit: the mannequin cannot carry a head",
     "parent": "passage1/p5_combined",
     "why": "tool limit: the mannequin cannot carry a head"
    },
    {
     "id": "passage1/p4_ragged_top",
     "img": "passage1/p4_ragged_top/d.png",
     "inset": "passage1/p4_ragged_top/study.png",
     "label": "p4 ragged top",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "branch",
     "note": "A much more ragged grass top, so the boundary is drawn, not ruled.  Decision: carry: the boundary reads as drawn",
     "parent": "passage1/p5_combined",
     "why": "carry: the boundary reads as drawn"
    },
    {
     "id": "passage1/p5_combined",
     "img": "passage1/p5_combined/d.png",
     "inset": "passage1/p5_combined/study.png",
     "label": "p5 combined",
     "tool": "stage + Hands",
     "by": "claude",
     "status": "kept",
     "note": "Combined, full size: tether, ragged grass top; then the left arm taken back with the eraser (absence as a drawn act).  Decision: sent: tether, ragged top; left arm taken back into the grass (R)"
    },
    {
     "id": "L",
     "img": "passage1/p5_combined/L.png",
     "label": "left arm taken back",
     "tool": "eraser",
     "by": "claude",
     "status": "kept",
     "note": "the kneaded eraser over the left forearm: a ghost"
    },
    {
     "id": "R",
     "img": "passage1/p5_combined/R.png",
     "label": "grass re-laid",
     "tool": "Hands --init",
     "by": "claude",
     "status": "sent",
     "note": "the arm dissolves into the field partway down: absence as something the drawing does"
    }
   ]
  },
  {
   "name": "Loop 1 to Hold",
   "sub": "ChatGPT's two versions, read against each other.",
   "end": "HOLD on version a (HOLD.md)",
   "nodes": [
    {
     "id": "b",
     "img": "loop1/gpt1b.png",
     "label": "ChatGPT b (higher fidelity)",
     "tool": "generator",
     "platform": "ChatGPT",
     "by": "russell",
     "status": "branch",
     "parent": "a",
     "why": "seed-headed blades lean and cross the bars (0.69 vertical near the cage vs 0.80); the face becomes the first thing read"
    },
    {
     "id": "a",
     "img": "loop1/gpt1a.png",
     "inset": "REFERENCE_for_gpt.png",
     "inset_label": "the native reference it was made from",
     "label": "HOLD",
     "tool": "generator",
     "platform": "ChatGPT",
     "by": "russell",
     "status": "hold",
     "note": "One boundary crosses her and the cage alike; the bars continue the blades; the tether is an interval of sky; the other arm is lost in the field. Argued in HOLD.md."
    }
   ]
  }
 ]
}