{"record":{"id":"b36b8fa5963715b5","repo":"microsoft/typescript-go","slug":"unknown-kind-alias-member-member-in-alias-nam","errorCode":null,"errorMessage":"Unknown kind alias member ${member} in ${alias.name}","messagePattern":"Unknown kind alias member (.+?) in (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"_scripts/schema.ts","lineNumber":1165,"sourceCode":"            }\r\n            if (!listAlias.elementTypeName) {\r\n                throw new Error(`List alias ${listAlias.name} is missing an element type`);\r\n            }\r\n            if (listAlias.elementType !== this.resolveType(listAlias.elementTypeName)) {\r\n                throw new Error(`List alias element type cache mismatch for ${listAlias.name}`);\r\n            }\r\n        }\r\n\r\n        for (const marker of this.kindMarkers()) {\r\n            if (!this.hasKindElement(marker.value) && !this.kindMarkers().some(candidate => candidate.name === marker.value)) {\r\n                throw new Error(`Kind marker ${marker.name} references undefined kind or marker ${marker.value}`);\r\n            }\r\n        }\r\n\r\n        for (const alias of this.kindAliases()) {\r\n            for (const member of alias.members) {\r\n                if (!this.hasKindAlias(member) && !this.hasKindElement(member)) {\r\n                    throw new Error(`Unknown kind alias member ${member} in ${alias.name}`);\r\n                }\r\n            }\r\n        }\r\n    }\r\n\r\n    primitiveType(name: string): PrimitiveType {\r\n        const existing = this.primitiveTypeMap.get(name);\r\n        if (existing) return existing;\r\n        const type = new PrimitiveType(this, name);\r\n        this.primitiveTypeMap.set(name, type);\r\n        return type;\r\n    }\r\n\r\n    kindType(value: string): KindType {\r\n        const existing = this.kindTypeMap.get(value);\r\n        if (existing) return existing;\r\n        const type = new KindType(this, value);\r\n        this.kindTypeMap.set(value, type);\r","sourceCodeStart":1147,"sourceCodeEnd":1183,"githubUrl":"https://github.com/microsoft/typescript-go/blob/1bcfa18d79a3be41772223d5c05dfe4480e614ff/_scripts/schema.ts#L1147-L1183","documentation":"validate() checks each kind alias's member list; a member name is neither a known kind alias nor a kind element. The kind alias union references an undefined member.","triggerScenarios":"Listing a member in a kind alias that was never defined as a kind or alias; typos; deleting a kind without pruning alias member lists.","commonSituations":"Editing kind aliases in the AST schema; stale member lists after kind removals in a refactor.","solutions":["Correct or remove the unknown member from the alias in the schema source","Define the missing kind/alias if the member is legitimately new","Regenerate and revalidate the schema"],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// precheck: every kind-alias member resolves to a known alias or kind\nfor (const a of schema.kindAliases()) for (const m of a.members) assert(schema.hasKindAlias(m) || schema.hasKindElement(m));","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Keep member lists in sync when kinds are renamed or deleted","Run validate() locally before pushing schema changes"],"tags":["build","codegen","schema","internal"],"backgroundTag":null,"analyzedSha":"1bcfa18d79a3be41772223d5c05dfe4480e614ff","analyzedAt":"2026-08-16T02:12:00.115Z","schemaVersion":2},"datasetVersion":"2026-08-16T03:17:38.424Z"}