docs consolidate feedback backlog

Commit
c95040d15f6292d18df2416c1e6bf51c0ea2ce1d
Author
Marius Peter <dev@marius-peter.com>
Author date
Committer
Marius Peter <dev@marius-peter.com>
Committer date
ENHANCEMENTS.org
index 8ee280bb..845e9c66 100644..100644
@@ -1,125 +1,390 @@
1 1 #+TITLE: Hito Enhancements log
2 2 #+AUTHOR: Marius Peter
3 Removed: #+STARTUP: overview
3 Added: #+STARTUP: content
4 4 #+TODO: TODO IN-PROGRESS TESTING TESTED BLOCKED | CANCELLED DONE
5 5
6 6 * Dispatch
7 7
8 Added: ** TODO Show feedback author and contribution count
9 Added: SCHEDULED: [2026-09-05 Sat 21:24]
10 Added:
11 Added: feedback should display username that submitted it, alongside their total number of feedback contributions.
12 Added:
13 Added: Clarification:
14 Added: - Users should see real usernames.
15 Added: - Rank the feedback list by upvotes.
16 Added: - Let users upvote feedback submitted by other users they think is valuable.
17 Added:
18 Added: ** CANCELLED Keep the routine as a table
19 Added: CLOSED: [2026-09-05 Sat 22:02] SCHEDULED: [2026-09-05 Sat 21:24]
20 Added: :PROPERTIES:
21 Added: :ID: 6b126d4c-6058-4b7a-8c67-640ce6160ba7
22 Added: :END:
23 Added:
24 Added: - note :: Duplicate. The routine already renders as an HTML table (commit 4e4acac, "Replace routine accordions with an HTML table"). No new work.
25 Added: routine must absolutely be a table.
26 Added:
27 Added: Clarification:
28 Added: - This is a duplicate request.
29 Added:
30 Added: ** TODO Use POST-redirect-GET for all forms
31 Added: SCHEDULED: [2026-09-05 Sat 21:25]
32 Added:
33 Added: Ensure proper POST redirect GET patter for all forms
34 Added:
35 Added: Clarification:
36 Added: - Apply this to feedback, application feedback, and workout forms.
37 Added: - Preserve success and error messages for toast display on the redirected page.
38 Added:
39 Added: ** TODO Standardize shared CRUD patterns
40 Added: SCHEDULED: [2026-09-05 Sat 21:25]
41 Added:
42 Added: Rationalize shared CRUD pattern for domain objects, user data, and app feedback
43 Added:
44 Added: ** TODO Use worse-same-better subjective feedback
45 Added: SCHEDULED: [2026-09-05 Sat 21:25]
46 Added:
47 Added: Subjective Feedback evidence should be collected against the following pattern: Worse, Same, Better [than usual]
48 Added:
49 Added: Clarification:
50 Added: - Ask, "How are you feeling?"
51 Added: - Collect Worse, Same, and Better through inline button groups.
52 Added: - Apply this to sleep, appetite, readiness, motivation, and perceived difficulty.
53 Added: - This probably has an impact on core data types as well.
54 Added:
55 Added: ** TODO Make Write feedback the primary action
56 Added: SCHEDULED: [2026-09-05 Sat 21:25]
57 Added:
58 Added: "Write feedback" should be the single Primary action on the app-feedback page. Secondary actions are CRUD operations on previous feedback items.
59 Added:
60 Added: Clarification:
61 Added: - Secondary CRUD actions are editing and removing the user’s feedback items.
62 Added: - Show the primary action once.
63 Added:
64 Added: ** TODO Import Hevy CSV from profile
65 Added: SCHEDULED: [2026-09-05 Sat 21:25]
66 Added: :PROPERTIES:
67 Added: :ID: 2559dd31-18e1-4f62-8d16-92f96d782203
68 Added: :END:
69 Added:
70 Added: - note :: Deferred by the request clarification. Left open under Dispatch; not implemented this session.
71 Added: On profile page, user should be able to import Hevy CSV
72 Added:
73 Added: Clarification:
74 Added: - Defer this feedback feature.
75 Added:
76 Added: ** CANCELLED Fix workout cancellation flow
77 Added: CLOSED: [2026-09-05 Sat 21:58] SCHEDULED: [2026-09-05 Sat 21:25]
78 Added:
79 Added: workout cancellation flow still has bug
80 Added:
81 Added: - note :: No remaining defect. Prior commits 7d9ee9e, 5aaa11f, and test ea1f211 fixed cancellation: CSRF-guarded discard, no stale record, 303 redirect to Home. test_web.ml cancellation cases pass (203 tests green).
82 Added: ** TODO Emphasize the secondary color
83 Added: SCHEDULED: [2026-09-05 Sat 21:25]
84 Added:
85 Added: oxblood color is still too dominant; secondary color needs to be more emphasized
86 Added:
87 Added: Clarification:
88 Added: - Use brass for secondary buttons, such as cancellation.
89 Added:
90 Added: ** TODO Use progressive subjective feedback buttons
91 Added: SCHEDULED: [2026-09-05 Sat 21:25]
92 Added:
93 Added: subjective feedback affordances should be more progressive. not dropdowns, but button groups containing three buttons each for below, usual, and above.
94 Added:
95 Added: ** TODO Store database timestamps as ISO 8601
96 Added: SCHEDULED: [2026-09-05 Sat 21:25]
97 Added:
98 Added: database timestamps should be stored as ISO8601 strings
99 Added:
100 Added: Clarification:
101 Added: - Store timestamps in UTC Zulu time.
102 Added: - Use the ISO 8601 format.
103 Added: - Do not migrate existing data.
104 Added: - Existing data can be dropped safely.
105 Added:
106 Added: ** TODO Make the builder subagent produce one commit per feature
107 Added: SCHEDULED: [2026-09-05 Sat 22:30]
108 Added:
109 Added: the enhancement builder should produce one commit per feature.
110 Added:
111 Added: Clarification:
112 Added: - The builder is the builder subagent.
113 Added:
8 114 * Core domain
9 115
10 116 * Navigation
117 Added:
11 118 ** DONE Use one desktop-to-mobile breakpoint
119 Added:
12 120 Desktop has top navigation. Mobile has an identical bottom navigation.
121 Added:
13 122 ** DONE Use three always-available navigation actions
123 Added:
14 124 Use `Home`, `Routine` when the user is not logging (changing to `Current Workout` while logging), and `<username>` for the workout log. Keep all three actions available in both modes.
125 Added:
15 126 ** DONE Simplify the top bar brand
127 Added:
16 128 Replace the top bar brand with `hito` in Work Sans, without a subtitle.
129 Added:
17 130 ** DONE Remove the mobile hamburger menu
131 Added:
18 132 Do not show a hamburger menu on mobile.
133 Added:
19 134 ** DONE Increase the masthead brand size
135 Added:
20 136 Make the masthead brand name appear much larger.
137 Added:
21 138 ** DONE Hide sign-out on mobile
139 Added:
22 140 Do not show the sign-out button on mobile.
141 Added:
23 142 ** DONE Remove thick black bars from mobile bottom navigation
143 Added:
24 144 Remove the thick black bars visible in the mobile bottom navigation.
145 Added:
25 146 ** DONE Fix active bottom-navigation state for current workout and logbook
147 Added:
26 148 When a current workout is open, selecting the logbook tab marks both Current Workout and Logbook as active in the bottom navigation. Ensure only the selected page is highlighted.
149 Added:
27 150 ** DONE Increase bottom-navigation button text size
151 Added:
28 152 Increase the bottom-navigation button text font size to better support WCAG-aligned readability.
153 Added:
29 154 ** DONE Animate page transitions
155 Added:
30 156 Animate page transitions between Home, Current Workout, and Logbook.
157 Added:
31 158 ** DONE Standardize Logbook navigation and add a mobile profile button
159 Added:
32 160 Always label the logbook tab `Logbook`. Add a dedicated profile button for the user name in the mobile top navigation bar.
161 Added:
33 162 ** DONE Return the middle navigation tab to Routine after cancellation
163 Added:
34 164 After cancelling workout logging, change the middle navigation tab from Current Workout back to Routine.
35 165 - result :: model=kiro-cli commit=ea1f211 tests=pass
36 166
37 167 * Workout logging
168 Added:
38 169 ** DONE Add placeholders to load and reps fields
170 Added:
39 171 Add placeholder values to the load and reps fields on the workout logging page.
172 Added:
40 173 ** DONE Remove the redundant fieldset legend
174 Added:
41 175 Remove the redundant fieldset legend from workout logging.
176 Added:
42 177 ** DONE Show an in-progress workout card on Home
178 Added:
43 179 When the user is logging a current workout, show a Home card that indicates the workout is in progress and links to the Current Workout tab.
180 Added:
44 181 ** DONE Make workout cancellation unconditional
182 Added:
45 183 When cancelling a workout, always leave the current workout view without showing an invalid-form response. Save the workout log as-is for later editing, then redirect the user to Home.
184 Added:
46 185 ** DONE Add a sticky workout timer bar
186 Added:
47 187 When logging a workout, show a sticky bar at the top of the screen with a workout timer.
188 Added:
48 189 ** DONE Replace the exercise button group with a dropdown
190 Added:
49 191 Use a dropdown menu to select the exercise instead of the exercise button group.
192 Added:
50 193 ** DONE Remove the boulder top border from exercise logging cards
194 Added:
51 195 Do not show a boulder top fieldset border on the exercise logging fieldset card.
196 Added:
52 197 ** DONE Confirm workout cancellation in a modal
198 Added:
53 199 Show a modal menu that confirms workout logging cancellation before cancelling.
200 Added:
54 201 ** DONE Make workout logging fields compact on mobile
202 Added:
55 203 Use a grid layout so the exercise name, load input, and reps input appear on one row on mobile.
204 Added:
56 205 ** DONE Preserve and navigate after modal workout cancellation
206 Added:
57 207 When cancellation is confirmed, return the Current Workout tab to the Routine tab, save the workout as a partial logbook entry, and keep it editable later.
208 Added:
58 209 ** DONE Use shared load and reps column headings
210 Added:
59 211 In exercise logging fieldsets, show Load and Reps as column headings instead of repeating them above every input in a multi-exercise group.
212 Added:
60 213 ** DONE Hide exercise-selector submit buttons in SPA mode
214 Added:
61 215 When JavaScript progressive enhancement is active, do not show the submit button for exercise selection.
216 Added:
62 217 ** DONE Fix workout cancellation persistence
218 Added:
63 219 Cancelling workout logging currently redirects without actually cancelling the workout. Make the cancellation operation take effect.
64 220 - result :: model=kiro-cli commit=5aaa11f tests=pass
221 Added:
65 222 ** DONE Make the entire logging fieldset a responsive grid
223 Added:
66 224 Use one responsive grid for the entire workout logging fieldset instead of separate exercise-field layouts.
67 225 - result :: model=kiro-cli commit=6b62f25 tests=pass
226 Added:
68 227 ** DONE Update the workout elapsed timer live
228 Added:
69 229 Ensure the elapsed duration timer in the Current Workout view updates continuously while logging.
70 230 - result :: model=kiro-cli commit=f9cfb69 tests=pass
231 Added:
71 232 ** DONE Fix the workout cancel button
233 Added:
72 234 [2026-09-05 Sat 17:23]
73 235 Fix the workout cancel button bug. We are cancelling a workout does not properly cancel the workout and redirect to the home page
236 Added:
74 237 ** DONE Hide the exercise choice label
238 Added:
75 239 [2026-09-05 Sat 17:26]
76 240 Make the exercise choice label invisible in the current workout logging page
77 241
242 Added: ** DONE Remove spurious Page updated mention
243 Added: CLOSED: [2026-09-05 Sat 21:57] SCHEDULED: [2026-09-05 Sat 21:25]
244 Added:
245 Added: Spurious "Page updated" mention in workout logging screen
246 Added:
247 Added: - result :: model=kiro-cli commit=dab53ca tests=pass
248 Added: ** DONE Fix workout log exercise selection
249 Added: CLOSED: [2026-09-05 Sat 22:02] SCHEDULED: [2026-09-05 Sat 21:24]
250 Added: :PROPERTIES:
251 Added: :ID: 45453231-7ac9-444c-96c2-af387a34bb0c
252 Added: :END:
253 Added:
254 Added: - result :: model=kiro-cli commit=61bf45c tests=pass
255 Added: Broken workout log editing: exercise selection button.
256 Added:
257 Added: Clarification:
258 Added: - This concerns editing a previously logged workout on mobile.
259 Added: - The user must be able to select and switch the exercise correctly.
260 Added:
261 Added: ** DONE Confirm workout override with a modal
262 Added: CLOSED: [2026-09-05 Sat 22:23] SCHEDULED: [2026-09-05 Sat 21:25]
263 Added: :PROPERTIES:
264 Added: :ID: b9d05a7f-c8f9-4fb6-878f-a9d1f89ed45d
265 Added: :END:
266 Added:
267 Added: - result :: model=kiro-cli commit=7c9f701 tests=pass
268 Added: Implement a modal confirmation when beginning a workout under override
269 Added:
270 Added: Clarification:
271 Added: - The override condition is training before full rest has completed.
272 Added: - Show a confirmation modal menu before starting the workout.
273 Added:
274 Added: ** DONE Show early workout notice as a toast
275 Added: CLOSED: [2026-09-05 Sat 22:26] SCHEDULED: [2026-09-05 Sat 21:25]
276 Added: :PROPERTIES:
277 Added: :ID: 8052f6e1-7281-4a57-a615-504476ca6c16
278 Added: :END:
279 Added:
280 Added: - result :: model=kiro-cli commit=9702a02 tests=pass
281 Added: "begin before recovery finished" should be a toast message rather than a component in the main content.
282 Added:
283 Added: Clarification:
284 Added: - The toast is informational only because the modal already confirms the override.
285 Added: - Display it for 3 seconds, or for the duration recommended by WCAG.
286 Added:
78 287 * Logbook and feedback
288 Added:
79 289 ** DONE Replace history with a logbook endpoint
290 Added:
80 291 Replace the history endpoint with a logbook endpoint that shows all recorded evidence for the user.
292 Added:
81 293 ** DONE Allow spontaneous logbook feedback
294 Added:
82 295 Allow users to submit subjective feedback at any time from the Logbook. Suggest this feedback flow at the end of each workout, while keeping it available independently.
296 Added:
83 297 ** DONE Gate logbook feedback form behind a button
298 Added:
84 299 The feedback form under the logbook tab should be accessed via a dedicated button not displayed outright in the logbook page
85 300 - result :: model=kiro-cli commit=6cc9062 tests=pass
301 Added:
86 302 ** DONE Add authenticated app feedback
303 Added:
87 304 [2026-09-05 Sat 17:45]
88 305 Next to the profile button in the top header, add an app feedback button which will insert app-specific feedback written by the user to an appropriate SQLite table on the server. On the user app feedback screen, the user should be able to type freeform feedback on the application in one tab and in a second tab view the list of feedback submitted
89 306
90 307 * Routine display
308 Added:
91 309 ** DONE Add animations to routine accordions
310 Added:
92 311 Add animations to the routine accordions.
312 Added:
93 313 ** DONE Style workout accordions with CSS
314 Added:
94 315 Style the workout accordions with CSS.
316 Added:
95 317 ** DONE Replace routine accordions with an HTML table
318 Added:
96 319 Replace the routine accordion interface with a basic HTML table.
97 320 - result :: model=kiro-cli commit=4e4acac tests=pass
98 321
99 322 * Styling and theme
323 Added:
100 324 ** DONE Remove all doctrine-note elements
325 Added:
101 326 ** DONE Use brass for secondary buttons
327 Added:
102 328 Use a secondary brass color for secondary buttons.
329 Added:
103 330 ** DONE Style exercise names as headings
331 Added:
104 332 In the exercise fieldset, style the exercise name as a black Work Sans heading.
333 Added:
105 334 ** DONE Limit Courier Prime Mono usage
335 Added:
106 336 Use Courier Prime Mono only for numerical inputs and outputs, and eventually for tabular data.
337 Added:
107 338 ** DONE Harmonize UI corner radii
339 Added:
108 340 Use uniformly rounded corners for all buttons, cards, and other UI elements.
341 Added:
109 342 ** DONE Harmonize keyboard-focus halo styling
343 Added:
110 344 Change the WCAG keyboard-navigation focus halo color so it follows the general UI theme and is less visually obtrusive.
345 Added:
111 346 ** DONE Style the cancellation modal to match the UI
347 Added:
112 348 Style the modal cancellation menu so it matches the overall UI aesthetic.
349 Added:
113 350 ** DONE Style form dropdowns to match the UI
351 Added:
114 352 Style form dropdown menus so they match the overall UI aesthetic.
115 353
116 354 * Account and profile
355 Added:
117 356 ** DONE Add a dedicated profile page
357 Added:
118 358 Make the top-bar profile button open a dedicated profile page instead of the Logbook. Allow users to change their username and update their password.
119 359 - result :: model=kiro-cli commit=430a6ea tests=pass
120 360
361 Added: * Errors
362 Added:
363 Added: ** DONE Add custom error pages
364 Added: CLOSED: [2026-09-05 Sat 22:20] SCHEDULED: [2026-09-05 Sat 21:25]
365 Added: :PROPERTIES:
366 Added: :ID: 965d5284-a593-43ca-b8e4-202b093e6502
367 Added: :END:
368 Added:
369 Added: - result :: model=kiro-cli commit=34ab578 tests=pass
370 Added: Need custom 404 etc. pages
371 Added:
372 Added: Clarification:
373 Added: - Add the most common 400 and 500 error pages.
374 Added: - Do not expose specific information from the server.
375 Added: - Keep the desktop top navigation affordance.
376 Added: - Keep the mobile bottom navigation affordance.
377 Added:
121 378 * Miscellaneous
122 379
123 380 # Local Variables:
124 381 # org-log-done: time
125 382 # End:
383 Added: ** DONE Capture each prompt as its own request
384 Added: CLOSED: [2026-09-05 Sat 22:01] SCHEDULED: [2026-09-05 Sat 21:31]
385 Added: :PROPERTIES:
386 Added: :ID: cfdca5b4-80d3-448f-bf54-a365dd36a578
387 Added: :END:
388 Added:
389 Added: - result :: model=kiro-cli commit=d5553a2 tests=pass
390 Added: Edit the stream-of-thought SKILL so each individual prompt in a session becomes its own feature request, not the whole session as one request.