Validé sur PC Windows (DESKTOP-58D5CAC, 2560x1600) : - 8 clics résolus visuellement (1 anchor_template, 1 som_text_match, 6 som_vlm) - Score moyen 0.75, temps moyen 1.6s - Texte tapé correctement (bonjour, test word, date, email) - 0 retries, 2 actions non vérifiées (OK) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
168 lines
7.0 KiB
Markdown
168 lines
7.0 KiB
Markdown
# Implementation Plan
|
|
|
|
- [x] 1. Set up monitoring module structure
|
|
- Create `core/monitoring/` directory with `__init__.py`
|
|
- Define base interfaces and types
|
|
- _Requirements: 3.1, 4.1_
|
|
|
|
- [x] 2. Implement centralized logging system
|
|
- [x] 2.1 Create LogEntry dataclass and RPALogger class
|
|
- Implement structured log entries with timestamp, level, component, message
|
|
- Add workflow_id and node_id metadata support
|
|
- Implement info, warning, error, debug methods
|
|
- _Requirements: 4.1, 4.2_
|
|
- [ ]* 2.2 Write property test for log entry structure
|
|
- **Property 9: Log entry structure completeness**
|
|
- **Validates: Requirements 4.1**
|
|
- [ ]* 2.3 Write property test for workflow metadata inclusion
|
|
- **Property 10: Workflow log metadata inclusion**
|
|
- **Validates: Requirements 4.2**
|
|
- [x] 2.4 Implement get_logger factory function
|
|
- Create singleton pattern for component loggers
|
|
- Configure file and console handlers
|
|
- _Requirements: 4.1_
|
|
|
|
- [x] 3. Implement Prometheus metrics integration
|
|
- [x] 3.1 Create metrics module with Counter, Histogram, Gauge definitions
|
|
- Define workflow_executions_total counter
|
|
- Define workflow_duration_seconds histogram
|
|
- Define log_entries_total counter
|
|
- Define active_workflows and error_rate gauges
|
|
- _Requirements: 3.1, 3.2, 3.3, 3.4_
|
|
- [ ]* 3.2 Write property test for metrics format validity
|
|
- **Property 6: Prometheus metrics format validity**
|
|
- **Validates: Requirements 3.1**
|
|
- [x] 3.3 Integrate metrics with logger
|
|
- Increment log_entries_total on each log write
|
|
- _Requirements: 4.4_
|
|
- [ ]* 3.4 Write property test for log counter synchronization
|
|
- **Property 12: Log counter synchronization**
|
|
- **Validates: Requirements 4.4**
|
|
|
|
- [ ] 4. Checkpoint - Ensure all tests pass
|
|
- Ensure all tests pass, ask the user if questions arise.
|
|
|
|
- [x] 5. Implement Chain Manager
|
|
- [x] 5.1 Create WorkflowChain dataclass and ChainManager class
|
|
- Implement chain storage and retrieval
|
|
- Implement list_chains and get_chain methods
|
|
- _Requirements: 1.1_
|
|
- [ ]* 5.2 Write property test for chain listing completeness
|
|
- **Property 1: Chain listing completeness**
|
|
- **Validates: Requirements 1.1**
|
|
- [x] 5.3 Implement chain creation with workflow validation
|
|
- Implement create_chain method
|
|
- Implement validate_workflows_exist method
|
|
- _Requirements: 1.2_
|
|
- [ ]* 5.4 Write property test for chain workflow validation
|
|
- **Property 2: Chain workflow validation**
|
|
- **Validates: Requirements 1.2**
|
|
- [x] 5.5 Implement chain execution logic
|
|
- Execute workflows in sequence
|
|
- Stop on failure and report failure point
|
|
- _Requirements: 1.3, 1.4_
|
|
- [ ]* 5.6 Write property test for chain execution failure handling
|
|
- **Property 3: Chain execution stops on failure**
|
|
- **Validates: Requirements 1.4**
|
|
|
|
- [x] 6. Implement Trigger Manager
|
|
- [x] 6.1 Create Trigger dataclass and TriggerManager class
|
|
- Implement trigger storage and retrieval
|
|
- Implement list_triggers and get_trigger methods
|
|
- _Requirements: 2.1_
|
|
- [ ]* 6.2 Write property test for trigger listing completeness
|
|
- **Property 4: Trigger listing completeness**
|
|
- **Validates: Requirements 2.1**
|
|
- [x] 6.3 Implement trigger creation with config validation
|
|
- Implement create_trigger method
|
|
- Implement validate_config method for schedule triggers
|
|
- _Requirements: 2.2_
|
|
- [x] 6.4 Implement trigger enable/disable functionality
|
|
- Implement enable_trigger and disable_trigger methods
|
|
- Persist state changes to storage
|
|
- _Requirements: 2.3_
|
|
- [ ]* 6.5 Write property test for trigger state persistence
|
|
- **Property 5: Trigger state persistence**
|
|
- **Validates: Requirements 2.3**
|
|
|
|
- [ ] 7. Checkpoint - Ensure all tests pass
|
|
- Ensure all tests pass, ask the user if questions arise.
|
|
|
|
- [x] 8. Implement Log Exporter
|
|
- [x] 8.1 Create LogExporter class with ZIP generation
|
|
- Implement export_to_zip method
|
|
- Generate execution_logs.json, error_logs.json, metrics.json
|
|
- _Requirements: 5.1, 5.2_
|
|
- [ ]* 8.2 Write property test for ZIP archive validity
|
|
- **Property 13: ZIP archive validity**
|
|
- **Validates: Requirements 5.1**
|
|
- [ ]* 8.3 Write property test for ZIP archive contents
|
|
- **Property 14: ZIP archive contents**
|
|
- **Validates: Requirements 5.2**
|
|
- [x] 8.4 Implement date range filtering for log export
|
|
- Filter logs by start_time and end_time parameters
|
|
- _Requirements: 5.4_
|
|
- [ ]* 8.5 Write property test for date range filtering
|
|
- **Property 15: Date range filtering**
|
|
- **Validates: Requirements 5.4**
|
|
|
|
- [x] 9. Implement workflow metrics tracking
|
|
- [x] 9.1 Add workflow execution counter increment
|
|
- Increment counter on workflow start/end
|
|
- Include workflow_id and status labels
|
|
- _Requirements: 3.2_
|
|
- [ ]* 9.2 Write property test for counter increment
|
|
- **Property 7: Workflow execution counter increment**
|
|
- **Validates: Requirements 3.2**
|
|
- [x] 9.3 Add workflow duration histogram recording
|
|
- Record duration on workflow completion
|
|
- _Requirements: 3.3_
|
|
- [ ]* 9.4 Write property test for histogram recording
|
|
- **Property 8: Workflow duration histogram recording**
|
|
- **Validates: Requirements 3.3**
|
|
|
|
- [x] 10. Update web dashboard API
|
|
- [x] 10.1 Add chains API endpoints
|
|
- GET /api/chains - list all chains
|
|
- POST /api/chains - create new chain
|
|
- POST /api/chains/<id>/execute - execute chain
|
|
- _Requirements: 1.1, 1.2, 1.3_
|
|
- [x] 10.2 Add triggers API endpoints
|
|
- GET /api/triggers - list all triggers
|
|
- POST /api/triggers - create new trigger
|
|
- POST /api/triggers/<id>/toggle - enable/disable trigger
|
|
- _Requirements: 2.1, 2.2, 2.3_
|
|
- [x] 10.3 Add logs download endpoint
|
|
- GET /api/logs/download - download logs as ZIP
|
|
- Support date range query parameters
|
|
- _Requirements: 5.1, 5.3, 5.4_
|
|
- [x] 10.4 Add Prometheus metrics endpoint
|
|
- GET /metrics - return Prometheus-formatted metrics
|
|
- _Requirements: 3.1_
|
|
- [ ]* 10.5 Write property test for log filtering via API
|
|
- **Property 11: Log filtering correctness**
|
|
- **Validates: Requirements 4.3**
|
|
|
|
- [x] 11. Update admin interface HTML
|
|
- [x] 11.1 Add navigation links for new sections
|
|
- Add Chains, Triggers, Metrics links to navbar
|
|
- _Requirements: 6.1_
|
|
- [x] 11.2 Create chains section with dynamic loading
|
|
- Display chain cards with workflow sequence
|
|
- Add create and execute buttons
|
|
- _Requirements: 6.2_
|
|
- [x] 11.3 Create triggers section with dynamic loading
|
|
- Display trigger cards with type and status
|
|
- Add enable/disable toggle
|
|
- _Requirements: 6.2_
|
|
- [x] 11.4 Update logs section with download button
|
|
- Add download ZIP button
|
|
- Add refresh functionality
|
|
- _Requirements: 6.3_
|
|
- [x] 11.5 Create metrics section with real-time display
|
|
- Show key metrics with auto-refresh
|
|
- _Requirements: 6.4_
|
|
|
|
- [x] 12. Final Checkpoint - Ensure all tests pass
|
|
- Ensure all tests pass, ask the user if questions arise.
|