{
  "version": 1,
  "reviewedAt": "2026-10-02",
  "license": "MIT",
  "resources": [
    {
      "id": "project-proposal",
      "name": "Project-Proposal.md",
      "standard": "PPS",
      "standardSlug": "pps",
      "family": "planning",
      "type": "template",
      "summary": "Define the purpose, boundaries, milestones and success criteria for one project.",
      "customize": "Replace project identity, scope, constraints and version goals; remove sections you do not need.",
      "path": "PPS/templates/Project-Proposal.md",
      "href": "/city-hall/resources/files/PPS/templates/Project-Proposal.md",
      "problems": ["planning"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["project-manifest", "project-readmap", "proposal-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "28991d576dc5f197a53b857e546b0f42692f3c406390ed866931b2292f8352d2",
      "example": "proposal-example"
    },
    {
      "id": "project-manifest",
      "name": "PROJECT.manifest.toml",
      "standard": "PPS",
      "standardSlug": "pps",
      "family": "planning",
      "type": "template",
      "summary": "Record a proposal in machine-readable form.",
      "customize": "Replace proposal identity, responsibility, mission and readiness; keep only fields your workflow uses.",
      "path": "PPS/templates/PROJECT.manifest.toml",
      "href": "/city-hall/resources/files/PPS/templates/PROJECT.manifest.toml",
      "problems": ["planning"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["project-proposal", "project-readmap", "proposal-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "eeb77066bb27c8e27821e359482f6f75ff3df9b0257d3021b6d2ffac17e43a19"
    },
    {
      "id": "project-readmap",
      "name": "PROJECT-READMAP.toml",
      "standard": "PPS",
      "standardSlug": "pps",
      "family": "planning",
      "type": "template",
      "summary": "Prioritize the files a person or agent should read to understand a project.",
      "customize": "Replace project names, mandatory paths, ranks and file budgets. This is a reading map, not a milestone roadmap.",
      "path": "PPS/templates/PROJECT-READMAP.toml",
      "href": "/city-hall/resources/files/PPS/templates/PROJECT-READMAP.toml",
      "problems": ["planning"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["project-proposal", "project-manifest", "proposal-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "6fd089c9430899e286692e22050bc6188aea4906c3798b03dd97a1e80d0b1e14"
    },
    {
      "id": "proposal-example",
      "name": "Example-CLI-Project-Proposal.md",
      "standard": "PPS",
      "standardSlug": "pps",
      "family": "planning",
      "type": "example",
      "summary": "See how a CLI project defines bounded scope and delivery goals.",
      "customize": "Use the structure; replace the example project and its assumptions. This is an illustrative example.",
      "path": "PPS/examples/Example-CLI-Project-Proposal.md",
      "href": "/city-hall/resources/files/PPS/examples/Example-CLI-Project-Proposal.md",
      "problems": ["planning"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["project-proposal", "project-manifest", "project-readmap"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "390cdb21a4e49f731103352333298325c32213d5ddfc29147dd528a6d78f5dbf"
    },
    {
      "id": "pps-validator",
      "name": "pps_validate.py",
      "standard": "PPS",
      "standardSlug": "pps",
      "family": "planning",
      "type": "script",
      "summary": "Check required proposal fields and registered values.",
      "customize": "Adapt required fields and value sets to your own proposal rules. Requires Python 3.11 or later; standard library only.",
      "path": "PPS/tools/pps_validate.py",
      "href": "/city-hall/resources/files/PPS/tools/pps_validate.py",
      "problems": ["planning"],
      "effort": "setup",
      "actions": ["view", "download", "copy"],
      "related": ["project-proposal", "project-manifest", "project-readmap"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "ea24ae46377e3ecea202942eb2c268a40643c887f21aa92bc2edfc428c15ef5a",
      "run": {
        "requirements": "Python 3.11+. No third-party packages.",
        "command": "python pps_validate.py PROJECT.manifest.toml --json"
      }
    },
    {
      "id": "agent-task",
      "name": "Agent-Task-Record.md",
      "standard": "ATS",
      "standardSlug": "ats",
      "family": "agents",
      "type": "template",
      "summary": "Record task scope, work completed, evidence and remaining work.",
      "customize": "Replace task identity, scope, outcomes and validation results; retain only useful sections.",
      "path": "ATS/templates/Agent-Task-Record.md",
      "href": "/city-hall/resources/files/ATS/templates/Agent-Task-Record.md",
      "problems": ["agents"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["handoff-note", "agent-closeout", "blocked-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "2d5d2709f14348385f9d3772b79b3867c34e7e3a165b17ca21ac8dc046276320",
      "example": "agent-example"
    },
    {
      "id": "handoff-note",
      "name": "Handoff-Note.md",
      "standard": "ATS",
      "standardSlug": "ats",
      "family": "agents",
      "type": "template",
      "summary": "Give the next person or agent enough context to continue.",
      "customize": "Replace current state, blockers, paths and next actions.",
      "path": "ATS/templates/Handoff-Note.md",
      "href": "/city-hall/resources/files/ATS/templates/Handoff-Note.md",
      "problems": ["agents"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["agent-task", "agent-closeout", "blocked-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "c97598a8a7c8acdfa8b40508727722c698f998fe670b2ec24acff8cbbe136e5f",
      "example": "blocked-example"
    },
    {
      "id": "agent-example",
      "name": "Completed-Agent-Task-Record.md",
      "standard": "ATS",
      "standardSlug": "ats",
      "family": "agents",
      "type": "example",
      "summary": "See a completed task record with outcomes and evidence.",
      "customize": "Replace the illustrative task and checks; do not inherit its completion claims.",
      "path": "ATS/examples/Completed-Agent-Task-Record.md",
      "href": "/city-hall/resources/files/ATS/examples/Completed-Agent-Task-Record.md",
      "problems": ["agents"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["handoff-note", "agent-task", "agent-closeout"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "bd7049a8ec0404a571ec3304bf14111cf5a92494a8d28365d30f054140b41f85"
    },
    {
      "id": "blocked-example",
      "name": "Blocked-Handoff-Note.md",
      "standard": "ATS",
      "standardSlug": "ats",
      "family": "agents",
      "type": "example",
      "summary": "See how blocked work can be handed off clearly.",
      "customize": "Replace the illustrative blocker, recovery options and next owner.",
      "path": "ATS/examples/Blocked-Handoff-Note.md",
      "href": "/city-hall/resources/files/ATS/examples/Blocked-Handoff-Note.md",
      "problems": ["agents"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["handoff-note", "agent-task", "agent-closeout"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "ab90a7c2567bdafdf0fdafa79f4a079e12d236b1312f2d43313dec84e47c20ed"
    },
    {
      "id": "agent-closeout",
      "name": "Agent-Closeout-Procedure.md",
      "standard": "WGS",
      "standardSlug": "wgs",
      "family": "agents",
      "type": "guide",
      "summary": "Close work with outcomes, evidence and recovery context.",
      "customize": "Adapt required records and checks to your own workspace.",
      "path": "WGS/Agent-Closeout-Procedure.md",
      "href": "/city-hall/resources/files/WGS/Agent-Closeout-Procedure.md",
      "problems": ["agents"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["handoff-note", "agent-task", "blocked-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "6f26bc9a5cfea63f0136b818fdd86c5b6e24d73f4162de83b5067bf309bddf63"
    },
    {
      "id": "workspace-health",
      "name": "Workspace-Health-Record.md",
      "standard": "WGS",
      "standardSlug": "wgs",
      "family": "workspace",
      "type": "template",
      "summary": "Make workspace health, drift and follow-up work visible.",
      "customize": "Replace workspace identity, findings, ownership and review dates.",
      "path": "WGS/templates/Workspace-Health-Record.md",
      "href": "/city-hall/resources/files/WGS/templates/Workspace-Health-Record.md",
      "problems": ["workspace"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["development-manifest", "blank-directory"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "dac73d348742d2de2b4ebeec1f0e6e7f38753a2ddc8fe53de44b823af272eeee"
    },
    {
      "id": "development-manifest",
      "name": "Development.manifest.toml",
      "standard": "WGS",
      "standardSlug": "wgs",
      "family": "workspace",
      "type": "template",
      "summary": "Register workspace roots and their governance responsibilities.",
      "customize": "Replace roots, child registrations, policies and local paths.",
      "path": "WGS/templates/Development.manifest.toml",
      "href": "/city-hall/resources/files/WGS/templates/Development.manifest.toml",
      "problems": ["workspace"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["workspace-health", "blank-directory"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "57fb2a16164085db09c198a37302e6e26cb6f5f0442b0e2fff7622fa9ce4bf57"
    },
    {
      "id": "release-checklist",
      "name": "Release-Checklist.md",
      "standard": "DRS",
      "standardSlug": "drs",
      "family": "releases",
      "type": "checklist",
      "summary": "Track the evidence needed before distributing a release.",
      "customize": "Choose checks for your release channel; replace Windows and Store assumptions if they do not apply.",
      "path": "DRS/templates/Release-Checklist.md",
      "href": "/city-hall/resources/files/DRS/templates/Release-Checklist.md",
      "problems": ["releases"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": [
        "reproducibility-guide",
        "dependency-provenance",
        "release-note"
      ],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "007f7c5769089fb0a008c20b548626f784fbe6e634bdf9d1ddae47bc292329af"
    },
    {
      "id": "reproducibility-guide",
      "name": "Build-Reproducibility-Guide.md",
      "standard": "DRS",
      "standardSlug": "drs",
      "family": "releases",
      "type": "guide",
      "summary": "Document how someone can rebuild a specific release.",
      "customize": "Replace tool versions, inputs, commands, environment and expected artifacts.",
      "path": "DRS/templates/Build-Reproducibility-Guide.md",
      "href": "/city-hall/resources/files/DRS/templates/Build-Reproducibility-Guide.md",
      "problems": ["releases"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dependency-provenance", "release-checklist", "release-note"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "cdebe8d66894de2c69d194ac9973eebd4c38064029f89f72fc6e24b838821848"
    },
    {
      "id": "dependency-provenance",
      "name": "Dependency-Provenance.md",
      "standard": "DRS",
      "standardSlug": "drs",
      "family": "releases",
      "type": "template",
      "summary": "Record where dependencies came from and how they were pinned.",
      "customize": "Replace dependencies, versions, origins and integrity evidence.",
      "path": "DRS/templates/Dependency-Provenance.md",
      "href": "/city-hall/resources/files/DRS/templates/Dependency-Provenance.md",
      "problems": ["releases"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["reproducibility-guide", "release-checklist", "release-note"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "ed5a0089d07c88104e60ab78c828b468dd1f37e0e9ab29219264e04be58e50c1"
    },
    {
      "id": "release-note",
      "name": "Release-Note.md",
      "standard": "DRS",
      "standardSlug": "drs",
      "family": "releases",
      "type": "template",
      "summary": "Explain changes, distribution and verification evidence for a release.",
      "customize": "Replace release identity, changes, limitations and evidence links.",
      "path": "DRS/templates/Release-Note.md",
      "href": "/city-hall/resources/files/DRS/templates/Release-Note.md",
      "problems": ["releases"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": [
        "reproducibility-guide",
        "dependency-provenance",
        "release-checklist"
      ],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "b8d5e9093362eba00f1dd562db489e87ca16da606416c66d8ec7eeb330837d6d"
    },
    {
      "id": "hash-manifest",
      "name": "Hash-Manifest.toml",
      "standard": "AAMHS",
      "standardSlug": "aamhs",
      "family": "integrity",
      "type": "template",
      "summary": "Record multiple hashes for an archive and its preservation context.",
      "customize": "Replace archive identity, algorithms, digests and paths with measured values.",
      "path": "AAMHS/templates/Hash-Manifest.toml",
      "href": "/city-hall/resources/files/AAMHS/templates/Hash-Manifest.toml",
      "problems": ["integrity"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["archive-integrity", "hash-example", "release-hash"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "f8b2cfc748372116e28dc535a49807afe40eba6969223fb27db4f71cea259151",
      "example": "hash-example"
    },
    {
      "id": "archive-integrity",
      "name": "Archive-Integrity-Record.md",
      "standard": "AAMHS",
      "standardSlug": "aamhs",
      "family": "integrity",
      "type": "template",
      "summary": "Document an archive integrity check and its limitations.",
      "customize": "Replace archive identity, measured results, tools, dates and verification boundaries.",
      "path": "AAMHS/templates/Archive-Integrity-Record.md",
      "href": "/city-hall/resources/files/AAMHS/templates/Archive-Integrity-Record.md",
      "problems": ["integrity"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["hash-manifest", "hash-example", "release-hash"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "eaa07fb3a6d46c4565191bd699165cfed8f102d9d32aa4d5aa05fb51c8f5d565"
    },
    {
      "id": "hash-example",
      "name": "Example-Hash-Manifest.toml",
      "standard": "AAMHS",
      "standardSlug": "aamhs",
      "family": "integrity",
      "type": "example",
      "summary": "Inspect the structure of an illustrative archive hash manifest.",
      "customize": "Replace all example values; example digests are not evidence for your files.",
      "path": "AAMHS/examples/Example-Hash-Manifest.toml",
      "href": "/city-hall/resources/files/AAMHS/examples/Example-Hash-Manifest.toml",
      "problems": ["integrity"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["hash-manifest", "archive-integrity", "release-hash"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "2bfcc5855e65489b277c44d739fbc2639f84e662b9244870536922f23cf4d4ca"
    },
    {
      "id": "release-hash",
      "name": "Release-Hash-Record.md",
      "standard": "ARHS",
      "standardSlug": "arhs",
      "family": "integrity",
      "type": "template",
      "summary": "Publish hash and distribution provenance for a release artifact.",
      "customize": "Replace artifact identity, measured digest and distribution/signing context.",
      "path": "ARHS/templates/Release-Hash-Record.md",
      "href": "/city-hall/resources/files/ARHS/templates/Release-Hash-Record.md",
      "problems": ["integrity"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["hash-manifest", "archive-integrity", "hash-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "061d04f62f95f2b7ca622a46ac7c00d134b4f02fa36385b792ac0c5027b5c8d9"
    },
    {
      "id": "dataset-manifest",
      "name": "DATASET.manifest.toml",
      "standard": "DDS",
      "standardSlug": "dds",
      "family": "datasets",
      "type": "template",
      "summary": "Describe a dataset and its provenance, splits and lifecycle.",
      "customize": "Replace identity, sources, dataset license, splits and validation notes. The dataset license is separate from this template license.",
      "path": "DDS/templates/DATASET.manifest.toml",
      "href": "/city-hall/resources/files/DDS/templates/DATASET.manifest.toml",
      "problems": ["datasets"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dataset-provenance", "dataset-license", "dataset-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "84f759199c00d0bb28da45081fad23d7505adbb8c9e29fbc919670b7a7418cca"
    },
    {
      "id": "dataset-provenance",
      "name": "Provenance-Record.md",
      "standard": "DDS",
      "standardSlug": "dds",
      "family": "datasets",
      "type": "template",
      "summary": "Record where dataset inputs came from and how they changed.",
      "customize": "Replace sources, collection dates, transformations and known limitations.",
      "path": "DDS/templates/Provenance-Record.md",
      "href": "/city-hall/resources/files/DDS/templates/Provenance-Record.md",
      "problems": ["datasets"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dataset-license", "dataset-manifest", "dataset-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "9b1723e08d1ebc50707d4c76a08f1ee845288533b601458ad9b8172f2355c56c",
      "example": "dataset-example"
    },
    {
      "id": "dataset-license",
      "name": "License-Record.md",
      "standard": "DDS",
      "standardSlug": "dds",
      "family": "datasets",
      "type": "template",
      "summary": "Record permissions and obligations for dataset sources.",
      "customize": "Replace license evidence, permissions, restrictions and unresolved questions.",
      "path": "DDS/templates/License-Record.md",
      "href": "/city-hall/resources/files/DDS/templates/License-Record.md",
      "problems": ["datasets"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dataset-provenance", "dataset-manifest", "dataset-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "aedd7169e693693620b247ef689cad2205275ceb76c5e205e2dc7e6ed52fc670"
    },
    {
      "id": "dataset-split",
      "name": "Split-Record.md",
      "standard": "DDS",
      "standardSlug": "dds",
      "family": "datasets",
      "type": "template",
      "summary": "Explain how train, validation and test sets were formed.",
      "customize": "Replace split rules, seeds, counts and leakage checks.",
      "path": "DDS/templates/Split-Record.md",
      "href": "/city-hall/resources/files/DDS/templates/Split-Record.md",
      "problems": ["datasets"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dataset-provenance", "dataset-license", "dataset-manifest"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "79201611db88afafaee24d754411a71484126c87870e9b3e2fa03a3339aa0f34"
    },
    {
      "id": "dataset-example",
      "name": "Example-Provenance-Record.md",
      "standard": "DDS",
      "standardSlug": "dds",
      "family": "datasets",
      "type": "example",
      "summary": "See an illustrative provenance record for dataset inputs.",
      "customize": "Replace example sources and transformations with your own evidence.",
      "path": "DDS/examples/Example-Provenance-Record.md",
      "href": "/city-hall/resources/files/DDS/examples/Example-Provenance-Record.md",
      "problems": ["datasets"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["dataset-provenance", "dataset-license", "dataset-manifest"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "0974314b50a67abf953f2fdc87b41adc0de70451452a197b351257a2a447f8bd"
    },
    {
      "id": "service-manifest",
      "name": "Service-Manifest.toml",
      "standard": "SIS",
      "standardSlug": "sis",
      "family": "services",
      "type": "template",
      "summary": "Record a service owner, runtime, endpoints and operational expectations.",
      "customize": "Replace service identity, owner, ports, dependencies and paths.",
      "path": "SIS/templates/Service-Manifest.toml",
      "href": "/city-hall/resources/files/SIS/templates/Service-Manifest.toml",
      "problems": ["services"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["service-runbook", "health-contract", "service-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "f3e261bfb8cc26a4208a2fc63a55343d254ddb04750a98649fb72c1bfb125359",
      "example": "service-example"
    },
    {
      "id": "service-runbook",
      "name": "Service-Runbook.md",
      "standard": "SIS",
      "standardSlug": "sis",
      "family": "services",
      "type": "runbook",
      "summary": "Capture how to start, stop, inspect and recover a service.",
      "customize": "Replace commands, logs, dependencies and recovery steps.",
      "path": "SIS/templates/Service-Runbook.md",
      "href": "/city-hall/resources/files/SIS/templates/Service-Runbook.md",
      "problems": ["services"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["service-manifest", "health-contract", "service-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "993244d01eec92763c5ec8e8c11771af86023b8d93ad15a64fc0ec58af925dc8",
      "example": "service-example"
    },
    {
      "id": "health-contract",
      "name": "Health-Check-Contract.md",
      "standard": "SIS",
      "standardSlug": "sis",
      "family": "services",
      "type": "template",
      "summary": "Define what a service health check should test and report.",
      "customize": "Replace endpoints, healthy states, failure behavior and timeouts.",
      "path": "SIS/templates/Health-Check-Contract.md",
      "href": "/city-hall/resources/files/SIS/templates/Health-Check-Contract.md",
      "problems": ["services"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["service-runbook", "service-manifest", "service-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "83b15f731ae75b70221df227ae7e95655b99397e16e585b0bdeb4a749773ffd8",
      "example": "service-example"
    },
    {
      "id": "service-example",
      "name": "Example-Local-API-Service.md",
      "standard": "SIS",
      "standardSlug": "sis",
      "family": "services",
      "type": "example",
      "summary": "Inspect an illustrative local API service record.",
      "customize": "Replace local endpoints and operating assumptions.",
      "path": "SIS/examples/Example-Local-API-Service.md",
      "href": "/city-hall/resources/files/SIS/examples/Example-Local-API-Service.md",
      "problems": ["services"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["service-runbook", "service-manifest", "health-contract"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "514738da4e60388bafa9055c91613f7ebcb6fe3ab7c4088eefdd49ab84704ecb"
    },
    {
      "id": "site-manifest",
      "name": "Site-Manifest.toml",
      "standard": "WDS",
      "standardSlug": "wds",
      "family": "websites",
      "type": "template",
      "summary": "Record site ownership, routes, publication and runtime expectations.",
      "customize": "Replace site identity, domains, routes, environment and approval roles.",
      "path": "WDS/templates/Site-Manifest.toml",
      "href": "/city-hall/resources/files/WDS/templates/Site-Manifest.toml",
      "problems": ["websites"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["deployment-record", "deployment-example", "route-checker"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "010ebb274bb2e6e460e06dcf5d58ab20f855b2c017fbaa5a6f6632fde3beb183",
      "example": "deployment-example"
    },
    {
      "id": "deployment-record",
      "name": "Deployment-Record.md",
      "standard": "WDS",
      "standardSlug": "wds",
      "family": "websites",
      "type": "template",
      "summary": "Record what was deployed, where, and what was checked.",
      "customize": "Replace commit, build, destination, approval, route checks and rollback steps.",
      "path": "WDS/templates/Deployment-Record.md",
      "href": "/city-hall/resources/files/WDS/templates/Deployment-Record.md",
      "problems": ["websites"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["site-manifest", "deployment-example", "route-checker"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "d2fa1aa8474ac435db5446d05f317b72a586e9b889ecea070f556253adef160f",
      "example": "deployment-example"
    },
    {
      "id": "deployment-example",
      "name": "Example-Deployment-Record.md",
      "standard": "WDS",
      "standardSlug": "wds",
      "family": "websites",
      "type": "example",
      "summary": "See an illustrative deployment record with checks and rollback context.",
      "customize": "Replace example deployment claims with evidence from your own run.",
      "path": "WDS/examples/Example-Deployment-Record.md",
      "href": "/city-hall/resources/files/WDS/examples/Example-Deployment-Record.md",
      "problems": ["websites"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["deployment-record", "site-manifest", "route-checker"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "738287ba32bc15dee94a4e36f8428ee62c5856aada384d75c63f3eae2a16a247"
    },
    {
      "id": "route-checker",
      "name": "route_check.py",
      "standard": "WDS",
      "standardSlug": "wds",
      "family": "websites",
      "type": "script",
      "summary": "Check HTTP availability for an explicit list of routes.",
      "customize": "Choose the base URL and routes. Requires Python 3.10 or later; standard library only. HTTP availability does not prove correct content or accessibility.",
      "path": "WDS/tools/route_check.py",
      "href": "/city-hall/resources/files/WDS/tools/route_check.py",
      "problems": ["websites"],
      "effort": "setup",
      "actions": ["view", "download", "copy"],
      "related": ["deployment-record", "site-manifest", "deployment-example"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "60fa6ed9b7515e71eb3abb7dd0306f68fccc9fffc426c32c37987c537f53c5a6",
      "run": {
        "requirements": "Python 3.10+. No third-party packages. Checks HTTP responses only.",
        "command": "python route_check.py http://127.0.0.1:8100 / /city-hall --json"
      }
    },
    {
      "id": "command-contract",
      "name": "Command-Contract.md",
      "standard": "CTS",
      "standardSlug": "cts",
      "family": "cli",
      "type": "template",
      "summary": "Define arguments, output streams, exit codes and command behavior.",
      "customize": "Replace command names, arguments, envelopes and exit behavior.",
      "path": "CTS/templates/Command-Contract.md",
      "href": "/city-hall/resources/files/CTS/templates/Command-Contract.md",
      "problems": ["cli"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["cli-checklist", "ok-envelope", "error-envelope"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "bfec7a634b2eef5e0aaed55fbb7d427c7be741eb0011b9e5fd097015821d0128",
      "example": "ok-envelope"
    },
    {
      "id": "cli-checklist",
      "name": "CLI-Release-Checklist.md",
      "standard": "CTS",
      "standardSlug": "cts",
      "family": "cli",
      "type": "checklist",
      "summary": "Review a CLI release for predictable behavior and evidence.",
      "customize": "Select checks for your platforms, interfaces and distribution channels.",
      "path": "CTS/templates/CLI-Release-Checklist.md",
      "href": "/city-hall/resources/files/CTS/templates/CLI-Release-Checklist.md",
      "problems": ["cli"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["command-contract", "ok-envelope", "error-envelope"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "4f4909598f792817f36700f7472f76bc4ffb4dc52040dcbbca704c7efa8ae8eb"
    },
    {
      "id": "ok-envelope",
      "name": "ok-envelope.json",
      "standard": "CTS",
      "standardSlug": "cts",
      "family": "cli",
      "type": "example",
      "summary": "Inspect a structured JSON success response.",
      "customize": "Replace tool identity and data; preserve only envelope fields your consumers need.",
      "path": "CTS/examples/fixtures/ok-envelope.json",
      "href": "/city-hall/resources/files/CTS/examples/fixtures/ok-envelope.json",
      "problems": ["cli"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["command-contract", "cli-checklist", "error-envelope"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "86429cd86490b8938e019b87eff2b7679d5ad155b29e83d8d29b0ba7b94d26a0"
    },
    {
      "id": "error-envelope",
      "name": "error-envelope.json",
      "standard": "CTS",
      "standardSlug": "cts",
      "family": "cli",
      "type": "example",
      "summary": "Inspect a structured JSON error response.",
      "customize": "Replace error codes, messages and context with your command contract.",
      "path": "CTS/examples/fixtures/error-envelope.json",
      "href": "/city-hall/resources/files/CTS/examples/fixtures/error-envelope.json",
      "problems": ["cli"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["command-contract", "cli-checklist", "ok-envelope"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "96bf1a7acf8e7cdb5880987e7d0e2b5b3f14aeb032475760ccb6517ecaf029c0"
    },
    {
      "id": "library-interface",
      "name": "Library-Interface-Note.md",
      "standard": "LDS",
      "standardSlug": "lds",
      "family": "libraries",
      "type": "template",
      "summary": "Describe a public library interface, consumers and compatibility.",
      "customize": "Replace APIs, versions, consumers and compatibility assumptions.",
      "path": "LDS/templates/Library-Interface-Note.md",
      "href": "/city-hall/resources/files/LDS/templates/Library-Interface-Note.md",
      "problems": ["libraries"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["breaking-change"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "c0ae27029941713166f8e54e295cb2115e27881bf6ffe7b0e9433b670a34a474",
      "example": "breaking-change"
    },
    {
      "id": "breaking-change",
      "name": "Breaking-Change-Cycle.md",
      "standard": "LDS",
      "standardSlug": "lds",
      "family": "libraries",
      "type": "example",
      "summary": "See an illustrative breaking change and migration cycle.",
      "customize": "Replace versions, breaking behavior and migration steps.",
      "path": "LDS/examples/Breaking-Change-Cycle.md",
      "href": "/city-hall/resources/files/LDS/examples/Breaking-Change-Cycle.md",
      "problems": ["libraries"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["library-interface"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "63261ef4297151703d16a11d4a1781bf6e9eb6759ae2863a2d999453e6889cff"
    },
    {
      "id": "standard-spec",
      "name": "Standard-Specification.md",
      "standard": "SFDS",
      "standardSlug": "sfds",
      "family": "standards",
      "type": "template",
      "summary": "Turn a repeatable practice into an explicit standard specification.",
      "customize": "Replace purpose, scope, requirements and conformance boundaries.",
      "path": "SFDS/templates/Standard-Specification.md",
      "href": "/city-hall/resources/files/SFDS/templates/Standard-Specification.md",
      "problems": ["standards"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["standard-manifest", "standard-checklist"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "9392a1c5a8e8167f2f5fbc02a07347d72be83fe5a253e290d0281e117beabec9"
    },
    {
      "id": "standard-manifest",
      "name": "StandardName.manifest.toml",
      "standard": "SFDS",
      "standardSlug": "sfds",
      "family": "standards",
      "type": "template",
      "summary": "Describe a standard suite, version, maturity and supporting files.",
      "customize": "Replace identity, maturity, version and suite paths; do not inherit status claims.",
      "path": "SFDS/templates/StandardName.manifest.toml",
      "href": "/city-hall/resources/files/SFDS/templates/StandardName.manifest.toml",
      "problems": ["standards"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["standard-spec", "standard-checklist"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "082a55c6663a1681556c04eb679c18729d9ba511e0fb19bf7e09e76348cd325b"
    },
    {
      "id": "standard-checklist",
      "name": "Validation-Checklist.md",
      "standard": "SFDS",
      "standardSlug": "sfds",
      "family": "standards",
      "type": "checklist",
      "summary": "Review a standard suite for structure and adoption guidance.",
      "customize": "Select applicable checks and record evidence for your own standard.",
      "path": "SFDS/templates/Validation-Checklist.md",
      "href": "/city-hall/resources/files/SFDS/templates/Validation-Checklist.md",
      "problems": ["standards"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["standard-spec", "standard-manifest"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "718ca791eb29d44e671161aee7c50e1cae0617ac262f2d3efb3cfdb088919831"
    },
    {
      "id": "sesm-metadata",
      "name": "SESM-Metadata-Example.json",
      "standard": "SESM",
      "standardSlug": "sesm",
      "family": "svg",
      "type": "example",
      "summary": "Inspect metadata fields intended for embedding in an SVG.",
      "customize": "Replace asset identity, links and interpretation hints; keep metadata descriptive.",
      "path": "SESM/templates/SESM-Metadata-Example.json",
      "href": "/city-hall/resources/files/SESM/templates/SESM-Metadata-Example.json",
      "problems": ["svg"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["sesm-schema", "safe-svg", "sesm-validator"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "c188cdebb87da47fce3aab1e33d3c5f3b7d2a7d5503dc50ee6c4d20b9dcad5d3",
      "example": "safe-svg"
    },
    {
      "id": "safe-svg",
      "name": "basic-safe.svg",
      "standard": "SESM",
      "standardSlug": "sesm",
      "family": "svg",
      "type": "example",
      "summary": "Inspect a minimal SVG with embedded SESM metadata.",
      "customize": "Replace artwork, accessible label and descriptive metadata. This is a fixture, not a security certification.",
      "path": "SESM/fixtures/valid/basic-safe.svg",
      "href": "/city-hall/resources/files/SESM/fixtures/valid/basic-safe.svg",
      "problems": ["svg"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["sesm-metadata", "sesm-schema", "sesm-validator"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "8351e9e46c6068c227838fb1fa9f04f36c4d720af9c0017c07631b87ac52fe21"
    },
    {
      "id": "sesm-validator",
      "name": "Validate-SESM-Safe.py",
      "standard": "SESM",
      "standardSlug": "sesm",
      "family": "svg",
      "type": "script",
      "summary": "Inspect SVG metadata and optionally check the SESM safe profile.",
      "customize": "Keep svg_asset.schema.json beside the script. Requires Python 3.10 or later; standard library only.",
      "path": "SESM/Validate-SESM-Safe.py",
      "href": "/city-hall/resources/files/SESM/Validate-SESM-Safe.py",
      "problems": ["svg"],
      "effort": "setup",
      "actions": ["view", "download", "copy"],
      "related": ["sesm-metadata", "sesm-schema", "safe-svg"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "0c6f52ea478b55b03ce89c23ae9597bd4d37fce40135f3ae491aecccc15a0bb9",
      "run": {
        "requirements": "Python 3.10+. Download svg_asset.schema.json beside the script and choose an SVG to inspect.",
        "command": "python Validate-SESM-Safe.py basic-safe.svg --safe-profile --json",
        "requires": ["sesm-schema"]
      },
      "example": "safe-svg"
    },
    {
      "id": "sesm-schema",
      "name": "svg_asset.schema.json",
      "standard": "SESM",
      "standardSlug": "sesm",
      "family": "svg",
      "type": "schema",
      "summary": "Inspect the metadata schema consumed by the SESM validator.",
      "customize": "Adapt fields and rules together with your validator.",
      "path": "SESM/svg_asset.schema.json",
      "href": "/city-hall/resources/files/SESM/svg_asset.schema.json",
      "problems": ["svg"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["sesm-metadata", "safe-svg", "sesm-validator"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "b8dc402528f0746c49621b6e2748239566da69f39f15ace00c226b22981100a2"
    },
    {
      "id": "blue-slate-tokens",
      "name": "BlueSlate.Tokens.css",
      "standard": "BlueSlate",
      "standardSlug": "blue-slate",
      "family": "design",
      "type": "reference",
      "summary": "Start a dark interface with framework-neutral Blue Slate v0.5.0 tokens.",
      "customize": "Map semantic variables to your own components. Candidate-active tokens do not supply a component library or prove accessibility.",
      "path": "BlueSlate/generated/BlueSlate.Tokens.css",
      "href": "/city-hall/resources/files/BlueSlate/generated/BlueSlate.Tokens.css",
      "problems": ["design"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": [],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "9bc485e123fabdb80f09b2d2895b6cd92c68d9f1f7051cca038d0c9f5505d0f2"
    },
    {
      "id": "blank-project",
      "name": "ProjectName.manifest.toml",
      "standard": "Blanks",
      "standardSlug": "wgs",
      "family": "generic",
      "type": "template",
      "summary": "Start with a generic project manifest instead of a complete workflow.",
      "customize": "Rename the file for your project; replace identity, ownership, paths and project license.",
      "path": ".blank-forms/ProjectName.manifest.toml",
      "href": "/city-hall/resources/files/.blank-forms/ProjectName.manifest.toml",
      "problems": ["generic"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["readme-template", "blank-directory"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "c32419d750db153cce1c3afa8d34950909079a28eb473541f11681b2c1ae9130"
    },
    {
      "id": "blank-directory",
      "name": "DirectoryName.manifest.toml",
      "standard": "Blanks",
      "standardSlug": "wgs",
      "family": "generic",
      "type": "template",
      "summary": "Describe a directory, its role and children.",
      "customize": "Rename the file for the directory; replace role, child registration and ownership.",
      "path": ".blank-forms/DirectoryName.manifest.toml",
      "href": "/city-hall/resources/files/.blank-forms/DirectoryName.manifest.toml",
      "problems": ["generic"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["blank-project", "readme-template"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "64ce90bf80d5570c958fd0679b2d200f22b9c254431c24dde785a4aaea0a6d55"
    },
    {
      "id": "readme-template",
      "name": "README-TEMPLATE.md",
      "standard": "Blanks",
      "standardSlug": "wgs",
      "family": "generic",
      "type": "template",
      "summary": "Give a project a consistent, reusable README structure.",
      "customize": "Replace placeholders, keep helpful sections, and delete everything you do not need.",
      "path": ".blank-forms/README-TEMPLATE.md",
      "href": "/city-hall/resources/files/.blank-forms/README-TEMPLATE.md",
      "problems": ["generic"],
      "effort": "quick-win",
      "actions": ["view", "download", "copy"],
      "related": ["blank-project", "blank-directory"],
      "license": "MIT",
      "licenseHref": "/city-hall/resources/LICENSE.txt",
      "reviewedAt": "2026-10-02",
      "sha256": "cee14b9a76cf956ae51998545bfebb08b4c85cbb92d8a33b7371900924f55eaa"
    }
  ],
  "families": [
    {
      "id": "planning",
      "name": "My project keeps drifting",
      "situations": [
        {
          "id": "scope",
          "label": "I need to define purpose and boundaries",
          "startHere": "project-proposal",
          "more": ["project-manifest", "project-readmap"],
          "examples": ["proposal-example"],
          "automate": ["pps-validator"]
        },
        {
          "id": "orientation",
          "label": "People or agents do not know what to read first",
          "startHere": "project-readmap",
          "more": ["project-proposal"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "agents",
      "name": "Agent work is hard to continue",
      "situations": [
        {
          "id": "handoff",
          "label": "The next worker needs context or blocker details",
          "startHere": "handoff-note",
          "more": ["agent-task", "agent-closeout"],
          "examples": ["blocked-example"],
          "automate": []
        },
        {
          "id": "completion",
          "label": "I need to know what an agent actually completed",
          "startHere": "agent-task",
          "more": ["handoff-note", "agent-closeout"],
          "examples": ["agent-example"],
          "automate": []
        }
      ]
    },
    {
      "id": "workspace",
      "name": "Workspace state is hard to see",
      "situations": [
        {
          "id": "health",
          "label": "I need to record drift and next actions",
          "startHere": "workspace-health",
          "more": ["development-manifest"],
          "examples": [],
          "automate": []
        },
        {
          "id": "inventory",
          "label": "I need to register roots and responsibilities",
          "startHere": "development-manifest",
          "more": ["blank-directory", "workspace-health"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "releases",
      "name": "My releases are hard to reproduce",
      "situations": [
        {
          "id": "build",
          "label": "I need to rebuild an older release",
          "startHere": "reproducibility-guide",
          "more": ["dependency-provenance", "release-checklist"],
          "examples": [],
          "automate": []
        },
        {
          "id": "release",
          "label": "I need a repeatable release review",
          "startHere": "release-checklist",
          "more": ["release-note", "dependency-provenance"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "integrity",
      "name": "I need to check file integrity",
      "situations": [
        {
          "id": "archive",
          "label": "I am preserving an archive",
          "startHere": "hash-manifest",
          "more": ["archive-integrity"],
          "examples": ["hash-example"],
          "automate": []
        },
        {
          "id": "artifact",
          "label": "I am publishing one release artifact",
          "startHere": "release-hash",
          "more": ["archive-integrity"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "datasets",
      "name": "Dataset origins or permissions are unclear",
      "situations": [
        {
          "id": "origins",
          "label": "I need to document sources and permissions",
          "startHere": "dataset-provenance",
          "more": ["dataset-license", "dataset-manifest"],
          "examples": ["dataset-example"],
          "automate": []
        },
        {
          "id": "splits",
          "label": "I need to explain train and test splits",
          "startHere": "dataset-split",
          "more": ["dataset-manifest", "dataset-provenance"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "services",
      "name": "A service is difficult to operate",
      "situations": [
        {
          "id": "recovery",
          "label": "Startup and recovery are undocumented",
          "startHere": "service-runbook",
          "more": ["service-manifest", "health-contract"],
          "examples": ["service-example"],
          "automate": []
        },
        {
          "id": "health",
          "label": "I need to define ownership and healthy behavior",
          "startHere": "service-manifest",
          "more": ["health-contract", "service-runbook"],
          "examples": ["service-example"],
          "automate": []
        }
      ]
    },
    {
      "id": "websites",
      "name": "Website publishing is inconsistent",
      "situations": [
        {
          "id": "deployment",
          "label": "I need a record and rollback context",
          "startHere": "deployment-record",
          "more": ["site-manifest"],
          "examples": ["deployment-example"],
          "automate": ["route-checker"]
        },
        {
          "id": "routes",
          "label": "I need to check whether routes respond",
          "startHere": "route-checker",
          "more": ["site-manifest", "deployment-record"],
          "examples": ["deployment-example"],
          "automate": []
        }
      ]
    },
    {
      "id": "cli",
      "name": "My CLI interface is inconsistent",
      "situations": [
        {
          "id": "contract",
          "label": "I need predictable arguments and exit behavior",
          "startHere": "command-contract",
          "more": ["cli-checklist"],
          "examples": ["ok-envelope", "error-envelope"],
          "automate": []
        },
        {
          "id": "output",
          "label": "I need machine-readable output",
          "startHere": "ok-envelope",
          "more": ["command-contract"],
          "examples": ["error-envelope"],
          "automate": []
        }
      ]
    },
    {
      "id": "libraries",
      "name": "Library changes are hard to communicate",
      "situations": [
        {
          "id": "interface",
          "label": "I need to describe an API and its consumers",
          "startHere": "library-interface",
          "more": [],
          "examples": ["breaking-change"],
          "automate": []
        },
        {
          "id": "breaking",
          "label": "I need to explain a breaking change",
          "startHere": "breaking-change",
          "more": ["library-interface"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "standards",
      "name": "I want to formalize a repeatable practice",
      "situations": [
        {
          "id": "specification",
          "label": "I need a small standard specification",
          "startHere": "standard-spec",
          "more": ["standard-manifest", "standard-checklist"],
          "examples": [],
          "automate": []
        },
        {
          "id": "review",
          "label": "I need to review a standard suite",
          "startHere": "standard-checklist",
          "more": ["standard-spec", "standard-manifest"],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "svg",
      "name": "I need descriptive metadata in SVGs",
      "situations": [
        {
          "id": "metadata",
          "label": "I want to inspect an embedded example",
          "startHere": "sesm-metadata",
          "more": ["sesm-schema"],
          "examples": ["safe-svg"],
          "automate": ["sesm-validator"]
        },
        {
          "id": "validation",
          "label": "I need to check metadata and the safe profile",
          "startHere": "sesm-validator",
          "more": ["sesm-schema"],
          "examples": ["safe-svg"],
          "automate": []
        }
      ]
    },
    {
      "id": "design",
      "name": "My interface styling is inconsistent",
      "situations": [
        {
          "id": "tokens",
          "label": "I want reusable dark design tokens",
          "startHere": "blue-slate-tokens",
          "more": [],
          "examples": [],
          "automate": []
        }
      ]
    },
    {
      "id": "generic",
      "name": "I just want a starting template",
      "situations": [
        {
          "id": "project",
          "label": "I need a simple project manifest",
          "startHere": "blank-project",
          "more": ["readme-template"],
          "examples": [],
          "automate": []
        },
        {
          "id": "directory",
          "label": "I need a directory manifest",
          "startHere": "blank-directory",
          "more": ["blank-project", "readme-template"],
          "examples": [],
          "automate": []
        },
        {
          "id": "readme",
          "label": "I need a reusable README",
          "startHere": "readme-template",
          "more": ["blank-project"],
          "examples": [],
          "automate": []
        }
      ]
    }
  ],
  "decisionTree": {
    "problems": [
      {
        "id": "project-drift",
        "title": "My projects keep drifting",
        "families": ["planning", "tasks"]
      },
      {
        "id": "project-structure",
        "title": "My project structure is inconsistent",
        "families": ["generic", "planning"]
      },
      {
        "id": "lost-decisions",
        "title": "I lose track of decisions",
        "families": ["decisions", "changes"]
      },
      {
        "id": "unknown-changes",
        "title": "I do not know what changed",
        "families": ["changes", "agents"]
      },
      {
        "id": "inconsistent-releases",
        "title": "My releases are inconsistent",
        "families": ["releases", "cli"]
      },
      {
        "id": "old-releases",
        "title": "I cannot reproduce old releases",
        "families": ["reproduction", "releases"]
      },
      {
        "id": "file-integrity",
        "title": "I need stronger integrity verification",
        "families": ["integrity", "metadata"]
      },
      {
        "id": "stale-documentation",
        "title": "My documentation becomes stale",
        "families": ["documentation", "services"]
      },
      {
        "id": "agent-leftovers",
        "title": "My AI agents leave unclear work behind",
        "families": ["tasks", "agents"]
      },
      {
        "id": "agent-handoffs",
        "title": "Agent handoffs are unreliable",
        "families": ["agents", "documentation"]
      },
      {
        "id": "task-boundaries",
        "title": "I need clearer task boundaries",
        "families": ["tasks", "planning"]
      },
      {
        "id": "dataset-provenance",
        "title": "My datasets lack provenance",
        "families": ["datasets", "dataset-pipeline"]
      },
      {
        "id": "dataset-reproduction",
        "title": "My datasets are difficult to reproduce",
        "families": ["dataset-pipeline", "datasets"]
      },
      {
        "id": "service-documentation",
        "title": "My services are poorly documented",
        "families": ["services", "ownership"]
      },
      {
        "id": "health-checks",
        "title": "I do not have reliable health checks",
        "families": ["health", "services"]
      },
      {
        "id": "cli-behavior",
        "title": "My command-line tools behave inconsistently",
        "families": ["cli", "releases"]
      },
      {
        "id": "library-changes",
        "title": "My libraries make breaking changes difficult to track",
        "families": ["libraries", "changes"]
      },
      {
        "id": "website-validation",
        "title": "My websites are difficult to validate before publishing",
        "families": ["websites", "releases"]
      },
      {
        "id": "artifact-metadata",
        "title": "I need better artifact metadata",
        "families": ["metadata", "generic"]
      },
      {
        "id": "image-provenance",
        "title": "I need to preserve provenance inside images",
        "families": ["svg", "metadata"]
      },
      {
        "id": "workspace-audits",
        "title": "I need repeatable workspace audits",
        "families": ["audits", "workspace"]
      },
      {
        "id": "hidden-state",
        "title": "My workspace contains too much hidden state",
        "families": ["workspace", "ownership"]
      },
      {
        "id": "better-manifests",
        "title": "I need better manifests",
        "families": ["generic", "ownership"]
      },
      {
        "id": "development-templates",
        "title": "I need reusable development templates",
        "families": ["generic", "design"]
      },
      {
        "id": "governance",
        "title": "I need a clearer governance structure",
        "families": ["ownership", "standards"]
      }
    ],
    "families": [
      {
        "id": "planning",
        "title": "Purpose, scope and orientation",
        "situations": [
          {
            "id": "planning-scope",
            "title": "I need to define purpose and boundaries",
            "description": "The project is active, but its purpose, scope, milestones and success criteria are no longer explicit.",
            "why": "Define the purpose, boundaries, milestones and success criteria for one project.",
            "keywords": [
              "scope",
              "milestones",
              "project drift",
              "purpose",
              "success criteria",
              "roadmap",
              "next actions"
            ],
            "startHere": "project-proposal",
            "more": ["project-manifest", "project-readmap"],
            "examples": ["proposal-example"],
            "automate": ["pps-validator"],
            "effort": "small-workflow-change"
          },
          {
            "id": "planning-orientation",
            "title": "People or agents do not know what to read first",
            "description": "A new reader or agent cannot tell which files explain the project or which order to read them in.",
            "why": "Prioritize the files a person or agent should read to understand a project.",
            "keywords": [
              "read first",
              "orientation",
              "reading order",
              "project files",
              "onboarding"
            ],
            "startHere": "project-readmap",
            "more": ["project-proposal"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "agents",
        "title": "Completion and handoff context",
        "situations": [
          {
            "id": "agents-handoff",
            "title": "The next worker needs context or blocker details",
            "description": "Work needs to pass to another person or agent, including context, blockers and unresolved actions.",
            "why": "Give the next person or agent enough context to continue.",
            "keywords": [
              "handoff",
              "continuation",
              "context",
              "blocker",
              "unfinished work"
            ],
            "startHere": "handoff-note",
            "more": ["agent-task", "agent-closeout"],
            "examples": ["blocked-example"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "agents-completion",
            "title": "I need to know what an agent actually completed",
            "description": "An agent reports completion, but the finished work, evidence and remaining work are unclear.",
            "why": "Record task scope, work completed, evidence and remaining work.",
            "keywords": [
              "completed",
              "completion",
              "evidence",
              "agent task record",
              "remaining work"
            ],
            "startHere": "agent-task",
            "more": ["handoff-note", "agent-closeout"],
            "examples": ["agent-example"],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "workspace",
        "title": "Visible workspace state",
        "situations": [
          {
            "id": "workspace-health",
            "title": "I need to record drift and next actions",
            "description": "Workspace drift and follow-up actions are not recorded in a form you can review later.",
            "why": "Make workspace health, drift and follow-up work visible.",
            "keywords": [
              "workspace health",
              "drift",
              "review findings",
              "follow up",
              "workspace audits"
            ],
            "startHere": "workspace-health",
            "more": ["development-manifest"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "workspace-inventory",
            "title": "I need to register roots and responsibilities",
            "description": "Workspace roots exist without an explicit inventory of their roles and responsibilities.",
            "why": "Register workspace roots and their governance responsibilities.",
            "keywords": [
              "roots",
              "workspace inventory",
              "responsibilities",
              "register directories"
            ],
            "startHere": "development-manifest",
            "more": ["blank-directory", "workspace-health"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "releases",
        "title": "Build and release evidence",
        "situations": [
          {
            "id": "releases-build",
            "title": "I need to rebuild an older release",
            "description": "You need to attempt a rebuild of an older release, but its build environment and steps are undocumented.",
            "why": "Document how someone can rebuild a specific release.",
            "keywords": [
              "I cannot reproduce a release",
              "old build",
              "rebuild",
              "toolchain",
              "build instructions"
            ],
            "startHere": "reproducibility-guide",
            "more": ["dependency-provenance", "release-checklist"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "releases-release",
            "title": "I need a repeatable release review",
            "description": "Each release is reviewed differently and important evidence is easy to omit.",
            "why": "Track the evidence needed before distributing a release.",
            "keywords": [
              "release review",
              "checklist",
              "release evidence",
              "inconsistent releases"
            ],
            "startHere": "release-checklist",
            "more": ["release-note", "dependency-provenance"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "integrity",
        "title": "Archive and artifact checks",
        "situations": [
          {
            "id": "integrity-archive",
            "title": "I am preserving an archive",
            "description": "You are preserving an archive and need a durable record of hashes and preservation context.",
            "why": "Record multiple hashes for an archive and its preservation context.",
            "keywords": [
              "archive",
              "hash",
              "checksum",
              "preservation",
              "file integrity"
            ],
            "startHere": "hash-manifest",
            "more": ["archive-integrity"],
            "examples": ["hash-example"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "integrity-artifact",
            "title": "I am publishing one release artifact",
            "description": "You are distributing one release file and need to record its hashes and distribution origin.",
            "why": "Publish hash and distribution provenance for a release artifact.",
            "keywords": [
              "release artifact",
              "hash",
              "checksum",
              "distribution"
            ],
            "startHere": "release-hash",
            "more": ["archive-integrity"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "datasets",
        "title": "Sources, permissions and dataset splits",
        "situations": [
          {
            "id": "datasets-origins",
            "title": "I need to document sources and permissions",
            "description": "A dataset uses outside inputs, but their sources, permissions and transformations are unclear.",
            "why": "Record where dataset inputs came from and how they changed.",
            "keywords": [
              "I need provenance for a dataset",
              "sources",
              "permissions",
              "dataset origins",
              "transformations"
            ],
            "startHere": "dataset-provenance",
            "more": ["dataset-license", "dataset-manifest"],
            "examples": ["dataset-example"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "datasets-splits",
            "title": "I need to explain train and test splits",
            "description": "A dataset has train, validation or test sets, but the rules used to form them are missing.",
            "why": "Explain how train, validation and test sets were formed.",
            "keywords": [
              "train",
              "test",
              "validation",
              "split",
              "partition",
              "dataset splits"
            ],
            "startHere": "dataset-split",
            "more": ["dataset-manifest", "dataset-provenance"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "services",
        "title": "Service startup and ownership",
        "situations": [
          {
            "id": "services-recovery",
            "title": "Startup and recovery are undocumented",
            "description": "A service needs restarting or recovering, but the operating steps exist only in somebody’s memory.",
            "why": "Capture how to start, stop, inspect and recover a service.",
            "keywords": [
              "service recovery",
              "restart",
              "startup",
              "runbook",
              "stop",
              "operations"
            ],
            "startHere": "service-runbook",
            "more": ["service-manifest", "health-contract"],
            "examples": ["service-example"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "services-health",
            "title": "I need to define ownership and healthy behavior",
            "description": "A service has no clear owner or written expectations for runtime, endpoints and healthy behavior.",
            "why": "Record a service owner, runtime, endpoints and operational expectations.",
            "keywords": [
              "service owner",
              "runtime",
              "endpoints",
              "service manifest",
              "healthy behavior"
            ],
            "startHere": "service-manifest",
            "more": ["health-contract", "service-runbook"],
            "examples": ["service-example"],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "websites",
        "title": "Deployment records and route checks",
        "situations": [
          {
            "id": "websites-deployment",
            "title": "I need a record and rollback context",
            "description": "A site has been published without a durable record of what changed, what was checked or how to roll back.",
            "why": "Record what was deployed, where, and what was checked.",
            "keywords": [
              "deployment",
              "publish",
              "rollback",
              "deployment record",
              "website release"
            ],
            "startHere": "deployment-record",
            "more": ["site-manifest"],
            "examples": ["deployment-example"],
            "automate": ["route-checker"],
            "effort": "small-workflow-change"
          },
          {
            "id": "websites-routes",
            "title": "I need to check whether routes respond",
            "description": "You need to check an explicit list of website URLs for HTTP availability before or after publication.",
            "why": "Check HTTP availability for an explicit list of routes.",
            "keywords": [
              "routes",
              "404",
              "URLs",
              "HTTP",
              "website validation",
              "route availability"
            ],
            "startHere": "route-checker",
            "more": ["site-manifest", "deployment-record"],
            "examples": ["deployment-example"],
            "automate": [],
            "effort": "moderate-integration"
          }
        ]
      },
      {
        "id": "cli",
        "title": "Command behavior and output",
        "situations": [
          {
            "id": "cli-contract",
            "title": "I need predictable arguments and exit behavior",
            "description": "Users cannot predict the arguments, output streams or exit behavior of your command-line tool.",
            "why": "Define arguments, output streams, exit codes and command behavior.",
            "keywords": [
              "command line",
              "exit code",
              "arguments",
              "stdout",
              "stderr",
              "command behavior"
            ],
            "startHere": "command-contract",
            "more": ["cli-checklist"],
            "examples": ["ok-envelope", "error-envelope"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "cli-output",
            "title": "I need machine-readable output",
            "description": "Another tool needs to read your command output, but the success and error response structures are inconsistent.",
            "why": "Inspect a structured JSON success response.",
            "keywords": [
              "JSON",
              "machine readable output",
              "success response",
              "error response",
              "automation"
            ],
            "startHere": "ok-envelope",
            "more": ["command-contract"],
            "examples": ["error-envelope"],
            "automate": [],
            "effort": "quick-win"
          }
        ]
      },
      {
        "id": "libraries",
        "title": "API compatibility and migration",
        "situations": [
          {
            "id": "libraries-interface",
            "title": "I need to describe an API and its consumers",
            "description": "Consumers depend on your library, but its supported interface and compatibility expectations are not documented.",
            "why": "Describe a public library interface, consumers and compatibility.",
            "keywords": [
              "library",
              "API",
              "consumers",
              "compatibility",
              "public interface"
            ],
            "startHere": "library-interface",
            "more": [],
            "examples": ["breaking-change"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "libraries-breaking",
            "title": "I need to explain a breaking change",
            "description": "A public API is changing and consumers need a concrete account of the break and migration path.",
            "why": "See an illustrative breaking change and migration cycle.",
            "keywords": [
              "breaking change",
              "migration",
              "library version",
              "API change"
            ],
            "startHere": "breaking-change",
            "more": ["library-interface"],
            "examples": [],
            "automate": [],
            "effort": "quick-win"
          }
        ]
      },
      {
        "id": "standards",
        "title": "Documenting and reviewing a practice",
        "situations": [
          {
            "id": "standards-specification",
            "title": "I need a small standard specification",
            "description": "A repeated practice needs a written specification that other people can inspect and adapt.",
            "why": "Turn a repeatable practice into an explicit standard specification.",
            "keywords": [
              "standard",
              "specification",
              "repeatable practice",
              "governance rules"
            ],
            "startHere": "standard-spec",
            "more": ["standard-manifest", "standard-checklist"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "standards-review",
            "title": "I need to review a standard suite",
            "description": "A standard suite needs a review of its structure and adoption guidance before others rely on it.",
            "why": "Review a standard suite for structure and adoption guidance.",
            "keywords": [
              "standard review",
              "checklist",
              "adoption guidance",
              "standard suite"
            ],
            "startHere": "standard-checklist",
            "more": ["standard-spec", "standard-manifest"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "svg",
        "title": "Embedded image metadata and validation",
        "situations": [
          {
            "id": "svg-metadata",
            "title": "I want to inspect an embedded example",
            "description": "You need an inspectable example of the metadata fields intended to travel inside an SVG.",
            "why": "Inspect metadata fields intended for embedding in an SVG.",
            "keywords": [
              "I want metadata inside an SVG",
              "embedded metadata",
              "image provenance",
              "author",
              "license"
            ],
            "startHere": "sesm-metadata",
            "more": ["sesm-schema"],
            "examples": ["safe-svg"],
            "automate": ["sesm-validator"],
            "effort": "quick-win"
          },
          {
            "id": "svg-validation",
            "title": "I need to check metadata and the safe profile",
            "description": "You have an SVG and need to check its metadata and the defined SESM safe-profile rules.",
            "why": "Inspect SVG metadata and optionally check the SESM safe profile.",
            "keywords": [
              "SVG validation",
              "safe profile",
              "schema",
              "metadata checking",
              "validator"
            ],
            "startHere": "sesm-validator",
            "more": ["sesm-schema"],
            "examples": ["safe-svg"],
            "automate": [],
            "effort": "moderate-integration"
          }
        ]
      },
      {
        "id": "design",
        "title": "Shared interface tokens",
        "situations": [
          {
            "id": "design-tokens",
            "title": "I want reusable dark design tokens",
            "description": "A dark interface uses scattered color and style values and needs a reusable starting token set.",
            "why": "Start a dark interface with framework-neutral Blue Slate v0.5.0 tokens.",
            "keywords": [
              "dark interface",
              "styling",
              "colors",
              "tokens",
              "CSS"
            ],
            "startHere": "blue-slate-tokens",
            "more": [],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "generic",
        "title": "Reusable project and directory records",
        "situations": [
          {
            "id": "generic-project",
            "title": "I need a simple project manifest",
            "description": "A project needs a small machine-readable description without adopting an entire delivery workflow.",
            "why": "Start with a generic project manifest instead of a complete workflow.",
            "keywords": [
              "simple project manifest",
              "project template",
              "project structure"
            ],
            "startHere": "blank-project",
            "more": ["readme-template"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "generic-directory",
            "title": "I need a directory manifest",
            "description": "A directory needs a record explaining its role and child entries.",
            "why": "Describe a directory, its role and children.",
            "keywords": [
              "directory manifest",
              "directory role",
              "children",
              "folder structure"
            ],
            "startHere": "blank-directory",
            "more": ["blank-project", "readme-template"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "generic-readme",
            "title": "I need a reusable README",
            "description": "A project needs a reusable README structure for its purpose, usage and supporting evidence.",
            "why": "Give a project a consistent, reusable README structure.",
            "keywords": [
              "README",
              "documentation template",
              "usage",
              "project explanation"
            ],
            "startHere": "readme-template",
            "more": ["blank-project"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "decisions",
        "title": "Reasons and decisions",
        "situations": [
          {
            "id": "decisions-intent",
            "title": "I forget why the project took this direction",
            "description": "Scope has changed, but the reason and the intended outcome are no longer written down.",
            "why": "The proposal gives you a place to restate purpose and boundaries. Add a dated decision section; it is a starting point for a decision log, not a dedicated decision-log template.",
            "startHere": "project-proposal",
            "more": ["project-manifest"],
            "keywords": ["decisions", "why", "intent", "scope", "rationale"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "decisions-dependencies",
            "title": "I forget why dependencies were added",
            "description": "A dependency remains in the build but its source, pinned version and selection rationale are unclear.",
            "why": "The provenance record captures sources and pins. Add your selection rationale and alternatives where your team needs them.",
            "startHere": "dependency-provenance",
            "more": ["reproducibility-guide"],
            "keywords": [
              "I forget why dependencies were added",
              "package",
              "pin",
              "reason",
              "rationale"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "changes",
        "title": "Changes and their evidence",
        "situations": [
          {
            "id": "changes-release",
            "title": "I cannot tell what changed in this release",
            "description": "The artifact exists, but people cannot find a concise account of changes and checks.",
            "why": "A release note puts changes, distribution and recorded evidence together.",
            "startHere": "release-note",
            "more": ["release-checklist"],
            "keywords": ["changelog", "what changed", "release history"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "changes-task",
            "title": "I cannot tell what changed during an agent task",
            "description": "Work has stopped and it is unclear which changes were completed or which checks ran.",
            "why": "A task record separates work completed, evidence and remaining work so the next worker can assess the actual outcome.",
            "startHere": "agent-task",
            "more": ["handoff-note"],
            "keywords": ["agent", "diff", "changes", "checks", "completed"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "documentation",
        "title": "Keeping explanations useful",
        "situations": [
          {
            "id": "documentation-entry",
            "title": "My README does not explain how to use the project",
            "description": "New readers cannot find purpose, usage or the evidence they should inspect.",
            "why": "The README template supplies a reusable explanation structure. Remove sections that do not apply.",
            "startHere": "readme-template",
            "more": ["project-readmap"],
            "keywords": ["documentation", "README", "stale", "usage"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "documentation-reading",
            "title": "Readers cannot find the current authoritative files",
            "description": "Documentation has accumulated and the order or relevance of files is unclear.",
            "why": "A reading map identifies which files matter and in what order. Keeping it current is a workflow responsibility; the file does not automatically detect stale documentation.",
            "startHere": "project-readmap",
            "more": ["readme-template"],
            "keywords": [
              "documentation",
              "stale",
              "outdated",
              "read first",
              "authority"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "tasks",
        "title": "Boundaries and unfinished work",
        "situations": [
          {
            "id": "tasks-scope",
            "title": "An agent task grows beyond the requested work",
            "description": "A task begins without a clear scope, exclusions or a way to record its completion.",
            "why": "Use the task record to state scope and record the outcome of one bounded assignment.",
            "startHere": "agent-task",
            "more": ["project-proposal"],
            "keywords": ["AI", "task boundaries", "scope creep", "agent"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "tasks-blocked",
            "title": "My agent stopped halfway through",
            "description": "The work is incomplete and another worker needs to know the blocker and next action.",
            "why": "The handoff note preserves continuation context. Pair it with the closeout procedure when stopping work.",
            "startHere": "handoff-note",
            "more": ["agent-closeout", "agent-task"],
            "keywords": [
              "my agent stopped halfway through",
              "blocked",
              "interrupted",
              "unfinished",
              "next action"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "reproduction",
        "title": "Inputs and transformations",
        "situations": [
          {
            "id": "reproduction-build",
            "title": "The old release depends on unknown build inputs",
            "description": "The source revision is known, but tool versions, dependencies or build steps are missing.",
            "why": "The reproducibility guide helps record the inputs and steps needed to attempt the same build. Rebuilding still needs to be tested in your environment.",
            "startHere": "reproducibility-guide",
            "more": ["dependency-provenance"],
            "keywords": [
              "cannot reproduce a release",
              "build inputs",
              "toolchain",
              "versions"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "reproduction-dependencies",
            "title": "The dependencies of an old build are not pinned",
            "description": "A dependency remains in the build but its source, pinned version and selection rationale are unclear.",
            "why": "The provenance record captures sources and pins. Add your selection rationale and alternatives where your team needs them.",
            "startHere": "dependency-provenance",
            "more": ["reproducibility-guide"],
            "keywords": [
              "I forget why dependencies were added",
              "package",
              "pin",
              "reason",
              "rationale"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "ownership",
        "title": "Responsibilities and operating expectations",
        "situations": [
          {
            "id": "ownership-workspace",
            "title": "Nobody knows who owns each workspace root",
            "description": "Directories exist, but their roles and governance responsibilities are implicit.",
            "why": "A development manifest registers roots and responsibilities so you can review them explicitly.",
            "startHere": "development-manifest",
            "more": ["blank-directory"],
            "keywords": [
              "governance",
              "ownership",
              "responsibilities",
              "workspace"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "ownership-service",
            "title": "Nobody knows who maintains this service",
            "description": "Runtime expectations and the service owner are missing from the operational record.",
            "why": "The service manifest puts the owner, runtime and endpoints in one adaptable record.",
            "startHere": "service-manifest",
            "more": ["service-runbook"],
            "keywords": [
              "service owner",
              "maintenance",
              "runtime",
              "ownership"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "audits",
        "title": "Repeatable review records",
        "situations": [
          {
            "id": "audits-workspace",
            "title": "I repeat workspace checks but lose the findings",
            "description": "Drift and unresolved actions disappear between reviews.",
            "why": "The health record gives each review a place for findings and follow-up work. This is a manual record, not an automated workspace scanner.",
            "startHere": "workspace-health",
            "more": ["development-manifest"],
            "keywords": [
              "workspace audits",
              "repeatable audit",
              "hidden state",
              "findings",
              "drift"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "audits-practice",
            "title": "I need to review whether a documented practice is complete",
            "description": "A standard suite has files, but its structure and adoption guidance have not been reviewed.",
            "why": "The validation checklist makes the suite review repeatable without claiming that a completed checklist certifies an adopter.",
            "startHere": "standard-checklist",
            "more": ["standard-spec"],
            "keywords": ["standard audit", "governance", "review", "checklist"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "metadata",
        "title": "Describing artifacts and their origins",
        "situations": [
          {
            "id": "metadata-svg",
            "title": "I want provenance to travel inside an SVG",
            "description": "The image travels separately from notes about its author, purpose and license.",
            "why": "The metadata example shows fields you can embed in an SVG. The accompanying SVG shows their placement; the validator checks only its defined rules.",
            "startHere": "sesm-metadata",
            "more": ["safe-svg", "sesm-schema"],
            "keywords": [
              "I want metadata inside an SVG",
              "provenance inside images",
              "author",
              "license",
              "metadata"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "metadata-artifact",
            "title": "A release download has no integrity or distribution record",
            "description": "A file is distributed without a durable account of its hash or origin.",
            "why": "The release hash record associates the artifact with hashes and distribution provenance. A matching hash alone does not establish the publisher identity.",
            "startHere": "release-hash",
            "more": ["archive-integrity"],
            "keywords": [
              "artifact metadata",
              "download",
              "hash",
              "distribution",
              "provenance"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "dataset-pipeline",
        "title": "Dataset assembly and reproducible splits",
        "situations": [
          {
            "id": "dataset-pipeline-inputs",
            "title": "I cannot reconstruct how a dataset was assembled",
            "description": "Source inputs and transformations are missing or scattered across notes.",
            "why": "The provenance record gives you a place to capture sources and changes. It documents the process; it does not run or reproduce the pipeline for you.",
            "startHere": "dataset-provenance",
            "more": ["dataset-manifest", "dataset-split"],
            "keywords": [
              "reproduce dataset",
              "pipeline",
              "transformations",
              "inputs",
              "provenance"
            ],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "dataset-pipeline-splits",
            "title": "I cannot reconstruct the train and test split",
            "description": "A dataset has train, validation or test sets, but the rules used to form them are missing.",
            "why": "Explain how train, validation and test sets were formed.",
            "keywords": [
              "reproduce train test split",
              "dataset split",
              "partition",
              "train",
              "test",
              "validation"
            ],
            "startHere": "dataset-split",
            "more": ["dataset-manifest", "dataset-provenance"],
            "examples": [],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      },
      {
        "id": "health",
        "title": "Health checks and failure recovery",
        "situations": [
          {
            "id": "health-contract",
            "title": "My health check responds but does not explain what is healthy",
            "description": "The service responds to a probe, but the checked conditions and failure meaning are unclear.",
            "why": "The health-check contract lets you define the checks and their reported meaning. It is a template for implementation, not a running probe.",
            "keywords": [
              "health check",
              "reliable",
              "probe",
              "status",
              "failure",
              "healthy"
            ],
            "startHere": "health-contract",
            "more": ["service-manifest", "service-runbook"],
            "examples": ["service-example"],
            "automate": [],
            "effort": "small-workflow-change"
          },
          {
            "id": "health-recovery",
            "title": "A failed health check has no recovery instructions",
            "description": "A service needs restarting or recovering, but the operating steps exist only in somebody’s memory.",
            "why": "Capture how to start, stop, inspect and recover a service.",
            "keywords": [
              "failed health check",
              "recovery instructions",
              "restart",
              "service operations"
            ],
            "startHere": "service-runbook",
            "more": ["service-manifest", "health-contract"],
            "examples": ["service-example"],
            "automate": [],
            "effort": "small-workflow-change"
          }
        ]
      }
    ]
  }
}
