Commit Graph

16 Commits

Author SHA1 Message Date
slhx agent 7a44c3ee9e test(workout): gate phone-first browser flow
Add a real browser smoke for the workout exemplar that checks phone and wide viewport hierarchy, thumb-sized primary action, hidden host proof panel, and recovery interactions through hemx runtime.

req: examples/001

req: local/001

req: host/002
2026-06-11 23:47:55 +02:00
slhx agent 58b0c70709 test(workout): prove skipped exercise recovery
Cover skip-and-undo as a recoverable workout mistake so the product recovery surface is guarded alongside invalid input, edit-last-set, host failures, and replay failures.

req: examples/001

req: local/001

req: local/004
2026-06-11 23:39:34 +02:00
slhx agent 1289106ed4 feat(workout): correct last set from local events
Add a recovery path for mistyped completed-set weight: append a typed correction event, replay it through the local projection, and make undo restore the previous session state.

req: examples/001

req: local/001

req: local/003

req: local/004
2026-06-11 23:34:17 +02:00
slhx agent 900ae9f51f feat(workout): make finish export a product state
Promote the finish/export card from static copy into session-aware product state and extend the HTTP exemplar through full finish, export, and replay.

req: examples/001

req: local/001

req: local/003

req: local/004
2026-06-11 23:29:09 +02:00
slhx agent c146e9b932 feat(workout): recover common session failures
Make the workout exemplar recover cleanly from invalid edits, accidental double-advance, replay parse failures, and denied or timed-out host export results while keeping local events as truth.

req: examples/001

req: local/001

req: local/003

req: local/004

req: host/002

req: host/005
2026-06-11 23:25:21 +02:00
slhx agent a514237b09 feat(workout): complete mobile session flow
Make Workout Copilot behave like a finished phone-first session: rest/next state, progress, undo recovery, finish/export, replayable local log, and host proof controls tucked behind product states.

req: examples/001

req: local/001

req: local/003

req: local/004

req: host/002
2026-06-11 23:15:55 +02:00
slhx agent 4254327cc7 refactor(examples): hide workout dispatch details
Keep the workout binary to page/runtime/interaction plumbing by moving generated handle dispatch behind an app-owned interactions function, while preserving typed form adapters and full verification.

req: codegen/002

req: examples/001
2026-06-11 22:19:17 +02:00
slhx agent 189bdf5eea feat(examples): polish workout phone UI
Give the workout exemplar a durable gym-floor command-slate direction, serve focused CSS, keep the first viewport centered on one action, and extend the HTTP E2E to verify stylesheet delivery.

req: examples/001

req: local/001

req: local/003

req: host/002
2026-06-11 22:03:18 +02:00
slhx agent 0f8d07d36f feat(axum): start stateful interactions tersely
Add state_interactions as a small helper for app-owned stateful registries, and use it in the workout exemplar to remove one layer of repetitive route wiring without hiding generated handles or app handlers.

req: axum_integration/003

req: ceremony/001

req: dx/003

req: codegen/002

req: examples/001
2026-06-11 21:55:29 +02:00
slhx agent d991addbb5 refactor(examples): shrink workout route wiring
Move workout interaction wiring behind an app-owned registry function and use typed form adapters so the runnable binary no longer carries repetitive per-handler closure boilerplate.

req: codegen/002

req: examples/001
2026-06-11 21:44:11 +02:00
slhx agent 5e4f02f419 docs(examples): avoid low-level workout wording
Keep the workout exemplar docs aligned with canonical example guidance by describing persisted truth without teaching low-level update payload terminology.

req: examples/003

req: examples/005

req: local/001
2026-06-11 21:09:59 +02:00
slhx agent d38b66bf27 docs(examples): document workout run and deploy path
Add the workout exemplar README with run, browser, test, deploy, and boundary notes so the product example is usable without guessing commands or hidden runtime assumptions.

req: examples/001

req: examples/005

req: local/001

req: local/003

req: host/005
2026-06-11 21:05:28 +02:00
slhx agent d5b74496ab feat(examples): add workout replay e2e
Wrap the workout page with the shared runtime, add export replay over command/event truth, and cover the running HTTP app with an end-to-end test that exercises runtime asset loading and product interactions.

req: examples/001

req: local/001

req: local/003

req: local/004

req: host/001
2026-06-11 21:02:50 +02:00
slhx agent 18095ea742 fix(examples): satisfy canonical workout contracts
Keep the workout example inside canonical example wording rules while preserving the native-shell host path and full xtask verification.

req: examples/003

req: examples/005

req: host/001

req: host/005
2026-06-11 20:50:40 +02:00
slhx agent e76a564add feat(examples): add native-shell workout host path
Extend the workout exemplar with a native-shell haptic request and acknowledgment path that validates the host manifest and returns through app code without owning workout state.

req: host/001

req: host/002

req: host/004

req: host/005

req: examples/001
2026-06-11 20:43:14 +02:00
slhx agent 19bf47ec72 feat(examples): add workout copilot exemplar
Add a runnable phone-first workout example that keeps local workout truth as commands, domain events, and projections, routes export through the host capability boundary, and documents how to open it in the browser.

req: examples/001

req: local/001

req: local/003

req: local/004

req: host/001

req: host/005
2026-06-11 20:38:06 +02:00