@bitcobblers/wod-wiki-tools 0.51.2195 → 0.52.2198

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (642) hide show
  1. package/dist/bin/wod.cjs +979 -888
  2. package/dist/bin/wod.cjs.map +1 -1
  3. package/dist/bin/wod.mjs +4 -4
  4. package/dist/{chunk-V23POHG2.mjs → chunk-2EWCEE6N.mjs} +86 -7
  5. package/dist/chunk-2EWCEE6N.mjs.map +1 -0
  6. package/dist/{chunk-QAPPKPCL.mjs → chunk-FJSPH4EA.mjs} +69 -148
  7. package/dist/chunk-FJSPH4EA.mjs.map +1 -0
  8. package/dist/{chunk-ZUZMRH3G.mjs → chunk-FUISPA7A.mjs} +55 -3
  9. package/dist/chunk-FUISPA7A.mjs.map +1 -0
  10. package/dist/chunk-KGP6STLY.mjs +69 -0
  11. package/dist/chunk-KGP6STLY.mjs.map +1 -0
  12. package/dist/{chunk-Z2IQPTDI.mjs → chunk-LNBKPHEP.mjs} +6 -5
  13. package/dist/chunk-LNBKPHEP.mjs.map +1 -0
  14. package/dist/{chunk-V7EGHQAY.mjs → chunk-V77RQF5T.mjs} +3 -3
  15. package/dist/chunk-V77RQF5T.mjs.map +1 -0
  16. package/dist/{chunk-L5S7PXAB.mjs → compiler-KOSG7QUK.mjs} +50 -70
  17. package/dist/compiler-KOSG7QUK.mjs.map +1 -0
  18. package/dist/index.cjs +979 -888
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +1 -1
  21. package/dist/index.d.ts +1 -1
  22. package/dist/index.mjs +6 -6
  23. package/dist/{scaffoldFeed-I35NUXOI.mjs → scaffoldFeed-Y57UWPGG.mjs} +3 -3
  24. package/dist/{scaffoldFeed-I35NUXOI.mjs.map → scaffoldFeed-Y57UWPGG.mjs.map} +1 -1
  25. package/dist/server/app.cjs +155 -5
  26. package/dist/server/app.cjs.map +1 -1
  27. package/dist/server/app.d.cts +3 -0
  28. package/dist/server/app.d.ts +3 -0
  29. package/dist/server/app.mjs +2 -1
  30. package/dist/server-SHNWCIIM.mjs +11 -0
  31. package/dist/{server-QK2CXCDJ.mjs.map → server-SHNWCIIM.mjs.map} +1 -1
  32. package/dist/skills/wod-extraction/SKILL.md +40 -0
  33. package/dist/web/playground/ai-skills/parse.md +40 -0
  34. package/dist/web/playground/assets/{feedSync.worker-CK48nNHX.js → feedSync.worker-O4TGLEj3.js} +7 -7
  35. package/dist/web/playground/assets/main-CnfiwGSd.js +1149 -0
  36. package/dist/web/playground/assets/main-Vksl1E71.css +2 -0
  37. package/dist/web/playground/assets/{statementBuilderFlow-uTfwbWmx.js → statementBuilderFlow-Ba3zNEUH.js} +2 -2
  38. package/dist/web/playground/assets/{vendor-BiwvmytJ.js → vendor-Dz-Azkoq.js} +69 -69
  39. package/dist/web/playground/assets/{vendor-codemirror-B461LMkB.js → vendor-codemirror-B4BeZarI.js} +11 -11
  40. package/dist/web/playground/index.html +4 -4
  41. package/dist/web/playground/seed/core/chunks/canvas.6ac57ab1.json +1 -0
  42. package/dist/web/playground/seed/core/chunks/dashboards.96c1474b.json +1 -0
  43. package/dist/web/playground/seed/core/chunks/{efforts.1f14a471.json → efforts.b724fc2b.json} +1 -1
  44. package/dist/web/playground/seed/core/chunks/{equipment.3d9eda19.json → equipment.2743295a.json} +1 -1
  45. package/dist/web/playground/seed/core/indexes/notebooks/canvas.json +181 -181
  46. package/dist/web/playground/seed/core/indexes/notebooks/dashboards.json +17 -17
  47. package/dist/web/playground/seed/core/indexes/notebooks/efforts.json +326 -326
  48. package/dist/web/playground/seed/core/indexes/notebooks/equipment.json +50 -50
  49. package/dist/web/playground/seed/core/manifest.json +31 -31
  50. package/dist/web/playground/seed/core/markdown/canvas/ai-first/README.json +1 -1
  51. package/dist/web/playground/seed/core/markdown/canvas/guide/README.json +4 -4
  52. package/dist/web/playground/seed/core/markdown/canvas/guide/clock.json +1 -1
  53. package/dist/web/playground/seed/core/markdown/canvas/guide/dashboards.json +4 -32
  54. package/dist/web/playground/seed/core/markdown/canvas/guide/metrics-summaries.json +6 -6
  55. package/dist/web/playground/seed/core/markdown/canvas/guide/metrics.json +16 -16
  56. package/dist/web/playground/seed/core/markdown/canvas/guide/protocols.json +20 -20
  57. package/dist/web/playground/seed/core/markdown/canvas/guide/sessions.json +33 -33
  58. package/dist/web/playground/seed/core/markdown/canvas/guide/start.json +11 -11
  59. package/dist/web/playground/seed/core/markdown/canvas/guide/structure.json +25 -25
  60. package/dist/web/playground/seed/core/markdown/canvas/guide/wql.json +22 -22
  61. package/dist/web/playground/seed/core/markdown/canvas/home/sample-script.json +4 -4
  62. package/dist/web/playground/seed/core/markdown/canvas/home/welcome-1.json +2 -2
  63. package/dist/web/playground/seed/core/markdown/canvas/syntax/actions-comments.json +4 -4
  64. package/dist/web/playground/seed/core/markdown/canvas/syntax/alternating-emom.json +5 -5
  65. package/dist/web/playground/seed/core/markdown/canvas/syntax/basic-emom.json +4 -4
  66. package/dist/web/playground/seed/core/markdown/canvas/syntax/calculated-metrics.json +4 -4
  67. package/dist/web/playground/seed/core/markdown/canvas/syntax/classic-amrap.json +6 -6
  68. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-barbell-cycling.json +4 -4
  69. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-full-session.json +10 -10
  70. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-nested-protocols.json +7 -7
  71. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-partner-workout.json +7 -7
  72. package/dist/web/playground/seed/core/markdown/canvas/syntax/complex-swimming.json +5 -5
  73. package/dist/web/playground/seed/core/markdown/canvas/syntax/core-rules.json +4 -4
  74. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-and-calculated-metrics.json +4 -4
  75. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-intervals.json +4 -4
  76. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-1.json +4 -4
  77. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-2.json +5 -5
  78. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-3.json +3 -3
  79. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-4.json +4 -4
  80. package/dist/web/playground/seed/core/markdown/canvas/syntax/custom-metrics-5.json +4 -4
  81. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-bouldering.json +2 -2
  82. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-hangboard.json +2 -2
  83. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-climb-sport.json +2 -2
  84. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-log.json +4 -4
  85. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-plan.json +8 -8
  86. package/dist/web/playground/seed/core/markdown/canvas/syntax/dialect-wod.json +5 -5
  87. package/dist/web/playground/seed/core/markdown/canvas/syntax/distance-intervals.json +3 -3
  88. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-1.json +4 -4
  89. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-2.json +5 -5
  90. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-3.json +10 -10
  91. package/dist/web/playground/seed/core/markdown/canvas/syntax/document-4.json +5 -5
  92. package/dist/web/playground/seed/core/markdown/canvas/syntax/effort-notes.json +5 -5
  93. package/dist/web/playground/seed/core/markdown/canvas/syntax/frontmatter-summaries.json +4 -4
  94. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-1.json +5 -5
  95. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-2.json +6 -6
  96. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-3.json +3 -3
  97. package/dist/web/playground/seed/core/markdown/canvas/syntax/groups-4.json +3 -3
  98. package/dist/web/playground/seed/core/markdown/canvas/syntax/longer-duration.json +4 -4
  99. package/dist/web/playground/seed/core/markdown/canvas/syntax/longer-intervals.json +4 -4
  100. package/dist/web/playground/seed/core/markdown/canvas/syntax/measurements.json +7 -7
  101. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-1.json +5 -5
  102. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-2.json +7 -7
  103. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-3.json +8 -8
  104. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-4.json +6 -6
  105. package/dist/web/playground/seed/core/markdown/canvas/syntax/metrics-5.json +5 -5
  106. package/dist/web/playground/seed/core/markdown/canvas/syntax/mixed-sections.json +10 -10
  107. package/dist/web/playground/seed/core/markdown/canvas/syntax/mixed-timers.json +5 -5
  108. package/dist/web/playground/seed/core/markdown/canvas/syntax/multiple-amrap-windows.json +7 -7
  109. package/dist/web/playground/seed/core/markdown/canvas/syntax/multiple-sets.json +4 -4
  110. package/dist/web/playground/seed/core/markdown/canvas/syntax/named-groups.json +6 -6
  111. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-1.json +6 -6
  112. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-2.json +4 -4
  113. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-3.json +6 -6
  114. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-4.json +3 -3
  115. package/dist/web/playground/seed/core/markdown/canvas/syntax/protocols-5.json +4 -4
  116. package/dist/web/playground/seed/core/markdown/canvas/syntax/single-movement.json +3 -3
  117. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-1.json +4 -4
  118. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-2.json +5 -5
  119. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-3.json +4 -4
  120. package/dist/web/playground/seed/core/markdown/canvas/syntax/supplemental-4.json +4 -4
  121. package/dist/web/playground/seed/core/markdown/canvas/syntax/time-cap.json +6 -6
  122. package/dist/web/playground/seed/core/markdown/canvas/syntax/timer-modifiers.json +6 -6
  123. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-1.json +6 -6
  124. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-2.json +4 -4
  125. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-3.json +4 -4
  126. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-4.json +4 -4
  127. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-5.json +5 -5
  128. package/dist/web/playground/seed/core/markdown/canvas/syntax/timers-rest.json +4 -4
  129. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/aggregate-by-effort.json +6 -6
  130. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/aggregate-by-week.json +6 -6
  131. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/content-fran.json +6 -6
  132. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/filter-combos.json +6 -6
  133. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/pipes-limit.json +6 -6
  134. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/session-rpe.json +6 -6
  135. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/source-journal.json +6 -6
  136. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/tis-trend.json +6 -6
  137. package/dist/web/playground/seed/core/markdown/canvas/wql-presets/where-join.json +6 -6
  138. package/dist/web/playground/seed/core/markdown/dashboards/benchmark-pr-board.json +32 -32
  139. package/dist/web/playground/seed/core/markdown/dashboards/finger-strength-v8.json +26 -26
  140. package/dist/web/playground/seed/core/markdown/dashboards/polarized-base-marathon.json +50 -50
  141. package/dist/web/playground/seed/core/markdown/dashboards/recovery-readiness.json +38 -38
  142. package/dist/web/playground/seed/core/markdown/dashboards/road-to-560-total.json +50 -50
  143. package/dist/web/playground/seed/core/markdown/dashboards/training-block-review.json +62 -62
  144. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/air-squat.json +1 -1
  145. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/box-jump.json +1 -1
  146. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/broad-jump.json +1 -1
  147. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee-box-jump-over.json +1 -1
  148. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee-over-dumbbell.json +1 -1
  149. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/burpee.json +1 -1
  150. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/dumbbell-squat-clean.json +1 -1
  151. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/ghd-sit-up.json +1 -1
  152. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/ground-kong.json +1 -1
  153. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/jumping-jack.json +1 -1
  154. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/kong-walk.json +1 -1
  155. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/lunge.json +1 -1
  156. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/overhead-squat.json +1 -1
  157. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/parkour-roll.json +1 -1
  158. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/parkour-squat.json +1 -1
  159. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/pistol-squat.json +1 -1
  160. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/plank.json +1 -1
  161. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/precision-burpee.json +1 -1
  162. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/precision-jump.json +1 -1
  163. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/quadrupedal-movement.json +1 -1
  164. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/russian-twist.json +1 -1
  165. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/sit-up.json +1 -1
  166. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-clean.json +1 -1
  167. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-hold.json +1 -1
  168. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/squat-snatch.json +1 -1
  169. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/tuck-jump.json +1 -1
  170. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/wall-ball.json +1 -1
  171. package/dist/web/playground/seed/core/markdown/efforts/bodyweight/wall-burpee.json +1 -1
  172. package/dist/web/playground/seed/core/markdown/efforts/cycling/assault-bike.json +1 -1
  173. package/dist/web/playground/seed/core/markdown/efforts/cycling/cycling-moderate.json +1 -1
  174. package/dist/web/playground/seed/core/markdown/efforts/cycling/cycling-vigorous.json +1 -1
  175. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/assisted-pull-up.json +1 -1
  176. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/burpee-pull-up.json +1 -1
  177. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/chest-to-bar-pull-up.json +1 -1
  178. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/dip.json +1 -1
  179. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/double-under.json +1 -1
  180. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-hold.json +1 -1
  181. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-push-up.json +1 -1
  182. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/handstand-walk.json +1 -1
  183. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jump-rope.json +1 -1
  184. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jumping-pull-up.json +1 -1
  185. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/jumping-push-up.json +1 -1
  186. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/l-sit-pull-up.json +1 -1
  187. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/muscle-up.json +1 -1
  188. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/pull-up.json +1 -1
  189. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/push-up.json +1 -1
  190. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/reverse-wall-dip.json +1 -1
  191. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/rope-climb.json +1 -1
  192. package/dist/web/playground/seed/core/markdown/efforts/gymnastics/toes-to-bar.json +1 -1
  193. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-arm-bar.json +1 -1
  194. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-around-the-world.json +1 -1
  195. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-bent-over-row.json +1 -1
  196. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-jerk.json +1 -1
  197. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-press.json +1 -1
  198. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-clean.json +1 -1
  199. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-deadlift.json +1 -1
  200. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-floor-press.json +1 -1
  201. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-front-squat.json +1 -1
  202. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-goblet-squat.json +1 -1
  203. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-gorilla-row.json +1 -1
  204. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-halo.json +1 -1
  205. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-jerk.json +1 -1
  206. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-overhead-squat.json +1 -1
  207. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-press.json +1 -1
  208. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-snatch.json +1 -1
  209. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-swing.json +1 -1
  210. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/kettlebell-windmill.json +1 -1
  211. package/dist/web/playground/seed/core/markdown/efforts/kettlebell/turkish-get-up.json +1 -1
  212. package/dist/web/playground/seed/core/markdown/efforts/recovery/rest.json +1 -1
  213. package/dist/web/playground/seed/core/markdown/efforts/recovery/stretching.json +1 -1
  214. package/dist/web/playground/seed/core/markdown/efforts/rowing/rowing-sprint.json +1 -1
  215. package/dist/web/playground/seed/core/markdown/efforts/rowing/rowing.json +1 -1
  216. package/dist/web/playground/seed/core/markdown/efforts/rowing/ski-erg.json +1 -1
  217. package/dist/web/playground/seed/core/markdown/efforts/running/backward-running.json +1 -1
  218. package/dist/web/playground/seed/core/markdown/efforts/running/running-6-mph.json +1 -1
  219. package/dist/web/playground/seed/core/markdown/efforts/running/running-8-mph.json +1 -1
  220. package/dist/web/playground/seed/core/markdown/efforts/running/running-sprint.json +1 -1
  221. package/dist/web/playground/seed/core/markdown/efforts/snatch.json +2 -2
  222. package/dist/web/playground/seed/core/markdown/efforts/strength/back-squat.json +1 -1
  223. package/dist/web/playground/seed/core/markdown/efforts/strength/bench-press.json +1 -1
  224. package/dist/web/playground/seed/core/markdown/efforts/strength/box-step-up.json +1 -1
  225. package/dist/web/playground/seed/core/markdown/efforts/strength/carioca.json +1 -1
  226. package/dist/web/playground/seed/core/markdown/efforts/strength/clean-and-jerk.json +1 -1
  227. package/dist/web/playground/seed/core/markdown/efforts/strength/cluster.json +1 -1
  228. package/dist/web/playground/seed/core/markdown/efforts/strength/dead-hang.json +1 -1
  229. package/dist/web/playground/seed/core/markdown/efforts/strength/deadlift.json +1 -1
  230. package/dist/web/playground/seed/core/markdown/efforts/strength/devils-press.json +1 -1
  231. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-box-step-up.json +1 -1
  232. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-clean.json +1 -1
  233. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-fly.json +1 -1
  234. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-row.json +1 -1
  235. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-snatch.json +1 -1
  236. package/dist/web/playground/seed/core/markdown/efforts/strength/dumbbell-thruster.json +1 -1
  237. package/dist/web/playground/seed/core/markdown/efforts/strength/elbows-to-knees.json +1 -1
  238. package/dist/web/playground/seed/core/markdown/efforts/strength/farmer-carry.json +1 -1
  239. package/dist/web/playground/seed/core/markdown/efforts/strength/frog-stand.json +1 -1
  240. package/dist/web/playground/seed/core/markdown/efforts/strength/front-squat.json +1 -1
  241. package/dist/web/playground/seed/core/markdown/efforts/strength/good-morning.json +1 -1
  242. package/dist/web/playground/seed/core/markdown/efforts/strength/hanging-leg-raise.json +1 -1
  243. package/dist/web/playground/seed/core/markdown/efforts/strength/hollow-rock.json +1 -1
  244. package/dist/web/playground/seed/core/markdown/efforts/strength/knees-to-elbows.json +1 -1
  245. package/dist/web/playground/seed/core/markdown/efforts/strength/l-sit.json +1 -1
  246. package/dist/web/playground/seed/core/markdown/efforts/strength/man-maker.json +1 -1
  247. package/dist/web/playground/seed/core/markdown/efforts/strength/medicine-ball-clean.json +1 -1
  248. package/dist/web/playground/seed/core/markdown/efforts/strength/overhead-press.json +1 -1
  249. package/dist/web/playground/seed/core/markdown/efforts/strength/parkour-vault.json +1 -1
  250. package/dist/web/playground/seed/core/markdown/efforts/strength/pig-flip.json +1 -1
  251. package/dist/web/playground/seed/core/markdown/efforts/strength/power-clean.json +1 -1
  252. package/dist/web/playground/seed/core/markdown/efforts/strength/power-snatch.json +1 -1
  253. package/dist/web/playground/seed/core/markdown/efforts/strength/push-jerk.json +1 -1
  254. package/dist/web/playground/seed/core/markdown/efforts/strength/push-press.json +1 -1
  255. package/dist/web/playground/seed/core/markdown/efforts/strength/romanian-deadlift.json +1 -1
  256. package/dist/web/playground/seed/core/markdown/efforts/strength/single-leg-deadlift.json +1 -1
  257. package/dist/web/playground/seed/core/markdown/efforts/strength/skull-crusher.json +1 -1
  258. package/dist/web/playground/seed/core/markdown/efforts/strength/slam-ball.json +1 -1
  259. package/dist/web/playground/seed/core/markdown/efforts/strength/sled-pull.json +1 -1
  260. package/dist/web/playground/seed/core/markdown/efforts/strength/sled-push.json +1 -1
  261. package/dist/web/playground/seed/core/markdown/efforts/strength/sumo-deadlift.json +1 -1
  262. package/dist/web/playground/seed/core/markdown/efforts/strength/thruster.json +1 -1
  263. package/dist/web/playground/seed/core/markdown/efforts/strength/triceps-extension.json +1 -1
  264. package/dist/web/playground/seed/core/markdown/efforts/strength/v-sit-hold.json +1 -1
  265. package/dist/web/playground/seed/core/markdown/efforts/strength/wall-walk.json +1 -1
  266. package/dist/web/playground/seed/core/markdown/efforts/strength/yoga-sun-salutation.json +1 -1
  267. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-assisted-sprint.json +1 -1
  268. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-backstroke.json +1 -1
  269. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-breaststroke-kick.json +1 -1
  270. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-breaststroke.json +1 -1
  271. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-butterfly.json +1 -1
  272. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-catch-up-drill.json +1 -1
  273. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-choice-stroke.json +1 -1
  274. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-dive-start.json +1 -1
  275. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-dolphin-kick.json +1 -1
  276. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-drafting.json +1 -1
  277. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-fingertip-drag.json +1 -1
  278. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-freestyle.json +1 -1
  279. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-individual-medley.json +1 -1
  280. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-kick.json +1 -1
  281. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-pull.json +1 -1
  282. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-resisted-sprint.json +1 -1
  283. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-rotation-drill.json +1 -1
  284. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-sighting.json +1 -1
  285. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-single-arm-drill.json +1 -1
  286. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-stroke-transition.json +1 -1
  287. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-two-kick-one-pull.json +1 -1
  288. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming-vigorous.json +1 -1
  289. package/dist/web/playground/seed/core/markdown/efforts/swimming/swimming.json +1 -1
  290. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-arm-cast.json +1 -1
  291. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-circles.json +1 -1
  292. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-mill.json +1 -1
  293. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-reverse-mill.json +1 -1
  294. package/dist/web/playground/seed/core/markdown/efforts/unconventional/clubbell-shield-cast.json +1 -1
  295. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-10-to-2-swing.json +1 -1
  296. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-360-swing.json +1 -1
  297. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-barbarian-squat.json +1 -1
  298. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-flow.json +1 -1
  299. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-gravedigger.json +1 -1
  300. package/dist/web/playground/seed/core/markdown/efforts/unconventional/macebell-touchdown.json +1 -1
  301. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-carry.json +1 -1
  302. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-extension.json +1 -1
  303. package/dist/web/playground/seed/core/markdown/efforts/unconventional/sandbag-over-shoulder.json +1 -1
  304. package/dist/web/playground/seed/core/markdown/efforts/walking/walking-3-mph.json +1 -1
  305. package/dist/web/playground/seed/core/markdown/equipment/air-bike.json +1 -1
  306. package/dist/web/playground/seed/core/markdown/equipment/barbell.json +1 -1
  307. package/dist/web/playground/seed/core/markdown/equipment/bench.json +1 -1
  308. package/dist/web/playground/seed/core/markdown/equipment/bike-erg.json +1 -1
  309. package/dist/web/playground/seed/core/markdown/equipment/climbing-rope.json +1 -1
  310. package/dist/web/playground/seed/core/markdown/equipment/clubs.json +1 -1
  311. package/dist/web/playground/seed/core/markdown/equipment/dumbbell.json +1 -1
  312. package/dist/web/playground/seed/core/markdown/equipment/ghd.json +1 -1
  313. package/dist/web/playground/seed/core/markdown/equipment/gymnastic-rings.json +1 -1
  314. package/dist/web/playground/seed/core/markdown/equipment/jump-rope.json +1 -1
  315. package/dist/web/playground/seed/core/markdown/equipment/kettlebell.json +1 -1
  316. package/dist/web/playground/seed/core/markdown/equipment/macebell.json +1 -1
  317. package/dist/web/playground/seed/core/markdown/equipment/medicine-ball.json +1 -1
  318. package/dist/web/playground/seed/core/markdown/equipment/parallettes.json +1 -1
  319. package/dist/web/playground/seed/core/markdown/equipment/plyo-box.json +1 -1
  320. package/dist/web/playground/seed/core/markdown/equipment/pull-up-bar.json +1 -1
  321. package/dist/web/playground/seed/core/markdown/equipment/rower.json +1 -1
  322. package/dist/web/playground/seed/core/markdown/equipment/sandbag.json +1 -1
  323. package/dist/web/playground/seed/core/markdown/equipment/ski-erg.json +1 -1
  324. package/dist/web/playground/seed/core/markdown/equipment/slam-ball.json +1 -1
  325. package/dist/web/playground/seed/core/markdown/equipment/sled.json +1 -1
  326. package/dist/web/playground/seed/core/markdown/equipment/sledgehammer.json +1 -1
  327. package/dist/web/playground/seed/core/markdown/equipment/weight-vest.json +1 -1
  328. package/dist/web/playground/seed/core/report.html +13 -13
  329. package/dist/web/server/ai-skills/parse.md +40 -0
  330. package/dist/web/server/assets/{feedSync.worker-CK48nNHX.js → feedSync.worker-O4TGLEj3.js} +7 -7
  331. package/dist/web/server/assets/main-CnNELDQ_.js +1149 -0
  332. package/dist/web/server/assets/main-Vksl1E71.css +2 -0
  333. package/dist/web/server/assets/{statementBuilderFlow-D5c1zwcv.js → statementBuilderFlow-D5uFXVe0.js} +2 -2
  334. package/dist/web/server/assets/{vendor-BiwvmytJ.js → vendor-Dz-Azkoq.js} +69 -69
  335. package/dist/web/server/assets/{vendor-codemirror-B461LMkB.js → vendor-codemirror-B4BeZarI.js} +11 -11
  336. package/dist/web/server/index.html +4 -4
  337. package/dist/web/server/seed/core/chunks/canvas.6ac57ab1.json +1 -0
  338. package/dist/web/server/seed/core/chunks/dashboards.96c1474b.json +1 -0
  339. package/dist/web/server/seed/core/chunks/{efforts.1f14a471.json → efforts.b724fc2b.json} +1 -1
  340. package/dist/web/server/seed/core/chunks/{equipment.3d9eda19.json → equipment.2743295a.json} +1 -1
  341. package/dist/web/server/seed/core/indexes/notebooks/canvas.json +181 -181
  342. package/dist/web/server/seed/core/indexes/notebooks/dashboards.json +17 -17
  343. package/dist/web/server/seed/core/indexes/notebooks/efforts.json +326 -326
  344. package/dist/web/server/seed/core/indexes/notebooks/equipment.json +50 -50
  345. package/dist/web/server/seed/core/manifest.json +31 -31
  346. package/dist/web/server/seed/core/markdown/canvas/ai-first/README.json +1 -1
  347. package/dist/web/server/seed/core/markdown/canvas/guide/README.json +4 -4
  348. package/dist/web/server/seed/core/markdown/canvas/guide/clock.json +1 -1
  349. package/dist/web/server/seed/core/markdown/canvas/guide/dashboards.json +4 -32
  350. package/dist/web/server/seed/core/markdown/canvas/guide/metrics-summaries.json +6 -6
  351. package/dist/web/server/seed/core/markdown/canvas/guide/metrics.json +16 -16
  352. package/dist/web/server/seed/core/markdown/canvas/guide/protocols.json +20 -20
  353. package/dist/web/server/seed/core/markdown/canvas/guide/sessions.json +33 -33
  354. package/dist/web/server/seed/core/markdown/canvas/guide/start.json +11 -11
  355. package/dist/web/server/seed/core/markdown/canvas/guide/structure.json +25 -25
  356. package/dist/web/server/seed/core/markdown/canvas/guide/wql.json +22 -22
  357. package/dist/web/server/seed/core/markdown/canvas/home/sample-script.json +4 -4
  358. package/dist/web/server/seed/core/markdown/canvas/home/welcome-1.json +2 -2
  359. package/dist/web/server/seed/core/markdown/canvas/syntax/actions-comments.json +4 -4
  360. package/dist/web/server/seed/core/markdown/canvas/syntax/alternating-emom.json +5 -5
  361. package/dist/web/server/seed/core/markdown/canvas/syntax/basic-emom.json +4 -4
  362. package/dist/web/server/seed/core/markdown/canvas/syntax/calculated-metrics.json +4 -4
  363. package/dist/web/server/seed/core/markdown/canvas/syntax/classic-amrap.json +6 -6
  364. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-barbell-cycling.json +4 -4
  365. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-full-session.json +10 -10
  366. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-nested-protocols.json +7 -7
  367. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-partner-workout.json +7 -7
  368. package/dist/web/server/seed/core/markdown/canvas/syntax/complex-swimming.json +5 -5
  369. package/dist/web/server/seed/core/markdown/canvas/syntax/core-rules.json +4 -4
  370. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-and-calculated-metrics.json +4 -4
  371. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-intervals.json +4 -4
  372. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-1.json +4 -4
  373. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-2.json +5 -5
  374. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-3.json +3 -3
  375. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-4.json +4 -4
  376. package/dist/web/server/seed/core/markdown/canvas/syntax/custom-metrics-5.json +4 -4
  377. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-bouldering.json +2 -2
  378. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-hangboard.json +2 -2
  379. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-climb-sport.json +2 -2
  380. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-log.json +4 -4
  381. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-plan.json +8 -8
  382. package/dist/web/server/seed/core/markdown/canvas/syntax/dialect-wod.json +5 -5
  383. package/dist/web/server/seed/core/markdown/canvas/syntax/distance-intervals.json +3 -3
  384. package/dist/web/server/seed/core/markdown/canvas/syntax/document-1.json +4 -4
  385. package/dist/web/server/seed/core/markdown/canvas/syntax/document-2.json +5 -5
  386. package/dist/web/server/seed/core/markdown/canvas/syntax/document-3.json +10 -10
  387. package/dist/web/server/seed/core/markdown/canvas/syntax/document-4.json +5 -5
  388. package/dist/web/server/seed/core/markdown/canvas/syntax/effort-notes.json +5 -5
  389. package/dist/web/server/seed/core/markdown/canvas/syntax/frontmatter-summaries.json +4 -4
  390. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-1.json +5 -5
  391. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-2.json +6 -6
  392. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-3.json +3 -3
  393. package/dist/web/server/seed/core/markdown/canvas/syntax/groups-4.json +3 -3
  394. package/dist/web/server/seed/core/markdown/canvas/syntax/longer-duration.json +4 -4
  395. package/dist/web/server/seed/core/markdown/canvas/syntax/longer-intervals.json +4 -4
  396. package/dist/web/server/seed/core/markdown/canvas/syntax/measurements.json +7 -7
  397. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-1.json +5 -5
  398. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-2.json +7 -7
  399. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-3.json +8 -8
  400. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-4.json +6 -6
  401. package/dist/web/server/seed/core/markdown/canvas/syntax/metrics-5.json +5 -5
  402. package/dist/web/server/seed/core/markdown/canvas/syntax/mixed-sections.json +10 -10
  403. package/dist/web/server/seed/core/markdown/canvas/syntax/mixed-timers.json +5 -5
  404. package/dist/web/server/seed/core/markdown/canvas/syntax/multiple-amrap-windows.json +7 -7
  405. package/dist/web/server/seed/core/markdown/canvas/syntax/multiple-sets.json +4 -4
  406. package/dist/web/server/seed/core/markdown/canvas/syntax/named-groups.json +6 -6
  407. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-1.json +6 -6
  408. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-2.json +4 -4
  409. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-3.json +6 -6
  410. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-4.json +3 -3
  411. package/dist/web/server/seed/core/markdown/canvas/syntax/protocols-5.json +4 -4
  412. package/dist/web/server/seed/core/markdown/canvas/syntax/single-movement.json +3 -3
  413. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-1.json +4 -4
  414. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-2.json +5 -5
  415. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-3.json +4 -4
  416. package/dist/web/server/seed/core/markdown/canvas/syntax/supplemental-4.json +4 -4
  417. package/dist/web/server/seed/core/markdown/canvas/syntax/time-cap.json +6 -6
  418. package/dist/web/server/seed/core/markdown/canvas/syntax/timer-modifiers.json +6 -6
  419. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-1.json +6 -6
  420. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-2.json +4 -4
  421. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-3.json +4 -4
  422. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-4.json +4 -4
  423. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-5.json +5 -5
  424. package/dist/web/server/seed/core/markdown/canvas/syntax/timers-rest.json +4 -4
  425. package/dist/web/server/seed/core/markdown/canvas/wql-presets/aggregate-by-effort.json +6 -6
  426. package/dist/web/server/seed/core/markdown/canvas/wql-presets/aggregate-by-week.json +6 -6
  427. package/dist/web/server/seed/core/markdown/canvas/wql-presets/content-fran.json +6 -6
  428. package/dist/web/server/seed/core/markdown/canvas/wql-presets/filter-combos.json +6 -6
  429. package/dist/web/server/seed/core/markdown/canvas/wql-presets/pipes-limit.json +6 -6
  430. package/dist/web/server/seed/core/markdown/canvas/wql-presets/session-rpe.json +6 -6
  431. package/dist/web/server/seed/core/markdown/canvas/wql-presets/source-journal.json +6 -6
  432. package/dist/web/server/seed/core/markdown/canvas/wql-presets/tis-trend.json +6 -6
  433. package/dist/web/server/seed/core/markdown/canvas/wql-presets/where-join.json +6 -6
  434. package/dist/web/server/seed/core/markdown/dashboards/benchmark-pr-board.json +32 -32
  435. package/dist/web/server/seed/core/markdown/dashboards/finger-strength-v8.json +26 -26
  436. package/dist/web/server/seed/core/markdown/dashboards/polarized-base-marathon.json +50 -50
  437. package/dist/web/server/seed/core/markdown/dashboards/recovery-readiness.json +38 -38
  438. package/dist/web/server/seed/core/markdown/dashboards/road-to-560-total.json +50 -50
  439. package/dist/web/server/seed/core/markdown/dashboards/training-block-review.json +62 -62
  440. package/dist/web/server/seed/core/markdown/efforts/bodyweight/air-squat.json +1 -1
  441. package/dist/web/server/seed/core/markdown/efforts/bodyweight/box-jump.json +1 -1
  442. package/dist/web/server/seed/core/markdown/efforts/bodyweight/broad-jump.json +1 -1
  443. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee-box-jump-over.json +1 -1
  444. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee-over-dumbbell.json +1 -1
  445. package/dist/web/server/seed/core/markdown/efforts/bodyweight/burpee.json +1 -1
  446. package/dist/web/server/seed/core/markdown/efforts/bodyweight/dumbbell-squat-clean.json +1 -1
  447. package/dist/web/server/seed/core/markdown/efforts/bodyweight/ghd-sit-up.json +1 -1
  448. package/dist/web/server/seed/core/markdown/efforts/bodyweight/ground-kong.json +1 -1
  449. package/dist/web/server/seed/core/markdown/efforts/bodyweight/jumping-jack.json +1 -1
  450. package/dist/web/server/seed/core/markdown/efforts/bodyweight/kong-walk.json +1 -1
  451. package/dist/web/server/seed/core/markdown/efforts/bodyweight/lunge.json +1 -1
  452. package/dist/web/server/seed/core/markdown/efforts/bodyweight/overhead-squat.json +1 -1
  453. package/dist/web/server/seed/core/markdown/efforts/bodyweight/parkour-roll.json +1 -1
  454. package/dist/web/server/seed/core/markdown/efforts/bodyweight/parkour-squat.json +1 -1
  455. package/dist/web/server/seed/core/markdown/efforts/bodyweight/pistol-squat.json +1 -1
  456. package/dist/web/server/seed/core/markdown/efforts/bodyweight/plank.json +1 -1
  457. package/dist/web/server/seed/core/markdown/efforts/bodyweight/precision-burpee.json +1 -1
  458. package/dist/web/server/seed/core/markdown/efforts/bodyweight/precision-jump.json +1 -1
  459. package/dist/web/server/seed/core/markdown/efforts/bodyweight/quadrupedal-movement.json +1 -1
  460. package/dist/web/server/seed/core/markdown/efforts/bodyweight/russian-twist.json +1 -1
  461. package/dist/web/server/seed/core/markdown/efforts/bodyweight/sit-up.json +1 -1
  462. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-clean.json +1 -1
  463. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-hold.json +1 -1
  464. package/dist/web/server/seed/core/markdown/efforts/bodyweight/squat-snatch.json +1 -1
  465. package/dist/web/server/seed/core/markdown/efforts/bodyweight/tuck-jump.json +1 -1
  466. package/dist/web/server/seed/core/markdown/efforts/bodyweight/wall-ball.json +1 -1
  467. package/dist/web/server/seed/core/markdown/efforts/bodyweight/wall-burpee.json +1 -1
  468. package/dist/web/server/seed/core/markdown/efforts/cycling/assault-bike.json +1 -1
  469. package/dist/web/server/seed/core/markdown/efforts/cycling/cycling-moderate.json +1 -1
  470. package/dist/web/server/seed/core/markdown/efforts/cycling/cycling-vigorous.json +1 -1
  471. package/dist/web/server/seed/core/markdown/efforts/gymnastics/assisted-pull-up.json +1 -1
  472. package/dist/web/server/seed/core/markdown/efforts/gymnastics/burpee-pull-up.json +1 -1
  473. package/dist/web/server/seed/core/markdown/efforts/gymnastics/chest-to-bar-pull-up.json +1 -1
  474. package/dist/web/server/seed/core/markdown/efforts/gymnastics/dip.json +1 -1
  475. package/dist/web/server/seed/core/markdown/efforts/gymnastics/double-under.json +1 -1
  476. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-hold.json +1 -1
  477. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-push-up.json +1 -1
  478. package/dist/web/server/seed/core/markdown/efforts/gymnastics/handstand-walk.json +1 -1
  479. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jump-rope.json +1 -1
  480. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jumping-pull-up.json +1 -1
  481. package/dist/web/server/seed/core/markdown/efforts/gymnastics/jumping-push-up.json +1 -1
  482. package/dist/web/server/seed/core/markdown/efforts/gymnastics/l-sit-pull-up.json +1 -1
  483. package/dist/web/server/seed/core/markdown/efforts/gymnastics/muscle-up.json +1 -1
  484. package/dist/web/server/seed/core/markdown/efforts/gymnastics/pull-up.json +1 -1
  485. package/dist/web/server/seed/core/markdown/efforts/gymnastics/push-up.json +1 -1
  486. package/dist/web/server/seed/core/markdown/efforts/gymnastics/reverse-wall-dip.json +1 -1
  487. package/dist/web/server/seed/core/markdown/efforts/gymnastics/rope-climb.json +1 -1
  488. package/dist/web/server/seed/core/markdown/efforts/gymnastics/toes-to-bar.json +1 -1
  489. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-arm-bar.json +1 -1
  490. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-around-the-world.json +1 -1
  491. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-bent-over-row.json +1 -1
  492. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-jerk.json +1 -1
  493. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean-and-press.json +1 -1
  494. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-clean.json +1 -1
  495. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-deadlift.json +1 -1
  496. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-floor-press.json +1 -1
  497. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-front-squat.json +1 -1
  498. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-goblet-squat.json +1 -1
  499. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-gorilla-row.json +1 -1
  500. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-halo.json +1 -1
  501. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-jerk.json +1 -1
  502. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-overhead-squat.json +1 -1
  503. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-press.json +1 -1
  504. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-snatch.json +1 -1
  505. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-swing.json +1 -1
  506. package/dist/web/server/seed/core/markdown/efforts/kettlebell/kettlebell-windmill.json +1 -1
  507. package/dist/web/server/seed/core/markdown/efforts/kettlebell/turkish-get-up.json +1 -1
  508. package/dist/web/server/seed/core/markdown/efforts/recovery/rest.json +1 -1
  509. package/dist/web/server/seed/core/markdown/efforts/recovery/stretching.json +1 -1
  510. package/dist/web/server/seed/core/markdown/efforts/rowing/rowing-sprint.json +1 -1
  511. package/dist/web/server/seed/core/markdown/efforts/rowing/rowing.json +1 -1
  512. package/dist/web/server/seed/core/markdown/efforts/rowing/ski-erg.json +1 -1
  513. package/dist/web/server/seed/core/markdown/efforts/running/backward-running.json +1 -1
  514. package/dist/web/server/seed/core/markdown/efforts/running/running-6-mph.json +1 -1
  515. package/dist/web/server/seed/core/markdown/efforts/running/running-8-mph.json +1 -1
  516. package/dist/web/server/seed/core/markdown/efforts/running/running-sprint.json +1 -1
  517. package/dist/web/server/seed/core/markdown/efforts/snatch.json +2 -2
  518. package/dist/web/server/seed/core/markdown/efforts/strength/back-squat.json +1 -1
  519. package/dist/web/server/seed/core/markdown/efforts/strength/bench-press.json +1 -1
  520. package/dist/web/server/seed/core/markdown/efforts/strength/box-step-up.json +1 -1
  521. package/dist/web/server/seed/core/markdown/efforts/strength/carioca.json +1 -1
  522. package/dist/web/server/seed/core/markdown/efforts/strength/clean-and-jerk.json +1 -1
  523. package/dist/web/server/seed/core/markdown/efforts/strength/cluster.json +1 -1
  524. package/dist/web/server/seed/core/markdown/efforts/strength/dead-hang.json +1 -1
  525. package/dist/web/server/seed/core/markdown/efforts/strength/deadlift.json +1 -1
  526. package/dist/web/server/seed/core/markdown/efforts/strength/devils-press.json +1 -1
  527. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-box-step-up.json +1 -1
  528. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-clean.json +1 -1
  529. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-fly.json +1 -1
  530. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-row.json +1 -1
  531. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-snatch.json +1 -1
  532. package/dist/web/server/seed/core/markdown/efforts/strength/dumbbell-thruster.json +1 -1
  533. package/dist/web/server/seed/core/markdown/efforts/strength/elbows-to-knees.json +1 -1
  534. package/dist/web/server/seed/core/markdown/efforts/strength/farmer-carry.json +1 -1
  535. package/dist/web/server/seed/core/markdown/efforts/strength/frog-stand.json +1 -1
  536. package/dist/web/server/seed/core/markdown/efforts/strength/front-squat.json +1 -1
  537. package/dist/web/server/seed/core/markdown/efforts/strength/good-morning.json +1 -1
  538. package/dist/web/server/seed/core/markdown/efforts/strength/hanging-leg-raise.json +1 -1
  539. package/dist/web/server/seed/core/markdown/efforts/strength/hollow-rock.json +1 -1
  540. package/dist/web/server/seed/core/markdown/efforts/strength/knees-to-elbows.json +1 -1
  541. package/dist/web/server/seed/core/markdown/efforts/strength/l-sit.json +1 -1
  542. package/dist/web/server/seed/core/markdown/efforts/strength/man-maker.json +1 -1
  543. package/dist/web/server/seed/core/markdown/efforts/strength/medicine-ball-clean.json +1 -1
  544. package/dist/web/server/seed/core/markdown/efforts/strength/overhead-press.json +1 -1
  545. package/dist/web/server/seed/core/markdown/efforts/strength/parkour-vault.json +1 -1
  546. package/dist/web/server/seed/core/markdown/efforts/strength/pig-flip.json +1 -1
  547. package/dist/web/server/seed/core/markdown/efforts/strength/power-clean.json +1 -1
  548. package/dist/web/server/seed/core/markdown/efforts/strength/power-snatch.json +1 -1
  549. package/dist/web/server/seed/core/markdown/efforts/strength/push-jerk.json +1 -1
  550. package/dist/web/server/seed/core/markdown/efforts/strength/push-press.json +1 -1
  551. package/dist/web/server/seed/core/markdown/efforts/strength/romanian-deadlift.json +1 -1
  552. package/dist/web/server/seed/core/markdown/efforts/strength/single-leg-deadlift.json +1 -1
  553. package/dist/web/server/seed/core/markdown/efforts/strength/skull-crusher.json +1 -1
  554. package/dist/web/server/seed/core/markdown/efforts/strength/slam-ball.json +1 -1
  555. package/dist/web/server/seed/core/markdown/efforts/strength/sled-pull.json +1 -1
  556. package/dist/web/server/seed/core/markdown/efforts/strength/sled-push.json +1 -1
  557. package/dist/web/server/seed/core/markdown/efforts/strength/sumo-deadlift.json +1 -1
  558. package/dist/web/server/seed/core/markdown/efforts/strength/thruster.json +1 -1
  559. package/dist/web/server/seed/core/markdown/efforts/strength/triceps-extension.json +1 -1
  560. package/dist/web/server/seed/core/markdown/efforts/strength/v-sit-hold.json +1 -1
  561. package/dist/web/server/seed/core/markdown/efforts/strength/wall-walk.json +1 -1
  562. package/dist/web/server/seed/core/markdown/efforts/strength/yoga-sun-salutation.json +1 -1
  563. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-assisted-sprint.json +1 -1
  564. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-backstroke.json +1 -1
  565. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-breaststroke-kick.json +1 -1
  566. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-breaststroke.json +1 -1
  567. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-butterfly.json +1 -1
  568. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-catch-up-drill.json +1 -1
  569. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-choice-stroke.json +1 -1
  570. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-dive-start.json +1 -1
  571. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-dolphin-kick.json +1 -1
  572. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-drafting.json +1 -1
  573. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-fingertip-drag.json +1 -1
  574. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-freestyle.json +1 -1
  575. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-individual-medley.json +1 -1
  576. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-kick.json +1 -1
  577. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-pull.json +1 -1
  578. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-resisted-sprint.json +1 -1
  579. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-rotation-drill.json +1 -1
  580. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-sighting.json +1 -1
  581. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-single-arm-drill.json +1 -1
  582. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-stroke-transition.json +1 -1
  583. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-two-kick-one-pull.json +1 -1
  584. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming-vigorous.json +1 -1
  585. package/dist/web/server/seed/core/markdown/efforts/swimming/swimming.json +1 -1
  586. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-arm-cast.json +1 -1
  587. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-circles.json +1 -1
  588. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-mill.json +1 -1
  589. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-reverse-mill.json +1 -1
  590. package/dist/web/server/seed/core/markdown/efforts/unconventional/clubbell-shield-cast.json +1 -1
  591. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-10-to-2-swing.json +1 -1
  592. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-360-swing.json +1 -1
  593. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-barbarian-squat.json +1 -1
  594. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-flow.json +1 -1
  595. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-gravedigger.json +1 -1
  596. package/dist/web/server/seed/core/markdown/efforts/unconventional/macebell-touchdown.json +1 -1
  597. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-carry.json +1 -1
  598. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-bear-hug-extension.json +1 -1
  599. package/dist/web/server/seed/core/markdown/efforts/unconventional/sandbag-over-shoulder.json +1 -1
  600. package/dist/web/server/seed/core/markdown/efforts/walking/walking-3-mph.json +1 -1
  601. package/dist/web/server/seed/core/markdown/equipment/air-bike.json +1 -1
  602. package/dist/web/server/seed/core/markdown/equipment/barbell.json +1 -1
  603. package/dist/web/server/seed/core/markdown/equipment/bench.json +1 -1
  604. package/dist/web/server/seed/core/markdown/equipment/bike-erg.json +1 -1
  605. package/dist/web/server/seed/core/markdown/equipment/climbing-rope.json +1 -1
  606. package/dist/web/server/seed/core/markdown/equipment/clubs.json +1 -1
  607. package/dist/web/server/seed/core/markdown/equipment/dumbbell.json +1 -1
  608. package/dist/web/server/seed/core/markdown/equipment/ghd.json +1 -1
  609. package/dist/web/server/seed/core/markdown/equipment/gymnastic-rings.json +1 -1
  610. package/dist/web/server/seed/core/markdown/equipment/jump-rope.json +1 -1
  611. package/dist/web/server/seed/core/markdown/equipment/kettlebell.json +1 -1
  612. package/dist/web/server/seed/core/markdown/equipment/macebell.json +1 -1
  613. package/dist/web/server/seed/core/markdown/equipment/medicine-ball.json +1 -1
  614. package/dist/web/server/seed/core/markdown/equipment/parallettes.json +1 -1
  615. package/dist/web/server/seed/core/markdown/equipment/plyo-box.json +1 -1
  616. package/dist/web/server/seed/core/markdown/equipment/pull-up-bar.json +1 -1
  617. package/dist/web/server/seed/core/markdown/equipment/rower.json +1 -1
  618. package/dist/web/server/seed/core/markdown/equipment/sandbag.json +1 -1
  619. package/dist/web/server/seed/core/markdown/equipment/ski-erg.json +1 -1
  620. package/dist/web/server/seed/core/markdown/equipment/slam-ball.json +1 -1
  621. package/dist/web/server/seed/core/markdown/equipment/sled.json +1 -1
  622. package/dist/web/server/seed/core/markdown/equipment/sledgehammer.json +1 -1
  623. package/dist/web/server/seed/core/markdown/equipment/weight-vest.json +1 -1
  624. package/dist/web/server/seed/core/report.html +13 -13
  625. package/package.json +6 -6
  626. package/dist/chunk-L5S7PXAB.mjs.map +0 -1
  627. package/dist/chunk-QAPPKPCL.mjs.map +0 -1
  628. package/dist/chunk-V23POHG2.mjs.map +0 -1
  629. package/dist/chunk-V7EGHQAY.mjs.map +0 -1
  630. package/dist/chunk-Z2IQPTDI.mjs.map +0 -1
  631. package/dist/chunk-ZUZMRH3G.mjs.map +0 -1
  632. package/dist/compiler-TOM2S2RL.mjs +0 -9
  633. package/dist/compiler-TOM2S2RL.mjs.map +0 -1
  634. package/dist/server-QK2CXCDJ.mjs +0 -11
  635. package/dist/web/playground/assets/main-CRhUHzsM.js +0 -499
  636. package/dist/web/playground/assets/main-Dq1wHl4y.css +0 -2
  637. package/dist/web/playground/seed/core/chunks/canvas.ed613b72.json +0 -1
  638. package/dist/web/playground/seed/core/chunks/dashboards.d1732e3d.json +0 -1
  639. package/dist/web/server/assets/main-DYNiJfcz.js +0 -499
  640. package/dist/web/server/assets/main-Dq1wHl4y.css +0 -2
  641. package/dist/web/server/seed/core/chunks/canvas.ed613b72.json +0 -1
  642. package/dist/web/server/seed/core/chunks/dashboards.d1732e3d.json +0 -1
