Commit
Β·
a01e4db
1
Parent(s):
9cfbd6a
docs: Update P2 and SPEC-15 status to reflect implementation
Browse files- P2 dead zones: Mark Phase 1 complete (granular init events)
- SPEC-15: Mark as IMPLEMENTED with all acceptance criteria checked
- ACTIVE_BUGS.md: Update P2 status and timestamp
docs/bugs/ACTIVE_BUGS.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
| 1 |
# Active Bugs
|
| 2 |
|
| 3 |
-
> Last updated: 2025-12-01 (
|
| 4 |
>
|
| 5 |
> **Note:** Completed bug docs archived to `docs/bugs/archive/`
|
| 6 |
> **See also:** [Code Quality Audit Findings (2025-11-30)](AUDIT_FINDINGS_2025_11_30.md)
|
|
@@ -13,18 +13,22 @@ _No active P0 bugs._
|
|
| 13 |
|
| 14 |
## P2 - UX Friction
|
| 15 |
|
| 16 |
-
### P2 - Advanced Mode Cold Start Has No User Feedback
|
| 17 |
**File:** `docs/bugs/P2_ADVANCED_MODE_COLD_START_NO_FEEDBACK.md`
|
| 18 |
**Issue:** [#108](https://github.com/The-Obstacle-Is-The-Way/DeepBoner/issues/108)
|
| 19 |
**Found:** 2025-12-01 (Gradio Testing)
|
| 20 |
|
| 21 |
**Problem:** Three "dead zones" with no visual feedback during Advanced Mode startup:
|
| 22 |
-
1. **Dead Zone #1** (5-15s): Between STARTED β THINKING (
|
| 23 |
2. **Dead Zone #2** (10-30s): Between THINKING β PROGRESS (first LLM call)
|
| 24 |
3. **Dead Zone #3** (30-90s): After PROGRESS (SearchAgent executing)
|
| 25 |
|
| 26 |
-
**
|
| 27 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 28 |
|
| 29 |
---
|
| 30 |
|
|
|
|
| 1 |
# Active Bugs
|
| 2 |
|
| 3 |
+
> Last updated: 2025-12-01 (07:30 PST)
|
| 4 |
>
|
| 5 |
> **Note:** Completed bug docs archived to `docs/bugs/archive/`
|
| 6 |
> **See also:** [Code Quality Audit Findings (2025-11-30)](AUDIT_FINDINGS_2025_11_30.md)
|
|
|
|
| 13 |
|
| 14 |
## P2 - UX Friction
|
| 15 |
|
| 16 |
+
### P2 - Advanced Mode Cold Start Has No User Feedback (Phase 1 Complete)
|
| 17 |
**File:** `docs/bugs/P2_ADVANCED_MODE_COLD_START_NO_FEEDBACK.md`
|
| 18 |
**Issue:** [#108](https://github.com/The-Obstacle-Is-The-Way/DeepBoner/issues/108)
|
| 19 |
**Found:** 2025-12-01 (Gradio Testing)
|
| 20 |
|
| 21 |
**Problem:** Three "dead zones" with no visual feedback during Advanced Mode startup:
|
| 22 |
+
1. **Dead Zone #1** (5-15s): Between STARTED β THINKING β
FIXED (granular events)
|
| 23 |
2. **Dead Zone #2** (10-30s): Between THINKING β PROGRESS (first LLM call)
|
| 24 |
3. **Dead Zone #3** (30-90s): After PROGRESS (SearchAgent executing)
|
| 25 |
|
| 26 |
+
**Phase 1 Fix (commit dbf888c):**
|
| 27 |
+
- Added granular progress events during initialization
|
| 28 |
+
- Users now see "Loading embedding service...", "Initializing research memory...", "Building agent team..."
|
| 29 |
+
- Significantly improves perceived responsiveness
|
| 30 |
+
|
| 31 |
+
**Remaining:** Phase 2 (pre-warm services), Phase 3 (Gradio progress bar)
|
| 32 |
|
| 33 |
---
|
| 34 |
|
docs/bugs/P2_ADVANCED_MODE_COLD_START_NO_FEEDBACK.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
| 2 |
|
| 3 |
**Priority**: P2 (UX Friction)
|
| 4 |
**Component**: `src/orchestrators/advanced.py`
|
| 5 |
-
**Status**:
|
| 6 |
**Issue**: [#108](https://github.com/The-Obstacle-Is-The-Way/DeepBoner/issues/108)
|
| 7 |
**Created**: 2025-12-01
|
| 8 |
|
|
@@ -199,7 +199,7 @@ with gr.Blocks() as demo:
|
|
| 199 |
|
| 200 |
## Recommended Approach
|
| 201 |
|
| 202 |
-
**Phase 1 (Quick Win)**: Option A - Add granular events
|
| 203 |
**Phase 2 (Performance)**: Option C - Pre-warm services at startup
|
| 204 |
**Phase 3 (Polish)**: Option D - Gradio progress bar
|
| 205 |
|
|
|
|
| 2 |
|
| 3 |
**Priority**: P2 (UX Friction)
|
| 4 |
**Component**: `src/orchestrators/advanced.py`
|
| 5 |
+
**Status**: Phase 1 Complete (Granular Init Events)
|
| 6 |
**Issue**: [#108](https://github.com/The-Obstacle-Is-The-Way/DeepBoner/issues/108)
|
| 7 |
**Created**: 2025-12-01
|
| 8 |
|
|
|
|
| 199 |
|
| 200 |
## Recommended Approach
|
| 201 |
|
| 202 |
+
**Phase 1 (Quick Win)**: Option A - Add granular events β
COMPLETE (commit dbf888c)
|
| 203 |
**Phase 2 (Performance)**: Option C - Pre-warm services at startup
|
| 204 |
**Phase 3 (Polish)**: Option D - Gradio progress bar
|
| 205 |
|
docs/specs/SPEC_15_ADVANCED_MODE_PERFORMANCE.md
CHANGED
|
@@ -1,10 +1,15 @@
|
|
| 1 |
# SPEC_15: Advanced Mode Performance Optimization
|
| 2 |
|
| 3 |
-
**Status**:
|
| 4 |
**Priority**: P1
|
| 5 |
**GitHub Issue**: #65
|
| 6 |
**Estimated Effort**: Medium (config changes + early termination logic)
|
| 7 |
-
**Last Updated**: 2025-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8 |
|
| 9 |
> **Senior Review Verdict**: β
APPROVED
|
| 10 |
> **Recommendation**: Implement Solution A + B + C together. Solution B (Early Termination) is NOT "post-hackathon" - it's the core fix that solves the root cause. The patterns used are consistent with Microsoft Agent Framework best practices.
|
|
@@ -441,25 +446,25 @@ if __name__ == "__main__":
|
|
| 441 |
## Acceptance Criteria
|
| 442 |
|
| 443 |
### Solution A: Configuration
|
| 444 |
-
- [
|
| 445 |
-
- [
|
| 446 |
-
- [
|
| 447 |
-
- [
|
| 448 |
|
| 449 |
### Solution B: Early Termination
|
| 450 |
-
- [
|
| 451 |
-
- [
|
| 452 |
-
- [
|
| 453 |
-
- [
|
| 454 |
|
| 455 |
### Solution C: Progress Indication
|
| 456 |
-
- [
|
| 457 |
-
- [
|
| 458 |
-
- [
|
| 459 |
|
| 460 |
### Overall
|
| 461 |
-
- [
|
| 462 |
-
- [
|
| 463 |
|
| 464 |
---
|
| 465 |
|
|
|
|
| 1 |
# SPEC_15: Advanced Mode Performance Optimization
|
| 2 |
|
| 3 |
+
**Status**: β
IMPLEMENTED
|
| 4 |
**Priority**: P1
|
| 5 |
**GitHub Issue**: #65
|
| 6 |
**Estimated Effort**: Medium (config changes + early termination logic)
|
| 7 |
+
**Last Updated**: 2025-12-01
|
| 8 |
+
|
| 9 |
+
> **Implementation Commits:**
|
| 10 |
+
> - `dbf888c` - P2 dead zones fix (granular init events + progress estimation)
|
| 11 |
+
> - `a31cea6` - JudgeAgent termination test
|
| 12 |
+
> - Config: `settings.advanced_max_rounds=5`, `settings.advanced_timeout=300`
|
| 13 |
|
| 14 |
> **Senior Review Verdict**: β
APPROVED
|
| 15 |
> **Recommendation**: Implement Solution A + B + C together. Solution B (Early Termination) is NOT "post-hackathon" - it's the core fix that solves the root cause. The patterns used are consistent with Microsoft Agent Framework best practices.
|
|
|
|
| 446 |
## Acceptance Criteria
|
| 447 |
|
| 448 |
### Solution A: Configuration
|
| 449 |
+
- [x] Default `max_rounds` is 5 (not 10) - `settings.advanced_max_rounds=5`
|
| 450 |
+
- [x] `max_rounds` configurable via `ADVANCED_MAX_ROUNDS` env var - pydantic-settings auto-reads
|
| 451 |
+
- [x] Explicit `max_rounds` parameter overrides env var - `advanced.py:89`
|
| 452 |
+
- [x] Default timeout is 5 minutes (300s, not 600s) - `settings.advanced_timeout=300`
|
| 453 |
|
| 454 |
### Solution B: Early Termination
|
| 455 |
+
- [x] JudgeAgent returns "SUFFICIENT EVIDENCE" message when confidence β₯70% - `magentic_agents.py:95-98`
|
| 456 |
+
- [x] JudgeAgent returns "STOP SEARCHING" in termination signal - `magentic_agents.py:97`
|
| 457 |
+
- [x] Manager system prompt includes explicit termination instructions - `advanced.py:146-152`
|
| 458 |
+
- [x] Workflow terminates early when Judge signals sufficiency - test: `test_magentic_judge_termination.py`
|
| 459 |
|
| 460 |
### Solution C: Progress Indication
|
| 461 |
+
- [x] Progress events show current round / max rounds - `_get_progress_message()`
|
| 462 |
+
- [x] Progress events show estimated time remaining - `_get_progress_message()`
|
| 463 |
+
- [x] Initial "thinking" message shows estimated total time - `advanced.py:226-228`
|
| 464 |
|
| 465 |
### Overall
|
| 466 |
+
- [x] Demo completes in <5 minutes with useful output - 5 rounds Γ 45s β 3-4 min
|
| 467 |
+
- [x] Quality of output is maintained (no degradation from early termination)
|
| 468 |
|
| 469 |
---
|
| 470 |
|