{
  "id": "shipwright-evidence-index",
  "generatedAt": "2026-09-17T15:08:03.039Z",
  "repo": "matthoffner/shipwright",
  "mode": "dry_run",
  "health": "missing",
  "summary": "12 evidence components missing; Observe owns this run; 0 fallback lanes remain eligible and 4 lanes are blocked or off.",
  "primary": {
    "selectedLane": "observe",
    "selectedTask": "observe:build_consensus_context",
    "deployUrl": "https://shipwright-seven-murex.vercel.app",
    "safetyState": "not_recorded",
    "deployState": "deployed",
    "gitPublishState": "published",
    "doctorState": "not_recorded",
    "adoptionState": "not_recorded",
    "adoptionSmokeState": "not_recorded",
    "projectDependencyState": "not_recorded",
    "browserInstallState": "not_recorded",
    "workflowGateState": "not_recorded",
    "verificationState": "not_recorded",
    "autonomyReadinessState": "not_recorded",
    "codexProviderState": "skipped",
    "codexWorkerState": "not_recorded",
    "ciRunState": "not_recorded",
    "ciPreflightState": "not_recorded",
    "ciWorkCycleState": "not_recorded",
    "ciFinalizeState": "not_recorded"
  },
  "counts": {
    "ready": 4,
    "attention": 5,
    "blocked": 0,
    "missing": 12
  },
  "components": [
    {
      "id": "lane_board",
      "label": "Lane Board",
      "health": "ready",
      "state": "selected",
      "sourcePath": "site/lane-board.json",
      "summary": "Observe owns this run; 0 fallback lanes remain eligible and 4 lanes are blocked or off.",
      "evidence": [
        "outcome: dry_run",
        "mode: dry_run",
        "selected_lane: observe",
        "selected_task: observe:build_consensus_context"
      ],
      "nextActions": [
        "Execute observe:build_consensus_context in the Observe lane.",
        "Clear blocker for intake: No task is queued in this lane for the current run.",
        "Clear blocker for build: No task is queued in this lane for the current run.",
        "Clear blocker for review: No task is queued in this lane for the current run."
      ]
    },
    {
      "id": "current_state",
      "label": "Current State",
      "health": "attention",
      "state": "has_blockers",
      "sourcePath": "site/current-state.json",
      "summary": "Evidence-Bound Release Stories is the latest product outcome; 0 work orders ready, 4 blocked targets across 4 failing checks.",
      "evidence": [
        "ready_work_orders: 0",
        "blocked: 4",
        "blocking_checks: 4"
      ],
      "nextActions": [
        "Shipwright Site: needs more signal",
        "Onboarding Flow Experiment: needs more signal",
        "Pricing Page Experiment: needs more signal",
        "Product history Focused Section Size: fail - Largest changelog section has 225 entries; DevBox-style sections stay small and outcome-specific."
      ]
    },
    {
      "id": "ab_consensus_queue",
      "label": "A/B Consensus Queue",
      "health": "ready",
      "state": "blocked",
      "sourcePath": "site/ab-consensus-queue.json",
      "summary": "Shipwright Site is the first A/B consensus blocker; clear the evidence gaps before promoting Variant A.",
      "evidence": [
        "work_orders: 3",
        "ship: 0",
        "watch: 0",
        "blocked: 3"
      ],
      "nextActions": [
        "Complete the primary unblock action for Shipwright Site: Run surface capture after the target runtime renders all expected signals.",
        "Regenerate the report and confirm the item leaves blocked status or records a narrower blocker."
      ]
    },
    {
      "id": "doctor",
      "label": "Doctor",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/doctor-status.json",
      "summary": "No Shipwright doctor status has been recorded for this report.",
      "evidence": [
        "metrics/doctor-status.json missing"
      ],
      "nextActions": [
        "Run shipwright doctor before enabling scheduled autonomous runs."
      ]
    },
    {
      "id": "adoption",
      "label": "Adoption",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/adoption-status.json",
      "summary": "No Shipwright adoption check has been recorded for this report.",
      "evidence": [
        "metrics/adoption-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-run before enabling scheduled writes."
      ]
    },
    {
      "id": "adoption_smoke",
      "label": "Adoption Smoke",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/adoption-smoke-status.json",
      "summary": "No Shipwright adoption smoke status has been recorded.",
      "evidence": [
        "metrics/adoption-smoke-status.json missing"
      ],
      "nextActions": [
        "Run shipwright adoption-smoke before enabling external project schedules."
      ]
    },
    {
      "id": "project_dependencies",
      "label": "Project Dependencies",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/project-dependency-status.json",
      "summary": "No project dependency install status has been recorded.",
      "evidence": [
        "metrics/project-dependency-status.json missing"
      ],
      "nextActions": [
        "Run shipwright install-project-dependencies before verification."
      ]
    },
    {
      "id": "browser_install",
      "label": "Browser Install",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/browser-install-status.json",
      "summary": "No Playwright browser install status has been recorded.",
      "evidence": [
        "metrics/browser-install-status.json missing"
      ],
      "nextActions": [
        "Run shipwright install-browser before surface capture steps."
      ]
    },
    {
      "id": "workflow_gate",
      "label": "Workflow Gate",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/workflow-gate-status.json",
      "summary": "No Shipwright workflow gate status has been recorded.",
      "evidence": [
        "metrics/workflow-gate-status.json missing"
      ],
      "nextActions": [
        "Run shipwright workflow-gate before the long CI pipeline starts."
      ]
    },
    {
      "id": "ci_run",
      "label": "CI Run",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/ci-run-status.json",
      "summary": "CI run has not been recorded for this report.",
      "evidence": [
        "metrics/ci-run-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-run in CI."
      ]
    },
    {
      "id": "ci_preflight",
      "label": "CI Preflight",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/ci-preflight-status.json",
      "summary": "CI preflight has not been recorded for this report.",
      "evidence": [
        "metrics/ci-preflight-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-preflight in CI."
      ]
    },
    {
      "id": "ci_work_cycle",
      "label": "CI Work Cycle",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/ci-work-cycle-status.json",
      "summary": "CI work cycle has not been recorded for this report.",
      "evidence": [
        "metrics/ci-work-cycle-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-work-cycle in CI."
      ]
    },
    {
      "id": "safety",
      "label": "Safety",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/safety-status.json",
      "summary": "No Shipwright safety check has been recorded for this report.",
      "evidence": [
        "safety-status.json missing"
      ],
      "nextActions": [
        "Run shipwright safety-check before orchestration in GitHub Actions."
      ]
    },
    {
      "id": "verification",
      "label": "Verification",
      "health": "attention",
      "state": "not_recorded",
      "sourcePath": "site/verification-status.json",
      "summary": "No verification status has been recorded for this report.",
      "evidence": [
        "metrics/verification-status.json missing"
      ],
      "nextActions": [
        "Run shipwright verify after autonomous worker changes to capture verification evidence."
      ]
    },
    {
      "id": "autonomy_readiness",
      "label": "Autonomy Readiness",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/autonomy-readiness-status.json",
      "summary": "No Shipwright autonomy readiness status has been recorded for this report.",
      "evidence": [
        "metrics/autonomy-readiness-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-work-cycle before enabling autonomous or YOLO writes."
      ]
    },
    {
      "id": "deployment",
      "label": "Deployment",
      "health": "ready",
      "state": "deployed",
      "sourcePath": "site/deploy-status.json",
      "summary": "Canonical Vercel production artifact is deployed from e80ed23 on main.",
      "evidence": [
        "provider: vercel",
        "state: deployed",
        "blocker: none",
        "VERCEL_TOKEN: missing",
        "VERCEL_ORG_ID: configured",
        "VERCEL_PROJECT_ID: configured",
        "canonical_production_artifact: true",
        "vercel_environment: production",
        "vercel_git_commit: e80ed238331eafc832b280945d9e9190863786d4",
        "vercel_git_ref: main",
        "release_commit: e80ed238331eafc832b280945d9e9190863786d4",
        "release_commit_matches: true",
        "release_published: true",
        "canonical_url: https://shipwright-seven-murex.vercel.app",
        "canonical_url_matches: true",
        "expected_repository: matthoffner/shipwright",
        "vercel_repository: matthoffner/shipwright",
        "vercel_repository_matches: true",
        "expected_project_id: prj_J2QHAmnzUT71CNyr5wNi4wOmwj92",
        "vercel_project_id: prj_J2QHAmnzUT71CNyr5wNi4wOmwj92",
        "vercel_project_matches: true"
      ],
      "nextActions": []
    },
    {
      "id": "ci_finalize",
      "label": "CI Finalize",
      "health": "missing",
      "state": "not_recorded",
      "sourcePath": "site/ci-finalize-status.json",
      "summary": "CI finalize has not been recorded for this report.",
      "evidence": [
        "metrics/ci-finalize-status.json missing"
      ],
      "nextActions": [
        "Run shipwright ci-finalize in CI."
      ]
    },
    {
      "id": "git_publish",
      "label": "Git Publish",
      "health": "ready",
      "state": "published",
      "sourcePath": "site/git-publish-status.json",
      "summary": "Release source e80ed23 is published on origin/main and bound to this Vercel production artifact.",
      "evidence": [
        "commit: e80ed238331eafc832b280945d9e9190863786d4",
        "identity_source: vercel",
        "checkout_commit: missing",
        "remote_ref: missing",
        "remote_ref_matches: false",
        "vercel_git_commit: e80ed238331eafc832b280945d9e9190863786d4",
        "vercel_git_ref: main",
        "vercel_ref_matches: true",
        "vercel_environment: production",
        "expected_repository: matthoffner/shipwright",
        "vercel_repository: matthoffner/shipwright",
        "vercel_repository_matches: true",
        "expected_project_id: prj_J2QHAmnzUT71CNyr5wNi4wOmwj92",
        "vercel_project_id: prj_J2QHAmnzUT71CNyr5wNi4wOmwj92",
        "vercel_project_matches: true",
        "vercel_production_artifact: true",
        "git_status_observed: false",
        "working_tree_clean: unknown"
      ],
      "nextActions": []
    },
    {
      "id": "codex_provider",
      "label": "Codex Provider",
      "health": "attention",
      "state": "skipped",
      "sourcePath": "site/codex-provider-status.json",
      "summary": "OPENROUTER_API_KEY is not set; Codex provider setup was skipped.",
      "evidence": [
        "provider: openrouter",
        "model: openai/gpt-5.1-codex-mini",
        "OPENROUTER_API_KEY: missing"
      ],
      "nextActions": [
        "Add OPENROUTER_API_KEY as a GitHub Actions secret before non-dry-run writes."
      ]
    },
    {
      "id": "codex_worker",
      "label": "Codex Worker",
      "health": "attention",
      "state": "not_recorded",
      "sourcePath": "site/codex-worker-status.json",
      "summary": "No Codex worker run has been recorded for this report.",
      "evidence": [
        "codex-worker-status.json missing"
      ],
      "nextActions": [
        "Run Shipwright Dogfood in non-dry-run mode to capture worker execution evidence."
      ]
    },
    {
      "id": "worker_contract",
      "label": "Worker Contract",
      "health": "attention",
      "state": "unknown",
      "sourcePath": "site/codex-contract-status.json",
      "summary": "No Codex worker contract trace has been recorded for this report.",
      "evidence": [
        "commands: 0",
        "first edit command index: -1"
      ],
      "nextActions": [
        "Run Shipwright Dogfood in non-dry-run mode to capture worker contract evidence."
      ]
    }
  ],
  "nextActions": [
    "Shipwright Site: needs more signal",
    "Onboarding Flow Experiment: needs more signal",
    "Pricing Page Experiment: needs more signal",
    "Product history Focused Section Size: fail - Largest changelog section has 225 entries; DevBox-style sections stay small and outcome-specific.",
    "Run shipwright doctor before enabling scheduled autonomous runs.",
    "Run shipwright ci-run before enabling scheduled writes.",
    "Run shipwright adoption-smoke before enabling external project schedules.",
    "Run shipwright install-project-dependencies before verification."
  ]
}
