mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
feat: workflow enforcement, RAG upgrade, and permission fixes
Task Management:
- Add cancellation safeguards: require valid reason category (duplicate,
obsolete, blocked_permanently, reassigned, scope_change, stakeholder_request)
- Protect active work from arbitrary cancellation - must pause/block first
- Auto-notify PM when task is blocked with ACTION REQUIRED message
- PM task scan now shows blocked tasks needing their attention
Permissions:
- Add VIEW_STATS to Developer, QA, Documenter, Head Marketing KB permissions
- Aligns code with docs/workflows/PERMISSIONS.md specification
RAG/Embeddings:
- Upgrade embedding model from all-MiniLM-L6-v2 to nomic-embed-text-v1.5
- 768 dimensions with 8K token context (vs 512 tokens)
- Add per-index chunk sizes: docs=1536, journals=1024, others=512
- Switch to fixed chunking (semantic chunking loads separate MiniLM model)
- Add einops dependency required by nomic model
This commit is contained in:
@@ -5,10 +5,57 @@
|
||||
| Aspect | Communication (Messages) | Notifications |
|
||||
|--------|--------------------------|---------------|
|
||||
| Nature | Constant stream | Formal signals |
|
||||
| Who can send | Everyone (in allowed channels) | PM/Board/Auditor only |
|
||||
| Who can send | Everyone (in allowed channels) | PM/Board/System |
|
||||
| Acknowledgment | Not required | Often required |
|
||||
| Purpose | Ambient awareness, discussion | Demand attention |
|
||||
| Tool | `roboco_message_send` | `roboco_notify_send` |
|
||||
| Tool | `roboco_message_send` | `roboco_notify_send` / auto |
|
||||
| Delivery | Stored in session | Redis Streams (real-time) |
|
||||
|
||||
---
|
||||
|
||||
## Notification Delivery System
|
||||
|
||||
Notifications are delivered in **real-time** via Redis Streams:
|
||||
|
||||
```
|
||||
Agent Action → Create Notification → Redis Streams → Connected Agents
|
||||
→ WebSocket Bridge → UI
|
||||
```
|
||||
|
||||
### Automatic Notifications
|
||||
|
||||
The system sends notifications automatically for these events:
|
||||
|
||||
| Event | Recipients | Type |
|
||||
|-------|------------|------|
|
||||
| Task assigned | Assigned agent | `task_assignment` |
|
||||
| @mention in message | Mentioned agents | `mention` |
|
||||
| Task unblocked | Assigned agent | `task_unblocked` |
|
||||
| Docs complete | Responsible PM | `task_assignment` |
|
||||
| Submit for PM review | Responsible PM | `task_assignment` |
|
||||
| Substitute (QA/Doc) | Responsible PM | `task_assignment` |
|
||||
| Escalation | Target PM | `escalation` |
|
||||
|
||||
### Checking Notifications
|
||||
|
||||
```python
|
||||
roboco_notify_list() # All pending notifications
|
||||
roboco_notify_list(unacked_only=True) # Only unacknowledged
|
||||
roboco_notify_ack(notification_id) # Acknowledge
|
||||
```
|
||||
|
||||
### Mentions Create Notifications
|
||||
|
||||
When you @mention someone in a message, they receive a `mention` notification:
|
||||
|
||||
```python
|
||||
roboco_message_send({
|
||||
"channel": "backend-cell",
|
||||
"content": "@be-pm Need your input on this approach",
|
||||
"task_id": "uuid-here",
|
||||
"mentions": ["be-pm"] # Creates notification for be-pm
|
||||
})
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
|
||||
Reference in New Issue
Block a user