Four-job thread map

Connects See, Shape, Govern and Run as one linked set of jobs using the selected thread-map direction.

Molecule · draft · v1.0.0 · owner: Site system lead · contract 19 of 20 points (open: figma)

Do and don't

Do: Four linked jobs

Rendered by job-map.ts

Open example: Four-job thread map · Do: Four linked jobs Use the full-page example to follow page links.

Readers can follow each job.

Do: Japanese

Rendered by job-map.ts

Open example: Four-job thread map · Do: Japanese Use the full-page example to follow page links.

The same map in Japanese.

Don't: Not a health scale

Rendered by job-map.ts

Open example: Four-job thread map · Don't: Not a health scale Use the full-page example to follow page links.

The colour meanings depend on the labelled context.

Don't: Not independent silos

Rendered by job-map.ts

Open example: Four-job thread map · Don't: Not independent silos Use the full-page example to follow page links.

The thread connects work across jobs.

Rules

RuleWhyCheck
Positive specimens declare their rendered initial state and document language; each registered visual variant has a positive example.Machine and Library consumers need the same examples without turning declarations into execution evidence.Automated: tests/unit/v4-example-coverage.test.ts
Use the four existing product routes and governed job names.Navigation must lead to the actual product explanations.Automated: tests/unit/site-identity.test.ts

API

PropTypeRequiredDefaultWhat it does
langen | jaNo"en"Navigation language.

Contract details

The full contract: identity, anatomy, variants, states, tokens, layout, motion, accessibility, content, tests

Identity

AspectValue
Idjob-map
LayerMolecules
Categorynavigation
OwnerSite system lead
Statusdraft
Version1.0.0
Sourceapps/showcase/site/system/molecules/job-map.ts (private repository; the contract and the render function are this one module)
VersionDateChange
1.0.02026-10-27Created from the owner-selected V4 direction (D-SITE-019).

Use when

  • An overview of Loom's four jobs. Why: The continuous line shows their relationship while real links make it useful.

Do not use when

  • Showing health bands. Why: Job colours name work, not a score.

Anatomy

PartWhat it is
rootNavigation landmark
linksFour labelled job links
threadFour threads pass through one governed field
outcomesClarity, decision, control and flow

Made of: text-link, tokens-component.

Used in: pages directly.

Variants

VariantWhenWhy
defaultWherever the page declaration places it.One shape per job keeps pages predictable.

States

StateRendered or not applicable
defaultdefault
hoverInteractive links retain their text and visible affordance on hover.
focus-visibleFour product links in See, Shape, Govern, Run order; each has a visible component focus ring.
activeEnter activates the focused link; native buttons also accept Space. Parent content does not move.
disabledNot applicable: Four-job navigation has nothing to disable.
loadingNot applicable: Four-job navigation is rendered at build time and is complete when the page loads.
emptyNot applicable: Content is generated from registered system definitions and has no empty-list variant.
errorNot applicable: Four-job navigation shows no data that can fail.
currentNot applicable: Four-job navigation has no current item.
visitedNot applicable: These navigational links keep their semantic colour; browser history does not imply task completion.
expandedNot applicable: Four-job navigation does not open or close.

Tokens

PartToken
--job-map-gap-mediumvar(--space-5)
--job-map-markvar(--type-h2)
--job-map-surfacevar(--cotton)
--job-map-inkvar(--ink)
--job-map-seevar(--teal-ink)
--job-map-shapevar(--madder-ink)
--job-map-governvar(--saffron-ink)
--job-map-runvar(--indigo-ink)
--job-map-gapvar(--space-6)
--job-map-marginvar(--space-8)
--job-map-gap-smallvar(--space-4)
--job-map-titlevar(--type-h3)
--job-map-captionvar(--type-small)
--job-map-rulevar(--rule-hair)
--job-map-linevar(--line-strong)
--job-map-targetvar(--space-11)
--job-map-focusvar(--focus)
--job-map-focus-widthvar(--rule)
--job-map-focus-offsetvar(--space-2)

Layout

AspectValue
breakpointsRequired review at 390, 768, 1024 and 1440 px; execution is not implied by this declaration; columns stack under 768 px; the wrap keeps a 16 px gutter on phones.
wrappingText wraps; nothing scrolls sideways.
textExpansionJapanese runs 20 to 40% longer; headings break between phrases (jaBreaks) and blocks grow downwards.

Spacing and rhythm

AspectValue
internal--space-6
external--space-8
rhythmSignals, one governed field and outcomes; four aligned rows at every width.

Motion

AspectValue
NoneNo intrinsic element animation. The optional claude-entrance consumer profile may translate below-fold structure once (20px, --dur-weave, --ease-enter, --stagger); reduced motion disables it. This preserved baseline entrance is separate from element playback.

Runtime and reuse

  1. Render-only element; mount any registered child enhancements separately. Preserve required Site CSS, fonts, responsive and locale rules from nativeElement.

Accessibility passport

AspectValue
roleNavigation landmark containing four links; decorative connecting diagram
nameFour jobs through one governed system, translated in Japanese
keyboardTab follows See, Shape, Govern, Run; Enter navigates
focusVisible component ring; navigation retains native document focus behavior
screenReaderLinks and outcomes remain readable in source order without the drawing or colour
contrastContext-aware job inks on the cloth; labels and connections remain explicit
targetEach link has a minimum height of the component target token

Content

SlotLengthVoice
jobOne governed nameSee, Shape, Govern, Run.

Good: “See · Shape · Govern · Run”

Bad: “Discover · Magic · Win”

Japanese: 見える化する・整える・守る・運用する

Icons and illustrations

None: this element uses no icon or illustration of its own.

Decisions and exceptions

Usage

84 uses across the built pages (measured by npm run site:system).

Tests

AspectValue
unittests/unit/site-system.test.ts: renders every do and don't example through the registry and checks the classes it owns
visualNot yet: there are no screenshot baselines; the Library page is checked for sideways scroll at 1440 px by tests/site/system.spec.ts
a11ytests/site/system.spec.ts: axe (0 serious or critical) on the element's Library page in light and dark
parityscripts/site/system/check.ts: Library examples are rendered by the same render function the site imports

Figma

not-yet: The Loom Site Figma library is the last stage of the plan; this element is not mapped yet.

Open in Storybook

Start with a conversation about your system.

We read your system, show you what we found, and agree with your team what to fix first.