@@ -3,10 +3,10 @@
3
3
  "label": "Equipment",
4
4
  "indexPath": "indexes/notebooks/equipment.json",
5
5
  "version": 1,
6
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
7
- "updatedAt": "2026-11-05T17:34:25-05:00",
8
- "builtAt": "2026-11-05T22:36:29.258Z",
9
- "sha256": "3d9eda1907b000f5eae1b9d90a290b275da508ca1d2d119efd123ca84b887af6",
6
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
7
+ "updatedAt": "2026-11-11T10:07:21-05:00",
8
+ "builtAt": "2026-11-11T15:09:36.482Z",
9
+ "sha256": "2743295ae50b61f3802961b7a8859b14e11b72f52d3c3927c1d78a21c863dd33",
10
10
  "bytes": 15562,
11
11
  "count": 23,
12
12
  "records": [
@@ -14,207 +14,207 @@
14
14
  "uuid": "eb26361e-fd14-50e5-94dc-5b860051203d",
15
15
  "path": "markdown/equipment/air-bike.md",
16
16
  "recordPath": "markdown/equipment/air-bike.json",
17
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
17
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
18
18
  "version": 1,
19
- "sha256": "8a9471699950fba326fb343ef2487a17ef2e19bc068c7a81571402fea6c62212",
19
+ "sha256": "34d0238b6b8365b7f38b9cee80689ee35b82fcfaf711bc8736979a1e51d3d20d",
20
20
  "title": "Air Bike"
21
21
  },
