{
  "$schema": "https://ndcodex.com/schemas/object/v1.json",
  "id": "codex://object/codex-archive-system-v3-5-control-surface-notes",
  "archive_id": "codex-archive-system-v3-5-control-surface-notes",
  "slug": "codex-archive-system-v3-5-control-surface-notes",
  "url": "https://ndcodex.com/objects/codex-archive-system-v3-5-control-surface-notes/",
  "type": "codex",
  "object_form": null,
  "title": "Codex Archive System V3.5 Control Surface Notes",
  "summary": "v3.5 unifies feed search and filter controls across desktop and mobile, and tightens header conceal/reveal rhythm.",
  "content_text": "v3.5 extends Codex Archive System v3.4 Image Experience Notes.\n\nUse v3.4 as viewing-surface context and v3.5 for current feed-control and header behavior.\n\nv3.5 is the control-surface release.\n\nOperator value prop:\n\nSearch, filters, and header concealment now behave like one coherent reading surface instead of separate mobile and desktop exceptions.\n\nWork chunks and wins:\n\nFeed controls now collapse the same way on desktop and mobile\n\nValue prop: There is one operator gesture for opening the filter surface, regardless of viewport.\n\nPromote the existing Search & filters toggle into the desktop feed surface.\n\nKeep inactive controls collapsed by default.\n\nAuto-open the panel when a search, type, or theme filter becomes active.\n\nLet operators collapse the panel again without losing state.\n\nCollapsed controls now reflect active state\n\nValue prop: A closed panel can still report what it is doing.\n\nShow a compact active count when the control surface is collapsed.\n\nSurface a short summary of active search/filter state in the collapsed bar.\n\nKeep the Clear action and full active-filter line inside the open panel.\n\nHeader conceal/reveal motion was tightened\n\nValue prop: The top edge gets out of the way faster, with less drag.\n\nSmooth header shadow and top-edge veil intensity from scroll progress instead of threshold jumps.\n\nReduce the hide trigger and sharpen the transform easing so the header tucks upward more quickly.\n\nKeep a narrow residual strip in view so the page retains top-edge weight without a full chrome bar.\n\nContent now fades under the top edge with lighter pressure\n\nValue prop: The reading field softens into the boundary instead of hitting a hard cut.\n\nPlace the top-edge veil under the sticky header and above the scrolling content.\n\nLighten the fade so it supports reading depth without feeling smoky.\n\nKeep the effect tied to scroll state, not always-on decoration.\n\nNo schema expansion is proposed in v3.5.\n\nNo new object type is proposed in v3.5.",
  "content_markdown": "v3.5 extends [Codex Archive System v3.4 Image Experience Notes](/objects/codex-archive-system-v3-4-image-experience-notes).\nUse v3.4 as viewing-surface context and v3.5 for current feed-control and header behavior.\n\nv3.5 is the control-surface release.\n\nOperator value prop:\n- Search, filters, and header concealment now behave like one coherent reading surface instead of separate mobile and desktop exceptions.\n\nWork chunks and wins:\n\n1. Feed controls now collapse the same way on desktop and mobile\n   Value prop: There is one operator gesture for opening the filter surface, regardless of viewport.\n   - Promote the existing `Search & filters` toggle into the desktop feed surface.\n   - Keep inactive controls collapsed by default.\n   - Auto-open the panel when a search, type, or theme filter becomes active.\n   - Let operators collapse the panel again without losing state.\n\n2. Collapsed controls now reflect active state\n   Value prop: A closed panel can still report what it is doing.\n   - Show a compact active count when the control surface is collapsed.\n   - Surface a short summary of active search/filter state in the collapsed bar.\n   - Keep the `Clear` action and full active-filter line inside the open panel.\n\n3. Header conceal/reveal motion was tightened\n   Value prop: The top edge gets out of the way faster, with less drag.\n   - Smooth header shadow and top-edge veil intensity from scroll progress instead of threshold jumps.\n   - Reduce the hide trigger and sharpen the transform easing so the header tucks upward more quickly.\n   - Keep a narrow residual strip in view so the page retains top-edge weight without a full chrome bar.\n\n4. Content now fades under the top edge with lighter pressure\n   Value prop: The reading field softens into the boundary instead of hitting a hard cut.\n   - Place the top-edge veil under the sticky header and above the scrolling content.\n   - Lighten the fade so it supports reading depth without feeling smoky.\n   - Keep the effect tied to scroll state, not always-on decoration.\n\nNo schema expansion is proposed in v3.5.\nNo new object type is proposed in v3.5.",
  "author": {
    "id": "nathan-davis",
    "name": "Nathan Davis",
    "designation": "Archive Operator",
    "role": "Archive Operator",
    "handle": "@nathandavis",
    "avatar": "/media/people/nathan-davis.jpg",
    "bio": "Designer, builder, and curator of the Codex Archive."
  },
  "contributors": [
    {
      "id": "nathan-davis",
      "name": "Nathan Davis",
      "designation": "Archive Operator",
      "role": "Archive Operator",
      "handle": "@nathandavis",
      "avatar": "/media/people/nathan-davis.jpg",
      "bio": "Designer, builder, and curator of the Codex Archive."
    }
  ],
  "date_published": "2026-03-09T03:08:00.000Z",
  "date_modified": "2026-03-09T03:08:00.000Z",
  "status": "published",
  "visibility": "public",
  "language": "en-US",
  "axes": {
    "scale": null,
    "depth": null,
    "focus": null,
    "function": null
  },
  "themes": [
    "systems",
    "architecture",
    "methodology",
    "signal",
    "observation"
  ],
  "constellations": [
    "Cascade Psalms"
  ],
  "tags": [
    "systems",
    "architecture",
    "methodology",
    "signal",
    "observation"
  ],
  "keywords": [
    "Codex",
    "systems",
    "architecture",
    "methodology",
    "signal",
    "observation",
    "Cascade Psalms"
  ],
  "relations": [
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-4-image-experience-notes",
      "slug": "codex-archive-system-v3-4-image-experience-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-4-image-experience-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-3-modest-table-notes",
      "slug": "codex-archive-system-v3-3-modest-table-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-3-modest-table-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-2-fragment-feed-notes",
      "slug": "codex-archive-system-v3-2-fragment-feed-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-2-fragment-feed-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-1-build-notes",
      "slug": "codex-archive-system-v3-1-build-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-1-build-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/codex-archive-system-v3-plus-notes",
      "slug": "codex-archive-system-v3-plus-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-plus-notes/"
    },
    {
      "kind": "related",
      "target": "codex://object/on-object-oriented-archives",
      "slug": "on-object-oriented-archives",
      "url": "https://ndcodex.com/objects/on-object-oriented-archives/"
    },
    {
      "kind": "related",
      "target": "codex://object/cities-built-on-ruin-reminiscence",
      "slug": "cities-built-on-ruin-reminiscence",
      "url": "https://ndcodex.com/objects/cities-built-on-ruin-reminiscence/"
    },
    {
      "kind": "related",
      "target": "codex://object/bezalel-the-designated-hand",
      "slug": "bezalel-the-designated-hand",
      "url": "https://ndcodex.com/objects/bezalel-the-designated-hand/"
    },
    {
      "kind": "dependency",
      "target": "codex://object/codex-archive-system-v3-4-image-experience-notes",
      "slug": "codex-archive-system-v3-4-image-experience-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-4-image-experience-notes/"
    },
    {
      "kind": "dependency",
      "target": "codex://object/codex-archive-system-v3-3-modest-table-notes",
      "slug": "codex-archive-system-v3-3-modest-table-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-3-modest-table-notes/"
    },
    {
      "kind": "connection",
      "target": "codex://object/codex-archive-system-v3-4-image-experience-notes",
      "slug": "codex-archive-system-v3-4-image-experience-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-4-image-experience-notes/",
      "role": "previous version",
      "display": "feature"
    },
    {
      "kind": "connection",
      "target": "codex://object/codex-archive-system-v3-6-reading-surface-notes",
      "slug": "codex-archive-system-v3-6-reading-surface-notes",
      "url": "https://ndcodex.com/objects/codex-archive-system-v3-6-reading-surface-notes/",
      "role": "next update",
      "display": "inline"
    }
  ],
  "media": [],
  "capture": null
}