Density pilot plan
This plan restates the gated path in the PDS proposal as a practitioner checklist. Values remain intentionally undefined until the relevant audit gate is complete.
Gate 0: Recover the current system graph
- Export native Figma collections, modes, variable IDs, aliases, types, scopes, descriptions, code syntax, and publish status.
- Inventory variable and style bindings on pilot component nodes.
- Identify current code tokens, CSS variables, props, and hard-coded metrics.
- Record existing naming defects separately from density work.
Exit condition: the team can trace each pilot metric from foundation or literal through Figma and code consumption without inferring aliases from equal values.
Gate 1: Complete the component metric inventory
- Audit Button.
- Audit Text Field.
- Audit Select/Combobox.
- Audit Data Table/Grid.
- Audit List/Navigation item.
- Audit Card.
- Audit Dialog as a constrained or non-participating case.
- Classify every metric using the shared vocabulary.
Exit condition: participating, invariant, explicit-size, local, responsive, modality-driven, and constrained properties are documented for every pilot component.
Gate 2: Prototype the semantic contract
- Map
standardto current behavior where possible. - Select candidate compact aliases only from measured component needs and existing foundations.
- Document component clamps, exclusions, and target behavior.
- Prototype one shared density-semantic collection.
- Prototype component-specific collections for comparison.
- Compare inheritance clarity, author controls, synchronization, discoverability, migration, and code parity.
Exit condition: the decision record identifies a pilot structure and the evidence supporting it.
Gate 3: Build the representative pilot
- Use the same governed component identity and explicit size in both density contexts.
- Demonstrate customer-facing and information-heavy scenarios.
- Include local table/list control where proposed.
- Include the constrained/non-participating component.
- Do not combine density with light/dark into Cartesian-product modes.
Exit condition: the prototype demonstrates the intended inheritance, local-control, and non-participation boundaries.
Gate 4: Validate
- Measure visible information gained.
- Test task completion and error behavior.
- Test target overlap and pointer accuracy.
- Test keyboard and focus behavior.
- Test long content, truncation, and localization.
- Test 200% text resize and 400% zoom/reflow.
- Review touch/coarse-pointer behavior separately from visual compactness.
- Identify unresolved hard-coded dimensions.
Exit condition: evidence supports or rejects the proposed property mappings and constraints.
Gate 5: Establish Figma/code parity
- Define one semantic source for generated or mapped variables.
- Define code activation through an approved provider, attribute, class, or equivalent.
- Align explicit size vocabulary across Figma and code.
- Add visual-regression coverage for color × density × size × state.
- Publish Figma guidance for inherited mode discovery and sanctioned overrides.
- Record component/variant counts before and after the pilot.
Exit condition: the pilot can be maintained consistently in design and code.
Expansion decision
Only after the gates are complete should the team decide whether to:
- publish
standardandcompact - revise or reject the hybrid structure
- add broader component participation
- consider
spaciousorextraCompact - expose density as product configuration, user preference, automatic policy, or a combination