{
  "title": "Designing the decisions",
  "asOf": "October 5, 2026",
  "timezone": "America/New_York",
  "decisions": [
    {
      "id": "start",
      "title": "Start with the actual portfolio",
      "kind": "Constraint",
      "date": "Sep 30",
      "request": "Style the existing case study from the portfolio and résumé.",
      "response": "Run the real site; use the supplied Figma Slides file as the design target.",
      "outcome": "Source material anchors the work.",
      "sources": [
        "archive:foundation"
      ],
      "artifact": "case-deck"
    },
    {
      "id": "deck",
      "title": "Change hierarchy after polish",
      "kind": "Pivot",
      "date": "Sep 30",
      "request": "Headings and text still feel wrong; do more layout and art direction.",
      "response": "Six recorded polish and art-direction passes across 44 active slides.",
      "outcome": "The composition and reading rhythm change, not only the surface style.",
      "sources": [
        "archive:deck-polish"
      ],
      "artifact": "case-deck"
    },
    {
      "id": "staff",
      "title": "Make the Staff story legible",
      "kind": "Constraint",
      "date": "Sep 30",
      "request": "Build a general sizzle portfolio for a hiring manager; represent Staff level.",
      "response": "A 13-slide portfolio prioritizes recent work, scope, ownership, and outcomes.",
      "outcome": "A separate 18-slide working edition adds navigation and marked evidence gaps.",
      "sources": [
        "archive:staff-story",
        "archive:interactive-deck"
      ],
      "artifact": "interactive-deck"
    },
    {
      "id": "five",
      "title": "Make review possible away from home",
      "kind": "Delivery",
      "date": "Oct 02, 19:05",
      "request": "Create five header directions from main; then ask for a hosted interactive preview.",
      "response": "Signature, Systems in motion, Field notes, Work first, Design × engineering.",
      "outcome": "Hosted review replaces a local-only handoff.",
      "sources": [
        "H19",
        "H292",
        "H307",
        "H397"
      ],
      "artifact": "first-five"
    },
    {
      "id": "identity",
      "title": "Carry the identity through exploration",
      "kind": "Constraint",
      "date": "Oct 02, 19:41",
      "request": "Likes 1, 2, 5. Keep recessed nav, the name at the top, existing content, and lightweight ASCII controls.",
      "response": "Five more: Studio, Masthead, Afterhours, Gallery, Margin.",
      "outcome": "Ten directions are printed into Paper, with desktop and mobile studies.",
      "sources": [
        "H406",
        "H438",
        "H851",
        "H1423"
      ],
      "artifact": "paper-headers"
    },
    {
      "id": "about",
      "title": "Explore below the hero",
      "kind": "Exploration",
      "date": "Oct 02, 21:39",
      "request": "Ten options, subagents and a jury; consider interaction design.",
      "response": "Ten about-section layouts and five interaction studies.",
      "outcome": "The review expands from static composition to behavior.",
      "sources": [
        "H1430",
        "H1461",
        "H1874",
        "H1876",
        "H2234"
      ],
      "artifact": "paper-about"
    },
    {
      "id": "comments",
      "title": "Turn comments into a new brief",
      "kind": "Pivot",
      "date": "Oct 02, 22:57",
      "request": "Praise clean biography and credentials; criticize small headings and color; request a letter interaction.",
      "response": "Three actionable comment edits are reported, then ten new directions after the clarification.",
      "outcome": "Facing pages, The two-column record, and Ink & daylight are the jury shortlist, not final user selections.",
      "sources": [
        "H2241",
        "H2522",
        "H2529",
        "H2889",
        "paper:9-saved-threads"
      ],
      "artifact": "paper-feedback"
    },
    {
      "id": "sync",
      "title": "Refresh the design source from main",
      "kind": "Delivery",
      "date": "Oct 03, 21:46",
      "request": "Pull the latest GitHub code and update options on a new Paper page.",
      "response": "The delivery records main at 8fd9f9b and ten updated studies.",
      "outcome": "Earlier review pages are preserved.",
      "sources": [
        "H2905",
        "H3168"
      ],
      "artifact": "paper-feedback"
    },
    {
      "id": "ownership",
      "title": "A valid link did not prove ownership",
      "kind": "Failure",
      "date": "Oct 03, 22:03",
      "request": "The file is not visible in the expected account.",
      "response": "The assistant acknowledges checking the link without checking ownership.",
      "outcome": "Original ownership resolution is not established in the preserved record; later work uses the user-supplied favorite file.",
      "sources": [
        "H3177",
        "H3189",
        "H3371",
        "H3380",
        "H3472"
      ],
      "artifact": "paper-feedback"
    },
    {
      "id": "fits",
      "title": "Fit a header to the preferred body",
      "kind": "Selection",
      "date": "Oct 04, 10:24",
      "request": "The supplied From the Notes composition is the favorite; show how the header fits.",
      "response": "Compact, Name-led, and Orbit stage studies, including mobile and ASCII-to-3D states.",
      "outcome": "The header/body relationship becomes the object of review.",
      "sources": [
        "H3521",
        "H4143"
      ],
      "artifact": "paper-fits"
    },
    {
      "id": "preview",
      "title": "Use real media in the coded preview",
      "kind": "Delivery",
      "date": "Oct 04, 15:58",
      "request": "Create a preview branch; include real photos and vectors.",
      "response": "A coded name-led homepage reuses the live media collections.",
      "outcome": "Still-image approval becomes an interactive review.",
      "sources": [
        "H4150",
        "H4169",
        "H4480"
      ],
      "artifact": "preview"
    },
    {
      "id": "nav",
      "title": "Make the navigation a site component",
      "kind": "Engineering",
      "date": "Oct 04, 16:23",
      "request": "The new navigation does not work across other pages.",
      "response": "Move the recessed navigation into the shared layout. Add four 28px visual treatments.",
      "outcome": "User selects option 3, Quiet index; SVG and rcweston remain in the identity.",
      "sources": [
        "H4487",
        "H4953",
        "H4976",
        "H5268",
        "H5400"
      ],
      "artifact": "nav"
    },
    {
      "id": "lockup",
      "title": "Keep context and social links",
      "kind": "Constraint",
      "date": "Oct 04, 18:16",
      "request": "Retain where I am at and socials; make the lockup feel designed; imply current status with a dot.",
      "response": "Restore role/socials, compose the signature, then replace the label with a status pulse.",
      "outcome": "The content is retained while hierarchy remains under review.",
      "sources": [
        "H5407",
        "H5529",
        "H5684"
      ],
      "artifact": "headers"
    },
    {
      "id": "six",
      "title": "Test the name and character together",
      "kind": "Exploration",
      "date": "Oct 04, 18:42",
      "request": "The dual stack does not work; explore three layouts plus three including the character.",
      "response": "Six full header lockups.",
      "outcome": "The settings button becomes the next unresolved relationship.",
      "sources": [
        "H5830",
        "H6025"
      ],
      "artifact": "headers"
    },
    {
      "id": "sameness",
      "title": "Reject variations of the same lockup",
      "kind": "Pivot",
      "date": "Oct 04, 18:56",
      "request": "The settings button floats. Ten control options still feel like the same composition.",
      "response": "Ten complete header structures follow, carrying aspects liked in studies 2 and 4.",
      "outcome": "Exploration changes the underlying layout, not only button placement.",
      "sources": [
        "H6032",
        "H6254",
        "H6261",
        "H6272",
        "H6306",
        "H6552"
      ],
      "artifact": "controls"
    },
    {
      "id": "inline",
      "title": "Make the controls local and unbranded",
      "kind": "Engineering",
      "date": "Oct 04, 19:54",
      "request": "Do not label the object Orbit; use a button and the inline interaction rather than a modal.",
      "response": "Controls unfold within the frame, with responsive packing and keyboard dismissal.",
      "outcome": "Internal code names remain; visible controls describe actions.",
      "sources": [
        "H6308",
        "H6552"
      ],
      "artifact": "compositions"
    },
    {
      "id": "families",
      "title": "Explore three promising families",
      "kind": "Exploration",
      "date": "Oct 04, 20:38",
      "request": "Iterate ten times each on option 2, W2, and W3.",
      "response": "Twelve round-three studies lead to thirty round-four variations.",
      "outcome": "Assistant shortlist: 02-06, W2-07, W3-01. This is not the eventual selection.",
      "sources": [
        "H6816",
        "H6823",
        "H7223"
      ],
      "artifact": "round-four"
    },
    {
      "id": "w309",
      "title": "Select the photographic contact strip",
      "kind": "Selection",
      "date": "Oct 04, 22:20",
      "request": "Move forward with W3-09; preserve all options in a repo folder under admin.",
      "response": "The homepage gets a dedicated ContactStripHeader; the comparison implementations stay available.",
      "outcome": "W3-09 is the selected preview direction.",
      "sources": [
        "H7230",
        "H7425"
      ],
      "artifact": "repository"
    },
    {
      "id": "scope",
      "title": "Freeze the larger composition",
      "kind": "Constraint",
      "date": "Oct 04, 22:33",
      "request": "Ask for two independent media players, then pause broader home layout changes.",
      "response": "Subsequent edits are localized to content, controls, alignment, and media settings.",
      "outcome": "The final preview has one Shots/Morphs reel plus three header photos. Two independent players are not delivered.",
      "sources": [
        "H7432",
        "H7464",
        "H7545"
      ],
      "artifact": "preview"
    },
    {
      "id": "admin",
      "title": "Make the photographs maintainable",
      "kind": "Engineering",
      "date": "Oct 04, 22:43",
      "request": "Round corners like the character frame; allow Shots selection or a custom upload from admin.",
      "response": "Three configurable slots, authenticated save/upload handlers, image validation and per-slot fallbacks.",
      "outcome": "Code is implemented. Signed-in upload/save browser verification remains outstanding in the delivery record.",
      "sources": [
        "H7652",
        "H7671",
        "H7932"
      ],
      "artifact": "header-code"
    },
    {
      "id": "reel",
      "title": "Reduce the media chrome",
      "kind": "Refinement",
      "date": "Oct 04, 22:44",
      "request": "Call modes Shots and Morphs, default to Morphs, remove the counter and caption.",
      "response": "The mode-switchable reel is retained; visible counters and redundant overlay text are removed.",
      "outcome": "Accessible slide descriptions and playback controls remain in code.",
      "sources": [
        "H7684",
        "H7704",
        "H8149",
        "H8246"
      ],
      "artifact": "reel-code"
    },
    {
      "id": "role",
      "title": "Select Compact stack",
      "kind": "Selection",
      "date": "Oct 04, 23:06",
      "request": "Four role options; NYC can help. Choose option 1 and align the height.",
      "response": "Compact stack replaces the prior role line; logo, role and location share a vertical structure.",
      "outcome": "User choice differs from the assistant recommendation of Role first.",
      "sources": [
        "H7939",
        "H7958",
        "H8246",
        "H8253",
        "H8270",
        "H8360"
      ],
      "artifact": "role"
    },
    {
      "id": "remove",
      "title": "Remove secondary interactions and duplicate content",
      "kind": "Refinement",
      "date": "Oct 04, 23:14",
      "request": "Remove the letterform/sign-off, optics caption, and lower social line. Move How I work into smaller bullets.",
      "response": "The illustration retains a recessed play/pause control; the work bullets follow the biography.",
      "outcome": "The page has fewer competing blocks.",
      "sources": [
        "H8036",
        "H8047",
        "H8367"
      ],
      "artifact": "preview"
    },
    {
      "id": "years",
      "title": "Correct the labels and experience dates",
      "kind": "Refinement",
      "date": "Oct 04, 23:16",
      "request": "Use Education; JLL 2016–2019; Traversal 2025–2026. Rename the chart Exploration.",
      "response": "Apply the later explicit correction over the earlier instruction to match the reference exactly.",
      "outcome": "The decision record preserves both the initial direction and its correction.",
      "sources": [
        "H8073",
        "H8075",
        "H7509",
        "H7598"
      ],
      "artifact": "preview"
    },
    {
      "id": "grid",
      "title": "Use one grid and a quieter principle marker",
      "kind": "Refinement",
      "date": "Oct 04, 23:36",
      "request": "Align headings to the paragraph column, add vertical space, improve company/education hover states, use Ethos and hexagons.",
      "response": "One shared grid spans biography, credentials, activity and Ethos; the principles use two columns at desktop.",
      "outcome": "This is the final selected preview checkpoint at a147b2d.",
      "sources": [
        "H8389",
        "H8532",
        "H8619",
        "H8632",
        "H8658",
        "H8675",
        "H8688",
        "H8777",
        "H8905"
      ],
      "artifact": "preview"
    },
    {
      "id": "release",
      "title": "Release the approved homepage",
      "kind": "Delivery",
      "date": "Oct 05, 00:59",
      "request": "Ship it; the case-study deployment did not include the homepage.",
      "response": "Preserve the published article while syncing and merging homepage PR 88.",
      "outcome": "Production deployment Ready; the custom domain visibly shows W3-09, Morphs, corrected dates, and the shared lower-page grid.",
      "sources": [
        "PR88",
        "c719fa1"
      ],
      "artifact": "pr"
    }
  ],
  "tradeoffs": [
    {
      "id": "navigation",
      "title": "Shared navigation across routes",
      "intent": "The same recessed navigation should work throughout the site.",
      "choice": "Render it from the shared layout, derive active state from the pathname, and show pending navigation feedback.",
      "cost": "A shared component affects every public route, so scroll behavior, nested paths, hidden routes, and the Storybook link mock become part of the change.",
      "evidence": "The integration and mock fix are in separate commits; Quiet index is an explicit user selection.",
      "source": "core/layout/Navigation/RecessedNavigation.tsx",
      "line": 1,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/core/layout/Navigation/RecessedNavigation.tsx#L1"
    },
    {
      "id": "loading",
      "title": "Immediate identity before heavy rendering",
      "intent": "Keep the character in the opening without waiting for its full renderer.",
      "choice": "Show static ASCII first; warm the interactive character on idle or pointer, focus, and touch intent. Suppress speculative warming on Data Saver and 2G; queue activation while loading.",
      "cost": "More loading and activation states to manage. On constrained connections, the interactive response may arrive later.",
      "evidence": "Verified in useWarmUp and HeroOrbit. This strategy was inherited from work already merged into main; no fresh speed improvement is claimed.",
      "source": "core/hooks/useWarmUp.ts",
      "line": 1,
      "origin": "Inherited from main",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/core/hooks/useWarmUp.ts#L1"
    },
    {
      "id": "controls",
      "title": "An attached control instead of a modal",
      "intent": "The settings button should belong to the object and stay unbranded.",
      "choice": "Use an inline dock. ResizeObserver switches to a 2 by 2 arrangement in narrow frames; hidden controls are inert; Escape closes the group and restores focus.",
      "cost": "The frame must reserve usable space and coordinate open state, focus, animation and resize behavior. The visual chrome is compact while the control slots remain 44px.",
      "evidence": "Explicit interaction preference plus implementation. Reduced-motion users get zero-duration transitions.",
      "source": "app/header-compositions/InlinePortraitControls.tsx",
      "line": 13,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/header-compositions/InlinePortraitControls.tsx#L13"
    },
    {
      "id": "reuse",
      "title": "Change composition without forking behavior",
      "intent": "Explore many arrangements of one interactive character.",
      "choice": "HeroOrbit exposes stage and settings through renderLayout; the selected header consumes that interface.",
      "cost": "The layout API must carry state and actions cleanly. Changes to the shared controller still require checking more than one composition.",
      "evidence": "ContactStripHeader uses the shared controller and a dedicated layout; the exploration gallery remains separate.",
      "source": "app/ContactStripHeader.tsx",
      "line": 1,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/ContactStripHeader.tsx#L1"
    },
    {
      "id": "media",
      "title": "Keep the media range without running every scene",
      "intent": "Retain the existing shots and generative work, with playback and advancement controls.",
      "choice": "Mount photos near the active slide, run only the active mode’s timer, pause offscreen and on hover/focus, and respect reduced motion.",
      "cost": "The first visit to a new image can still need loading. Generative scenes use arrow keys, so advancing that mode uses Shift plus arrows.",
      "evidence": "HomeShowreel encodes the visibility, motion and keyboard behavior. There is one mode-switchable player, not two independent players.",
      "source": "app/HomeShowreel.tsx",
      "line": 25,
      "origin": "Homepage branch and reused reel behavior",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/HomeShowreel.tsx#L25"
    },
    {
      "id": "editing",
      "title": "A curated composition with editable media",
      "intent": "Let the owner select existing Shots or upload custom header images.",
      "choice": "Keep exactly three image slots with source and alt text. Validate sources and selected shots, reuse the image ingest pipeline, store the selection, then revalidate home on save.",
      "cost": "Authentication, Blob storage, deletion cases, a 4MB upload limit, and fallback content become part of maintaining a visual layout. Uploading and publishing a selection are separate actions.",
      "evidence": "API and data code verified. The earlier delivery explicitly left signed-in upload/save browser verification outstanding.",
      "source": "app/api/admin/home-header-images/route.ts",
      "line": 13,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/api/admin/home-header-images/route.ts#L13"
    },
    {
      "id": "grid",
      "title": "A common grid that relaxes on small screens",
      "intent": "Align the credentials, activity and principles to the biography column.",
      "choice": "Use the same desktop label/content tracks and spacing. Stack the tracks and the Ethos columns at smaller breakpoints.",
      "cost": "The desktop alignment cannot be preserved literally on a narrow screen. Reflow changes density and reading rhythm to keep the content usable.",
      "evidence": "TimelessHome.module.css contains the common grid and breakpoint rules; the final screenshot shows the selected desktop result.",
      "source": "app/TimelessHome.module.css",
      "line": 1,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/TimelessHome.module.css#L1"
    },
    {
      "id": "archive",
      "title": "Preserve alternatives without shipping the gallery as home",
      "intent": "Keep every coded direction available through admin after choosing W3-09.",
      "choice": "Use a dedicated selected header and retain comparison routes with an admin index. Comparison pages are noindex.",
      "cost": "The alternatives still occupy repository and route surface and need clear labeling. The admin index needs authenticated review.",
      "evidence": "The repository index declares the selected direction and earlier collections. Noindex is not access control.",
      "source": "app/admin/design-repository/repository.ts",
      "line": 1,
      "origin": "Homepage branch",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/admin/design-repository/repository.ts#L1"
    }
  ],
  "artifacts": [
    {
      "id": "case-deck",
      "title": "Case study deck",
      "type": "Figma Slides",
      "description": "44 active slides; six recorded polish and art-direction passes.",
      "url": "https://www.figma.com/slides/J63yzy3b47YgCwzHDT9578",
      "status": "Recorded artifact"
    },
    {
      "id": "staff-deck",
      "title": "Staff portfolio",
      "type": "Figma Slides",
      "description": "13-slide summary of recent work and Staff-level scope.",
      "url": "https://www.figma.com/slides/31hzZOitRT1VWssAUGkJWn",
      "status": "Recorded artifact"
    },
    {
      "id": "interactive-deck",
      "title": "Interactive working edition",
      "type": "Figma Slides",
      "description": "18 slides with navigation and explicit evidence/media gaps.",
      "url": "https://www.figma.com/slides/OzRXRM7DILDGdH7yLb3LZ0",
      "status": "Recorded artifact"
    },
    {
      "id": "first-five",
      "title": "First five openings",
      "type": "Saved image",
      "description": "Original comparison sheet, before the stronger name-led constraint.",
      "url": "/process-case-study/assets/first-five.jpg",
      "status": "Preserved locally"
    },
    {
      "id": "paper-headers",
      "title": "Ten homepage directions",
      "type": "Paper",
      "description": "Desktop and mobile prints of the two initial rounds.",
      "url": "https://app.paper.design/file/01M3ZMRJEP5940M9GRHP2HY3TV",
      "status": "Recorded link"
    },
    {
      "id": "paper-about",
      "title": "Below the hero",
      "type": "Paper",
      "description": "Ten layouts, five interaction studies, and nine preserved comments.",
      "url": "https://app.paper.design/file/01M3ZQ2A9VKVN324XBQ9RS08JD",
      "status": "Recorded link"
    },
    {
      "id": "paper-feedback",
      "title": "Ten from feedback",
      "type": "Paper",
      "description": "The later main-synced page; the ownership mismatch belongs to this stage.",
      "url": "https://app.paper.design/file/01M3ZWZPXAEM36M054ES0C06KP/p-2-0",
      "status": "Ownership unresolved in record"
    },
    {
      "id": "paper-fits",
      "title": "Preferred body and three header fits",
      "type": "Paper",
      "description": "The user-supplied From the Notes file and the next header studies.",
      "url": "https://app.paper.design/file/01M42BH9BB1W9TMRKD11PD9ZTD/p-3-2/3RP-2",
      "status": "User-supplied destination"
    },
    {
      "id": "nav",
      "title": "Four navigation concepts",
      "type": "Interactive",
      "description": "Quiet index is selected.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/nav-concepts",
      "status": "Preserved in preview"
    },
    {
      "id": "headers",
      "title": "Six identity layouts",
      "type": "Interactive",
      "description": "Name, role, social links and character compositions.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/header-concepts",
      "status": "Preserved in preview"
    },
    {
      "id": "controls",
      "title": "Ten control studies",
      "type": "Interactive",
      "description": "The round rejected for retaining the same lockup.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/orbit-controls",
      "status": "Rejected as a direction"
    },
    {
      "id": "compositions",
      "title": "Ten complete compositions",
      "type": "Interactive",
      "description": "Structural changes with unbranded inline controls.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/header-compositions",
      "status": "Preserved in preview"
    },
    {
      "id": "round-three",
      "title": "Twelve header studies",
      "type": "Interactive",
      "description": "Three families and three wild cards.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/header-round-three",
      "status": "Preserved in preview"
    },
    {
      "id": "round-four",
      "title": "Thirty family variations",
      "type": "Interactive",
      "description": "Ten each for Facing pages, Studio index, and Photographic opening.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/header-round-four?family=all",
      "status": "W3-09 selected"
    },
    {
      "id": "role",
      "title": "Four role lockups",
      "type": "Interactive",
      "description": "Compact stack is selected.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/arca-layouts",
      "status": "Option 01 selected"
    },
    {
      "id": "repository",
      "title": "Design repository",
      "type": "Admin",
      "description": "The selected direction and earlier coded collections.",
      "url": "https://portfolio2026-git-codex-timeless-or-fb2d19-rcweston90s-projects.vercel.app/admin/design-repository",
      "status": "Sign-in required"
    },
    {
      "id": "preview",
      "title": "Selected homepage",
      "type": "Interactive",
      "description": "The approved W3-09 composition with the subsequent full-page refinements.",
      "url": "https://www.rcweston.com/",
      "status": "Live · October 5, 2026"
    },
    {
      "id": "immutable",
      "title": "Recorded deployment",
      "type": "Interactive",
      "description": "Immutable deployment associated with selected commit a147b2d.",
      "url": "https://portfolio2026-hxzy5n5m0-rcweston90s-projects.vercel.app",
      "status": "Recorded checkpoint"
    },
    {
      "id": "pr",
      "title": "Homepage PR 88",
      "type": "GitHub",
      "description": "Selected homepage merged into main on October 5, 2026.",
      "url": "https://github.com/rcweston90/portfolio2026/pull/88",
      "status": "Merged · production verified"
    },
    {
      "id": "header-code",
      "title": "Header media implementation",
      "type": "Code",
      "description": "Selected header and admin image configuration.",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/ContactStripHeader.tsx",
      "status": "Pinned code"
    },
    {
      "id": "reel-code",
      "title": "Shots and Morphs implementation",
      "type": "Code",
      "description": "Mode, playback, offscreen and keyboard behavior.",
      "url": "https://github.com/rcweston90/portfolio2026/blob/a147b2d2494dc03aa21981c3e0330c0a5ae79505/app/HomeShowreel.tsx",
      "status": "Pinned code"
    }
  ],
  "sourcePolicy": "Recorded feedback and selections are distinguished from retrospective interpretation. Full evidence stays in the personal workspace.",
  "publication": {
    "url": "https://rcweston.com/process-case-study",
    "publishedDate": "2026-10-05",
    "scope": "Expanded visual history. Approved homepage merged in PR 88 and verified live on October 5, 2026.",
    "homepageMerge": "c719fa1c0c5c0361973eaf32f11fa0d6ad9008fb"
  },
  "edition": 2,
  "requests": [
    {
      "id": "H19",
      "date": "2026-10-02T23:05:25.629Z",
      "text": "create a new branch on main and i want you to give 4-5 directions for the home page header",
      "imageCount": 0
    },
    {
      "id": "H292",
      "date": "2026-10-02T23:30:31.817Z",
      "text": "I’m not at home",
      "imageCount": 0
    },
    {
      "id": "H307",
      "date": "2026-10-02T23:31:10.641Z",
      "text": "Question: Would you prefer a Figma review in your personal Portfolio workspace, or a hosted preview where you can try the interactions?\nAnswer: Hosted interactive preview",
      "imageCount": 0
    },
    {
      "id": "H406",
      "date": "2026-10-02T23:41:01.142Z",
      "text": "1-2-5 are the most interesting\n\nI want to keep the ui feel of the nav being pushed in so that should carry over as this design scales. I also want to keep all the content in home ( below the hero image ) as is today. The layout can adjust but content should carry over and feel free to add. On 5 I really liked the idea of using my rotating ascii thing as the object and giving some light weight controls to customize\n\nLargely explore this with 5 more directions. Make this not feel vibe coded",
      "imageCount": 0
    },
    {
      "id": "H438",
      "date": "2026-10-02T23:42:29.207Z",
      "text": "Keep my name at the top. It’s a portfolio landing page for me",
      "imageCount": 0
    },
    {
      "id": "H851",
      "date": "2026-10-03T00:57:45.730Z",
      "text": "Print every exploration in a new paper file",
      "imageCount": 0
    },
    {
      "id": "H1430",
      "date": "2026-10-03T01:39:59.818Z",
      "text": "Riff on this section and give ten options of varying design",
      "imageCount": 1
    },
    {
      "id": "H1461",
      "date": "2026-10-03T01:41:33.449Z",
      "text": "Spend subagents and jury on this. Paste to paper",
      "imageCount": 0
    },
    {
      "id": "H1874",
      "date": "2026-10-03T02:09:55.277Z",
      "text": "Think about how this can feel more designed",
      "imageCount": 0
    },
    {
      "id": "H1876",
      "date": "2026-10-03T02:09:55.287Z",
      "text": "Interaction design",
      "imageCount": 0
    },
    {
      "id": "H2241",
      "date": "2026-10-03T02:57:50.550Z",
      "text": "I left comments",
      "imageCount": 0
    },
    {
      "id": "H2529",
      "date": "2026-10-03T03:25:54.179Z",
      "text": "Sorry. I want you to take my feedback and generate 10 more",
      "imageCount": 0
    },
    {
      "id": "H2905",
      "date": "2026-10-04T01:46:14.790Z",
      "text": "Pull down the latest from GitHub and update the options in paper on a new page",
      "imageCount": 0
    },
    {
      "id": "H3177",
      "date": "2026-10-04T02:03:39.751Z",
      "text": "Where in paper is this",
      "imageCount": 0
    },
    {
      "id": "H3189",
      "date": "2026-10-04T02:05:22.190Z",
      "text": "It’s not there",
      "imageCount": 1
    },
    {
      "id": "H3371",
      "date": "2026-10-04T02:24:11.832Z",
      "text": "youre making this in a new paper account - not mine",
      "imageCount": 0
    },
    {
      "id": "H3380",
      "date": "2026-10-04T02:24:20.376Z",
      "text": "[https://app.paper.design/file/01M3ZWZPXAEM36M054ES0C06KP/p-2-0](https://app.paper.design/file/01M3ZWZPXAEM36M054ES0C06KP/p-2-0) this is the link",
      "imageCount": 0
    },
    {
      "id": "H3521",
      "date": "2026-10-04T14:24:53.938Z",
      "text": "this is my favorite compliantion [https://app.paper.design/file/01M42BH9BB1W9TMRKD11PD9ZTD/p-2-0/38T-1](https://app.paper.design/file/01M42BH9BB1W9TMRKD11PD9ZTD/p-2-0/38T-1) but i want to see how the header fits on thsi",
      "imageCount": 0
    },
    {
      "id": "H4150",
      "date": "2026-10-04T19:58:02.036Z",
      "text": "ok make a preview branc for me to review",
      "imageCount": 0
    },
    {
      "id": "H4169",
      "date": "2026-10-04T19:58:52.960Z",
      "text": "actually - i would like to have teh show real ( photos and vectors ) included - can you confirm thsoe fit",
      "imageCount": 0
    },
    {
      "id": "H4487",
      "date": "2026-10-04T20:23:11.083Z",
      "text": "this is better but we still need to figure out the top heading section and how that new nav works across other pages ( it doesnt right now )",
      "imageCount": 0
    },
    {
      "id": "H4953",
      "date": "2026-10-04T20:56:27.596Z",
      "text": "i want the nav inputs more minimal ( 28px? ) and for the ui to feel more pushed in - i also want my svg to still be in the top left hand corner and for it to read rcweston next to it ( at least before scroll )",
      "imageCount": 0
    },
    {
      "id": "H4976",
      "date": "2026-10-04T20:59:59.019Z",
      "text": "open to ideas here and woud like to see concepts",
      "imageCount": 0
    },
    {
      "id": "H5268",
      "date": "2026-10-04T21:11:09.555Z",
      "text": "option 3",
      "imageCount": 0
    },
    {
      "id": "H5407",
      "date": "2026-10-04T22:16:43.682Z",
      "text": "i want to keep the 'where i am at' and social icons in the hader",
      "imageCount": 0
    },
    {
      "id": "H5529",
      "date": "2026-10-04T22:26:41.638Z",
      "text": "make this lock up feel 'designed",
      "imageCount": 0
    },
    {
      "id": "H5539",
      "date": "2026-10-04T22:26:47.838Z",
      "text": "[Image-only feedback; described in the linked decision record.]",
      "imageCount": 1
    },
    {
      "id": "H5684",
      "date": "2026-10-04T22:36:03.105Z",
      "text": "Do something different for 'currently' like a pin or flashing dot .. i dont want to say 'here' but infer it",
      "imageCount": 0
    },
    {
      "id": "H5830",
      "date": "2026-10-04T22:42:51.453Z",
      "text": "I feel like the dual stack doesnt work - can you mock 3 options of the layout ... i would ideally like to get the orbit icon in here as well - do three more explorations to cover that",
      "imageCount": 1
    },
    {
      "id": "H6032",
      "date": "2026-10-04T22:56:12.860Z",
      "text": "i like thes all but a big issue is that the settings button doesnt fit in the layout - it feels like it floats, explore 10 options into how this can be achieved better",
      "imageCount": 0
    },
    {
      "id": "H6261",
      "date": "2026-10-04T23:45:29.775Z",
      "text": "i hate all of this - mainly bc its the same lock up",
      "imageCount": 0
    },
    {
      "id": "H6272",
      "date": "2026-10-04T23:45:48.945Z",
      "text": "2 is interesting in the designed nature of it",
      "imageCount": 0
    },
    {
      "id": "H6306",
      "date": "2026-10-04T23:54:54.243Z",
      "text": "4 was cool",
      "imageCount": 0
    },
    {
      "id": "H6308",
      "date": "2026-10-04T23:54:54.248Z",
      "text": "also dont call it orbit - i dont want it branded for the end user - just a button for the controls to appear - i also dont like the modal - i like the nice ixd we came up with",
      "imageCount": 0
    },
    {
      "id": "H6823",
      "date": "2026-10-05T01:46:48.375Z",
      "text": "iterate 10 times on the option in 2, w2, and w3 ( 10 each )",
      "imageCount": 0
    },
    {
      "id": "H7230",
      "date": "2026-10-05T02:20:17.661Z",
      "text": "keep all of these options in a repo folder on admin but lets move forward with w3-o9",
      "imageCount": 0
    },
    {
      "id": "H7432",
      "date": "2026-10-05T02:33:43.348Z",
      "text": "ok - so i want this to be just shots and vectors ( include toggles to play and advance ) on each",
      "imageCount": 1
    },
    {
      "id": "H7464",
      "date": "2026-10-05T02:34:15.668Z",
      "text": "Question: For the three pictured frames, should each switch between Shots and Vectors, or would you prefer one dedicated Shots player and one Vectors player? I’ll keep the character beside them unless you want that removed too.\nAnswer: Two players: Shots and Vectors",
      "imageCount": 0
    },
    {
      "id": "H7466",
      "date": "2026-10-05T02:34:15.676Z",
      "text": "do not keep this",
      "imageCount": 1
    },
    {
      "id": "H7484",
      "date": "2026-10-05T02:34:47.389Z",
      "text": "make sure the corners are rounded like the orbit",
      "imageCount": 0
    },
    {
      "id": "H7509",
      "date": "2026-10-05T02:36:33.842Z",
      "text": "replace this  with",
      "imageCount": 2
    },
    {
      "id": "H7545",
      "date": "2026-10-05T02:37:58.063Z",
      "text": "i want to pause on any changes - make the updates from here to here but dont change anything about the larger home layout",
      "imageCount": 2
    },
    {
      "id": "H7598",
      "date": "2026-10-05T02:40:50.674Z",
      "text": "Question: Two dates in the reference differ from your published résumé: Traversal shows 2024–2026 versus 2025–2026, and JLL shows 2019–2016 versus 2017–2019. Which years should I use?\nAnswer: Use the reference exactly",
      "imageCount": 0
    },
    {
      "id": "H7652",
      "date": "2026-10-05T02:43:10.093Z",
      "text": "i want to move the socials to be inline but spread apart from Charlie Weston in the h1 and i want arca / design enger ... to be on two lines as to add vertical height",
      "imageCount": 1
    },
    {
      "id": "H7671",
      "date": "2026-10-05T02:44:29.416Z",
      "text": "make sure that the corners of the images match the orbit ui ... and make sure that these are custom from the admin portal - i should be able to populate from what is on the photos page or custom upload",
      "imageCount": 1
    },
    {
      "id": "H7684",
      "date": "2026-10-05T02:44:57.441Z",
      "text": "call this 'shots' and 'morphs' ... have morphs be the default ... and remove the 01 / counter",
      "imageCount": 1
    },
    {
      "id": "H7704",
      "date": "2026-10-05T02:45:38.779Z",
      "text": "remove the 'photos and generative .... through my lens' line ... and make sure the hyperlinks have a WCAG hover state",
      "imageCount": 1
    },
    {
      "id": "H7939",
      "date": "2026-10-05T03:06:35.381Z",
      "text": "i want to see 4 ways the arca / design eng can be blocked out better here",
      "imageCount": 1
    },
    {
      "id": "H7958",
      "date": "2026-10-05T03:07:21.188Z",
      "text": "if helpful, add a line with a dot about being in nyc",
      "imageCount": 0
    },
    {
      "id": "H8036",
      "date": "2026-10-05T03:14:14.808Z",
      "text": "remove this for now",
      "imageCount": 1
    },
    {
      "id": "H8047",
      "date": "2026-10-05T03:14:37.868Z",
      "text": "remove 'evolving optics' and move 'pause' to be here ( and use the icon button thats pressed in )",
      "imageCount": 1
    },
    {
      "id": "H8073",
      "date": "2026-10-05T03:16:47.087Z",
      "text": "call background \"education\"\n\nswap 2016 and 2019 in JLL\n\nmake Traversal 2025-2026",
      "imageCount": 1
    },
    {
      "id": "H8075",
      "date": "2026-10-05T03:16:47.115Z",
      "text": "change github activity to 'exploration' and make the chart to be inline with the title",
      "imageCount": 1
    },
    {
      "id": "H8138",
      "date": "2026-10-05T03:20:03.081Z",
      "text": "where shoudl i review the work?",
      "imageCount": 0
    },
    {
      "id": "H8149",
      "date": "2026-10-05T03:20:38.217Z",
      "text": "remove this from the photo block",
      "imageCount": 1
    },
    {
      "id": "H8151",
      "date": "2026-10-05T03:20:38.221Z",
      "text": "404",
      "imageCount": 0
    },
    {
      "id": "H8253",
      "date": "2026-10-05T03:25:05.809Z",
      "text": "1",
      "imageCount": 0
    },
    {
      "id": "H8270",
      "date": "2026-10-05T03:26:07.234Z",
      "text": "make sure the height lines up",
      "imageCount": 1
    },
    {
      "id": "H8367",
      "date": "2026-10-05T03:33:08.537Z",
      "text": "remove the social line here and add the how i work as bullets below the 'accors design ive' paragraph ( but make tis smaller )",
      "imageCount": 1
    },
    {
      "id": "H8389",
      "date": "2026-10-05T03:36:26.170Z",
      "text": "and then help square this up so that the headins all line up - this looks bad",
      "imageCount": 0
    },
    {
      "id": "H8391",
      "date": "2026-10-05T03:36:26.178Z",
      "text": "[Image-only feedback; described in the linked decision record.]",
      "imageCount": 1
    },
    {
      "id": "H8532",
      "date": "2026-10-05T03:44:52.209Z",
      "text": "add vertical space to this so it breathes - come up with 3-4 words that 'design philopsy' could be but i want it to be a single word that starts with an E",
      "imageCount": 1
    },
    {
      "id": "H8619",
      "date": "2026-10-05T03:48:21.717Z",
      "text": "imrpove this hover state",
      "imageCount": 1
    },
    {
      "id": "H8632",
      "date": "2026-10-05T03:49:10.315Z",
      "text": "and for the education",
      "imageCount": 0
    },
    {
      "id": "H8658",
      "date": "2026-10-05T03:50:19.223Z",
      "text": "use ethos",
      "imageCount": 0
    },
    {
      "id": "H8675",
      "date": "2026-10-05T03:51:06.494Z",
      "text": "align all of this be follow the column witdth of the paragraphs above",
      "imageCount": 1
    },
    {
      "id": "H8688",
      "date": "2026-10-05T03:52:16.446Z",
      "text": "apply it to 'ethos' and make those columns",
      "imageCount": 0
    },
    {
      "id": "H8777",
      "date": "2026-10-05T03:56:45.787Z",
      "text": "make these hexagons not numbers",
      "imageCount": 1
    },
    {
      "id": "H8974",
      "date": "2026-10-05T04:05:09.755Z",
      "text": "Question: For the public case study, which audience should lead? I’ll keep the full decision and artifact record alongside it either way.\nAnswer: Both equally — balance process lessons with portfolio evidence",
      "imageCount": 0
    },
    {
      "id": "H8976",
      "date": "2026-10-05T04:05:09.760Z",
      "text": "i want to show the design process and eng tradeoffs",
      "imageCount": 0
    }
  ],
  "paperComments": [
    {
      "id": "c-09byj3",
      "node": "biography",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "this is a clean lock up - i really like this",
          "date": "2026-10-03T02:56:29.096000+00:00"
        }
      ]
    },
    {
      "id": "c-3q5ttp",
      "node": "company-row-3",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "this is clean AF",
          "date": "2026-10-03T02:54:55.471000+00:00"
        }
      ]
    },
    {
      "id": "c-5etvaj",
      "node": "activity-title",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "this is nice consistence",
          "date": "2026-10-03T02:52:58.752000+00:00"
        }
      ]
    },
    {
      "id": "c-9ochuj",
      "node": "company-row-0",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "i love how background and experience are framed here",
          "date": "2026-10-03T02:52:51.802000+00:00"
        }
      ]
    },
    {
      "id": "c-bg0zoc",
      "node": "credentials",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "the color needs to be different here",
          "date": "2026-10-03T02:56:52.236000+00:00"
        }
      ]
    },
    {
      "id": "c-igk6tl",
      "node": "01 — Quiet confidence",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "i think this is a very clean lock up ( i'm passionate about' and the 2 column bio below",
          "date": "2026-10-03T02:54:09.077000+00:00"
        }
      ]
    },
    {
      "id": "c-jjcwba",
      "node": "letter",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "i really like this idea of this being a letter and having a slider below to do some text aniamtion and plays with",
          "date": "2026-10-03T02:53:34.161000+00:00"
        }
      ]
    },
    {
      "id": "c-k2abob",
      "node": "context",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "i like this lock up a lot",
          "date": "2026-10-03T02:52:36.222000+00:00"
        }
      ]
    },
    {
      "id": "c-r1sovi",
      "node": "narrative-col-2",
      "file": "Charlie Weston — Below the Hero · Ten Directions",
      "messages": [
        {
          "text": "i need this to be styled differenlty - h6 like this look ai made",
          "date": "2026-10-03T02:55:36.703000+00:00"
        }
      ]
    }
  ],
  "parallelJourney": [
    {
      "id": "foundation",
      "track": "portfolio",
      "title": "Start with the real portfolio",
      "mode": "Ground",
      "prompt": "Match the deck to the portfolio and use the résumé as evidence.",
      "decision": "Run the actual Portfolio 2026 project locally. Resolve the initial Paper/Figma ambiguity to the supplied Figma Slides case study.",
      "outcome": "The existing site and case study became the visual and factual starting points. This was an adaptation of Charlie’s work, not a fabricated portfolio.",
      "learning": "A source-faithful brief is more useful than a generic premium style.",
      "date": "2026-09-30T21:12:28.604Z"
    },
    {
      "id": "deck-polish",
      "track": "portfolio",
      "title": "Polish exposed a hierarchy problem",
      "mode": "Reframe",
      "prompt": "Premium and world class—then: “I don’t like the headings and text styles.”",
      "decision": "After the first polish passes, change composition and hierarchy: quieter sentence-case headings, larger product views, asymmetric layouts and dark chapter breaks.",
      "outcome": "44 active slides received successive typography and art-direction passes. Before, polish and art-direction renders remain available as separate evidence.",
      "learning": "More styling did not resolve the structural concern. The response had to change where attention went.",
      "date": "2026-09-30T21:33:23.449Z"
    },
    {
      "id": "staff-story",
      "track": "portfolio",
      "title": "Make the work screen at Staff level",
      "mode": "Focus",
      "prompt": "Create a general sizzle deck that answers a hiring manager’s questions.",
      "decision": "Prioritize recent, consequential work and clarify role, ownership, complexity and outcomes using the published résumé. Keep all publication in the personal Portfolio workspace.",
      "outcome": "A 13-slide portfolio brings Arca, Traversal, Instabase and Atlassian into one Staff-level narrative. The personal-workspace rule became a persistent chat preference.",
      "learning": "Seniority is demonstrated through decisions and scope; it cannot be supplied by visual polish or invented metrics.",
      "date": "2026-09-30T22:25:46.776Z"
    },
    {
      "id": "interactive-deck",
      "track": "portfolio",
      "title": "Show the evidence still needed",
      "mode": "Open",
      "prompt": "Make a more interactive version and indicate where more information, images or video would help.",
      "decision": "Use a clickable menu, before/after storytelling and visibly marked evidence gaps. Distinguish proposed media from material already available.",
      "outcome": "An 18-slide working edition preserves the polished story while exposing what must still be supplied.",
      "learning": "Visible gaps make a working portfolio actionable without pretending the evidence is complete.",
      "date": "2026-09-30T22:55:05.992Z"
    },
    {
      "id": "header-directions",
      "track": "headers",
      "title": "Explore the opening screen",
      "mode": "Explore",
      "prompt": "Create 4–5 homepage header directions on a branch from main; make them viewable away from the computer.",
      "decision": "Keep the exploration additive and build distinct compositions: Signature, Systems in motion, Field notes, Work first and Design × engineering.",
      "outcome": "Five directions, a hosted personal preview and 25 recorded viewport checks. This thread ran in parallel after Orbit branched.",
      "learning": "Review access is part of the design workflow: a local-only page cannot help someone away from their computer.",
      "date": "2026-10-02T23:05:25.629Z"
    },
    {
      "id": "header-identity",
      "track": "headers",
      "title": "Keep the name and recessed navigation",
      "mode": "Constrain",
      "prompt": "Develop favorites 1, 2 and 5; retain the pushed-in navigation, the name at the top, ASCII controls and existing content.",
      "decision": "Add Studio, Masthead, Afterhours, Gallery and Margin. Treat the name and existing content as constraints rather than disposable layout elements.",
      "outcome": "Ten directions were printed into Paper with desktop and mobile reviews.",
      "learning": "A visual experiment can vary composition without erasing what makes a personal portfolio identifiable.",
      "date": "2026-10-02T23:41:01.142Z"
    },
    {
      "id": "about-studies",
      "track": "headers",
      "title": "Move from layouts into interaction",
      "mode": "Explore",
      "prompt": "Riff on the section in ten ways, use a jury, and make it feel more designed through interaction.",
      "decision": "Build ten about-section layouts and five interaction studies. Use separate reviewers to challenge composition and behavior.",
      "outcome": "Editable Paper review material and local interactive studies were retained alongside the static layouts.",
      "learning": "The interaction needs to support the content’s reading order, not just decorate it.",
      "date": "2026-10-03T01:39:59.818Z"
    },
    {
      "id": "header-feedback",
      "track": "headers",
      "title": "Make the next ten answer the comments",
      "mode": "Refine",
      "prompt": "Read the comments—then generate ten more from that feedback.",
      "decision": "Resolve the actionable comments while retaining favorites as open signals. Expand into materially different typographic compositions.",
      "outcome": "Facing pages, The two-column record and Ink & daylight emerged as strong options. The recorded 50 viewport checks found no overflow or missing assets.",
      "learning": "Comments can be a new design brief, not merely a punch list.",
      "date": "2026-10-03T02:57:50.550Z"
    },
    {
      "id": "ten-buddies",
      "track": "orbit",
      "title": "Ten passes, one silhouette",
      "mode": "Explore",
      "prompt": "Model a buddy in Blender through ten cycles and establish how it could behave on the website.",
      "decision": "Refine sphere → pebble → soft square; add gesture, grounding and manufactured detail; then remove excess expression and resolve articulated hands.",
      "outcome": "Ten native Blender versions, still renders and a web interaction study. The tenth was selected within that initial round, before Charlie’s later rejection of the range.",
      "learning": "Iteration depth and conceptual breadth are different. A highly resolved form can still answer the wrong question.",
      "date": "2026-10-02T23:06:14.420Z"
    },
    {
      "id": "divergence",
      "track": "orbit",
      "title": "The rejection that changed the brief",
      "mode": "Reject",
      "prompt": "“It also looks like it’s the same blob just iterations on him.”",
      "decision": "Fix review visibility and stop only refining the blob. Explore distinct families: Cursor, Folio, Loop, Orbit, Pixel and Spark.",
      "outcome": "A genuine silhouette comparison made selection possible remotely.",
      "learning": "The critical feedback was about sameness, not surface finish. The next round needed different underlying ideas.",
      "date": "2026-10-02T23:43:41.330Z"
    },
    {
      "id": "hex-identity",
      "track": "orbit",
      "title": "Let the logo determine the character",
      "mode": "Select",
      "prompt": "Use the hexagon lockup. Keep the orb.",
      "decision": "Develop a logo-derived hexagonal shell and offset amber accent around an orbital core.",
      "outcome": "The early Hex Orbit model established the brand relationship that survived later character and motion revisions.",
      "learning": "A recognizable source of form made the character more specific to Charlie.",
      "date": "2026-10-02T23:51:18.260Z"
    },
    {
      "id": "ten-orbs",
      "track": "orbit",
      "title": "Explore a family of moving objects",
      "mode": "Explore",
      "prompt": "Ten variations; Guilty Spark as inspiration; make them move.",
      "decision": "Build Keeper, Lockstep, Bloom, Gyro, Crescent, Facet, Relay, Iris, Lantern and Keystone with different shell and optical arrangements.",
      "outcome": "Ten native scenes, exported web models and individual motion clips. The family provided options for the deeper character pass.",
      "learning": "Breadth improved, but synchronized loops and target-like eyes still made the objects feel more like products than characters.",
      "date": "2026-10-02T23:59:18.823Z"
    },
    {
      "id": "jury",
      "track": "orbit",
      "title": "Build acting, not another idle loop",
      "mode": "Critique",
      "prompt": "Spend more time. Aim for Pixar quality. Have a judge and jury.",
      "decision": "Use separate character and motion jurors plus a judge. Rebuild optics, lids and pivots; author notice, anticipation, curiosity, acknowledgment and recovery.",
      "outcome": "Eight craft rounds addressed anatomical-looking optics, weak gaze, lid penetration, oversized reflections and a rear chassis intersection. The final native film is 180 frames at 24 fps.",
      "learning": "The jury passed a refined portfolio prototype, explicitly not Pixar equivalence. Character 7.5/10 and motion 7/10 are the reviewers’ recorded judgments, not objective quality metrics.",
      "date": "2026-10-03T00:21:37.503Z"
    },
    {
      "id": "website",
      "track": "orbit",
      "title": "Judge it at the size people will see",
      "mode": "Test",
      "prompt": "Render it on the website and record the interaction.",
      "decision": "Integrate the model into the real homepage, adjust the browser presentation and record actual browser frames.",
      "outcome": "Homepage screenshots, an interaction recording, raw frames and source were retained. Replaced recording versions were recovered from Git.",
      "learning": "A studio render is not evidence of how the character reads inside the portfolio.",
      "date": "2026-10-03T01:26:02.840Z"
    },
    {
      "id": "assembly",
      "track": "orbit",
      "title": "Give the transformation some resistance",
      "mode": "Reframe",
      "prompt": "How does the ASCII blob become this? Make it “iron man itself together”—less clean.",
      "decision": "Stage the transition as independent shell assembly, with uneven timing, exposed mechanics and visible latching instead of a clean substitution.",
      "outcome": "The transition gained a storyboard and a browser implementation. Character parts assemble around the developing core.",
      "learning": "The premium feel came from a believable sequence of events, not a smooth crossfade.",
      "date": "2026-10-03T02:10:35.044Z"
    },
    {
      "id": "inbetweens",
      "track": "orbit",
      "title": "Repair the jump between the first two frames",
      "mode": "Refine",
      "prompt": "Add frames between 1 and 2; the latter half looks okay.",
      "decision": "Focus the change on the opening: add intermediate views of the material taking shape without restarting the already accepted second half.",
      "outcome": "Storyboard 1a, 1b, 1c and 1d make the early assembly progression inspectable.",
      "learning": "Precise feedback can narrow effort. Preserve what is working while making the weak transition legible.",
      "date": "2026-10-03T02:51:44.042Z"
    },
    {
      "id": "living-ascii",
      "track": "orbit",
      "title": "ASCII becomes a state worth staying in",
      "mode": "Expand",
      "prompt": "Follow the cursor. Activate deliberately. Let symbols evolve, congeal, spark and fight. Default to ASCII, including loading.",
      "decision": "Expand the glyph sequence before any material appears. Add bounded gaze and interaction, and preserve an alive ASCII resting state.",
      "outcome": "The documented sequence gives ASCII 7.2 seconds before a 4.25-second shell assembly. Activation is deliberate; the experience no longer races directly into 3D.",
      "learning": "The beginning became an experience in its own right, which made the transition feel earned.",
      "date": "2026-10-03T03:34:58.563Z"
    },
    {
      "id": "accessibility",
      "track": "orbit",
      "title": "Make the behavior controllable",
      "mode": "Test",
      "prompt": "Audit accessibility, then create a PR.",
      "decision": "Provide keyboard and non-drag alternatives, reduced-motion behavior, explicit pause and motion controls, and screen-reader names. Verify the interaction before preparing PR #82.",
      "outcome": "The review covers the Orbit experience and exercised flows; it is not whole-site WCAG certification. The branch and evidence remain available for review.",
      "learning": "Accessibility changed the interaction model as well as the labels.",
      "date": "2026-10-03T04:19:57.960Z"
    },
    {
      "id": "inset-controls",
      "track": "orbit",
      "title": "Turn text links into tactile controls",
      "mode": "Refine",
      "prompt": "Small icon buttons with the pushed-in aesthetic; screenshots and a Paper legend to review.",
      "decision": "Carry the recessed navigation language into compact outline icons while retaining usable touch targets, names, hover labels and keyboard focus.",
      "outcome": "Desktop/mobile state screenshots and a default-theme Paper review with a button/interaction legend made the controls concrete enough to critique.",
      "learning": "A smaller visual footprint does not require a smaller interaction target.",
      "date": "2026-10-03T13:24:46.251Z"
    },
    {
      "id": "control-semantics",
      "track": "orbit",
      "title": "Separate appearance, motion and playback",
      "mode": "Correct",
      "prompt": "Keep buttons from jumping. Motion off must freeze Orbit rather than revert to ASCII. Confirm mobile and add optional sound.",
      "decision": "Reserve fixed control positions, separate per-model motion from appearance, and distinguish a one-shot playback pause from all motion. Add an explicit mute control with sound off by default.",
      "outcome": "The assembled model remains visible when frozen. Mobile layouts and playback states were exercised; sound is gesture-enabled and suspended when appropriate.",
      "learning": "A control should change only the state its label promises to change.",
      "date": "2026-10-03T20:04:44.712Z"
    },
    {
      "id": "progressive-rail",
      "track": "orbit",
      "title": "Reduce the resting visual noise",
      "mode": "Simplify",
      "prompt": "Hide the floating buttons behind progressive disclosure, soften contrast and improve the design using component references.",
      "decision": "Develop a recessed expandable rail, restrained enabled icon contrast and explicit focus/hover labels. Use the references as interaction input rather than a substitute for the portfolio’s visual system.",
      "outcome": "The rail presents one resting entry point and reveals the controls together. Closed controls are removed from interaction.",
      "learning": "Progressive disclosure made it possible to keep the controls legible when needed without dominating the hero.",
      "date": "2026-10-03T20:29:50.533Z"
    },
    {
      "id": "center-x",
      "track": "orbit",
      "title": "Anchor everything to the center",
      "mode": "Resolve",
      "prompt": "Put the X in the center. All icons should be visible when open, with unavailable actions shown as disabled strokes. Confirm AA rules.",
      "decision": "Fix the center control in place. Reveal appearance and sound to its left, motion and playback to its right. Keep the unavailable playback icon visible and explain its state.",
      "outcome": "The saved review measured enabled icon contrast at a minimum 3.24:1 and tooltip text at a minimum 9.93:1 across checked themes. Targets remain 44 px. Disabled controls do not imply an available action.",
      "learning": "Stable geometry makes changing states easier to understand. These measured checks are component evidence, not a blanket WCAG conformance claim.",
      "date": "2026-10-03T21:24:47.763Z"
    },
    {
      "id": "release",
      "track": "orbit",
      "title": "Ship the reviewed branch",
      "mode": "Ship",
      "prompt": "Deploy.",
      "decision": "Build a clean export of commit 0ce125a in the existing personal Vercel project, validate the staged deployment, then promote it to rcweston.com.",
      "outcome": "Production build and TypeScript passed. The deployed renderer and model matched the source bytes; live activation, playback pause/resume and assembled motion freeze were exercised. PR #82 remains unmerged.",
      "learning": "A release ends this documented round, not the opportunity for further refinement.",
      "date": "2026-10-03T21:49:56.354Z"
    }
  ],
  "headerStudies": [
    {
      "id": "02-01",
      "family": "02",
      "name": "The open spine",
      "description": "An oversized sans signature faces a smaller portrait. A continuous bottom rule joins the descriptor to the professional record.",
      "image": "assets/round4-02-01.png"
    },
    {
      "id": "02-02",
      "family": "02",
      "name": "The colophon",
      "description": "A full-width name opens the spread. Below it, large serif positioning faces a contained portrait, with the role and contacts collected at the foot.",
      "image": "assets/round4-02-02.png"
    },
    {
      "id": "02-03",
      "family": "02",
      "name": "The recessed pair",
      "description": "Two equal inset pages: a tightly set identity on the left, a centered portrait on the right. Their footnotes share one precise baseline.",
      "image": "assets/round4-02-03.png"
    },
    {
      "id": "02-04",
      "family": "02",
      "name": "The foreword",
      "description": "A restrained name heads the left page; the three-part statement becomes the dominant typography. A shallow right-hand well gathers portrait and affiliation.",
      "image": "assets/round4-02-04.png"
    },
    {
      "id": "02-05",
      "family": "02",
      "name": "The low spread",
      "description": "A wide signature sits over a compact horizontal record. The portrait occupies the far-right end of the same band, keeping the showreel close.",
      "image": "assets/round4-02-05.png"
    },
    {
      "id": "02-06",
      "family": "02",
      "name": "Across the fold",
      "description": "Charlie and Weston each head one page. A serif statement occupies the left; the portrait and professional record complete the right.",
      "image": "assets/round4-02-06.png"
    },
    {
      "id": "02-07",
      "family": "02",
      "name": "The pocket portrait",
      "description": "A large serif name faces a small portrait in the top corner. The two pages meet through offset descriptor and role lines, without enclosing either page.",
      "image": "assets/round4-02-07.png"
    },
    {
      "id": "02-08",
      "family": "02",
      "name": "The inset leaf",
      "description": "An inset portrait leaf interrupts the right edge of a broad typographic page. The current role and contacts sit together below the name.",
      "image": "assets/round4-02-08.png"
    },
    {
      "id": "02-09",
      "family": "02",
      "name": "The counterpoint",
      "description": "The signature sits high on the left, the portrait low on the right. Positioning and affiliation form opposing corners of a single ruled spread.",
      "image": "assets/round4-02-09.png"
    },
    {
      "id": "02-10",
      "family": "02",
      "name": "The reading room",
      "description": "A modest masthead and two calm columns. The statement reads like an opening paragraph; the portrait is a small illustration beside the professional record.",
      "image": "assets/round4-02-10.png"
    },
    {
      "id": "w2-01",
      "family": "w2",
      "name": "The ruled ledger",
      "description": "A compact masthead opens three generous numbered rows. The portrait belongs to the final row, so the controls have a clear address within the index.",
      "image": "assets/round4-w2-01.png"
    },
    {
      "id": "w2-02",
      "family": "w2",
      "name": "Three columns",
      "description": "The original three statements rotate into equal columns. Role, contacts, and the live portrait become the supporting material beneath each heading.",
      "image": "assets/round4-w2-02.png"
    },
    {
      "id": "w2-03",
      "family": "w2",
      "name": "The margin register",
      "description": "A large name spans the page. The portrait forms a quiet left margin beside a narrow, numbered typographic register.",
      "image": "assets/round4-w2-03.png"
    },
    {
      "id": "w2-04",
      "family": "w2",
      "name": "The studio directory",
      "description": "A stacked signature and the current role anchor the left. A three-row directory on the right leads into the portrait and social links.",
      "image": "assets/round4-w2-04.png"
    },
    {
      "id": "w2-05",
      "family": "w2",
      "name": "A table of contents",
      "description": "A small portrait shares the masthead. Three large linked statements route to work, résumé, and mentoring; the professional record remains visible beneath.",
      "image": "assets/round4-w2-05.png"
    },
    {
      "id": "w2-06",
      "family": "w2",
      "name": "The broadside",
      "description": "A small name and role sit above three bold sans lines. The portrait occupies the last line’s open space; contacts finish the composition.",
      "image": "assets/round4-w2-06.png"
    },
    {
      "id": "w2-07",
      "family": "w2",
      "name": "The lead entry",
      "description": "One large serif line leads; two smaller entries sit below. The portrait becomes a narrow right-hand column spanning the complete index.",
      "image": "assets/round4-w2-07.png"
    },
    {
      "id": "w2-08",
      "family": "w2",
      "name": "The working shelf",
      "description": "Three statements share a horizontal shelf below the name. A recessed utility band beneath holds the live portrait, role, and contacts.",
      "image": "assets/round4-w2-08.png"
    },
    {
      "id": "w2-09",
      "family": "w2",
      "name": "The cross index",
      "description": "Three descriptor rows align with a continuous portrait column and a separate professional record. Fine horizontal and vertical rules define the relationships.",
      "image": "assets/round4-w2-09.png"
    },
    {
      "id": "w2-10",
      "family": "w2",
      "name": "The typographic endnote",
      "description": "An intimate identity column meets an oversized serif index. A single endnote line collects the role and contacts beneath both.",
      "image": "assets/round4-w2-10.png"
    },
    {
      "id": "w3-01",
      "family": "w3",
      "name": "The corner caption",
      "description": "The name stays above a wide photograph. A paper cutout gives the live portrait a corner of the image; the role and positioning sit in the caption rail.",
      "image": "assets/round4-w3-01.png"
    },
    {
      "id": "w3-02",
      "family": "w3",
      "name": "The photographic spread",
      "description": "A typographic left page faces a tall photograph. The portrait and controls sit at the foot of the text page, with contacts below the image.",
      "image": "assets/round4-w3-02.png"
    },
    {
      "id": "w3-03",
      "family": "w3",
      "name": "The panorama",
      "description": "A large name and a low panoramic band make a compact opening. The character inhabits a solid extension of the image band, with one clear caption underneath.",
      "image": "assets/round4-w3-03.png"
    },
    {
      "id": "w3-04",
      "family": "w3",
      "name": "The cover story",
      "description": "A broad photograph fills the left side beneath the name. A narrow editorial column on the right contains positioning, the character, and the current role.",
      "image": "assets/round4-w3-04.png"
    },
    {
      "id": "w3-05",
      "family": "w3",
      "name": "The postcard",
      "description": "A square photograph balances a large serif statement. A small portrait and social line complete the text column, while affiliation captions the image.",
      "image": "assets/round4-w3-05.png"
    },
    {
      "id": "w3-06",
      "family": "w3",
      "name": "The wide window",
      "description": "A photograph appears between the full-width name and a three-part information rail. The live portrait sits in the middle of that rail, physically joining both sides.",
      "image": "assets/round4-w3-06.png"
    },
    {
      "id": "w3-07",
      "family": "w3",
      "name": "Two kinds of portrait",
      "description": "A photographic panel and an inset character panel form a diptych. Each has its own caption: positioning beneath the image, current role beneath the character.",
      "image": "assets/round4-w3-07.png"
    },
    {
      "id": "w3-08",
      "family": "w3",
      "name": "The long cutline",
      "description": "An asymmetrical title row puts the small portrait beside the name. The photograph runs edge to edge underneath; one generous cutline carries the record.",
      "image": "assets/round4-w3-08.png"
    },
    {
      "id": "w3-09",
      "family": "w3",
      "name": "The contact strip",
      "description": "Three real photographs form an edited strip beneath a compact masthead. The character is a fourth, interactive frame; the descriptor and role form the footer.",
      "image": "assets/round4-w3-09.png"
    },
    {
      "id": "w3-10",
      "family": "w3",
      "name": "The paper aperture",
      "description": "A photograph sits in a shallow paper surround beneath the signature. An integral corner holds the character; the surrounding whitespace carries positioning and contacts.",
      "image": "assets/round4-w3-10.png"
    }
  ],
  "commits": [
    {
      "id": "3212751ce4d943419eb21ecb81e787370e8e11b1",
      "date": "2026-10-04T16:11:28-04:00",
      "title": "Preview name-led Timeless homepage with live photo and vector reel"
    },
    {
      "id": "9324f55e232d8c43307584f8e1e8e9e65da93ca9",
      "date": "2026-10-04T16:35:36-04:00",
      "title": "Unify recessed site navigation and refine the portfolio introduction"
    },
    {
      "id": "4056e82cc67a682940775826edcbbdbd8e122365",
      "date": "2026-10-04T16:38:43-04:00",
      "title": "Support navigation status in the Storybook link mock"
    },
    {
      "id": "720026f507610a38ae0d3b84727559cb7bdfdd3f",
      "date": "2026-10-04T17:07:58-04:00",
      "title": "Add four compact recessed navigation concepts for review"
    },
    {
      "id": "20275293bd7acac869e25302f425a46070bdc64c",
      "date": "2026-10-04T17:12:26-04:00",
      "title": "Select Quiet index as the shared default navigation"
    },
    {
      "id": "dd881effe7dd2f0c73d5488a2926447617e48192",
      "date": "2026-10-04T18:18:56-04:00",
      "title": "Restore current role and social icons in homepage header"
    },
    {
      "id": "754773cdf98a79ed9d38d8cb75b3065ff576414a",
      "date": "2026-10-04T18:31:42-04:00",
      "title": "Compose the homepage identity as a unified signature lockup"
    },
    {
      "id": "aa70d9b9f9051572a9fdf78f65561a78ebb12044",
      "date": "2026-10-04T18:39:24-04:00",
      "title": "Replace current affiliation label with a subtle status pulse"
    },
    {
      "id": "0a22eb1bf813fa3d37c557521c638b43e5ecfbd8",
      "date": "2026-10-04T18:49:45-04:00",
      "title": "Explore six homepage identity layouts with integrated Orbit"
    },
    {
      "id": "15a5c1968852cfc1913361aceac0a9bb5644313e",
      "date": "2026-10-04T19:04:31-04:00",
      "title": "Explore ten integrated Orbit control patterns"
    },
    {
      "id": "ad2bdfa251c83207529e5bc3b26032517b06a26a",
      "date": "2026-10-04T20:02:03-04:00",
      "title": "Explore distinct header compositions with inline controls"
    },
    {
      "id": "126a4d091458b393602248aac44afdcf7ca0b9ab",
      "date": "2026-10-04T20:35:09-04:00",
      "title": "Add twelve round-three header explorations and full-page previews"
    },
    {
      "id": "e85e8a4dae8a45a97893dbb61e660b199a323feb",
      "date": "2026-10-04T22:09:10-04:00",
      "title": "Explore thirty header directions from facing pages, index, and photography"
    },
    {
      "id": "7082cfa72e352e2732858ccb58e8841d268f2cff",
      "date": "2026-10-04T22:26:50-04:00",
      "title": "Select W3-09 homepage and archive explorations in admin"
    },
    {
      "id": "1ac176a7ca7777bbd5df6fcb1a2a1610c2f85e33",
      "date": "2026-10-04T22:43:08-04:00",
      "title": "Use reference year labels in homepage experience rows"
    },
    {
      "id": "a407b11483b536c1aa4a1d883ff3bfc5d4e94f29",
      "date": "2026-10-04T23:02:28-04:00",
      "title": "Refine homepage header, media settings, and accessible link states"
    },
    {
      "id": "10129d243e6d5e0522c89ab0bfa5bfc2b97841b4",
      "date": "2026-10-04T23:21:32-04:00",
      "title": "Add four Arca role layouts and refine homepage details"
    },
    {
      "id": "e772a211448a7f12139efda42918c81fe68d94e2",
      "date": "2026-10-04T23:28:35-04:00",
      "title": "Apply compact Arca stack with aligned desktop height"
    },
    {
      "id": "45e2e534d2e326ad6e2bde722b48316d790cd8ff",
      "date": "2026-10-04T23:39:42-04:00",
      "title": "Align homepage sections and consolidate work bullets"
    },
    {
      "id": "4c2c474770fb91aeddb1e055a7980eaa2081ab3c",
      "date": "2026-10-04T23:46:31-04:00",
      "title": "Give homepage credential sections more vertical space"
    },
    {
      "id": "d2621963423fae7d5d128a7e9c77494253bcf094",
      "date": "2026-10-04T23:54:20-04:00",
      "title": "Unify biography and credential grid with Ethos and inset link states"
    },
    {
      "id": "a147b2d2494dc03aa21981c3e0330c0a5ae79505",
      "date": "2026-10-04T23:58:34-04:00",
      "title": "Use outlined hexagons for Ethos principles"
    }
  ],
  "openingStudies": [
    {
      "id": "opening-01",
      "name": "Signature",
      "description": "Identity is the first read; the remaining page supports the name.",
      "image": "opening-01.jpg"
    },
    {
      "id": "opening-02",
      "name": "Systems in motion",
      "description": "A systems-led opening places technical expression beside the professional story.",
      "image": "opening-02.jpg"
    },
    {
      "id": "opening-03",
      "name": "Field notes",
      "description": "An editorial notebook treatment gives context and observations more presence.",
      "image": "opening-03.jpg"
    },
    {
      "id": "opening-04",
      "name": "Work first",
      "description": "Project evidence leads the reading order. The name becomes less dominant.",
      "image": "opening-04.jpg"
    },
    {
      "id": "opening-05",
      "name": "Design × engineering",
      "description": "The interactive object becomes a central expression of design and engineering.",
      "image": "opening-05.jpg"
    },
    {
      "id": "opening-06",
      "name": "Studio",
      "description": "The second round restores a prominent personal name and a studio-like composition.",
      "image": "opening-06.jpg"
    },
    {
      "id": "opening-07",
      "name": "Masthead",
      "description": "A strong masthead organizes the opening and its supporting media.",
      "image": "opening-07.jpg"
    },
    {
      "id": "opening-08",
      "name": "Afterhours",
      "description": "A darker, more atmospheric variant explores a different tone.",
      "image": "opening-08.jpg"
    },
    {
      "id": "opening-09",
      "name": "Gallery",
      "description": "Real photography creates a visual opening before the written record.",
      "image": "opening-09.jpg"
    },
    {
      "id": "opening-10",
      "name": "Margin",
      "description": "A pronounced margin separates identity and context from the main content.",
      "image": "opening-10.jpg"
    }
  ],
  "bodyStudies": [
    {
      "id": "body-01",
      "name": "The open letter",
      "description": "A direct personal narrative with a clear margin for context. The tradeoff is a longer reading sequence before credentials.",
      "image": "body-01.jpg"
    },
    {
      "id": "body-02",
      "name": "Facing pages",
      "description": "Biography and a supporting record share the spread. The two reading speeds are useful, but must resolve into one sequence on a phone.",
      "image": "body-02.jpg"
    },
    {
      "id": "body-03",
      "name": "The annotated letter",
      "description": "Marginal details and annotations make the writing feel authored. Too many annotations can compete with the main paragraph.",
      "image": "body-03.jpg"
    },
    {
      "id": "body-04",
      "name": "Practice & provenance",
      "description": "The work and its background receive distinct editorial zones. The structure makes evidence easy to find, at the cost of more sectional boundaries.",
      "image": "body-04.jpg"
    },
    {
      "id": "body-05",
      "name": "The two-column record",
      "description": "A deliberate parallel record balances narrative and credentials. Equal visual weight can obscure which column should lead.",
      "image": "body-05.jpg"
    },
    {
      "id": "body-06",
      "name": "A working index",
      "description": "An index provides quick entry points to a longer page. It adds navigation that has to earn its space on a relatively short portfolio.",
      "image": "body-06.jpg"
    },
    {
      "id": "body-07",
      "name": "Night letter",
      "description": "A dark treatment tests atmosphere and contrast around the same content. This is a tonal alternative, not proof of better hierarchy.",
      "image": "body-07.jpg"
    },
    {
      "id": "body-08",
      "name": "The graphite register",
      "description": "A restrained register emphasizes organization and a quiet reading rhythm. Its risk is making personal work feel administrative.",
      "image": "body-08.jpg"
    },
    {
      "id": "body-09",
      "name": "Ink & daylight",
      "description": "A lighter editorial contrast gives the writing and open space greater presence. Large blank areas must still support a clear scan path.",
      "image": "body-09.jpg"
    },
    {
      "id": "body-10",
      "name": "The long view",
      "description": "The complete narrative is treated as one extended page. This exposes pacing decisions that a hero-only crop would hide.",
      "image": "body-10.jpg"
    }
  ],
  "layoutTradeoffs": [
    {
      "section": "Identity",
      "before": "Uppercase name, descriptor pills, social links and current role form a compact stack.",
      "selected": "Name and socials share the top row. Three photographs and the character create a separate visual band.",
      "tradeoff": "The name is unambiguous; imagery carries personality. The opening is taller and relies on deliberate crops."
    },
    {
      "section": "Biography",
      "before": "Narrative and illustration occupy the wide left column; credentials sit to the right.",
      "selected": "Current context and the optics illustration form a margin. The larger letter occupies the main reading column.",
      "tradeoff": "The letter becomes the narrative spine. The left column has less content and needs careful vertical balance."
    },
    {
      "section": "Experience & education",
      "before": "Logo clusters live in the sidebar; the first coded version moves them into an inset outlined box.",
      "selected": "Logos and dates sit in rows aligned to the biography. Education uses the same heading and content tracks.",
      "tradeoff": "Dates add information instead of repeating company names. Shared edges remove the box-within-page effect."
    },
    {
      "section": "Exploration",
      "before": "A tall contribution chart fills the sidebar; the first coded version places its title above the chart.",
      "selected": "The label sits alongside a wide, shallow chart on the same grid as the credentials.",
      "tradeoff": "The chart becomes supporting texture and evidence of activity. It is not presented as a measure of design quality."
    },
    {
      "section": "Ethos",
      "before": "Seven large numbered statements form a long, full-width sequence.",
      "selected": "Two columns of statements sit within the content track, each led by a small hexagon.",
      "tradeoff": "The ending is quieter and easier to scan. On narrow screens the columns become one continuous list."
    },
    {
      "section": "Secondary content",
      "before": "A standalone How I work section, repeated social line and interactive signature add additional stops.",
      "selected": "Work points become smaller bullets immediately after the biography; the extra social line and signature control are removed.",
      "tradeoff": "The same content supports the narrative without another large section. Some expressive interaction is deliberately given up."
    }
  ]
}
