Roadmap closure pass for this round. CC.8 wires the auto-counter into the pre-commit hook so future roadmap-touching commits stay self-consistent. Flipped: 9.A.1 LineChart charts@0.1.0 9.A.2 BarChart (StackedBar deferred to 0.2.x) 9.A.3 AreaChart 9.A.4 Donut + Gauge 9.A.6 Token-driven theming verified 9.A.7 /showcase/charts/all + 5 deep dives 13.E.1 Brand-prompt generator generative-theme@0.1.0 13.E.2 WCAG contrast utilities + AA/AAA enforcement 13.E.3 /showcase/futurism/theme-studio (MAG.5) 13.F.1 Drag-resize tiles customizable-workspace@0.1.0 13.F.2 LayoutPersistence + reconcile() 13.F.3 /showcase/futurism/workspace (MAG.6) 13.G.1 ImageGenStream media-ui@0.1.0 13.G.2 AudioWaveform 13.G.4 VideoPlayer (PdfPreview 13.G.3 deferred to 0.2.x) 13.G.5 /showcase/futurism/multimodal (MAG.7) CC.3 axe-core gate (every showcase route covered by smoke.spec.ts) CC.8 counter wired into .husky/pre-commit Customer-magnet status: 6 of 8 LIVE \u2728 MAG.1 spatial-hero \u2728 MAG.3 trust-surfaces \u2728 MAG.5 theme-studio \u2728 MAG.6 workspace \u2728 MAG.7 multimodal \u2728 MAG.8 debug-overlay Remaining magnets: MAG.2 on-device-chat (Wave 13.A \u2014 needs WebLLM / Apple Intelligence) MAG.4 crdt-notes (Wave 13.B \u2014 needs Yjs + Automerge) Pre-commit hook (.husky/pre-commit): When docs/UI_ROADMAP_2026_V3_CROSS_REPO.md is staged, the counter rewrites the §11.2 progress block + per-wave headings and re-stages the file. Silent no-op when the roadmap wasn't touched. Honours HUSKY_ENABLED=false.
36 lines
1.3 KiB
Bash
Executable File
36 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env sh
|
|
|
|
# Ensure hooks run from repo root (we intentionally do not source Husky internals).
|
|
ROOT="$(git rev-parse --show-toplevel 2>/dev/null)"
|
|
if [ -n "$ROOT" ]; then
|
|
cd "$ROOT" || exit 1
|
|
fi
|
|
|
|
# Prefer local binaries (prettier/lint-staged/etc.)
|
|
export PATH="$PWD/node_modules/.bin:$PATH"
|
|
|
|
# Check if Husky is disabled via environment variable
|
|
if [ "$HUSKY_ENABLED" = "false" ]; then
|
|
echo "⚠️ Husky disabled via HUSKY_ENABLED=false"
|
|
echo "💡 To re-enable: unset HUSKY_ENABLED or export HUSKY_ENABLED=true"
|
|
exit 0
|
|
fi
|
|
|
|
echo "🔐 Scanning staged changes for secrets..."
|
|
bash scripts/secret-scan-staged.sh
|
|
|
|
echo "🐶 Running pre-commit hooks for common platform..."
|
|
|
|
# Run lint-staged on staged files
|
|
pnpm exec lint-staged
|
|
|
|
# CC.8 — Re-run the roadmap progress counter whenever the roadmap is staged.
|
|
# Updates the §11.2 progress block + per-wave headings + re-stages the file
|
|
# so the commit captures the refreshed counts. Silent no-op when the file
|
|
# wasn't touched.
|
|
if git diff --cached --name-only | grep -q "^docs/UI_ROADMAP_2026_V3_CROSS_REPO\.md$"; then
|
|
echo "📊 Refreshing roadmap progress counter..."
|
|
pnpm dlx tsx scripts/count-roadmap-progress.ts docs/UI_ROADMAP_2026_V3_CROSS_REPO.md \
|
|
&& git add docs/UI_ROADMAP_2026_V3_CROSS_REPO.md
|
|
fi
|