From c3d58d7111269cda5c52639ccbe78828e807476d Mon Sep 17 00:00:00 2001 From: timmy Date: Fri, 14 Aug 2026 08:28:49 +0000 Subject: [PATCH] feat: fit search batches to Today capacity (Closes #811) --- frontend/dashboard.css | 8 ++++ frontend/dashboard.js | 2 +- frontend/index.html | 10 ++++ frontend/search-batch-plan.js | 61 +++++++++++++++++++++++- tests/test_search_batch_plan.py | 82 ++++++++++++++++++++++++++++++++- 5 files changed, 159 insertions(+), 4 deletions(-) diff --git a/frontend/dashboard.css b/frontend/dashboard.css index 021f1ac..5aea306 100644 --- a/frontend/dashboard.css +++ b/frontend/dashboard.css @@ -134,6 +134,14 @@ textarea { resize: vertical; min-height: 120px; } .search-batch-actions span { grid-column:1 / -1; } .search-batch-actions button, .search-batch-recovery { min-height:44px; } .search-batch-recovery { width:100%; font-weight:700; } +.search-batch-estimate-review { display:grid; gap:12px; padding:12px; border:1px solid #2a496e; border-radius:12px; background:#101f36; } +.search-batch-estimate-review[hidden] { display:none; } +.search-batch-estimate-review > div:first-child, #search-batch-estimate-list { display:grid; gap:8px; } +.search-batch-estimate-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(92px,auto); gap:10px; align-items:center; overflow-wrap:anywhere; } +.search-batch-estimate-row label { display:flex; align-items:center; gap:6px; } +.search-batch-estimate-review input { min-height:44px; width:76px; } +.search-batch-estimate-actions { position:sticky; bottom:0; display:grid; grid-template-columns:1fr 1fr; gap:8px; padding-bottom:env(safe-area-inset-bottom); background:#101f36; } +.search-batch-estimate-actions button { min-height:44px; } .cmd-group { padding:8px 10px 3px; color:#60a5fa; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; } #whiteboard-modal, #markdown-modal { position: fixed; inset: 0; background: rgba(5,12,21,.55); display: none; align-items: center; justify-content: center; z-index: 40; backdrop-filter: blur(6px); } diff --git a/frontend/dashboard.js b/frontend/dashboard.js index 3b79e5f..4199868 100644 --- a/frontend/dashboard.js +++ b/frontend/dashboard.js @@ -4424,7 +4424,7 @@ }); searchBatchPlanning = mountSearchBatchPlanning( document, createBatchFindWork, todayWork, ()=>planningOwnerLogin, fetchReviewJson, - searchPreviewPath, queueToday, acceptClaimedIssue, index=>commandItems[index]?.result, + searchPreviewPath, queueToday, todaySync, acceptClaimedIssue, index=>commandItems[index]?.result, ()=>renderCommands(qs('#cmd-input').value), escapeHtml, escAttr ); searchDefer = createSearchDefer({ diff --git a/frontend/index.html b/frontend/index.html index dbdcff6..ac1ee35 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -460,6 +460,16 @@ +