@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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "path": "markdown/canvas/guide/metrics.md",
3
- "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /page/guide-metrics\ntype: guide\ntitle: \"Metrics: Planned, Recorded, Calculated\"\ndescription: \"Planned, recorded, and calculated metrics, custom inline values, and capture prompts for what you don't know yet.\"\n---\n\n```chapter\nid: metrics\ntitle: Metrics\nbadge: activity\nquests: metrics-run, metrics-custom, metrics-capture\nsections: []\n```\n\n```quest\nid: metrics-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: metrics-custom\nlabel: Attach a custom metric\nvalidation:\n type: contains-token\n value: '{\"rpe\"'\n```\n\n```quest\nid: metrics-capture\nlabel: Add a collectible load\nvalidation:\n type: contains-token\n value: ?lb\n```\n\n# Metrics: Planned, Recorded, Calculated {sticky dark full-bleed}\n\nEvery number in WOD Wiki has an origin. Knowing the three layers tells you what you can query and what you can trust.\n\n```view\nname: preview\nstate: note\nsource: wods/examples/home/sample-script.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## The three layers {#planned-vs-recorded}\n\n| Layer | Who produces it | Examples | You asked for it by writing |\n|---|---|---|---|\n| **Planned** | parser + compiler, from your text | `5:00` duration, `(21-15-9)` reps, `24kg` load, discipline/intensity hints | the line itself |\n| **Recorded** | the runtime clock while you exercise | elapsed spans, splits, reps/distance/resistance performed, captured loads and ratings | `:?`, `?lb`, and running the workout |\n| **Calculated** | the analytics engine after (and during) runs | `calc.e1rm`, `calc.acwr`, `calc.readiness`, … | enough recorded facts to feed a formula |\n\nThe running example makes the split concrete:\n\n```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```\n\nPlanned: 3 rounds, 10 reps, 24 kg, 30 s rest. After running it, the recorded facts (30 swings at 24 kg) derive **720 kg of total volume** — computed from records, never asserted. That number is what [WQL](/page/guide-wql?h=aggregate) queries later.\n\n## Inline custom metrics {#custom-metrics}\n\n```button\nlabel: Try it: Custom metrics\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/custom-metrics-1.md\n```\n\nAttach any key/value data with a JSON object, anywhere on the line:\n\n```time\n5 Back Squat 225lb {\"rpe\": 8}\n10 Thrusters 95lb {\"intensity\": 80, \"coach\": \"greg\"}\n```\n\n- **Optional & additive** — existing syntax is unchanged; the object can sit anywhere on the line.\n- **Typed values** — numbers, strings, booleans, or null.\n- **Known keys** (`rpe`, `rir`, `intensity`, `load`) map to canonical metric types.\n- **Any other key becomes a custom metric** — and a queryable dimension (`{coach:greg}` filters, `by {coach}` groups; keys are camelCase-normalized, so `Sleep Quality` answers to `sleepQuality`).\n\n## Capture prompts {#capture}\n\n```button\nlabel: Try it: Collectible loads\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/metrics-5.md\n```\n\nUnknown values become **collectible** placeholders — the plan stays honest, and you supply the actual during capture:\n\n| Line | What it means |\n|---|---|\n| `?lb Back Squat` | collectible load — unknown at parse; you enter the actual value when capturing |\n| `225lb ?lb Deadlift` | prescribed 225 lb alongside a collectible load (editing allowed) |\n| `?kg Clean` | collectible load in kilograms |\n| `?` | collectible reps — how many you actually did |\n| `?m` / `?km` / `?mile` | collectible distance |\n| `For Time :?` | collectible timer — elapsed time is recorded when you complete the block |\n| `5km Run :?` | distance is prescribed, so `:?` collects the **time taken** |\n| `:? Max Effort Pushups` | a bare `:?` mounts a count-up timer whose elapsed is recorded on completion — the prefix form parses the same |\n\nThe collectible rule: a value that is **prescribed** is written literally; a value that is the **outcome** gets the `?` placeholder — a time-prescribed run collects distance with `?m`, a distance-prescribed run collects time with `:?`. What the clock does when a prompt fires is the [Clock chapter](/page/guide-clock?h=capture-prompts).\n\nCaptured loads feed trendlines, estimated 1RMs, and PR detection across sessions.\n\n## Session RPE {#session-rpe}\n\nA session-level rating rides on the note as a property:\n\n```log\ndate: 2026-05-25\nrpe: 7\n\n5 Back Squat 225lb hard\n```\n\n`rpe:` (and `rir:`) are typed session metrics — the parser maps the property to `session-rpe`, the stored fact carries canonical key `session-rpe`, and the executor matches aggregate metric keys by exact string, so weekly intensity is one query:\n\n```query\navg:session-rpe{} by {week}\n```\n\n(Older pages showed `avg:wod.rpe` — no such key exists; `session-rpe` is the real one.)\n\n## Calculated metrics {#calculated}\n\n```button\nlabel: Try it: Calculated metrics\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/calculated-metrics.md\n```\n\n**Frontmatter `metrics:` and `summaries:`** derive values per statement and across the workout:\n\n```yaml\nmetrics.work: reps * resistance\nsummaries.totalWork: sum(work)\n```\n\nEach logged statement gains `work = reps * resistance` through the Metric Shake-Out Queue, then `totalWork = sum(work)` is emitted as a Summary Metric. Tag Property Notes can contribute the same metrics and summaries when a note or statement carries the tag (e.g. `#tonnage`).\n\nSee [Summary properties & tag annotations](/page/guide-metrics-summaries) for a runnable example.\n**Engine-published `calc.*` metrics** are built in — the full vocabulary WQL can query:\n\n| Family | Keys |\n|---|---|\n| Training load | `calc.acwr`, `calc.monotony`, `calc.strain`, `calc.ctl`, `calc.atl`, `calc.tsb` |\n| Strength | `calc.e1rm`, `calc.pct1rm` |\n| Wellness | `calc.soreness`, `calc.sleep`, `calc.hrv`, `calc.readiness` |\n| Climb / run | `calc.sends`, `calc.ef`, `calc.metMinutes`, `calc.mvcBw` |\n| Plan | `calc.adherence` |\n\nNo invented prerequisites: each formula states what it needs. `calc.readiness`, for example, is computed only for days where a ```wellness fence captured **soreness, sleep, and HRV** — days missing any input produce no value rather than a misleading zero. These 17 keys are exactly the engine-registered set; any other `calc.*` (e.g. the planned `calc.pmc` composite) renders a labeled **proposed** placeholder instead of a value.\n\n## Try it {#try-it}\n\nThe kettlebell example is already in the panel — run it, then open the review grid: reps and load should come from the plan, splits and elapsed from the clock, and `totalVolume` should appear as a derived summary. Add `{\"rpe\": 7}` to a line and re-run — the custom metric should appear in the grid. **Result query** — the same run answers `sum:totalVolume{effort:kettlebell-swings} last 6w` in [WQL](/page/guide-wql?h=aggregate). This chapter reads what runs record; saving follows the shared run contract — no separate result policy.\n\n```button\nlabel: Run\ntarget: preview\nopen: view\npipeline:\n - set-state: track\n```\n\n",
3
+ "content": "---\nsearch: hidden\ntemplate: canvas\nroute: /page/guide-metrics\ntype: guide\ntitle: \"Metrics: Planned, Recorded, Calculated\"\ndescription: \"Planned, recorded, and calculated metrics, custom inline values, and capture prompts for what you don't know yet.\"\n---\n\n```chapter\nid: metrics\ntitle: Metrics\nbadge: activity\nquests: metrics-run, metrics-custom, metrics-capture\nsections: []\n```\n\n```quest\nid: metrics-run\nlabel: Run the First Example\nvalidation:\n type: run-started\n```\n\n```quest\nid: metrics-custom\nlabel: Attach a custom metric\nvalidation:\n type: contains-token\n value: '{\"rpe\"'\n```\n\n```quest\nid: metrics-capture\nlabel: Add a collectible load\nvalidation:\n type: contains-token\n value: ?lb\n```\n\n# Metrics: Planned, Recorded, Calculated {sticky dark full-bleed}\n\nEvery number in WOD Wiki has an origin. Knowing the three layers tells you what you can query and what you can trust.\n\n```view\nname: preview\nstate: note\nsource: wods/examples/home/sample-script.md\nruntime: in-memory\nlaunch: host\nalign: right\nwidth: 50%\n```\n\n## The three layers {#planned-vs-recorded}\n\n| Layer | Who produces it | Examples | You asked for it by writing |\n|---|---|---|---|\n| **Planned** | parser + compiler, from your text | `5:00` duration, `(21-15-9)` reps, `24kg` load, discipline/intensity hints | the line itself |\n| **Recorded** | the runtime clock while you exercise | elapsed spans, splits, reps/distance/resistance performed, captured loads and ratings | `:?`, `?lb`, and running the workout |\n| **Calculated** | the analytics engine after (and during) runs | `calc.e1rm`, `calc.acwr`, `calc.readiness`, … | enough recorded facts to feed a formula |\n\nThe running example makes the split concrete:\n\n```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```\n\nPlanned: 3 rounds, 10 reps, 24 kg, 30 s rest. After running it, the recorded facts (30 swings at 24 kg) derive **720 kg of total volume** — computed from records, never asserted. That number is what [WQL](/page/guide-wql?h=aggregate) queries later.\n\n## Inline custom metrics {#custom-metrics}\n\n```button\nlabel: Try it: Custom metrics\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/custom-metrics-1.md\n```\n\nAttach any key/value data with a JSON object, anywhere on the line:\n\n```time\n5 Back Squat 225lb {\"rpe\": 8}\n10 Thrusters 95lb {\"intensity\": 80, \"coach\": \"greg\"}\n```\n\n- **Optional & additive** — existing syntax is unchanged; the object can sit anywhere on the line.\n- **Typed values** — numbers, strings, booleans, or null.\n- **Known keys** (`rpe`, `rir`, `intensity`, `load`) map to canonical metric types.\n- **Any other key becomes a custom metric** — and a queryable dimension (`{coach:greg}` filters, `by {coach}` groups; keys are camelCase-normalized, so `Sleep Quality` answers to `sleepQuality`).\n\n## Capture prompts {#capture}\n\n```button\nlabel: Try it: Collectible loads\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/metrics-5.md\n```\n\nUnknown values become **collectible** placeholders — the plan stays honest, and you supply the actual during capture:\n\n| Line | What it means |\n|---|---|\n| `?lb Back Squat` | collectible load — unknown at parse; you enter the actual value when capturing |\n| `225lb ?lb Deadlift` | prescribed 225 lb alongside a collectible load (editing allowed) |\n| `?kg Clean` | collectible load in kilograms |\n| `?` | collectible reps — how many you actually did |\n| `?m` / `?km` / `?mile` | collectible distance |\n| `For Time :?` | collectible timer — elapsed time is recorded when you complete the block |\n| `5km Run :?` | distance is prescribed, so `:?` collects the **time taken** |\n| `:? Max Effort Pushups` | a bare `:?` mounts a count-up timer whose elapsed is recorded on completion — the prefix form parses the same |\n\nThe collectible rule: a value that is **prescribed** is written literally; a value that is the **outcome** gets the `?` placeholder — a time-prescribed run collects distance with `?m`, a distance-prescribed run collects time with `:?`. What the clock does when a prompt fires is the [Clock chapter](/page/guide-clock?h=capture-prompts).\n\nCaptured loads feed trendlines, estimated 1RMs, and PR detection across sessions.\n\n## Session RPE {#session-rpe}\n\nA session-level rating rides on the note as a property:\n\n```log\ndate: 2026-05-25\nrpe: 7\n\n5 Back Squat 225lb hard\n```\n\n`rpe:` (and `rir:`) are typed session metrics — the parser maps the property to `session-rpe`, the stored fact carries canonical key `session-rpe`, and the executor matches aggregate metric keys by exact string, so weekly intensity is one query:\n\n```query\n:segment{} | :avg{metric:session-rpe} by {week} | :timeseries{}\n```\n\n(Older pages showed `avg:wod.rpe` — no such key exists; `session-rpe` is the real one.)\n\n## Calculated metrics {#calculated}\n\n```button\nlabel: Try it: Calculated metrics\ntarget: preview\npipeline:\n - set-source: wods/examples/syntax/calculated-metrics.md\n```\n\n**Frontmatter `metrics:` and `summaries:`** derive values per statement and across the workout:\n\n```yaml\nmetrics.work: reps * resistance\nsummaries.totalWork: sum(work)\n```\n\nEach logged statement gains `work = reps * resistance` through the Metric Shake-Out Queue, then `totalWork = sum(work)` is emitted as a Summary Metric. Tag Property Notes can contribute the same metrics and summaries when a note or statement carries the tag (e.g. `#tonnage`).\n\nSee [Summary properties & tag annotations](/page/guide-metrics-summaries) for a runnable example.\n**Engine-published `calc.*` metrics** are built in — the full vocabulary WQL can query:\n\n| Family | Keys |\n|---|---|\n| Training load | `calc.acwr`, `calc.monotony`, `calc.strain`, `calc.ctl`, `calc.atl`, `calc.tsb` |\n| Strength | `calc.e1rm`, `calc.pct1rm` |\n| Wellness | `calc.soreness`, `calc.sleep`, `calc.hrv`, `calc.readiness` |\n| Climb / run | `calc.sends`, `calc.ef`, `calc.metMinutes`, `calc.mvcBw` |\n| Plan | `calc.adherence` |\n\nNo invented prerequisites: each formula states what it needs. `calc.readiness`, for example, is computed only for days where a ```wellness fence captured **soreness, sleep, and HRV** — days missing any input produce no value rather than a misleading zero. These 17 keys are exactly the engine-registered set; any other `calc.*` (e.g. the planned `calc.pmc` composite) renders a labeled **proposed** placeholder instead of a value.\n\n## Try it {#try-it}\n\nThe kettlebell example is already in the panel — run it, then open the review grid: reps and load should come from the plan, splits and elapsed from the clock, and `totalVolume` should appear as a derived summary. Add `{\"rpe\": 7}` to a line and re-run — the custom metric should appear in the grid. **Result query** — the same run answers `sum:totalVolume{effort:kettlebell-swings} last 6w` in [WQL](/page/guide-wql?h=aggregate). This chapter reads what runs record; saving follows the shared run contract — no separate result policy.\n\n```button\nlabel: Run\ntarget: preview\nopen: view\npipeline:\n - set-state: track\n```\n\n",
4
4
  "blocks": {
5
5
  "seed:markdown/canvas/guide/metrics.md:0": {
6
6
  "id": "seed:markdown/canvas/guide/metrics.md:0",
@@ -33,7 +33,7 @@
33
33
  "id": "seed:markdown/canvas/guide/metrics.md:3",
34
34
  "kind": "query",
35
35
  "from": 4572,
36
- "to": 4612,
36
+ "to": 4648,
37
37
  "sourceRevision": 1,
38
38
  "version": 1
39
39
  }
@@ -52,7 +52,7 @@
52
52
  "blockContentId": "bc-86bf9888",
53
53
  "rawContent": "```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```",
54
54
  "noteTitle": "Metrics",
55
- "createdAt": 1793918065000,
55
+ "createdAt": 1794409641000,
56
56
  "isStatic": true,
57
57
  "sourceId": "guides:page/guide-metrics",
58
58
  "sourcePath": "markdown/canvas/guide/metrics.md",
@@ -71,7 +71,7 @@
71
71
  "blockContentId": "bc-04273bda",
72
72
  "rawContent": "```time\n5 Back Squat 225lb {\"rpe\": 8}\n10 Thrusters 95lb {\"intensity\": 80, \"coach\": \"greg\"}\n```",
73
73
  "noteTitle": "Metrics",
74
- "createdAt": 1793918065000,
74
+ "createdAt": 1794409641000,
75
75
  "isStatic": true,
76
76
  "sourceId": "guides:page/guide-metrics",
77
77
  "sourcePath": "markdown/canvas/guide/metrics.md",
@@ -90,7 +90,7 @@
90
90
  "blockContentId": "bc-a40eab33",
91
91
  "rawContent": "```log\ndate: 2026-05-25\nrpe: 7\n\n5 Back Squat 225lb hard\n```",
92
92
  "noteTitle": "Metrics",
93
- "createdAt": 1793918065000,
93
+ "createdAt": 1794409641000,
94
94
  "isStatic": true,
95
95
  "sourceId": "guides:page/guide-metrics",
96
96
  "sourcePath": "markdown/canvas/guide/metrics.md",
@@ -103,12 +103,12 @@
103
103
  "blockVersion": 1,
104
104
  "sourceRevision": 1,
105
105
  "from": 4572,
106
- "to": 4612,
106
+ "to": 4648,
107
107
  "position": 3,
108
108
  "dataType": "query",
109
- "rawContent": "```query\navg:session-rpe{} by {week}\n```",
109
+ "rawContent": "```query\n:segment{} | :avg{metric:session-rpe} by {week} | :timeseries{}\n```",
110
110
  "noteTitle": "Metrics",
111
- "createdAt": 1793918065000,
111
+ "createdAt": 1794409641000,
112
112
  "isStatic": true,
113
113
  "sourceId": "guides:page/guide-metrics",
114
114
  "sourcePath": "markdown/canvas/guide/metrics.md",
@@ -124,7 +124,7 @@
124
124
  "effortSlug": "kettlebell-swing",
125
125
  "isStatic": true,
126
126
  "sourcePath": "markdown/canvas/guide/metrics.md",
127
- "createdAt": 1793918065000
127
+ "createdAt": 1794409641000
128
128
  },
