wtf-p 0.7.2 → 0.7.3

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 (356) hide show
  1. package/README.md +9 -9
  2. package/bin/commands/install-logic.js +37 -10
  3. package/bin/lib/adapter-compiler.js +12 -10
  4. package/package.json +1 -1
  5. package/protocol/skills/wtfp-deliver-research/references/actions.md +4 -4
  6. package/protocol/templates/poster.md +124 -41
  7. package/protocol/templates/slides.md +8 -4
  8. package/protocol/workflows/create-poster.md +4 -4
  9. package/protocol/workflows/create-slides.md +2 -2
  10. package/vendors/antigravity/.wtfp-generated.json +43 -43
  11. package/vendors/antigravity/commands/wtfp-add-todo.md +2 -2
  12. package/vendors/antigravity/commands/wtfp-analyze-bib.md +2 -2
  13. package/vendors/antigravity/commands/wtfp-audit-milestone.md +2 -2
  14. package/vendors/antigravity/commands/wtfp-check-refs.md +2 -2
  15. package/vendors/antigravity/commands/wtfp-check-todos.md +2 -2
  16. package/vendors/antigravity/commands/wtfp-checkpoint.md +2 -2
  17. package/vendors/antigravity/commands/wtfp-contribute.md +2 -2
  18. package/vendors/antigravity/commands/wtfp-create-outline.md +2 -2
  19. package/vendors/antigravity/commands/wtfp-create-poster.md +6 -6
  20. package/vendors/antigravity/commands/wtfp-create-slides.md +4 -4
  21. package/vendors/antigravity/commands/wtfp-discuss-section.md +2 -2
  22. package/vendors/antigravity/commands/wtfp-execute-outline.md +2 -2
  23. package/vendors/antigravity/commands/wtfp-export-latex.md +2 -2
  24. package/vendors/antigravity/commands/wtfp-help.md +2 -2
  25. package/vendors/antigravity/commands/wtfp-insert-section.md +2 -2
  26. package/vendors/antigravity/commands/wtfp-list-assumptions.md +2 -2
  27. package/vendors/antigravity/commands/wtfp-map-project.md +2 -2
  28. package/vendors/antigravity/commands/wtfp-new-paper.md +2 -2
  29. package/vendors/antigravity/commands/wtfp-pause-writing.md +2 -2
  30. package/vendors/antigravity/commands/wtfp-plan-milestone-gaps.md +2 -2
  31. package/vendors/antigravity/commands/wtfp-plan-revision.md +2 -2
  32. package/vendors/antigravity/commands/wtfp-plan-section.md +2 -2
  33. package/vendors/antigravity/commands/wtfp-polish-prose.md +2 -2
  34. package/vendors/antigravity/commands/wtfp-progress.md +2 -2
  35. package/vendors/antigravity/commands/wtfp-quick.md +2 -2
  36. package/vendors/antigravity/commands/wtfp-remove-section.md +2 -2
  37. package/vendors/antigravity/commands/wtfp-report-bug.md +2 -2
  38. package/vendors/antigravity/commands/wtfp-request-feature.md +2 -2
  39. package/vendors/antigravity/commands/wtfp-research-gap.md +2 -2
  40. package/vendors/antigravity/commands/wtfp-resume-writing.md +2 -2
  41. package/vendors/antigravity/commands/wtfp-review-section.md +2 -2
  42. package/vendors/antigravity/commands/wtfp-settings.md +2 -2
  43. package/vendors/antigravity/commands/wtfp-submit-milestone.md +2 -2
  44. package/vendors/antigravity/commands/wtfp-update.md +2 -2
  45. package/vendors/antigravity/commands/wtfp-verify-work.md +2 -2
  46. package/vendors/antigravity/commands/wtfp-write-section.md +2 -2
  47. package/vendors/antigravity/plugin.json +1 -1
  48. package/vendors/antigravity/skills/wtfp-deliver-research/references/actions.md +4 -4
  49. package/vendors/antigravity/templates/poster.md +124 -41
  50. package/vendors/antigravity/templates/slides.md +8 -4
  51. package/vendors/antigravity/workflows/create-poster.md +4 -4
  52. package/vendors/antigravity/workflows/create-slides.md +2 -2
  53. package/vendors/claude/.claude-plugin/marketplace.json +2 -2
  54. package/vendors/claude/.claude-plugin/plugin.json +1 -1
  55. package/vendors/claude/.wtfp-generated.json +81 -81
  56. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/add-todo.md +2 -2
  57. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +2 -2
  58. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/audit-milestone.md +2 -2
  59. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/check-refs.md +2 -2
  60. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/check-todos.md +2 -2
  61. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/checkpoint.md +2 -2
  62. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/contribute.md +2 -2
  63. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/create-outline.md +2 -2
  64. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/create-poster.md +6 -6
  65. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/create-slides.md +4 -4
  66. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/discuss-section.md +2 -2
  67. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/execute-outline.md +2 -2
  68. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/export-latex.md +2 -2
  69. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/help.md +3 -3
  70. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/insert-section.md +2 -2
  71. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/list-assumptions.md +2 -2
  72. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/map-project.md +2 -2
  73. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/new-paper.md +2 -2
  74. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/pause-writing.md +2 -2
  75. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/plan-milestone-gaps.md +2 -2
  76. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/plan-revision.md +2 -2
  77. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/plan-section.md +2 -2
  78. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/polish-prose.md +2 -2
  79. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/progress.md +2 -2
  80. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/quick.md +2 -2
  81. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/remove-section.md +2 -2
  82. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/report-bug.md +2 -2
  83. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/request-feature.md +2 -2
  84. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/research-gap.md +2 -2
  85. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/resume-writing.md +2 -2
  86. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/review-section.md +2 -2
  87. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/settings.md +2 -2
  88. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/submit-milestone.md +2 -2
  89. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/update.md +2 -2
  90. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/verify-work.md +2 -2
  91. package/vendors/claude/ai.iowarp.clio/prompts/wtfp/write-section.md +2 -2
  92. package/vendors/claude/commands/add-todo.md +2 -2
  93. package/vendors/claude/commands/analyze-bib.md +2 -2
  94. package/vendors/claude/commands/audit-milestone.md +2 -2
  95. package/vendors/claude/commands/check-refs.md +2 -2
  96. package/vendors/claude/commands/check-todos.md +2 -2
  97. package/vendors/claude/commands/checkpoint.md +2 -2
  98. package/vendors/claude/commands/contribute.md +2 -2
  99. package/vendors/claude/commands/create-outline.md +2 -2
  100. package/vendors/claude/commands/create-poster.md +6 -6
  101. package/vendors/claude/commands/create-slides.md +4 -4
  102. package/vendors/claude/commands/discuss-section.md +2 -2
  103. package/vendors/claude/commands/execute-outline.md +2 -2
  104. package/vendors/claude/commands/export-latex.md +2 -2
  105. package/vendors/claude/commands/help.md +2 -2
  106. package/vendors/claude/commands/insert-section.md +2 -2
  107. package/vendors/claude/commands/list-assumptions.md +2 -2
  108. package/vendors/claude/commands/map-project.md +2 -2
  109. package/vendors/claude/commands/new-paper.md +2 -2
  110. package/vendors/claude/commands/pause-writing.md +2 -2
  111. package/vendors/claude/commands/plan-milestone-gaps.md +2 -2
  112. package/vendors/claude/commands/plan-revision.md +2 -2
  113. package/vendors/claude/commands/plan-section.md +2 -2
  114. package/vendors/claude/commands/polish-prose.md +2 -2
  115. package/vendors/claude/commands/progress.md +2 -2
  116. package/vendors/claude/commands/quick.md +2 -2
  117. package/vendors/claude/commands/remove-section.md +2 -2
  118. package/vendors/claude/commands/report-bug.md +2 -2
  119. package/vendors/claude/commands/request-feature.md +2 -2
  120. package/vendors/claude/commands/research-gap.md +2 -2
  121. package/vendors/claude/commands/resume-writing.md +2 -2
  122. package/vendors/claude/commands/review-section.md +2 -2
  123. package/vendors/claude/commands/settings.md +2 -2
  124. package/vendors/claude/commands/submit-milestone.md +2 -2
  125. package/vendors/claude/commands/update.md +2 -2
  126. package/vendors/claude/commands/verify-work.md +2 -2
  127. package/vendors/claude/commands/write-section.md +2 -2
  128. package/vendors/claude/plugin.json +1 -1
  129. package/vendors/claude/skills/wtfp-deliver-research/references/actions.md +4 -4
  130. package/vendors/claude/templates/poster.md +124 -41
  131. package/vendors/claude/templates/slides.md +8 -4
  132. package/vendors/claude/workflows/create-poster.md +4 -4
  133. package/vendors/claude/workflows/create-slides.md +2 -2
  134. package/vendors/codex/plugins/wtfp/.codex-plugin/plugin.json +1 -1
  135. package/vendors/codex/plugins/wtfp/.wtfp-generated.json +8 -8
  136. package/vendors/codex/plugins/wtfp/plugin.json +1 -1
  137. package/vendors/codex/plugins/wtfp/skills/wtfp-deliver-research/references/actions.md +4 -4
  138. package/vendors/codex/plugins/wtfp/templates/poster.md +124 -41
  139. package/vendors/codex/plugins/wtfp/templates/slides.md +8 -4
  140. package/vendors/codex/plugins/wtfp/workflows/create-poster.md +4 -4
  141. package/vendors/codex/plugins/wtfp/workflows/create-slides.md +2 -2
  142. package/vendors/copilot/.wtfp-generated.json +44 -44
  143. package/vendors/copilot/marketplace.json +2 -2
  144. package/vendors/copilot/plugins/wtfp/.claude-plugin/plugin.json +1 -1
  145. package/vendors/copilot/plugins/wtfp/.wtfp-generated.json +43 -43
  146. package/vendors/copilot/plugins/wtfp/commands/wtfp-add-todo.md +2 -2
  147. package/vendors/copilot/plugins/wtfp/commands/wtfp-analyze-bib.md +2 -2
  148. package/vendors/copilot/plugins/wtfp/commands/wtfp-audit-milestone.md +2 -2
  149. package/vendors/copilot/plugins/wtfp/commands/wtfp-check-refs.md +2 -2
  150. package/vendors/copilot/plugins/wtfp/commands/wtfp-check-todos.md +2 -2
  151. package/vendors/copilot/plugins/wtfp/commands/wtfp-checkpoint.md +2 -2
  152. package/vendors/copilot/plugins/wtfp/commands/wtfp-contribute.md +2 -2
  153. package/vendors/copilot/plugins/wtfp/commands/wtfp-create-outline.md +2 -2
  154. package/vendors/copilot/plugins/wtfp/commands/wtfp-create-poster.md +6 -6
  155. package/vendors/copilot/plugins/wtfp/commands/wtfp-create-slides.md +4 -4
  156. package/vendors/copilot/plugins/wtfp/commands/wtfp-discuss-section.md +2 -2
  157. package/vendors/copilot/plugins/wtfp/commands/wtfp-execute-outline.md +2 -2
  158. package/vendors/copilot/plugins/wtfp/commands/wtfp-export-latex.md +2 -2
  159. package/vendors/copilot/plugins/wtfp/commands/wtfp-help.md +2 -2
  160. package/vendors/copilot/plugins/wtfp/commands/wtfp-insert-section.md +2 -2
  161. package/vendors/copilot/plugins/wtfp/commands/wtfp-list-assumptions.md +2 -2
  162. package/vendors/copilot/plugins/wtfp/commands/wtfp-map-project.md +2 -2
  163. package/vendors/copilot/plugins/wtfp/commands/wtfp-new-paper.md +2 -2
  164. package/vendors/copilot/plugins/wtfp/commands/wtfp-pause-writing.md +2 -2
  165. package/vendors/copilot/plugins/wtfp/commands/wtfp-plan-milestone-gaps.md +2 -2
  166. package/vendors/copilot/plugins/wtfp/commands/wtfp-plan-revision.md +2 -2
  167. package/vendors/copilot/plugins/wtfp/commands/wtfp-plan-section.md +2 -2
  168. package/vendors/copilot/plugins/wtfp/commands/wtfp-polish-prose.md +2 -2
  169. package/vendors/copilot/plugins/wtfp/commands/wtfp-progress.md +2 -2
  170. package/vendors/copilot/plugins/wtfp/commands/wtfp-quick.md +2 -2
  171. package/vendors/copilot/plugins/wtfp/commands/wtfp-remove-section.md +2 -2
  172. package/vendors/copilot/plugins/wtfp/commands/wtfp-report-bug.md +2 -2
  173. package/vendors/copilot/plugins/wtfp/commands/wtfp-request-feature.md +2 -2
  174. package/vendors/copilot/plugins/wtfp/commands/wtfp-research-gap.md +2 -2
  175. package/vendors/copilot/plugins/wtfp/commands/wtfp-resume-writing.md +2 -2
  176. package/vendors/copilot/plugins/wtfp/commands/wtfp-review-section.md +2 -2
  177. package/vendors/copilot/plugins/wtfp/commands/wtfp-settings.md +2 -2
  178. package/vendors/copilot/plugins/wtfp/commands/wtfp-submit-milestone.md +2 -2
  179. package/vendors/copilot/plugins/wtfp/commands/wtfp-update.md +2 -2
  180. package/vendors/copilot/plugins/wtfp/commands/wtfp-verify-work.md +2 -2
  181. package/vendors/copilot/plugins/wtfp/commands/wtfp-write-section.md +2 -2
  182. package/vendors/copilot/plugins/wtfp/skills/wtfp-deliver-research/references/actions.md +4 -4
  183. package/vendors/copilot/plugins/wtfp/templates/poster.md +124 -41
  184. package/vendors/copilot/plugins/wtfp/templates/slides.md +8 -4
  185. package/vendors/copilot/plugins/wtfp/workflows/create-poster.md +4 -4
  186. package/vendors/copilot/plugins/wtfp/workflows/create-slides.md +2 -2
  187. package/vendors/copilot/project/.github/prompts/wtfp-add-todo.prompt.md +2 -2
  188. package/vendors/copilot/project/.github/prompts/wtfp-analyze-bib.prompt.md +2 -2
  189. package/vendors/copilot/project/.github/prompts/wtfp-audit-milestone.prompt.md +2 -2
  190. package/vendors/copilot/project/.github/prompts/wtfp-check-refs.prompt.md +2 -2
  191. package/vendors/copilot/project/.github/prompts/wtfp-check-todos.prompt.md +2 -2
  192. package/vendors/copilot/project/.github/prompts/wtfp-checkpoint.prompt.md +2 -2
  193. package/vendors/copilot/project/.github/prompts/wtfp-contribute.prompt.md +2 -2
  194. package/vendors/copilot/project/.github/prompts/wtfp-create-outline.prompt.md +2 -2
  195. package/vendors/copilot/project/.github/prompts/wtfp-create-poster.prompt.md +2 -2
  196. package/vendors/copilot/project/.github/prompts/wtfp-create-slides.prompt.md +2 -2
  197. package/vendors/copilot/project/.github/prompts/wtfp-discuss-section.prompt.md +2 -2
  198. package/vendors/copilot/project/.github/prompts/wtfp-execute-outline.prompt.md +2 -2
  199. package/vendors/copilot/project/.github/prompts/wtfp-export-latex.prompt.md +2 -2
  200. package/vendors/copilot/project/.github/prompts/wtfp-help.prompt.md +2 -2
  201. package/vendors/copilot/project/.github/prompts/wtfp-insert-section.prompt.md +2 -2
  202. package/vendors/copilot/project/.github/prompts/wtfp-list-assumptions.prompt.md +2 -2
  203. package/vendors/copilot/project/.github/prompts/wtfp-map-project.prompt.md +2 -2
  204. package/vendors/copilot/project/.github/prompts/wtfp-new-paper.prompt.md +2 -2
  205. package/vendors/copilot/project/.github/prompts/wtfp-pause-writing.prompt.md +2 -2
  206. package/vendors/copilot/project/.github/prompts/wtfp-plan-milestone-gaps.prompt.md +2 -2
  207. package/vendors/copilot/project/.github/prompts/wtfp-plan-revision.prompt.md +2 -2
  208. package/vendors/copilot/project/.github/prompts/wtfp-plan-section.prompt.md +2 -2
  209. package/vendors/copilot/project/.github/prompts/wtfp-polish-prose.prompt.md +2 -2
  210. package/vendors/copilot/project/.github/prompts/wtfp-progress.prompt.md +2 -2
  211. package/vendors/copilot/project/.github/prompts/wtfp-quick.prompt.md +2 -2
  212. package/vendors/copilot/project/.github/prompts/wtfp-remove-section.prompt.md +2 -2
  213. package/vendors/copilot/project/.github/prompts/wtfp-report-bug.prompt.md +2 -2
  214. package/vendors/copilot/project/.github/prompts/wtfp-request-feature.prompt.md +2 -2
  215. package/vendors/copilot/project/.github/prompts/wtfp-research-gap.prompt.md +2 -2
  216. package/vendors/copilot/project/.github/prompts/wtfp-resume-writing.prompt.md +2 -2
  217. package/vendors/copilot/project/.github/prompts/wtfp-review-section.prompt.md +2 -2
  218. package/vendors/copilot/project/.github/prompts/wtfp-settings.prompt.md +2 -2
  219. package/vendors/copilot/project/.github/prompts/wtfp-submit-milestone.prompt.md +2 -2
  220. package/vendors/copilot/project/.github/prompts/wtfp-update.prompt.md +2 -2
  221. package/vendors/copilot/project/.github/prompts/wtfp-verify-work.prompt.md +2 -2
  222. package/vendors/copilot/project/.github/prompts/wtfp-write-section.prompt.md +2 -2
  223. package/vendors/copilot/project/.github/skills/wtfp-deliver-research/references/actions.md +4 -4
  224. package/vendors/copilot/project/.github/wtfp/skills/wtfp-deliver-research/references/actions.md +4 -4
  225. package/vendors/copilot/project/.github/wtfp/templates/poster.md +124 -41
  226. package/vendors/copilot/project/.github/wtfp/templates/slides.md +8 -4
  227. package/vendors/copilot/project/.github/wtfp/workflows/create-poster.md +4 -4
  228. package/vendors/copilot/project/.github/wtfp/workflows/create-slides.md +2 -2
  229. package/vendors/gemini/.wtfp-generated.json +43 -43
  230. package/vendors/gemini/commands/wtfp/add-todo.toml +1 -1
  231. package/vendors/gemini/commands/wtfp/analyze-bib.toml +1 -1
  232. package/vendors/gemini/commands/wtfp/audit-milestone.toml +1 -1
  233. package/vendors/gemini/commands/wtfp/check-refs.toml +1 -1
  234. package/vendors/gemini/commands/wtfp/check-todos.toml +1 -1
  235. package/vendors/gemini/commands/wtfp/checkpoint.toml +1 -1
  236. package/vendors/gemini/commands/wtfp/contribute.toml +1 -1
  237. package/vendors/gemini/commands/wtfp/create-outline.toml +1 -1
  238. package/vendors/gemini/commands/wtfp/create-poster.toml +133 -50
  239. package/vendors/gemini/commands/wtfp/create-slides.toml +15 -11
  240. package/vendors/gemini/commands/wtfp/discuss-section.toml +1 -1
  241. package/vendors/gemini/commands/wtfp/execute-outline.toml +1 -1
  242. package/vendors/gemini/commands/wtfp/export-latex.toml +1 -1
  243. package/vendors/gemini/commands/wtfp/help.toml +1 -1
  244. package/vendors/gemini/commands/wtfp/insert-section.toml +1 -1
  245. package/vendors/gemini/commands/wtfp/list-assumptions.toml +1 -1
  246. package/vendors/gemini/commands/wtfp/map-project.toml +1 -1
  247. package/vendors/gemini/commands/wtfp/new-paper.toml +1 -1
  248. package/vendors/gemini/commands/wtfp/pause-writing.toml +1 -1
  249. package/vendors/gemini/commands/wtfp/plan-milestone-gaps.toml +1 -1
  250. package/vendors/gemini/commands/wtfp/plan-revision.toml +1 -1
  251. package/vendors/gemini/commands/wtfp/plan-section.toml +1 -1
  252. package/vendors/gemini/commands/wtfp/polish-prose.toml +1 -1
  253. package/vendors/gemini/commands/wtfp/progress.toml +1 -1
  254. package/vendors/gemini/commands/wtfp/quick.toml +1 -1
  255. package/vendors/gemini/commands/wtfp/remove-section.toml +1 -1
  256. package/vendors/gemini/commands/wtfp/report-bug.toml +1 -1
  257. package/vendors/gemini/commands/wtfp/request-feature.toml +1 -1
  258. package/vendors/gemini/commands/wtfp/research-gap.toml +1 -1
  259. package/vendors/gemini/commands/wtfp/resume-writing.toml +1 -1
  260. package/vendors/gemini/commands/wtfp/review-section.toml +1 -1
  261. package/vendors/gemini/commands/wtfp/settings.toml +1 -1
  262. package/vendors/gemini/commands/wtfp/submit-milestone.toml +5 -5
  263. package/vendors/gemini/commands/wtfp/update.toml +1 -1
  264. package/vendors/gemini/commands/wtfp/verify-work.toml +1 -1
  265. package/vendors/gemini/commands/wtfp/write-section.toml +1 -1
  266. package/vendors/gemini/gemini-extension.json +1 -1
  267. package/vendors/gemini/skills/wtfp-deliver-research/references/actions.md +4 -4
  268. package/vendors/gemini/templates/poster.md +124 -41
  269. package/vendors/gemini/templates/slides.md +8 -4
  270. package/vendors/gemini/workflows/create-poster.md +4 -4
  271. package/vendors/gemini/workflows/create-slides.md +2 -2
  272. package/vendors/opencode/.wtfp-generated.json +42 -42
  273. package/vendors/opencode/commands/wtfp/add-todo.md +2 -2
  274. package/vendors/opencode/commands/wtfp/analyze-bib.md +2 -2
  275. package/vendors/opencode/commands/wtfp/audit-milestone.md +2 -2
  276. package/vendors/opencode/commands/wtfp/check-refs.md +2 -2
  277. package/vendors/opencode/commands/wtfp/check-todos.md +2 -2
  278. package/vendors/opencode/commands/wtfp/checkpoint.md +2 -2
  279. package/vendors/opencode/commands/wtfp/contribute.md +2 -2
  280. package/vendors/opencode/commands/wtfp/create-outline.md +2 -2
  281. package/vendors/opencode/commands/wtfp/create-poster.md +134 -51
  282. package/vendors/opencode/commands/wtfp/create-slides.md +16 -12
  283. package/vendors/opencode/commands/wtfp/discuss-section.md +2 -2
  284. package/vendors/opencode/commands/wtfp/execute-outline.md +2 -2
  285. package/vendors/opencode/commands/wtfp/export-latex.md +2 -2
  286. package/vendors/opencode/commands/wtfp/help.md +2 -2
  287. package/vendors/opencode/commands/wtfp/insert-section.md +2 -2
  288. package/vendors/opencode/commands/wtfp/list-assumptions.md +2 -2
  289. package/vendors/opencode/commands/wtfp/map-project.md +2 -2
  290. package/vendors/opencode/commands/wtfp/new-paper.md +2 -2
  291. package/vendors/opencode/commands/wtfp/pause-writing.md +2 -2
  292. package/vendors/opencode/commands/wtfp/plan-milestone-gaps.md +2 -2
  293. package/vendors/opencode/commands/wtfp/plan-revision.md +2 -2
  294. package/vendors/opencode/commands/wtfp/plan-section.md +2 -2
  295. package/vendors/opencode/commands/wtfp/polish-prose.md +2 -2
  296. package/vendors/opencode/commands/wtfp/progress.md +2 -2
  297. package/vendors/opencode/commands/wtfp/quick.md +2 -2
  298. package/vendors/opencode/commands/wtfp/remove-section.md +2 -2
  299. package/vendors/opencode/commands/wtfp/report-bug.md +2 -2
  300. package/vendors/opencode/commands/wtfp/request-feature.md +2 -2
  301. package/vendors/opencode/commands/wtfp/research-gap.md +2 -2
  302. package/vendors/opencode/commands/wtfp/resume-writing.md +2 -2
  303. package/vendors/opencode/commands/wtfp/review-section.md +2 -2
  304. package/vendors/opencode/commands/wtfp/settings.md +2 -2
  305. package/vendors/opencode/commands/wtfp/submit-milestone.md +6 -6
  306. package/vendors/opencode/commands/wtfp/update.md +2 -2
  307. package/vendors/opencode/commands/wtfp/verify-work.md +2 -2
  308. package/vendors/opencode/commands/wtfp/write-section.md +2 -2
  309. package/vendors/opencode/skills/wtfp-deliver-research/references/actions.md +4 -4
  310. package/vendors/opencode/templates/poster.md +124 -41
  311. package/vendors/opencode/templates/slides.md +8 -4
  312. package/vendors/opencode/workflows/create-poster.md +4 -4
  313. package/vendors/opencode/workflows/create-slides.md +2 -2
  314. package/vendors/plugin/.wtfp-generated.json +43 -43
  315. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/add-todo.md +2 -2
  316. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/analyze-bib.md +2 -2
  317. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/audit-milestone.md +2 -2
  318. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-refs.md +2 -2
  319. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/check-todos.md +2 -2
  320. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/checkpoint.md +2 -2
  321. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/contribute.md +2 -2
  322. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/create-outline.md +2 -2
  323. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/create-poster.md +6 -6
  324. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/create-slides.md +4 -4
  325. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/discuss-section.md +2 -2
  326. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/execute-outline.md +2 -2
  327. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/export-latex.md +2 -2
  328. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/help.md +3 -3
  329. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/insert-section.md +2 -2
  330. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/list-assumptions.md +2 -2
  331. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/map-project.md +2 -2
  332. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/new-paper.md +2 -2
  333. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/pause-writing.md +2 -2
  334. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-milestone-gaps.md +2 -2
  335. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-revision.md +2 -2
  336. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/plan-section.md +2 -2
  337. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/polish-prose.md +2 -2
  338. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/progress.md +2 -2
  339. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/quick.md +2 -2
  340. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/remove-section.md +2 -2
  341. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/report-bug.md +2 -2
  342. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/request-feature.md +2 -2
  343. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/research-gap.md +2 -2
  344. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/resume-writing.md +2 -2
  345. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/review-section.md +2 -2
  346. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/settings.md +2 -2
  347. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/submit-milestone.md +2 -2
  348. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/update.md +2 -2
  349. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/verify-work.md +2 -2
  350. package/vendors/plugin/ai.iowarp.clio/prompts/wtfp/write-section.md +2 -2
  351. package/vendors/plugin/plugin.json +1 -1
  352. package/vendors/plugin/skills/wtfp-deliver-research/references/actions.md +4 -4
  353. package/vendors/plugin/templates/poster.md +124 -41
  354. package/vendors/plugin/templates/slides.md +8 -4
  355. package/vendors/plugin/workflows/create-poster.md +4 -4
  356. package/vendors/plugin/workflows/create-slides.md +2 -2
