# Graph Report - .  (2026-04-19)

## Corpus Check
- 177 files · ~197,362 words
- Verdict: corpus is large enough that graph structure adds value.

## Summary
- 235 nodes · 221 edges · 57 communities detected
- Extraction: 89% EXTRACTED · 11% INFERRED · 0% AMBIGUOUS · INFERRED: 25 edges (avg confidence: 0.76)
- Token cost: 0 input · 0 output

## Community Hubs (Navigation)
- [[_COMMUNITY_Layout Persistence Branding|Layout Persistence Branding]]
- [[_COMMUNITY_Concept Modal Youtube|Concept Modal Youtube]]
- [[_COMMUNITY_Main Getingestconfigfromenv Getpublicconfig|Main Getingestconfigfromenv Getpublicconfig]]
- [[_COMMUNITY_Wordpress Decodeentities Fetchallpages|Wordpress Decodeentities Fetchallpages]]
- [[_COMMUNITY_Cache Main Createcachefromenv|Cache Main Createcachefromenv]]
- [[_COMMUNITY_Highperformingyoutubevideos Instagramposts Newestitems|Highperformingyoutubevideos Instagramposts Newestitems]]
- [[_COMMUNITY_Compute Sleep Cachedcompute|Compute Sleep Cachedcompute]]
- [[_COMMUNITY_Cache Slug Build|Cache Slug Build]]
- [[_COMMUNITY_Image Placeholder Load|Image Placeholder Load]]
- [[_COMMUNITY_Website Repository Guidelines|Website Repository Guidelines]]
- [[_COMMUNITY_Youtube Fetchyoutubeviaapi Fetchyoutubeviarss|Youtube Fetchyoutubeviaapi Fetchyoutubeviarss]]
- [[_COMMUNITY_Cacheputsafe Isget Isimagerequest|Cacheputsafe Isget Isimagerequest]]
- [[_COMMUNITY_Production Notch Styling|Production Notch Styling]]
- [[_COMMUNITY_Astro Blogpostcard Layout|Astro Blogpostcard Layout]]
- [[_COMMUNITY_Getcachepath Readcontentcache Verify|Getcachepath Readcontentcache Verify]]
- [[_COMMUNITY_Fetchpodcastrss Normalizepodcastfeeditems Striphtml|Fetchpodcastrss Normalizepodcastfeeditems Striphtml]]
- [[_COMMUNITY_Target Data Umami|Target Data Umami]]
- [[_COMMUNITY_Screenshot Review Santhoshj|Screenshot Review Santhoshj]]
- [[_COMMUNITY_Tests Listed Files|Tests Listed Files]]
- [[_COMMUNITY_Service Worker Critical|Service Worker Critical]]
- [[_COMMUNITY_Withutm|Withutm]]
- [[_COMMUNITY_Creatememorycache Memory Cache|Creatememorycache Memory Cache]]
- [[_COMMUNITY_Readfeaturedvideoids Curation|Readfeaturedvideoids Curation]]
- [[_COMMUNITY_Read Umami Attributes|Read Umami Attributes]]
- [[_COMMUNITY_Read Layout Test|Read Layout Test]]
- [[_COMMUNITY_Read Title Type|Read Title Type]]
- [[_COMMUNITY_Umami Attributes Test|Umami Attributes Test]]
- [[_COMMUNITY_Wcag Responsive Shell|Wcag Responsive Shell]]
- [[_COMMUNITY_Normalized Schema Wordpress|Normalized Schema Wordpress]]
- [[_COMMUNITY_Passwords Rationale Revocable|Passwords Rationale Revocable]]
- [[_COMMUNITY_Astro Config|Astro Config]]
- [[_COMMUNITY_Community 31|Community 31]]
- [[_COMMUNITY_Links|Links]]
- [[_COMMUNITY_Types|Types]]
- [[_COMMUNITY_Types|Types]]
- [[_COMMUNITY_Test|Test]]
- [[_COMMUNITY_Ingest Test|Ingest Test]]
- [[_COMMUNITY_Desktop Header Screenshot|Desktop Header Screenshot]]
- [[_COMMUNITY_Mobile Header Screenshot|Mobile Header Screenshot]]
- [[_COMMUNITY_Surface|Surface]]
- [[_COMMUNITY_Rationale Structure Keeps|Rationale Structure Keeps]]
- [[_COMMUNITY_Contentitem Summary Optional|Contentitem Summary Optional]]
- [[_COMMUNITY_Standardcard Astro|Standardcard Astro]]
- [[_COMMUNITY_Post Slug Astro|Post Slug Astro]]
- [[_COMMUNITY_Slug Astro|Slug Astro]]
- [[_COMMUNITY_Point Quality Gate|Point Quality Gate]]
- [[_COMMUNITY_Bounce Rate Reduction|Bounce Rate Reduction]]
- [[_COMMUNITY_Preview Modal Instead|Preview Modal Instead]]
- [[_COMMUNITY_Umami Preview Event|Umami Preview Event]]
- [[_COMMUNITY_Modal Tracking Click|Modal Tracking Click]]
- [[_COMMUNITY_Precedence Localstorage Cookie|Precedence Localstorage Cookie]]
- [[_COMMUNITY_Cookie Fallback Long|Cookie Fallback Long]]
- [[_COMMUNITY_Switch Event Automatic|Switch Event Automatic]]
- [[_COMMUNITY_Surface|Surface]]
- [[_COMMUNITY_Social Aggregation|Social Aggregation]]
- [[_COMMUNITY_Homepage Modules|Homepage Modules]]
- [[_COMMUNITY_Conversion Ctas|Conversion Ctas]]

