message: Avoid duplicate `link-to-github-io`
diff: import React from 'dom-chef';
  -import elementReady from 'element-ready';
  import * as pageDetect from 'github-url-detection';
  import {LinkExternalIcon} from '@primer/octicons-react';
  @@ -7,39 +6,42 @@ import features from '../feature-manager';
  import {getRepo} from '../github-helpers';
  import observe from '../helpers/selector-observer';
  -function getLinkToGitHubIo(repoTitle: HTMLElement): JSX.Element {
  +function getLinkToGitHubIo(repoTitle: HTMLElement, className?: string): JSX.Element {
  return (
  <a
  href={`https://${repoTitle.textContent!.trim()}`}
  target="_blank"
  rel="noopener noreferrer"
  + className={className}
  >
  <LinkExternalIcon className="v-align-middle"/>
  </a>
  );
  }
  -async function initRepo(): Promise<void> {
  - const repoTitle = (await elementReady('[itemprop="name"]'))!;
  - const link = getLinkToGitHubIo(repoTitle);
  +function addRepoListLink(repoTitle: HTMLAnchorElement): void {
  + repoTitle.after(' ', getLinkToGitHubIo(repoTitle));
  +}
  - link.classList.add('mr-2');
  - repoTitle.after(link);
  +function addRepoHeaderLink(repoTitle: HTMLElement): void {
  + repoTitle.after(getLinkToGitHubIo(repoTitle, 'mr-2'));
  }
  -function addLink(repoTitle: HTMLAnchorElement): void {
  - repoTitle.after(' ', getLinkToGitHubIo(repoTitle));
  +function initRepo(signal: AbortSignal): void {
  + observe('[itemprop="name"]', addRepoHeaderLink, {signal});
  }
  function initRepoList(signal: AbortSignal): void {
  - observe('a[href$=".github.io"][itemprop="name codeRepository"]', addLink, {signal});
  + observe('a[href$=".github.io"][itemprop="name codeRepository"]', addRepoListLink, {signal});
  }
  void features.add(import.meta.url, {
  + include: [
  + pageDetect.hasRepoHeader,
  + ],
  asLongAs: [
  () => Boolean(getRepo()?.name.endsWith('.github.io')),
  ],
  - deduplicate: 'has-rgh',
  awaitDomReady: false,
  init: initRepo,
  }, {
  