package/README.md CHANGED
@@ -19,7 +19,7 @@ the scientific judgment. The agent keeps the bookkeeping and does bounded jobs.
19
19
 
20
20
  It ships as one canonical [Agent Plugins 1.0.0](https://agent-plugins.org)
21
21
  bundle that a deterministic compiler projects into a native package for seven
22
- coding-agent hosts. Version `0.7.2` is the current stable release and is
22
+ coding-agent hosts. Version `0.7.3` is the current stable release and is
23
23
  what npm `latest` resolves to; v0.5 remains installable by explicit version.
24
24
 
25
25
  **Optional CiteNexus research backend (since 0.7.0):** `citation-search --backend=cite-nexus`
@@ -56,13 +56,13 @@ registers it with the host's native plugin lifecycle where one exists.
56
56
 
57
57
  | Host | Install | Native registration the installer performs | Verified with |
58
58
  | --- | --- | --- | --- |
59
- | Clio Coder (0.4.7 or newer) | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install clio` | `clio-coder library install <staged-bundle> --user`, then `clio-coder library inspect wtfp --user --json` | 0.4.9 (local build) |
60
- | Claude Code | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install claude` | `claude plugin marketplace add <root>/marketplaces/wtfp --scope user`, then `claude plugin install wtfp@wtfp --scope user -y` | 2.1.274 |
61
- | Codex | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install codex` | `codex plugin marketplace add <root>/marketplaces/wtfp`, then `codex plugin add wtfp@wtfp --json`; agents copied to `$CODEX_HOME/agents/` | 0.153.3 |
62
- | GitHub Copilot CLI | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install copilot` | `copilot plugin marketplace add <root>/marketplaces/wtfp`, then `copilot plugin install wtfp@wtfp` | 1.0.85 |
63
- | OpenCode | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install opencode` | Files under the OpenCode config root; OpenCode discovers them by directory | 1.18.31 |
64
- | Antigravity CLI | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install antigravity` | `agy plugin install <root>/sources/wtfp` | 1.2.5 |
65
- | Gemini CLI | `npx --yes --package=wtf-p@0.7.2 -- wtf-p install gemini` | Files under `<root>/extensions/wtfp`; Gemini discovers the extension by directory | 0.60.0 |
59
+ | Clio Coder (0.4.7 or newer) | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install clio` | `clio-coder library install <staged-bundle> --user`, then `clio-coder library inspect wtfp --user --json` | 0.4.9 (local build) |
60
+ | Claude Code | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install claude` | `claude plugin marketplace add <root>/marketplaces/wtfp --scope user`, then `claude plugin install wtfp@wtfp --scope user -y` | 2.1.274 |
61
+ | Codex | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install codex` | `codex plugin marketplace add <root>/marketplaces/wtfp`, then `codex plugin add wtfp@wtfp --json`; agents copied to `$CODEX_HOME/agents/` | 0.153.3 |
62
+ | GitHub Copilot CLI | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install copilot` | `copilot plugin marketplace add <root>/marketplaces/wtfp`, then `copilot plugin install wtfp@wtfp` | 1.0.85 |
63
+ | OpenCode | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install opencode` | Files under the OpenCode config root; OpenCode discovers them by directory | 1.18.31 |
64
+ | Antigravity CLI | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install antigravity` | `agy plugin install <root>/sources/wtfp` | 1.2.5 |
65
+ | Gemini CLI | `npx --yes --package=wtf-p@0.7.3 -- wtf-p install gemini` | Files under `<root>/extensions/wtfp`; Gemini discovers the extension by directory | 0.60.0 |
66
66
 
67
67
  "Verified" means native discovery in a disposable profile on this exact
68
68
  envelope, with the commands recorded in
@@ -77,7 +77,7 @@ the old executable instead.
77
77
  ## Sixty-second start
78
78
 
79
79
  ```bash
80
- npx --yes --package=wtf-p@0.7.2 -- wtf-p install clio
80
+ npx --yes --package=wtf-p@0.7.3 -- wtf-p install clio
81
81
  cd /path/to/your-paper-or-proposal
82
82
  clio-coder --autonomy suggest
83
83
  ```
@@ -24,8 +24,11 @@ const {
24
24
  atomicWriteFile,
25
25
  createOwnedDirectory,
26
26
  createTargetGuard,
27
+ isTrustedReceipt,
27
28
  materializeTargetGuard,
28
29
  readOwnedRegularSnapshot,
30
+ readReceipt,
31
+ relativeOwnedPath,
29
32
  removeCreatedDirectories,
30
33
  sha256Buffer
31
34
  } = require('../lib/ownership');
@@ -221,8 +224,9 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
221
224
  const c = out.colors;
222
225
  let rl = null;
223
226
  let globalChoice = null;
224
- const stats = { installed: 0, skipped: 0, backed: 0 };
227
+ const stats = { installed: 0, skipped: 0, backed: 0, unchanged: 0 };
225
228
  const plan = [];
229
+ const retained = [];
226
230
  const targetGuard = options.targetGuard || createTargetGuard(targetDir);
227
231
 
228
232
  assertTargetGuard(targetGuard);
@@ -230,9 +234,21 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
230
234
  assertOwnedAbsolutePath(targetDir, file.dest, targetGuard);
231
235
  }