22
22
  {
23
23
  "uuid": "9278cedb-7465-5085-8703-920cee21d84f",
24
24
  "path": "markdown/equipment/barbell.md",
25
25
  "recordPath": "markdown/equipment/barbell.json",
26
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
26
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
27
27
  "version": 1,
28
- "sha256": "66d60b9e9f487123af97664d50871911b49048ee821b8c17ba47bc56bfc22692",
28
+ "sha256": "f292eb1a70c3be6a25ff4bd40eeebcca765e87f8d168e2346b8accc410fb53d3",
29
29
  "title": "Barbell"
30
30
  },
31
31
  {
32
32
  "uuid": "a1bfcd6f-74d0-52d8-8afd-108fd6b34d48",
33
33
  "path": "markdown/equipment/bench.md",
34
34
  "recordPath": "markdown/equipment/bench.json",
35
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
35
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
36
36
  "version": 1,
37
- "sha256": "199732bee922153dd17848151b6275cdcdf68703b83c1de6a7f3ee05eca0d8ac",
37
+ "sha256": "471ab3808b58beb21c31a4c50693116c10c8f369516cb34ba0d3a9716134330f",
38
38
  "title": "Bench"
39
39
  },
40
40
  {
41
41
  "uuid": "b724b3cd-e1eb-52aa-a8d9-cf48718b0068",
42
42
  "path": "markdown/equipment/bike-erg.md",
43
43
  "recordPath": "markdown/equipment/bike-erg.json",
44
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
44
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
45
45
  "version": 1,
46
- "sha256": "a74aa0535b5cfa46c1f6fac8992d9d331758565e306d0709f6cc035f48c53478",
46
+ "sha256": "fc04b2353cad06cc8526b1aa9ee269e3aed546f3d0885ed0b82ecf68e62963a2",
47
47
  "title": "Bike Erg"
48
48
  },