## God Nodes (most connected - your core abstractions)
1. `2026-02-10 lighthouse fixes change` - 13 edges
2. `main()` - 10 edges
3. `createCacheFromEnv()` - 8 edges
4. `media-modal capability` - 7 edges
5. `run()` - 6 edges
6. `normalizeWordpressPost()` - 6 edges
7. `fast-website` - 6 edges
8. `Three-theme system (dark/light/high-contrast)` - 6 edges
9. `log()` - 5 edges
10. `normalizeWordpressPage()` - 5 edges

## Surprising Connections (you probably didn't know these)
- `Favicon SVG stylized S mark` --supports_branding--> `SEO-first content aggregation website`  [INFERRED]
  site/public/favicon.svg → README.md
- `run()` --calls--> `log()`  [INFERRED]
  site\scripts\run-lighthouse.ts → site\scripts\fetch-content.ts
- `createCacheFromEnv()` --calls--> `log()`  [INFERRED]
  site\src\lib\cache\index.ts → site\scripts\fetch-content.ts
- `main()` --calls--> `getIngestConfigFromEnv()`  [INFERRED]
  site\scripts\fetch-content.ts → site\src\lib\config.ts
- `main()` --calls--> `createCacheFromEnv()`  [INFERRED]
  site\scripts\fetch-content.ts → site\src\lib\cache\index.ts

## Hyperedges (group relationships)
- **Theme notch incident bundle** — doc_diag_complete, doc_diag_summary, doc_prod_diagnosis, issue_theme_notch_production_unstyled, cause_stale_production_css, fix_rebuild_redeploy_docker [INFERRED 0.90]
- **Lighthouse gate contract** — capability_lighthouse_quality_gate, concept_lighthouse_gate_100, concept_theme_system, concept_service_worker_caching, concept_layout_shift_prevention [EXTRACTED 0.90]
- **Media modal implementation bundle** — capability_media_modal, concept_native_dialog_modal, concept_iframe_src_reset, concept_cards_as_buttons, concept_data_attributes_modal, concept_modal_embed_urls, concept_wcag_modal_accessibility, concept_umami_media_preview, concept_modal_cta_tracking [EXTRACTED 0.90]
- **Theme persistence bundle** — change_remember_theme, concept_theme_persistence, concept_theme_precedence_order, concept_site_theme_cookie, concept_theme_switch_event, concept_theme_switch_payload, concept_no_restore_event [EXTRACTED 0.90]

## Communities

### Community 0 - "Layout Persistence Branding"
Cohesion: 0.08
Nodes (25): lighthouse-quality-gate capability, Accessible semantic controls, deterministic lighthouse gate, Layout shift prevention, prefers-reduced-motion handling, theme persistence across visits, Theme persistence with localStorage/cookie fallback, theme_switch umami event (+17 more)

### Community 1 - "Concept Modal Youtube"
Cohesion: 0.12
Nodes (18): media-modal capability, 2026-02-10 lighthouse fixes change, youtube iframe api endpoint, video/podcast cards as button triggers, concept crawlable anchors, concept csp header alignment, concept dark theme contrast tokens, data-* attribute flow from cards to modal (+10 more)

### Community 2 - "Main Getingestconfigfromenv Getpublicconfig"
Cohesion: 0.18
Nodes (11): getIngestConfigFromEnv(), dedupe(), log(), main(), normalizeSpotifyEpisodeUrl(), readPodcastSpotifyOverrideMap(), writeAtomic(), readInstagramEmbedPosts() (+3 more)