129
129
  {
130
130
  "id": "page/guide-metrics:seed:markdown/canvas/guide/metrics.md:1:back-squat",
@@ -134,7 +134,7 @@
134
134
  "effortSlug": "back-squat",
135
135
  "isStatic": true,
136
136
  "sourcePath": "markdown/canvas/guide/metrics.md",
137
- "createdAt": 1793918065000
137
+ "createdAt": 1794409641000
138
138
  },
139
139
  {
140
140
  "id": "page/guide-metrics:seed:markdown/canvas/guide/metrics.md:1:thruster",
@@ -144,7 +144,7 @@
144
144
  "effortSlug": "thruster",
145
145
  "isStatic": true,
146
146
  "sourcePath": "markdown/canvas/guide/metrics.md",
147
- "createdAt": 1793918065000
147
+ "createdAt": 1794409641000
148
148
  },
149
149
  {
150
150
  "id": "page/guide-metrics:seed:markdown/canvas/guide/metrics.md:2:back-squat",
@@ -154,7 +154,7 @@
154
154
  "effortSlug": "back-squat",
155
155
  "isStatic": true,
156
156
  "sourcePath": "markdown/canvas/guide/metrics.md",
157
- "createdAt": 1793918065000
157
+ "createdAt": 1794409641000
158
158
  }
