docs: TODO update — 1-list model done, BUG-6 fixed, FEAT-3 backlog
Mark 1-list turn order model DONE (architecture section). BUG-6 fixed structurally. BUG-5 reaffirmed (held under 1-list). Pipeline updated. Add FEAT-3 backlog: initiative first-class entry (add+edit field).
This commit is contained in:
@@ -14,6 +14,23 @@ REWORK_PLAN.md.
|
|||||||
format for new entries.
|
format for new entries.
|
||||||
- Related: BUG-7 (reorder no undo).
|
- Related: BUG-7 (reorder no undo).
|
||||||
|
|
||||||
|
## Architecture: 1-list turn order model (DONE)
|
||||||
|
- Single source: turnOrderIds === participants.map(id). No re-sort after
|
||||||
|
startEncounter. nextTurn skips inactive (predicate), inactive stay in slot.
|
||||||
|
- Drag (reorder) overrides initiative — cross-init allowed, DM choice.
|
||||||
|
- startEncounter sorts ALL participants by init once, then frozen.
|
||||||
|
- addParticipant splices by init pos. remove/toggle/reorder sync list.
|
||||||
|
- Display renders participants[] directly (no sortParticipantsByInitiative).
|
||||||
|
- BUG-6 (reorder divergence) fixed structurally. BUG-5 (rotation) held
|
||||||
|
(500 rounds CLEAN).
|
||||||
|
|
||||||
|
### FEAT-3: initiative first-class entry (add + edit)
|
||||||
|
- Current: only initMod at char-build. No initiative field at add-participant
|
||||||
|
or edit. 3-step to set after other steps.
|
||||||
|
- Need: initiative field at add-char, add-monster, AND edit participant.
|
||||||
|
- Separate design + RED. Own work item.
|
||||||
|
- Related: tie-break = drag order (current, works). Expose clearly.
|
||||||
|
|
||||||
### FEAT-1: Dead participants stay in turn order — DONE
|
### FEAT-1: Dead participants stay in turn order — DONE
|
||||||
- Fixed: `applyHpChange` no longer flips `isActive` or touches `turnOrderIds`
|
- Fixed: `applyHpChange` no longer flips `isActive` or touches `turnOrderIds`
|
||||||
on death/revive. Dead stay in rotation, `nextTurn` visits them, PCs get
|
on death/revive. Dead stay in rotation, `nextTurn` visits them, PCs get
|
||||||
@@ -92,7 +109,10 @@ REWORK_PLAN.md.
|
|||||||
`nextActiveAfter`. Both nextTurn + computeTurnOrderAfterRemoval delegate.
|
`nextActiveAfter`. Both nextTurn + computeTurnOrderAfterRemoval delegate.
|
||||||
- 500-round replay: 0 skips, 0 double-acts.
|
- 500-round replay: 0 skips, 0 double-acts.
|
||||||
|
|
||||||
### BUG-6: reorderParticipants doesn't update turnOrderIds
|
### BUG-6: reorderParticipants doesn't update turnOrderIds — FIXED
|
||||||
|
- Fixed structurally by 1-list model (commit 5d3a060). turnOrderIds =
|
||||||
|
participants.map(id) always. reorder cross-init allowed (DM override).
|
||||||
|
Display === rotation by construction.
|
||||||
- Test: `shared/tests/turn.reorder.test.js` 'reorder updates turnOrderIds' (RED).
|
- Test: `shared/tests/turn.reorder.test.js` 'reorder updates turnOrderIds' (RED).
|
||||||
- `reorderParticipants(enc, draggedId, targetId)` swaps two same-initiative
|
- `reorderParticipants(enc, draggedId, targetId)` swaps two same-initiative
|
||||||
participants in `participants[]` array but leaves `turnOrderIds` unchanged.
|
participants in `participants[]` array but leaves `turnOrderIds` unchanged.
|
||||||
@@ -134,8 +154,8 @@ REWORK_PLAN.md.
|
|||||||
|
|
||||||
## Pipeline (bugs only --- milestones live in REWORK_PLAN.md)
|
## Pipeline (bugs only --- milestones live in REWORK_PLAN.md)
|
||||||
- [ ] BUG-4: fix setDoc→updateDoc for all 5 activeDisplay sites
|
- [ ] BUG-4: fix setDoc→updateDoc for all 5 activeDisplay sites
|
||||||
- [x] BUG-5: fixed (commit 494327f)
|
- [x] BUG-5: fixed (1-list model, 500 rounds clean)
|
||||||
- [ ] BUG-6: reorderParticipants update turnOrderIds
|
- [x] BUG-6: fixed structurally (1-list model)
|
||||||
- [ ] BUG-8: ws adapter reconnect
|
- [ ] BUG-8: ws adapter reconnect
|
||||||
- [ ] BUG-10: deact+reactivate double-act
|
- [ ] BUG-10: deact+reactivate double-act
|
||||||
- [ ] BUG-11: FE Combat.scenario crash
|
- [ ] BUG-11: FE Combat.scenario crash
|
||||||
|
|||||||
Reference in New Issue
Block a user