49
49
  {
50
50
  "uuid": "5ffcaf13-95d6-5efb-84ce-168f60b8bf52",
51
51
  "path": "markdown/equipment/climbing-rope.md",
52
52
  "recordPath": "markdown/equipment/climbing-rope.json",
53
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
53
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
54
54
  "version": 1,
55
- "sha256": "0a9b956fde0f7b58bb323e1328dbda35022b621559bf9616a38dac085855a135",
55
+ "sha256": "0cf445ca35946399351802b6040423b0ad300d81068e1efbaecdd58b0e396a7b",
56
56
  "title": "Climbing Rope"
57
57
  },
58
58
  {
59
59
  "uuid": "2a8fcae8-8e2f-5bd1-aa0e-6e0c6e577111",
60
60
  "path": "markdown/equipment/clubs.md",
61
61
  "recordPath": "markdown/equipment/clubs.json",
62
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
62
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
63
63
  "version": 1,
64
- "sha256": "49efc8c125d89fe5ebaeb2ad24a58850e264c39e135d2235011652ba9459bf30",
64
+ "sha256": "8650d71258c10c2b23bc221341a565cbdd747425802eca99200db48883920de4",
65
65
  "title": "Clubs"
66
66
  },
67
67
  {
68
68
  "uuid": "297503ce-a9a0-5fcf-9016-2b5820bd5b25",
69
69
  "path": "markdown/equipment/dumbbell.md",
70
70
  "recordPath": "markdown/equipment/dumbbell.json",
71
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
71
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
72
72
  "version": 1,
73
- "sha256": "6a33a32635c5204ac75092be6ce5b5f92ab3c0ca9db9d4b5fcf54773f4318dcf",
73
+ "sha256": "847ce4de12c36100d5d56b775b5a21b20c908d9fd3b5a2e439d64d876a1dd94d",
74
74
  "title": "Dumbbell"
75
75
  },