159
159
  ],
160
160
  "blockEquipment": [
@@ -166,7 +166,7 @@
166
166
  "equipmentSlug": "kettlebell",
167
167
  "isStatic": true,
168
168
  "sourcePath": "markdown/canvas/guide/metrics.md",
169
- "createdAt": 1793918065000
169
+ "createdAt": 1794409641000
170
170
  },
171
171
  {
172
172
  "id": "page/guide-metrics:seed:markdown/canvas/guide/metrics.md:1:barbell",
@@ -176,7 +176,7 @@
176
176
  "equipmentSlug": "barbell",
177
177
  "isStatic": true,
178
178
  "sourcePath": "markdown/canvas/guide/metrics.md",
179
- "createdAt": 1793918065000
179
+ "createdAt": 1794409641000
180
180
  },
181
181
  {
182
182
  "id": "page/guide-metrics:seed:markdown/canvas/guide/metrics.md:2:barbell",
@@ -186,10 +186,10 @@
186
186
  "equipmentSlug": "barbell",
187
187
  "isStatic": true,
188
188
  "sourcePath": "markdown/canvas/guide/metrics.md",
189
- "createdAt": 1793918065000
189
+ "createdAt": 1794409641000
190
190
  }
191
191
  ],
192
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
192
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
193
193
  "uuid": "7643296f-4172-5bd6-8081-908640a84f0a",