### Community 3 - "Wordpress Decodeentities Fetchallpages"
Cohesion: 0.27
Nodes (10): decodeEntities(), fetchWordpressContent(), getAuthHeaders(), mapCategoryIds(), mapFeaturedImageUrl(), normalizeWordpressCategory(), normalizeWordpressPage(), normalizeWordpressPost() (+2 more)

### Community 4 - "Cache Main Createcachefromenv"
Cohesion: 0.21
Nodes (7): log(), main(), createCacheFromEnv(), createNoopCache(), createRedisCache(), resolveDefaultTtlSecondsFromEnv(), resolveRedisUrlFromEnv()

### Community 5 - "Highperformingyoutubevideos Instagramposts Newestitems"
Cohesion: 0.2
Nodes (4): highPerformingYoutubeVideos(), wordpressPosts(), wordpressPostsByCategorySlug(), youtubeVideos()

### Community 6 - "Compute Sleep Cachedcompute"
Cohesion: 0.25
Nodes (7): compute(), sleep(), cachedCompute(), getArg(), hasFlag(), run(), startPreviewServerIfNeeded()

### Community 7 - "Cache Slug Build"
Cohesion: 0.18
Nodes (11): blog-section-surface, build-time ingestion into content cache, site/content/cache/content.json, site/scripts/fetch-content.ts, Rationale: build-time cache keeps site fast and crawlable, /blog/category/<slug> route, /blog route, /blog/page/<slug> route (+3 more)

### Community 8 - "Image Placeholder Load"
Cohesion: 0.2
Nodes (10): BaseLayout inline image load script, static placeholder on image error, fade-in on image load, image-lazy-loading, .img-error, .img-loading, .img-shimmer-wrap, no CLS from placeholder (+2 more)

### Community 9 - "Website Repository Guidelines"
Cohesion: 0.22
Nodes (9): Repository Guidelines, SVG uses prefers-color-scheme dark fill override, Favicon SVG stylized S mark, lighthouse-quality-gate, nav-hover-line, theme-switcher-notch, OpenSpec schema spec-driven, fast-website (+1 more)

### Community 10 - "Youtube Fetchyoutubeviaapi Fetchyoutubeviarss"
Cohesion: 0.36
Nodes (6): fetchYoutubeViaApi(), fetchYoutubeViaRss(), normalizeYoutubeApiVideos(), normalizeYoutubeRssFeedItems(), stripHtml(), truncate()

### Community 11 - "Cacheputsafe Isget Isimagerequest"
Cohesion: 0.33
Nodes (0): 

### Community 12 - "Production Notch Styling"
Cohesion: 0.33
Nodes (6): Stale production CSS missing theme-notch rules, Production Theme Notch Styling Issue - Complete Diagnostic Report, Production Theme Notch Styling Issue - Executive Summary, Production Theme Notch Styling Issue - Diagnostic Report, Rebuild and redeploy Docker image, Theme notch unstyled on production

### Community 13 - "Astro Blogpostcard Layout"
Cohesion: 0.33
Nodes (4): card-layout-system, views shown only when available, shared Card component, standard footer/meta row

### Community 14 - "Getcachepath Readcontentcache Verify"
Cohesion: 0.5
Nodes (3): getCachePath(), readContentCache(), main()

### Community 15 - "Fetchpodcastrss Normalizepodcastfeeditems Striphtml"
Cohesion: 0.6
Nodes (4): fetchPodcastRss(), normalizePodcastFeedItems(), stripHtml(), truncate()

### Community 16 - "Target Data Umami"
Cohesion: 0.5
Nodes (4): data-umami-event attributes, placement, target_id, target_url

### Community 17 - "Screenshot Review Santhoshj"
Cohesion: 0.67
Nodes (3): Performance Review — santhoshj.com, Blog page screenshot, Homepage screenshot

### Community 18 - "Tests Listed Files"
Cohesion: 0.67
Nodes (3): Listed spec files missing in current workspace, site/tests/content.spec.ts, site/tests/yaml.spec.ts

### Community 19 - "Service Worker Critical"
Cohesion: 0.67
Nodes (3): Critical-asset cache busting, Service worker caching lifecycle, Service worker performance spec

### Community 20 - "Withutm"
Cohesion: 1.0
Nodes (0): 

### Community 21 - "Creatememorycache Memory Cache"
Cohesion: 1.0
Nodes (0): 

