{"record":{"id":"02efad8e1f5bffb1","repo":"nodejs/node","slug":"cannot-generate-isolate-for-s-since-it-is-an-addi","errorCode":null,"errorMessage":"Cannot generate isolate for %s since it is an additional_compile_target.","messagePattern":"Cannot generate isolate for (.+?) since it is an additional_compile_target\\.","errorType":"exception","errorClass":"MBErr","httpStatus":null,"severity":"error","filePath":"deps/v8/tools/mb/mb.py","lineNumber":858,"sourceCode":"\n    android = 'target_os=\"android\"' in vals['gn_args']\n    ios = 'target_os=\"ios\"' in vals['gn_args']\n    fuchsia = 'target_os=\"fuchsia\"' in vals['gn_args']\n    win = self.platform == 'win32' or 'target_os=\"win\"' in vals['gn_args']\n    possible_runtime_deps_rpaths = {}\n    for target in ninja_targets:\n      target_type = isolate_map[target]['type']\n      label = isolate_map[target]['label']\n      target_runtime_deps = 'obj/%s.runtime_deps' % label.replace(':', '/')\n      stamp_runtime_deps = 'obj/%s.stamp.runtime_deps' % label.replace(':', '/')\n      # TODO(crbug.com/40590196): 'official_tests' use\n      # type='additional_compile_target' to isolate tests. This is not the\n      # intended use for 'additional_compile_target'.\n      if (target_type == 'additional_compile_target' and\n          target != 'official_tests'):\n        # By definition, additional_compile_targets are not tests, so we\n        # shouldn't generate isolates for them.\n        raise MBErr('Cannot generate isolate for %s since it is an '\n                    'additional_compile_target.' % target)\n      if fuchsia or ios or target_type == 'generated_script':\n        # iOS and Fuchsia targets end up as groups.\n        # generated_script targets are always actions.\n        rpaths = [stamp_runtime_deps, target_runtime_deps]\n      elif android:\n        # Android targets may be either android_apk or executable. The former\n        # will result in runtime_deps associated with the stamp file, while the\n        # latter will result in runtime_deps associated with the executable.\n        label = isolate_map[target]['label']\n        rpaths = [\n            target + '.runtime_deps', stamp_runtime_deps, target_runtime_deps\n        ]\n      elif (target_type == 'script' or\n            isolate_map[target].get('label_type') == 'group'):\n        # For script targets, the build target is usually a group,\n        # for which gn generates the runtime_deps next to the stamp file\n        # for the label, which lives under the obj/ directory, but it may","sourceCodeStart":840,"sourceCodeEnd":876,"githubUrl":"https://github.com/nodejs/node/blob/1b2de5e052fc0fb95fd7fb6846dcec4ade598e9e/deps/v8/tools/mb/mb.py#L840-L876","documentation":"MB's isolate_map contract reserves type 'additional_compile_target' for compile-only targets (not runnable tests), so it refuses to generate isolates for them. There is a deliberate carve-out for the legacy 'official_tests' name only.","triggerScenarios":"Running `mb.py isolate --target <T>` (or an isolate-producing subcommand) where isolate_map[T]['type'] == 'additional_compile_target' and T != 'official_tests'.","commonSituations":"A test target was mislabeled as additional_compile_target; running isolate against a build-only target; new test target missing a proper type in isolate_map.","solutions":["Set the correct isolate_map type for the target (e.g. 'executable', 'gtest_test', 'android_apk').","Do not run isolate on additional_compile_targets.","If you intentionally need the official_tests legacy pattern, name the target exactly 'official_tests'."],"exampleFix":"// before\n// isolate_map.pyl: '<target>': {'type': 'additional_compile_target', ...}\n// after\n// '<target>': {'type': 'gtest_test', ...}","handlingStrategy":"validation","validationCode":"isolate_map = load_isolate_map()\nt = isolate_map[target]['type']\nassert t != 'additional_compile_target' or target == 'official_tests', (\n    f\"{target!r} is additional_compile_target; cannot isolate\")","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Tag test targets with their real type in isolate_map.","Don't drive isolate steps against compile-only targets."],"tags":["mb","isolate","v8","build-config","isolate-map"],"backgroundTag":null,"analyzedSha":"1b2de5e052fc0fb95fd7fb6846dcec4ade598e9e","analyzedAt":"2026-08-13T00:53:24.642Z","schemaVersion":2},"datasetVersion":"2026-08-13T04:17:16.726Z"}