gsxdsm
dff864e098
feat: harden permanent-agent heartbeat instructions (#2081)
## Summary
Hardens permanent-agent operating law while keeping the
heartbeat/executor split:
- **Critical Rules** in task-scoped and no-task heartbeat system prompts
(survive custom `HEARTBEAT.md`)
- Stronger default procedures: disposition checklist, scoped-wake,
blocked dedup, progress note style
- **Wake Delta multi-assign inventory** (ranked, cap 8,
coordination-only framing) + `checkout_conflict` regression test
- Standing instructions six-section template for blank custom create /
empty detail insert
- Onboarding interview guidance to prefer structured `instructionsText`
- Playbooks, CONCEPTS, agents.md accuracy; remove stale agent
gap-analysis doc
Plan:
`docs/plans/2026-07-12-001-feat-permanent-agent-heartbeat-instructions-plan.md`
## Test plan
- [x] `pnpm --filter @fusion/core exec vitest run
src/__tests__/assigned-task-ranking.test.ts`
- [x] `pnpm --filter @fusion/engine exec vitest run
src/__tests__/agent-heartbeat-procedures.test.ts
src/__tests__/heartbeat-executor.test.ts -u`
- [x] `pnpm --filter @fusion/dashboard exec vitest run
app/components/__tests__/standing-instructions-template.test.ts`
- [ ] CI gate green on PR
## Residual Review Findings
None recorded at open (inline review; no residual sink).
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Added ranked multi-assignment context to agent heartbeat wake-ups,
including task status, ownership, and lease details.
* Added standing-instructions templates for creating and editing
permanent agents.
* Improved onboarding guidance with a consistent six-section instruction
structure.
* Added clearer heartbeat handling for blocked tasks, no-task runs, and
checkout conflicts.
* **Documentation**
* Added permanent-agent heartbeat playbooks and expanded coordination
glossary entries.
* Updated documentation indexes and heartbeat behavior guidance.
* **Tests**
* Added coverage for task ranking, instruction templates, wake-up
context, and conflict handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2026-07-14 08:23:11 -07:00
..
2026-07-14 08:18:52 -07:00
2026-07-14 08:18:52 -07:00
2026-07-02 11:38:35 -07:00
2026-07-10 22:25:21 -07:00
2026-06-26 17:38:41 -07:00
2026-07-14 08:23:11 -07:00
2026-06-26 17:38:41 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 13:58:35 -07:00
2026-07-10 21:36:43 -07:00
2026-06-04 23:39:07 -07:00
2026-07-12 09:56:26 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 19:07:58 -07:00
2026-07-03 21:45:20 -07:00
2026-06-05 03:56:29 -07:00
2026-06-15 02:30:41 -07:00
2026-06-05 03:41:54 -07:00
2026-07-02 15:00:40 -07:00
2026-07-09 19:58:03 -07:00
2026-06-21 13:25:41 -07:00
2026-07-13 23:16:36 -07:00
2026-06-29 23:17:49 -07:00
2026-06-30 00:03:37 -07:00
2026-07-05 11:31:48 -07:00
2026-06-10 10:34:36 -07:00
2026-05-20 04:41:04 -07:00
2026-05-16 12:56:31 -07:00
2026-05-18 04:01:51 -07:00
2026-06-18 19:12:58 -07:00
2026-06-10 10:34:36 -07:00
2026-07-05 11:31:48 -07:00
2026-06-24 23:32:51 -07:00
2026-07-02 19:01:09 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 12:34:35 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 11:38:34 -07:00
2026-07-02 12:34:35 -07:00
2026-07-13 23:16:36 -07:00
2026-07-09 19:58:03 -07:00
2026-07-07 22:04:55 -07:00
2026-07-12 17:02:33 -07:00
2026-07-13 19:07:58 -07:00
2026-07-14 00:12:22 -07:00
2026-06-15 20:34:52 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 23:16:36 -07:00
2026-07-14 08:16:42 -07:00
2026-07-13 19:07:58 -07:00
2026-07-14 08:18:52 -07:00
2026-07-13 19:07:58 -07:00
2026-06-27 12:25:53 -07:00
2026-07-13 19:07:58 -07:00
2026-07-14 00:12:22 -07:00
2026-06-26 16:14:44 -07:00
2026-06-28 01:17:22 -07:00
2026-06-16 15:08:24 -07:00
2026-07-13 19:07:58 -07:00
2026-07-02 14:31:16 -07:00
2026-05-17 23:21:34 -07:00
2026-07-13 23:16:36 -07:00
2026-07-14 08:18:52 -07:00
2026-07-14 08:18:52 -07:00
2026-07-13 23:16:36 -07:00
2026-07-02 11:38:35 -07:00
2026-07-12 12:47:38 -07:00
2026-07-13 19:07:58 -07:00
2026-07-13 19:07:58 -07:00
2026-07-01 23:44:05 -07:00
2026-07-01 15:39:34 -07:00
2026-07-08 10:06:42 -07:00
2026-07-10 23:42:10 -07:00
2026-07-14 00:12:22 -07:00
2026-07-13 19:07:58 -07:00
2026-07-10 21:36:43 -07:00
2026-07-11 19:56:19 -07:00
2026-06-21 20:28:33 -07:00