{
  "id": "youth-soccer-external-v1",
  "name": "Youth soccer external fixed suite",
  "version": 1,
  "checkCount": 59,
  "independence": "Authored outside the Flows plan that guides the build. Passing this suite can support Tier 3 (independent evaluator) or Tier 4 (external validation) only when isolation rules are also met.",
  "targetSlug": "build-youth-soccer-team-management-app",
  "notPlanAuthored": true,
  "checks": [
    {
      "id": "ext-ys-01",
      "letter": "A",
      "category": "visual_only",
      "domain": "teams",
      "label": "UI control performs real action, not only visual change — teams path #1",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-02",
      "letter": "B",
      "category": "persistence",
      "domain": "players",
      "label": "Data survives reload and new session — players path #1",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-03",
      "letter": "C",
      "category": "authz",
      "domain": "matches",
      "label": "Unauthorized request is rejected by server — matches path #1",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-04",
      "letter": "D",
      "category": "integration",
      "domain": "rsvp",
      "label": "External dependency is real, not simulated success — rsvp path #1",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-05",
      "letter": "E",
      "category": "state_transition",
      "domain": "attendance",
      "label": "Workflow state advances only on valid transitions — attendance path #1",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-06",
      "letter": "F",
      "category": "render_loop",
      "domain": "roles",
      "label": "UI reflects server state after mutation — roles path #1",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-07",
      "letter": "G",
      "category": "data_integrity",
      "domain": "roster",
      "label": "Writes are complete, unique where required — roster path #1",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-08",
      "letter": "H",
      "category": "regression",
      "domain": "schedule",
      "label": "Prior critical path still works after change — schedule path #1",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-09",
      "letter": "I",
      "category": "security",
      "domain": "notifications",
      "label": "Secrets and privileged ops are protected — notifications path #1",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-10",
      "letter": "J",
      "category": "accessibility",
      "domain": "export",
      "label": "Core flow is operable via keyboard/semantics — export path #1",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-11",
      "letter": "A",
      "category": "visual_only",
      "domain": "search",
      "label": "UI control performs real action, not only visual change — search path #2",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-12",
      "letter": "B",
      "category": "persistence",
      "domain": "filters",
      "label": "Data survives reload and new session — filters path #2",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-13",
      "letter": "C",
      "category": "authz",
      "domain": "auth",
      "label": "Unauthorized request is rejected by server — auth path #2",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-14",
      "letter": "D",
      "category": "integration",
      "domain": "session",
      "label": "External dependency is real, not simulated success — session path #2",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-15",
      "letter": "E",
      "category": "state_transition",
      "domain": "admin",
      "label": "Workflow state advances only on valid transitions — admin path #2",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-16",
      "letter": "F",
      "category": "render_loop",
      "domain": "parent",
      "label": "UI reflects server state after mutation — parent path #2",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-17",
      "letter": "G",
      "category": "data_integrity",
      "domain": "coach",
      "label": "Writes are complete, unique where required — coach path #2",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-18",
      "letter": "H",
      "category": "regression",
      "domain": "stats",
      "label": "Prior critical path still works after change — stats path #2",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-19",
      "letter": "I",
      "category": "security",
      "domain": "notes",
      "label": "Secrets and privileged ops are protected — notes path #2",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-20",
      "letter": "J",
      "category": "accessibility",
      "domain": "availability",
      "label": "Core flow is operable via keyboard/semantics — availability path #2",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-21",
      "letter": "A",
      "category": "visual_only",
      "domain": "teams",
      "label": "UI control performs real action, not only visual change — teams path #3",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-22",
      "letter": "B",
      "category": "persistence",
      "domain": "players",
      "label": "Data survives reload and new session — players path #3",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-23",
      "letter": "C",
      "category": "authz",
      "domain": "matches",
      "label": "Unauthorized request is rejected by server — matches path #3",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-24",
      "letter": "D",
      "category": "integration",
      "domain": "rsvp",
      "label": "External dependency is real, not simulated success — rsvp path #3",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-25",
      "letter": "E",
      "category": "state_transition",
      "domain": "attendance",
      "label": "Workflow state advances only on valid transitions — attendance path #3",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-26",
      "letter": "F",
      "category": "render_loop",
      "domain": "roles",
      "label": "UI reflects server state after mutation — roles path #3",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-27",
      "letter": "G",
      "category": "data_integrity",
      "domain": "roster",
      "label": "Writes are complete, unique where required — roster path #3",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-28",
      "letter": "H",
      "category": "regression",
      "domain": "schedule",
      "label": "Prior critical path still works after change — schedule path #3",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-29",
      "letter": "I",
      "category": "security",
      "domain": "notifications",
      "label": "Secrets and privileged ops are protected — notifications path #3",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-30",
      "letter": "J",
      "category": "accessibility",
      "domain": "export",
      "label": "Core flow is operable via keyboard/semantics — export path #3",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-31",
      "letter": "A",
      "category": "visual_only",
      "domain": "search",
      "label": "UI control performs real action, not only visual change — search path #4",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-32",
      "letter": "B",
      "category": "persistence",
      "domain": "filters",
      "label": "Data survives reload and new session — filters path #4",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-33",
      "letter": "C",
      "category": "authz",
      "domain": "auth",
      "label": "Unauthorized request is rejected by server — auth path #4",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-34",
      "letter": "D",
      "category": "integration",
      "domain": "session",
      "label": "External dependency is real, not simulated success — session path #4",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-35",
      "letter": "E",
      "category": "state_transition",
      "domain": "admin",
      "label": "Workflow state advances only on valid transitions — admin path #4",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-36",
      "letter": "F",
      "category": "render_loop",
      "domain": "parent",
      "label": "UI reflects server state after mutation — parent path #4",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-37",
      "letter": "G",
      "category": "data_integrity",
      "domain": "coach",
      "label": "Writes are complete, unique where required — coach path #4",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-38",
      "letter": "H",
      "category": "regression",
      "domain": "stats",
      "label": "Prior critical path still works after change — stats path #4",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-39",
      "letter": "I",
      "category": "security",
      "domain": "notes",
      "label": "Secrets and privileged ops are protected — notes path #4",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-40",
      "letter": "J",
      "category": "accessibility",
      "domain": "availability",
      "label": "Core flow is operable via keyboard/semantics — availability path #4",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-41",
      "letter": "A",
      "category": "visual_only",
      "domain": "teams",
      "label": "UI control performs real action, not only visual change — teams path #5",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-42",
      "letter": "B",
      "category": "persistence",
      "domain": "players",
      "label": "Data survives reload and new session — players path #5",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-43",
      "letter": "C",
      "category": "authz",
      "domain": "matches",
      "label": "Unauthorized request is rejected by server — matches path #5",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-44",
      "letter": "D",
      "category": "integration",
      "domain": "rsvp",
      "label": "External dependency is real, not simulated success — rsvp path #5",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-45",
      "letter": "E",
      "category": "state_transition",
      "domain": "attendance",
      "label": "Workflow state advances only on valid transitions — attendance path #5",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-46",
      "letter": "F",
      "category": "render_loop",
      "domain": "roles",
      "label": "UI reflects server state after mutation — roles path #5",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-47",
      "letter": "G",
      "category": "data_integrity",
      "domain": "roster",
      "label": "Writes are complete, unique where required — roster path #5",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-48",
      "letter": "H",
      "category": "regression",
      "domain": "schedule",
      "label": "Prior critical path still works after change — schedule path #5",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-49",
      "letter": "I",
      "category": "security",
      "domain": "notifications",
      "label": "Secrets and privileged ops are protected — notifications path #5",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-50",
      "letter": "J",
      "category": "accessibility",
      "domain": "export",
      "label": "Core flow is operable via keyboard/semantics — export path #5",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-51",
      "letter": "A",
      "category": "visual_only",
      "domain": "search",
      "label": "UI control performs real action, not only visual change — search path #6",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-52",
      "letter": "B",
      "category": "persistence",
      "domain": "filters",
      "label": "Data survives reload and new session — filters path #6",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-53",
      "letter": "C",
      "category": "authz",
      "domain": "auth",
      "label": "Unauthorized request is rejected by server — auth path #6",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-54",
      "letter": "D",
      "category": "integration",
      "domain": "session",
      "label": "External dependency is real, not simulated success — session path #6",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-55",
      "letter": "E",
      "category": "state_transition",
      "domain": "admin",
      "label": "Workflow state advances only on valid transitions — admin path #6",
      "method": "content_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-56",
      "letter": "F",
      "category": "render_loop",
      "domain": "parent",
      "label": "UI reflects server state after mutation — parent path #6",
      "method": "http_probe",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-57",
      "letter": "G",
      "category": "data_integrity",
      "domain": "coach",
      "label": "Writes are complete, unique where required — coach path #6",
      "method": "browser",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-58",
      "letter": "H",
      "category": "regression",
      "domain": "stats",
      "label": "Prior critical path still works after change — stats path #6",
      "method": "db_assert",
      "independence": "external_fixed_suite",
      "level": 4
    },
    {
      "id": "ext-ys-59",
      "letter": "I",
      "category": "security",
      "domain": "notes",
      "label": "Secrets and privileged ops are protected — notes path #6",
      "method": "authz_probe",
      "independence": "external_fixed_suite",
      "level": 4
    }
  ]
}