{
  "id": "studio-aaf8b884-dd68-4eec-a2ce-ba1c8622d9ef",
  "scope": "studio_project",
  "source_of_truth": "supabase.studio_artifacts",
  "source_path": "studio_artifacts/aaf8b884-dd68-4eec-a2ce-ba1c8622d9ef",
  "source_kind": "supabase_json",
  "visibility": "internal",
  "renderer_id": "design_doc.dreamborn-forge.generated.v1",
  "design_system": "dreamborn-design-system:forge",
  "generated_at": "2026-05-10T18:19:39.273Z",
  "artifact_type": "build-execution",
  "schema_version": "studio_artifact.generated.v1",
  "title": "Slice 60 Local Admin Fallback Guard Checkpoint",
  "summary": "build-execution artifact · for B2BEA.org Rebuild · phase S-60 · status completed",
  "status": "completed",
  "version": 1,
  "phase_id": "S-60",
  "project_id": "a820dd0c-6cef-4133-bfbd-d802fd806e44",
  "project_slug": "b2bea-b2bea-a820dd0c",
  "project_title": "B2BEA.org Rebuild",
  "client_id": "b2bea",
  "platform_project_id": null,
  "created_at": "2026-05-10T02:04:14.772281+00:00",
  "updated_at": "2026-05-10T02:04:14.772281+00:00",
  "format_source": "supabase_json",
  "content_shape": [
    "pr",
    "repo",
    "slice",
    "title",
    "branch",
    "status",
    "changes",
    "project",
    "merged_at",
    "next_action",
    "merge_commit",
    "verification"
  ],
  "content_data": {
    "pr": "https://github.com/b2bea-org/b2bea-website/pull/95",
    "repo": "https://github.com/b2bea-org/b2bea-website",
    "slice": "S-60",
    "title": "Slice 60 Local Admin Fallback Guard Checkpoint",
    "branch": "feature/b2bea-slice-60-local-fallbacks",
    "status": "completed",
    "changes": [
      "Removed the hard-coded http://localhost:3333 Sanity Studio fallback from the admin dashboard.",
      "Removed the same local Studio fallback from the shared admin navigation partial.",
      "Sanity Studio links now render only when env.SANITY_STUDIO_URL is configured.",
      "Added regression coverage so admin nav/dashboard cannot reintroduce localhost:3333."
    ],
    "project": "B2BEA Website",
    "merged_at": "2026-05-10T02:01:34Z",
    "next_action": "Start Slice 61 from origin/main and continue production hardening/release-readiness checks.",
    "merge_commit": "b879795b9eb7594032bddce74a40dc377f03a572",
    "verification": [
      "node --test test/adminRuntimeGuard.test.js passed 5/5.",
      "localhost:3333 scan across src/test/scripts now only matches test assertions.",
      "node scripts/audit-css-governance.js passed.",
      "node scripts/audit-js-governance.js passed.",
      "git diff --check passed.",
      "npm test passed 125/125.",
      "npm run build exited 0 locally; temporary internet disconnect caused podcast feed fallback and a reduced local output count, while remote checks used normal connectivity.",
      "GitHub Actions and Cloudflare Pages passed before merge."
    ]
  },
  "sections": [
    {
      "title": "Next Action",
      "level": 2,
      "body": "Start Slice 61 from origin/main and continue production hardening/release-readiness checks."
    }
  ],
  "html_path": "projects/b2bea-b2bea-a820dd0c/artifacts/build-execution-s-60-aaf8b884.html",
  "json_path": "projects/b2bea-b2bea-a820dd0c/artifacts/build-execution-s-60-aaf8b884.json"
}