194
194
  "version": 1
195
195
  }
@@ -71,7 +71,7 @@
71
71
  "blockContentId": "bc-86bf9888",
72
72
  "rawContent": "```time\n(3)\n 10 Kettlebell Swings 24kg\n *:30 Rest\n```",
73
73
  "noteTitle": "Protocols",
74
- "createdAt": 1793918065000,
74
+ "createdAt": 1794409641000,
75
75
  "isStatic": true,
76
76
  "sourceId": "guides:page/guide-protocols",
77
77
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -90,7 +90,7 @@
90
90
  "blockContentId": "bc-a8ec9216",
91
91
  "rawContent": "```time\n20:00 AMRAP\n 5 Pullups\n 10 Pushups\n 15 Air Squats\n```",
92
92
  "noteTitle": "Protocols",
93
- "createdAt": 1793918065000,
93
+ "createdAt": 1794409641000,
94
94
  "isStatic": true,
95
95
  "sourceId": "guides:page/guide-protocols",
96
96
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -109,7 +109,7 @@
109
109
  "blockContentId": "bc-3f48dbdd",
110
110
  "rawContent": "```time\n(10) :60 EMOM\n 5 Power Cleans\n```",
111
111
  "noteTitle": "Protocols",
112
- "createdAt": 1793918065000,
112
+ "createdAt": 1794409641000,
113
113
  "isStatic": true,
