Id not allowed multiple times in same sub-query

In your case, you’re technically doing something similar to that.

query {
  organizationScalar(func: has(externalId)) @filter(eq(externalId, "tyrell")) {
      id: uid
      title
      id: uid
  }
}

Maybe you wanted to do something like this:

query {
  organizationScalar(func: has(externalId)) @filter(eq(externalId, "tyrell")) {
    ...Fragment
    id: uid
  }
}

fragment Fragment {
 someOrganization {
          id: uid
          title
    }
}