232
236
 
233
- const existingFiles = files.filter(file => Boolean(
234
- readOwnedRegularSnapshot(targetDir, file.dest, targetGuard, { allowMissing: true })
235
- ));
237
+ // A trusted receipt proves which existing files this package wrote. A file
238
+ // whose bytes still match its receipt hash is unmodified package output, so
239
+ // an upgrade replaces it without treating it as an operator conflict.
240
+ const { receipt } = readReceipt(targetDir, targetGuard);
241
+ const ownedHashes = new Map();
242
+ if (isTrustedReceipt(receipt, targetDir, targetGuard)) {
243
+ for (const entry of receipt.files) ownedHashes.set(entry.path, entry.sha256);
244
+ }
245
+ const ownedUnmodified = (file, snapshot) => Boolean(snapshot) &&
246
+ ownedHashes.get(relativeOwnedPath(targetDir, file.dest, targetGuard)) === snapshot.sha256;
247
+
248
+ const existingFiles = files.filter(file => {
249
+ const snapshot = readOwnedRegularSnapshot(targetDir, file.dest, targetGuard, { allowMissing: true });
250
+ return Boolean(snapshot) && !ownedUnmodified(file, snapshot);
251
+ });
236
252
 
237
253
  if (existingFiles.length > 0 && !hasForce && !hasBackupAll && isInteractive) {
238
254
  const relPath = getPathLabel(targetDir, true);
@@ -275,8 +291,19 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
275
291
  }
