Trace pipeline pool isolation: - Switch event_fetcher and lineage_engine to read_sql_df_slow (non-pooled) - Reduce EVENT_FETCHER_MAX_WORKERS 4→2, TRACE_EVENTS_MAX_WORKERS 4→2 - Add 60s timeout per batch query, cache skip for CID>10K - Early del raw_domain_results + gc.collect() for large queries - Increase DB_SLOW_MAX_CONCURRENT: base 3→5, dev 2→3, prod 3→5 Test fixes (51 pre-existing failures → 0): - reject_history: WORKFLOW CSV header, strict bool validation, pareto mock path - portal shell: remove non-existent /tmtt-defect route from tests - conftest: add --run-stress option to skip stress/load tests by default - migration tests: skipif baseline directory missing - performance test: update Vite asset assertion - wip hold: add firstname/waferdesc mock params - template integration: add /reject-history canonical route Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
150 lines
3.0 KiB
JSON
150 lines
3.0 KiB
JSON
{
|
|
"pages": [
|
|
{
|
|
"route": "/",
|
|
"name": "首頁",
|
|
"status": "released"
|
|
},
|
|
{
|
|
"route": "/wip-overview",
|
|
"name": "WIP 即時概況",
|
|
"status": "released",
|
|
"drawer_id": "reports",
|
|
"order": 1
|
|
},
|
|
{
|
|
"route": "/hold-overview",
|
|
"name": "Hold 即時概況",
|
|
"status": "released",
|
|
"drawer_id": "reports",
|
|
"order": 2
|
|
},
|
|
{
|
|
"route": "/hold-history",
|
|
"name": "Hold 歷史績效",
|
|
"status": "released",
|
|
"drawer_id": "drawer-2",
|
|
"order": 3
|
|
},
|
|
{
|
|
"route": "/reject-history",
|
|
"name": "報廢歷史查詢",
|
|
"status": "released",
|
|
"drawer_id": "drawer-2",
|
|
"order": 4
|
|
},
|
|
{
|
|
"route": "/wip-detail",
|
|
"name": "WIP 明細",
|
|
"status": "released"
|
|
},
|
|
{
|
|
"route": "/hold-detail",
|
|
"name": "Hold 明細",
|
|
"status": "released"
|
|
},
|
|
{
|
|
"route": "/resource-history",
|
|
"name": "設備歷史績效",
|
|
"status": "released",
|
|
"drawer_id": "drawer-2",
|
|
"order": 5
|
|
},
|
|
{
|
|
"route": "/qc-gate",
|
|
"name": "QC-GATE 狀態",
|
|
"status": "released",
|
|
"drawer_id": "reports",
|
|
"order": 6
|
|
},
|
|
{
|
|
"route": "/tables",
|
|
"name": "表格總覽",
|
|
"status": "dev",
|
|
"drawer_id": "dev-tools",
|
|
"order": 1
|
|
},
|
|
{
|
|
"route": "/resource",
|
|
"name": "設備即時概況",
|
|
"status": "released",
|
|
"drawer_id": "reports",
|
|
"order": 4
|
|
},
|
|
{
|
|
"route": "/excel-query",
|
|
"name": "Excel 批次查詢",
|
|
"status": "dev",
|
|
"drawer_id": "dev-tools",
|
|
"order": 2
|
|
},
|
|
{
|
|
"route": "/job-query",
|
|
"name": "設備維修查詢",
|
|
"status": "released",
|
|
"drawer_id": "drawer",
|
|
"order": 1
|
|
},
|
|
{
|
|
"route": "/query-tool",
|
|
"name": "批次追蹤工具",
|
|
"status": "released",
|
|
"drawer_id": "drawer",
|
|
"order": 2
|
|
},
|
|
{
|
|
"route": "/mid-section-defect",
|
|
"name": "製程不良追溯分析",
|
|
"status": "released",
|
|
"drawer_id": "drawer",
|
|
"order": 3
|
|
},
|
|
{
|
|
"route": "/admin/pages",
|
|
"name": "頁面管理",
|
|
"status": "released",
|
|
"drawer_id": "dev-tools",
|
|
"order": 1
|
|
},
|
|
{
|
|
"route": "/admin/performance",
|
|
"name": "效能監控",
|
|
"status": "dev",
|
|
"drawer_id": "dev-tools",
|
|
"order": 2
|
|
}
|
|
],
|
|
"api_public": true,
|
|
"db_scan": {
|
|
"schema": "DWH",
|
|
"updated_at": "2026-01-29 13:49:59",
|
|
"object_count": 19,
|
|
"source": "tools/query_table_schema.py"
|
|
},
|
|
"drawers": [
|
|
{
|
|
"id": "reports",
|
|
"name": "即時報表",
|
|
"order": 1,
|
|
"admin_only": false
|
|
},
|
|
{
|
|
"id": "dev-tools",
|
|
"name": "開發工具",
|
|
"order": 4,
|
|
"admin_only": true
|
|
},
|
|
{
|
|
"id": "drawer",
|
|
"name": "查詢工具",
|
|
"order": 3,
|
|
"admin_only": false
|
|
},
|
|
{
|
|
"id": "drawer-2",
|
|
"name": "歷史報表",
|
|
"order": 2,
|
|
"admin_only": false
|
|
}
|
|
]
|
|
} |