{
  "generated_at": "2026-06-24T08:24:18Z",
  "compiler": "WebMNEM Surface Compiler",
  "compiler_mode": "canonical_surface_inheritance_engine",
  "inheritance_doctrine": "The compiler is a canonical-surface inheritance engine, not a template generator. Before generating a role proof surface, it resolves the latest approved premium applicant surface, current best assistant pack, modal system, hero system, proof-card system, proof lattice, and route-file pattern. It preserves those systems and mutates only the role-specific meaning layer.",
  "assistant_spine_rule": "Surface Assistant Spine Rule: If a surface includes a Surface Assistant, the compiler must inherit the latest approved Chat-First Surface Assistant interaction spine. Assistant-enabled surfaces are invalid if the page scrolls behind the assistant, if the assistant does not own its scroll container, or if the composer/header behavior does not match the canonical Chat-First assistant pattern.",
  "assistant_spine": {
    "manifest": {
      "version": "1.0.0",
      "updated_at": "2026-06-24T08:00:00Z",
      "status": "ACTIVE_CANONICAL",
      "spine_id": "chat-first-surface-shell-assistant-spine",
      "source_reference_path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/assistants/chat-first-surface-shell/public/index.html",
      "last_approved_source_path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/assistants/chat-first-surface-shell/public",
      "built_output_reference_path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/dist/chat-first-surface-shell",
      "public_reference_url": "https://chat-first-surface-shell.netlify.app/",
      "compiled_surface_marker": "data-assistant-spine=\"chat-first-surface-shell\"",
      "approved_runtime_behavior": [
        "assistant stream owns vertical scroll",
        "body and documentElement scroll lock while assistant is open",
        "assistant header and composer recede on downward feed pressure",
        "assistant header and composer restore on upward feed pressure",
        "composer remains inside assistant context",
        "answer text streams",
        "continuation prompts capped at three",
        "close restores scroll and prior focus"
      ],
      "required_css_classes": [
        "assistant-panel",
        "assistant-chat-workspace",
        "assistant-top",
        "assistant-stream",
        "assistant-composer",
        "wm-assistant-chrome",
        "composer-row",
        "wm-motion-focusable",
        "composer-tool",
        "composer-send",
        "assistant-chrome-receded",
        "assistant-continuations",
        "assistant-continuation"
      ],
      "required_selectors": [
        "[data-assistant-panel]",
        "[data-assistant-shell]",
        "[data-assistant-stream]",
        "[data-assistant-form]",
        "[data-composer]",
        "[data-assistant-close]",
        "[data-assistant-launcher]",
        "[data-assistant-continuation]"
      ],
      "required_js_behavior_markers": [
        "lockAssistantPageScroll",
        "unlockAssistantPageScroll",
        "requestAssistantChromeRecede",
        "assistantGestureOwnsChrome",
        "updateAssistantVisualViewport",
        "keepAssistantComposerVisible",
        "focusAssistantComposerWithoutPageScroll",
        "scrollAssistantStreamToBottom",
        "assistant-chrome-receded",
        "assistantAutoFollowStreaming",
        "window.scrollTo(0, lockedScrollY)"
      ],
      "required_mobile_behavior": [
        "100svh assistant panel",
        "visual viewport height binding",
        "composer focus uses preventScroll",
        "overscroll-behavior-y: contain",
        "touch-action: pan-y",
        "horizontal viewport lock",
        "composer safe-area bottom inset",
        "close button visible above composer"
      ],
      "approval_notes": "This layer was added after the AI Workflow Specialist generated page exposed a compiler defect: visible assistant drawer presence was validated without inheriting the Chat-First interaction spine."
    },
    "required": {
      "required_for": "assistant_enabled_role_proof_surfaces",
      "hard_fail_conditions": [
        "missing compiled Chat-First spine marker",
        "missing assistant panel",
        "missing assistant scroll container",
        "missing assistant composer",
        "missing reversible page scroll lock",
        "missing assistant chrome recede behavior",
        "missing continuation limit enforcement",
        "missing behavior validation receipt"
      ],
      "required_markup": [
        "data-assistant-spine=\"chat-first-surface-shell\"",
        "data-assistant-panel",
        "data-assistant-shell",
        "data-assistant-stream",
        "data-assistant-form",
        "data-composer",
        "data-assistant-close",
        "data-assistant-launcher"
      ],
      "required_css": [
        "assistant-chat-workspace",
        "assistant-stream",
        "assistant-composer wm-assistant-chrome",
        "composer-row wm-motion-focusable",
        "overscroll-behavior-y: contain",
        "-webkit-overflow-scrolling: touch",
        "assistant-chrome-receded .assistant-top",
        "assistant-chrome-receded .assistant-composer",
        "--assistant-vvh",
        "--assistant-vvo"
      ],
      "required_javascript": [
        "lockAssistantPageScroll",
        "unlockAssistantPageScroll",
        "updateAssistantVisualViewport",
        "keepAssistantComposerVisible",
        "focusAssistantComposerWithoutPageScroll",
        "assistantGestureOwnsChrome",
        "requestAssistantChromeRecede",
        "assistantShell?.addEventListener(\"touchmove\"",
        "stream?.addEventListener(\"scroll\"",
        "window.scrollTo(0, lockedScrollY)"
      ]
    },
    "checksums": {
      "updated_at": "2026-06-24T08:00:00Z",
      "source_files": [
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/assistants/chat-first-surface-shell/public/index.html",
          "sha256": "69972774c6d29d14ea19099856cd8528df652b38823b4d215c2dc6b4f0a2e5cf"
        },
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/assistants/chat-first-surface-shell/public/styles.css",
          "sha256": "d3da79fe503611f35eca259180aef674c639e38bb0befe503b5f18684975fb37"
        },
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/assistants/chat-first-surface-shell/public/script.js",
          "sha256": "cf29155b5f825b3a02caf40e467225b9b608cb2533500112c7c8f93c60a6d1f4"
        }
      ],
      "built_output_files": [
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/dist/chat-first-surface-shell/index.html",
          "sha256": "69972774c6d29d14ea19099856cd8528df652b38823b4d215c2dc6b4f0a2e5cf"
        },
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/dist/chat-first-surface-shell/styles.css",
          "sha256": "d3da79fe503611f35eca259180aef674c639e38bb0befe503b5f18684975fb37"
        },
        {
          "path": "/Users/johnbarros/Documents/Codex/02_proof_surfaces/chat-first-surface-shell/dist/chat-first-surface-shell/script.js",
          "sha256": "cf29155b5f825b3a02caf40e467225b9b608cb2533500112c7c8f93c60a6d1f4"
        }
      ]
    },
    "source": "/Users/johnbarros/Documents/Codex/10_websites/_surface_compiler/golden_references/assistant-spine/ASSISTANT_SPINE_SOURCE.md",
    "invariants": "/Users/johnbarros/Documents/Codex/10_websites/_surface_compiler/golden_references/assistant-spine/assistant-spine-invariants.md"
  },
  "latest_approved_surface": "not_applicable",
  "inherited_component_evidence": [
    {
      "component_id": "primary_applicant_surface_html",
      "component_role": "base visual and applicant proof structure",
      "inheritance_action": "preserve applicant identity hierarchy, premium page density, proof lattice, and route-file expectations",
      "local_path": "/Users/johnbarros/Desktop/confidential-director-tech-ai-agent-handoff/website/index.html",
      "sha256": "d308b52ebfef8ca64130e41aafa4c7090451054a942d552b961e776f8b6959fd"
    },
    {
      "component_id": "primary_assistant_pack",
      "component_role": "current best role-facing assistant answer-pack behavior",
      "inheritance_action": "preserve answer-pack shape, starter question posture, source-bounded routing, and continuation behavior while rewriting role layer and stripping internal metadata from public packs",
      "local_path": "/Users/johnbarros/Desktop/confidential-director-tech-ai-agent-handoff/website/assets/data/director-ai-assistant-pack.json",
      "sha256": "35e876c86e9537d734f505f6fa769ca7b0fbf0e6926885928dc03dc3abefa581"
    },
    {
      "component_id": "primary_mission_control_route",
      "component_role": "current best Mission Control markdown route file",
      "inheritance_action": "preserve agent-readable route briefing pattern",
      "local_path": "/Users/johnbarros/Desktop/confidential-director-tech-ai-agent-handoff/website/mission-control.md",
      "sha256": "5c83bd6b7b2536307c712844bc7a9540a67a404b49ae01ec6eaac2a1889c9d6f"
    },
    {
      "component_id": "primary_llms_route",
      "component_role": "current best LLM crawler route file",
      "inheritance_action": "preserve static agent-readable context pattern",
      "local_path": "/Users/johnbarros/Desktop/confidential-director-tech-ai-agent-handoff/website/llms.txt",
      "sha256": "4c56d23937671f1b927474885724fc8cb6ab394cce460f74bbb5a58a9e63ac29"
    },
    {
      "component_id": "primary_proof_map",
      "component_role": "current best proof-map route file",
      "inheritance_action": "preserve proof map categories and evidence boundary structure",
      "local_path": "/Users/johnbarros/Desktop/confidential-director-tech-ai-agent-handoff/website/proof-map.json",
      "sha256": "f942ee765075a2c6d740e54febfe1399b13b0ff95182a7d4bab3d3daa9466825"
    },
    {
      "component_id": "c4_child_variant_html",
      "component_role": "latest job-targeted child variant pattern",
      "inheritance_action": "preserve child role-surface framing, image-led carousel expectations, proof card density, and business-role positioning",
      "local_path": "/Users/johnbarros/Documents/Codex/03_employment_engine/AI-Automation-Employment/applications/c-4-analytics/website/index.html",
      "sha256": "cbd40f68c62ac9dbd24107f2ce5bc226eed87b500395d6bacf387471d12099ff"
    }
  ],
  "surface_type": "role_proof_surface",
  "site_slug": "ai-workflow-specialist",
  "role_surface_slug": "ai-workflow-specialist",
  "site_name": "AI Workflow Specialist Applicant Proof Surface",
  "operator_name": "John P. Barros III",
  "operator_title": "AI implementation operator and browser-surface systems builder",
  "surface_identity": "Applicant role proof surface",
  "role_archetype": "AI Workflow Specialist",
  "public_slug": "ai-workflow-specialist",
  "canonical_public_url": "https://webmnem.here.now/ai-workflow-specialist/",
  "webmnem_route": "/ai-workflow-specialist/",
  "workbench_path": "/Users/johnbarros/Documents/Codex/10_websites/ai-workflow-specialist",
  "owner_path": "/Users/johnbarros/Documents/Codex/03_employment_engine/AI-Automation-Employment/role-surfaces/ai-workflow-specialist",
  "assistant_pack_path": "/Users/johnbarros/Documents/Codex/10_websites/ai-workflow-specialist/source/assets/data/surface-assistant-pack.json",
  "primary_proof_links": [
    {
      "title": "AI Director proof surface",
      "url": "https://john-barros-director-ai-technology.netlify.app/",
      "summary": "Shows John explaining AI implementation, governance, delivery judgment, and executive-facing technology work.",
      "role_relevance": "Connects the role surface to the broader Director of Technology and AI proof posture.",
      "what_it_proves": "Shows executive communication, AI implementation framing, governance judgment, and role-specific presentation.",
      "evidence_boundary": "It supports AI implementation framing, but formal employment history, credentials, and private outcomes still require interview verification."
    },
    {
      "title": "Business OS Extraction Sprint",
      "url": "https://business-os-extraction-sprint.netlify.app/",
      "summary": "Shows the workflow extraction method: inspect current-state operations, map sources of truth, and define what should be automated."
    },
    {
      "title": "Chat-First Surface Shell",
      "url": "https://chat-first-surface-shell.netlify.app/",
      "summary": "Shows how John turns AI interaction into a usable browser workflow instead of a loose chatbot."
    },
    {
      "title": "WebMNEM",
      "url": "https://webmnem.here.now/",
      "summary": "Shows how John keeps technical notes, work history, and public project context available for review."
    }
  ],
  "secondary_proof_links": [
    {
      "title": "Surface Assistant Reference",
      "url": "https://surface-assistant.netlify.app/",
      "summary": "Shows the interaction pattern behind a focused role assistant: direct answers, useful follow-up questions, and clear boundaries."
    },
    {
      "title": "WebMNEM SEO Command Layer",
      "url": "https://webmnem-seo-command-layer.netlify.app/",
      "summary": "Shows how workflow and market analysis can become an organized execution system."
    },
    {
      "title": "WebMNEM Market Deployment Engine",
      "url": "https://webmnem-market-deployment-engine.netlify.app/",
      "summary": "Shows how operational insight can be turned into deployable systems and reporting views."
    }
  ],
  "proof_modules": [
    {
      "title": "Workflow assessment and roadmap",
      "body": "The proof stack supports current-state process mapping, bottleneck discovery, automation prioritization, phased implementation planning, and source-of-truth discipline."
    },
    {
      "title": "Production-ready AI workflows",
      "body": "The operating model emphasizes structured inputs and outputs, validation steps, human review points, exception handling, and stable browser surfaces instead of loose chatbot output."
    },
    {
      "title": "Governance, testing, and change management",
      "body": "The operating approach treats AI adoption as a managed workflow: approved inputs, review points, monitoring, user guidance, prompt standards, and approval gates."
    },
    {
      "title": "Reporting and business impact",
      "body": "The role surface frames automation around cycle-time reduction, accuracy improvements, adoption, KPI reporting, and executive-readable proof rather than novelty."
    }
  ],
  "evidence_boundaries": [
    "This page supports workflow assessment, AI-enabled automation design, focused assistant design, documentation discipline, and governance-oriented implementation.",
    "This page does not replace formal verification of employment history, credentials, certifications, manufacturing-domain tenure, regulated QA ownership, or private client outcomes.",
    "The source job post is raw material for role extraction, not a reason to create a company-named public site.",
    "Company-specific targeting belongs in the resume, cover letter, application notes, and application record unless a custom public company page is explicitly approved."
  ],
  "evidence_boundary": [
    "This page supports workflow assessment, AI-enabled automation design, focused assistant design, documentation discipline, and governance-oriented implementation.",
    "This page does not replace formal verification of employment history, credentials, certifications, manufacturing-domain tenure, regulated QA ownership, or private client outcomes.",
    "The source job post is raw material for role extraction, not a reason to create a company-named public site.",
    "Company-specific targeting belongs in the resume, cover letter, application notes, and application record unless a custom public company page is explicitly approved."
  ],
  "approval_gates": [
    "Do not create a company-named public page without explicit approval.",
    "Do not sync generated output to the owner folder without human approval.",
    "Do not deploy to WebMNEM or Netlify without human approval.",
    "Do not Git push without human approval.",
    "Do not overwrite assistant packs in owner folders without human approval.",
    "Do not copy large source trees into the workbench without human approval."
  ],
  "validation_requirements": [
    "Workbench folder exists.",
    "Required folder skeleton exists.",
    "SITE_MANIFEST.json parses.",
    "publish-map.json parses.",
    "mission-control.txt and mission-control.md exist.",
    "llms.txt exists.",
    "proof-map.json exists.",
    "Assistant pack exists for bounded proof interpreter mode.",
    "Private application-context note exists.",
    "Public route is role archetype, not company-named.",
    "No owner sync occurred.",
    "No deploy occurred.",
    "Compiler receipts exist."
  ],
  "public_surface_scope": "role_archetype",
  "company_specific_public_page_approved": false,
  "company_specific_public_page": false,
  "modal_required": true,
  "carousel_required": true,
  "proof_lattice_required": true,
  "route_files_required": true,
  "role_surface_doctrine": "Do not create new websites from scratch. New role site equals compiled variant of the existing applicant proof surface system. Latest approved surface in, role-specific variation out. Extract the role. Do not immortalize the company. The company gets the cover letter, resume, application packet, private notes, and submission receipt. The role gets the public website. The proof stack gets reused. Company-specific public pages require explicit approval.",
  "sync_status": "not_performed",
  "deploy_status": "not_performed",
  "git_push_status": "not_performed",
  "owner_overwrite_status": "not_performed",
  "large_source_copy_status": "not_performed"
}