114
114
  "sourceId": "guides:page/guide-protocols",
115
115
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -128,7 +128,7 @@
128
128
  "blockContentId": "bc-561fee7c",
129
129
  "rawContent": "```time\n(10) :60 EMOM\n 5 Pullups\n 10 Pushups\n```",
130
130
  "noteTitle": "Protocols",
131
- "createdAt": 1793918065000,
131
+ "createdAt": 1794409641000,
132
132
  "isStatic": true,
133
133
  "sourceId": "guides:page/guide-protocols",
134
134
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -147,7 +147,7 @@
147
147
  "blockContentId": "bc-73981dd5",
148
148
  "rawContent": "```time\n(8)\n :20 Max Effort Burpees\n :10 Rest\n```",
149
149
  "noteTitle": "Protocols",
150
- "createdAt": 1793918065000,
150
+ "createdAt": 1794409641000,
151
151
  "isStatic": true,
152
152
  "sourceId": "guides:page/guide-protocols",
153
153
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -166,7 +166,7 @@
166
166
  "blockContentId": "bc-be8f24b3",
167
167
  "rawContent": "```time\n(6)\n 2:00 Run 400m\n *1:00 Rest\n```",
168
168
  "noteTitle": "Protocols",
169
- "createdAt": 1793918065000,
169
+ "createdAt": 1794409641000,
170
170
  "isStatic": true,
171
171
  "sourceId": "guides:page/guide-protocols",
172
172
  "sourcePath": "markdown/canvas/guide/protocols.md",
@@ -182,7 +182,7 @@
182
182
  "effortSlug": "kettlebell-swing",
183
183
  "isStatic": true,
184
184
  "sourcePath": "markdown/canvas/guide/protocols.md",
185
- "createdAt": 1793918065000
185
+ "createdAt": 1794409641000
186
186
  },
187
187
  {
188
188
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:1:pull-up",
@@ -192,7 +192,7 @@
192
192
  "effortSlug": "pull-up",
193
193
  "isStatic": true,
194
194
  "sourcePath": "markdown/canvas/guide/protocols.md",
195
- "createdAt": 1793918065000
195
+ "createdAt": 1794409641000
196
196
  },
197
197
  {
198
198
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:1:push-up",
@@ -202,7 +202,7 @@
202
202
  "effortSlug": "push-up",
203
203
  "isStatic": true,
204
204
  "sourcePath": "markdown/canvas/guide/protocols.md",
205
- "createdAt": 1793918065000
205
+ "createdAt": 1794409641000
206
206
  },
207
207
  {
208
208
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:1:air-squat",
@@ -212,7 +212,7 @@
212
212
  "effortSlug": "air-squat",
213
213
  "isStatic": true,
214
214
  "sourcePath": "markdown/canvas/guide/protocols.md",
215
- "createdAt": 1793918065000
215
+ "createdAt": 1794409641000
216
216
  },
217
217
  {
218
218
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:2:power-clean",
@@ -222,7 +222,7 @@
222
222
  "effortSlug": "power-clean",
223
223
  "isStatic": true,
224
224
  "sourcePath": "markdown/canvas/guide/protocols.md",
225
- "createdAt": 1793918065000
225
+ "createdAt": 1794409641000
226
226
  },
227
227
  {
228
228
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:3:pull-up",
@@ -232,7 +232,7 @@
232
232
  "effortSlug": "pull-up",
233
233
  "isStatic": true,
234
234
  "sourcePath": "markdown/canvas/guide/protocols.md",
235
- "createdAt": 1793918065000
235
+ "createdAt": 1794409641000
236
236
  },
237
237
  {
238
238
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:3:push-up",
@@ -242,7 +242,7 @@
242
242
  "effortSlug": "push-up",
243
243
  "isStatic": true,
244
244
  "sourcePath": "markdown/canvas/guide/protocols.md",
245
- "createdAt": 1793918065000
245
+ "createdAt": 1794409641000
246
246
  },