### Community 22 - "Readfeaturedvideoids Curation"
Cohesion: 1.0
Nodes (0): 

### Community 23 - "Read Umami Attributes"
Cohesion: 1.0
Nodes (0): 

### Community 24 - "Read Layout Test"
Cohesion: 1.0
Nodes (0): 

### Community 25 - "Read Title Type"
Cohesion: 1.0
Nodes (0): 

### Community 26 - "Umami Attributes Test"
Cohesion: 1.0
Nodes (0): 

### Community 27 - "Wcag Responsive Shell"
Cohesion: 1.0
Nodes (0): 

### Community 28 - "Normalized Schema Wordpress"
Cohesion: 1.0
Nodes (2): normalized wordpress internal schema, Rationale: normalized schema keeps UI simple and consistent

### Community 29 - "Passwords Rationale Revocable"
Cohesion: 1.0
Nodes (2): Rationale: app passwords are revocable and safer operationally, WordPress application passwords

### Community 30 - "Astro Config"
Cohesion: 1.0
Nodes (0): 

### Community 31 - "Community 31"
Cohesion: 1.0
Nodes (0): 

### Community 32 - "Links"
Cohesion: 1.0
Nodes (0): 

### Community 33 - "Types"
Cohesion: 1.0
Nodes (0): 

### Community 34 - "Types"
Cohesion: 1.0
Nodes (0): 

### Community 35 - "Test"
Cohesion: 1.0
Nodes (0): 

### Community 36 - "Ingest Test"
Cohesion: 1.0
Nodes (0): 

### Community 37 - "Desktop Header Screenshot"
Cohesion: 1.0
Nodes (1): Desktop header screenshot

### Community 38 - "Mobile Header Screenshot"
Cohesion: 1.0
Nodes (1): Mobile header screenshot

### Community 39 - "Surface"
Cohesion: 1.0
Nodes (1): seo-content-surface

### Community 40 - "Rationale Structure Keeps"
Cohesion: 1.0
Nodes (1): Rationale: route structure keeps URLs clear and stable

### Community 41 - "Contentitem Summary Optional"
Cohesion: 1.0
Nodes (1): ContentItem.summary optional field

### Community 42 - "Standardcard Astro"
Cohesion: 1.0
Nodes (0): 

### Community 43 - "Post Slug Astro"
Cohesion: 1.0
Nodes (1): blog/post/[slug].astro

### Community 44 - "Slug Astro"
Cohesion: 1.0
Nodes (1): blog/page/[slug].astro

### Community 45 - "Point Quality Gate"
Cohesion: 1.0
Nodes (1): Lighthouse 100-point quality gate

### Community 46 - "Bounce Rate Reduction"
Cohesion: 1.0
Nodes (1): Bounce rate reduction intent

### Community 47 - "Preview Modal Instead"
Cohesion: 1.0
Nodes (1): on-site media preview modal instead of outbound navigation

### Community 48 - "Umami Preview Event"
Cohesion: 1.0
Nodes (1): umami media_preview event taxonomy

### Community 49 - "Modal Tracking Click"
Cohesion: 1.0
Nodes (1): modal CTA tracking via cta_click taxonomy

### Community 50 - "Precedence Localstorage Cookie"
Cohesion: 1.0
Nodes (1): theme precedence localStorage -> cookie -> environment signals

### Community 51 - "Cookie Fallback Long"
Cohesion: 1.0
Nodes (1): site_theme cookie fallback with long TTL

### Community 52 - "Switch Event Automatic"
Cohesion: 1.0
Nodes (1): no theme_switch event on automatic restoration

### Community 53 - "Surface"
Cohesion: 1.0
Nodes (1): SEO content surface spec

### Community 54 - "Social Aggregation"
Cohesion: 1.0
Nodes (1): Social content aggregation spec

### Community 55 - "Homepage Modules"
Cohesion: 1.0
Nodes (1): Homepage content modules spec

### Community 56 - "Conversion Ctas"
Cohesion: 1.0
Nodes (1): Conversion CTAs spec

## Knowledge Gaps
- **78 isolated node(s):** `Repository Guidelines`, `OpenSpec schema spec-driven`, `theme-switcher-notch`, `nav-hover-line`, `lighthouse-quality-gate` (+73 more)
  These have ≤1 connection - possible missing edges or undocumented components.
