{
  "id": "PS-002",
  "name": "PATCH Permissions<X> round-trip: write via junction, read via projection",
  "description": "Setup: create a PermissionSet with PermissionsViewSetup=false. Mutation: PATCH PermissionsViewSetup=true. Verify: subsequent GET returns the flipped value, sourced from the _System_PermissionSetPermission junction (no physical column exists post-P6). This is the exact round-trip the frontend Permission Analyzer depends on — describe→filter('Permissions')→SOQL→OR-aggregate.",
  "object": "PermissionSet",
  "method": "PATCH",
  "setup": {
    "method": "POST",
    "endpoint": "/services/data/v63.0/sobjects/PermissionSet",
    "payload": {
      "Name": "E2E_PS_002_RoundTrip",
      "Label": "E2E Round Trip",
      "PermissionsViewSetup": false
    }
  },
  "endpoint": "/services/data/v63.0/sobjects/PermissionSet/{setup_id}",
  "payload": {
    "PermissionsViewSetup": true
  },
  "expects": {
    "status_code": 204
  },
  "query_after": {
    "object": "PermissionSet",
    "assertions": [
      {"field": "PermissionsViewSetup", "operator": "eq", "value": true}
    ]
  },
  "teardown": {
    "method": "DELETE",
    "endpoint": "/services/data/v63.0/sobjects/PermissionSet/{setup_id}"
  },
  "priority": "P0",
  "scene": "permission_set"
}