247
247
  {
248
248
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:4:burpee",
@@ -252,7 +252,7 @@
252
252
  "effortSlug": "burpee",
253
253
  "isStatic": true,
254
254
  "sourcePath": "markdown/canvas/guide/protocols.md",
255
- "createdAt": 1793918065000
255
+ "createdAt": 1794409641000
256
256
  },
257
257
  {
258
258
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:5:running-6-mph",
@@ -262,7 +262,7 @@
262
262
  "effortSlug": "running-6-mph",
263
263
  "isStatic": true,
264
264
  "sourcePath": "markdown/canvas/guide/protocols.md",
265
- "createdAt": 1793918065000
265
+ "createdAt": 1794409641000
266
266
  }
267
267
  ],
268
268
  "blockEquipment": [
@@ -274,7 +274,7 @@
274
274
  "equipmentSlug": "kettlebell",
275
275
  "isStatic": true,
276
276
  "sourcePath": "markdown/canvas/guide/protocols.md",
277
- "createdAt": 1793918065000
277
+ "createdAt": 1794409641000
278
278
  },
279
279
  {
280
280
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:1:pull-up-bar",
@@ -284,7 +284,7 @@
284
284
  "equipmentSlug": "pull-up-bar",
285
285
  "isStatic": true,
286
286
  "sourcePath": "markdown/canvas/guide/protocols.md",
287
- "createdAt": 1793918065000
287
+ "createdAt": 1794409641000
288
288
  },
289
289
  {
290
290
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:2:barbell",
@@ -294,7 +294,7 @@
294
294
  "equipmentSlug": "barbell",
295
295
  "isStatic": true,
296
296
  "sourcePath": "markdown/canvas/guide/protocols.md",
297
- "createdAt": 1793918065000
297
+ "createdAt": 1794409641000
298
298
  },
299
299
  {
300
300
  "id": "page/guide-protocols:seed:markdown/canvas/guide/protocols.md:3:pull-up-bar",
@@ -304,10 +304,10 @@
304
304
  "equipmentSlug": "pull-up-bar",
305
305
  "isStatic": true,
306
306
  "sourcePath": "markdown/canvas/guide/protocols.md",
307
- "createdAt": 1793918065000
307
+ "createdAt": 1794409641000
308
308
  }
309
309
  ],
310
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
310
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
311
311
  "uuid": "ff68094d-dbb9-56a4-bda8-0fa8e9dbdd11",
312
312
  "version": 1
313
313
  }
@@ -80,7 +80,7 @@
80
80
  "blockContentId": "bc-28a484de",
81
81
  "rawContent": "```time\n// Warmup\n 400m Run\n 10 Air Squats\n\n// Strength\n (5 Sets)\n 3 Back Squat 225lb\n *2:00 Rest\n\n// Conditioning\n 10:00 AMRAP\n 5 Pullups\n 10 Pushups\n\n// Cool-down\n 5:00 Walk\n```",
82
82
  "noteTitle": "Sessions",
83
- "createdAt": 1793918065000,
83
+ "createdAt": 1794409641000,
84
84
  "isStatic": true,
85
85
  "sourceId": "guides:page/guide-sessions",
86
86
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -99,7 +99,7 @@
99
99
  "blockContentId": "bc-4c58ae00",
100
100
  "rawContent": "```time\n(3)\n 5:00 AMRAP\n 5 Pullups\n 10 Pushups\n// Strength\n 3 Back Squat 225lb\n *2:00 Rest\n```",
101
101
  "noteTitle": "Sessions",
102
- "createdAt": 1793918065000,
102
+ "createdAt": 1794409641000,
103
103
  "isStatic": true,
104
104
  "sourceId": "guides:page/guide-sessions",
105
105
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -118,7 +118,7 @@
118
118
  "blockContentId": "bc-8c7b43c3",
119
119
  "rawContent": "```time\n// Partner A\n 5:00 AMRAP\n 5 Pullups\n 10 Pushups\n\n// Partner B\n 5:00 AMRAP\n 10 Air Squats\n 8 Burpees\n```",
120
120
  "noteTitle": "Sessions",
121
- "createdAt": 1793918065000,
121
+ "createdAt": 1794409641000,
122
122
  "isStatic": true,
123
123
  "sourceId": "guides:page/guide-sessions",
124
124
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -137,7 +137,7 @@
137
137
  "blockContentId": "bc-37778bd2",
138
138
  "rawContent": "```time\n(4) Power Sprints\n 25m Freestyle Sprint\n 1:30 Rest\n\n(6) IM Main Set\n 100m IM\n :45 Rest\n\n150m Cooldown\n```",
139
139
  "noteTitle": "Sessions",
140
- "createdAt": 1793918065000,
140
+ "createdAt": 1794409641000,
141
141
  "isStatic": true,
142
142
  "sourceId": "guides:page/guide-sessions",
143
143
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -156,7 +156,7 @@
156
156
  "blockContentId": "bc-720fc8b6",
157
157
  "rawContent": "```time\n(5) :60 EMOM\n 3 Power Clean 135lb\n\n(Change Plates)\n\n(5) :60 EMOM\n 2 Power Clean 155lb\n```",
158
158
  "noteTitle": "Sessions",
159
- "createdAt": 1793918065000,
159
+ "createdAt": 1794409641000,
160
160
  "isStatic": true,
