{
  "schemaVersion": 1,
  "id": "gpt54-caret-reset",
  "title": "Caret interruption and coupled field reset",
  "description": "DRAFT — A stationary empty field briefly restores its insertion bar for one native frame, replaces its placeholder and lightens its plus together on the following frame, then restores the bar after nine absent frames. Original illustrated editor, not ChatGPT or Poe footage; independent fidelity/reuse review pending.",
  "families": ["interface", "continuity"],
  "intents": ["preserve short interface feedback", "show an interrupted caret cycle", "couple placeholder and control state without camera movement"],
  "tags": ["caret", "one-frame", "reset", "placeholder", "no-typing", "native-crop", "draft"],
  "distinctness": {
    "mechanism": "A one-frame return inside a quiet insertion-bar cycle precedes a simultaneous placeholder/plus state replacement; that replacement suppresses the bar for nine frames before a stationary return. The field, mode, microphone and stop controls keep registration throughout. No letters type, no selection grows and no pointer initiates the change.",
    "notEquivalentTo": [
      "atlas-reverse-selection-action moves an I-beam, grows a selection and resolves a handle into a capsule. This caret never travels and selects nothing.",
      "atlas-composer-context-reveal resets camera scale and adds context. This recipe has no transform, camera movement or context reveal.",
      "codex-modal-relay includes a one-frame progress state, but changes whole dialogs and dimming. Here the persistent field's caret clock is interrupted by two simultaneous local substitutions.",
      "agent-task-card-explanation types a callout while a card grows over a drifting stage. This recipe has neither character reveal nor card/background motion.",
      "Compared against all 20 existing mechanism records; the remaining 16 concern typography, identity, media trails, card arcs, camera moves, timelines, overlays or montage rather than a coupled caret reset. See research/expansion/gpt54-caret-reset/distinctness.json."
    ]
  },
  "source": {
    "film": "Interrupting and Adding Details in GPT-5.4 Thinking",
    "slug": "gpt54-thinking-interruptions",
    "url": "https://www.youtube.com/watch?v=qSHMlduU6Lw",
    "sha256": "bbd79235e848ce6d268ce076c8ede3dd5034088f01bd0cf8a6e0701271aee479",
    "fps": {"numerator": 30000, "denominator": 1001},
    "width": 1920,
    "height": 1080,
    "startFrame": 263,
    "endFrameExclusive": 285,
    "localMedia": "references/openai/corpus-2024-2026/source-media/qSHMlduU6Lw.mp4"
  },
  "canvas": {"width": 900, "height": 280, "background": "$stage"},
  "observations": [
    {
      "kind": "measured",
      "statement": "In the native crop [540,740,1440,1020), the caret is absent at source263..268, present at269, absent270..278, and present279..284. The isolated frame269 occupies PTS8.975..9.009s. Threshold support at269 is crop[37,92,39,114). Every frame was decoded and visually inspected in consecutive strips, with boundary pixels enlarged separately.",
      "sourceFrames": [263, 268, 269, 270, 278, 279, 284],
      "evidence": ["research/expansion/gpt54-caret-reset/source-inspection/extraction.json", "research/expansion/gpt54-caret-reset/measurements/source-measurements.json", "research/expansion/gpt54-caret-reset/measurements/caret-boundaries-2x.png"]
    },
    {
      "kind": "measured",
      "statement": "At270 the placeholder changes in place and the plus becomes lighter in the same adjacent-frame transition. Plus region minimum decoded luma changes13→185; the mode, mic and stop retain their geometry. The plus's smaller threshold support after270 is not evidence of a geometrical shrink.",
      "sourceFrames": [269, 270, 271, 279],
      "evidence": ["research/expansion/gpt54-caret-reset/measurements/source-measurements.json", "research/expansion/gpt54-caret-reset/source-inspection/consecutive-02.png", "research/expansion/gpt54-caret-reset/source-inspection/consecutive-03.png"]
    },
    {
      "kind": "estimate",
      "statement": "The rounded field is estimated at crop[14,71,885,188), radius30px. Its border, shadow, icon outlines and CSS text baselines are fits to decoded native pixels, not recovered source vectors or CSS. Source caret support is measured; its fractional CSS placement is a fit.",
      "sourceFrames": [263, 269, 270, 279, 284],
      "evidence": ["research/expansion/gpt54-caret-reset/measurements/measured-regions.png", "research/expansion/gpt54-caret-reset/measurements/source-measurements.json"]
    },
    {
      "kind": "implementation-choice",
      "statement": "Authoring canvas is the published study's explicit native900x280 crop, not a 16:9 re-layout or a replacement of the full conversation. Source x=crop x+540; source y=crop y+740. All visible functional controls, footer and lower art band remain. Two original palettes, text sets and original vector-gradient bands replace source content; no source image, logo, wording or demo data is a render input.",
      "sourceFrames": [263, 284],
      "evidence": ["project/examples/gpt54-caret-reset/README.md", "research/expansion/gpt54-caret-reset/source-inspection/extraction.json"]
    },
    {
      "kind": "unresolved",
      "statement": "Bundled Geist is a substitute; exact source font metrics, card shadow/radius and stationary icon contours need independent review. Lower source art has a maximum adjacent-frame mean RGB change of about0.152/255 within this interval; this does not resolve intentional motion. The replacement band is static. Do not count this draft as source-faithful until these differences and the crop scope are reviewed.",
      "sourceFrames": [263, 269, 270, 273, 279, 284],
      "evidence": ["research/expansion/gpt54-caret-reset/measurements/source-measurements.json", "project/examples/gpt54-caret-reset/README.md"]
    },
    {
      "kind": "implementation-choice",
      "statement": "The shared renderer retains22 frame identities at30000/1001fps. Source PTS are millisecond-quantized; its34ms single-frame pulse becomes one33.3667ms CFR frame. Native-PTS excerpt and explicit per-frame source/render mapping retain this sub-millisecond timestamp difference rather than calling the encoded timestamps identical.",
      "sourceFrames": [263, 269, 270, 279, 284],
      "evidence": ["research/expansion/gpt54-caret-reset/source-inspection/extraction.json", "research/expansion/gpt54-caret-reset/source-inspection/source-native-pts.mp4"]
    },
    {
      "kind": "measured",
      "statement": "Source263 native crop mean RGB across x100..799 at y187..196 is216.001,237.971,241,242.297,244.229,245,246,249,249,249.309; quiet backing is252.65. The v04 original was222,244,246,249,250,251,251,251,251,251 against251 backing. Source border intensity varies by edge: bottom216.001, top226.443, left223.625. These are decoded raster samples, not recovered CSS tokens.",
      "sourceFrames": [263],
      "evidence": ["research/expansion/gpt54-caret-reset/shadow-fit-v05/baseline-measurements.json"]
    },
    {
      "kind": "implementation-choice",
      "statement": "v05 changes only the persistent field's shadow to a short contact falloff plus a faint broad halo. Native CSS basis search was followed by full shared-Treatment research-clone H.264 renders in both palettes. The selected0 3px 6px/6% and0 6px 64px/3.5% black shadows fit backing-relative depth rather than forcing adaptation RGB to the source palette. All field geometry, layers, content, assets, frame spans and control positions are unchanged; these CSS values are an encoded-raster fit, not recovered source styling.",
      "sourceFrames": [263],
      "evidence": ["research/expansion/gpt54-caret-reset/shadow-fit-v05/fit-search.json", "research/expansion/gpt54-caret-reset/shadow-fit-v05/encoded-finalist-measurements.json", "research/expansion/gpt54-caret-reset/shadow-fit-v05/encoded-refinement-measurements.json"]
    },
    {
      "kind": "unresolved",
      "statement": "The opaque bottom border remains about6 decoded gray levels lighter than source in the original palette. Uniformly darkening its palette slot would worsen the already darker top border, so v05 leaves border colors and width intact. Top/side halo and codec residuals remain; profile fitting is not fidelity approval. v04's published minor finding remains open pending a fresh independent review of v05.",
      "sourceFrames": [263],
      "evidence": ["research/expansion/gpt54-caret-reset/shadow-fit-v05/encoded-refinement-measurements.json"]
    }
  ],
  "fields": {
    "placeholderBefore": {"kind": "text", "description": "Original empty-field hint before local7; 2–3 ASCII words, 5–16 characters, exactly one line; measured advance50–124px at18px Geist400. No entered text, newline, source copy or implied typing.", "minLength": 5, "maxLength": 16, "maxLines": 1, "exactLines": 1, "maxLineLength": 16, "pattern": "^[A-Za-z]+(?: [A-Za-z]+){1,2}$"},
    "placeholderAfter": {"kind": "text", "description": "Different original hint replacing the whole preceding hint at local7; 2–3 ASCII words, 5–13 characters; one line, advance40–100px. No fade, reflow or letter reveal.", "minLength": 5, "maxLength": 13, "maxLines": 1, "exactLines": 1, "maxLineLength": 13, "pattern": "^[A-Za-z]+(?: [A-Za-z]+){1,2}$"},
    "modeLabel": {"kind": "text", "description": "One original stationary control label, 5–8 ASCII letters; advance45–69px at17.5px Geist400. Keep icon and chevron positions fixed; not a claim about real product behavior.", "minLength": 5, "maxLength": 8, "maxLines": 1, "exactLines": 1, "exactWords": 1, "pattern": "^[A-Za-z]+$"},
    "disclosure": {"kind": "text", "description": "One-line original-specimen disclosure; 25–82 ASCII characters, advance250–604px at14px Geist400. Must identify illustrated/original content rather than a real product capture. Semantic truth is reviewer-checked.", "minLength": 25, "maxLength": 82, "maxLines": 1, "exactLines": 1, "maxLineLength": 82, "pattern": "^[A-Za-z0-9 .,:;()/-]+$"},
    "stageArt": {"kind": "image", "description": "Original stationary color band only; 900x62px or proportional higher resolution (450:31), contain, no text/branding/UI/animation. Visible at(0,218) for all22frames. Renderer verifies local bytes/dimensions/rights, not visual semantics.", "aspectRatio": {"numerator": 450, "denominator": 31}, "minimumWidth": 900, "minimumHeight": 62, "fit": "contain"},
    "stage": {"kind": "color", "description": "Opaque light stage hex; preserve separation from the paper field. Luminance relationships are documented review constraints, not enforced by the base ColorField type."},
    "paper": {"kind": "color", "description": "Opaque near-white field; same color throughout; no alpha-driven animation."},
    "border": {"kind": "color", "description": "Opaque subtle field outline; keep its1px thickness and visibility against stage/paper."},
    "placeholderInk": {"kind": "color", "description": "Opaque quiet hint color, shared by both hints. Must remain readable but less dark than the active plus."},
    "caretInk": {"kind": "color", "description": "Opaque medium-dark caret; visible against paper, same color for both returns. Never encode absence using transparent content."},
    "controlInk": {"kind": "color", "description": "Opaque dark plus-before, mic and stop ink; must be darker than mutedPlus. Fixed geometry, no per-frame palette substitution."},
    "mutedPlus": {"kind": "color", "description": "Opaque plus-after ink; lighter than controlInk but still visible. Starts simultaneously with placeholderAfter at local7."},
    "modeInk": {"kind": "color", "description": "Original accent for stationary mode icon/label/chevron. Do not use a branded source mark."},
    "stopWell": {"kind": "color", "description": "Opaque light stop-circle fill; preserve readable dark stop square and stationary41px circle."},
    "footerInk": {"kind": "color", "description": "Opaque readable disclosure color. No effects or motion; same placement throughout."}
  },
  "defaults": {
    "placeholderBefore": "Start a note",
    "placeholderAfter": "Add detail",
    "modeLabel": "Drafting",
    "disclosure": "Illustrated editor. Original content, not a product recording.",
    "stageArt": {"kind": "image", "path": "art/gpt54-caret-reset/lagoon.svg", "width": 900, "height": 62, "rights": "Original vector gradient authored for this draft; no source film pixels, branding or third-party assets."},
    "stage": "#fcfcfc", "paper": "#ffffff", "border": "#dedede", "placeholderInk": "#929292", "caretInk": "#686868", "controlInk": "#171717", "mutedPlus": "#b9b9b9", "modeInk": "#337f83", "stopWell": "#ededed", "footerInk": "#717171"
  },
  "adaptation": {
    "placeholderBefore": "Open a brief",
    "placeholderAfter": "Refine it",
    "modeLabel": "Working",
    "disclosure": "Original planning specimen. No live product behavior is represented.",
    "stageArt": {"kind": "image", "path": "art/gpt54-caret-reset/clay.svg", "width": 900, "height": 62, "rights": "Original vector gradient authored for the second content example; no source film pixels, branding or third-party assets."},
    "stage": "#fcfaf7", "paper": "#fffdfa", "border": "#ddd7ce", "placeholderInk": "#92877d", "caretInk": "#6d6056", "controlInk": "#342c26", "mutedPlus": "#bdb2a6", "modeInk": "#997343", "stopWell": "#eee8df", "footerInk": "#7b6f65"
  },
  "adaptationNotes": [
    "Both variants are original interface illustrations. Neither is an authentic Poe2 or ChatGPT demonstration.",
    "Replacement text, lower art and palette differ; geometry, active-state order, native-frame spans and all stationary controls are identical.",
    "The900x280 canvas is an explicit1:1 source-study crop. Do not claim it reproduces the full1920x1080 source scene or silently expand/crop it to a presentation ratio.",
    "Color relationships and image semantics are review constraints. Type/line/advance limits and local media provenance are mechanically checked; successful rendering does not verify semantics.",
    "No input builder or shared support changes are required. Custom Content must contain every declared field; begin with the example JSON."
  ],
  "invariants": [
    "Exactly22 source-native frames at30000/1001fps; localFrame=sourceFrame-263; no added holds in source comparisons.",
    "Caret off[0,6), on[6,7), off[7,16), on[16,22); stationary path at crop(37,92) with a 2x22px viewport and a 1.75x22px filled rectangle. Fractional edge coverage is an implementation fit, not recovered source vector geometry. Do not regularize the interrupted blink into a loop.",
    "Placeholder and plus ink switch together at local7 with no interpolation, fade or character reveal.",
    "Keep field, plus, mode icon/label/chevron, mic, stop circle/square, disclosure and lower art visible in their registered positions for the entire interval.",
    "All tracks are on the native local clock; no pointer, click ring, camera, reflow, typed content, narration or inferred input action.",
    "Source crop coordinates add(540,740) to recover full-source geometry. Geometry changes or a new aspect ratio require separate review.",
    "Use only original/permitted art and truthful original-specimen copy; never substitute source footage, source UI data or OpenAI branding."
  ],
  "unsupported": [
    "Arbitrary aspect ratios, responsive re-layout, moving caret endpoints, editable line wrapping or text entry; these are not this observed mechanism.",
    "Exact source font and vector contours are not recovered; Geist and original stationary icon paths are disclosed fits requiring review.",
    "The shared rational-fps renderer cannot encode the source container's irregular33/34ms PTS durations exactly. It preserves frame identity and nominal cadence; the measured quantization difference stays in the source map.",
    "The mechanism does not establish focus loss, interrupt implementation, a mouse click, keypress, application latency or sound.",
    "Semantic color contrast, truth of supplied text/art and exact visual fidelity require review; base field validation cannot establish them.",
    "No full-conversation recreation, final all-hands integration, independent review, approval, catalog update or publication is supplied by this draft."
  ],
  "entry": {"field": "interface", "description": "Stationary native crop with first hint, dark plus and absent caret; no entry animation.", "continuityKeys": ["native-composer-crop", "registered-field", "stationary-controls"]},
  "exit": {"field": "interface", "description": "Same crop and controls; replacement hint, lighter plus and visible caret. The source continues beyond this study; no finish or submit is inferred.", "continuityKeys": ["native-composer-crop", "registered-field", "stationary-controls"]},
  "neighbors": {"before": [], "after": [], "rule": "Source-window micro-study only. Use a reviewed explicit cut or matched native crop, never an implied full-scene continuity join. Surrounding source behavior is outside this recipe."},
  "layers": [
    {"kind": "image", "id": "original-stage-band", "slot": "stageArt", "fit": "contain", "start": 0, "end": 22, "x": 0, "y": 218, "width": 900, "height": 62},
    {"kind": "rect", "id": "persistent-field", "start": 0, "end": 22, "x": 14, "y": 71, "width": 871, "height": 117, "radius": 30, "fill": "$paper", "stroke": "$border", "strokeWidth": 1, "shadow": "0 3px 6px rgba(0,0,0,0.06), 0 6px 64px rgba(0,0,0,0.035)"},
    {"kind": "text", "id": "first-hint", "slot": "placeholderBefore", "start": 0, "end": 7, "x": 39, "y": 92, "width": 124, "height": 24, "fontSize": 18, "weight": 400, "lineHeight": 1.25, "color": "$placeholderInk", "lineWidthRanges": [{"min": 50, "max": 124}]},
    {"kind": "text", "id": "replacement-hint", "slot": "placeholderAfter", "start": 7, "end": 22, "x": 39, "y": 92, "width": 100, "height": 24, "fontSize": 18, "weight": 400, "lineHeight": 1.25, "color": "$placeholderInk", "lineWidthRanges": [{"min": 40, "max": 100}]},
    {"kind": "path", "id": "single-frame-caret", "start": 6, "end": 7, "x": 37, "y": 92, "width": 2, "height": 22, "path": "M0 0H1.75V22H0Z", "viewBox": [0, 0, 2, 22], "fill": "$caretInk"},
    {"kind": "path", "id": "returned-caret", "start": 16, "end": 22, "x": 37, "y": 92, "width": 2, "height": 22, "path": "M0 0H1.75V22H0Z", "viewBox": [0, 0, 2, 22], "fill": "$caretInk"},
    {"kind": "path", "id": "plus-active", "start": 0, "end": 7, "x": 38, "y": 147, "width": 17, "height": 17, "path": "M8.5 0.5V16.5M0.5 8.5H16.5", "viewBox": [0, 0, 17, 17], "fill": "none", "stroke": "$controlInk", "strokeWidth": 1.4},
    {"kind": "path", "id": "plus-muted", "start": 7, "end": 22, "x": 38, "y": 147, "width": 17, "height": 17, "path": "M8.5 0.5V16.5M0.5 8.5H16.5", "viewBox": [0, 0, 17, 17], "fill": "none", "stroke": "$mutedPlus", "strokeWidth": 1.4},
    {"kind": "path", "id": "stationary-mode-icon", "start": 0, "end": 22, "x": 78, "y": 144, "width": 18, "height": 21, "path": "M6 1H12M9 3A8 8 0 1 1 8.99 3M9 7V12L13 14", "viewBox": [0, 0, 18, 21], "fill": "none", "stroke": "$modeInk", "strokeWidth": 1.5},
    {"kind": "text", "id": "stationary-mode-label", "slot": "modeLabel", "start": 0, "end": 22, "x": 105, "y": 144, "width": 69, "height": 25, "fontSize": 17.5, "weight": 400, "lineHeight": 1.375, "color": "$modeInk", "lineWidthRanges": [{"min": 45, "max": 69}]},
    {"kind": "path", "id": "stationary-mode-chevron", "start": 0, "end": 22, "x": 178, "y": 152, "width": 10, "height": 6, "path": "M0.5 0.75L5 5.25L9.5 0.75", "viewBox": [0, 0, 10, 6], "fill": "none", "stroke": "$modeInk", "strokeWidth": 1.4},
    {"kind": "path", "id": "stationary-microphone", "start": 0, "end": 22, "x": 798, "y": 146, "width": 14, "height": 19, "path": "M7 1C5 1 4 2 4 4V8C4 12 10 12 10 8V4C10 2 9 1 7 1ZM1 8C1 16 13 16 13 8M7 14V18M4 18H10", "viewBox": [0, 0, 14, 19], "fill": "none", "stroke": "$controlInk", "strokeWidth": 1.4},
    {"kind": "ellipse", "id": "stationary-stop-well", "start": 0, "end": 22, "x": 832, "y": 135, "width": 41, "height": 41, "fill": "$stopWell"},
    {"kind": "rect", "id": "stationary-stop-square", "start": 0, "end": 22, "x": 846, "y": 149, "width": 13, "height": 13, "radius": 1.5, "fill": "$controlInk"},
    {"kind": "text", "id": "original-specimen-disclosure", "slot": "disclosure", "start": 0, "end": 22, "x": 148, "y": 197, "width": 604, "height": 20, "fontSize": 14, "weight": 400, "lineHeight": 1.25, "color": "$footerInk", "align": "center", "lineWidthRanges": [{"min": 250, "max": 604}]}
  ],
  "inspection": {
    "method": "Source-first visual inspection of all22 native crops and enlarged boundaries; actual local Chromium1x decoding with timestamped canvas callbacks. Draft original-content implementation uses only the shipped declarative renderer. Headless callback evidence is not a perceived moving-source review.",
    "limits": ["Inline preview automation was unavailable; independent continuous moving-source and adaptation review remain required.", "Source/native-PTS crop, full-source shared comparison and aligned crop comparisons have different spatial/clock roles; read the source map.", "Original copy, substitute Geist, icon contours, source-art residuals and card fits remain unaccepted differences.", "No completed-count credit, user acceptance or publication approval."],
    "boundaryFrames": [0, 5, 6, 7, 15, 16, 21],
    "intermediateFrames": [2, 9, 12, 18],
    "sourceEvidence": ["research/expansion/gpt54-caret-reset/source-inspection/extraction.json", "research/expansion/gpt54-caret-reset/measurements/source-measurements.json", "research/expansion/gpt54-caret-reset/source-playback-v02/playback.json", "research/expansion/gpt54-caret-reset/source-playback-reconciliation.json"]
  }
}
