From 64d67b9aeddf69058cc6731534a3c31b9a14bd0f Mon Sep 17 00:00:00 2001 From: Gustavo Henrique Santos Souza de Miranda Date: Wed, 21 Jan 2026 12:56:48 -0300 Subject: [PATCH] chore: mark US-024 as complete and update progress log Co-Authored-By: Claude Opus 4.5 --- prd.json | 2 +- progress.txt | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/prd.json b/prd.json index 6e66a93..fbb4b22 100644 --- a/prd.json +++ b/prd.json @@ -427,7 +427,7 @@ "Verify in browser using dev-browser skill" ], "priority": 24, - "passes": false, + "passes": true, "notes": "" }, { diff --git a/progress.txt b/progress.txt index 7cd62e4..58c6e86 100644 --- a/progress.txt +++ b/progress.txt @@ -362,3 +362,15 @@ - Node data structure for choice: { prompt: '', options: [{ id, label }, { id, label }] } - React Flow nodes are draggable by default after being added to state --- + +## 2026-01-21 - US-024 +- What was implemented: Add/remove choice options functionality (2-6 options supported) +- Files changed: + - src/components/editor/nodes/ChoiceNode.tsx - added addOption and removeOption callbacks, '+' button to add options, 'x' button per option to remove +- **Learnings for future iterations:** + - Define MIN_OPTIONS and MAX_OPTIONS constants for clear limits + - Use disabled prop on buttons to enforce min/max constraints with appropriate styling (opacity-30, cursor-not-allowed) + - Remove button uses × character for simple cross icon + - Add button styled with border-dashed for visual distinction from action buttons + - Handles update dynamically via React Flow re-render when options array changes +---