161
161
  "sourceId": "guides:page/guide-sessions",
162
162
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -175,7 +175,7 @@
175
175
  "blockContentId": "bc-8e347283",
176
176
  "rawContent": "```log\ndate: 2026-05-25\nrpe: 7\n\n5 Back Squat 225lb hard\n// Bar speed slowed on set 3.\n```",
177
177
  "noteTitle": "Sessions",
178
- "createdAt": 1793918065000,
178
+ "createdAt": 1794409641000,
179
179
  "isStatic": true,
180
180
  "sourceId": "guides:page/guide-sessions",
181
181
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -194,7 +194,7 @@
194
194
  "blockContentId": "bc-d1d7a046",
195
195
  "rawContent": "```log\nNight session. Sent Midnight Lightning V8, 3 attempts. High point on the 5.12a proj.\n```",
196
196
  "noteTitle": "Sessions",
197
- "createdAt": 1793918065000,
197
+ "createdAt": 1794409641000,
198
198
  "isStatic": true,
199
199
  "sourceId": "guides:page/guide-sessions",
200
200
  "sourcePath": "markdown/canvas/guide/sessions.md",
@@ -210,7 +210,7 @@
210
210
  "effortSlug": "running-6-mph",
211
211
  "isStatic": true,
212
212
  "sourcePath": "markdown/canvas/guide/sessions.md",
213
- "createdAt": 1793918065000
213
+ "createdAt": 1794409641000
214
214
  },
215
215
  {
216
216
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:air-squat",
@@ -220,7 +220,7 @@
220
220
  "effortSlug": "air-squat",
221
221
  "isStatic": true,
222
222
  "sourcePath": "markdown/canvas/guide/sessions.md",
223
- "createdAt": 1793918065000
223
+ "createdAt": 1794409641000
224
224
  },
225
225
  {
226
226
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:back-squat",
@@ -230,7 +230,7 @@
230
230
  "effortSlug": "back-squat",
231
231
  "isStatic": true,
232
232
  "sourcePath": "markdown/canvas/guide/sessions.md",
233
- "createdAt": 1793918065000
233
+ "createdAt": 1794409641000
234
234
  },
235
235
  {
236
236
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:pull-up",
@@ -240,7 +240,7 @@
240
240
  "effortSlug": "pull-up",
241
241
  "isStatic": true,
242
242
  "sourcePath": "markdown/canvas/guide/sessions.md",
243
- "createdAt": 1793918065000
243
+ "createdAt": 1794409641000
244
244
  },
245
245
  {
246
246
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:push-up",
@@ -250,7 +250,7 @@
250
250
  "effortSlug": "push-up",
251
251
  "isStatic": true,
252
252
  "sourcePath": "markdown/canvas/guide/sessions.md",
253
- "createdAt": 1793918065000
253
+ "createdAt": 1794409641000
254
254
  },
255
255
  {
256
256
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:walking-3-mph",
@@ -260,7 +260,7 @@
260
260
  "effortSlug": "walking-3-mph",
261
261
  "isStatic": true,
262
262
  "sourcePath": "markdown/canvas/guide/sessions.md",
263
- "createdAt": 1793918065000
263
+ "createdAt": 1794409641000
264
264
  },
265
265
  {
266
266
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:1:pull-up",
@@ -270,7 +270,7 @@
270
270
  "effortSlug": "pull-up",
271
271
  "isStatic": true,
272
272
  "sourcePath": "markdown/canvas/guide/sessions.md",
273
- "createdAt": 1793918065000
273
+ "createdAt": 1794409641000
274
274
  },
275
275
  {
276
276
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:1:push-up",
@@ -280,7 +280,7 @@
280
280
  "effortSlug": "push-up",
281
281
  "isStatic": true,
282
282
  "sourcePath": "markdown/canvas/guide/sessions.md",
283
- "createdAt": 1793918065000
283
+ "createdAt": 1794409641000
284
284
  },
285
285
  {
286
286
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:1:back-squat",
@@ -290,7 +290,7 @@
290
290
  "effortSlug": "back-squat",
291
291
  "isStatic": true,
292
292
  "sourcePath": "markdown/canvas/guide/sessions.md",
293
- "createdAt": 1793918065000
293
+ "createdAt": 1794409641000
294
294
  },
295
295
  {
296
296
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:2:pull-up",
@@ -300,7 +300,7 @@
300
300
  "effortSlug": "pull-up",
301
301
  "isStatic": true,
302
302
  "sourcePath": "markdown/canvas/guide/sessions.md",
303
- "createdAt": 1793918065000
303
+ "createdAt": 1794409641000
304
304
  },
305
305
  {
306
306
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:2:push-up",
@@ -310,7 +310,7 @@
310
310
  "effortSlug": "push-up",
311
311
  "isStatic": true,
312
312
  "sourcePath": "markdown/canvas/guide/sessions.md",
313
- "createdAt": 1793918065000
313
+ "createdAt": 1794409641000
314
314
  },
315
315
  {
316
316
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:2:air-squat",
@@ -320,7 +320,7 @@
320
320
  "effortSlug": "air-squat",
321
321
  "isStatic": true,
322
322
  "sourcePath": "markdown/canvas/guide/sessions.md",
323
- "createdAt": 1793918065000
323
+ "createdAt": 1794409641000
324
324
  },