76
76
  {
77
77
  "uuid": "7d8d6ef9-22d6-5145-9d63-55f4ed0cd1df",
78
78
  "path": "markdown/equipment/ghd.md",
79
79
  "recordPath": "markdown/equipment/ghd.json",
80
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
80
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
81
81
  "version": 1,
82
- "sha256": "3e2ac895d8c086ce2825cf1400da9d362f6a4bedcba5da09e1ed77e390cf6433",
82
+ "sha256": "f9e55b40dc454ec49a36982cce4d983a911845216c9d38f48997476946d64ec1",
83
83
  "title": "Ghd"
84
84
  },
85
85
  {
86
86
  "uuid": "71f9f6d5-fb47-596a-bca2-3c648bb8aad1",
87
87
  "path": "markdown/equipment/gymnastic-rings.md",
88
88
  "recordPath": "markdown/equipment/gymnastic-rings.json",
89
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
89
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
90
90
  "version": 1,
91
- "sha256": "cacef9be5382dd7b98c1008d82f2888b9c8cb2163b0282b32da7fb4808092f17",
91
+ "sha256": "c5062e5e06eb625ea82bdaf7706b299ac13b4fb001cffc7453af8e42b71b2cd7",
92
92
  "title": "Gymnastic Rings"
93
93
  },
94
94
  {
95
95
  "uuid": "f991b73a-f466-59e5-b318-e2362953b635",
96
96
  "path": "markdown/equipment/jump-rope.md",
97
97
  "recordPath": "markdown/equipment/jump-rope.json",
98
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
98
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
99
99
  "version": 1,
100
- "sha256": "ce2fc63a578f96fbbc76179fd9a6fa677df1e628ec84798d8b99ec3aaa00afb2",
100
+ "sha256": "2b180d85ef3b93a7ec8c2d496580541b75952b710861d5e3d9d1f8a6ef13d8ff",
101
101
  "title": "Jump Rope"
102
102
  },
103
103
  {
104
104
  "uuid": "4a4ab1ea-9510-5a11-b113-764b1d799d2c",
105
105
  "path": "markdown/equipment/kettlebell.md",
106
106
  "recordPath": "markdown/equipment/kettlebell.json",
107
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
107
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
108
108
  "version": 1,
109
- "sha256": "3b644d700c181829251b265025d83fdac5b9e72d558de103638edd131fa5d972",
109
+ "sha256": "7171ed055bdb6e547e650c44a1d00713ec44026f59b39acd55325f68e1634131",
110
110
  "title": "Kettlebell"
111
111
  },
112
112
  {
113
113
  "uuid": "87fb4da5-0bec-58b8-b969-9caf3a991c7e",
114
114
  "path": "markdown/equipment/macebell.md",
115
115
  "recordPath": "markdown/equipment/macebell.json",
116
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
116
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
117
117
  "version": 1,
118
- "sha256": "40aa2e01eee9d37267887e352c7302e48d6062886dfbf958299a093216d791a1",
118
+ "sha256": "e620c74ea07644c464301676df636ebb59f7443876c0fb35699f3b17fe887538",
119
119
  "title": "Macebell"
120
120
  },
121
121
  {
122
122
  "uuid": "3300c680-ceff-5020-8594-272f6d13739e",
123
123
  "path": "markdown/equipment/medicine-ball.md",
124
124
  "recordPath": "markdown/equipment/medicine-ball.json",
125
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
125
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
126
126
  "version": 1,
127
- "sha256": "05b954c969c50442be42144d3c092f27d39e4f2775d8c4d453c1561c2a52c4f2",
127
+ "sha256": "bf7ff8738aaf66cbb560fbb04c078bdfa5e24cebe05bde034714be61bb708113",
128
128
  "title": "Medicine Ball"
129
129
  },
130
130
  {
131
131
  "uuid": "cf1e38ba-2ef4-57e8-ba5e-3e69c2ebfeb4",
132
132
  "path": "markdown/equipment/parallettes.md",
133
133
  "recordPath": "markdown/equipment/parallettes.json",
134
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
134
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
135
135
  "version": 1,
136
- "sha256": "e5f6be426294aca3068ab39e33f639ca52afab351713fb6dd0381a2a2b0a5675",
136
+ "sha256": "4486645ceace06e923db65f2d5360142017c3cf2645dc90b7c836fdef21074e3",
137
137
  "title": "Parallettes"
138
138
  },
139
139
  {
140
140
  "uuid": "9c2dcbca-4ece-5198-9a30-54cd5020ec0a",
141
141
  "path": "markdown/equipment/plyo-box.md",
142
142
  "recordPath": "markdown/equipment/plyo-box.json",
143
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
143
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
144
144
  "version": 1,
145
- "sha256": "08f28ffb1b8c7a7bdd267de1d845cb65c0337f4fda99b3c652106c140b0d2318",
145
+ "sha256": "aee7c264351a25e2a587103670ddf72899d38ebb278d30f5bd3d74eddf3b1b3e",
146
146
  "title": "Plyo Box"
147
147
  },