- **Thin community `Withutm`** (2 nodes): `url.ts`, `withUtm()`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Creatememorycache Memory Cache`** (2 nodes): `createMemoryCache()`, `memory-cache.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Readfeaturedvideoids Curation`** (2 nodes): `readFeaturedVideoIds()`, `curation.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Read Umami Attributes`** (2 nodes): `read()`, `blog-umami-attributes.test.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Read Layout Test`** (2 nodes): `read()`, `card-layout.test.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Read Title Type`** (2 nodes): `read()`, `content-title-type-attributes.test.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Umami Attributes Test`** (2 nodes): `umami-attributes.test.ts`, `read()`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Wcag Responsive Shell`** (2 nodes): `wcag-responsive-shell.test.ts`, `read()`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Normalized Schema Wordpress`** (2 nodes): `normalized wordpress internal schema`, `Rationale: normalized schema keeps UI simple and consistent`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Passwords Rationale Revocable`** (2 nodes): `Rationale: app passwords are revocable and safer operationally`, `WordPress application passwords`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Astro Config`** (1 nodes): `astro.config.mjs`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 31`** (1 nodes): `env.d.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Links`** (1 nodes): `links.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Types`** (1 nodes): `types.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Types`** (1 nodes): `types.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Test`** (1 nodes): `blog-nav.test.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Ingest Test`** (1 nodes): `ingest.test.ts`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Desktop Header Screenshot`** (1 nodes): `Desktop header screenshot`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Mobile Header Screenshot`** (1 nodes): `Mobile header screenshot`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Surface`** (1 nodes): `seo-content-surface`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Rationale Structure Keeps`** (1 nodes): `Rationale: route structure keeps URLs clear and stable`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Contentitem Summary Optional`** (1 nodes): `ContentItem.summary optional field`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Standardcard Astro`** (1 nodes): `StandardCard.astro`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Post Slug Astro`** (1 nodes): `blog/post/[slug].astro`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Slug Astro`** (1 nodes): `blog/page/[slug].astro`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Point Quality Gate`** (1 nodes): `Lighthouse 100-point quality gate`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Bounce Rate Reduction`** (1 nodes): `Bounce rate reduction intent`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Preview Modal Instead`** (1 nodes): `on-site media preview modal instead of outbound navigation`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Umami Preview Event`** (1 nodes): `umami media_preview event taxonomy`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Modal Tracking Click`** (1 nodes): `modal CTA tracking via cta_click taxonomy`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Precedence Localstorage Cookie`** (1 nodes): `theme precedence localStorage -> cookie -> environment signals`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Cookie Fallback Long`** (1 nodes): `site_theme cookie fallback with long TTL`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Switch Event Automatic`** (1 nodes): `no theme_switch event on automatic restoration`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Surface`** (1 nodes): `SEO content surface spec`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Social Aggregation`** (1 nodes): `Social content aggregation spec`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Homepage Modules`** (1 nodes): `Homepage content modules spec`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Conversion Ctas`** (1 nodes): `Conversion CTAs spec`
  Too small to be a meaningful cluster - may be noise or needs more connections extracted.

## Suggested Questions
_Questions this graph is uniquely positioned to answer:_

- **Why does `2026-02-10 lighthouse fixes change` connect `Concept Modal Youtube` to `Layout Persistence Branding`?**
  _High betweenness centrality (0.020) - this node is a cross-community bridge._
- **Why does `prefers-reduced-motion handling` connect `Layout Persistence Branding` to `Concept Modal Youtube`?**
  _High betweenness centrality (0.017) - this node is a cross-community bridge._
- **Why does `main()` connect `Main Getingestconfigfromenv Getpublicconfig` to `Cache Main Createcachefromenv`, `Compute Sleep Cachedcompute`?**
  _High betweenness centrality (0.012) - this node is a cross-community bridge._
- **Are the 4 inferred relationships involving `main()` (e.g. with `getIngestConfigFromEnv()` and `createCacheFromEnv()`) actually correct?**
  _`main()` has 4 INFERRED edges - model-reasoned connections that need verification._
- **Are the 7 inferred relationships involving `createCacheFromEnv()` (e.g. with `main()` and `main()`) actually correct?**
  _`createCacheFromEnv()` has 7 INFERRED edges - model-reasoned connections that need verification._
- **Are the 2 inferred relationships involving `run()` (e.g. with `sleep()` and `log()`) actually correct?**
  _`run()` has 2 INFERRED edges - model-reasoned connections that need verification._
- **What connects `Repository Guidelines`, `OpenSpec schema spec-driven`, `theme-switcher-notch` to the rest of the system?**
  _78 weakly-connected nodes found - possible documentation gaps or missing edges._