{
  "version": 1,
  "sourceIssue": 2466,
  "policy": {
    "executionPreference": [
      "api_on_existing_staging_data",
      "hybrid_api_plus_minimal_ui",
      "ui_only_when_business_visibility_requires_it"
    ],
    "seedPolicy": "do_not_create_new_seed_data",
    "fixturePolicy": "prefer_runtime_resolution_from_production_mirrored_staging_data"
  },
  "stories": [
    {
      "story": 1466,
      "title": "PoC Credits",
      "priority": "batch1",
      "cases": [
        {
          "ac": "P1.3",
          "title": "Credits snapshot field contract stays correct",
          "shape": "api",
          "role": "admin",
          "needs": [
            "describe Credits__c",
            "assert Account_Name__c.createable=false"
          ]
        },
        {
          "ac": "FLS-3",
          "title": "AE cannot update denied Credits fields",
          "shape": "api",
          "role": "sales",
          "needs": [
            "resolve existing Credits record",
            "PATCH denied field as AE",
            "assert write rejected or stripped"
          ]
        },
        {
          "ac": "FLS-5",
          "title": "Topup create works through parent-controlled access",
          "shape": "api",
          "role": "sales",
          "needs": [
            "resolve existing Credits parent",
            "POST Credits_Topup__c as AE-style role",
            "assert success and readback"
          ]
        },
        {
          "ac": "T-1",
          "title": "Topup create assigns sequence and generated name",
          "shape": "api",
          "role": "admin",
          "needs": [
            "resolve existing Credits parent",
            "POST Credits_Topup__c",
            "assert Topup_Sequence__c and Name"
          ]
        },
        {
          "ac": "T-3",
          "title": "Cumulative disbursed reflects parent total plus topup",
          "shape": "api",
          "role": "admin",
          "needs": [
            "resolve existing Credits parent",
            "POST Credits_Topup__c",
            "assert Cumulative_Disbursed__c"
          ]
        },
        {
          "ac": "P2.5",
          "title": "Topup follows the mirrored approval path",
          "shape": "hybrid",
          "role": "admin",
          "needs": [
            "API create Topup on existing Credits",
            "UI or API submit approval action",
            "assert approval work items and status"
          ]
        },
        {
          "ac": "P2.6",
          "title": "Approved topup recomputes parent rollups",
          "shape": "hybrid",
          "role": "presales",
          "needs": [
            "use existing Credits parent",
            "approve existing Topup path",
            "assert parent Approved_Topups__c and Total_Disbursed__c"
          ]
        }
      ]
    },
    {
      "story": 730,
      "title": "Permission Sets",
      "priority": "batch1",
      "cases": [
        {
          "ac": "AC4",
          "title": "Button visibility reflects effective permissions",
          "shape": "ui",
          "role": "admin",
          "needs": [
            "open existing detail page",
            "assert action visibility"
          ]
        },
        {
          "ac": "AC5",
          "title": "Assigned permission set takes effect on visibility",
          "shape": "hybrid",
          "role": "sales",
          "needs": [
            "API verify pre-visibility",
            "API assign PSA to existing user",
            "API re-auth and verify visibility",
            "optional UI check only if business surface matters"
          ]
        }
      ]
    },
    {
      "story": 732,
      "title": "RLS / FLS",
      "priority": "batch2",
      "cases": [
        {
          "ac": "AC2",
          "title": "SOSL respects field visibility",
          "shape": "defer",
          "role": "sales",
          "needs": [
            "search substrate availability"
          ]
        },
        {
          "ac": "AC4",
          "title": "Edit and delete actions are hidden when access is denied",
          "shape": "ui",
          "role": "sales",
          "needs": [
            "open existing record as denied role",
            "assert buttons hidden or route blocked"
          ]
        },
        {
          "ac": "AC6",
          "title": "External-id upsert does not leak around access control",
          "shape": "defer",
          "role": "admin",
          "needs": [
            "existing external id field"
          ]
        }
      ]
    },
    {
      "story": 1333,
      "title": "SharingRule",
      "priority": "batch1",
      "cases": [
        {
          "ac": "AC2",
          "title": "EnableHierarchySharing surface exists in setup UI",
          "shape": "ui",
          "role": "admin",
          "needs": [
            "open setup sharing rule UI",
            "assert hierarchy-sharing toggle"
          ]
        },
        {
          "ac": "AC3",
          "title": "Owner-based sharing rule grants access to target role/user",
          "shape": "api",
          "role": "admin",
          "needs": [
            "resolve existing target account",
            "create sharing rule",
            "verify target user visibility by API query"
          ]
        }
      ]
    },
    {
      "story": 1334,
      "title": "Group memberships",
      "priority": "batch1",
      "cases": [
        {
          "ac": "AC1",
          "title": "GroupMember accepts nested Group id",
          "shape": "api",
          "role": "admin",
          "needs": [
            "create temporary Group rows",
            "POST GroupMember with nested Group id"
          ]
        },
        {
          "ac": "AC2",
          "title": "Nested group closure exposes transitive membership",
          "shape": "api",
          "role": "admin",
          "needs": [
            "create temporary Group rows",
            "create nested GroupMember links",
            "assert transitive closure by query"
          ]
        }
      ]
    },
    {
      "story": 1335,
      "title": "Schema / RT / Layout",
      "priority": "batch2",
      "cases": [
        {
          "ac": "AC1",
          "title": "RecordType.IsDefault is exposed correctly",
          "shape": "api",
          "role": "admin",
          "needs": [
            "describe target object",
            "assert exactly one default mapping"
          ]
        },
        {
          "ac": "AC2",
          "title": "DescribeLayouts honors per-record-type assignment when assignments exist",
          "shape": "api",
          "role": "admin",
          "needs": [
            "existing object with multiple layout assignments or readiness probe",
            "assert layout ids by record type"
          ]
        },
        {
          "ac": "AC3",
          "title": "Picklist plus record type plus layout happy path is usable",
          "shape": "hybrid",
          "role": "admin",
          "needs": [
            "API verify describe metadata",
            "UI verify actual page surface"
          ]
        }
      ]
    }
  ]
}