148
148
  {
149
149
  "uuid": "9eabd205-7f75-5c5c-af83-a96b2fad8e48",
150
150
  "path": "markdown/equipment/pull-up-bar.md",
151
151
  "recordPath": "markdown/equipment/pull-up-bar.json",
152
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
152
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
153
153
  "version": 1,
154
- "sha256": "0561f4972fa00c616f657f9058bf51b511511bfe155fe2039786c919eba5cf91",
154
+ "sha256": "2f8fe8160f9bc25bd6177dfd19a908249223447122742d5996df21daccb010a0",
155
155
  "title": "Pull Up Bar"
156
156
  },
157
157
  {
158
158
  "uuid": "83c1db35-42f3-5fd2-aabc-79450b6326ee",
159
159
  "path": "markdown/equipment/rower.md",
160
160
  "recordPath": "markdown/equipment/rower.json",
161
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
161
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
162
162
  "version": 1,
163
- "sha256": "078e7de12d759cf5fdec6a1114861ad3e9896ff6dc9c5501720fc21dc5c3452b",
163
+ "sha256": "f65ac5d14f2060fe0e7b0e00b3bf9d934dd6ce471e2fbed6207005b20613f9f7",
164
164
  "title": "Rower"
165
165
  },
166
166
  {
167
167
  "uuid": "37619ae9-d203-5a1c-b7a1-49598febd056",
168
168
  "path": "markdown/equipment/sandbag.md",
169
169
  "recordPath": "markdown/equipment/sandbag.json",
170
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
170
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
171
171
  "version": 1,
172
- "sha256": "e998077509459a96f081007dfa852bc356c7290ac86c35e55c01cb51ece22439",
172
+ "sha256": "80009c372885f37a980fb3ed40f7dce5712d1c88cb3bc71d15c5c1ca60b51bc0",
173
173
  "title": "Sandbag"
174
174
  },
175
175
  {
176
176
  "uuid": "bd36b2b4-30da-516b-9e9a-8084b995d602",
177
177
  "path": "markdown/equipment/ski-erg.md",
178
178
  "recordPath": "markdown/equipment/ski-erg.json",
179
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
179
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
180
180
  "version": 1,
181
- "sha256": "c4e0423be8f03558599e8609de6424a787a513c5adef6aed8e45f4ba2cde00fd",
181
+ "sha256": "ea2824dda6b10492f5d281bfdf0b43231db18b09d6b081c4ea1d09353878117e",
182
182
  "title": "Ski Erg"
183
183
  },
184
184
  {
185
185
  "uuid": "52785555-85fd-55bb-b102-8b99648c7a99",
186
186
  "path": "markdown/equipment/slam-ball.md",
187
187
  "recordPath": "markdown/equipment/slam-ball.json",
188
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
188
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
189
189
  "version": 1,
190
- "sha256": "488e1d7df94a4c7794b07874f81707d6ed878a88e9b102c6ce4bfb8ec347e49d",
190
+ "sha256": "37b9728cf60288f3ab95663dca5d2289d57a91c0196bdea40c8d742716973d35",
191
191
  "title": "Slam Ball"
192
192
  },
193
193
  {
194
194
  "uuid": "fa15a47a-f3d1-59bb-a36d-2081d0c79f3c",
195
195
  "path": "markdown/equipment/sled.md",
196
196
  "recordPath": "markdown/equipment/sled.json",
197
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
197
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
198
198
  "version": 1,
199
- "sha256": "8f13489342e32e8d5d807aa370fedb5391fe9c1e2864fb896a3fb8e141f4080a",
199
+ "sha256": "c9aa8575e369c0392f6557d5fce2d244e3a1d78fe6039fa2c3555374870497ec",
200
200
  "title": "Sled"
201
201
  },
202
202
  {
203
203
  "uuid": "e866df40-1523-56a0-a8d3-b16e3eccd7b6",
204
204
  "path": "markdown/equipment/sledgehammer.md",
205
205
  "recordPath": "markdown/equipment/sledgehammer.json",
206
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
206
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
207
207
  "version": 1,
208
- "sha256": "c5191edbd08a4fe938d5f035bb024588b72b0e1c2116b55b63f720a7695752fa",
208
+ "sha256": "fd97868dacabfd1b85d1588b7c3678df6f14dc0f1fdc4662a118aa2b6a1fc3c3",
209
209
  "title": "Sledgehammer"
210
210
  },
211
211
  {
212
212
  "uuid": "4684877b-8752-582d-a45c-fff8982e8a0d",
213
213
  "path": "markdown/equipment/weight-vest.md",
214
214
  "recordPath": "markdown/equipment/weight-vest.json",
215
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
215
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
216
216
  "version": 1,
217
- "sha256": "2e9c4fff3e66616bbbc117b2cc6a1d95cd658ea2e747c0c98a18395b21df4143",
217
+ "sha256": "270a3925a621b1ea3e180b5c4a36a101fb55e8ede316ad6c49018b897b9b0082",
218
218
  "title": "Weight Vest"
219
219
  }
220
220
  ]
@@ -4,36 +4,36 @@
4
4
  "repositoryUrl": "https://github.com/bitcobblers/wod-wiki",
5
5
  "schema": 9,
6
6
  "version": 1,
7
- "versionLabel": "79e6e99-dirty",
8
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
7
+ "versionLabel": "15e2fcb-dirty",
8
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
9
9
  "dirty": true,
10
- "builtAt": "2026-11-05T22:36:29.258Z",
10
+ "builtAt": "2026-11-11T15:09:36.482Z",
11
11
  "chunks": [
12
12
  {
13
13
  "id": "canvas",
14
- "path": "chunks/canvas.ed613b72.json",
15
- "sha256": "ed613b72eb56c12c24a32e458d1552ce48a66aadf690e137f30c9b97d8424fc1",
16
- "bytes": 310379,
14
+ "path": "chunks/canvas.6ac57ab1.json",
15
+ "sha256": "6ac57ab106b3a390e3aeb282e749cb8d0df831bfbc6f6a02824c03c7b90692f9",
16
+ "bytes": 311236,
17
17
  "count": 88
18
18
  },
19
19
  {
20
20
  "id": "dashboards",
21
- "path": "chunks/dashboards.d1732e3d.json",
22
- "sha256": "d1732e3dc8f9cce5746863131319af3b7a0b4ee366fc45f590509abe56126b14",
23
- "bytes": 37940,
21
+ "path": "chunks/dashboards.96c1474b.json",
22
+ "sha256": "96c1474b3a7f4ba345e48380086f49d357af6551441f897ffb7355c3f3271150",
23
+ "bytes": 42685,
24
24
  "count": 6
25
25
  },
26
26
  {
27
27
  "id": "efforts",
28
- "path": "chunks/efforts.1f14a471.json",
29
- "sha256": "1f14a471d301c4f9e25ad6cbdbb413b46a239136b838709c67e774b7425942f5",
28
+ "path": "chunks/efforts.b724fc2b.json",
29
+ "sha256": "b724fc2b2c81c86b619c615c5c70cde45f81613405f8fc61a9650730420aa89d",
30
30
  "bytes": 88566,
31
31
  "count": 161
32
32
  },
33
33
  {
34
34
  "id": "equipment",
35
- "path": "chunks/equipment.3d9eda19.json",
36
- "sha256": "3d9eda1907b000f5eae1b9d90a290b275da508ca1d2d119efd123ca84b887af6",
35
+ "path": "chunks/equipment.2743295a.json",
36
+ "sha256": "2743295ae50b61f3802961b7a8859b14e11b72f52d3c3927c1d78a21c863dd33",
37
37
  "bytes": 15562,
38
38
  "count": 23
39
39
  }
@@ -44,11 +44,11 @@
44
44
  "label": "Canvas",
45
45
  "indexPath": "indexes/notebooks/canvas.json",
46
46
  "version": 1,
47
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
48
- "updatedAt": "2026-11-05T17:34:25-05:00",
49
- "builtAt": "2026-11-05T22:36:29.258Z",
50
- "sha256": "ed613b72eb56c12c24a32e458d1552ce48a66aadf690e137f30c9b97d8424fc1",
51
- "bytes": 310379,
47
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
48
+ "updatedAt": "2026-11-11T10:07:21-05:00",
49
+ "builtAt": "2026-11-11T15:09:36.482Z",
50
+ "sha256": "6ac57ab106b3a390e3aeb282e749cb8d0df831bfbc6f6a02824c03c7b90692f9",
51
+ "bytes": 311236,
52
52
  "count": 88
53
53
  },
54
54
  {
@@ -56,11 +56,11 @@
56
56
  "label": "Dashboards",
57
57
  "indexPath": "indexes/notebooks/dashboards.json",
58
58
  "version": 1,
59
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
60
- "updatedAt": "2026-11-05T17:34:25-05:00",
61
- "builtAt": "2026-11-05T22:36:29.258Z",
62
- "sha256": "d1732e3dc8f9cce5746863131319af3b7a0b4ee366fc45f590509abe56126b14",
63
- "bytes": 37940,
59
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
60
+ "updatedAt": "2026-11-11T10:07:21-05:00",
61
+ "builtAt": "2026-11-11T15:09:36.482Z",
62
+ "sha256": "96c1474b3a7f4ba345e48380086f49d357af6551441f897ffb7355c3f3271150",
63
+ "bytes": 42685,
64
64
  "count": 6
65
65
  },
66
66
  {
@@ -68,10 +68,10 @@
68
68
  "label": "Efforts",
69
69
  "indexPath": "indexes/notebooks/efforts.json",
70
70
  "version": 1,
71
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
72
- "updatedAt": "2026-11-05T17:34:25-05:00",
73
- "builtAt": "2026-11-05T22:36:29.258Z",
74
- "sha256": "1f14a471d301c4f9e25ad6cbdbb413b46a239136b838709c67e774b7425942f5",
71
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
72
+ "updatedAt": "2026-11-11T10:07:21-05:00",
73
+ "builtAt": "2026-11-11T15:09:36.482Z",
74
+ "sha256": "b724fc2b2c81c86b619c615c5c70cde45f81613405f8fc61a9650730420aa89d",
75
75
  "bytes": 88566,
76
76
  "count": 161
77
77
  },
@@ -80,10 +80,10 @@
80
80
  "label": "Equipment",
81
81
  "indexPath": "indexes/notebooks/equipment.json",
82
82
  "version": 1,
83
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
84
- "updatedAt": "2026-11-05T17:34:25-05:00",
85
- "builtAt": "2026-11-05T22:36:29.258Z",
86
- "sha256": "3d9eda1907b000f5eae1b9d90a290b275da508ca1d2d119efd123ca84b887af6",
83
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
84
+ "updatedAt": "2026-11-11T10:07:21-05:00",
85
+ "builtAt": "2026-11-11T15:09:36.482Z",
86
+ "sha256": "2743295ae50b61f3802961b7a8859b14e11b72f52d3c3927c1d78a21c863dd33",
87
87
  "bytes": 15562,
88
88
  "count": 23
89
89
  }
@@ -5,7 +5,7 @@
5
5
  "blockIndex": [],
6
6
  "blockEfforts": [],
7
7
  "blockEquipment": [],
8
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
8
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
9
9
  "uuid": "a5c37d48-73da-5e5d-b0e3-53f08dce0fe8",
10
10
  "version": 1
11
11
  }
@@ -26,7 +26,7 @@
26
26
  "blockContentId": "bc-86bf9888",
27
27
  "rawContent": "```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```",
28
28
  "noteTitle": "Overview",
29
- "createdAt": 1793918065000,
29
+ "createdAt": 1794409641000,
30
30
  "isStatic": true,
31
31
  "sourceId": "guides:guide/README",
32
32
  "sourcePath": "markdown/canvas/guide/README.md"
@@ -41,7 +41,7 @@
41
41
  "effortSlug": "kettlebell-swing",
42
42
  "isStatic": true,
43
43
  "sourcePath": "markdown/canvas/guide/README.md",
