schemeta/docs/phase5-execution-plan.md
2026-02-19 14:00:05 -05:00

1.7 KiB

Phase 5 Execution Plan

Milestone: Phase 5 - Layout Robustness and JSON Import UX Hardening

Goals

  1. Make drag/re-layout behavior measurable and regression-resistant.
  2. Improve JSON import/apply reliability with validation-first messaging.
  3. Ship richer fixture coverage and enforce readability budgets in CI.

Workstreams

  1. QA harness and metrics artifact

    • Extend tests/ui-regression-runner.js to capture:
      • initial compile metrics
      • post-drag metrics
      • post-drag auto-tidy metrics
      • dense fixture metrics
    • Emit machine-readable artifact:
      • output/playwright/ui-metrics-report.json
  2. Layout/readability quality budgets

    • Enforce thresholds in UI regression runner with env overrides:
      • UI_SAMPLE_MAX_*
      • UI_DRAG_MAX_*
      • UI_TIDY_MAX_*
      • UI_DENSE_MAX_*
    • Keep defaults tuned to current deterministic behavior.
  3. JSON import UX hardening

    • Validate with /analyze before applying/importing JSON.
    • Block apply/import when validation has errors.
    • Surface first warning/error and path for faster correction.
    • Keep deterministic change summary after successful apply.
  4. Fixture pack expansion

    • Add representative fixtures beyond the baseline audio example:
      • examples/dense-analog.json
      • examples/i2c-sensor-hub.json
      • examples/power-tree.json
    • Maintain warning-clean default sample (frontend/sample.schemeta.json).

Done Definition

  1. npm test passes.
  2. npm run test:ui passes with quality budgets.
  3. output/playwright/ui-metrics-report.json is generated on every UI run.
  4. Import/apply validation behavior is deterministic and user-visible.
  5. Phase 5 issues #24-#29 are closed and milestone is closed.