Files
DashBoard/openspec/specs/progressive-trace-ux/spec.md
egg 5b358d71c1 feat(query-tool): rewrite frontend with ECharts tree, multi-select, and modular composables
Replace the monolithic useQueryToolData composable and nested Vue component tree
with a modular architecture: useLotResolve, useLotLineage, useLotDetail, and
useEquipmentQuery. Introduce ECharts TreeChart (LR orthogonal layout) for lot
lineage visualization with multi-select support, subtree expansion, zoom/pan,
and serial number normalization. Add unified LineageEngine backend with split
descendant traversal and leaf serial number queries. Archive the query-tool-rewrite
openspec change and sync delta specs to main.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 15:25:00 +08:00

948 B

MODIFIED Requirements

Requirement: query-tool lineage tab SHALL load on-demand

The query-tool lineage tree SHALL auto-fire lineage API calls after lot resolution with concurrency-limited parallel requests and progressive rendering, while preserving on-demand expand/collapse for tree navigation.

Scenario: Auto-fire lineage after resolve

  • WHEN lot resolution completes with N resolved lots
  • THEN lineage SHALL be fetched via POST /api/trace/lineage for each lot automatically
  • THEN concurrent requests SHALL be limited to 3 at a time to respect rate limits (10/60s)
  • THEN response time SHALL be ≤3s per individual lot

Scenario: Multiple lots lineage results cached

  • WHEN lineage data has been fetched for multiple lots
  • THEN each lot's lineage data SHALL be preserved independently (not re-fetched)
  • WHEN a new resolve query is executed
  • THEN all cached lineage data SHALL be cleared