diff --git a/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/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 new file mode 100644 index 0000000..64a3bab --- /dev/null +++ b/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/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. diff --git a/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Validation_Report.md b/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/BUG-T18_Validation_Report.md new file mode 100644 index 0000000..eedd11c --- /dev/null +++ b/SPECS/ARCHIVE/BUG-T18_Error_Breakdown_widget_must_be_full_width_streatched/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. diff --git a/SPECS/ARCHIVE/INDEX.md b/SPECS/ARCHIVE/INDEX.md index ee05ebb..eb629e3 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 | @@ -241,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 @@ -437,3 +439,5 @@ | 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) | +| 2026-02-20 | BUG-T18 | Archived REVIEW_bug_t18_workplan_entry report | diff --git a/SPECS/ARCHIVE/_Historical/REVIEW_bug_t18_workplan_entry.md b/SPECS/ARCHIVE/_Historical/REVIEW_bug_t18_workplan_entry.md new file mode 100644 index 0000000..c3368aa --- /dev/null +++ b/SPECS/ARCHIVE/_Historical/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. diff --git a/SPECS/INPROGRESS/next.md b/SPECS/INPROGRESS/next.md index 50613c8..d82ec9e 100644 --- a/SPECS/INPROGRESS/next.md +++ b/SPECS/INPROGRESS/next.md @@ -2,6 +2,7 @@ ## 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) diff --git a/SPECS/Workplan.md b/SPECS/Workplan.md index aa25e05..3ac33c2 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.