44
- "createdAt": 1793918065000
44
+ "createdAt": 1794409641000
45
45
  }
46
46
  ],
47
47
  "blockEquipment": [
@@ -53,10 +53,10 @@
53
53
  "equipmentSlug": "kettlebell",
54
54
  "isStatic": true,
55
55
  "sourcePath": "markdown/canvas/guide/README.md",
56
- "createdAt": 1793918065000
56
+ "createdAt": 1794409641000
57
57
  }
58
58
  ],
59
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
59
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
60
60
  "uuid": "13ff30e0-4a1b-5ec4-ba59-28bdfd3c7ae5",
61
61
  "version": 1
62
62
  }
@@ -5,7 +5,7 @@
5
5
  "blockIndex": [],
6
6
  "blockEfforts": [],
7
7
  "blockEquipment": [],
8
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
8
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
9
9
  "uuid": "905f9253-fa20-58cb-8447-6cb534e34a09",
10
10
  "version": 1
11
11
  }
@@ -1,39 +1,11 @@
1
1
  {
2
2
  "path": "markdown/canvas/guide/dashboards.md",
3
- "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /page/guide-dashboards\ntype: guide\ntitle: \"Dashboards & Cookbook\"\ndescription: \"Dashboards are notes with query widgets — frontmatter tokens, widget fences, and the composer.\"\n---\n\n# Dashboards & Cookbook {sticky dark full-bleed}\n\nA dashboard is **just a note**: mark it `dashboard: true`, and every in-note query block becomes a widget on one grid. The panel on the right has the real Training Block Review board loaded — its ```query blocks render live results right in the sandbox, and you can edit a query without touching the seeded board.\n\n```view\nname: sandbox\nstate: note\nsource: dashboards/training-block-review.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## The note is the dashboard {#note-frontmatter}\n\nThe real board is already loaded in the sandbox.\n\n````markdown\n---\ntitle: Training Block Review\ndashboard: true\ndashboard.weeks: 16\n---\n\n## Avg TIS\nHow hard are sessions?\n\n```query:value\navg:tis{}\n```\n\n## Weekly tonnage\nIs volume rising?\n\n```query:timeseries-2\nsum:totalVolume{} by {week}\n```\n````\n\nThree conventions:\n\n- The **heading above a block** is the widget title.\n- The **paragraph directly above a block** is its question/subtitle.\n- `dashboard.weeks`, `dashboard.intensity: [low, moderate, high]`, or any `dashboard.<name>` value in frontmatter becomes a **token control** referenced as `$name` — `$weeks`, `$intensity`. List tokens render as segmented controls; unknown token references produce a visible refusal, never a silent blank.\n\n## Widget types and spans {#widgets}\n\n```button\nlabel: Try it: Benchmark PR board\ntarget: sandbox\npipeline:\n - set-source: dashboards/benchmark-pr-board.md\n```\n\nThe fence tag carries type and grid span (`query:<type>[-<1..4>|-full]`); a bare ```query defaults to `table`. Grid is 4 columns wide.\n\n| Tag | Widget |\n|---|---|\n| ```query | table (default) |\n| ```query:list / ```query:value | list / single big number |\n| ```query:timeseries / ```query:timeseries-2 / ```query:timeseries-4 | line over time, 1/2/4 columns |\n| ```query:bar / ```query:stacked-bar | bars / stacked bars |\n| ```query:toplist | ranked rows |\n| ```query:goal-rings / ```query:zone-distribution | progress rings / zone split |\n\nThe block body is **one WQL line** — everything from [the WQL chapter](/page/guide-wql?h=aggregate) works, including tokens:\n\n```query\nsum:sessionLoad{intensity:$intensity} by {week}\n```\n\nWellness data comes from a capture fence in any note — wellness keys are plain properties, one per line:\n\n```wellness\nsoreness: 7\nsleep: 7.5h\nhrv: 62\n```\n\nCapture those daily and boards like Recovery Readiness light up ([what feeds `calc.readiness`](/page/guide-metrics?h=calculated)).\n\n## Compose, inspect, clone {#composer}\n\n- **Vault boards** (`/dashboard/<your-note>`) are yours: add, edit, duplicate, reorder, and resize widgets in place; concurrent-edit guards refuse lost writes visibly.\n- **Prebuilt boards** are read-only, but **Inspect** shows any widget's query with a live preview, and **Clone to vault** copies the whole board into your journal to edit.\n- The widget composer is the same three steps for both: pick the **dataset** (a WQL line), the **calculation** (aggregator/metric/filters/window via the composer pills), and the **visualization** (type + span) — preview executes against your live journal with your range and kg/lb preferences.\n- Empty journal? Widgets stay honest with a sample-data prompt instead of fake numbers.\n\n## Cookbook {#cookbook}\n\nCopy-paste queries (paste into a ```query block, or straight into the Explorer):\n\n| Question | Query |\n|---|---|\n| Weekly strength volume | `sum:totalVolume{discipline:strength} by {week}` |\n| Top volume movements | `sum:totalVolume{} by {effort}` |\n| TIS trend | `avg:tis{} by {week}` |\n| Acute:chronic load | `avg:calc.acwr{}` |\n| Find benchmark notes | `:note{effort:fran,source:notebooks}` |\n| This week's swings volume | `sum:totalVolume{effort:kettlebell-swings} last 6w` |\n\nThe shared kettlebell note feeds the last row — [run it](/page/guide-start?h=try-it), and it appears among the sample rows.\n\n## Seeded boards {#seeded-boards}\n\nSix real dashboard notes ship with the app — open any of them, or Inspect → Clone:\n\n| Board | Built around |\n|---|---|\n| [Training Block Review](/d/training-block-review) | values (`avg:tis{}`, `sum:totalVolume{}`, `avg:calc.adherence{}`), weekly volume timeseries, volume by effort toplist, stacked load by intensity/week, distance by discipline |\n| [Road to 560 Total](/d/road-to-560-total) | strength PR progression toward a total |\n| [Polarized Base Marathon](/d/polarized-base-marathon) | endurance polarization (intensity split across weeks) |\n| [Finger Strength V8](/d/finger-strength-v8) | climbing: `calc.mvcBw` hang strength vs grade |\n| [Benchmark PR Board](/d/benchmark-pr-board) | `last:elapsed{tags:benchmark} by {effort}`, benchmark timeseries |\n| [Recovery Readiness](/d/recovery-readiness) | ```wellness capture → `last:calc.readiness{}`, HRV/monotony/ACWR trends |\n\n## Try it {#try-it}\n\n**Run** — the sandbox has the real board loaded: edit the *Weekly tonnage* query in the panel, change `by {week}` to `by {day}`, and watch the widget re-run — sandbox edits never touch the seeded board. Then open the live board: every widget executes against your journal, rows without facts badge as **sample answers until you have logged work of your own**. **Observe** — in the board view, inspect the *Weekly tonnage* widget and clone the board to keep an edit. Sample answers and board edits read saved sessions; they never rewrite them.\n\n```button\nlabel: Open Training Block Review →\ntarget: preview\npipeline:\n - navigate: /d/training-block-review\n```\n\n```button\nlabel: Browse all dashboards →\ntarget: preview\npipeline:\n - navigate: /dashboards\n```\n\n",
4
- "blocks": {
5
- "seed:markdown/canvas/guide/dashboards.md:0": {
6
- "id": "seed:markdown/canvas/guide/dashboards.md:0",
7
- "kind": "query",
8
- "from": 2367,
9
- "to": 2427,
10
- "sourceRevision": 1,
11
- "version": 1
12
- }
13
- },
14
- "blockIndex": [
15
- {
16
- "id": "page/guide-dashboards:seed:markdown/canvas/guide/dashboards.md:0",
17
- "noteId": "page/guide-dashboards",
18
- "blockId": "seed:markdown/canvas/guide/dashboards.md:0",
19
- "blockVersion": 1,
20
- "sourceRevision": 1,
21
- "from": 2367,
22
- "to": 2427,
23
- "position": 0,
24
- "dataType": "query",
25
- "rawContent": "```query\nsum:sessionLoad{intensity:$intensity} by {week}\n```",
26
- "noteTitle": "Dashboards",
27
- "createdAt": 1793918065000,
28
- "isStatic": true,
29
- "sourceId": "guides:page/guide-dashboards",
30
- "sourcePath": "markdown/canvas/guide/dashboards.md",
31
- "routeId": "page/guide-dashboards"
32
- }
33
- ],
3
+ "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /page/guide-dashboards\ntype: guide\ntitle: \"Dashboards & Cookbook\"\ndescription: \"Dashboards are notes with YAML query widgets — frontmatter tokens, WQL data selection, and the visual builder.\"\n---\n\n# Dashboards & Cookbook {sticky dark full-bleed}\n\nA dashboard is **just a note**: mark it `dashboard: true`, and every in-note ```query block becomes a widget on one grid. **WQL** selects and aggregates data (`query:` / `series:`), while **YAML** inside ```query describes layout, titles, multi-series baselines, formulas, goals, columns, and sorting.\n\n```view\nname: sandbox\nstate: note\nsource: dashboards/training-block-review.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## The note is the dashboard {#note-frontmatter}\n\nThe real board is already loaded in the sandbox.\n\n````markdown\n---\ntitle: Training Block Review\ndashboard: true\ndashboard.weeks: 16\n---\n\n```query\ntitle: Avg TIS\ndescription: How hard are sessions?\nview: value\nquery: avg:tis{}\n```\n\n```query\ntitle: Weekly tonnage\ndescription: Is volume rising?\nview: timeseries\nspan: 2\nwindow: $weeks w\nquery: sum:totalVolume{} by {week}\n```\n````\n\nThree conventions:\n\n- **1-line WQL shorthand** (`:session{result:<id>}`) stays valid inside ```query for zero-boilerplate session tables, expanding into YAML only when customized.\n- **Self-contained YAML** inside ```query owns `title`, `description`, `view`, `span` (`1..4` or `full`), `window`, `groupBy`, `goal`, `targets`, `columns`, `sort`, and `query` / `series`.\n- `dashboard.weeks`, `dashboard.intensity: [low, moderate, high]`, or any `dashboard.<name>` value in frontmatter becomes a **token control** referenced directly in WQL or YAML as `$name` — `$weeks`, `$intensity`, `$scope`. List tokens render as segmented controls; unknown token references produce a visible refusal, never a silent blank.\n\n## Widget views and multi-series YAML {#widgets}\n\n```button\nlabel: Try it: Benchmark PR board\ntarget: sandbox\npipeline:\n - set-source: dashboards/benchmark-pr-board.md\n```\n\nEvery ```query block sets `view:` (defaulting to `table` for 1-line shorthand) and optional `span:` on a 4-column grid:\n\n| `view:` | Renders |\n|---|---|\n| `table` (default) | sortable session/segment rows with dynamic custom metrics & PR badges |\n| `list` / `value` | note/block cards / single big scalar |\n| `timeseries` | line over time (`span: 2` or `span: full` for wider cards) |\n| `bar` / `stacked-bar` | grouped or stacked bars |\n| `toplist` / `donut` | ranked breakdown / proportional share |\n| `goal-rings` / `zone-distribution` | progress rings (`goal: $target`) / zone split (`targets: [80, 2, 18]`) |\n\nSingle-series widgets use `query: <wql>`; multi-layer baselines and formulas use `series:`:\n\n````yaml\n```query\ntitle: Weekly Strength Tonnage vs Baseline\nview: timeseries\nspan: 2\ngroupBy: [week]\nseries:\n - id: tonnage\n label: Weekly Tonnage\n query: sum:totalVolume{discipline:strength, $scope}\n - id: baseline\n label: 4w Baseline\n query: avg:totalVolume{discipline:strength, $scope}.rollup(4w)\n - id: ratio\n label: Acute Ratio\n formula: tonnage / baseline\n unit: ratio\n```\n````\n\nWellness data comes from a capture fence in any note — wellness keys are plain properties, one per line:\n\n```wellness\nsoreness: 7\nsleep: 7.5h\nhrv: 62\n```\n\nCapture those daily and boards like Recovery Readiness light up ([what feeds `calc.readiness`](/page/guide-metrics?h=calculated)).\n\n## Compose, inspect, clone {#composer}\n\n- **Vault boards** (`/dashboard/<your-note>`) are yours: add, edit, duplicate, reorder, and resize widgets in place; concurrent-edit guards refuse lost writes visibly.\n- **Prebuilt boards** are read-only, but **Inspect** shows any widget's structured query object with a live preview, and **Clone to vault** copies the whole board into your journal to edit.\n- The `<QueryObjectBuilder />` powers inline note blocks, dashboard cards, and the Analytics Explorer from the same `QueryBlockObject` state — preview executes against your live journal with your range and kg/lb preferences.\n- Empty journal? Widgets stay honest with a sample-data prompt instead of fake numbers.\n\n## Cookbook {#cookbook}\n\nCopy-paste WQL queries (use in `query:` inside a ```query block, or straight into the Explorer):\n\n| Question | WQL `query:` | Suggested `view:` |\n|---|---|---|\n| Weekly strength volume | `sum:totalVolume{discipline:strength} by {week}` | `timeseries` |\n| Top volume movements | `sum:totalVolume{} by {effort}` | `toplist` |\n| TIS trend | `avg:tis{} by {week}` | `timeseries` |\n| Acute:chronic load | `avg:calc.acwr{}` | `value` |\n| Find benchmark notes | `:note{effort:fran,source:notebooks}` | `list` |\n| This week's swings volume | `sum:totalVolume{effort:kettlebell-swings} last 6w` | `value` |\n\nThe shared kettlebell note feeds the last row — [run it](/page/guide-start?h=try-it), and it appears among the sample rows.\n\n## Seeded boards {#seeded-boards}\n\nSix real dashboard notes ship with the app — open any of them, or Inspect → Clone:\n\n| Board | Built around |\n|---|---|\n| [Training Block Review](/d/training-block-review) | values (`avg:tis{}`, `sum:totalVolume{}`, `avg:calc.adherence{}`), weekly volume timeseries, volume by effort toplist, stacked load by intensity/week, distance by discipline |\n| [Road to 560 Total](/d/road-to-560-total) | strength PR progression toward a total (`goal: $squatGoal`) |\n| [Polarized Base Marathon](/d/polarized-base-marathon) | endurance polarization (`targets: [80, 2, 18]`) |\n| [Finger Strength V8](/d/finger-strength-v8) | climbing: `calc.mvcBw` hang strength vs grade |\n| [Benchmark PR Board](/d/benchmark-pr-board) | `last:elapsed{tags:benchmark} by {effort}`, benchmark timeseries |\n| [Recovery Readiness](/d/recovery-readiness) | ```wellness capture → `last:calc.readiness{}`, HRV/monotony/ACWR trends |\n\n## Try it {#try-it}\n\n**Run** — the sandbox has the real board loaded: edit the *Weekly tonnage* block in the panel, change `by {week}` to `by {day}`, and watch the widget re-run — sandbox edits never touch the seeded board. Then open the live board: every widget executes against your journal, rows without facts badge as **sample answers until you have logged work of your own**. **Observe** — in the board view, inspect the *Weekly tonnage* widget and clone the board to keep an edit. Sample answers and board edits read saved sessions; they never rewrite them.\n\n```button\nlabel: Open Training Block Review →\ntarget: preview\npipeline:\n - navigate: /d/training-block-review\n```\n\n```button\nlabel: Browse all dashboards →\ntarget: preview\npipeline:\n - navigate: /dashboards\n```\n",
4
+ "blocks": {},
5
+ "blockIndex": [],
34
6
  "blockEfforts": [],
35
7
  "blockEquipment": [],
36
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
8
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
37
9
  "uuid": "5055fffb-2ed1-571f-aa72-3e1525d2e01f",
38
10
  "version": 1
39
11
  }
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "path": "markdown/canvas/guide/metrics-summaries.md",
3
- "content": "---\nsearch: hidden\ntitle: \"Summary properties & tag annotations\"\nsubtitle: \"Attribute-based metrics, the shake-out queue, and summaries added by tags\"\ntemplate: canvas\nroute: /page/guide-metrics-summaries\ntype: guide\ndescription: \"Frontmatter metrics, attribute-based annotations, and workout-level summaries contributed by tags.\"\n---\n```chapter\nid: metrics-summaries\ntitle: Summary properties\nbadge: activity\nquests: metrics-summaries-run\nsections: []\n```\n\n```quest\nid: metrics-summaries-run\nlabel: Run the summary example\nvalidation:\n type: run-started\n```\n\n# Summary properties & tag annotations {sticky dark full-bleed}\n\nStatement-level metrics come from the workout text, Property Notes, and tags. Workout-level summaries aggregate those metrics.\n\n```view\nname: preview\nstate: note\nsource: wods/examples/syntax/frontmatter-summaries.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## Metrics and summaries in frontmatter {#frontmatter-metrics}\n\nThe example note declares `metrics.work: reps * resistance` and `summaries.totalWork: sum(work)` in its frontmatter.\nThe Metric Shake-Out Queue evaluates `work` on every logged statement, then `sum(work)` publishes `totalWork` as a workout-level Summary Metric.\n\n## Summaries added by tags {#tag-summaries}\n\n```button\nlabel: Try it: Run with #tonnage\ntarget: preview\npipeline:\n - set-state: track\n```\n\nRemove the `tags: [tonnage]` property in the editor's frontmatter and put `#tonnage` on the Kettlebell line instead.\nThe tag supplies the same metric and summary contributions:\n`resistance = 24 kg`, `work = reps * resistance`, and `summaries.totalWork = sum(work)`.\n\n## Stacking and overrides {#stacking-overrides}\n\nTag Categories contribute defaults to their child Tags. Tags, Efforts, Equipment, and note frontmatter stack more specific rules on top. For a Summary Metric with the same key, the note's own definition wins over a tag or Tag Category default, so a shared `summaries.totalWork` can be overridden locally.\n\n## Dependencies and diagnostics {#dependency-diagnostics}\n\nEquations resolve in waves as their inputs arrive. Scalar arithmetic preserves the input unit, so `sum(work) * 2` remains a kilogram-denominated Summary Metric when `work` is in kilograms. A chained metric such as `metrics.power: work / convert(elapsed, s)` uses the statement's execution time, including time supplied while the block runs. If a required input is still missing or the expression cannot produce a number, the statement keeps a Skipped-Dependency Diagnostic naming the failed metric and missing input; the workout can still be saved. Structural session and parent rows do not emit these diagnostics.\n\n## Querying your summaries {#querying-summaries}\n\nSaved Summary Metrics become queryable WQL facts:\n```query\nsum:totalWork{} by {week} last 6w\n```\nUse the `+ Add metric` and `+ Add summary` buttons in the editor's Properties panel to create your own frontmatter equations.\n\n## Try it {#try-it}\n\nRun the frontmatter example, then switch between the note-level `tags: [tonnage]` property and an inline `#tonnage` on the Kettlebell line.\nBoth should produce the same statement `work` metrics and the workout-level `totalWork` summary.\n\n```button\nlabel: Run\ntarget: preview\nopen: view\npipeline:\n - set-state: track\n```\n",
3
+ "content": "---\nsearch: hidden\ntitle: \"Summary properties & tag annotations\"\nsubtitle: \"Attribute-based metrics, the shake-out queue, and summaries added by tags\"\ntemplate: canvas\nroute: /page/guide-metrics-summaries\ntype: guide\ndescription: \"Frontmatter metrics, attribute-based annotations, and workout-level summaries contributed by tags.\"\n---\n```chapter\nid: metrics-summaries\ntitle: Summary properties\nbadge: activity\nquests: metrics-summaries-run\nsections: []\n```\n\n```quest\nid: metrics-summaries-run\nlabel: Run the summary example\nvalidation:\n type: run-started\n```\n\n# Summary properties & tag annotations {sticky dark full-bleed}\n\nStatement-level metrics come from the workout text, Property Notes, and tags. Workout-level summaries aggregate those metrics.\n\n```view\nname: preview\nstate: note\nsource: wods/examples/syntax/frontmatter-summaries.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## Metrics and summaries in frontmatter {#frontmatter-metrics}\n\nThe example note declares `metrics.work: reps * resistance` and `summaries.totalWork: sum(work)` in its frontmatter.\nThe Metric Shake-Out Queue evaluates `work` on every logged statement, then `sum(work)` publishes `totalWork` as a workout-level Summary Metric.\n\n## Summaries added by tags {#tag-summaries}\n\n```button\nlabel: Try it: Run with #tonnage\ntarget: preview\npipeline:\n - set-state: track\n```\n\nRemove the `tags: [tonnage]` property in the editor's frontmatter and put `#tonnage` on the Kettlebell line instead.\nThe tag supplies the same metric and summary contributions:\n`resistance = 24 kg`, `work = reps * resistance`, and `summaries.totalWork = sum(work)`.\n\n## Stacking and overrides {#stacking-overrides}\n\nTag Categories contribute defaults to their child Tags. Tags, Efforts, Equipment, and note frontmatter stack more specific rules on top. For a Summary Metric with the same key, the note's own definition wins over a tag or Tag Category default, so a shared `summaries.totalWork` can be overridden locally.\n\n## Dependencies and diagnostics {#dependency-diagnostics}\n\nEquations resolve in waves as their inputs arrive. Scalar arithmetic preserves the input unit, so `sum(work) * 2` remains a kilogram-denominated Summary Metric when `work` is in kilograms. A chained metric such as `metrics.power: work / convert(elapsed, s)` uses the statement's execution time, including time supplied while the block runs. If a required input is still missing or the expression cannot produce a number, the statement keeps a Skipped-Dependency Diagnostic naming the failed metric and missing input; the workout can still be saved. Structural session and parent rows do not emit these diagnostics.\n\n## Querying your summaries {#querying-summaries}\n\nSaved Summary Metrics become queryable WQL facts:\n```query\n:segment{} | :sum{metric:totalWork} by {week} last 6w | :timeseries{}\n```\nUse the `+ Add metric` and `+ Add summary` buttons in the editor's Properties panel to create your own frontmatter equations.\n\n## Try it {#try-it}\n\nRun the frontmatter example, then switch between the note-level `tags: [tonnage]` property and an inline `#tonnage` on the Kettlebell line.\nBoth should produce the same statement `work` metrics and the workout-level `totalWork` summary.\n\n```button\nlabel: Run\ntarget: preview\nopen: view\npipeline:\n - set-state: track\n```\n",
4
4
  "blocks": {
5
5
  "seed:markdown/canvas/guide/metrics-summaries.md:0": {
6
6
  "id": "seed:markdown/canvas/guide/metrics-summaries.md:0",
7
7
  "kind": "query",
8
8
  "from": 2779,
9
- "to": 2825,
9
+ "to": 2861,
10
10
  "sourceRevision": 1,
11
11
  "version": 1
12
12
  }
@@ -19,12 +19,12 @@
19
19
  "blockVersion": 1,
20
20
  "sourceRevision": 1,
21
21
  "from": 2779,
22
- "to": 2825,
22
+ "to": 2861,
23
23
  "position": 0,
24
24
  "dataType": "query",
25
- "rawContent": "```query\nsum:totalWork{} by {week} last 6w\n```",
25
+ "rawContent": "```query\n:segment{} | :sum{metric:totalWork} by {week} last 6w | :timeseries{}\n```",
26
26
  "noteTitle": "Metrics Summaries",
27
- "createdAt": 1793918065000,
27
+ "createdAt": 1794409641000,
28
28
  "isStatic": true,
29
29
  "sourceId": "guides:page/guide-metrics-summaries",
30
30
  "sourcePath": "markdown/canvas/guide/metrics-summaries.md",
@@ -33,7 +33,7 @@
33
33
  ],
34
34
  "blockEfforts": [],
35
35
  "blockEquipment": [],
36
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
36
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
37
37
  "uuid": "845de7a8-2783-5c01-a8bc-b2552eff2018",
38
38
  "version": 1
39
39
  }