325
325
  {
326
326
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:2:burpee",
@@ -330,7 +330,7 @@
330
330
  "effortSlug": "burpee",
331
331
  "isStatic": true,
332
332
  "sourcePath": "markdown/canvas/guide/sessions.md",
333
- "createdAt": 1793918065000
333
+ "createdAt": 1794409641000
334
334
  },
335
335
  {
336
336
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:3:running-sprint",
@@ -340,7 +340,7 @@
340
340
  "effortSlug": "running-sprint",
341
341
  "isStatic": true,
342
342
  "sourcePath": "markdown/canvas/guide/sessions.md",
343
- "createdAt": 1793918065000
343
+ "createdAt": 1794409641000
344
344
  },
345
345
  {
346
346
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:3:swimming-freestyle",
@@ -350,7 +350,7 @@
350
350
  "effortSlug": "swimming-freestyle",
351
351
  "isStatic": true,
352
352
  "sourcePath": "markdown/canvas/guide/sessions.md",
353
- "createdAt": 1793918065000
353
+ "createdAt": 1794409641000
354
354
  },
355
355
  {
356
356
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:3:swimming-individual-medley",
@@ -360,7 +360,7 @@
360
360
  "effortSlug": "swimming-individual-medley",
361
361
  "isStatic": true,
362
362
  "sourcePath": "markdown/canvas/guide/sessions.md",
363
- "createdAt": 1793918065000
363
+ "createdAt": 1794409641000
364
364
  },
365
365
  {
366
366
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:4:power-clean",
@@ -370,7 +370,7 @@
370
370
  "effortSlug": "power-clean",
371
371
  "isStatic": true,
372
372
  "sourcePath": "markdown/canvas/guide/sessions.md",
373
- "createdAt": 1793918065000
373
+ "createdAt": 1794409641000
374
374
  },
375
375
  {
376
376
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:5:back-squat",
@@ -380,7 +380,7 @@
380
380
  "effortSlug": "back-squat",
381
381
  "isStatic": true,
382
382
  "sourcePath": "markdown/canvas/guide/sessions.md",
383
- "createdAt": 1793918065000
383
+ "createdAt": 1794409641000
384
384
  }
385
385
  ],
386
386
  "blockEquipment": [
@@ -392,7 +392,7 @@
392
392
  "equipmentSlug": "barbell",
393
393
  "isStatic": true,
394
394
  "sourcePath": "markdown/canvas/guide/sessions.md",
395
- "createdAt": 1793918065000
395
+ "createdAt": 1794409641000
396
396
  },
397
397
  {
398
398
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:0:pull-up-bar",
@@ -402,7 +402,7 @@
402
402
  "equipmentSlug": "pull-up-bar",
403
403
  "isStatic": true,
404
404
  "sourcePath": "markdown/canvas/guide/sessions.md",
405
- "createdAt": 1793918065000
405
+ "createdAt": 1794409641000
406
406
  },
407
407
  {
408
408
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:1:pull-up-bar",
@@ -412,7 +412,7 @@
412
412
  "equipmentSlug": "pull-up-bar",
413
413
  "isStatic": true,
414
414
  "sourcePath": "markdown/canvas/guide/sessions.md",
415
- "createdAt": 1793918065000
415
+ "createdAt": 1794409641000
416
416
  },
417
417
  {
418
418
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:1:barbell",
@@ -422,7 +422,7 @@
422
422
  "equipmentSlug": "barbell",
423
423
  "isStatic": true,
424
424
  "sourcePath": "markdown/canvas/guide/sessions.md",
425
- "createdAt": 1793918065000
425
+ "createdAt": 1794409641000
426
426
  },
427
427
  {
428
428
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:2:pull-up-bar",
@@ -432,7 +432,7 @@
432
432
  "equipmentSlug": "pull-up-bar",
433
433
  "isStatic": true,
434
434
  "sourcePath": "markdown/canvas/guide/sessions.md",
435
- "createdAt": 1793918065000
435
+ "createdAt": 1794409641000
436
436
  },
437
437
  {
438
438
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:4:barbell",
@@ -442,7 +442,7 @@
442
442
  "equipmentSlug": "barbell",
443
443
  "isStatic": true,
444
444
  "sourcePath": "markdown/canvas/guide/sessions.md",
445
- "createdAt": 1793918065000
445
+ "createdAt": 1794409641000
446
446
  },
447
447
  {
448
448
  "id": "page/guide-sessions:seed:markdown/canvas/guide/sessions.md:5:barbell",
@@ -452,10 +452,10 @@
452
452
  "equipmentSlug": "barbell",
453
453
  "isStatic": true,
454
454
  "sourcePath": "markdown/canvas/guide/sessions.md",
455
- "createdAt": 1793918065000
455
+ "createdAt": 1794409641000
456
456
  }
457
457
  ],
458
- "commit": "79e6e99e56151160549a49c437573fc03947529d",
458
+ "commit": "15e2fcb59b9b84e5d0332ae290c42623a308653b",
459
459
  "uuid": "ee6f152f-168b-53f6-a3db-d8ad88e15a4e",
460
460
  "version": 1
461
461
  }