{
  "schemaVersion": 2,
  "preparedAt": "2026-10-25",
  "summary": "Six demos, Chason Arthur tutorials and the reviewed architecture field note are prepared and tested. Static publication approval is pending; no new demo is live.",
  "status": {
    "prepared": true,
    "tested": true,
    "independentlyReviewed": true,
    "published": false
  },
  "pullRequest": "https://github.com/chasonarthur/zyel.io/pull/2",
  "pullRequestState": "draft",
  "projectLead": "Chason Arthur",
  "tutorialByline": "Chason Arthur",
  "authorshipBoundary": "Project leadership and tutorial attribution do not assert sole authorship or unverified production operation.",
  "stories": 6,
  "assignments": [
    {
      "route": "territory",
      "builder": "gis_builder",
      "reviewer": "gis_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Independent rendered UI, code, tutorial and tests; bounded defect rechecks"
    },
    {
      "route": "dealer-portal",
      "builder": "portal_builder",
      "reviewer": "portal_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Independent rendered UI, code, tutorial and tests; bounded defect rechecks"
    },
    {
      "route": "ai-workbench",
      "builder": "ai_builder",
      "reviewer": "ai_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Independent rendered UI, code, tutorial and tests; bounded defect rechecks"
    },
    {
      "route": "workspace-studio",
      "builder": "studio_builder",
      "reviewer": "studio_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Independent rendered UI, code, tutorial and tests; bounded defect rechecks"
    },
    {
      "route": "input-resilience",
      "builder": "input_builder",
      "reviewer": "input_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Independent rendered UI, code, tutorial and tests; bounded defect rechecks"
    },
    {
      "route": "answer-gateway",
      "builderRoles": [
        "track root",
        "demo_builder"
      ],
      "researcher": "reference_researcher",
      "reviewer": "independent_reviewer",
      "substantiveReviewPasses": 3,
      "reviewType": "Separately accepted Gateway track; focused collection integration accepted with 66 checks and 30 boundary rechecks"
    }
  ],
  "tests": {
    "integratedNodeTests": 104,
    "integratedNodeResult": "passed",
    "phpValidatorAssertions": 9,
    "localLaravelTests": 10,
    "localLaravelAssertions": 46,
    "independentPortalBoundaryTests": 3,
    "independentPortalBoundaryAssertions": 35,
    "foundationBrowserChecks": 14,
    "foundationResult": "passed; exact persisted readback and failure cases",
    "combinedSmoke": "generated/release-smoke.json",
    "hostedCI": {
      "runId": 40152057455,
      "url": "https://github.com/chasonarthur/zyel.io/actions/runs/40152057455",
      "status": "completed",
      "conclusion": "success",
      "sourceHead": "d0b0ae1b04a8348f237c2e675d1ea173cc261250",
      "workflow": ".github/workflows/dealer-portal.yml",
      "trigger": "pull_request",
      "checkedAt": "2026-10-25T01:49:43Z",
      "jobs": [
        {
          "id": 121045453535,
          "name": "backend (mysql)",
          "result": "success",
          "tests": 10,
          "assertions": 46
        },
        {
          "id": 121045453562,
          "name": "backend (sqlite)",
          "result": "success",
          "tests": 10,
          "assertions": 46
        },
        {
          "id": 121045453538,
          "name": "browser",
          "result": "success"
        }
      ],
      "mysqlRuntime": {
        "php": "8.4.27",
        "database": "8.4.13",
        "driver": "pdo_mysql",
        "os": "Linux"
      },
      "mysqlEvidence": {
        "file": "mysql-query-benchmark.json",
        "method": "Exact JSON extracted from fresh benchmark job log after removing GitHub timestamp prefixes; no benchmark rerun or invented values.",
        "artifactId": 12583261490,
        "artifactZipSha256": "545bee21f013dbdc3e43a7c60007fd3be5a23d07cc0fbdc407be082b43d85b8a"
      },
      "limits": "Synthetic disposable CI database and warm single-client query slice. Browser preview role controls stay simulated; persistent identity, production load and live backend are outside this test."
    }
  },
  "demos": [
    {
      "name": "GIS Territory Explorer",
      "route": "/lab/territory/",
      "tutorial": "/lab/territory/tutorial.html",
      "mode": "Synthetic client FeatureLayer, real ArcGIS SDK 5.1.27 render",
      "verified": "8 spatial/service tests; real 72-feature map and pointer selection; record reveal, saved filters, comparisons and failure states; three independent passes",
      "boundary": "Hosted feature-service publication, operation/SLA and full ARC828 fulfillment are unproven."
    },
    {
      "name": "AI Integration Workbench",
      "route": "/lab/ai-workbench/",
      "tutorial": "/lab/ai-workbench/tutorial.html",
      "mode": "Deterministic fixture; local Vue Bold Lens; live endpoint disabled",
      "verified": "19 core tests, 9 PHP validator assertions, exact citations, human review, cancel/timeout/rate budget, injection cases and reload recovery; three independent passes",
      "boundary": "Live provider behavior/cost/accuracy and production identity are unproven."
    },
    {
      "name": "Vue Dealer Portal",
      "route": "/lab/dealer-portal/",
      "tutorial": "/lab/dealer-portal/tutorial.html",
      "mode": "Synthetic browser workflow with simulated roles; separate tested Laravel backend",
      "verified": "Vue/TypeScript build and 4 domain tests; 10 Laravel tests/46 assertions on SQLite and MySQL CI; measured 50k-row MySQL plan slice; three independent passes",
      "boundary": "Persistent identity/live ordering is disabled; production concurrency, traffic and operational scale are unproven."
    },
    {
      "name": "UX Workspace Studio",
      "route": "/lab/workspace-studio/",
      "tutorial": "/lab/workspace-studio/tutorial.html",
      "mode": "Allowlisted CSS tokens and versioned browser preferences",
      "verified": "9 model tests; validated JSON migration/import, presets/undo/reset, table state and keyboard/contrast/failure cases; three independent passes",
      "boundary": "Appearance applies to five shared-shell demos and the architecture article; Gateway retains its standalone local presentation. Legacy Celebration and third-party internals retain their controls. WordPress capability is unproven."
    },
    {
      "name": "Input Resilience Lab",
      "route": "/lab/input-resilience/",
      "tutorial": "/lab/input-resilience/tutorial.html",
      "mode": "Synthetic verifier, loopback server option and fixture AWS telemetry",
      "verified": "15 core/HTTP tests; eager/explicit flow, stale/abort/dedupe, expiration/replay/cooldown, redacted bounded events and consent UI; three independent passes",
      "boundary": "Real-device autofill/WebOTP, manual screen readers, real MFA/SMS and live AWS are unverified."
    },
    {
      "name": "Answer-first Gateway",
      "route": "/lab/answer-gateway/",
      "tutorial": "/lab/answer-gateway/tutorial.html",
      "mode": "Browser fixture; approved exact public references before a disconnected AI adapter",
      "verified": "43 focused tests; 200 public entries; finite held-out set 125 outcomes: 20 direct and 105 fallback; separately reviewed in three passes",
      "boundary": "Positive cases test outer trimming only. 15.70% estimated-token reduction is simulated, not monetary savings. Actual provider/model/billable usage is zero. No production API/auth/provider integration."
    }
  ],
  "sharedContract": {
    "data": "72 synthetic service/dealer locations; approximate city centers and deterministic offsets; invented metrics",
    "DataTables": "3.1.4",
    "ColReorder": "3.1.2",
    "storageNamespace": "zyel.lab:v2:<scope>",
    "retentionDays": 30,
    "locality": "Device/browser-local; no account sync",
    "privateData": "No credentials, private business records or AI conversations stored by default",
    "import": "Exact allowlisted token values; bounded JSON; no executable HTML/templates/CSS imports",
    "appearanceScope": "Five shared-shell demos and the architecture field note; Gateway retains its standalone local presentation.",
    "referenceLicense": "Gateway code MIT; FAQ text/compilation CC BY-SA 4.0 with source attribution."
  },
  "releaseBoundary": {
    "package": "Explicit static allowlist from lab/tools/package-static.mjs",
    "excluded": "Backend/PHP and Node servers, dependencies, tests/tools/build scripts, environments/credentials, private briefs/framework evidence, Gateway internal files beyond its exact fifteen-file allowlist",
    "approval": "Owner approval of exact static artifact, existing-host stage/rollback and URL readbacks required before publication"
  },
  "qualificationBoundaries": [
    "Technical implementation does not establish years, degrees, people management, client references or high-traffic operation.",
    "ARC804v2 WordPress support remains a gap; ARC828 requires complete document verification and multiple dashboards/hosting beyond this prototype.",
    "No bids or job applications submitted."
  ],
  "supportingArticles": [
    {
      "title": "Designing international content as a publishing system",
      "route": "/lab/field-notes/international-architecture.html",
      "author": "Chason Arthur",
      "role": "Project Lead",
      "status": "Independently reviewed for public-safe source fidelity, rendered layout and boundaries; publication pending",
      "source": "Only the reviewed public-safe draft from the separate architecture investigation",
      "boundaries": "No operating-country total, production build identity, legal rationale or executed framework benchmark established; private code/evidence/matrices excluded"
    }
  ],
  "gateway": {
    "sourceCommit": "9d28977a285f59e8f04ad2176f7e81722c287b7b",
    "inputManifestSha256": "3bc96f062336a5909bbee98e8560982528fd0b2578c59dba44fe70c7590ccea3",
    "reviewedStaticFiles": 15,
    "fixtureOnly": true,
    "entries": 200,
    "focusedTests": 43,
    "heldout": {
      "outcomes": 125,
      "direct": 20,
      "fallback": 105,
      "directCoverage": 0.16,
      "falseMatches": 0,
      "positiveLimit": "Outer-trim formatting checks only; no semantic-generalization proof"
    },
    "simulation": {
      "baselineUnits": 14174,
      "gatedUnits": 11948,
      "reductionPercent": 15.7,
      "method": "UTF-8 bytes / 4 heuristic, deterministic fixture completion"
    },
    "actual": {
      "modelCalls": 0,
      "billableTokens": 0,
      "costUsd": 0
    }
  }
}
