Repository navigation
docs: full-width overview hero with a live, hoverable memory constellation - #5436
Merged
Merged
Conversation
…orks The hero's memory-graph clip is replaced by a screenshot of the control plane, and the band is now a two-column landing layout — copy left, product right — that runs the full width of the window with the doc sidebar starting underneath it. At 1140px the screenshot was a thumbnail of a UI whose whole point is that you can look at it. The sidebar is a sibling of <main>, so it cannot be moved by anything nested inside main: HomeHero reports the band's height in --hs-hero-height and custom.css drops the sidebar by it, matching the page on the doc-id class the theme already puts on <html>. HomeFlow is unchanged but now opens "How It Works" instead of sitting directly under the hero, so the hero is the whole first screen. The root page is served from the versioned copy, so both index.mdx files move it.
Replaces the hero's static control-plane screenshot with the control plane's own Constellation component, running over a synthetic bank. - constellation/Constellation.tsx is a near-copy of hindsight-control-plane/src/components/constellation.tsx: next-intl is a local string table, dark mode reads Docusaurus's data-theme, the HUD and instructions are skipped on narrow canvases (they overlapped the legend and toolbar), and Fullscreen can be turned off (it renders behind the navbar from inside the hero band's stacking context). - MemoryConstellation calls it the way the Memories view did: one flat field, coloured by mention recency, observations sized by source facts. - constellation/mock-bank.ts builds a deterministic bank with the same rules as GET /graph: semantic/temporal/caused_by links between facts, observations inheriting their sources' links and entities, derived entity links capped at 10 neighbours. - Softer shadow on the hero frame; drops the now-unused hindsight-ui.webp.
- Share export: load the logo from /img/logo.png — the docs site has no /logo.png, so exported SVGs silently lost it. - Accessibility: the canvas had no accessible name (the screenshot had alt text); wrap it in role="figure" with an aria-label (figure, not img, so the Share/Pause buttons inside stay reachable). - Overview text no longer calls the sample graph "one bank's". - New scripts/check-mock-bank.mjs, run by the docs build: every link joins two real memories with a known type and a 0..1 weight, no memory is isolated, observations carry a source count, and the bank is deterministic. Transpiles the .ts with the docs' own TypeScript, since CI runs Node 20. - MemoryConstellation: drop the one-caller height prop for a constant; keep the docs components' quote style. - Constellation.tsx: every docs-only difference from the control plane's copy is now marked "Docs-only"; the header no longer claims the rest is identical.
This was referenced Oct 8, 2026
This was referenced Oct 16, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The docs overview hero now shows the control plane's memory constellation running live — hover, pan, zoom — instead of a screenshot of it.
Two commits:
How
src/components/constellation/Constellation.tsxis a near-copy ofhindsight-control-plane/src/components/constellation.tsx. Differences:messages/en.json)data-themeinstead of adarkclassallowFullscreenprop (default true), off in the hero: from inside the band's stacking context (isolation: isolate) the fixed overlay renders behind the navbar and sidebarMemoryConstellation.tsxcalls it the way the Memories view did: one flat field, coloured by mention recency, observations sized by source facts, same link colours.constellation/mock-bank.tsbuilds a deterministic (seeded) bank with the same rules asGET /graph(MemoryEngine.get_graph_data):semantic/temporal/caused_bylinks between facts (retain writes onlycaused_by)semanticto observations sharing a sourceentitylinks derived from shared entities, capped at 10 neighbours@chenglou/pretextadded to the docs package (the component's only dependency).static/img/hindsight-ui.webpremoved (no longer referenced).role="figure"with anaria-label(the screenshot had alt text); Share export loads the logo from the docs'/img/logo.png.Verified
docusaurus buildpasses;./scripts/hooks/lint.shpasses.scripts/check-mock-bank.mjs(now part of the docs build) guards the mock bank: every link joins two real memories with a known type and a 0..1 weight, none isolated, observations carry a source count, output is deterministic. Fails loudly on a bad observation source index (verified).Known
Constellation.tsxis a copy (~1.7k lines); control-plane changes need re-syncing by hand.