From 69c489cb1825501734e01ba7a2b253385f2e60c2 Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:43:29 +0300 Subject: [PATCH 1/7] Branch for BUG-T18: error breakdown full width streatched --- SPECS/Workplan.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/SPECS/Workplan.md b/SPECS/Workplan.md index aa25e053..3ac33c2d 100644 --- a/SPECS/Workplan.md +++ b/SPECS/Workplan.md @@ -1594,6 +1594,42 @@ Temporarily increase dashboard refresh interval via config to reduce frequency o --- +### BUG-T18: Error Breakdown widget must be full width streatched +- **Type:** Bug / Web UI / Layout +- **Status:** 🔴 Open +- **Priority:** P2 +- **Discovered:** 2026-02-20 +- **Component:** Web UI Dashboard (`webui/static/index.html`, `webui/static/dashboard.css`) +- **Affected Clients:** All clients using Web UI dashboard +- **Affected Surface:** Error Breakdown widget + +#### Description +The "Error Breakdown" widget must be displayed as a full-width stretched widget in the dashboard layout. + +#### Symptoms +```text +Error Breakdown appears as a regular half-width card in the chart grid. +Expected: Error Breakdown spans the full row width. +``` + +#### Root Cause Analysis +Likely the widget container is using the default chart card class and is not marked to span all grid columns. + +#### Workaround +None. + +#### Resolution Path +- [ ] Reproduce on current dashboard layout and confirm non-full-width rendering +- [ ] Update chart container/layout rules so Error Breakdown spans full width +- [ ] Validate responsive behavior at desktop/tablet/mobile breakpoints +- [ ] Add regression coverage for full-width Error Breakdown layout + +#### Related Items +- **P10-T1** ✅ — Web UI dashboard chart layout baseline +- **BUG-T16** ✅ — Another chart layout responsiveness fix + +--- + ### Phase 10: Web UI Control & Audit Dashboard **Intent:** Create a web-based dashboard for real-time monitoring, control, and audit logging of the XcodeMCPWrapper. Provides visibility into MCP tool usage, performance metrics, and operational control. From 61be311ef7b828dfee7498ae40b4ae8ce1c9b2aa Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:43:37 +0300 Subject: [PATCH 2/7] Select task BUG-T18: Error Breakdown widget must be full width streatched --- SPECS/INPROGRESS/next.md | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/SPECS/INPROGRESS/next.md b/SPECS/INPROGRESS/next.md index 50613c8b..396146f1 100644 --- a/SPECS/INPROGRESS/next.md +++ b/SPECS/INPROGRESS/next.md @@ -1,4 +1,16 @@ -# No Active Task +# Current Task + +- **Task ID:** BUG-T18 +- **Task Name:** Error Breakdown widget must be full width streatched +- **Status:** In Progress +- **Priority:** P2 +- **Started:** 2026-02-20 + +## Description +Add the bug entry to `SPECS/Workplan.md` for the Error Breakdown widget full-width stretch requirement. + +## Planned Deliverables +- Workplan bug entry created with description, resolution path, and related items. ## Recently Archived From cb300bc0abcb8b12eee5559e14f27de872c9d033 Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:43:45 +0300 Subject: [PATCH 3/7] Plan task BUG-T18: Error Breakdown widget must be full width streatched --- ...wn_widget_must_be_full_width_streatched.md | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md diff --git a/SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md b/SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md new file mode 100644 index 00000000..64a3bab2 --- /dev/null +++ b/SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md @@ -0,0 +1,31 @@ +# PRD — BUG-T18 Error Breakdown widget must be full width streatched + +## Context +The user requested adding a tracked bug item to the workplan for a Web UI layout issue where the Error Breakdown widget should be full-width stretched. + +## Objective +Track the issue in `SPECS/Workplan.md` with a complete bug entry that can be selected and implemented in a future execution task. + +## Scope +- Add one new bug entry: `BUG-T18`. +- Include type, status, priority, component, description, symptoms, root-cause hypothesis, resolution path, and related items. + +## Out of Scope +- Implementing UI code changes. +- Updating tests. +- Closing the bug. + +## Deliverables +- Updated `SPECS/Workplan.md` with `BUG-T18` entry. + +## Acceptance Criteria +- `BUG-T18` entry exists in `SPECS/Workplan.md`. +- Entry status is open. +- Entry clearly states full-width stretch requirement for Error Breakdown widget. +- Entry includes actionable checklist in Resolution Path. + +## Dependencies +- None. + +## Risks +- Typo in task wording is preserved intentionally to match user-provided bug title. From 084bfd58b32a2b305de3a4e963dcec7715b9b9aa Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:44:05 +0300 Subject: [PATCH 4/7] Implement BUG-T18: add workplan bug entry and validate quality gates --- SPECS/INPROGRESS/BUG-T18_Validation_Report.md | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 SPECS/INPROGRESS/BUG-T18_Validation_Report.md diff --git a/SPECS/INPROGRESS/BUG-T18_Validation_Report.md b/SPECS/INPROGRESS/BUG-T18_Validation_Report.md new file mode 100644 index 00000000..eedd11c0 --- /dev/null +++ b/SPECS/INPROGRESS/BUG-T18_Validation_Report.md @@ -0,0 +1,25 @@ +# Validation Report — BUG-T18 + +## Task +- **ID:** BUG-T18 +- **Name:** Error Breakdown widget must be full width streatched +- **Date:** 2026-02-20 +- **Verdict:** PASS + +## Scope Executed +- Added a new bug entry in `SPECS/Workplan.md` to track the Error Breakdown full-width requirement. + +## Acceptance Criteria Check +- [x] `BUG-T18` entry exists in `SPECS/Workplan.md` +- [x] Entry status is open +- [x] Entry explicitly states full-width stretch requirement +- [x] Entry includes actionable Resolution Path checklist + +## Quality Gates +- `PYTHONPATH=src pytest` → PASS (`629 passed, 5 skipped`) +- `ruff check src/` → PASS +- `mypy src/` → PASS +- `PYTHONPATH=src pytest --cov` → PASS (coverage `91.33%`, required `>=90%`) + +## Notes +- This task is documentation/workplan tracking only; no runtime code changes were introduced. From c21bb6ec064a149fc0d0e790beb80f674012e5cf Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:44:44 +0300 Subject: [PATCH 5/7] Archive task BUG-T18: Error Breakdown widget must be full width streatched (PASS) --- ...akdown_widget_must_be_full_width_streatched.md | 0 .../BUG-T18_Validation_Report.md | 0 SPECS/ARCHIVE/INDEX.md | 4 +++- SPECS/INPROGRESS/next.md | 15 ++------------- 4 files changed, 5 insertions(+), 14 deletions(-) rename SPECS/{INPROGRESS => ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched}/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md (100%) rename SPECS/{INPROGRESS => ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched}/BUG-T18_Validation_Report.md (100%) diff --git a/SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md b/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md similarity index 100% rename from SPECS/INPROGRESS/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md rename to SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched.md diff --git a/SPECS/INPROGRESS/BUG-T18_Validation_Report.md b/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Validation_Report.md similarity index 100% rename from SPECS/INPROGRESS/BUG-T18_Validation_Report.md rename to SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Validation_Report.md diff --git a/SPECS/ARCHIVE/INDEX.md b/SPECS/ARCHIVE/INDEX.md index ee05ebb1..1fb4e6da 100644 --- a/SPECS/ARCHIVE/INDEX.md +++ b/SPECS/ARCHIVE/INDEX.md @@ -1,6 +1,6 @@ # mcpbridge-wrapper Tasks Archive -**Last Updated:** 2026-02-20 (BUG-T16_Tool_Distribution_Pie_widget_is_cropped_at_medium_widths) +**Last Updated:** 2026-02-20 (BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched) ## Archived Tasks @@ -93,6 +93,7 @@ | BUG-T8 | [BUG-T8_Audit_Log_Cross_Process_Visibility/](BUG-T8_Audit_Log_Cross_Process_Visibility/) | 2026-02-15 | PASS | | BUG-T15 | [BUG-T15_WebUI_Port_Config_Investigation/](BUG-T15_WebUI_Port_Config_Investigation/) | 2026-02-20 | PASS | | BUG-T16 | [BUG-T16_Tool_Distribution_Pie_widget_is_cropped_at_medium_widths/](BUG-T16_Tool_Distribution_Pie_widget_is_cropped_at_medium_widths/) | 2026-02-20 | PASS | +| BUG-T18 | [BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/](BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/) | 2026-02-20 | PASS | | P11-T2 | [P11-T2_Add_Session_Timeline_View/](P11-T2_Add_Session_Timeline_View/) | 2026-02-15 | PASS | | P11-T3 | [P11-T3_Add_Dashboard_Theme_Toggle/](P11-T3_Add_Dashboard_Theme_Toggle/) | 2026-02-15 | PASS | | P11-T4 | [P11-T4_Add_Keyboard_Shortcuts_Command_Palette/](P11-T4_Add_Keyboard_Shortcuts_Command_Palette/) | 2026-02-15 | PASS | @@ -437,3 +438,4 @@ | 2026-02-20 | BUG-T15 | Archived REVIEW_bug_t15_webui_port_config report | | 2026-02-20 | BUG-T16 | Archived Tool_Distribution_Pie_widget_is_cropped_at_medium_widths (PASS) | | 2026-02-20 | BUG-T16 | Archived REVIEW_bug_t16_pie_responsive report | +| 2026-02-20 | BUG-T18 | Archived Error_Breakdown_widget_must_be_full_width_streatched (PASS) | diff --git a/SPECS/INPROGRESS/next.md b/SPECS/INPROGRESS/next.md index 396146f1..d82ec9e0 100644 --- a/SPECS/INPROGRESS/next.md +++ b/SPECS/INPROGRESS/next.md @@ -1,19 +1,8 @@ -# Current Task - -- **Task ID:** BUG-T18 -- **Task Name:** Error Breakdown widget must be full width streatched -- **Status:** In Progress -- **Priority:** P2 -- **Started:** 2026-02-20 - -## Description -Add the bug entry to `SPECS/Workplan.md` for the Error Breakdown widget full-width stretch requirement. - -## Planned Deliverables -- Workplan bug entry created with description, resolution path, and related items. +# No Active Task ## Recently Archived +- **BUG-T18** — Error Breakdown widget must be full width streatched (2026-02-20, PASS) - **BUG-T16** — Tool Distribution (Pie) widget is cropped at medium widths (2026-02-20, PASS) - **BUG-T15** — Web UI fails to come up in MCP client runs when `--web-ui-port` and `--web-ui-config` are combined (2026-02-20, PASS) From 141b5e79c53e7882f4e319d0450277fc51e8b1d3 Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:44:52 +0300 Subject: [PATCH 6/7] Review BUG-T18: bug t18 workplan entry --- .../REVIEW_bug_t18_workplan_entry.md | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md diff --git a/SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md b/SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md new file mode 100644 index 00000000..c3368aa5 --- /dev/null +++ b/SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md @@ -0,0 +1,29 @@ +## REVIEW REPORT — BUG-T18 Workplan Entry + +**Scope:** origin/main..HEAD +**Files:** 4 + +### Summary Verdict +- [x] Approve +- [ ] Approve with comments +- [ ] Request changes +- [ ] Block + +### Critical Issues +- None. + +### Secondary Issues +- None. + +### Architectural Notes +- The change is documentation-only and correctly keeps implementation work deferred to a future bug-fix task. + +### Tests +- Quality gates were executed during EXECUTE: + - `PYTHONPATH=src pytest` + - `ruff check src/` + - `mypy src/` + - `PYTHONPATH=src pytest --cov` (91.33%, meets >=90%) + +### Next Steps +- FOLLOW-UP is skipped because no actionable review findings were identified. From 9199ea23c4d66ee852843735d566a794f6a647a1 Mon Sep 17 00:00:00 2001 From: Egor Merkushev Date: Fri, 20 Feb 2026 23:45:10 +0300 Subject: [PATCH 7/7] Archive REVIEW_bug_t18_workplan_entry report --- SPECS/ARCHIVE/INDEX.md | 2 ++ .../_Historical}/REVIEW_bug_t18_workplan_entry.md | 0 2 files changed, 2 insertions(+) rename SPECS/{INPROGRESS => ARCHIVE/_Historical}/REVIEW_bug_t18_workplan_entry.md (100%) diff --git a/SPECS/ARCHIVE/INDEX.md b/SPECS/ARCHIVE/INDEX.md index 1fb4e6da..eb629e30 100644 --- a/SPECS/ARCHIVE/INDEX.md +++ b/SPECS/ARCHIVE/INDEX.md @@ -242,6 +242,7 @@ | [REVIEW_FU-P14-T5-1_macos_ci_socket_path.md](_Historical/REVIEW_FU-P14-T5-1_macos_ci_socket_path.md) | Review report for FU-P14-T5-1 | | [REVIEW_bug_t15_webui_port_config.md](_Historical/REVIEW_bug_t15_webui_port_config.md) | Review report for BUG-T15 | | [REVIEW_bug_t16_pie_responsive.md](_Historical/REVIEW_bug_t16_pie_responsive.md) | Review report for BUG-T16 | +| [REVIEW_bug_t18_workplan_entry.md](_Historical/REVIEW_bug_t18_workplan_entry.md) | Review report for BUG-T18 | ## Archive Log @@ -439,3 +440,4 @@ | 2026-02-20 | BUG-T16 | Archived Tool_Distribution_Pie_widget_is_cropped_at_medium_widths (PASS) | | 2026-02-20 | BUG-T16 | Archived REVIEW_bug_t16_pie_responsive report | | 2026-02-20 | BUG-T18 | Archived Error_Breakdown_widget_must_be_full_width_streatched (PASS) | +| 2026-02-20 | BUG-T18 | Archived REVIEW_bug_t18_workplan_entry report | diff --git a/SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md b/SPECS/ARCHIVE/_Historical/REVIEW_bug_t18_workplan_entry.md similarity index 100% rename from SPECS/INPROGRESS/REVIEW_bug_t18_workplan_entry.md rename to SPECS/ARCHIVE/_Historical/REVIEW_bug_t18_workplan_entry.md