276
292
  }
277
293
 
294
+ const source = readSourceSnapshot(file);
295
+ const processed = processContent(file.src, pathPrefix, source.bytes);
296
+ const content = processed === null ? source.bytes : Buffer.from(processed, 'utf8');
297
+
278
298
  let choice = exists ? 'skip' : 'create';
279
- if (exists && hasBackupAll) {
299
+ if (exists && !hasForce && !hasBackupAll && ownedUnmodified(file, existingSnapshot)) {
300
+ if (sha256Buffer(content) === existingSnapshot.sha256) {
301
+ stats.unchanged++;
302
+ retained.push({ dest: file.dest, componentId: file.componentId, action: 'retained', backupPath: null });
303
+ continue;
304
+ }
305
+ choice = 'overwrite';
306
+ } else if (exists && hasBackupAll) {
280
307
  choice = 'backup';
281
308
  } else if (exists && hasForce) {
282
309
  choice = 'overwrite';
@@ -307,9 +334,6 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
307
334
  continue;
308
335
  }
309
336
 
310
- const source = readSourceSnapshot(file);
311
- const processed = processContent(file.src, pathPrefix, source.bytes);
312
- const content = processed === null ? source.bytes : Buffer.from(processed, 'utf8');
313
337
  plan.push({
314
338
  ...file,
315
339
  exists,
@@ -563,7 +587,10 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
563
587
 
564
588
  return {
565
589
  ...stats,
566
- writtenFiles: applied.map(({
590
+ // Retained files already hold this version's bytes. They join the receipt
591
+ // at the new version only when the transaction wrote something, so a
592
+ // no-op reinstall leaves the receipt untouched.
593
+ writtenFiles: applied.length === 0 ? [] : [...applied.map(({
567
594
  previousContent,
568
595
  previousMode,
569
596
  existed,
@@ -573,7 +600,7 @@ async function installWithConflictResolution(files, pathPrefix, targetDir, optio
573
600
  backupHash,
574
601
  backupIdentity,
575
602
  ...record
576
- }) => record),
603
+ }) => record), ...retained],
577
604
  rollback,
578
605
  commit() {
579
606
  rolledBack = true;
@@ -584,6 +584,8 @@ function inlineProtocolResources(workflowBody) {
584
584
  return trailing.length === 0 ? body : `${body}\n\n${trailing.join('\n\n')}`;
585
585
  }
586
586
 
587
+ // Action commands place this banner after the body. Hosts that title a session
588
+ // from the first text of an expanded command template would otherwise show it.
587
589
  function generatedBanner(kind, id) {
588
590
  return `<!-- Generated by WTF-P adapter compiler v${GENERATOR_VERSION} from ${kind}/${id}; do not edit. -->`;
589
591
  }
@@ -679,11 +681,11 @@ function clioHelpCard(model, availabilityById) {
679
681
  'display-only: true',
680
682
  '---',
681
683
  '',
682
- generatedBanner('protocol/actions', 'help'),
683
- '',
684
684
  '```text',
685
685
  card,
686
686
  '```',
687
+ '',
688
+ generatedBanner('protocol/actions', 'help'),
687
689
  ''
688
690
  ].join('\n');
689
691
  }
@@ -699,7 +701,7 @@ function renderMarkdownCommand(action, workflowBody, target, availability) {
699
701
  if (target === 'claude' || target === 'copilot' || target === 'antigravity') {
700
702
  lines.push('allowed-tools: []');
701
703
  }
702
- lines.push('---', '', generatedBanner('protocol/actions', action.id), '', blockedActionBody(action, target, availability), '');
704
+ lines.push('---', '', blockedActionBody(action, target, availability), '', generatedBanner('protocol/actions', action.id), '');
703
705
  return lines.join('\n');
704
706
  }
705
707
  lines.push('argument-hint: "[arguments]"');
@@ -715,9 +717,9 @@ function renderMarkdownCommand(action, workflowBody, target, availability) {
715
717
  lines.push(
716
718
  '---',
717
719
  '',
718
- generatedBanner('protocol/actions', action.id),
719
- '',
720
720
  userGateBody ? `${nativeBody}\n\n${userGateBody}` : nativeBody,
721
+ '',
722
+ generatedBanner('protocol/actions', action.id),
721
723
  ''
722
724
  );
723
725
  return lines.join('\n');
@@ -732,8 +734,8 @@ function renderGeminiCommand(action, workflowBody, availability) {
732
734
  `description = ${JSON.stringify(action.description)}`,
733
735
  '',
734
736
  "prompt = '''",
735
- generatedBanner('protocol/actions', action.id),
736
737
  body,
738
+ generatedBanner('protocol/actions', action.id),
737
739
  "'''",
738
740
  ''
739
741
  ].join('\n');
@@ -766,9 +768,9 @@ function renderCopilotCloudPrompt(action, workflowBody, availability) {
766
768
  lines.push(
767
769
  '---',
768
770
  '',
769
- generatedBanner('protocol/actions', action.id),
770
- '',
771
771
  blockedActionBody(action, 'copilot-cloud', availability),
772
+ '',
773
+ generatedBanner('protocol/actions', action.id),
772
774
  ''
773
775
  );
774
776
  return lines.join('\n');
@@ -779,9 +781,9 @@ function renderCopilotCloudPrompt(action, workflowBody, availability) {
779
781
  lines.push(
780
782
  '---',
781
783
  '',
782
- generatedBanner('protocol/actions', action.id),
783
- '',
784
784
  nativeCommandBody(action, workflowBody, 'copilot-cloud'),
785
+ '',
786
+ generatedBanner('protocol/actions', action.id),
785
787
  ''
786
788
  );
787
789
  return lines.join('\n');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wtf-p",
3
- "version": "0.7.2",
3
+ "version": "0.7.3",
4
4
  "description": "Portable, evidence-grounded academic writing workflows (papers, proposals, posters, presentations) for Clio Coder, Claude Code, Codex, GitHub Copilot CLI, OpenCode, Antigravity CLI, and Gemini CLI.",
5
5
  "bin": {
6
6
  "wtfp": "bin/install.js",
@@ -52,7 +52,7 @@ Contract: [protocol/actions/create-slides.json](../../../actions/create-slides.j
52
52
  1. Require project identity and enough manuscript or verified results to support a presentation.
53
53
  2. Ask for duration, expected slide count, audience, occasion, delivery format, visual style, and desired emphasis.
54
54
  3. Derive a timed narrative: audience problem, thesis, minimum background, method, strongest evidence, limitations, implications, and closing takeaway. Allocate time and slides before writing.
55
- 4. Use verified project claims and cite source or manuscript locations in speaker notes or a references slide. Do not introduce novel results to make the story cleaner.
55
+ 4. Use verified project claims and cite source or manuscript locations in speaker notes or a references slide. Do not introduce novel results to make the story cleaner. Refuse any claim without a ledger row, never invent speaker or venue metadata, and derive diagrams only from named source files or documents with stated paths.
56
56
  5. Prefer one communicative purpose per slide. Use concise text, readable type, high contrast, descriptive titles, accessible color, and alt text or equivalent descriptions for meaningful visuals.
57
57
  6. Use existing figures only when provenance and interpretation are known. Mark placeholders and data needs explicitly; never fabricate a chart.
58
58
  7. Generate editable slide source and a delivery manifest under `project://deliverables/slides/{artifact}`.
@@ -65,11 +65,11 @@ Completion requires an audience-appropriate editable deck with an honest render
65
65
 
66
66
  Contract: [protocol/actions/create-poster.json](../../../actions/create-poster.json)
67
67
 
68
- 1. Require project identity and verified manuscript findings. Ask for dimensions, orientation, venue rules, audience viewing distance, title, authors, affiliations, contact details, output format, and available visuals.
68
+ 1. Require project identity and verified manuscript findings. Ask for dimensions, orientation, venue rules, audience viewing distance, title, authors, affiliations, contact details, output format, and available visuals. Never invent missing metadata; leave a visible placeholder and report it.
69
69
  2. Define a non-linear reading hierarchy: one-sentence takeaway, motivation, minimal method, principal evidence, limitations, conclusion, and contact or artifact link.
70
70
  3. Budget physical space before writing. Prioritize the title, takeaway, and strongest figure; avoid shrinking prose to preserve excess content.
71
- 4. Use verified claims, values, citations, and figures. Record provenance and include accessible descriptions. Mark missing visuals as placeholders rather than generating false evidence.
72
- 5. Generate editable poster source and a delivery manifest under `project://deliverables/poster/{artifact}`.
71
+ 4. Use verified claims, values, citations, and figures, recorded in the claim ledger from `protocol://templates/poster.md`; refuse any statement without a source record, manuscript passage, or named project file. Derive diagrams only from named source files or documents and state their paths. Record provenance and include accessible descriptions. Mark missing visuals as placeholders rather than generating false evidence.
72
+ 5. Generate editable, laid-out poster source (the template's HTML grid or the venue's mandated template) and a delivery manifest with the claim ledger under `project://deliverables/poster/{artifact}`.
73
73
  6. Check dimensions, orientation, margins, font sizes at final scale, column flow, contrast, image resolution, citation legibility, link or code targets, and overflow.
74
74
  7. Render only when requested and a configured host-provided local renderer exists; invoke it under the action's declared `tool.execute` effect and verify the actual artifact dimensions. Distinguish source validity from render success.
75
75
  8. Report source and rendered paths, validation results, print-service considerations, and unresolved manual steps.
@@ -2,65 +2,148 @@
2
2
 
3
3
  Source structure for `project://deliverables/poster/{artifact}`. A poster is a standing argument read at two distances: the title and headline claim from three metres, the panels from one. It is not a slide deck and not a compressed paper.
4
4
 
5
- Copy the body below, replace every bracketed placeholder from the manuscript and its evidence records, and delete any panel the work does not support. WTF-P writes poster source only; it declares no rendering effect and runs no renderer. If the author wants a rendered PDF, hand back the exact command for their own toolchain.
5
+ The deliverable is a laid-out page, not a text outline. Write it as one self-contained HTML file (for example `project://deliverables/poster/poster.html`) using the skeleton below, which fixes the page size, grid, hierarchy, palette, and type scale in CSS. The author opens it in any browser to see the layout and prints it to PDF at the page size. If the venue mandates a LaTeX or PowerPoint template, use that template instead and carry over the same grid, hierarchy, and type scale. WTF-P writes poster source only; it declares no rendering effect and runs no renderer. If the author wants a rendered PDF, hand back the exact command or print step for their own toolchain.
6
+
7
+ Follow this scaffold literally. Replace every bracketed placeholder from the manuscript and its evidence records, and delete any panel the work does not support rather than filling it.
6
8
 
7
9
  ## Confirm before writing
8
10
 
9
- Dimensions and orientation, the venue's template or branding requirement, the session audience, the single claim the poster must land, and which figures already exist as artifacts.
11
+ Dimensions and orientation, the venue's template or branding requirement, the session audience, the single claim the poster must land, which figures already exist as artifacts, and the exact author names, affiliations, contact, funding, and venue line. Ask for any of these the manifest does not record.
12
+
13
+ ## Evidence gate
14
+
15
+ Complete this gate before writing any poster text, and repeat it on the finished file.
16
+
17
+ 1. Build a claim ledger: one row per claim, number, comparison, or figure the poster will carry, each naming its support as a manuscript passage, a `project://sources/{source}` record, a `project://evidence/{evidence}` record, or a named project file path.
18
+ 2. Refuse any row without support. Do not rephrase it into a softer claim; cut it. Statements about other systems, tools, or prior work (for example how another framework divides responsibilities) need a cited source record, never general knowledge.
19
+ 3. Never invent author names, affiliations, emails, funding, grant numbers, venue, or dates. When the manifest or the author does not supply one, leave a visible placeholder such as `[AFFILIATION NEEDED]` in the poster and list it under unresolved items in the report.
20
+ 4. Keep the ledger in the delivery manifest next to the poster so a reviewer can check every row.
21
+
22
+ ## Diagram provenance
23
+
24
+ Every diagram is evidence, not decoration.
10
25
 
11
- ## Budgets
26
+ - Reuse an existing manuscript figure when one exists, and cite its path.
27
+ - When the subject is software, derive architecture and flow diagrams only from named source files or documentation in the project the author pointed to. Read those files first. Every box and arrow must correspond to a module, component, call, or data path that exists in them.
28
+ - State the source paths under each diagram, for example `Source: src/router/dispatch.ts, docs/ARCHITECTURE.md`.
29
+ - Draw diagrams as inline SVG or Mermaid source so they stay editable. If no grounded source exists, leave a labeled placeholder box stating which files are needed; never draw an invented architecture.
12
30
 
13
- A readable poster carries 400 to 800 words total. Body text sits at 24pt or larger, panel headings at 36pt or larger, the title at 72pt or larger. If a panel exceeds its budget the content belongs in the paper, not the poster.
31
+ ## Layout and design
32
+
33
+ | Element | Rule |
34
+ | --- | --- |
35
+ | Page | Confirmed size; default 48 × 36 in landscape (A0 841 × 1189 mm portrait is the common alternative) |
36
+ | Margins and gutters | 1 in outer margin, 0.75 in gutter between columns |
37
+ | Grid | Landscape uses three columns; portrait uses two. Results may span two columns |
38
+ | Reading order | Title band across the full width, headline claim band beneath it, then panels top to bottom within each column, left to right |
39
+ | Hierarchy | Title 90 to 110 pt bold, headline claim 54 to 60 pt, panel headings 40 to 48 pt, body 26 to 32 pt, captions and references 20 to 24 pt |
40
+ | Palette | One dark ink, one light ground, one primary accent for headings and the claim band, one secondary accent for highlights in figures. Text contrast of at least 4.5:1. Use venue or institution colours only when the author supplies them |
41
+ | Figures | The strongest result figure is the largest element after the title. Each figure carries a one-line reading and its source path |
42
+ | Density | 400 to 800 words total. If a panel exceeds its budget, the content belongs in the paper, not the poster |
14
43
 
15
44
  | Panel | Words | Purpose |
16
45
  | --- | --- | --- |
17
- | Title block | 25 | Title, authors, affiliations, contact or code link |
46
+ | Title band | 25 | Title, authors, affiliations, contact or code link |
18
47
  | Headline claim | 30 | The finding, stated as a sentence a reader can repeat |
19
48
  | Motivation | 80 | The problem and why the audience should care |
20
- | Approach | 120 | What was built or done, with one diagram |
49
+ | Approach | 120 | What was built or done, with one grounded diagram |
21
50
  | Results | 150 | Two or three figures, each with a one-line reading |
22
51
  | What it means | 80 | The consequence, and the boundary of the claim |
23
52
  | References and provenance | 60 | Cited sources, funding, and artifact links |
24
53
 
25
54
  ---
26
55
 
27
- # [Title: the claim, not the topic]
28
-
29
- **[Author names]** · [Affiliations] · [contact or repository link]
30
-
31
- ## [Headline claim in one sentence]
32
-
33
- ## Why this matters
34
-
35
- - [Problem, in the audience's terms]
36
- - [What breaks today, with the number that shows it]
37
-
38
- ## What we did
39
-
40
- - [Approach in one sentence]
41
- - [The one design decision a reader would ask about]
42
-
43
- ![Approach diagram]([project://paper/{artifact} figure reference])
44
-
45
- ## What we found
46
-
47
- ![Primary result]([figure reference])
48
-
49
- - [One-line reading of the primary figure, with the measured value]
50
- - [Second result, with its condition]
51
- - [What the result does not show]
52
-
53
- ## What it means
54
-
55
- - [Consequence for the audience]
56
- - [Stated limitation]
57
-
58
- ## References
59
-
60
- [Only sources with a `project://sources/{source}` record. Include the funding acknowledgement and artifact or data links the venue requires.]
56
+ ```html
57
+ <!doctype html>
58
+ <html lang="en">
59
+ <head>
60
+ <meta charset="utf-8">
61
+ <title>[Poster title]</title>
62
+ <style>
63
+ @page { size: 48in 36in; margin: 0; }
64
+ :root {
65
+ --ink: #1b1f24; --ground: #fbfaf7; --accent: #1f4e79; --highlight: #c8553d; --muted: #5a6270;
66
+ --margin: 1in; --gutter: 0.75in;
67
+ }
68
+ * { box-sizing: border-box; }
69
+ html, body { margin: 0; background: var(--ground); color: var(--ink); }
70
+ body { width: 48in; height: 36in; padding: var(--margin); font: 28pt/1.35 "Source Sans 3", "Helvetica Neue", Arial, sans-serif;
71
+ display: grid; grid-template-rows: auto auto 1fr auto; gap: var(--gutter); }
72
+ header h1 { font-size: 100pt; line-height: 1.05; margin: 0 0 0.2in; }
73
+ header .byline { font-size: 34pt; color: var(--muted); }
74
+ .claim { background: var(--accent); color: var(--ground); font-size: 56pt; font-weight: 600; padding: 0.4in 0.6in; }
75
+ main { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--gutter); align-items: start; }
76
+ section h2 { font-size: 44pt; color: var(--accent); border-bottom: 4pt solid var(--accent); margin: 0 0 0.25in; }
77
+ section + section { margin-top: var(--gutter); }
78
+ .span-2 { grid-column: span 2; }
79
+ figure { margin: 0.2in 0; }
80
+ figure img, figure svg { width: 100%; height: auto; }
81
+ figcaption, .source { font-size: 22pt; color: var(--muted); }
82
+ footer { font-size: 22pt; color: var(--muted); display: flex; justify-content: space-between; gap: var(--gutter); }
83
+ .placeholder { outline: 4pt dashed var(--highlight); padding: 0.3in; color: var(--highlight); }
84
+ </style>
85
+ </head>
86
+ <body>
87
+ <header>
88
+ <h1>[Title: the claim, not the topic]</h1>
89
+ <div class="byline">[Author names from manifest or AUTHORS NEEDED] · [Affiliations or AFFILIATION NEEDED] · [contact or repository link]</div>
90
+ </header>
91
+
92
+ <div class="claim">[Headline claim in one sentence, backed by a ledger row]</div>
93
+
94
+ <main>
95
+ <div class="column">
96
+ <section>
97
+ <h2>Why this matters</h2>
98
+ <ul>
99
+ <li>[Problem, in the audience's terms]</li>
100
+ <li>[What breaks today, with the number that shows it and its source]</li>
101
+ </ul>
102
+ </section>
103
+ <section>
104
+ <h2>What we did</h2>
105
+ <p>[Approach in one sentence]</p>
106
+ <figure>
107
+ [Inline SVG or Mermaid diagram derived from the named files, or a .placeholder box naming the files needed]
108
+ <figcaption>[What the diagram shows] <span class="source">Source: [paths]</span></figcaption>
109
+ </figure>
110
+ </section>
111
+ </div>
112
+
113
+ <div class="column span-2">
114
+ <section>
115
+ <h2>What we found</h2>
116
+ <figure>
117
+ <img src="[figure path inside the project]" alt="[accessible description]">
118
+ <figcaption>[One-line reading of the primary figure, with the measured value] <span class="source">Source: [path or record]</span></figcaption>
119
+ </figure>
120
+ <ul>
121
+ <li>[Second result, with its condition]</li>
122
+ <li>[What the result does not show]</li>
123
+ </ul>
124
+ </section>
125
+ <section>
126
+ <h2>What it means</h2>
127
+ <ul>
128
+ <li>[Consequence for the audience]</li>
129
+ <li>[Stated limitation]</li>
130
+ </ul>
131
+ </section>
132
+ </div>
133
+ </main>
134
+
135
+ <footer>
136
+ <div>[References: only sources with a project://sources/{source} record]</div>
137
+ <div>[Funding acknowledgement or FUNDING NEEDED] · [artifact or data links]</div>
138
+ </footer>
139
+ </body>
140
+ </html>
141
+ ```
142
+
143
+ For portrait pages, change `@page` and the `body` size to the confirmed dimensions, set `main` to `repeat(2, 1fr)`, and drop the `span-2` class.
61
144
 
62
145
  ---
63
146
 
64
147
  ## Attribution rules
65
148
 
66
- Every number, figure, and claim on the poster must trace to a manuscript passage or an evidence record. Carry the source attribution onto the poster itself for any figure reused from another work. Do not introduce a claim, a number, or a citation that appears nowhere in the project's records.
149
+ Every number, figure, and claim on the poster must trace to a row in the claim ledger. Carry the source attribution onto the poster itself for any figure reused from another work. Do not introduce a claim, a number, a citation, or a piece of author metadata that appears nowhere in the project's records or the author's answers.
@@ -6,7 +6,11 @@ Copy the body below, replace every bracketed placeholder from the manuscript and
6
6
 
7
7
  ## Confirm before writing
8
8
 
9
- Talk length, audience, venue format, whether questions are inside or outside the slot, and the single thing the audience should remember.
9
+ Talk length, audience, venue format, whether questions are inside or outside the slot, the single thing the audience should remember, and the exact speaker name, affiliation, and venue line. Ask for any of these the manifest does not record.
10
+
11
+ ## Evidence gate
12
+
13
+ Before writing, build a claim ledger with one row per claim, number, comparison, or figure, each naming its support as a manuscript passage, a `project://sources/{source}` record, a `project://evidence/{evidence}` record, or a named project file path. Cut any row without support; statements about other systems or prior work need a cited source record, never general knowledge. Never invent speaker names, affiliations, emails, funding, venue, or dates; leave a visible placeholder such as `[AFFILIATION NEEDED]` and report it as unresolved. When the subject is software, derive every diagram from named source files or documentation, state those paths on the slide, and leave a labeled placeholder rather than an invented architecture.
10
14
 
11
15
  ## Budgets
12
16
 
@@ -25,7 +29,7 @@ Backup slides sit after the closing slide and answer the questions the work invi
25
29
 
26
30
  ## [Title slide]
27
31
 
28
- [Title] · [Speaker] · [Affiliation] · [Venue and date]
32
+ [Title] · [Speaker or SPEAKER NEEDED] · [Affiliation or AFFILIATION NEEDED] · [Venue and date or VENUE NEEDED]
29
33
 
30
34
  ## [The problem, in one image or one sentence]
31
35
 
@@ -42,7 +46,7 @@ Backup slides sit after the closing slide and answer the questions the work invi
42
46
 
43
47
  ## [Approach]
44
48
 
45
- [One diagram. Speaker note: walk it left to right; do not read the labels aloud.]
49
+ [One diagram derived from named source files or documents. Source: [paths]. Speaker note: walk it left to right; do not read the labels aloud.]
46
50
 
47
51
  ## [Key design decision]
48
52
 
@@ -80,4 +84,4 @@ Backup slides sit after the closing slide and answer the questions the work invi
80
84
 
81
85
  ## Attribution rules
82
86
 
83
- Every number and figure must trace to a manuscript passage or an evidence record. Reused figures carry their original attribution on the slide. Speaker notes are part of the deliverable and follow the same evidence rule as the slides: do not put a claim in a note that the records do not support.
87
+ Every number, figure, and claim must trace to a row in the claim ledger. Reused figures carry their original attribution on the slide. Speaker notes are part of the deliverable and follow the same evidence rule as the slides: do not put a claim in a note that the records do not support.
@@ -21,10 +21,10 @@ Manuscript prose and supporting context, research, plan, review, summary, handof
21
21
 
22
22
  ## Procedure
23
23
 
24
- 1. Confirm audience, dimensions, format, and emphasis, following the confirmation list in `protocol://templates/poster.md`.
25
- 1a. Start from the panel structure and word budgets in `protocol://templates/poster.md`. Delete any panel the manuscript does not support rather than filling it.
26
- 2. Select only claims supported by manuscript and evidence, then design a legible poster with source attribution.
27
- 3. Write the poster source and its assets under the declared deliverable URI without changing project records except through a separately declared action. This action produces poster source, not a rendered image or PDF: WTF-P declares no rendering effect and runs no renderer. If the author asks for a rendered artifact, return a labeled handoff naming the exact command they can run in their own toolchain.
24
+ 1. Confirm audience, dimensions, format, emphasis, and the exact author, affiliation, contact, funding, and venue metadata, following the confirmation list in `protocol://templates/poster.md`. Never invent missing metadata; leave the visible placeholder the template names.
25
+ 1a. Start from the layout, panel structure, and word budgets in `protocol://templates/poster.md`. Delete any panel the manuscript does not support rather than filling it.
26
+ 2. Run the evidence gate in `protocol://templates/poster.md`: build the claim ledger and refuse every statement, comparison, or figure without a cited source record, manuscript passage, or named project file. Derive each diagram from named source files or documents and state their paths beneath it.
27
+ 3. Write the poster as laid-out source (the template's HTML skeleton, or the venue's mandated template carrying the same grid and type scale) plus its assets and claim ledger under the declared deliverable URI, without changing project records except through a separately declared action. This action produces poster source, not a rendered image or PDF: WTF-P declares no rendering effect and runs no renderer. If the author asks for a rendered artifact, return a labeled handoff naming the exact command they can run in their own toolchain.
28
28
 
29
29
  ## Safety and completion
30
30
 
@@ -21,9 +21,9 @@ Manuscript prose and supporting context, research, plan, review, summary, handof
21
21
 
22
22
  ## Procedure
23
23
 
24
- 1. Confirm audience, duration, format, and speaking goal, following the confirmation list in `protocol://templates/slides.md`.
24
+ 1. Confirm audience, duration, format, speaking goal, and the exact speaker, affiliation, and venue metadata, following the confirmation list in `protocol://templates/slides.md`. Never invent missing metadata; leave a visible placeholder.
25
25
  1a. Derive the slide count from the confirmed duration using the budget table in `protocol://templates/slides.md`, not from the manuscript's section count.
26
- 2. Build a narrative arc from supported manuscript claims and include citations or attribution where needed.
26
+ 2. Build a narrative arc from supported manuscript claims only, running the evidence gate in `protocol://templates/slides.md`: refuse every statement, comparison, or figure without a cited source record, manuscript passage, or named project file, and derive each diagram from named source files or documents with their paths stated on the slide.
27
27
  3. Write slide source and assets under the declared deliverable URI; preview before replacing an existing deliverable. This action produces slide source, not a rendered deck: WTF-P declares no rendering effect and runs no renderer. If the author asks for a rendered artifact, return a labeled handoff naming the exact command they can run in their own toolchain.
28
28
 
29
29
  ## Safety and completion