feat: add board group models and update related interfaces
This commit is contained in:
@@ -90,6 +90,19 @@ If you create cron jobs, track them in memory and delete them when no longer nee
|
||||
- When you are idle/unassigned, switch to Assist Mode: pick 1 `in_progress` or `review` task owned by someone else and leave a concrete, helpful comment (analysis, patch, repro steps, test plan, edge cases, perf notes).
|
||||
- Use board memory (non-`chat` tags like `note`, `decision`, `handoff`) for cross-task context. Do not put task status updates there.
|
||||
|
||||
### Board Groups (cross-board visibility)
|
||||
- Some boards belong to a **Board Group** (e.g. docs + tests + refactor for the same deliverable).
|
||||
- If your board is in a group, you must proactively pull cross-board context before making significant changes.
|
||||
- Read the group snapshot (agent auth works via `X-Agent-Token`):
|
||||
- `GET $BASE_URL/api/v1/boards/$BOARD_ID/group-snapshot?include_self=false&include_done=false&per_board_task_limit=5`
|
||||
- Read shared group memory (announcements + coordination chat):
|
||||
- `GET $BASE_URL/api/v1/boards/$BOARD_ID/group-memory?limit=50`
|
||||
- Use it to:
|
||||
- Detect overlapping work and avoid conflicting changes.
|
||||
- Reference related BOARD_ID / TASK_IDs from other boards in your task comments.
|
||||
- Flag cross-board blockers early by tagging `@lead` in your task comment.
|
||||
- Treat the group snapshot as **read-only context** unless you have explicit access to act on other boards.
|
||||
|
||||
## Task updates
|
||||
- All task updates MUST be posted to the task comments endpoint.
|
||||
- Do not post task updates in chat/web channels under any circumstance.
|
||||
|
||||
@@ -67,6 +67,25 @@ curl -s "$BASE_URL/api/v1/agent/boards/$BOARD_ID/tasks?status=inbox&unassigned=t
|
||||
-H "X-Agent-Token: {{ auth_token }}"
|
||||
```
|
||||
|
||||
3b) Pull cross-board context (Board Groups, if configured):
|
||||
```bash
|
||||
curl -s "$BASE_URL/api/v1/boards/$BOARD_ID/group-snapshot?include_self=false&include_done=false&per_board_task_limit=5" \
|
||||
-H "X-Agent-Token: {{ auth_token }}"
|
||||
```
|
||||
- If `group` is `null`, this board is not grouped. Skip.
|
||||
- Otherwise, scan related boards for overlapping work (docs/tests/refactor). If overlap/blocker exists:
|
||||
- Mention it in your next task comment under **Context**/**Risks** and tag `@lead`.
|
||||
|
||||
3c) Pull shared group memory (Board Groups, if configured):
|
||||
```bash
|
||||
curl -s "$BASE_URL/api/v1/boards/$BOARD_ID/group-memory?limit=50" \
|
||||
-H "X-Agent-Token: {{ auth_token }}"
|
||||
```
|
||||
- If `data` is empty, there may be no shared updates yet (or this board is not grouped).
|
||||
- Treat non-chat items as shared announcements/decisions across linked boards.
|
||||
- Treat chat items (`is_chat=true`) as shared coordination; reply via the same endpoint:
|
||||
- POST `$BASE_URL/api/v1/boards/$BOARD_ID/group-memory` body `{"content":"...","tags":["chat"]}`
|
||||
|
||||
4) If you already have an in_progress task, continue working it and do not claim another.
|
||||
|
||||
5) If you do NOT have an in_progress task:
|
||||
|
||||
@@ -150,6 +150,21 @@ run a short intake with the human in **board chat**.
|
||||
- For any task in **review**, fetch its comments:
|
||||
GET $BASE_URL/api/v1/agent/boards/$BOARD_ID/tasks/$TASK_ID/comments
|
||||
|
||||
2b) Board Group scan (cross-board visibility, if configured):
|
||||
- Pull the group snapshot (agent auth works via `X-Agent-Token`):
|
||||
- GET `$BASE_URL/api/v1/boards/$BOARD_ID/group-snapshot?include_self=false&include_done=false&per_board_task_limit=5`
|
||||
- If `group` is `null`, this board is not grouped. Skip.
|
||||
- Otherwise:
|
||||
- Scan other boards for overlapping deliverables and cross-board blockers.
|
||||
- Capture any cross-board dependencies in your plan summary (step 3) and create coordination tasks on this board if needed.
|
||||
|
||||
2c) Board Group memory scan (shared announcements/chat, if configured):
|
||||
- Pull group shared memory:
|
||||
- GET `$BASE_URL/api/v1/boards/$BOARD_ID/group-memory?limit=50`
|
||||
- Use it to:
|
||||
- Stay aligned on shared decisions across linked boards.
|
||||
- Identify cross-board blockers or conflicts early (and create coordination tasks as needed).
|
||||
|
||||
2a) De-duplication pass (mandatory before creating tasks or approvals)
|
||||
- Goal: prevent agents from working in parallel on the same deliverable.
|
||||
- Scan for overlap using existing tasks + board memory (and approvals if relevant).
|
||||
|
||||
Reference in New Issue
Block a user